flowsh-cli 0.2.0__tar.gz → 0.2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {flowsh_cli-0.2.0 → flowsh_cli-0.2.2}/PKG-INFO +9 -15
- {flowsh_cli-0.2.0 → flowsh_cli-0.2.2}/README.md +8 -14
- {flowsh_cli-0.2.0 → flowsh_cli-0.2.2}/pyproject.toml +1 -1
- {flowsh_cli-0.2.0 → flowsh_cli-0.2.2}/src/flowsh_cli/__init__.py +2 -2
- {flowsh_cli-0.2.0 → flowsh_cli-0.2.2}/src/flowsh_cli/cli.py +2 -2
- {flowsh_cli-0.2.0 → flowsh_cli-0.2.2}/src/flowsh_cli/__main__.py +0 -0
- {flowsh_cli-0.2.0 → flowsh_cli-0.2.2}/src/flowsh_cli/models.py +0 -0
- {flowsh_cli-0.2.0 → flowsh_cli-0.2.2}/src/flowsh_cli/render.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: flowsh-cli
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.2
|
|
4
4
|
Summary: Generate Bash harness scripts from workflow YAML files.
|
|
5
5
|
License-Expression: MIT
|
|
6
6
|
Classifier: Programming Language :: Python :: 3.11
|
|
@@ -14,15 +14,9 @@ Project-URL: Homepage, https://github.com/tbrandenburg/flowsh
|
|
|
14
14
|
Project-URL: Source, https://github.com/tbrandenburg/flowsh
|
|
15
15
|
Description-Content-Type: text/markdown
|
|
16
16
|
|
|
17
|
-
# flowsh
|
|
17
|
+
# flowsh-cli
|
|
18
18
|
|
|
19
|
-
`flowsh` is a small `uv` Python CLI
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
uvx flowsh-cli .made/workflows.yml
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
It reads MADE workflow YAML and writes executable Bash harness scripts for OpenCode.
|
|
19
|
+
`flowsh-cli` is a small `uv` Python CLI that reads workflow YAML and writes executable Bash harness scripts for OpenCode.
|
|
26
20
|
|
|
27
21
|
## Supported YAML
|
|
28
22
|
|
|
@@ -77,12 +71,12 @@ You can also run it via `uv run flowsh-cli` if installed locally.
|
|
|
77
71
|
|
|
78
72
|
## CLI Contract
|
|
79
73
|
|
|
80
|
-
`flowsh` is non-interactive. It never prompts for missing information.
|
|
74
|
+
`flowsh-cli` is non-interactive. It never prompts for missing information.
|
|
81
75
|
|
|
82
76
|
Current help output is plain text and deterministic across repeated runs:
|
|
83
77
|
|
|
84
78
|
```text
|
|
85
|
-
Usage: flowsh [OPTIONS] WORKFLOW_YAML
|
|
79
|
+
Usage: flowsh-cli [OPTIONS] WORKFLOW_YAML
|
|
86
80
|
|
|
87
81
|
Generate reproducible OpenCode Bash harness scripts from MADE workflow YAML.
|
|
88
82
|
|
|
@@ -93,7 +87,7 @@ Options:
|
|
|
93
87
|
--workflow TEXT Optional workflow id to generate. Defaults to all workflows.
|
|
94
88
|
--dry-run Print planned output paths without writing scripts.
|
|
95
89
|
--force Overwrite existing files. Without this, existing files cause a failure.
|
|
96
|
-
--version Show the flowsh version and exit.
|
|
90
|
+
--version Show the flowsh-cli version and exit.
|
|
97
91
|
--help Show this message and exit.
|
|
98
92
|
```
|
|
99
93
|
|
|
@@ -105,7 +99,7 @@ Exit codes:
|
|
|
105
99
|
| Case | Exit | stdout | stderr |
|
|
106
100
|
|---|---:|---|---|
|
|
107
101
|
| `--help` | `0` | Help text | Empty |
|
|
108
|
-
| `--version` | `0` | `flowsh <version>` | Empty |
|
|
102
|
+
| `--version` | `0` | `flowsh-cli <version>` | Empty |
|
|
109
103
|
| Valid generation | `0` | One `Wrote <path>` line per harness | Empty |
|
|
110
104
|
| Valid `--dry-run` | `0` | One `DRY-RUN would write <path>` line per selected workflow | Empty |
|
|
111
105
|
| Missing required CLI argument | `2` | Empty | Typer usage error |
|
|
@@ -131,11 +125,11 @@ make hygiene
|
|
|
131
125
|
make clean
|
|
132
126
|
```
|
|
133
127
|
|
|
134
|
-
`make install` installs `flowsh` into the user PATH with `uv tool install --force .`.
|
|
128
|
+
`make install` installs `flowsh-cli` into the user PATH with `uv tool install --force .`.
|
|
135
129
|
`make build` creates reproducible source and wheel distributions under ignored `dist/`.
|
|
136
130
|
|
|
137
131
|
`make qa` runs Ruff, Python compile checks, and pytest with locked dependencies, then builds packages locally and in CI.
|
|
138
|
-
The pytest suite also verifies `python -m
|
|
132
|
+
The pytest suite also verifies `python -m flowsh_cli`, `uvx flowsh-cli`, and the direct
|
|
139
133
|
`scripts/workflow_to_harness.py` entrypoint against the same help contract.
|
|
140
134
|
`make hygiene` prints tracked, untracked, and ignored files with
|
|
141
135
|
`git status --short --ignored`; review it before release to confirm only intended
|
|
@@ -1,12 +1,6 @@
|
|
|
1
|
-
# flowsh
|
|
1
|
+
# flowsh-cli
|
|
2
2
|
|
|
3
|
-
`flowsh` is a small `uv` Python CLI
|
|
4
|
-
|
|
5
|
-
```bash
|
|
6
|
-
uvx flowsh-cli .made/workflows.yml
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
It reads MADE workflow YAML and writes executable Bash harness scripts for OpenCode.
|
|
3
|
+
`flowsh-cli` is a small `uv` Python CLI that reads workflow YAML and writes executable Bash harness scripts for OpenCode.
|
|
10
4
|
|
|
11
5
|
## Supported YAML
|
|
12
6
|
|
|
@@ -61,12 +55,12 @@ You can also run it via `uv run flowsh-cli` if installed locally.
|
|
|
61
55
|
|
|
62
56
|
## CLI Contract
|
|
63
57
|
|
|
64
|
-
`flowsh` is non-interactive. It never prompts for missing information.
|
|
58
|
+
`flowsh-cli` is non-interactive. It never prompts for missing information.
|
|
65
59
|
|
|
66
60
|
Current help output is plain text and deterministic across repeated runs:
|
|
67
61
|
|
|
68
62
|
```text
|
|
69
|
-
Usage: flowsh [OPTIONS] WORKFLOW_YAML
|
|
63
|
+
Usage: flowsh-cli [OPTIONS] WORKFLOW_YAML
|
|
70
64
|
|
|
71
65
|
Generate reproducible OpenCode Bash harness scripts from MADE workflow YAML.
|
|
72
66
|
|
|
@@ -77,7 +71,7 @@ Options:
|
|
|
77
71
|
--workflow TEXT Optional workflow id to generate. Defaults to all workflows.
|
|
78
72
|
--dry-run Print planned output paths without writing scripts.
|
|
79
73
|
--force Overwrite existing files. Without this, existing files cause a failure.
|
|
80
|
-
--version Show the flowsh version and exit.
|
|
74
|
+
--version Show the flowsh-cli version and exit.
|
|
81
75
|
--help Show this message and exit.
|
|
82
76
|
```
|
|
83
77
|
|
|
@@ -89,7 +83,7 @@ Exit codes:
|
|
|
89
83
|
| Case | Exit | stdout | stderr |
|
|
90
84
|
|---|---:|---|---|
|
|
91
85
|
| `--help` | `0` | Help text | Empty |
|
|
92
|
-
| `--version` | `0` | `flowsh <version>` | Empty |
|
|
86
|
+
| `--version` | `0` | `flowsh-cli <version>` | Empty |
|
|
93
87
|
| Valid generation | `0` | One `Wrote <path>` line per harness | Empty |
|
|
94
88
|
| Valid `--dry-run` | `0` | One `DRY-RUN would write <path>` line per selected workflow | Empty |
|
|
95
89
|
| Missing required CLI argument | `2` | Empty | Typer usage error |
|
|
@@ -115,11 +109,11 @@ make hygiene
|
|
|
115
109
|
make clean
|
|
116
110
|
```
|
|
117
111
|
|
|
118
|
-
`make install` installs `flowsh` into the user PATH with `uv tool install --force .`.
|
|
112
|
+
`make install` installs `flowsh-cli` into the user PATH with `uv tool install --force .`.
|
|
119
113
|
`make build` creates reproducible source and wheel distributions under ignored `dist/`.
|
|
120
114
|
|
|
121
115
|
`make qa` runs Ruff, Python compile checks, and pytest with locked dependencies, then builds packages locally and in CI.
|
|
122
|
-
The pytest suite also verifies `python -m
|
|
116
|
+
The pytest suite also verifies `python -m flowsh_cli`, `uvx flowsh-cli`, and the direct
|
|
123
117
|
`scripts/workflow_to_harness.py` entrypoint against the same help contract.
|
|
124
118
|
`make hygiene` prints tracked, untracked, and ignored files with
|
|
125
119
|
`git status --short --ignored`; review it before release to confirm only intended
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
"""flowsh: generate OpenCode Bash harness scripts from workflow YAML."""
|
|
1
|
+
"""flowsh-cli: generate OpenCode Bash harness scripts from workflow YAML."""
|
|
2
2
|
|
|
3
3
|
from flowsh_cli.models import Workflow, WorkflowParseError, parse_workflows
|
|
4
4
|
from flowsh_cli.render import harness_path, render_harness
|
|
5
5
|
|
|
6
|
-
__version__ = "0.
|
|
6
|
+
__version__ = "0.2.2"
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
"Workflow",
|
|
@@ -58,7 +58,7 @@ def generate(
|
|
|
58
58
|
typer.Option(
|
|
59
59
|
"--version",
|
|
60
60
|
callback=lambda value: print_version(value),
|
|
61
|
-
help="Show the flowsh version and exit.",
|
|
61
|
+
help="Show the flowsh-cli version and exit.",
|
|
62
62
|
is_eager=True,
|
|
63
63
|
),
|
|
64
64
|
] = False,
|
|
@@ -95,7 +95,7 @@ def print_version(value: bool) -> None:
|
|
|
95
95
|
if not value:
|
|
96
96
|
return
|
|
97
97
|
|
|
98
|
-
print(f"flowsh {__version__}")
|
|
98
|
+
print(f"flowsh-cli {__version__}")
|
|
99
99
|
raise typer.Exit
|
|
100
100
|
|
|
101
101
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|