common-workflow-language / common-workflow-language/cwljava
Supporting recursive expansion of `typeDSL`
- Dominant language
- Java
- Stars
- 16
- Forks
- 8
- Avg merge
- 4h 5m
- Merged PRs (30d)
- 7
Description
Since Schema Salad v1.3 (which will likely be used in CWL v1.3), supporting TypeDSL fields with syntax such as `File[][]` is required.
It would be nice if cwljava can support it by updating
https://github.com/common-workflow-language/schema_salad/blob/816602bea2511995141235eef34dac80b200857b/schema_salad/java_codegen.py#L752
and
https://github.com/common-workflow-language/schema_salad/blob/816602bea2511995141235eef34dac80b200857b/schema_salad/java/main_utils/TypeDslLoader.java#L15
See common-workflow-language/schema_salad#711 for how this was done for Python
- https://github.com/common-workflow-language/schema_salad/pull/711/files#diff-e6741ecbdc425147484392318bfa8d1424ab8506496b13a2bfa67aa5b94254bdR634
- https://github.com/common-workflow-language/schema_salad/pull/711/files#diff-9b3bfeab727fa5c3302c6eda143a8379c03d1e89e8fa7011186c6154aa6ed3e1R585
Related:
- Proposed CWL v1.3 spec change: common-workflow-language/cwl-v1.3#10
- Schema salad and Python codegen: common-workflow-language/schema_salad#711
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with schema_salad/java_codegen.py around line 752 and schema_salad/java/main_utils/TypeDslLoader.java around line 15. Compare the corresponding changes in schema_salad#711 for Python, then trace how generated Java types are loaded. Done means cwljava supports recursive TypeDSL syntax such as File[][] and the related behavior is covered by the project's tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, python
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100