sysml-windtrader 0.2.1__tar.gz → 0.2.3__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.
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/CHANGELOG.md +14 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/PKG-INFO +16 -3
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/README.md +15 -2
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/pyproject.toml +1 -1
- sysml_windtrader-0.2.3/src/windtrader/__init__.py +29 -0
- sysml_windtrader-0.2.1/src/windtrader/__init__.py +0 -19
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/.github/workflows/ci.yml +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/.github/workflows/docstring-badge.yml +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/.github/workflows/publish.yml +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/.github/workflows/release.yml +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/.gitignore +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/.pre-commit-config.yaml +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/LICENSE +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/src/windtrader/_jars.py +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/src/windtrader/cli.py +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/src/windtrader/client.py +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/tests/test_cli.py +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/tests/test_client.py +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/tests/test_integration_jar.py +0 -0
- {sysml_windtrader-0.2.1 → sysml_windtrader-0.2.3}/tests/test_jars.py +0 -0
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
<!-- version list -->
|
|
4
4
|
|
|
5
|
+
## v0.2.3 (2026-10-17)
|
|
6
|
+
|
|
7
|
+
### 📝 Documentation
|
|
8
|
+
|
|
9
|
+
- README: reflect `sysml-windtrader` distribution name; document
|
|
10
|
+
`validate_across_versions` with its real signature
|
|
11
|
+
|
|
12
|
+
## v0.2.2 (2026-10-17)
|
|
13
|
+
|
|
14
|
+
### 🐛 Bug Fixes
|
|
15
|
+
|
|
16
|
+
- Single-source `__version__` from dist metadata (hardcoded 0.2.0 drifted from
|
|
17
|
+
the 0.2.1 dist; CLI `--version` reported the wrong version)
|
|
18
|
+
|
|
5
19
|
## v0.2.1 (2026-10-16)
|
|
6
20
|
|
|
7
21
|
### 🚀 Features
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: sysml-windtrader
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.3
|
|
4
4
|
Summary: Python wrapper around windtrader-java for SysML v2 parse-only validation.
|
|
5
5
|
Author: Westfall-io
|
|
6
6
|
License: MIT License
|
|
@@ -36,9 +36,10 @@ Requires-Dist: python-semantic-release>=10.0.0; extra == 'dev'
|
|
|
36
36
|
Requires-Dist: ruff>=0.6; extra == 'dev'
|
|
37
37
|
Description-Content-Type: text/markdown
|
|
38
38
|
|
|
39
|
-
# windtrader
|
|
39
|
+
# sysml-windtrader
|
|
40
40
|
|
|
41
|
-
**windtrader** is a lightweight Python wrapper around the
|
|
41
|
+
**sysml-windtrader** (`windtrader` on import) is a lightweight Python wrapper around the
|
|
42
|
+
`windtrader-java` SysML v2 validator.
|
|
42
43
|
It provides a simple, scriptable way to validate SysML v2 textual syntax from Python while
|
|
43
44
|
delegating all grammar authority to the official Java-based validator.
|
|
44
45
|
|
|
@@ -162,6 +163,18 @@ else:
|
|
|
162
163
|
print("Failed:", res.stderr)
|
|
163
164
|
```
|
|
164
165
|
|
|
166
|
+
### Validate across versions
|
|
167
|
+
|
|
168
|
+
```python
|
|
169
|
+
from windtrader import validate_across_versions
|
|
170
|
+
|
|
171
|
+
results = validate_across_versions("part { attribute mass; }", versions=["0.2.0"])
|
|
172
|
+
|
|
173
|
+
# One CommandResult per version, in the order given.
|
|
174
|
+
for r in results:
|
|
175
|
+
print(r.version, "->", "valid" if r.ok else "invalid")
|
|
176
|
+
```
|
|
177
|
+
|
|
165
178
|
### CommandResult
|
|
166
179
|
|
|
167
180
|
Returned objects include:
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
# windtrader
|
|
1
|
+
# sysml-windtrader
|
|
2
2
|
|
|
3
|
-
**windtrader** is a lightweight Python wrapper around the
|
|
3
|
+
**sysml-windtrader** (`windtrader` on import) is a lightweight Python wrapper around the
|
|
4
|
+
`windtrader-java` SysML v2 validator.
|
|
4
5
|
It provides a simple, scriptable way to validate SysML v2 textual syntax from Python while
|
|
5
6
|
delegating all grammar authority to the official Java-based validator.
|
|
6
7
|
|
|
@@ -124,6 +125,18 @@ else:
|
|
|
124
125
|
print("Failed:", res.stderr)
|
|
125
126
|
```
|
|
126
127
|
|
|
128
|
+
### Validate across versions
|
|
129
|
+
|
|
130
|
+
```python
|
|
131
|
+
from windtrader import validate_across_versions
|
|
132
|
+
|
|
133
|
+
results = validate_across_versions("part { attribute mass; }", versions=["0.2.0"])
|
|
134
|
+
|
|
135
|
+
# One CommandResult per version, in the order given.
|
|
136
|
+
for r in results:
|
|
137
|
+
print(r.version, "->", "valid" if r.ok else "invalid")
|
|
138
|
+
```
|
|
139
|
+
|
|
127
140
|
### CommandResult
|
|
128
141
|
|
|
129
142
|
Returned objects include:
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
from .client import (
|
|
2
|
+
CommandResult,
|
|
3
|
+
WindtraderClient,
|
|
4
|
+
echo,
|
|
5
|
+
export,
|
|
6
|
+
validate,
|
|
7
|
+
validate_across_versions,
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
__all__ = [
|
|
11
|
+
"CommandResult",
|
|
12
|
+
"WindtraderClient",
|
|
13
|
+
"echo",
|
|
14
|
+
"export",
|
|
15
|
+
"validate",
|
|
16
|
+
"validate_across_versions",
|
|
17
|
+
]
|
|
18
|
+
|
|
19
|
+
# Single-sourced from the distribution metadata so `__version__` can never drift
|
|
20
|
+
# from pyproject.toml's [project] version again (regression: 0.2.0 hardcoded here
|
|
21
|
+
# while the dist was 0.2.1 broke test_package_version_is_reported and the CLI
|
|
22
|
+
# --version). When not installed (e.g. a bare source checkout), fall back to a
|
|
23
|
+
# placeholder so importing windtrader never raises.
|
|
24
|
+
from importlib.metadata import PackageNotFoundError, version as _dist_version
|
|
25
|
+
|
|
26
|
+
try:
|
|
27
|
+
__version__ = _dist_version("sysml-windtrader")
|
|
28
|
+
except PackageNotFoundError: # pragma: no cover - source checkout without install
|
|
29
|
+
__version__ = "0.0.0+src"
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
from .client import (
|
|
2
|
-
CommandResult,
|
|
3
|
-
WindtraderClient,
|
|
4
|
-
echo,
|
|
5
|
-
export,
|
|
6
|
-
validate,
|
|
7
|
-
validate_across_versions,
|
|
8
|
-
)
|
|
9
|
-
|
|
10
|
-
__all__ = [
|
|
11
|
-
"CommandResult",
|
|
12
|
-
"WindtraderClient",
|
|
13
|
-
"echo",
|
|
14
|
-
"export",
|
|
15
|
-
"validate",
|
|
16
|
-
"validate_across_versions",
|
|
17
|
-
]
|
|
18
|
-
|
|
19
|
-
__version__ = "0.2.0"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|