-
Notifications
You must be signed in to change notification settings - Fork 191
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
Modules meta.yml ontology #3032
Conversation
afd2edc
to
de6b069
Compare
de6b069
to
c848590
Compare
…cesses, for meta.yml
440ec2f
to
276ec16
Compare
276ec16
to
7979ced
Compare
some conflicts 😨 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed and tested over zoom, LGTM after final check about schema ✅
Confirmed that we are using the path to the cloned remote to obtain the JSON schema, not the local repo |
Merging this to continue with the bulk modules update. |
Follow up from #3028Split into a different PR to make it easier to review once #3028 is mergedI closed #3028 so this is the only PR to review now
Continuation of #2789
This PR adds an automated way of generating the right format
meta.yml
for modules.Note that the structure proposed in nf-core/modules#4983 (comment) is not possible if we want to automate the creation of this file, as comments are ignored when reading a yaml file with Python.
Example of outputs formatting:
In this PR we also add an option
--update-meta-yml
--fix
to fix existing files automatically.To be changed to
--fix
as suggested in #2789 (comment)Pytests are also missing for this functionality.A test was added for the command
nf-core modules lint --fix
.Together with this PR, there are other actions which must happen at the same time:
--fix
to update themeta.yml
file of subworkflows. #3077This PR also adds a tool identifier to the modules
meta.yml
. It queries bio.tools to obtain the bio.tools ID.It adds the edam ontologies for file inputs and outputs to the
meta.yml
template.Note that ontologies are not automatised, even though this can sometimes be obtained from bio.tools.
Currently, inputs and outputs are not automatically obtained when first creating the module. We should consider if it is required to automatise this.
One option is to update the ontologies when updating the
meta.yml
with--update-meta-yml
POC in modules: nf-core/modules#5867
Ontologies can be added manually, and we have linting for them, but we leave implementing the tooling for a later stage: #3027