Skip to content

Release 0.2.0

Choose a tag to compare

@fabricebrito fabricebrito released this 07 Oct 13:14
2d60af8

The eoap-package profile advances to revision 1.2 with mandatory scheduling declarations and application-specific process IDs.

Breaking validation changes

  • Every reachable CommandLineTool invocation must declare coresMin, coresMax, ramMin, and ramMax in an effective ResourceRequirement under requirements. Workflow and step requirements inherit; local declarations replace inherited requirements as a whole. Hints do not satisfy this policy. CWL expressions are accepted without evaluating runtime values.
  • All resolved Workflows and CommandLineTools must use an ID other than main, including internal, unreachable, and externally resolved processes.

Previously accepted packages may now fail validation. Add the resource declarations and rename main process IDs, updating references accordingly. Metadata-only and staging-only assessments do not run these checks.

Improvements

  • Updated CLI examples and policy documentation, plus MkDocs how-to documentation and build configuration.
  • Added Hatch development and test environments, coverage settings, and a Python 3.10–3.14 test matrix.
  • Refactored validation helpers and annotated library/test interfaces to satisfy strict lint and typing checks, with PyLD and JSON Schema typing support.

Validation

The merged release commit passed GitHub's test-and-package workflow. Local validation on Python 3.14 passed all 86 tests, Ruff lint/format checks, Mypy for source and tests, Bandit, and wheel/source distribution builds.

Full changelog