rgw-cli-contract
rgw-cli-contract is the shared runtime and scaffolding contract for Ryan's
Python CLI/TUI apps.
It has two jobs:
- provide a small runtime layer for exact
-h,-v,-u, andconf - sync canonical root files such as
install.sh,push_release_upgrade.sh, and baseline contract tests into app repos
Runtime
from pathlib import Path
from rgw_cli_contract import AppSpec, run_app
APP_SPEC = AppSpec(
app_name="demo",
version="0.0.0",
help_text="demo\n",
install_script_path=Path(__file__).resolve().with_name("install.sh"),
no_args_mode="dispatch",
)
def dispatch(argv: list[str]) -> int:
print(argv)
return 0
raise SystemExit(run_app(APP_SPEC, ["-h"], dispatch))
Sync
Create cli_contract.toml in an app repo, then run:
PYTHONPATH=src python -m rgw_cli_contract.sync /path/to/app
Supported install strategies:
standalone-binaryfor tagged release bundles that contain<app>/<app>python-sourcefor tagged source bundles that containmain.pyand_version.py
Source installers may also inline small app-specific hook snippets through
optional install_*_path keys in cli_contract.toml.
Use --check to fail when managed files have drifted.
Metadata
Release files for rgw-cli-contract 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rgw_cli_contract-0.1.2.tar.gz | 12.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rgw_cli_contract-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.6 kB
Release files / rgw_cli_contract-0.1.2.tar.gz
| Download URL | rgw_cli_contract-0.1.2.tar.gz |
|---|---|
| Size | 12.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ef108c7f53e1ee9a1c45ae7038e13fd01428c15599ce4984ffd62e9348dfe8fe
|
|
BLAKE2b-256 checksum How to use checksums |
1e326f9a78e9d93a62a07d783a650e78175d68bc0678f2c5cf0f184a04e42537
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|
Release files / rgw_cli_contract-0.1.2-py3-none-any.whl
| Download URL | rgw_cli_contract-0.1.2-py3-none-any.whl |
|---|---|
| Size | 17.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9745bf22514080372d2bb964460d20b2f1bc4b3d9585d42bf01b0fff2c36e13c
|
|
BLAKE2b-256 checksum How to use checksums |
63d2e1ec4fb66cada71b7b7f49dacc2490926155bbca2d36b029b6ff37f7eb94
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|