Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added descriptor_type_version to ToolVersion definition #219

Merged
merged 6 commits into from
Sep 14, 2022
Merged
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 22 additions & 1 deletion openapi/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -629,6 +629,22 @@ components:
description: The type (or types) of descriptors available.
items:
$ref: "#/components/schemas/DescriptorType"
descriptor_type_version:
type: object
Copy link
Member

@denis-yuen denis-yuen May 13, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be of type array? Or rather a map with potential array values?
My understanding is that CWL workflows can have a mixture of tools of different cwl versions.
common-workflow-language/cwltool#1321

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@denis-yuen that makes sense. I will switch this over to a an array on Monday.

One thing I did consider, was changing the existing descriptor_type to contain this information since it is essentially being duplicated. But I figured that would be a harder change to get into the spec then a new field

description: A map providing information about the language versions used in this tool. The keys should be the
same values used in the `descriptor_type` field, and the value should be an array of all the language versions used
for the given `descriptor_type`. Depending on the `descriptor_type` (ex CWL) multiple version values may be used
denis-yuen marked this conversation as resolved.
Show resolved Hide resolved
in a single tool.
example: |
{
"WDL": ["1.0"],
"CWL": ["v1.0.2"],
denis-yuen marked this conversation as resolved.
Show resolved Hide resolved
"NFL": ["DSL2"]
}
additionalProperties:
type: array
items:
$ref: "#/components/schemas/DescriptorTypeVersion"
containerfile:
type: boolean
description: Reports if this tool has a containerfile available. (For
Expand Down Expand Up @@ -713,7 +729,12 @@ components:
- WDL
- NFL
- GALAXY
- SMK
- SMK
DescriptorTypeVersion:
type: string
description: The language version for a given descriptor type. The version should correspond
to the actual declared version of the descriptor. For example, tools defined in CWL may have a version of `v1.0.2`
denis-yuen marked this conversation as resolved.
Show resolved Hide resolved
whereas WDL tools may have a version of `1.0` or `draft-2`
DescriptorTypeWithPlain:
type: string
description: The output type of the descriptor. Plain types return the raw text while the "non-plain" types return the application/json
Expand Down