On this page
The strictcli-based fastware CLI, exposing dev run, dev status, and dev stop commands for the file-driven development environment.
#src.fastware.cli
#src.fastware.cli
The fastware command-line interface (strictcli).
Exposes the dev command group -- run / status / stop -- driven by the [tool.fastware.dev] table in the nearest owning pyproject.toml (see :mod:fastware.devconfig). Kept out of import fastware so the framework's import stays light; this module (and strictcli) load only when the CLI runs.
#_opt
def _opt(value, fallback)Resolve an absent optional flag to the fallback its own help declares.
strictcli forbids a value default= on any flag of a mutating command: a value the framework picks is a value the framework writes without the invocation ever having stated it. All three dev commands are mutating, so their flags declare presence="optional" -- absence arrives as None -- and name their fallback in their help text. This is the one place absence becomes that fallback, so nothing downstream ever reads a None as false or as zero.
#dev_run
def dev_run(ctx, daemon: bool | None, grace: int | None) -> intHandler for fastware dev run.
#dev_status
def dev_status(ctx) -> intHandler for fastware dev status.
#dev_stop
def dev_stop(ctx, grace: int | None) -> intHandler for fastware dev stop.
#main
def main() -> NoneEntry point for the fastware console script.