ceos-ard-cli 0.5.0__tar.gz → 0.5.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.
Files changed (28) hide show
  1. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/PKG-INFO +4 -5
  2. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/README.md +1 -1
  3. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/compile.py +12 -2
  4. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/schema.py +2 -1
  5. ceos_ard_cli-0.5.2/ceos_ard_cli/version.py +1 -0
  6. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/pixi.lock +408 -420
  7. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/pyproject.toml +6 -7
  8. ceos_ard_cli-0.5.0/ceos_ard_cli/version.py +0 -1
  9. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/.editorconfig +0 -0
  10. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/.github/workflows/checks.yaml +0 -0
  11. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/.github/workflows/publish.yml +0 -0
  12. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/.gitignore +0 -0
  13. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/.pre-commit-config.yaml +0 -0
  14. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/LICENSE +0 -0
  15. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/__init__.py +0 -0
  16. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/generate.py +0 -0
  17. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/strictyaml/__init__.py +0 -0
  18. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/strictyaml/id_reference.py +0 -0
  19. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/strictyaml/markdown.py +0 -0
  20. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/utils/__init__.py +0 -0
  21. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/utils/files.py +0 -0
  22. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/utils/pfs.py +0 -0
  23. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/utils/requirement.py +0 -0
  24. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/utils/template.py +0 -0
  25. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/utils/yaml.py +0 -0
  26. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/ceos_ard_cli/validate.py +0 -0
  27. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/tests/__init__.py +0 -0
  28. {ceos_ard_cli-0.5.0 → ceos_ard_cli-0.5.2}/tests/test_cli.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ceos-ard-cli
3
- Version: 0.5.0
3
+ Version: 0.5.2
4
4
  Summary: CLI tools for CEOS-ARD to generate and validate PFS documents
5
5
  Project-URL: Homepage, https://github.com/ceos-org/ceos-ard-cli
6
6
  Project-URL: Repository, https://github.com/ceos-org/ceos-ard-cli
@@ -11,11 +11,10 @@ License-File: LICENSE
11
11
  Classifier: Development Status :: 4 - Beta
12
12
  Classifier: License :: OSI Approved :: Apache Software License
13
13
  Classifier: Programming Language :: Python :: 3
14
- Requires-Python: >=3.9
15
- Requires-Dist: bibtexparser==2.0.0b8
14
+ Requires-Python: >=3.11
15
+ Requires-Dist: bibtexparser==2.0.0b9
16
16
  Requires-Dist: click<9,>=8.0.0
17
17
  Requires-Dist: jinja2<4,>=3.1.0
18
- Requires-Dist: mergedeep<2,>=1.3.4
19
18
  Requires-Dist: playwright<2,>=1.50.0
20
19
  Requires-Dist: strictyaml<2,>=1.7.0
21
20
  Provides-Extra: dev
@@ -91,7 +90,7 @@ To create the Word, HTML, and PDF versions of a single PFS, run:
91
90
  The last part is the PFS to create, e.g. `SR` or `NRB`.
92
91
 
93
92
  To create a combined PFS, e.g. SAR, the following command can be used:
94
- `ceos-ard generate NRB POL ORB GSLC -o ../ceos-ard/build/ -i ../ceos-ard --docx --title="Combined Synthetic Aperture Radar" --version="1.1" --pfs-type="SAR" --id="SAR"`
93
+ `ceos-ard generate NRB POL ORB GSLC -o ../ceos-ard/build/Combined-SAR -i ../ceos-ard --docx --title="Combined Synthetic Aperture Radar" --pfs-type="SAR" --id="SAR"`
95
94
 
96
95
  Check `ceos-ard generate --help` (or `ceos-ard generate --help`) for more details.
97
96
 
@@ -64,7 +64,7 @@ To create the Word, HTML, and PDF versions of a single PFS, run:
64
64
  The last part is the PFS to create, e.g. `SR` or `NRB`.
65
65
 
66
66
  To create a combined PFS, e.g. SAR, the following command can be used:
67
- `ceos-ard generate NRB POL ORB GSLC -o ../ceos-ard/build/ -i ../ceos-ard --docx --title="Combined Synthetic Aperture Radar" --version="1.1" --pfs-type="SAR" --id="SAR"`
67
+ `ceos-ard generate NRB POL ORB GSLC -o ../ceos-ard/build/Combined-SAR -i ../ceos-ard --docx --title="Combined Synthetic Aperture Radar" --pfs-type="SAR" --id="SAR"`
68
68
 
69
69
  Check `ceos-ard generate --help` (or `ceos-ard generate --help`) for more details.
70
70
 
@@ -151,9 +151,10 @@ def combine_pfs(multi_pfs):
151
151
  "combined": True,
152
152
  "id": [],
153
153
  "title": [],
154
- "version": "",
154
+ "version": "n/a",
155
155
  "type": set(),
156
156
  "applies_to": {},
157
+ "background": {},
157
158
  "introduction": {},
158
159
  "glossary": {},
159
160
  "references": set(),
@@ -173,7 +174,12 @@ def combine_pfs(multi_pfs):
173
174
  data["id"].append(pfs["id"])
174
175
  data["title"].append(pfs["title"])
175
176
  data["type"].add(pfs["type"])
176
- data["applies_to"][pfs["title"]] = pfs["applies_to"]
177
+ applies_to = pfs.get("applies_to", "").rstrip()
178
+ if applies_to:
179
+ data["applies_to"][pfs["title"]] = applies_to
180
+ background = pfs.get("background", "").rstrip()
181
+ if background:
182
+ data["background"][pfs["title"]] = background
177
183
  data["introduction"] = to_id_dict(pfs["introduction"])
178
184
  data["glossary"] = to_id_dict(pfs["glossary"])
179
185
  data["references"].update(pfs["references"])
@@ -221,6 +227,10 @@ def combine_pfs(multi_pfs):
221
227
  data["references"] = list(data["references"])
222
228
  data["annexes"] = list(data["annexes"].values())
223
229
 
230
+ if len(set(data["applies_to"].values())) == 1:
231
+ # If all applies_to are the same, simplify to a single string
232
+ data["applies_to"] = next(iter(data["applies_to"].values()))
233
+
224
234
  for value in categories.values():
225
235
  cat_id = value["id"]
226
236
  # Use topological sort to merge requirements from all PFS documents
@@ -137,7 +137,8 @@ PFS_DOCUMENT = lambda file, base_path: Map(
137
137
  "title": Str(),
138
138
  "version": Str(),
139
139
  "type": Str(),
140
- "applies_to": Markdown(),
140
+ Optional("applies_to", default=""): Markdown(),
141
+ Optional("background", default=""): Markdown(),
141
142
  "authors": Markdown() | Seq(Str()),
142
143
  Optional("introduction", default=[]): _RESOLVED_SECTIONS(INTRODUCTION_PATH, base_path),
143
144
  "requirements": Seq(
@@ -0,0 +1 @@
1
+ __version__ = "0.5.2"