Comments (4)
There's a feature request to make the library async
see #18 however if the cli
uses typer
(which in turn uses click
) then we should ensure that it is possible to use the library inside of the cli
.
See also: fastapi/typer#88
from gallagher.
See the rich pretty print protocol to provide the highlighting syntax from the __repr__
method
from gallagher.
typer
allows checking for environment vars before the cli is executed. Their basic example
import typer
from typing_extensions import Annotated
def main(name: Annotated[str, typer.Argument(envvar="AWESOME_NAME")] = "World"):
print(f"Hello Mr. {name}")
if __name__ == "__main__":
typer.run(main)
does not highlight how to use this feature when designing commands and sub commands. We ought to research this via discussions before we head into implementing it.
Our basic requirement is to have the GACC_API_KEY
environment variable set to the Gallagher API key, which is set to the api_key
property of the package.
from gallagher.
We use rich
to display most of our output, here's are some handy rich commands that will help explore it's features:
poetry run python -m rich.spinner
Get a list of spinners that are available in
rich
poetry run python -m rich.live
Get a demo of displaying live data (handy for polling requests #19)
poetry run python -m rich.progress
See the
thinking
example from for use with #19
poetry run python -m rich.status
To get some COVID jokes
from gallagher.
Related Issues (20)
- Provide a runnable TUI demo interface via `textual-web` for users to try against the Anomaly license HOT 2
- Study and adapt Software Package Data Exchange Specification
- Move to `hatch` as a python project tool HOT 4
- Provide a SQL (preferably a SQLAlchemy `dialect`) interface to query the REST API HOT 4
- Investigate the use of `keyring` to store API Keys
- Provide `brew` (or other installer) packages for installing the the `cli` and `tui` HOT 2
- Add `--json` option to cli tool to output structure data, also consider `--csv` and `--markdown`
- Make the list of fields in a response configurable
- Investigate `logfire` integration at an `httpx` and `sqlalchemy` level
- Refactor (if required, and doesn't break anything) the use of `reserved` keywords as `attribute` names in `pyndatic` models HOT 2
- Provide a set of examples references from the documentation
- Integrate standard python logging across the library and applications to ease debugging
- Add social cards for mkdocs
- Provide a set of utility scripts that populates developer data via the REST API
- Implement a paradigm for implementing search endpoints for the SDK and CLI
- Investigate and document strategies to debug cloud gateway outages or potential misconfiguration of Command Centre
- Document the missing portions of the WAN configuration in `HARDWARE` configuration, additionally document a `VPN/L2TP` based setup to avoid exposing WAN ports HOT 1
- Allow range as parameters in the CLI for batch operations e.g provide IDs as multiple values or ranges like `2200-2210` HOT 1
- Reconsider use of `DELETE` HTTP Verb where the REST API has a `remove` operation for objects
- Update REST endpoints to match up with Command Centre 9.10 updates
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gallagher.