nf-core 2.9__tar.gz → 2.11__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.
- {nf-core-2.9/nf_core.egg-info → nf-core-2.11}/PKG-INFO +87 -44
- {nf-core-2.9 → nf-core-2.11}/README.md +66 -43
- {nf-core-2.9 → nf-core-2.11}/nf_core/__main__.py +219 -135
- {nf-core-2.9 → nf-core-2.11}/nf_core/bump_version.py +67 -16
- {nf-core-2.9 → nf-core-2.11}/nf_core/components/components_command.py +31 -19
- nf-core-2.11/nf_core/components/components_test.py +248 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/components/components_utils.py +24 -18
- {nf-core-2.9 → nf-core-2.11}/nf_core/components/create.py +156 -106
- {nf-core-2.9 → nf-core-2.11}/nf_core/components/install.py +2 -0
- nf-core-2.11/nf_core/components/lint/__init__.py +313 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/components/list.py +47 -32
- nf-core-2.11/nf_core/components/nfcore_component.py +193 -0
- nf-core-2.11/nf_core/components/patch.py +224 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/components/remove.py +1 -1
- {nf-core-2.9 → nf-core-2.11}/nf_core/components/update.py +19 -14
- {nf-core-2.9 → nf-core-2.11}/nf_core/create.py +30 -14
- {nf-core-2.9 → nf-core-2.11}/nf_core/download.py +160 -98
- {nf-core-2.9 → nf-core-2.11}/nf_core/launch.py +1 -1
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/__init__.py +42 -34
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/actions_ci.py +3 -3
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/files_exist.py +2 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/multiqc_config.py +39 -21
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/nextflow_config.py +35 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/list.py +21 -16
- nf-core-2.11/nf_core/module-template/environment.yml +9 -0
- {nf-core-2.9/nf_core/module-template/modules → nf-core-2.11/nf_core/module-template}/main.nf +3 -3
- {nf-core-2.9/nf_core/module-template/modules → nf-core-2.11/nf_core/module-template}/meta.yml +6 -4
- nf-core-2.11/nf_core/module-template/tests/main.nf.test +82 -0
- nf-core-2.11/nf_core/module-template/tests/tags.yml +2 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/__init__.py +0 -2
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/bump_versions.py +85 -56
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/create.py +2 -0
- nf-core-2.11/nf_core/modules/lint/__init__.py +231 -0
- nf-core-2.11/nf_core/modules/lint/environment_yml.py +113 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/lint/main_nf.py +85 -34
- nf-core-2.11/nf_core/modules/lint/meta_yml.py +182 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/lint/module_changes.py +13 -7
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/lint/module_deprecations.py +3 -3
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/lint/module_patch.py +6 -6
- nf-core-2.11/nf_core/modules/lint/module_tests.py +208 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/lint/module_todos.py +2 -9
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/lint/module_version.py +6 -6
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/modules_json.py +22 -6
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/modules_utils.py +27 -19
- nf-core-2.11/nf_core/modules/patch.py +10 -0
- nf-core-2.11/nf_core/params_file.py +278 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.devcontainer/devcontainer.json +1 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/CONTRIBUTING.md +6 -1
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/PULL_REQUEST_TEMPLATE.md +1 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/workflows/ci.yml +1 -1
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/workflows/fix-linting.yml +2 -2
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/workflows/linting.yml +7 -7
- nf-core-2.11/nf_core/pipeline-template/.github/workflows/release-announcments.yml +68 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.gitpod.yml +3 -1
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/CITATIONS.md +1 -1
- nf-core-2.11/nf_core/pipeline-template/CODE_OF_CONDUCT.md +182 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/README.md +6 -9
- nf-core-2.11/nf_core/pipeline-template/assets/multiqc_config.yml +19 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/assets/slackreport.json +1 -1
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/conf/modules.config +9 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/docs/output.md +4 -1
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/docs/usage.md +14 -6
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/lib/NfcoreTemplate.groovy +27 -7
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/lib/WorkflowPipeline.groovy +1 -1
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/main.nf +3 -0
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/custom/dumpsoftwareversions/environment.yml +7 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/modules/nf-core/custom/dumpsoftwareversions/main.nf +3 -3
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/modules/nf-core/custom/dumpsoftwareversions/meta.yml +4 -3
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/custom/dumpsoftwareversions/tests/main.nf.test +38 -0
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/custom/dumpsoftwareversions/tests/main.nf.test.snap +27 -0
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/custom/dumpsoftwareversions/tests/tags.yml +2 -0
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/fastqc/environment.yml +7 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/modules/nf-core/fastqc/main.nf +10 -6
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/modules/nf-core/fastqc/meta.yml +5 -0
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/fastqc/tests/main.nf.test +109 -0
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/fastqc/tests/main.nf.test.snap +10 -0
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/fastqc/tests/tags.yml +2 -0
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/multiqc/environment.yml +7 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/modules/nf-core/multiqc/main.nf +5 -3
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/modules/nf-core/multiqc/meta.yml +7 -4
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/multiqc/tests/main.nf.test +63 -0
- nf-core-2.11/nf_core/pipeline-template/modules/nf-core/multiqc/tests/tags.yml +2 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/modules.json +3 -3
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/nextflow.config +11 -6
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/nextflow_schema.json +0 -15
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/workflows/pipeline.nf +1 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/schema.py +52 -14
- {nf-core-2.9/nf_core/subworkflow-template/subworkflows → nf-core-2.11/nf_core/subworkflow-template}/main.nf +1 -1
- nf-core-2.11/nf_core/subworkflow-template/meta.yml +51 -0
- nf-core-2.11/nf_core/subworkflow-template/tests/main.nf.test +43 -0
- nf-core-2.11/nf_core/subworkflow-template/tests/tags.yml +2 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/subworkflows/__init__.py +1 -2
- {nf-core-2.9 → nf-core-2.11}/nf_core/subworkflows/create.py +2 -0
- nf-core-2.11/nf_core/subworkflows/lint/__init__.py +222 -0
- nf-core-2.11/nf_core/subworkflows/lint/main_nf.py +236 -0
- nf-core-2.11/nf_core/subworkflows/lint/meta_yml.py +132 -0
- nf-core-2.11/nf_core/subworkflows/lint/subworkflow_changes.py +46 -0
- nf-core-2.11/nf_core/subworkflows/lint/subworkflow_tests.py +212 -0
- nf-core-2.11/nf_core/subworkflows/lint/subworkflow_todos.py +40 -0
- nf-core-2.11/nf_core/subworkflows/lint/subworkflow_version.py +53 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/sync.py +31 -16
- {nf-core-2.9 → nf-core-2.11}/nf_core/synced_repo.py +12 -12
- {nf-core-2.9 → nf-core-2.11}/nf_core/utils.py +96 -26
- {nf-core-2.9 → nf-core-2.11/nf_core.egg-info}/PKG-INFO +87 -44
- {nf-core-2.9 → nf-core-2.11}/nf_core.egg-info/SOURCES.txt +37 -19
- {nf-core-2.9 → nf-core-2.11}/nf_core.egg-info/requires.txt +1 -0
- {nf-core-2.9 → nf-core-2.11}/requirements.txt +1 -0
- {nf-core-2.9 → nf-core-2.11}/setup.py +1 -1
- nf-core-2.11/tests/lint/multiqc_config.py +106 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/nextflow_config.py +20 -0
- {nf-core-2.9 → nf-core-2.11}/tests/modules/bump_versions.py +7 -6
- nf-core-2.11/tests/modules/create.py +141 -0
- nf-core-2.11/tests/modules/lint.py +646 -0
- nf-core-2.11/tests/subworkflows/create.py +111 -0
- nf-core-2.11/tests/subworkflows/lint.py +106 -0
- {nf-core-2.9 → nf-core-2.11}/tests/test_cli.py +5 -7
- nf-core-2.11/tests/test_components.py +52 -0
- {nf-core-2.9 → nf-core-2.11}/tests/test_create.py +24 -15
- {nf-core-2.9 → nf-core-2.11}/tests/test_download.py +99 -28
- {nf-core-2.9 → nf-core-2.11}/tests/test_launch.py +15 -20
- {nf-core-2.9 → nf-core-2.11}/tests/test_lint.py +20 -10
- {nf-core-2.9 → nf-core-2.11}/tests/test_list.py +1 -1
- {nf-core-2.9 → nf-core-2.11}/tests/test_modules.py +70 -48
- nf-core-2.11/tests/test_params_file.py +79 -0
- {nf-core-2.9 → nf-core-2.11}/tests/test_schema.py +1 -1
- {nf-core-2.9 → nf-core-2.11}/tests/test_subworkflows.py +34 -41
- {nf-core-2.9 → nf-core-2.11}/tests/test_test_utils.py +1 -18
- {nf-core-2.9 → nf-core-2.11}/tests/test_utils.py +33 -2
- {nf-core-2.9 → nf-core-2.11}/tests/utils.py +27 -25
- nf-core-2.9/nf_core/components/components_test.py +0 -200
- nf-core-2.9/nf_core/module-template/tests/main.nf +0 -18
- nf-core-2.9/nf_core/module-template/tests/nextflow.config +0 -5
- nf-core-2.9/nf_core/module-template/tests/test.yml +0 -18
- nf-core-2.9/nf_core/modules/lint/__init__.py +0 -465
- nf-core-2.9/nf_core/modules/lint/meta_yml.py +0 -96
- nf-core-2.9/nf_core/modules/lint/module_tests.py +0 -88
- nf-core-2.9/nf_core/modules/modules_test.py +0 -30
- nf-core-2.9/nf_core/modules/nfcore_module.py +0 -66
- nf-core-2.9/nf_core/modules/patch.py +0 -209
- nf-core-2.9/nf_core/modules/test_yml_builder.py +0 -373
- nf-core-2.9/nf_core/pipeline-template/CODE_OF_CONDUCT.md +0 -111
- nf-core-2.9/nf_core/pipeline-template/assets/multiqc_config.yml +0 -13
- nf-core-2.9/nf_core/subworkflow-template/subworkflows/meta.yml +0 -49
- nf-core-2.9/nf_core/subworkflow-template/tests/main.nf +0 -18
- nf-core-2.9/nf_core/subworkflow-template/tests/nextflow.config +0 -5
- nf-core-2.9/nf_core/subworkflow-template/tests/test.yml +0 -12
- nf-core-2.9/nf_core/subworkflows/subworkflows_test.py +0 -31
- nf-core-2.9/nf_core/subworkflows/test_yml_builder.py +0 -391
- nf-core-2.9/tests/modules/create.py +0 -65
- nf-core-2.9/tests/modules/create_test_yml.py +0 -60
- nf-core-2.9/tests/modules/lint.py +0 -233
- nf-core-2.9/tests/modules/modules_test.py +0 -41
- nf-core-2.9/tests/subworkflows/create.py +0 -37
- nf-core-2.9/tests/subworkflows/create_test_yml.py +0 -96
- nf-core-2.9/tests/subworkflows/subworkflows_test.py +0 -41
- {nf-core-2.9 → nf-core-2.11}/LICENSE +0 -0
- {nf-core-2.9 → nf-core-2.11}/MANIFEST.in +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/.pre-commit-prettier-config.yaml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/__init__.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/components/__init__.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/components/info.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/licences.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/actions_awsfulltest.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/actions_awstest.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/actions_schema_validation.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/files_unchanged.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/merge_markers.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/modules_json.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/modules_structure.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/pipeline_name_conventions.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/pipeline_todos.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/readme.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/schema_description.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/schema_lint.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/schema_params.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/system_exit.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/template_strings.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint/version_consistency.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/lint_utils.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/info.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/install.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/list.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/modules_differ.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/modules_repo.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/remove.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/modules/update.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.editorconfig +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.gitattributes +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/.dockstore.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/workflows/awsfulltest.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/workflows/awstest.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/workflows/branch.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/workflows/clean-up.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.github/workflows/linting_comment.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.gitignore +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.nf-core.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.pre-commit-config.yaml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.prettierignore +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/.prettierrc.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/CHANGELOG.md +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/LICENSE +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/assets/adaptivecard.json +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/assets/email_template.html +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/assets/email_template.txt +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/assets/methods_description_template.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/assets/samplesheet.csv +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/assets/schema_input.json +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/assets/sendmail_template.txt +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/bin/check_samplesheet.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/conf/base.config +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/conf/igenomes.config +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/conf/test.config +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/conf/test_full.config +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/docs/README.md +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/docs/images/mqc_fastqc_adapter.png +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/docs/images/mqc_fastqc_counts.png +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/docs/images/mqc_fastqc_quality.png +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/lib/Utils.groovy +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/lib/WorkflowMain.groovy +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/lib/nfcore_external_java_deps.jar +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/modules/local/samplesheet_check.nf +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/modules/nf-core/custom/dumpsoftwareversions/templates/dumpsoftwareversions.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/pyproject.toml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/subworkflows/local/input_check.nf +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/pipeline-template/tower.yml +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/refgenie.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/subworkflows/info.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/subworkflows/install.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/subworkflows/list.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/subworkflows/remove.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core/subworkflows/update.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core.egg-info/dependency_links.txt +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core.egg-info/entry_points.txt +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core.egg-info/not-zip-safe +0 -0
- {nf-core-2.9 → nf-core-2.11}/nf_core.egg-info/top_level.txt +0 -0
- {nf-core-2.9 → nf-core-2.11}/pyproject.toml +0 -0
- {nf-core-2.9 → nf-core-2.11}/setup.cfg +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/__init__.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/__init__.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/actions_awsfulltest.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/actions_awstest.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/actions_ci.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/actions_schema_validation.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/files_exist.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/files_unchanged.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/merge_markers.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/modules_json.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/lint/version_consistency.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/modules/__init__.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/modules/info.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/modules/install.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/modules/list.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/modules/modules_json.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/modules/patch.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/modules/remove.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/modules/update.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/subworkflows/__init__.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/subworkflows/info.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/subworkflows/install.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/subworkflows/list.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/subworkflows/remove.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/subworkflows/update.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/test_bump_version.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/test_licenses.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/test_lint_utils.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/test_refgenie.py +0 -0
- {nf-core-2.9 → nf-core-2.11}/tests/test_sync.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: nf-core
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.11
|
|
4
4
|
Summary: Helper tools for use with nf-core Nextflow pipelines.
|
|
5
5
|
Home-page: https://github.com/nf-core/tools
|
|
6
6
|
Author: Phil Ewels
|
|
@@ -10,6 +10,26 @@ Keywords: nf-core,nextflow,bioinformatics,workflow,pipeline,biology,sequencing,N
|
|
|
10
10
|
Requires-Python: >=3.8, <4
|
|
11
11
|
Description-Content-Type: text/markdown
|
|
12
12
|
License-File: LICENSE
|
|
13
|
+
Requires-Dist: click
|
|
14
|
+
Requires-Dist: filetype
|
|
15
|
+
Requires-Dist: GitPython
|
|
16
|
+
Requires-Dist: jinja2
|
|
17
|
+
Requires-Dist: jsonschema>=3.0
|
|
18
|
+
Requires-Dist: markdown>=3.3
|
|
19
|
+
Requires-Dist: packaging
|
|
20
|
+
Requires-Dist: pre-commit
|
|
21
|
+
Requires-Dist: prompt_toolkit>=3.0.3
|
|
22
|
+
Requires-Dist: pytest>=7.0.0
|
|
23
|
+
Requires-Dist: pytest-workflow>=1.6.0
|
|
24
|
+
Requires-Dist: pyyaml
|
|
25
|
+
Requires-Dist: questionary>=1.8.0
|
|
26
|
+
Requires-Dist: refgenie
|
|
27
|
+
Requires-Dist: requests
|
|
28
|
+
Requires-Dist: requests_cache
|
|
29
|
+
Requires-Dist: rich-click>=1.6.1
|
|
30
|
+
Requires-Dist: rich>=13.3.1
|
|
31
|
+
Requires-Dist: tabulate
|
|
32
|
+
Requires-Dist: pdiff
|
|
13
33
|
|
|
14
34
|
#   <!-- omit in toc -->
|
|
15
35
|
|
|
@@ -33,6 +53,7 @@ A python package with helper tools for the nf-core community.
|
|
|
33
53
|
- [`nf-core` tools update](#update-tools)
|
|
34
54
|
- [`nf-core list` - List available pipelines](#listing-pipelines)
|
|
35
55
|
- [`nf-core launch` - Run a pipeline with interactive parameter prompts](#launch-a-pipeline)
|
|
56
|
+
- [`nf-core create-params-file` - Create a parameter file](#create-a-parameter-file)
|
|
36
57
|
- [`nf-core download` - Download a pipeline for offline use](#downloading-pipelines-for-offline-use)
|
|
37
58
|
- [`nf-core licences` - List software licences in a pipeline](#pipeline-software-licences)
|
|
38
59
|
- [`nf-core create` - Create a new pipeline with the nf-core template](#creating-a-new-pipeline)
|
|
@@ -51,7 +72,6 @@ A python package with helper tools for the nf-core community.
|
|
|
51
72
|
- [`modules remove` - Remove a module from a pipeline](#remove-a-module-from-a-pipeline)
|
|
52
73
|
- [`modules patch` - Create a patch file for a module](#create-a-patch-file-for-a-module)
|
|
53
74
|
- [`modules create` - Create a module from the template](#create-a-new-module)
|
|
54
|
-
- [`modules create-test-yml` - Create the `test.yml` file for a module](#create-a-module-test-config-file)
|
|
55
75
|
- [`modules lint` - Check a module against nf-core guidelines](#check-a-module-against-nf-core-guidelines)
|
|
56
76
|
- [`modules test` - Run the tests for a module](#run-the-tests-for-a-module-using-pytest)
|
|
57
77
|
- [`modules bump-versions` - Bump software versions of modules](#bump-bioconda-and-container-versions-of-modules-in)
|
|
@@ -65,12 +85,12 @@ A python package with helper tools for the nf-core community.
|
|
|
65
85
|
- [`subworkflows update` - Update subworkflows in a pipeline](#update-subworkflows-in-a-pipeline)
|
|
66
86
|
- [`subworkflows remove` - Remove a subworkflow from a pipeline](#remove-a-subworkflow-from-a-pipeline)
|
|
67
87
|
- [`subworkflows create` - Create a subworkflow from the template](#create-a-new-subworkflow)
|
|
68
|
-
- [`subworkflows
|
|
88
|
+
- [`subworkflows lint` - Check a subworkflow against nf-core guidelines](#check-a-subworkflow-against-nf-core-guidelines)
|
|
69
89
|
- [`subworkflows test` - Run the tests for a subworkflow](#run-the-tests-for-a-subworkflow-using-pytest)
|
|
70
90
|
- [Citation](#citation)
|
|
71
91
|
|
|
72
92
|
The nf-core tools package is written in Python and can be imported and used within other packages.
|
|
73
|
-
For documentation of the internal Python functions, please refer to the [Tools Python API docs](https://nf-co.re/tools
|
|
93
|
+
For documentation of the internal Python functions, please refer to the [Tools Python API docs](https://nf-co.re/tools/docs/).
|
|
74
94
|
|
|
75
95
|
## Installation
|
|
76
96
|
|
|
@@ -89,7 +109,7 @@ conda install nf-core
|
|
|
89
109
|
Alternatively, you can create a new environment with both nf-core/tools and nextflow:
|
|
90
110
|
|
|
91
111
|
```bash
|
|
92
|
-
conda create --name nf-core python=3.
|
|
112
|
+
conda create --name nf-core python=3.11 nf-core nextflow
|
|
93
113
|
conda activate nf-core
|
|
94
114
|
```
|
|
95
115
|
|
|
@@ -199,7 +219,7 @@ for wf in wfs.remote_workflows:
|
|
|
199
219
|
print(wf.full_name)
|
|
200
220
|
```
|
|
201
221
|
|
|
202
|
-
Please see [https://nf-co.re/tools
|
|
222
|
+
Please see [https://nf-co.re/tools/docs/](https://nf-co.re/tools/docs/) for the function documentation.
|
|
203
223
|
|
|
204
224
|
### Automatic version check
|
|
205
225
|
|
|
@@ -238,10 +258,12 @@ Auto-completion for the `nf-core` command is available for bash, zsh and fish. T
|
|
|
238
258
|
|
|
239
259
|
After a restart of the shell session you should have auto-completion for the `nf-core` command and all its sub-commands and options.
|
|
240
260
|
|
|
241
|
-
>
|
|
261
|
+
> [!NOTE]
|
|
262
|
+
> The added line will run the command `nf-core` (which will also slow down startup time of your shell). You should therefore either have the nf-core/tools installed globally.
|
|
242
263
|
> You can also wrap it inside `if type nf-core > /dev/null; then ` \<YOUR EVAL CODE LINE\> `fi` for bash and zsh or `if command -v nf-core &> /dev/null eval (env _NF_CORE_COMPLETE=fish_source nf-core) end` for fish. You need to then source the config in your environment for the completions to be activated.
|
|
243
264
|
|
|
244
|
-
>
|
|
265
|
+
> [!TIP]
|
|
266
|
+
> If you see the error `command not found compdef` , be sure that your config file contains the line `autoload -Uz compinit && compinit` before the eval line.
|
|
245
267
|
|
|
246
268
|
## Listing pipelines
|
|
247
269
|
|
|
@@ -324,6 +346,22 @@ Do you want to run this command now? [y/n]:
|
|
|
324
346
|
- `--url`
|
|
325
347
|
- Change the URL used for the graphical interface, useful for development work on the website.
|
|
326
348
|
|
|
349
|
+
## Create a parameter file
|
|
350
|
+
|
|
351
|
+
Sometimes it is easier to manually edit a parameter file than to use the web interface or interactive commandline wizard
|
|
352
|
+
provided by `nf-core launch`, for example when running a pipeline with many options on a remote server without a graphical interface.
|
|
353
|
+
|
|
354
|
+
You can create a parameter file with all parameters of a pipeline with the `nf-core create-params-file` command.
|
|
355
|
+
This file can then be passed to `nextflow` with the `-params-file` flag.
|
|
356
|
+
|
|
357
|
+
This command takes one argument - either the name of a nf-core pipeline which will be pulled automatically,
|
|
358
|
+
or the path to a directory containing a Nextflow pipeline _(can be any pipeline, doesn't have to be nf-core)_.
|
|
359
|
+
|
|
360
|
+
The generated YAML file contains all parameters set to the pipeline default value along with their description in comments.
|
|
361
|
+
This template can then be used by uncommenting and modifying the value of parameters you want to pass to a pipline run.
|
|
362
|
+
|
|
363
|
+
Hidden options are not included by default, but can be included using the `-x`/`--show-hidden` flag.
|
|
364
|
+
|
|
327
365
|
## Downloading pipelines for offline use
|
|
328
366
|
|
|
329
367
|
Sometimes you may need to run an nf-core pipeline on a server or HPC system that has no internet connection.
|
|
@@ -356,14 +394,16 @@ You can run the pipeline by simply providing the directory path for the `workflo
|
|
|
356
394
|
nextflow run /path/to/download/nf-core-rnaseq-dev/workflow/ --input mydata.csv --outdir results # usual parameters here
|
|
357
395
|
```
|
|
358
396
|
|
|
359
|
-
>
|
|
397
|
+
> [!NOTE]
|
|
398
|
+
> If you downloaded Singularity container images, you will need to use `-profile singularity` or have it enabled in your config file.
|
|
360
399
|
|
|
361
400
|
### Downloaded nf-core configs
|
|
362
401
|
|
|
363
402
|
The pipeline files are automatically updated (`params.custom_config_base` is set to `../configs`), so that the local copy of institutional configs are available when running the pipeline.
|
|
364
403
|
So using `-profile <NAME>` should work if available within [nf-core/configs](https://github.com/nf-core/configs).
|
|
365
404
|
|
|
366
|
-
>
|
|
405
|
+
> [!WARNING]
|
|
406
|
+
> This option is not available when downloading a pipeline for use with [Nextflow Tower](#adapting-downloads-to-nextflow-tower) because the application manages all configurations separately.
|
|
367
407
|
|
|
368
408
|
### Downloading Apptainer containers
|
|
369
409
|
|
|
@@ -421,14 +461,16 @@ If the download speeds are much slower than your internet connection is capable
|
|
|
421
461
|
|
|
422
462
|
Subsequently, the `*.git` folder can be moved to it's final destination and linked with a pipeline in _Tower_ using the `file:/` prefix.
|
|
423
463
|
|
|
424
|
-
>
|
|
464
|
+
> [!TIP]
|
|
465
|
+
> Also without access to Tower, pipelines downloaded with the `--tower` flag can be run if the _absolute_ path is specified: `nextflow run -r 2.5 file:/path/to/pipelinedownload.git`. Downloads in this format allow you to include multiple revisions of a pipeline in a single file, but require that the revision (e.g. `-r 2.5`) is always explicitly specified.
|
|
425
466
|
|
|
426
467
|
## Pipeline software licences
|
|
427
468
|
|
|
428
469
|
Sometimes it's useful to see the software licences of the tools used in a pipeline.
|
|
429
470
|
You can use the `licences` subcommand to fetch and print the software licence from each conda / PyPI package used in an nf-core pipeline.
|
|
430
471
|
|
|
431
|
-
>
|
|
472
|
+
> [!WARNING]
|
|
473
|
+
> This command does not currently work for newer DSL2 pipelines. This will hopefully be addressed [soon](https://github.com/nf-core/tools/issues/1155).
|
|
432
474
|
|
|
433
475
|
<!-- RICH-CODEX
|
|
434
476
|
timeout: 10
|
|
@@ -456,6 +498,7 @@ You can then continue to edit, commit and push normally as you build your pipeli
|
|
|
456
498
|
|
|
457
499
|
Please see the [nf-core documentation](https://nf-co.re/developers/adding_pipelines) for a full walkthrough of how to create a new nf-core workflow.
|
|
458
500
|
|
|
501
|
+
> [!TIP]
|
|
459
502
|
> As the log output says, remember to come and discuss your idea for a pipeline as early as possible!
|
|
460
503
|
> See the [documentation](https://nf-co.re/developers/adding_pipelines#join-the-community) for instructions.
|
|
461
504
|
|
|
@@ -516,7 +559,7 @@ Each test result name on the left is a terminal hyperlink.
|
|
|
516
559
|
In most terminals you can <kbd>ctrl</kbd> + <kbd>click</kbd> ( <kbd>cmd</kbd> + <kbd>click</kbd>) these
|
|
517
560
|
links to open documentation specific to this test in your browser.
|
|
518
561
|
|
|
519
|
-
Alternatively visit <https://nf-co.re/tools
|
|
562
|
+
Alternatively visit <https://nf-co.re/tools/docs/latest/pipeline_lint_tests/index.html> and find your test to read more.
|
|
520
563
|
|
|
521
564
|
### Linting config
|
|
522
565
|
|
|
@@ -928,20 +971,6 @@ fake_command: nf-core modules create fastqc --author @nf-core-bot --label proce
|
|
|
928
971
|
|
|
929
972
|

|
|
930
973
|
|
|
931
|
-
### Create a module test config file
|
|
932
|
-
|
|
933
|
-
All modules on [nf-core/modules](https://github.com/nf-core/modules) have a strict requirement of being unit tested using minimal test data.
|
|
934
|
-
To help developers build new modules, the `nf-core modules create-test-yml` command automates the creation of the yaml file required to document the output file `md5sum` and other information generated by the testing.
|
|
935
|
-
After you have written a minimal Nextflow script to test your module `tests/modules/<tool>/<subtool>/main.nf`, this command will run the tests for you and create the `tests/modules/<tool>/<subtool>/test.yml` file.
|
|
936
|
-
|
|
937
|
-
<!-- RICH-CODEX
|
|
938
|
-
working_dir: tmp/modules
|
|
939
|
-
extra_env:
|
|
940
|
-
PROFILE: 'conda'
|
|
941
|
-
-->
|
|
942
|
-
|
|
943
|
-

|
|
944
|
-
|
|
945
974
|
### Check a module against nf-core guidelines
|
|
946
975
|
|
|
947
976
|
Run the `nf-core modules lint` command to check modules in the current working directory (pipeline or nf-core/modules clone) against nf-core guidelines.
|
|
@@ -955,13 +984,12 @@ before_command: sed 's/1.13a/1.10/g' modules/multiqc/main.nf > modules/multiqc/m
|
|
|
955
984
|
|
|
956
985
|

|
|
957
986
|
|
|
958
|
-
###
|
|
987
|
+
### Create a test for a module
|
|
959
988
|
|
|
960
|
-
|
|
989
|
+
All modules on [nf-core/modules](https://github.com/nf-core/modules) have a strict requirement of being unit tested using minimal test data. We use [nf-test](https://code.askimed.com/nf-test/) as our testing framework.
|
|
990
|
+
Each module comes already with a template for the test file in `test/main.nf.test`. Replace the placeholder code in that file with your specific input, output and proces. In order to generate the corresponding snapshot after writing your test, you can use the `nf-core modules test` command. This command will run `nf-test test` twice, to also check for snapshot stability, i.e. that the same snapshot is generated on multiple runs.
|
|
961
991
|
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
You can specify the module name in the form TOOL/SUBTOOL in command line or provide it later by prompts.
|
|
992
|
+
You can specify the module name in the form TOOL/SUBTOOL in the command or provide it later through interactive prompts.
|
|
965
993
|
|
|
966
994
|
<!-- RICH-CODEX
|
|
967
995
|
working_dir: tmp/modules
|
|
@@ -970,7 +998,15 @@ extra_env:
|
|
|
970
998
|
PROFILE: 'conda'
|
|
971
999
|
-->
|
|
972
1000
|
|
|
973
|
-

|
|
1002
|
+
|
|
1003
|
+
In case you changed something in the test and want to update the snapshot, run
|
|
1004
|
+
|
|
1005
|
+
```bash
|
|
1006
|
+
nf-core modules test --update
|
|
1007
|
+
```
|
|
1008
|
+
|
|
1009
|
+
If you want to run the test only once without checking for snapshot stability, you can use the `--once` flag.
|
|
974
1010
|
|
|
975
1011
|
### Bump bioconda and container versions of modules in
|
|
976
1012
|
|
|
@@ -1200,36 +1236,43 @@ fake_command: nf-core subworkflows create bam_stats_samtools --author @nf-core-b
|
|
|
1200
1236
|
|
|
1201
1237
|

|
|
1202
1238
|
|
|
1203
|
-
### Create a
|
|
1239
|
+
### Create a test for a subworkflow
|
|
1204
1240
|
|
|
1205
|
-
All subworkflows on [nf-core/modules](https://github.com/nf-core/modules) have a strict requirement of being unit tested using minimal test data.
|
|
1206
|
-
|
|
1207
|
-
|
|
1241
|
+
All subworkflows on [nf-core/modules](https://github.com/nf-core/modules) have a strict requirement of being unit tested using minimal test data. We use [nf-test](https://code.askimed.com/nf-test/) as our testing framework.
|
|
1242
|
+
Each subworkflow comes already with a template for the test file in `test/main.nf.test`. Replace the placeholder code in that file with your specific input, output and proces. In order to generate the corresponding snapshot after writing your test, you can use the `nf-core subworkflows test` command. This command will run `nf-test test` twice, to also check for snapshot stability, i.e. that the same snapshot is generated on multiple runs.
|
|
1243
|
+
|
|
1244
|
+
You can specify the subworkflow name in the command or provide it later through interactive prompts.
|
|
1208
1245
|
|
|
1209
1246
|
<!-- RICH-CODEX
|
|
1210
1247
|
working_dir: tmp/modules
|
|
1248
|
+
timeout: 30
|
|
1211
1249
|
extra_env:
|
|
1212
1250
|
PROFILE: 'conda'
|
|
1213
1251
|
-->
|
|
1214
1252
|
|
|
1215
|
-

|
|
1254
|
+
|
|
1255
|
+
In case you changed something in the test and want to update the snapshot, run
|
|
1216
1256
|
|
|
1217
|
-
|
|
1257
|
+
```bash
|
|
1258
|
+
nf-core subworkflows test --update
|
|
1259
|
+
```
|
|
1218
1260
|
|
|
1219
|
-
|
|
1261
|
+
If you want to run the test only once without checking for snapshot stability, you can use the `--once` flag.
|
|
1220
1262
|
|
|
1221
|
-
|
|
1263
|
+
### Check a subworkflow against nf-core guidelines
|
|
1222
1264
|
|
|
1223
|
-
|
|
1265
|
+
Run the `nf-core subworkflows lint` command to check subworkflows in the current working directory (a pipeline or a clone of nf-core/modules) against nf-core guidelines.
|
|
1266
|
+
|
|
1267
|
+
Use the `--all` flag to run linting on all subworkflows found. Use `--dir <pipeline_dir>` to specify a different directory than the current working directory.
|
|
1224
1268
|
|
|
1225
1269
|
<!-- RICH-CODEX
|
|
1226
1270
|
working_dir: tmp/modules
|
|
1227
|
-
timeout: 30
|
|
1228
1271
|
extra_env:
|
|
1229
1272
|
PROFILE: 'conda'
|
|
1230
1273
|
-->
|
|
1231
1274
|
|
|
1232
|
-

|
|
1233
1276
|
|
|
1234
1277
|
## Citation
|
|
1235
1278
|
|
|
@@ -20,6 +20,7 @@ A python package with helper tools for the nf-core community.
|
|
|
20
20
|
- [`nf-core` tools update](#update-tools)
|
|
21
21
|
- [`nf-core list` - List available pipelines](#listing-pipelines)
|
|
22
22
|
- [`nf-core launch` - Run a pipeline with interactive parameter prompts](#launch-a-pipeline)
|
|
23
|
+
- [`nf-core create-params-file` - Create a parameter file](#create-a-parameter-file)
|
|
23
24
|
- [`nf-core download` - Download a pipeline for offline use](#downloading-pipelines-for-offline-use)
|
|
24
25
|
- [`nf-core licences` - List software licences in a pipeline](#pipeline-software-licences)
|
|
25
26
|
- [`nf-core create` - Create a new pipeline with the nf-core template](#creating-a-new-pipeline)
|
|
@@ -38,7 +39,6 @@ A python package with helper tools for the nf-core community.
|
|
|
38
39
|
- [`modules remove` - Remove a module from a pipeline](#remove-a-module-from-a-pipeline)
|
|
39
40
|
- [`modules patch` - Create a patch file for a module](#create-a-patch-file-for-a-module)
|
|
40
41
|
- [`modules create` - Create a module from the template](#create-a-new-module)
|
|
41
|
-
- [`modules create-test-yml` - Create the `test.yml` file for a module](#create-a-module-test-config-file)
|
|
42
42
|
- [`modules lint` - Check a module against nf-core guidelines](#check-a-module-against-nf-core-guidelines)
|
|
43
43
|
- [`modules test` - Run the tests for a module](#run-the-tests-for-a-module-using-pytest)
|
|
44
44
|
- [`modules bump-versions` - Bump software versions of modules](#bump-bioconda-and-container-versions-of-modules-in)
|
|
@@ -52,12 +52,12 @@ A python package with helper tools for the nf-core community.
|
|
|
52
52
|
- [`subworkflows update` - Update subworkflows in a pipeline](#update-subworkflows-in-a-pipeline)
|
|
53
53
|
- [`subworkflows remove` - Remove a subworkflow from a pipeline](#remove-a-subworkflow-from-a-pipeline)
|
|
54
54
|
- [`subworkflows create` - Create a subworkflow from the template](#create-a-new-subworkflow)
|
|
55
|
-
- [`subworkflows
|
|
55
|
+
- [`subworkflows lint` - Check a subworkflow against nf-core guidelines](#check-a-subworkflow-against-nf-core-guidelines)
|
|
56
56
|
- [`subworkflows test` - Run the tests for a subworkflow](#run-the-tests-for-a-subworkflow-using-pytest)
|
|
57
57
|
- [Citation](#citation)
|
|
58
58
|
|
|
59
59
|
The nf-core tools package is written in Python and can be imported and used within other packages.
|
|
60
|
-
For documentation of the internal Python functions, please refer to the [Tools Python API docs](https://nf-co.re/tools
|
|
60
|
+
For documentation of the internal Python functions, please refer to the [Tools Python API docs](https://nf-co.re/tools/docs/).
|
|
61
61
|
|
|
62
62
|
## Installation
|
|
63
63
|
|
|
@@ -76,7 +76,7 @@ conda install nf-core
|
|
|
76
76
|
Alternatively, you can create a new environment with both nf-core/tools and nextflow:
|
|
77
77
|
|
|
78
78
|
```bash
|
|
79
|
-
conda create --name nf-core python=3.
|
|
79
|
+
conda create --name nf-core python=3.11 nf-core nextflow
|
|
80
80
|
conda activate nf-core
|
|
81
81
|
```
|
|
82
82
|
|
|
@@ -186,7 +186,7 @@ for wf in wfs.remote_workflows:
|
|
|
186
186
|
print(wf.full_name)
|
|
187
187
|
```
|
|
188
188
|
|
|
189
|
-
Please see [https://nf-co.re/tools
|
|
189
|
+
Please see [https://nf-co.re/tools/docs/](https://nf-co.re/tools/docs/) for the function documentation.
|
|
190
190
|
|
|
191
191
|
### Automatic version check
|
|
192
192
|
|
|
@@ -225,10 +225,12 @@ Auto-completion for the `nf-core` command is available for bash, zsh and fish. T
|
|
|
225
225
|
|
|
226
226
|
After a restart of the shell session you should have auto-completion for the `nf-core` command and all its sub-commands and options.
|
|
227
227
|
|
|
228
|
-
>
|
|
228
|
+
> [!NOTE]
|
|
229
|
+
> The added line will run the command `nf-core` (which will also slow down startup time of your shell). You should therefore either have the nf-core/tools installed globally.
|
|
229
230
|
> You can also wrap it inside `if type nf-core > /dev/null; then ` \<YOUR EVAL CODE LINE\> `fi` for bash and zsh or `if command -v nf-core &> /dev/null eval (env _NF_CORE_COMPLETE=fish_source nf-core) end` for fish. You need to then source the config in your environment for the completions to be activated.
|
|
230
231
|
|
|
231
|
-
>
|
|
232
|
+
> [!TIP]
|
|
233
|
+
> If you see the error `command not found compdef` , be sure that your config file contains the line `autoload -Uz compinit && compinit` before the eval line.
|
|
232
234
|
|
|
233
235
|
## Listing pipelines
|
|
234
236
|
|
|
@@ -311,6 +313,22 @@ Do you want to run this command now? [y/n]:
|
|
|
311
313
|
- `--url`
|
|
312
314
|
- Change the URL used for the graphical interface, useful for development work on the website.
|
|
313
315
|
|
|
316
|
+
## Create a parameter file
|
|
317
|
+
|
|
318
|
+
Sometimes it is easier to manually edit a parameter file than to use the web interface or interactive commandline wizard
|
|
319
|
+
provided by `nf-core launch`, for example when running a pipeline with many options on a remote server without a graphical interface.
|
|
320
|
+
|
|
321
|
+
You can create a parameter file with all parameters of a pipeline with the `nf-core create-params-file` command.
|
|
322
|
+
This file can then be passed to `nextflow` with the `-params-file` flag.
|
|
323
|
+
|
|
324
|
+
This command takes one argument - either the name of a nf-core pipeline which will be pulled automatically,
|
|
325
|
+
or the path to a directory containing a Nextflow pipeline _(can be any pipeline, doesn't have to be nf-core)_.
|
|
326
|
+
|
|
327
|
+
The generated YAML file contains all parameters set to the pipeline default value along with their description in comments.
|
|
328
|
+
This template can then be used by uncommenting and modifying the value of parameters you want to pass to a pipline run.
|
|
329
|
+
|
|
330
|
+
Hidden options are not included by default, but can be included using the `-x`/`--show-hidden` flag.
|
|
331
|
+
|
|
314
332
|
## Downloading pipelines for offline use
|
|
315
333
|
|
|
316
334
|
Sometimes you may need to run an nf-core pipeline on a server or HPC system that has no internet connection.
|
|
@@ -343,14 +361,16 @@ You can run the pipeline by simply providing the directory path for the `workflo
|
|
|
343
361
|
nextflow run /path/to/download/nf-core-rnaseq-dev/workflow/ --input mydata.csv --outdir results # usual parameters here
|
|
344
362
|
```
|
|
345
363
|
|
|
346
|
-
>
|
|
364
|
+
> [!NOTE]
|
|
365
|
+
> If you downloaded Singularity container images, you will need to use `-profile singularity` or have it enabled in your config file.
|
|
347
366
|
|
|
348
367
|
### Downloaded nf-core configs
|
|
349
368
|
|
|
350
369
|
The pipeline files are automatically updated (`params.custom_config_base` is set to `../configs`), so that the local copy of institutional configs are available when running the pipeline.
|
|
351
370
|
So using `-profile <NAME>` should work if available within [nf-core/configs](https://github.com/nf-core/configs).
|
|
352
371
|
|
|
353
|
-
>
|
|
372
|
+
> [!WARNING]
|
|
373
|
+
> This option is not available when downloading a pipeline for use with [Nextflow Tower](#adapting-downloads-to-nextflow-tower) because the application manages all configurations separately.
|
|
354
374
|
|
|
355
375
|
### Downloading Apptainer containers
|
|
356
376
|
|
|
@@ -408,14 +428,16 @@ If the download speeds are much slower than your internet connection is capable
|
|
|
408
428
|
|
|
409
429
|
Subsequently, the `*.git` folder can be moved to it's final destination and linked with a pipeline in _Tower_ using the `file:/` prefix.
|
|
410
430
|
|
|
411
|
-
>
|
|
431
|
+
> [!TIP]
|
|
432
|
+
> Also without access to Tower, pipelines downloaded with the `--tower` flag can be run if the _absolute_ path is specified: `nextflow run -r 2.5 file:/path/to/pipelinedownload.git`. Downloads in this format allow you to include multiple revisions of a pipeline in a single file, but require that the revision (e.g. `-r 2.5`) is always explicitly specified.
|
|
412
433
|
|
|
413
434
|
## Pipeline software licences
|
|
414
435
|
|
|
415
436
|
Sometimes it's useful to see the software licences of the tools used in a pipeline.
|
|
416
437
|
You can use the `licences` subcommand to fetch and print the software licence from each conda / PyPI package used in an nf-core pipeline.
|
|
417
438
|
|
|
418
|
-
>
|
|
439
|
+
> [!WARNING]
|
|
440
|
+
> This command does not currently work for newer DSL2 pipelines. This will hopefully be addressed [soon](https://github.com/nf-core/tools/issues/1155).
|
|
419
441
|
|
|
420
442
|
<!-- RICH-CODEX
|
|
421
443
|
timeout: 10
|
|
@@ -443,6 +465,7 @@ You can then continue to edit, commit and push normally as you build your pipeli
|
|
|
443
465
|
|
|
444
466
|
Please see the [nf-core documentation](https://nf-co.re/developers/adding_pipelines) for a full walkthrough of how to create a new nf-core workflow.
|
|
445
467
|
|
|
468
|
+
> [!TIP]
|
|
446
469
|
> As the log output says, remember to come and discuss your idea for a pipeline as early as possible!
|
|
447
470
|
> See the [documentation](https://nf-co.re/developers/adding_pipelines#join-the-community) for instructions.
|
|
448
471
|
|
|
@@ -503,7 +526,7 @@ Each test result name on the left is a terminal hyperlink.
|
|
|
503
526
|
In most terminals you can <kbd>ctrl</kbd> + <kbd>click</kbd> ( <kbd>cmd</kbd> + <kbd>click</kbd>) these
|
|
504
527
|
links to open documentation specific to this test in your browser.
|
|
505
528
|
|
|
506
|
-
Alternatively visit <https://nf-co.re/tools
|
|
529
|
+
Alternatively visit <https://nf-co.re/tools/docs/latest/pipeline_lint_tests/index.html> and find your test to read more.
|
|
507
530
|
|
|
508
531
|
### Linting config
|
|
509
532
|
|
|
@@ -915,20 +938,6 @@ fake_command: nf-core modules create fastqc --author @nf-core-bot --label proce
|
|
|
915
938
|
|
|
916
939
|

|
|
917
940
|
|
|
918
|
-
### Create a module test config file
|
|
919
|
-
|
|
920
|
-
All modules on [nf-core/modules](https://github.com/nf-core/modules) have a strict requirement of being unit tested using minimal test data.
|
|
921
|
-
To help developers build new modules, the `nf-core modules create-test-yml` command automates the creation of the yaml file required to document the output file `md5sum` and other information generated by the testing.
|
|
922
|
-
After you have written a minimal Nextflow script to test your module `tests/modules/<tool>/<subtool>/main.nf`, this command will run the tests for you and create the `tests/modules/<tool>/<subtool>/test.yml` file.
|
|
923
|
-
|
|
924
|
-
<!-- RICH-CODEX
|
|
925
|
-
working_dir: tmp/modules
|
|
926
|
-
extra_env:
|
|
927
|
-
PROFILE: 'conda'
|
|
928
|
-
-->
|
|
929
|
-
|
|
930
|
-

|
|
931
|
-
|
|
932
941
|
### Check a module against nf-core guidelines
|
|
933
942
|
|
|
934
943
|
Run the `nf-core modules lint` command to check modules in the current working directory (pipeline or nf-core/modules clone) against nf-core guidelines.
|
|
@@ -942,13 +951,12 @@ before_command: sed 's/1.13a/1.10/g' modules/multiqc/main.nf > modules/multiqc/m
|
|
|
942
951
|
|
|
943
952
|

|
|
944
953
|
|
|
945
|
-
###
|
|
954
|
+
### Create a test for a module
|
|
946
955
|
|
|
947
|
-
|
|
956
|
+
All modules on [nf-core/modules](https://github.com/nf-core/modules) have a strict requirement of being unit tested using minimal test data. We use [nf-test](https://code.askimed.com/nf-test/) as our testing framework.
|
|
957
|
+
Each module comes already with a template for the test file in `test/main.nf.test`. Replace the placeholder code in that file with your specific input, output and proces. In order to generate the corresponding snapshot after writing your test, you can use the `nf-core modules test` command. This command will run `nf-test test` twice, to also check for snapshot stability, i.e. that the same snapshot is generated on multiple runs.
|
|
948
958
|
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
You can specify the module name in the form TOOL/SUBTOOL in command line or provide it later by prompts.
|
|
959
|
+
You can specify the module name in the form TOOL/SUBTOOL in the command or provide it later through interactive prompts.
|
|
952
960
|
|
|
953
961
|
<!-- RICH-CODEX
|
|
954
962
|
working_dir: tmp/modules
|
|
@@ -957,7 +965,15 @@ extra_env:
|
|
|
957
965
|
PROFILE: 'conda'
|
|
958
966
|
-->
|
|
959
967
|
|
|
960
|
-

|
|
969
|
+
|
|
970
|
+
In case you changed something in the test and want to update the snapshot, run
|
|
971
|
+
|
|
972
|
+
```bash
|
|
973
|
+
nf-core modules test --update
|
|
974
|
+
```
|
|
975
|
+
|
|
976
|
+
If you want to run the test only once without checking for snapshot stability, you can use the `--once` flag.
|
|
961
977
|
|
|
962
978
|
### Bump bioconda and container versions of modules in
|
|
963
979
|
|
|
@@ -1187,36 +1203,43 @@ fake_command: nf-core subworkflows create bam_stats_samtools --author @nf-core-b
|
|
|
1187
1203
|
|
|
1188
1204
|

|
|
1189
1205
|
|
|
1190
|
-
### Create a
|
|
1206
|
+
### Create a test for a subworkflow
|
|
1191
1207
|
|
|
1192
|
-
All subworkflows on [nf-core/modules](https://github.com/nf-core/modules) have a strict requirement of being unit tested using minimal test data.
|
|
1193
|
-
|
|
1194
|
-
|
|
1208
|
+
All subworkflows on [nf-core/modules](https://github.com/nf-core/modules) have a strict requirement of being unit tested using minimal test data. We use [nf-test](https://code.askimed.com/nf-test/) as our testing framework.
|
|
1209
|
+
Each subworkflow comes already with a template for the test file in `test/main.nf.test`. Replace the placeholder code in that file with your specific input, output and proces. In order to generate the corresponding snapshot after writing your test, you can use the `nf-core subworkflows test` command. This command will run `nf-test test` twice, to also check for snapshot stability, i.e. that the same snapshot is generated on multiple runs.
|
|
1210
|
+
|
|
1211
|
+
You can specify the subworkflow name in the command or provide it later through interactive prompts.
|
|
1195
1212
|
|
|
1196
1213
|
<!-- RICH-CODEX
|
|
1197
1214
|
working_dir: tmp/modules
|
|
1215
|
+
timeout: 30
|
|
1198
1216
|
extra_env:
|
|
1199
1217
|
PROFILE: 'conda'
|
|
1200
1218
|
-->
|
|
1201
1219
|
|
|
1202
|
-

|
|
1221
|
+
|
|
1222
|
+
In case you changed something in the test and want to update the snapshot, run
|
|
1203
1223
|
|
|
1204
|
-
|
|
1224
|
+
```bash
|
|
1225
|
+
nf-core subworkflows test --update
|
|
1226
|
+
```
|
|
1205
1227
|
|
|
1206
|
-
|
|
1228
|
+
If you want to run the test only once without checking for snapshot stability, you can use the `--once` flag.
|
|
1207
1229
|
|
|
1208
|
-
|
|
1230
|
+
### Check a subworkflow against nf-core guidelines
|
|
1209
1231
|
|
|
1210
|
-
|
|
1232
|
+
Run the `nf-core subworkflows lint` command to check subworkflows in the current working directory (a pipeline or a clone of nf-core/modules) against nf-core guidelines.
|
|
1233
|
+
|
|
1234
|
+
Use the `--all` flag to run linting on all subworkflows found. Use `--dir <pipeline_dir>` to specify a different directory than the current working directory.
|
|
1211
1235
|
|
|
1212
1236
|
<!-- RICH-CODEX
|
|
1213
1237
|
working_dir: tmp/modules
|
|
1214
|
-
timeout: 30
|
|
1215
1238
|
extra_env:
|
|
1216
1239
|
PROFILE: 'conda'
|
|
1217
1240
|
-->
|
|
1218
1241
|
|
|
1219
|
-

|
|
1220
1243
|
|
|
1221
1244
|
## Citation
|
|
1222
1245
|
|