From 46d380f08754483d8d39cda8a5516a4d6053bdc2 Mon Sep 17 00:00:00 2001 From: nf-core-bot Date: Wed, 23 Mar 2022 13:54:07 +0000 Subject: [PATCH 1/8] Template update for nf-core/tools version 2.3.1 --- .editorconfig | 5 +- .github/CONTRIBUTING.md | 15 +- .github/ISSUE_TEMPLATE/bug_report.yml | 1 - .github/PULL_REQUEST_TEMPLATE.md | 6 +- .github/workflows/awsfulltest.yml | 1 - .github/workflows/awstest.yml | 2 +- .github/workflows/branch.yml | 5 +- .github/workflows/ci.yml | 12 +- .github/workflows/linting.yml | 85 ++--------- .github/workflows/linting_comment.yml | 3 +- .gitpod.yml | 16 +- .markdownlint.yml | 14 -- .prettierrc.yml | 1 + .yamllint.yml | 6 - CHANGELOG.md | 2 + CITATIONS.md | 27 ++-- README.md | 31 ++-- assets/email_template.html | 142 ++++++++++++------ assets/multiqc_config.yaml | 11 -- assets/multiqc_config.yml | 11 ++ assets/schema_input.json | 5 +- docs/README.md | 8 +- docs/output.md | 28 ++-- docs/usage.md | 109 +++++++------- modules.json | 8 +- .../custom/dumpsoftwareversions/main.nf | 3 + .../custom/dumpsoftwareversions/meta.yml | 2 +- modules/nf-core/modules/fastqc/main.nf | 3 + modules/nf-core/modules/fastqc/meta.yml | 90 +++++------ modules/nf-core/modules/multiqc/main.nf | 9 +- modules/nf-core/modules/multiqc/meta.yml | 66 ++++---- nextflow_schema.json | 14 +- workflows/sarek.nf | 2 +- 33 files changed, 361 insertions(+), 382 deletions(-) delete mode 100644 .markdownlint.yml create mode 100644 .prettierrc.yml delete mode 100644 .yamllint.yml delete mode 100644 assets/multiqc_config.yaml create mode 100644 assets/multiqc_config.yml diff --git a/.editorconfig b/.editorconfig index 95549501a2..b6b3190776 100644 --- a/.editorconfig +++ b/.editorconfig @@ -8,12 +8,9 @@ trim_trailing_whitespace = true indent_size = 4 indent_style = space -[*.{yml,yaml}] +[*.{md,yml,yaml,html,css,scss,js}] indent_size = 2 -[*.json] -insert_final_newline = unset - # These files are edited and tested upstream in nf-core/modules [/modules/nf-core/**] charset = unset diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index f7c3699d43..ebcbe446c2 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -15,8 +15,7 @@ Contributions to the code are even more welcome ;) If you'd like to write some code for nf-core/sarek, the standard workflow is as follows: -1. Check that there isn't already an issue about your idea in the [nf-core/sarek issues](https://github.com/nf-core/sarek/issues) to avoid duplicating work - * If there isn't one already, please create one so that others know you're working on this +1. Check that there isn't already an issue about your idea in the [nf-core/sarek issues](https://github.com/nf-core/sarek/issues) to avoid duplicating work. If there isn't one already, please create one so that others know you're working on this 2. [Fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) the [nf-core/sarek repository](https://github.com/nf-core/sarek) to your GitHub account 3. Make the necessary changes / additions within your forked repository following [Pipeline conventions](#pipeline-contribution-conventions) 4. Use `nf-core schema build` and add any new parameters to the pipeline JSON schema (requires [nf-core tools](https://github.com/nf-core/tools) >= 1.10). @@ -49,9 +48,9 @@ These tests are run both with the latest available version of `Nextflow` and als :warning: Only in the unlikely and regretful event of a release happening with a bug. -* On your own fork, make a new branch `patch` based on `upstream/master`. -* Fix the bug, and bump version (X.Y.Z+1). -* A PR should be made on `master` from patch to directly this particular bug. +- On your own fork, make a new branch `patch` based on `upstream/master`. +- Fix the bug, and bump version (X.Y.Z+1). +- A PR should be made on `master` from patch to directly this particular bug. ## Getting help @@ -73,7 +72,7 @@ If you wish to contribute a new step, please use the following coding standards: 6. Add sanity checks and validation for all relevant parameters. 7. Perform local tests to validate that the new code works as expected. 8. If applicable, add a new test command in `.github/workflow/ci.yml`. -9. Update MultiQC config `assets/multiqc_config.yaml` so relevant suffixes, file name clean up and module plots are in the appropriate order. If applicable, add a [MultiQC](https://https://multiqc.info/) module. +9. Update MultiQC config `assets/multiqc_config.yml` so relevant suffixes, file name clean up and module plots are in the appropriate order. If applicable, add a [MultiQC](https://https://multiqc.info/) module. 10. Add a description of the output files and if relevant any appropriate images from the MultiQC report to `docs/output.md`. ### Default values @@ -92,8 +91,8 @@ The process resources can be passed on to the tool dynamically within the proces Please use the following naming schemes, to make it easy to understand what is going where. -* initial process channel: `ch_output_from_` -* intermediate and terminal channels: `ch__for_` +- initial process channel: `ch_output_from_` +- intermediate and terminal channels: `ch__for_` ### Nextflow version bumping diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 5a3eda8264..a8133cb69c 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -2,7 +2,6 @@ name: Bug report description: Report something that is broken or incorrect labels: bug body: - - type: markdown attributes: value: | diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 4e858c1496..cddc0f1a03 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -16,10 +16,10 @@ Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-core/sare - [ ] This comment contains a description of changes (with reason). - [ ] If you've fixed a bug or added code that should be tested, add tests! - - [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/sarek/tree/master/.github/CONTRIBUTING.md) - - [ ] If necessary, also make a PR on the nf-core/sarek _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository. + - [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/sarek/tree/master/.github/CONTRIBUTING.md) + - [ ] If necessary, also make a PR on the nf-core/sarek _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository. - [ ] Make sure your code lints (`nf-core lint`). -- [ ] Ensure the test suite passes (`nextflow run . -profile test,docker` --outdir `). +- [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir `). - [ ] Usage Documentation in `docs/usage.md` is updated. - [ ] Output Documentation in `docs/output.md` is updated. - [ ] `CHANGELOG.md` is updated. diff --git a/.github/workflows/awsfulltest.yml b/.github/workflows/awsfulltest.yml index 3175bbd594..719c5b9573 100644 --- a/.github/workflows/awsfulltest.yml +++ b/.github/workflows/awsfulltest.yml @@ -18,7 +18,6 @@ jobs: # TODO nf-core: You can customise AWS full pipeline tests as required # Add full size test data (but still relatively small datasets for few samples) # on the `test_full.config` test runs with only one set of parameters - with: workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }} access_token: ${{ secrets.TOWER_ACCESS_TOKEN }} diff --git a/.github/workflows/awstest.yml b/.github/workflows/awstest.yml index 144748d2da..feec29484c 100644 --- a/.github/workflows/awstest.yml +++ b/.github/workflows/awstest.yml @@ -10,9 +10,9 @@ jobs: if: github.repository == 'nf-core/sarek' runs-on: ubuntu-latest steps: + # Launch workflow using Tower CLI tool action - name: Launch workflow via tower uses: nf-core/tower-action@v3 - with: workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }} access_token: ${{ secrets.TOWER_ACCESS_TOKEN }} diff --git a/.github/workflows/branch.yml b/.github/workflows/branch.yml index d1d6ea382e..1cf39a881e 100644 --- a/.github/workflows/branch.yml +++ b/.github/workflows/branch.yml @@ -13,8 +13,7 @@ jobs: - name: Check PRs if: github.repository == 'nf-core/sarek' run: | - { [[ ${{github.event.pull_request.head.repo.full_name }} == nf-core/sarek ]] && [[ $GITHUB_HEAD_REF = "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]] - + "{ [[ ${{github.event.pull_request.head.repo.full_name }} == nf-core/sarek ]] && [[ $GITHUB_HEAD_REF = "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]]" # If the above check failed, post a comment on the PR explaining the failure # NOTE - this doesn't currently work if the PR is coming from a fork, due to limitations in GitHub actions secrets @@ -43,4 +42,4 @@ jobs: Thanks again for your contribution! repo-token: ${{ secrets.GITHUB_TOKEN }} allow-repeats: false - +# diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5828655109..ff60401866 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,18 +16,18 @@ jobs: test: name: Run pipeline with test data # Only run on push if this is the nf-core dev branch (merged PRs) - if: ${{ github.event_name != 'push' || (github.event_name == 'push' && github.repository == 'nf-core/sarek') }} + if: "${{ github.event_name != 'push' || (github.event_name == 'push' && github.repository == 'nf-core/sarek') }}" runs-on: ubuntu-latest strategy: matrix: # Nextflow versions include: # Test pipeline minimum Nextflow version - - NXF_VER: '21.10.3' - NXF_EDGE: '' + - NXF_VER: "21.10.3" + NXF_EDGE: "" # Test latest edge release of Nextflow - - NXF_VER: '' - NXF_EDGE: '1' + - NXF_VER: "" + NXF_EDGE: "1" steps: - name: Check out pipeline code uses: actions/checkout@v2 @@ -48,3 +48,5 @@ jobs: # Remember that you can parallelise this by using strategy.matrix run: | nextflow run ${GITHUB_WORKSPACE} -profile test,docker --outdir ./results + +# diff --git a/.github/workflows/linting.yml b/.github/workflows/linting.yml index fda934c03b..e9cf5de3ac 100644 --- a/.github/workflows/linting.yml +++ b/.github/workflows/linting.yml @@ -1,6 +1,7 @@ name: nf-core linting # This workflow is triggered on pushes and PRs to the repository. -# It runs the `nf-core lint` and markdown lint tests to ensure that the code meets the nf-core guidelines +# It runs the `nf-core lint` and markdown lint tests to ensure +# that the code meets the nf-core guidelines. on: push: pull_request: @@ -8,42 +9,6 @@ on: types: [published] jobs: - Markdown: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v2 - - name: Install markdownlint - run: npm install -g markdownlint-cli - - name: Run Markdownlint - run: markdownlint . - - # If the above check failed, post a comment on the PR explaining the failure - - name: Post PR comment - if: failure() - uses: mshick/add-pr-comment@v1 - with: - message: | - ## Markdown linting is failing - - To keep the code consistent with lots of contributors, we run automated code consistency checks. - To fix this CI test, please run: - - * Install `markdownlint-cli` - * On Mac: `brew install markdownlint-cli` - * Everything else: [Install `npm`](https://www.npmjs.com/get-npm) then [install `markdownlint-cli`](https://www.npmjs.com/package/markdownlint-cli) (`npm install -g markdownlint-cli`) - * Fix the markdown errors - * Automatically: `markdownlint . --fix` - * Manually resolve anything left from `markdownlint .` - - Once you push these changes the test should pass, and you can hide this comment :+1: - - We highly recommend setting up markdownlint in your code editor so that this formatting is done automatically on save. Ask about it on Slack for help! - - Thanks again for your contribution! - repo-token: ${{ secrets.GITHUB_TOKEN }} - allow-repeats: false - EditorConfig: runs-on: ubuntu-latest steps: @@ -55,49 +20,24 @@ jobs: run: npm install -g editorconfig-checker - name: Run ECLint check - run: editorconfig-checker -exclude README.md $(git ls-files | grep -v test) + run: editorconfig-checker -exclude README.md $(find .* -type f | grep -v '.git\|.py\|.md\|json\|yml\|yaml\|html\|css\|work\|.nextflow\|build\|nf_core.egg-info\|log.txt\|Makefile') - YAML: + Prettier: runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@master - - name: 'Yamllint' - uses: karancode/yamllint-github-action@master - with: - yamllint_file_or_dir: '.' - yamllint_config_filepath: '.yamllint.yml' - - # If the above check failed, post a comment on the PR explaining the failure - - name: Post PR comment - if: failure() - uses: mshick/add-pr-comment@v1 - with: - message: | - ## YAML linting is failing - - To keep the code consistent with lots of contributors, we run automated code consistency checks. - To fix this CI test, please run: - - * Install `yamllint` - * Install `yamllint` following [this](https://yamllint.readthedocs.io/en/stable/quickstart.html#installing-yamllint) - instructions or alternative install it in your [conda environment](https://anaconda.org/conda-forge/yamllint) - * Fix the markdown errors - * Run the test locally: `yamllint $(find . -type f -name "*.yml" -o -name "*.yaml") -c ./.yamllint.yml` - * Fix any reported errors in your YAML files + - uses: actions/checkout@v2 - Once you push these changes the test should pass, and you can hide this comment :+1: + - uses: actions/setup-node@v2 - We highly recommend setting up yaml-lint in your code editor so that this formatting is done automatically on save. Ask about it on Slack for help! + - name: Install Prettier + run: npm install -g prettier - Thanks again for your contribution! - repo-token: ${{ secrets.GITHUB_TOKEN }} - allow-repeats: false + - name: Run Prettier --check + run: prettier --check ${GITHUB_WORKSPACE} nf-core: runs-on: ubuntu-latest steps: - - name: Check out pipeline code uses: actions/checkout@v2 @@ -110,8 +50,8 @@ jobs: - uses: actions/setup-python@v1 with: - python-version: '3.6' - architecture: 'x64' + python-version: "3.6" + architecture: "x64" - name: Install dependencies run: | @@ -139,3 +79,4 @@ jobs: lint_results.md PR_number.txt +# diff --git a/.github/workflows/linting_comment.yml b/.github/workflows/linting_comment.yml index 44d72994b0..91c487a1a5 100644 --- a/.github/workflows/linting_comment.yml +++ b/.github/workflows/linting_comment.yml @@ -1,4 +1,3 @@ - name: nf-core linting comment # This workflow is triggered after the linting action is complete # It posts an automated comment to the PR, even if the PR is coming from a fork @@ -27,4 +26,4 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} number: ${{ steps.pr_number.outputs.pr_number }} path: linting-logs/lint_results.md - +# diff --git a/.gitpod.yml b/.gitpod.yml index b7d4cee18b..c452ee93e5 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -2,13 +2,13 @@ image: nfcore/gitpod:latest vscode: extensions: # based on nf-core.nf-core-extensionpack - - codezombiech.gitignore # Language support for .gitignore files + - codezombiech.gitignore # Language support for .gitignore files # - cssho.vscode-svgviewer # SVG viewer - - davidanson.vscode-markdownlint # Markdown/CommonMark linting and style checking for Visual Studio Code - - eamodio.gitlens # Quickly glimpse into whom, why, and when a line or code block was changed - - EditorConfig.EditorConfig # override user/workspace settings with settings found in .editorconfig files - - Gruntfuggly.todo-tree # Display TODO and FIXME in a tree view in the activity bar - - mechatroner.rainbow-csv # Highlight columns in csv files in different colors + - davidanson.vscode-markdownlint # Markdown/CommonMark linting and style checking for Visual Studio Code + - eamodio.gitlens # Quickly glimpse into whom, why, and when a line or code block was changed + - EditorConfig.EditorConfig # override user/workspace settings with settings found in .editorconfig files + - Gruntfuggly.todo-tree # Display TODO and FIXME in a tree view in the activity bar + - mechatroner.rainbow-csv # Highlight columns in csv files in different colors # - nextflow.nextflow # Nextflow syntax highlighting - - oderwat.indent-rainbow # Highlight indentation level - - streetsidesoftware.code-spell-checker # Spelling checker for source code + - oderwat.indent-rainbow # Highlight indentation level + - streetsidesoftware.code-spell-checker # Spelling checker for source code diff --git a/.markdownlint.yml b/.markdownlint.yml deleted file mode 100644 index 9e605fcfab..0000000000 --- a/.markdownlint.yml +++ /dev/null @@ -1,14 +0,0 @@ -# Markdownlint configuration file -default: true -line-length: false -ul-indent: - indent: 4 -no-duplicate-header: - siblings_only: true -no-inline-html: - allowed_elements: - - img - - p - - kbd - - details - - summary diff --git a/.prettierrc.yml b/.prettierrc.yml new file mode 100644 index 0000000000..c81f9a7660 --- /dev/null +++ b/.prettierrc.yml @@ -0,0 +1 @@ +printWidth: 120 diff --git a/.yamllint.yml b/.yamllint.yml deleted file mode 100644 index d466deec92..0000000000 --- a/.yamllint.yml +++ /dev/null @@ -1,6 +0,0 @@ -extends: default - -rules: - document-start: disable - line-length: disable - truthy: disable diff --git a/CHANGELOG.md b/CHANGELOG.md index 082ded50e1..5228c3683f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ Initial release of nf-core/sarek, created with the [nf-core](https://nf-co.re/) ### `Fixed` +- Clarified conda usage and added an installation tutorial for Singularity since the one on Syllabs' website uses an outdate version of GO Compiler + ### `Dependencies` ### `Deprecated` diff --git a/CITATIONS.md b/CITATIONS.md index ae6d696a73..56c27ae27b 100644 --- a/CITATIONS.md +++ b/CITATIONS.md @@ -10,23 +10,26 @@ ## Pipeline tools -* [FastQC](https://www.bioinformatics.babraham.ac.uk/projects/fastqc/) +- [FastQC](https://www.bioinformatics.babraham.ac.uk/projects/fastqc/) -* [MultiQC](https://pubmed.ncbi.nlm.nih.gov/27312411/) - > Ewels P, Magnusson M, Lundin S, Käller M. MultiQC: summarize analysis results for multiple tools and samples in a single report. Bioinformatics. 2016 Oct 1;32(19):3047-8. doi: 10.1093/bioinformatics/btw354. Epub 2016 Jun 16. PubMed PMID: 27312411; PubMed Central PMCID: PMC5039924. +- [MultiQC](https://pubmed.ncbi.nlm.nih.gov/27312411/) + > Ewels P, Magnusson M, Lundin S, Käller M. MultiQC: summarize analysis results for multiple tools and samples in a single report. Bioinformatics. 2016 Oct 1;32(19):3047-8. doi: 10.1093/bioinformatics/btw354. Epub 2016 Jun 16. PubMed PMID: 27312411; PubMed Central PMCID: PMC5039924. ## Software packaging/containerisation tools -* [Anaconda](https://anaconda.com) - > Anaconda Software Distribution. Computer software. Vers. 2-2.4.0. Anaconda, Nov. 2016. Web. +- [Anaconda](https://anaconda.com) -* [Bioconda](https://pubmed.ncbi.nlm.nih.gov/29967506/) - > Grüning B, Dale R, Sjödin A, Chapman BA, Rowe J, Tomkins-Tinch CH, Valieris R, Köster J; Bioconda Team. Bioconda: sustainable and comprehensive software distribution for the life sciences. Nat Methods. 2018 Jul;15(7):475-476. doi: 10.1038/s41592-018-0046-7. PubMed PMID: 29967506. + > Anaconda Software Distribution. Computer software. Vers. 2-2.4.0. Anaconda, Nov. 2016. Web. -* [BioContainers](https://pubmed.ncbi.nlm.nih.gov/28379341/) - > da Veiga Leprevost F, Grüning B, Aflitos SA, Röst HL, Uszkoreit J, Barsnes H, Vaudel M, Moreno P, Gatto L, Weber J, Bai M, Jimenez RC, Sachsenberg T, Pfeuffer J, Alvarez RV, Griss J, Nesvizhskii AI, Perez-Riverol Y. BioContainers: an open-source and community-driven framework for software standardization. Bioinformatics. 2017 Aug 15;33(16):2580-2582. doi: 10.1093/bioinformatics/btx192. PubMed PMID: 28379341; PubMed Central PMCID: PMC5870671. +- [Bioconda](https://pubmed.ncbi.nlm.nih.gov/29967506/) -* [Docker](https://dl.acm.org/doi/10.5555/2600239.2600241) + > Grüning B, Dale R, Sjödin A, Chapman BA, Rowe J, Tomkins-Tinch CH, Valieris R, Köster J; Bioconda Team. Bioconda: sustainable and comprehensive software distribution for the life sciences. Nat Methods. 2018 Jul;15(7):475-476. doi: 10.1038/s41592-018-0046-7. PubMed PMID: 29967506. -* [Singularity](https://pubmed.ncbi.nlm.nih.gov/28494014/) - > Kurtzer GM, Sochat V, Bauer MW. Singularity: Scientific containers for mobility of compute. PLoS One. 2017 May 11;12(5):e0177459. doi: 10.1371/journal.pone.0177459. eCollection 2017. PubMed PMID: 28494014; PubMed Central PMCID: PMC5426675. +- [BioContainers](https://pubmed.ncbi.nlm.nih.gov/28379341/) + + > da Veiga Leprevost F, Grüning B, Aflitos SA, Röst HL, Uszkoreit J, Barsnes H, Vaudel M, Moreno P, Gatto L, Weber J, Bai M, Jimenez RC, Sachsenberg T, Pfeuffer J, Alvarez RV, Griss J, Nesvizhskii AI, Perez-Riverol Y. BioContainers: an open-source and community-driven framework for software standardization. Bioinformatics. 2017 Aug 15;33(16):2580-2582. doi: 10.1093/bioinformatics/btx192. PubMed PMID: 28379341; PubMed Central PMCID: PMC5870671. + +- [Docker](https://dl.acm.org/doi/10.5555/2600239.2600241) + +- [Singularity](https://pubmed.ncbi.nlm.nih.gov/28494014/) + > Kurtzer GM, Sochat V, Bauer MW. Singularity: Scientific containers for mobility of compute. PLoS One. 2017 May 11;12(5):e0177459. doi: 10.1371/journal.pone.0177459. eCollection 2017. PubMed PMID: 28494014; PubMed Central PMCID: PMC5426675. diff --git a/README.md b/README.md index b5b3558a48..99fda0b80d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ![nf-core/sarek](docs/images/nf-core-sarek_logo_light.png#gh-light-mode-only) ![nf-core/sarek](docs/images/nf-core-sarek_logo_dark.png#gh-dark-mode-only) +# ![nf-core/sarek](docs/images/nf-core/sarek_logo_light.png#gh-light-mode-only) ![nf-core/sarek](docs/images/nf-core/sarek_logo_dark.png#gh-dark-mode-only) [![GitHub Actions CI Status](https://github.com/nf-core/sarek/workflows/nf-core%20CI/badge.svg)](https://github.com/nf-core/sarek/actions?query=workflow%3A%22nf-core+CI%22) [![GitHub Actions Linting Status](https://github.com/nf-core/sarek/workflows/nf-core%20linting/badge.svg)](https://github.com/nf-core/sarek/actions?query=workflow%3A%22nf-core+linting%22) @@ -17,11 +17,13 @@ ## Introduction + **nf-core/sarek** is a bioinformatics best-practice analysis pipeline for An open-source analysis pipeline to detect germline or somatic variants from whole genome or targeted sequencing. The pipeline is built using [Nextflow](https://www.nextflow.io), a workflow tool to run tasks across multiple compute infrastructures in a very portable manner. It uses Docker/Singularity containers making installation trivial and results highly reproducible. The [Nextflow DSL2](https://www.nextflow.io/docs/latest/dsl2.html) implementation of this pipeline uses one container per process which makes it much easier to maintain and update software dependencies. Where possible, these processes have been submitted to and installed from [nf-core/modules](https://github.com/nf-core/modules) in order to make them available to all nf-core pipelines, and to everyone within the Nextflow community! + On release, automated continuous integration tests run the pipeline on a full-sized dataset on the AWS cloud infrastructure. This ensures that the pipeline runs on AWS, has sensible resource allocation defaults set to run on real-world datasets, and permits the persistent storage of results to benchmark between pipeline releases and other analysis sources. The results obtained from the full-sized test can be viewed on the [nf-core website](https://nf-co.re/sarek/results). ## Pipeline summary @@ -35,28 +37,28 @@ On release, automated continuous integration tests run the pipeline on a full-si 1. Install [`Nextflow`](https://www.nextflow.io/docs/latest/getstarted.html#installation) (`>=21.10.3`) -2. Install any of [`Docker`](https://docs.docker.com/engine/installation/), [`Singularity`](https://www.sylabs.io/guides/3.0/user-guide/), [`Podman`](https://podman.io/), [`Shifter`](https://nersc.gitlab.io/development/shifter/how-to-use/) or [`Charliecloud`](https://hpc.github.io/charliecloud/) for full pipeline reproducibility _(please only use [`Conda`](https://conda.io/miniconda.html) as a last resort; see [docs](https://nf-co.re/usage/configuration#basic-configuration-profiles))_ +2. Install any of [`Docker`](https://docs.docker.com/engine/installation/), [`Singularity`](https://www.sylabs.io/guides/3.0/user-guide/) (you can follow [this tutorial](https://singularity-tutorial.github.io/01-installation/)), [`Podman`](https://podman.io/), [`Shifter`](https://nersc.gitlab.io/development/shifter/how-to-use/) or [`Charliecloud`](https://hpc.github.io/charliecloud/) for full pipeline reproducibility _(you can use [`Conda`](https://conda.io/miniconda.html) both to install Nextflow itself and also to manage software within pipelines. Please only use it within pipelines as a last resort; see [docs](https://nf-co.re/usage/configuration#basic-configuration-profiles))_. 3. Download the pipeline and test it on a minimal dataset with a single command: - ```console - nextflow run nf-core/sarek -profile test,YOURPROFILE --outdir - ``` + ```console + nextflow run nf-core/sarek -profile test,YOURPROFILE --outdir + ``` - Note that some form of configuration will be needed so that Nextflow knows how to fetch the required software. This is usually done in the form of a config profile (`YOURPROFILE` in the example command above). You can chain multiple config profiles in a comma-separated string. + Note that some form of configuration will be needed so that Nextflow knows how to fetch the required software. This is usually done in the form of a config profile (`YOURPROFILE` in the example command above). You can chain multiple config profiles in a comma-separated string. - > * The pipeline comes with config profiles called `docker`, `singularity`, `podman`, `shifter`, `charliecloud` and `conda` which instruct the pipeline to use the named tool for software management. For example, `-profile test,docker`. - > * Please check [nf-core/configs](https://github.com/nf-core/configs#documentation) to see if a custom config file to run nf-core pipelines already exists for your Institute. If so, you can simply use `-profile ` in your command. This will enable either `docker` or `singularity` and set the appropriate execution settings for your local compute environment. - > * If you are using `singularity`, please use the [`nf-core download`](https://nf-co.re/tools/#downloading-pipelines-for-offline-use) command to download images first, before running the pipeline. Setting the [`NXF_SINGULARITY_CACHEDIR` or `singularity.cacheDir`](https://www.nextflow.io/docs/latest/singularity.html?#singularity-docker-hub) Nextflow options enables you to store and re-use the images from a central location for future pipeline runs. - > * If you are using `conda`, it is highly recommended to use the [`NXF_CONDA_CACHEDIR` or `conda.cacheDir`](https://www.nextflow.io/docs/latest/conda.html) settings to store the environments in a central location for future pipeline runs. + > - The pipeline comes with config profiles called `docker`, `singularity`, `podman`, `shifter`, `charliecloud` and `conda` which instruct the pipeline to use the named tool for software management. For example, `-profile test,docker`. + > - Please check [nf-core/configs](https://github.com/nf-core/configs#documentation) to see if a custom config file to run nf-core pipelines already exists for your Institute. If so, you can simply use `-profile ` in your command. This will enable either `docker` or `singularity` and set the appropriate execution settings for your local compute environment. + > - If you are using `singularity`, please use the [`nf-core download`](https://nf-co.re/tools/#downloading-pipelines-for-offline-use) command to download images first, before running the pipeline. Setting the [`NXF_SINGULARITY_CACHEDIR` or `singularity.cacheDir`](https://www.nextflow.io/docs/latest/singularity.html?#singularity-docker-hub) Nextflow options enables you to store and re-use the images from a central location for future pipeline runs. + > - If you are using `conda`, it is highly recommended to use the [`NXF_CONDA_CACHEDIR` or `conda.cacheDir`](https://www.nextflow.io/docs/latest/conda.html) settings to store the environments in a central location for future pipeline runs. 4. Start running your own analysis! - + - ```console - nextflow run nf-core/sarek --input samplesheet.csv --outdir --genome GRCh37 -profile - ``` + ```console + nextflow run nf-core/sarek --input samplesheet.csv --outdir --genome GRCh37 -profile + ``` ## Documentation @@ -82,6 +84,7 @@ For further information or help, don't hesitate to get in touch on the [Slack `# + An extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file. You can cite the `nf-core` publication as follows: diff --git a/assets/email_template.html b/assets/email_template.html index 36a9983efd..5d4bf62f6e 100644 --- a/assets/email_template.html +++ b/assets/email_template.html @@ -1,53 +1,111 @@ - - - - + + + + - - nf-core/sarek Pipeline Report - - -
+ + + nf-core/sarek Pipeline Report + + +
+ - +

nf-core/sarek v${version}

+

Run Name: $runName

-

nf-core/sarek v${version}

-

Run Name: $runName

- -<% if (!success){ - out << """ -
-

nf-core/sarek execution completed unsuccessfully!

+ <% if (!success){ out << """ +
+

nf-core/sarek execution completed unsuccessfully!

The exit status of the task that caused the workflow execution to fail was: $exitStatus.

The full error message was:

-
${errorReport}
-
- """ -} else { - out << """ -
+
${errorReport}
+
+ """ } else { out << """ +
nf-core/sarek execution completed successfully! -
- """ -} -%> +
+ """ } %> -

The workflow was completed at $dateComplete (duration: $duration)

-

The command used to launch the workflow was as follows:

-
$commandLine
+

The workflow was completed at $dateComplete (duration: $duration)

+

The command used to launch the workflow was as follows:

+
+$commandLine
-

Pipeline Configuration:

- - - <% out << summary.collect{ k,v -> "" }.join("\n") %> - -
$k
$v
+

Pipeline Configuration:

+ + + <% out << summary.collect{ k,v -> " + + + + + " }.join("\n") %> + +
+ $k + +
$v
+
-

nf-core/sarek

-

https://github.com/nf-core/sarek

- -
- - +

nf-core/sarek

+

https://github.com/nf-core/sarek

+
+ diff --git a/assets/multiqc_config.yaml b/assets/multiqc_config.yaml deleted file mode 100644 index a1f4139f8d..0000000000 --- a/assets/multiqc_config.yaml +++ /dev/null @@ -1,11 +0,0 @@ -report_comment: > - This report has been generated by the nf-core/sarek - analysis pipeline. For information about how to interpret these results, please see the - documentation. -report_section_order: - software_versions: - order: -1000 - nf-core-sarek-summary: - order: -1001 - -export_plots: true diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml new file mode 100644 index 0000000000..33eb41b82a --- /dev/null +++ b/assets/multiqc_config.yml @@ -0,0 +1,11 @@ +report_comment: > + This report has been generated by the nf-core/sarek + analysis pipeline. For information about how to interpret these results, please see the + documentation. +report_section_order: + software_versions: + order: -1000 + "nf-core-sarek-summary": + order: -1001 + +export_plots: true diff --git a/assets/schema_input.json b/assets/schema_input.json index 7a41823168..9941cf8a5f 100644 --- a/assets/schema_input.json +++ b/assets/schema_input.json @@ -31,9 +31,6 @@ ] } }, - "required": [ - "sample", - "fastq_1" - ] + "required": ["sample", "fastq_1"] } } diff --git a/docs/README.md b/docs/README.md index 1c3bb24c22..9ae0a5eaf5 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2,9 +2,9 @@ The nf-core/sarek documentation is split into the following pages: -* [Usage](usage.md) - * An overview of how the pipeline works, how to run it and a description of all of the different command-line flags. -* [Output](output.md) - * An overview of the different results produced by the pipeline and how to interpret them. +- [Usage](usage.md) + - An overview of how the pipeline works, how to run it and a description of all of the different command-line flags. +- [Output](output.md) + - An overview of the different results produced by the pipeline and how to interpret them. You can find a lot more documentation about installing, configuring and running nf-core pipelines on the website: [https://nf-co.re](https://nf-co.re) diff --git a/docs/output.md b/docs/output.md index 37b78ce436..99b524a87a 100644 --- a/docs/output.md +++ b/docs/output.md @@ -12,18 +12,18 @@ The directories listed below will be created in the results directory after the The pipeline is built using [Nextflow](https://www.nextflow.io/) and processes data using the following steps: -* [FastQC](#fastqc) - Raw read QC -* [MultiQC](#multiqc) - Aggregate report describing results and QC from the whole pipeline -* [Pipeline information](#pipeline-information) - Report metrics generated during the workflow execution +- [FastQC](#fastqc) - Raw read QC +- [MultiQC](#multiqc) - Aggregate report describing results and QC from the whole pipeline +- [Pipeline information](#pipeline-information) - Report metrics generated during the workflow execution ### FastQC
Output files -* `fastqc/` - * `*_fastqc.html`: FastQC report containing quality metrics. - * `*_fastqc.zip`: Zip archive containing the FastQC report, tab-delimited data file and plot images. +- `fastqc/` + - `*_fastqc.html`: FastQC report containing quality metrics. + - `*_fastqc.zip`: Zip archive containing the FastQC report, tab-delimited data file and plot images.
@@ -42,10 +42,10 @@ The pipeline is built using [Nextflow](https://www.nextflow.io/) and processes d
Output files -* `multiqc/` - * `multiqc_report.html`: a standalone HTML file that can be viewed in your web browser. - * `multiqc_data/`: directory containing parsed statistics from the different tools used in the pipeline. - * `multiqc_plots/`: directory containing static images from the report in various formats. +- `multiqc/` + - `multiqc_report.html`: a standalone HTML file that can be viewed in your web browser. + - `multiqc_data/`: directory containing parsed statistics from the different tools used in the pipeline. + - `multiqc_plots/`: directory containing static images from the report in various formats.
@@ -58,10 +58,10 @@ Results generated by MultiQC collate pipeline QC from supported tools e.g. FastQ
Output files -* `pipeline_info/` - * Reports generated by Nextflow: `execution_report.html`, `execution_timeline.html`, `execution_trace.txt` and `pipeline_dag.dot`/`pipeline_dag.svg`. - * Reports generated by the pipeline: `pipeline_report.html`, `pipeline_report.txt` and `software_versions.yml`. The `pipeline_report*` files will only be present if the `--email` / `--email_on_fail` parameter's are used when running the pipeline. - * Reformatted samplesheet files used as input to the pipeline: `samplesheet.valid.csv`. +- `pipeline_info/` + - Reports generated by Nextflow: `execution_report.html`, `execution_timeline.html`, `execution_trace.txt` and `pipeline_dag.dot`/`pipeline_dag.svg`. + - Reports generated by the pipeline: `pipeline_report.html`, `pipeline_report.txt` and `software_versions.yml`. The `pipeline_report*` files will only be present if the `--email` / `--email_on_fail` parameter's are used when running the pipeline. + - Reformatted samplesheet files used as input to the pipeline: `samplesheet.valid.csv`.
diff --git a/docs/usage.md b/docs/usage.md index 434c1814c4..972eebcc0f 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -44,11 +44,11 @@ TREATMENT_REP3,AEG588A6_S6_L003_R1_001.fastq.gz, TREATMENT_REP3,AEG588A6_S6_L004_R1_001.fastq.gz, ``` -| Column | Description | -|----------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `sample` | Custom sample name. This entry will be identical for multiple sequencing libraries/runs from the same sample. Spaces in sample names are automatically converted to underscores (`_`). | -| `fastq_1` | Full path to FastQ file for Illumina short reads 1. File has to be gzipped and have the extension ".fastq.gz" or ".fq.gz". | -| `fastq_2` | Full path to FastQ file for Illumina short reads 2. File has to be gzipped and have the extension ".fastq.gz" or ".fq.gz". | +| Column | Description | +| --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `sample` | Custom sample name. This entry will be identical for multiple sequencing libraries/runs from the same sample. Spaces in sample names are automatically converted to underscores (`_`). | +| `fastq_1` | Full path to FastQ file for Illumina short reads 1. File has to be gzipped and have the extension ".fastq.gz" or ".fq.gz". | +| `fastq_2` | Full path to FastQ file for Illumina short reads 2. File has to be gzipped and have the extension ".fastq.gz" or ".fq.gz". | An [example samplesheet](../assets/samplesheet.csv) has been provided with the pipeline. @@ -57,7 +57,7 @@ An [example samplesheet](../assets/samplesheet.csv) has been provided with the p The typical command for running the pipeline is as follows: ```console -nextflow run nf-core/sarek --input samplesheet.csv --outdir --genome GRCh37 -profile docker +nextflow run nf-core/sarek --input samplesheet.csv --outdir --genome GRCh37 -profile docker ``` This will launch the pipeline with the `docker` configuration profile. See below for more information about profiles. @@ -65,9 +65,9 @@ This will launch the pipeline with the `docker` configuration profile. See below Note that the pipeline will create the following files in your working directory: ```console -work # Directory containing the nextflow working files -results # Finished results (configurable, see below) -.nextflow_log # Log file from Nextflow +work # Directory containing the nextflow working files + # Finished results in specified location (defined with --outdir) +.nextflow_log # Log file from Nextflow # Other nextflow hidden files, eg. history of pipeline runs and old logs. ``` @@ -106,25 +106,25 @@ They are loaded in sequence, so later profiles can overwrite earlier profiles. If `-profile` is not specified, the pipeline will run locally and expect all software to be installed and available on the `PATH`. This is _not_ recommended. -* `docker` - * A generic configuration profile to be used with [Docker](https://docker.com/) -* `singularity` - * A generic configuration profile to be used with [Singularity](https://sylabs.io/docs/) -* `podman` - * A generic configuration profile to be used with [Podman](https://podman.io/) -* `shifter` - * A generic configuration profile to be used with [Shifter](https://nersc.gitlab.io/development/shifter/how-to-use/) -* `charliecloud` - * A generic configuration profile to be used with [Charliecloud](https://hpc.github.io/charliecloud/) -* `conda` - * A generic configuration profile to be used with [Conda](https://conda.io/docs/). Please only use Conda as a last resort i.e. when it's not possible to run the pipeline with Docker, Singularity, Podman, Shifter or Charliecloud. -* `test` - * A profile with a complete configuration for automated testing - * Includes links to test data so needs no other parameters +- `docker` + - A generic configuration profile to be used with [Docker](https://docker.com/) +- `singularity` + - A generic configuration profile to be used with [Singularity](https://sylabs.io/docs/) +- `podman` + - A generic configuration profile to be used with [Podman](https://podman.io/) +- `shifter` + - A generic configuration profile to be used with [Shifter](https://nersc.gitlab.io/development/shifter/how-to-use/) +- `charliecloud` + - A generic configuration profile to be used with [Charliecloud](https://hpc.github.io/charliecloud/) +- `conda` + - A generic configuration profile to be used with [Conda](https://conda.io/docs/). Please only use Conda as a last resort i.e. when it's not possible to run the pipeline with Docker, Singularity, Podman, Shifter or Charliecloud. +- `test` + - A profile with a complete configuration for automated testing + - Includes links to test data so needs no other parameters ### `-resume` -Specify this when restarting a pipeline. Nextflow will used cached results from any pipeline steps where the inputs are the same, continuing from where it got to previously. +Specify this when restarting a pipeline. Nextflow will use cached results from any pipeline steps where the inputs are the same, continuing from where it got to previously. For input to be considered the same, not only the names must be identical but the files' contents as well. For more info about this parameter, see [this blog post](https://www.nextflow.io/blog/2019/demystifying-nextflow-resume.html). You can also supply a run name to resume a specific run: `-resume [run-name]`. Use the `nextflow log` command to show previous run names. @@ -186,6 +186,7 @@ process { ``` > **NB:** We specify the full process name i.e. `NFCORE_RNASEQ:RNASEQ:ALIGN_STAR:STAR_ALIGN` in the config file because this takes priority over the short name (`STAR_ALIGN`) and allows existing configuration using the full process name to be correctly overridden. +> > If you get a warning suggesting that the process selector isn't recognised check that the process name has been specified correctly. ### Updating containers @@ -196,35 +197,35 @@ The [Nextflow DSL2](https://www.nextflow.io/docs/latest/dsl2.html) implementatio 2. Find the latest version of the Biocontainer available on [Quay.io](https://quay.io/repository/biocontainers/pangolin?tag=latest&tab=tags) 3. Create the custom config accordingly: - * For Docker: - - ```nextflow - process { - withName: PANGOLIN { - container = 'quay.io/biocontainers/pangolin:3.0.5--pyhdfd78af_0' - } - } - ``` - - * For Singularity: - - ```nextflow - process { - withName: PANGOLIN { - container = 'https://depot.galaxyproject.org/singularity/pangolin:3.0.5--pyhdfd78af_0' - } - } - ``` - - * For Conda: - - ```nextflow - process { - withName: PANGOLIN { - conda = 'bioconda::pangolin=3.0.5' - } - } - ``` + - For Docker: + + ```nextflow + process { + withName: PANGOLIN { + container = 'quay.io/biocontainers/pangolin:3.0.5--pyhdfd78af_0' + } + } + ``` + + - For Singularity: + + ```nextflow + process { + withName: PANGOLIN { + container = 'https://depot.galaxyproject.org/singularity/pangolin:3.0.5--pyhdfd78af_0' + } + } + ``` + + - For Conda: + + ```nextflow + process { + withName: PANGOLIN { + conda = 'bioconda::pangolin=3.0.5' + } + } + ``` > **NB:** If you wish to periodically update individual tool-specific results (e.g. Pangolin) generated by the pipeline then you must ensure to keep the `work/` directory otherwise the `-resume` ability of the pipeline will be compromised and it will restart from scratch. diff --git a/modules.json b/modules.json index 8668384fa5..b6ce6adec3 100644 --- a/modules.json +++ b/modules.json @@ -4,14 +4,14 @@ "repos": { "nf-core/modules": { "custom/dumpsoftwareversions": { - "git_sha": "20d8250d9f39ddb05dfb437603aaf99b5c0b2b41" + "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" }, "fastqc": { - "git_sha": "9d0cad583b9a71a6509b754fdf589cbfbed08961" + "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" }, "multiqc": { - "git_sha": "20d8250d9f39ddb05dfb437603aaf99b5c0b2b41" + "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" } } } -} \ No newline at end of file +} diff --git a/modules/nf-core/modules/custom/dumpsoftwareversions/main.nf b/modules/nf-core/modules/custom/dumpsoftwareversions/main.nf index 934bb46723..327d510056 100644 --- a/modules/nf-core/modules/custom/dumpsoftwareversions/main.nf +++ b/modules/nf-core/modules/custom/dumpsoftwareversions/main.nf @@ -15,6 +15,9 @@ process CUSTOM_DUMPSOFTWAREVERSIONS { path "software_versions_mqc.yml", emit: mqc_yml path "versions.yml" , emit: versions + when: + task.ext.when == null || task.ext.when + script: def args = task.ext.args ?: '' template 'dumpsoftwareversions.py' diff --git a/modules/nf-core/modules/custom/dumpsoftwareversions/meta.yml b/modules/nf-core/modules/custom/dumpsoftwareversions/meta.yml index 5b5b8a6026..60b546a012 100644 --- a/modules/nf-core/modules/custom/dumpsoftwareversions/meta.yml +++ b/modules/nf-core/modules/custom/dumpsoftwareversions/meta.yml @@ -8,7 +8,7 @@ tools: description: Custom module used to dump software versions within the nf-core pipeline template homepage: https://github.com/nf-core/tools documentation: https://github.com/nf-core/tools - licence: ['MIT'] + licence: ["MIT"] input: - versions: type: file diff --git a/modules/nf-core/modules/fastqc/main.nf b/modules/nf-core/modules/fastqc/main.nf index d250eca075..ed6b8c50b1 100644 --- a/modules/nf-core/modules/fastqc/main.nf +++ b/modules/nf-core/modules/fastqc/main.nf @@ -15,6 +15,9 @@ process FASTQC { tuple val(meta), path("*.zip") , emit: zip path "versions.yml" , emit: versions + when: + task.ext.when == null || task.ext.when + script: def args = task.ext.args ?: '' // Add soft-links to original FastQs for consistent naming in pipeline diff --git a/modules/nf-core/modules/fastqc/meta.yml b/modules/nf-core/modules/fastqc/meta.yml index b09553a3c3..4da5bb5a06 100644 --- a/modules/nf-core/modules/fastqc/meta.yml +++ b/modules/nf-core/modules/fastqc/meta.yml @@ -1,52 +1,52 @@ name: fastqc description: Run FastQC on sequenced reads keywords: - - quality control - - qc - - adapters - - fastq + - quality control + - qc + - adapters + - fastq tools: - - fastqc: - description: | - FastQC gives general quality metrics about your reads. - It provides information about the quality score distribution - across your reads, the per base sequence content (%A/C/G/T). - You get information about adapter contamination and other - overrepresented sequences. - homepage: https://www.bioinformatics.babraham.ac.uk/projects/fastqc/ - documentation: https://www.bioinformatics.babraham.ac.uk/projects/fastqc/Help/ - licence: ['GPL-2.0-only'] + - fastqc: + description: | + FastQC gives general quality metrics about your reads. + It provides information about the quality score distribution + across your reads, the per base sequence content (%A/C/G/T). + You get information about adapter contamination and other + overrepresented sequences. + homepage: https://www.bioinformatics.babraham.ac.uk/projects/fastqc/ + documentation: https://www.bioinformatics.babraham.ac.uk/projects/fastqc/Help/ + licence: ["GPL-2.0-only"] input: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. [ id:'test', single_end:false ] - - reads: - type: file - description: | - List of input FastQ files of size 1 and 2 for single-end and paired-end data, - respectively. + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test', single_end:false ] + - reads: + type: file + description: | + List of input FastQ files of size 1 and 2 for single-end and paired-end data, + respectively. output: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. [ id:'test', single_end:false ] - - html: - type: file - description: FastQC report - pattern: "*_{fastqc.html}" - - zip: - type: file - description: FastQC report archive - pattern: "*_{fastqc.zip}" - - versions: - type: file - description: File containing software versions - pattern: "versions.yml" + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test', single_end:false ] + - html: + type: file + description: FastQC report + pattern: "*_{fastqc.html}" + - zip: + type: file + description: FastQC report archive + pattern: "*_{fastqc.zip}" + - versions: + type: file + description: File containing software versions + pattern: "versions.yml" authors: - - "@drpatelh" - - "@grst" - - "@ewels" - - "@FelixKrueger" + - "@drpatelh" + - "@grst" + - "@ewels" + - "@FelixKrueger" diff --git a/modules/nf-core/modules/multiqc/main.nf b/modules/nf-core/modules/multiqc/main.nf index 3dceb162a3..1264aac1eb 100644 --- a/modules/nf-core/modules/multiqc/main.nf +++ b/modules/nf-core/modules/multiqc/main.nf @@ -1,10 +1,10 @@ process MULTIQC { label 'process_medium' - conda (params.enable_conda ? 'bioconda::multiqc=1.11' : null) + conda (params.enable_conda ? 'bioconda::multiqc=1.12' : null) container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/multiqc:1.11--pyhdfd78af_0' : - 'quay.io/biocontainers/multiqc:1.11--pyhdfd78af_0' }" + 'https://depot.galaxyproject.org/singularity/multiqc:1.12--pyhdfd78af_0' : + 'quay.io/biocontainers/multiqc:1.12--pyhdfd78af_0' }" input: path multiqc_files @@ -15,6 +15,9 @@ process MULTIQC { path "*_plots" , optional:true, emit: plots path "versions.yml" , emit: versions + when: + task.ext.when == null || task.ext.when + script: def args = task.ext.args ?: '' """ diff --git a/modules/nf-core/modules/multiqc/meta.yml b/modules/nf-core/modules/multiqc/meta.yml index 63c75a450a..6fa891efc2 100644 --- a/modules/nf-core/modules/multiqc/meta.yml +++ b/modules/nf-core/modules/multiqc/meta.yml @@ -1,40 +1,40 @@ name: MultiQC description: Aggregate results from bioinformatics analyses across many samples into a single report keywords: - - QC - - bioinformatics tools - - Beautiful stand-alone HTML report + - QC + - bioinformatics tools + - Beautiful stand-alone HTML report tools: - - multiqc: - description: | - MultiQC searches a given directory for analysis logs and compiles a HTML report. - It's a general use tool, perfect for summarising the output from numerous bioinformatics tools. - homepage: https://multiqc.info/ - documentation: https://multiqc.info/docs/ - licence: ['GPL-3.0-or-later'] + - multiqc: + description: | + MultiQC searches a given directory for analysis logs and compiles a HTML report. + It's a general use tool, perfect for summarising the output from numerous bioinformatics tools. + homepage: https://multiqc.info/ + documentation: https://multiqc.info/docs/ + licence: ["GPL-3.0-or-later"] input: - - multiqc_files: - type: file - description: | - List of reports / files recognised by MultiQC, for example the html and zip output of FastQC + - multiqc_files: + type: file + description: | + List of reports / files recognised by MultiQC, for example the html and zip output of FastQC output: - - report: - type: file - description: MultiQC report file - pattern: "multiqc_report.html" - - data: - type: dir - description: MultiQC data dir - pattern: "multiqc_data" - - plots: - type: file - description: Plots created by MultiQC - pattern: "*_data" - - versions: - type: file - description: File containing software versions - pattern: "versions.yml" + - report: + type: file + description: MultiQC report file + pattern: "multiqc_report.html" + - data: + type: dir + description: MultiQC data dir + pattern: "multiqc_data" + - plots: + type: file + description: Plots created by MultiQC + pattern: "*_data" + - versions: + type: file + description: File containing software versions + pattern: "versions.yml" authors: - - "@abhi18av" - - "@bunop" - - "@drpatelh" + - "@abhi18av" + - "@bunop" + - "@drpatelh" diff --git a/nextflow_schema.json b/nextflow_schema.json index 2af2d6e726..02d11e5eb2 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -10,10 +10,7 @@ "type": "object", "fa_icon": "fas fa-terminal", "description": "Define where the pipeline should find input data and save output data.", - "required": [ - "input", - "outdir" - ], + "required": ["input", "outdir"], "properties": { "input": { "type": "string", @@ -185,14 +182,7 @@ "description": "Method used to save pipeline results to output directory.", "help_text": "The Nextflow `publishDir` option specifies which intermediate files should be saved to the output directory. This option tells the pipeline what method should be used to move these files. See [Nextflow docs](https://www.nextflow.io/docs/latest/process.html#publishdir) for details.", "fa_icon": "fas fa-copy", - "enum": [ - "symlink", - "rellink", - "link", - "copy", - "copyNoFollow", - "move" - ], + "enum": ["symlink", "rellink", "link", "copy", "copyNoFollow", "move"], "hidden": true }, "email_on_fail": { diff --git a/workflows/sarek.nf b/workflows/sarek.nf index 8d8dd8abcd..72ce1dc928 100644 --- a/workflows/sarek.nf +++ b/workflows/sarek.nf @@ -23,7 +23,7 @@ if (params.input) { ch_input = file(params.input) } else { exit 1, 'Input sample ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ -ch_multiqc_config = file("$projectDir/assets/multiqc_config.yaml", checkIfExists: true) +ch_multiqc_config = file("$projectDir/assets/multiqc_config.yml", checkIfExists: true) ch_multiqc_custom_config = params.multiqc_config ? Channel.fromPath(params.multiqc_config) : Channel.empty() /* From 72636cd22120ef2fadf4dcf2290ef649b137171c Mon Sep 17 00:00:00 2001 From: nf-core-bot Date: Thu, 24 Mar 2022 11:46:33 +0000 Subject: [PATCH 2/8] Template update for nf-core/tools version 2.3.2 --- .github/PULL_REQUEST_TEMPLATE.md | 1 - .github/workflows/awsfulltest.yml | 2 -- .github/workflows/awstest.yml | 2 -- .gitpod.yml | 2 +- CHANGELOG.md | 2 -- 5 files changed, 1 insertion(+), 8 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index cddc0f1a03..cc79873479 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -10,7 +10,6 @@ Remember that PRs should be made against the dev branch, unless you're preparing Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-core/sarek/tree/master/.github/CONTRIBUTING.md) --> - ## PR checklist diff --git a/.github/workflows/awsfulltest.yml b/.github/workflows/awsfulltest.yml index 719c5b9573..d2c643b695 100644 --- a/.github/workflows/awsfulltest.yml +++ b/.github/workflows/awsfulltest.yml @@ -22,8 +22,6 @@ jobs: workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }} access_token: ${{ secrets.TOWER_ACCESS_TOKEN }} compute_env: ${{ secrets.TOWER_COMPUTE_ENV }} - pipeline: ${{ github.repository }} - revision: ${{ github.sha }} workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/sarek/work-${{ github.sha }} parameters: | { diff --git a/.github/workflows/awstest.yml b/.github/workflows/awstest.yml index feec29484c..3a1501d466 100644 --- a/.github/workflows/awstest.yml +++ b/.github/workflows/awstest.yml @@ -17,8 +17,6 @@ jobs: workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }} access_token: ${{ secrets.TOWER_ACCESS_TOKEN }} compute_env: ${{ secrets.TOWER_COMPUTE_ENV }} - pipeline: ${{ github.repository }} - revision: ${{ github.sha }} workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/sarek/work-${{ github.sha }} parameters: | { diff --git a/.gitpod.yml b/.gitpod.yml index c452ee93e5..85d95ecc8e 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -4,7 +4,7 @@ vscode: extensions: # based on nf-core.nf-core-extensionpack - codezombiech.gitignore # Language support for .gitignore files # - cssho.vscode-svgviewer # SVG viewer - - davidanson.vscode-markdownlint # Markdown/CommonMark linting and style checking for Visual Studio Code + - esbenp.prettier-vscode # Markdown/CommonMark linting and style checking for Visual Studio Code - eamodio.gitlens # Quickly glimpse into whom, why, and when a line or code block was changed - EditorConfig.EditorConfig # override user/workspace settings with settings found in .editorconfig files - Gruntfuggly.todo-tree # Display TODO and FIXME in a tree view in the activity bar diff --git a/CHANGELOG.md b/CHANGELOG.md index 5228c3683f..082ded50e1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,8 +11,6 @@ Initial release of nf-core/sarek, created with the [nf-core](https://nf-co.re/) ### `Fixed` -- Clarified conda usage and added an installation tutorial for Singularity since the one on Syllabs' website uses an outdate version of GO Compiler - ### `Dependencies` ### `Deprecated` From dccc1a7a58642f07bd45792cd3d886edc49a4b9f Mon Sep 17 00:00:00 2001 From: Rike Date: Thu, 24 Mar 2022 13:53:22 +0100 Subject: [PATCH 3/8] Template update remove HEAD --- .github/workflows/branch.yml | 3 --- assets/schema_input.json | 10 +--------- 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/.github/workflows/branch.yml b/.github/workflows/branch.yml index 4def1328b5..1cf39a881e 100644 --- a/.github/workflows/branch.yml +++ b/.github/workflows/branch.yml @@ -42,7 +42,4 @@ jobs: Thanks again for your contribution! repo-token: ${{ secrets.GITHUB_TOKEN }} allow-repeats: false -<<<<<<< HEAD -======= # ->>>>>>> 72636cd22120ef2fadf4dcf2290ef649b137171c diff --git a/assets/schema_input.json b/assets/schema_input.json index a7133aea2b..a8e645b5a8 100644 --- a/assets/schema_input.json +++ b/assets/schema_input.json @@ -55,7 +55,6 @@ "maxLength": 0 } ] - }, "fastq_1": { "errorMessage": "FastQ file for reads 1 cannot contain spaces and must have extension '.fq.gz' or '.fastq.gz'", @@ -162,13 +161,6 @@ ] } }, -<<<<<<< HEAD - "required": [ - "patient", - "sample" - ] -======= - "required": ["sample", "fastq_1"] ->>>>>>> 72636cd22120ef2fadf4dcf2290ef649b137171c + "required": ["patient", "sample"] } } From 2279669ec23425eb8f5dff03f04f3ccafeffe1f6 Mon Sep 17 00:00:00 2001 From: Rike Date: Thu, 24 Mar 2022 13:57:57 +0100 Subject: [PATCH 4/8] Forgot to run Prettier --- .github/RELEASE_CHECKLIST.md | 32 ++++++------ .github/workflows/local_modules.yml | 12 ++--- CHANGELOG.md | 14 +++--- assets/multiqc_config.yaml | 50 +++++++++---------- docs/abstracts/2018-05-PMC.md | 8 +-- docs/abstracts/2018-06-EACR25.md | 4 +- docs/abstracts/2018-06-NPMI.md | 8 +-- docs/abstracts/2018-07-JOBIM.md | 8 +-- modules/local/gatk4/applybqsrspark/meta.yml | 6 +-- .../gatk4/baserecalibratorspark/meta.yml | 7 ++- .../local/gatk4/markduplicatesspark/meta.yml | 5 +- modules/local/samtools/fastq/meta.yml | 6 +-- modules/nf-core/modules/ascat/meta.yml | 2 +- modules/nf-core/modules/controlfreec/meta.yml | 3 +- .../modules/deeptools/bamcoverage/meta.yml | 2 +- .../gatk4/gatherpileupsummaries/meta.yml | 2 +- .../modules/gatk4/getpileupsummaries/meta.yml | 1 - .../gatk4/variantrecalibrator/meta.yml | 4 +- .../modules/msisensorpro/msi_somatic/meta.yml | 2 +- .../modules/msisensorpro/scan/meta.yml | 2 +- .../nf-core/annotation/ensemblvep/meta.yml | 4 +- .../nf-core/annotation/snpeff/meta.yml | 4 +- .../meta.yml | 4 +- .../meta.yml | 4 +- 24 files changed, 96 insertions(+), 98 deletions(-) diff --git a/.github/RELEASE_CHECKLIST.md b/.github/RELEASE_CHECKLIST.md index c7c20f86b2..e46b057a0f 100644 --- a/.github/RELEASE_CHECKLIST.md +++ b/.github/RELEASE_CHECKLIST.md @@ -3,26 +3,26 @@ > This checklist is for our own reference, to help us prepare a new release 1. Check that everything is ready to go - - Desired [PRs](https://github.com/nf-core/sarek/pulls) are merged - - [GitHub Actions](https://github.com/nf-core/sarek/actions?query=workflow%3A%22nf-core+CI%22) are passing on `dev` - - [nf-core linting](https://github.com/nf-core/sarek/actions?query=workflow%3A%22nf-core+linting%22) are passing on `dev` + - Desired [PRs](https://github.com/nf-core/sarek/pulls) are merged + - [GitHub Actions](https://github.com/nf-core/sarek/actions?query=workflow%3A%22nf-core+CI%22) are passing on `dev` + - [nf-core linting](https://github.com/nf-core/sarek/actions?query=workflow%3A%22nf-core+linting%22) are passing on `dev` 2. Increase version number following [semantic versioning](http://semver.org/spec/v2.0.0.html) 3. Choose an appropriate codename for the release (if major or minor) - - i.e. Peaks in [Sarek National Park](https://en.wikipedia.org/wiki/Sarek_National_Park#Topography) + - i.e. Peaks in [Sarek National Park](https://en.wikipedia.org/wiki/Sarek_National_Park#Topography) 4. Sync `dev` and checkout a new branch for the release 5. Bump version: - - `nf-core bump-version . ` - - edit `.circleci/config.yml` - - edit `.github/workflows/ci.yml` - - edit `conf/base.config` - - edit `conf/test.config` - - edit `containers/snpeff/Dockerfile` - - edit `containers/snpeff/environment.yml` - - edit `containers/vep/Dockerfile` - - edit `containers/vep/environment.yml` - - edit `docs/images/sarek_workflow.svg` - - generate a new `docs/images/sarek_workflow.png` - - edit `CHANGELOG` + - `nf-core bump-version . ` + - edit `.circleci/config.yml` + - edit `.github/workflows/ci.yml` + - edit `conf/base.config` + - edit `conf/test.config` + - edit `containers/snpeff/Dockerfile` + - edit `containers/snpeff/environment.yml` + - edit `containers/vep/Dockerfile` + - edit `containers/vep/environment.yml` + - edit `docs/images/sarek_workflow.svg` + - generate a new `docs/images/sarek_workflow.png` + - edit `CHANGELOG` 6. Make a PR to `master` 7. Wait for reviews 8. Merge said PR diff --git a/.github/workflows/local_modules.yml b/.github/workflows/local_modules.yml index a552dce4eb..2eee654198 100644 --- a/.github/workflows/local_modules.yml +++ b/.github/workflows/local_modules.yml @@ -12,7 +12,7 @@ jobs: - uses: dorny/paths-filter@v2 id: filter with: - filters: 'tests/config/pytest_software.yml' + filters: "tests/config/pytest_software.yml" test: runs-on: ubuntu-latest @@ -22,9 +22,9 @@ jobs: strategy: fail-fast: false matrix: - nxf_version: ['21.04.0'] - tags: ['${{ fromJson(needs.changes.outputs.modules) }}'] - profile: ['docker', 'singularity'] # 'conda' + nxf_version: ["21.04.0"] + tags: ["${{ fromJson(needs.changes.outputs.modules) }}"] + profile: ["docker", "singularity"] # 'conda' env: NXF_ANSI_LOG: false steps: @@ -33,7 +33,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v2 with: - python-version: '3.x' + python-version: "3.x" - uses: actions/cache@v2 with: @@ -45,7 +45,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v2 with: - python-version: '3.x' + python-version: "3.x" - name: Install Python dependencies run: python -m pip install --upgrade pip pytest-workflow diff --git a/CHANGELOG.md b/CHANGELOG.md index 3df16de66d..6c32a32e4e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,7 +22,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - [#241](https://github.com/nf-core/sarek/pull/241), [#248](https://github.com/nf-core/sarek/pull/248), [#250](https://github.com/nf-core/sarek/pull/250), [#257](https://github.com/nf-core/sarek/pull/257), [#259](https://github.com/nf-core/sarek/pull/259) - Add modules and sub workflow for preprocessing - [#242](https://github.com/nf-core/sarek/pull/242), [#244](https://github.com/nf-core/sarek/pull/244), [#245](https://github.com/nf-core/sarek/pull/245), [#246](https://github.com/nf-core/sarek/pull/246), [#247](https://github.com/nf-core/sarek/pull/247), [#249](https://github.com/nf-core/sarek/pull/249), [#252](https://github.com/nf-core/sarek/pull/252), [#256](https://github.com/nf-core/sarek/pull/256), [#263](https://github.com/nf-core/sarek/pull/263), [#264](https://github.com/nf-core/sarek/pull/264), [#283](https://github.com/nf-core/sarek/pull/283), [#285](https://github.com/nf-core/sarek/pull/285), [#338](https://github.com/nf-core/sarek/pull/338) - Refactor `dsl2` branch - [#257](https://github.com/nf-core/sarek/pull/257) - Use a params modules config file -- [#266](https://github.com/nf-core/sarek/pull/266), [#285](https://github.com/nf-core/sarek/pull/285), [#297](https://github.com/nf-core/sarek/pull/297) - Add modules and sub workflow for variant calling +- [#266](https://github.com/nf-core/sarek/pull/266), [#285](https://github.com/nf-core/sarek/pull/285), [#297](https://github.com/nf-core/sarek/pull/297) - Add modules and sub workflow for variant calling - [#333](https://github.com/nf-core/sarek/pull/333) - Bump `Sarek` version to `3.0dev` - [#334](https://github.com/nf-core/sarek/pull/334) - Sync `dsl2` and `dev` branches - [#342](https://github.com/nf-core/sarek/pull/342) - Update `README.md` @@ -377,7 +377,7 @@ Initial release of `nf-core/sarek`, created with the [nf-core](http://nf-co.re/) - [#7](https://github.com/nf-core/sarek/pull/8), [#23](https://github.com/nf-core/sarek/pull/23) - `--annotateVCF` is now deprecated, use `--input` instead - [#8](https://github.com/nf-core/sarek/pull/8), [#12](https://github.com/nf-core/sarek/pull/12) - Improve helper script `build.nf` for downloading and building reference files - [#9](https://github.com/nf-core/sarek/pull/9) - `ApplyBQSR` is now parallelized -- [#9](https://github.com/nf-core/sarek/pull/9) - Fastq files are named following "${idRun}_R1.fastq.gz" in the `FastQC` output for easier reporting +- [#9](https://github.com/nf-core/sarek/pull/9) - Fastq files are named following "${idRun}\_R1.fastq.gz" in the `FastQC` output for easier reporting - [#9](https://github.com/nf-core/sarek/pull/9) - Status is now a map with `idpatient`, `idsample` as keys (ie: `status = statusMap[idPatient, idSample]`) - [#9](https://github.com/nf-core/sarek/pull/9) - Use `ensembl-vep` `95.2` instead of `96.0` - [#11](https://github.com/nf-core/sarek/pull/11) - Summary HTML from `VEP` is now in the `Reports` directory @@ -394,7 +394,7 @@ Initial release of `nf-core/sarek`, created with the [nf-core](http://nf-co.re/) - [#18](https://github.com/nf-core/sarek/pull/18), [#29](https://github.com/nf-core/sarek/pull/29) - `--noReports` is now `--skipQC all` - [#18](https://github.com/nf-core/sarek/pull/18), [#21](https://github.com/nf-core/sarek/pull/21) - Update logo - [#21](https://github.com/nf-core/sarek/pull/21) - Moved `smallGRCh37` path to `genomes.config` -- [#23](https://github.com/nf-core/sarek/pull/23) - Rename `genomeFile`, `genomeIndex` and `genomeDict` by `fasta`, `fastaFai` and `dict` +- [#23](https://github.com/nf-core/sarek/pull/23) - Rename `genomeFile`, `genomeIndex` and `genomeDict` by `fasta`, `fastaFai` and `dict` - [#23](https://github.com/nf-core/sarek/pull/23) - `--sample` is now deprecated, use `--input` instead - [#23](https://github.com/nf-core/sarek/pull/23) - `--genomeFile` is now deprecated, use `--fasta` instead - [#23](https://github.com/nf-core/sarek/pull/23) - `--genomeIndex` is now deprecated, use `--fastaFai` instead @@ -529,7 +529,7 @@ Initial release of `nf-core/sarek`, created with the [nf-core](http://nf-co.re/) ### Added - [#671](https://github.com/SciLifeLab/Sarek/pull/671) - New `publishDirMode` param and docs -- [#673](https://github.com/SciLifeLab/Sarek/pull/673), [#675](https://github.com/SciLifeLab/Sarek/pull/675), [#676](https://github.com/SciLifeLab/Sarek/pull/676) - Profiles for BinAC and CFC clusters in Tübingen +- [#673](https://github.com/SciLifeLab/Sarek/pull/673), [#675](https://github.com/SciLifeLab/Sarek/pull/675), [#676](https://github.com/SciLifeLab/Sarek/pull/676) - Profiles for BinAC and CFC clusters in Tübingen - [#679](https://github.com/SciLifeLab/Sarek/pull/679) - Add container for `CreateIntervalBeds` - [#692](https://github.com/SciLifeLab/Sarek/pull/692), [#697](https://github.com/SciLifeLab/Sarek/pull/697) - Add `AWS iGenomes` possibilities (within `conf/igenomes.conf`) - [#694](https://github.com/SciLifeLab/Sarek/pull/694) - Add monochrome and grey logos for light or dark background @@ -629,7 +629,7 @@ Ruotes is one of the main massif in the Sarek National Park. - [#556](https://github.com/SciLifeLab/Sarek/pull/556) - `Strelka` Best Practices - [#563](https://github.com/SciLifeLab/Sarek/pull/563) - Use `SnpEFF` reports in `MultiQC` - [#568](https://github.com/SciLifeLab/Sarek/pull/568) - `VCFTools` process `RunVcftools` for QC -- [#574](https://github.com/SciLifeLab/Sarek/pull/574), [#580](https://github.com/SciLifeLab/Sarek/pull/580) - Abstracts for `NPMI`, `JOBIM` and `EACR25` +- [#574](https://github.com/SciLifeLab/Sarek/pull/574), [#580](https://github.com/SciLifeLab/Sarek/pull/580) - Abstracts for `NPMI`, `JOBIM` and `EACR25` - [#577](https://github.com/SciLifeLab/Sarek/pull/577) - New repository for testing: [Sarek-data](https://github.com/SciLifeLab/Sarek-data) - [#595](https://github.com/SciLifeLab/Sarek/pull/595) - New library `QC` for functions `bamQC`, `bcftools`, `samtoolsStats`, `vcftools`, `getVersionBCFtools`, `getVersionGATK`, `getVersionManta`, `getVersionSnpEFF`, `getVersionStrelka`, `getVersionVCFtools`, `getVersionVEP` - [#595](https://github.com/SciLifeLab/Sarek/pull/595) - New Processes `GetVersionBCFtools`, `GetVersionGATK`, `GetVersionManta`, `GetVersionSnpEFF`, `GetVersionStrelka`, `GetVersionVCFtools`, `GetVersionVEP` @@ -661,7 +661,7 @@ Ruotes is one of the main massif in the Sarek National Park. - [#607](https://github.com/SciLifeLab/Sarek/pull/607) - Update to `GATK4` - [#608](https://github.com/SciLifeLab/Sarek/pull/608) - Update `Nextflow` required version - [#616](https://github.com/SciLifeLab/Sarek/pull/616) - Update `CHANGELOG` -- [#617](https://github.com/SciLifeLab/Sarek/pull/617) - Replace deprecated `Nextflow ``$name` syntax with `withName` +- [#617](https://github.com/SciLifeLab/Sarek/pull/617) - Replace deprecated ` Nextflow ``$name ` syntax with `withName` ### Fixed @@ -670,7 +670,7 @@ Ruotes is one of the main massif in the Sarek National Park. - [#579](https://github.com/SciLifeLab/Sarek/pull/579), [#584](https://github.com/SciLifeLab/Sarek/pull/584) - `Manta` output reorganized after modification for `Strelka Best Practices` process - [#585](https://github.com/SciLifeLab/Sarek/pull/583) - Trace file is plain txt - [#590](https://github.com/SciLifeLab/Sarek/pull/590), [#593](https://github.com/SciLifeLab/Sarek/pull/593) - Fix `Singularity` installation in `Travis CI` testing -- [#598](https://github.com/SciLifeLab/Sarek/pull/598), [#601](https://github.com/SciLifeLab/Sarek/pull/601) - Fixes for `Python` script `selectROI.py` to work with `CLC` viewer +- [#598](https://github.com/SciLifeLab/Sarek/pull/598), [#601](https://github.com/SciLifeLab/Sarek/pull/601) - Fixes for `Python` script `selectROI.py` to work with `CLC` viewer ### Removed diff --git a/assets/multiqc_config.yaml b/assets/multiqc_config.yaml index 70b972bfe7..e3db6a9321 100644 --- a/assets/multiqc_config.yaml +++ b/assets/multiqc_config.yaml @@ -1,34 +1,34 @@ custom_logo: ../../../docs/images/nf-core_sarek_logo.png custom_logo_url: https://github.com/nf-core/sarek/ -custom_logo_title: 'nf-core/sarek' +custom_logo_title: "nf-core/sarek" report_comment: > - This report has been generated by the nf-core/sarek - analysis pipeline. For information about how to interpret these results, please see the - documentation. + This report has been generated by the nf-core/sarek + analysis pipeline. For information about how to interpret these results, please see the + documentation. report_section_order: - software_versions: - order: -1000 - nf-core-sarek-summary: - order: -1001 + software_versions: + order: -1000 + nf-core-sarek-summary: + order: -1001 export_plots: true top_modules: - - 'fastqc': - name: 'FastQC' - path_filters_exclude: - - '*trimmed_fastqc*' - - 'cutadapt' - - 'fastqc': - name: 'FastQC after trimming' - info: 'FastQC after applying TrimGalore.' - path_filters: - - '*trimmed_fastqc*' - - 'picard' - - 'gatk' - - 'samtools' - - 'qualimap' - - 'bcftools' - - 'vcftools' - - 'snpeff' + - "fastqc": + name: "FastQC" + path_filters_exclude: + - "*trimmed_fastqc*" + - "cutadapt" + - "fastqc": + name: "FastQC after trimming" + info: "FastQC after applying TrimGalore." + path_filters: + - "*trimmed_fastqc*" + - "picard" + - "gatk" + - "samtools" + - "qualimap" + - "bcftools" + - "vcftools" + - "snpeff" diff --git a/docs/abstracts/2018-05-PMC.md b/docs/abstracts/2018-05-PMC.md index 6f4ab2a166..22300860f5 100644 --- a/docs/abstracts/2018-05-PMC.md +++ b/docs/abstracts/2018-05-PMC.md @@ -26,10 +26,10 @@ Max Käller 2D, 7. Clinical Genetics, Dept. of Molecular Medicine and Surgery; 8. Dept. of Medical Sciences; 9. Dept. of Cell and Molecular Biology; -A. Uppsala University; -B. Dept. of Biochemistry and Biophysics; -C. Stockholm University; -D. School of Biotechnology, Division of Gene Technology, Royal Institute of Technology + A. Uppsala University; + B. Dept. of Biochemistry and Biophysics; + C. Stockholm University; + D. School of Biotechnology, Division of Gene Technology, Royal Institute of Technology We present Sarek, a complete Open Source pipeline to resolve germline and somatic variants from WGS data: it is written in Nextflow, a domain-specific language for workflow building. Sarek is based on GATK best practices to prepare short-read data, in parallel for a tumor/normal pair sample. diff --git a/docs/abstracts/2018-06-EACR25.md b/docs/abstracts/2018-06-EACR25.md index 6a4be1c8df..afe49fcfd5 100644 --- a/docs/abstracts/2018-06-EACR25.md +++ b/docs/abstracts/2018-06-EACR25.md @@ -21,7 +21,7 @@ Monica Nistér 3 ### Introduction Whole-genome sequencing of cancer tumours is more a research tool nowadays, but going to be used in clinical settings in -the near future to facilitate precision medicine. While large institutions have built up in-house bioinformatics +the near future to facilitate precision medicine. While large institutions have built up in-house bioinformatics solutions for their own data analysis, robust and portable workflows combining multiple software have been lacking, making it difficult for individual research groups to utilise the potential of this research field. Here we present Sarek, a robust, easy-to-install workflow for identification of both somatic and germline mutations from paired @@ -38,7 +38,7 @@ joint realignment around indels for both the tumour and the normal data. Reads a reference in an ALT-aware settings using BWA, however, it is possible to assign other references. HaplotypeCaller and Strelka2 germline calls are collected for both the tumour and the normal sample, and Manta provides germline structural variants. The somatic variations are calculated by running MuTect2, Strelka and FreeBayes (and MuTect1 optionally). -Somatic structural variants are delivered by Manta, and ASCAT estimates ploidy, tumour heterogeneity and CNVs. The +Somatic structural variants are delivered by Manta, and ASCAT estimates ploidy, tumour heterogeneity and CNVs. The resulting variant call files are annotated by SnpEff and Ensembl-VEP. The annotated calls are further filtered and prioritised by our custom methods. During running the workflow quality control metrics are also calculated and aggregated by MultiQC. diff --git a/docs/abstracts/2018-06-NPMI.md b/docs/abstracts/2018-06-NPMI.md index fbb3d97d8c..7de2d1d533 100644 --- a/docs/abstracts/2018-06-NPMI.md +++ b/docs/abstracts/2018-06-NPMI.md @@ -26,10 +26,10 @@ Max Käller 2D, 7. Clinical Genetics, Dept. of Molecular Medicine and Surgery; 8. Dept. of Medical Sciences; 9. Dept. of Cell and Molecular Biology; -A. Uppsala University; -B. Dept. of Biochemistry and Biophysics; -C. Stockholm University; -D. School of Biotechnology, Division of Gene Technology, Royal Institute of Technology + A. Uppsala University; + B. Dept. of Biochemistry and Biophysics; + C. Stockholm University; + D. School of Biotechnology, Division of Gene Technology, Royal Institute of Technology We present Sarek, a portable Open Source pipeline to resolve germline and somatic variants from WGS data: it is written in Nextflow, a domain-specific language for workflow building. It processes normal samples or normal/tumor pairs (with the option to include matched relapses). diff --git a/docs/abstracts/2018-07-JOBIM.md b/docs/abstracts/2018-07-JOBIM.md index 9a6257cddb..aa902caeb4 100644 --- a/docs/abstracts/2018-07-JOBIM.md +++ b/docs/abstracts/2018-07-JOBIM.md @@ -27,10 +27,10 @@ Max Käller 2D 7. Clinical Genetics, Dept. of Molecular Medicine and Surgery; 8. Dept. of Medical Sciences; 9. Dept. of Cell and Molecular Biology; -A. Uppsala University; -B. Dept. of Biochemistry and Biophysics; -C. Stockholm University; -D. School of Biotechnology, Division of Gene Technology, Royal Institute of Technology + A. Uppsala University; + B. Dept. of Biochemistry and Biophysics; + C. Stockholm University; + D. School of Biotechnology, Division of Gene Technology, Royal Institute of Technology We present Sarek, a portable Open Source pipeline to resolve germline and somatic variants from WGS data: it is written in Nextflow, a domain-specific language for workflow building. It processes normal samples or normal/tumor pairs (with the option to include matched relapses). diff --git a/modules/local/gatk4/applybqsrspark/meta.yml b/modules/local/gatk4/applybqsrspark/meta.yml index 23a16647b7..23c4dedac0 100644 --- a/modules/local/gatk4/applybqsrspark/meta.yml +++ b/modules/local/gatk4/applybqsrspark/meta.yml @@ -6,9 +6,9 @@ keywords: tools: - gatk4: description: | - Developed in the Data Sciences Platform at the Broad Institute, the toolkit offers a wide variety of tools - with a primary focus on variant discovery and genotyping. Its powerful processing engine - and high-performance computing features make it capable of taking on projects of any size. + Developed in the Data Sciences Platform at the Broad Institute, the toolkit offers a wide variety of tools + with a primary focus on variant discovery and genotyping. Its powerful processing engine + and high-performance computing features make it capable of taking on projects of any size. homepage: https://gatk.broadinstitute.org/hc/en-us documentation: https://gatk.broadinstitute.org/hc/en-us/categories/360002369672s doi: 10.1158/1538-7445.AM2017-3590 diff --git a/modules/local/gatk4/baserecalibratorspark/meta.yml b/modules/local/gatk4/baserecalibratorspark/meta.yml index 22e5f4a284..253f922437 100644 --- a/modules/local/gatk4/baserecalibratorspark/meta.yml +++ b/modules/local/gatk4/baserecalibratorspark/meta.yml @@ -5,14 +5,13 @@ keywords: tools: - gatk4: description: | - Developed in the Data Sciences Platform at the Broad Institute, the toolkit offers a wide variety of tools - with a primary focus on variant discovery and genotyping. Its powerful processing engine - and high-performance computing features make it capable of taking on projects of any size. + Developed in the Data Sciences Platform at the Broad Institute, the toolkit offers a wide variety of tools + with a primary focus on variant discovery and genotyping. Its powerful processing engine + and high-performance computing features make it capable of taking on projects of any size. homepage: https://gatk.broadinstitute.org/hc/en-us documentation: https://gatk.broadinstitute.org/hc/en-us/categories/360002369672s doi: 10.1158/1538-7445.AM2017-3590 - input: - meta: type: map diff --git a/modules/local/gatk4/markduplicatesspark/meta.yml b/modules/local/gatk4/markduplicatesspark/meta.yml index abe61e023f..8d72f232c9 100644 --- a/modules/local/gatk4/markduplicatesspark/meta.yml +++ b/modules/local/gatk4/markduplicatesspark/meta.yml @@ -6,14 +6,15 @@ keywords: - sort tools: - gatk4: - description: Developed in the Data Sciences Platform at the Broad Institute, the toolkit offers a wide variety of tools + description: + Developed in the Data Sciences Platform at the Broad Institute, the toolkit offers a wide variety of tools with a primary focus on variant discovery and genotyping. Its powerful processing engine and high-performance computing features make it capable of taking on projects of any size. homepage: https://gatk.broadinstitute.org/hc/en-us documentation: https://gatk.broadinstitute.org/hc/en-us/articles/360037052812-MarkDuplicates-Picard- tool_dev_url: https://github.com/broadinstitute/gatk doi: 10.1158/1538-7445.AM2017-3590 - licence: ['BSD-3-clause'] + licence: ["BSD-3-clause"] input: - meta: diff --git a/modules/local/samtools/fastq/meta.yml b/modules/local/samtools/fastq/meta.yml index f35701c457..319a60cf68 100644 --- a/modules/local/samtools/fastq/meta.yml +++ b/modules/local/samtools/fastq/meta.yml @@ -1,7 +1,7 @@ name: samtools_bam2fq description: | - The module uses bam2fq method from samtools to - convert a SAM, BAM or CRAM file to FASTQ format + The module uses bam2fq method from samtools to + convert a SAM, BAM or CRAM file to FASTQ format keywords: - bam2fq - samtools @@ -13,7 +13,7 @@ tools: documentation: http://www.htslib.org/doc/1.1/samtools.html tool_dev_url: None doi: "" - licence: ['MIT'] + licence: ["MIT"] input: - meta: diff --git a/modules/nf-core/modules/ascat/meta.yml b/modules/nf-core/modules/ascat/meta.yml index 949afd6af0..14e5454949 100644 --- a/modules/nf-core/modules/ascat/meta.yml +++ b/modules/nf-core/modules/ascat/meta.yml @@ -9,7 +9,7 @@ tools: documentation: None tool_dev_url: https://github.com/Crick-CancerGenomics/ascat doi: "10.1093/bioinformatics/btaa538" - licence: ['GPL v3'] + licence: ["GPL v3"] input: - args: diff --git a/modules/nf-core/modules/controlfreec/meta.yml b/modules/nf-core/modules/controlfreec/meta.yml index 4d1e8674bd..200b3cd06d 100644 --- a/modules/nf-core/modules/controlfreec/meta.yml +++ b/modules/nf-core/modules/controlfreec/meta.yml @@ -13,7 +13,7 @@ tools: documentation: http://boevalab.inf.ethz.ch/FREEC/tutorial.html tool_dev_url: https://github.com/BoevaLab/FREEC/ doi: "10.1093/bioinformatics/btq635" - licence: ['GPL >=2'] + licence: ["GPL >=2"] input: - args: @@ -131,7 +131,6 @@ input: description: Sorted bed file containing capture regions (optional) pattern: "*.bed" - output: - meta: type: map diff --git a/modules/nf-core/modules/deeptools/bamcoverage/meta.yml b/modules/nf-core/modules/deeptools/bamcoverage/meta.yml index d0590b2a41..fb92168f62 100644 --- a/modules/nf-core/modules/deeptools/bamcoverage/meta.yml +++ b/modules/nf-core/modules/deeptools/bamcoverage/meta.yml @@ -9,7 +9,7 @@ tools: documentation: https://deeptools.readthedocs.io/en/develop/content/tools/bamCoverage.html tool_dev_url: https://github.com/deeptools/deepTools/ doi: "https://doi.org/10.1093/nar/gkw257" - licence: ['GPL v3'] + licence: ["GPL v3"] input: - meta: diff --git a/modules/nf-core/modules/gatk4/gatherpileupsummaries/meta.yml b/modules/nf-core/modules/gatk4/gatherpileupsummaries/meta.yml index 7885a93079..2dc92d554e 100644 --- a/modules/nf-core/modules/gatk4/gatherpileupsummaries/meta.yml +++ b/modules/nf-core/modules/gatk4/gatherpileupsummaries/meta.yml @@ -9,7 +9,7 @@ tools: documentation: https://gatk.broadinstitute.org/hc/en-us tool_dev_url: https://github.com/broadinstitute/gatk doi: "10.1158/1538-7445.AM2017-3590" - licence: ['BSD-3-clause'] + licence: ["BSD-3-clause"] input: - meta: diff --git a/modules/nf-core/modules/gatk4/getpileupsummaries/meta.yml b/modules/nf-core/modules/gatk4/getpileupsummaries/meta.yml index a70cf1e580..3a940dea6e 100644 --- a/modules/nf-core/modules/gatk4/getpileupsummaries/meta.yml +++ b/modules/nf-core/modules/gatk4/getpileupsummaries/meta.yml @@ -56,7 +56,6 @@ input: description: Index file for the germline resource. pattern: "*.vcf.gz.tbi" - output: - pileup: type: file diff --git a/modules/nf-core/modules/gatk4/variantrecalibrator/meta.yml b/modules/nf-core/modules/gatk4/variantrecalibrator/meta.yml index 92416a5820..afe33d7a7a 100644 --- a/modules/nf-core/modules/gatk4/variantrecalibrator/meta.yml +++ b/modules/nf-core/modules/gatk4/variantrecalibrator/meta.yml @@ -52,11 +52,11 @@ input: - resvcfs: type: list description: resource files to be used as truth, training and known sites resources, this imports the files into the module, file names are specified again in the resource_labels to be called via the command. - pattern: '*/hapmap_3.3.hg38_chr21.vcf.gz' + pattern: "*/hapmap_3.3.hg38_chr21.vcf.gz" - restbis: type: list description: tbis for the corresponding vcfs files to be used as truth, training and known resources. - pattern: '*/hapmap_3.3.hg38_chr21.vcf.gz.tbi' + pattern: "*/hapmap_3.3.hg38_chr21.vcf.gz.tbi" - reslabels: type: list description: labels for the resource files to be used as truth, training and known sites resources, label should include an identifier,which kind of resource(s) it is, prior value and name of the file. diff --git a/modules/nf-core/modules/msisensorpro/msi_somatic/meta.yml b/modules/nf-core/modules/msisensorpro/msi_somatic/meta.yml index 09bc0e738b..7caa1c1a96 100644 --- a/modules/nf-core/modules/msisensorpro/msi_somatic/meta.yml +++ b/modules/nf-core/modules/msisensorpro/msi_somatic/meta.yml @@ -12,7 +12,7 @@ tools: documentation: https://github.com/xjtu-omics/msisensor-pro/wiki tool_dev_url: https://github.com/xjtu-omics/msisensor-pro doi: "doi.org/10.1016/j.gpb.2020.02.001" - licence: ['Custom Licence'] + licence: ["Custom Licence"] input: - meta: diff --git a/modules/nf-core/modules/msisensorpro/scan/meta.yml b/modules/nf-core/modules/msisensorpro/scan/meta.yml index 72c1b84b7b..27f5bc0f5c 100644 --- a/modules/nf-core/modules/msisensorpro/scan/meta.yml +++ b/modules/nf-core/modules/msisensorpro/scan/meta.yml @@ -11,7 +11,7 @@ tools: documentation: https://github.com/xjtu-omics/msisensor-pro/wiki tool_dev_url: https://github.com/xjtu-omics/msisensor-pro doi: "doi.org/10.1016/j.gpb.2020.02.001" - licence: ['Custom Licence'] + licence: ["Custom Licence"] input: - meta: diff --git a/subworkflows/nf-core/annotation/ensemblvep/meta.yml b/subworkflows/nf-core/annotation/ensemblvep/meta.yml index e7d92ce9cd..991a8b2f0f 100644 --- a/subworkflows/nf-core/annotation/ensemblvep/meta.yml +++ b/subworkflows/nf-core/annotation/ensemblvep/meta.yml @@ -20,10 +20,10 @@ output: - versions: type: file description: File containing software versions - pattern: 'versions.yml' + pattern: "versions.yml" - vcf_tbi: type: file description: Compressed vcf file + tabix index pattern: "[ *{.vcf.gz,vcf.gz.tbi} ]" authors: - - '@maxulysse' + - "@maxulysse" diff --git a/subworkflows/nf-core/annotation/snpeff/meta.yml b/subworkflows/nf-core/annotation/snpeff/meta.yml index 164a0ee27a..e077362637 100644 --- a/subworkflows/nf-core/annotation/snpeff/meta.yml +++ b/subworkflows/nf-core/annotation/snpeff/meta.yml @@ -20,10 +20,10 @@ output: - versions: type: file description: File containing software versions - pattern: 'versions.yml' + pattern: "versions.yml" - vcf_tbi: type: file description: Compressed vcf file + tabix index pattern: "[ *{.vcf.gz,vcf.gz.tbi} ]" authors: - - '@maxulysse' + - "@maxulysse" diff --git a/subworkflows/nf-core/gatk4/tumor_normal_somatic_variant_calling/meta.yml b/subworkflows/nf-core/gatk4/tumor_normal_somatic_variant_calling/meta.yml index 4c42addfa4..d5abdca939 100644 --- a/subworkflows/nf-core/gatk4/tumor_normal_somatic_variant_calling/meta.yml +++ b/subworkflows/nf-core/gatk4/tumor_normal_somatic_variant_calling/meta.yml @@ -74,7 +74,7 @@ output: - versions: type: file description: File containing software versions - pattern: 'versions.yml' + pattern: "versions.yml" - mutect2_vcf: type: file description: Compressed vcf file to be used for variant_calling. @@ -124,4 +124,4 @@ output: description: file containing statistics of the filtermutectcalls run. pattern: "*.filteringStats.tsv" authors: - - '@GCJMackenzie' + - "@GCJMackenzie" diff --git a/subworkflows/nf-core/gatk4/tumor_only_somatic_variant_calling/meta.yml b/subworkflows/nf-core/gatk4/tumor_only_somatic_variant_calling/meta.yml index 143296916b..4c41f1f261 100644 --- a/subworkflows/nf-core/gatk4/tumor_only_somatic_variant_calling/meta.yml +++ b/subworkflows/nf-core/gatk4/tumor_only_somatic_variant_calling/meta.yml @@ -67,7 +67,7 @@ output: - versions: type: file description: File containing software versions - pattern: 'versions.yml' + pattern: "versions.yml" - mutect2_vcf: type: file description: Compressed vcf file to be used for variant_calling. @@ -105,4 +105,4 @@ output: description: file containing statistics of the filtermutectcalls run. pattern: "*.filteringStats.tsv" authors: - - '@GCJMackenzie' + - "@GCJMackenzie" From e130792f2404b2f1464853e633a0aafb6833347b Mon Sep 17 00:00:00 2001 From: FriederikeHanssen Date: Thu, 24 Mar 2022 14:10:17 +0100 Subject: [PATCH 5/8] Update README.md Co-authored-by: Maxime U. Garcia --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index bb111182bb..4fd3c6be61 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ![nf-core/sarek](docs/images/nf-core/sarek_logo_light.png#gh-light-mode-only) ![nf-core/sarek](docs/images/nf-core/sarek_logo_dark.png#gh-dark-mode-only) +# ![nf-core/sarek](docs/images/nf-core-sarek_logo_light.png#gh-light-mode-only) ![nf-core/sarek](docs/images/nf-core-sarek_logo_dark.png#gh-dark-mode-only) > **An open-source analysis pipeline to detect germline or somatic variants from whole genome or targeted sequencing** From 7f89d764492e2e083e89451dfede7d9fa58629ef Mon Sep 17 00:00:00 2001 From: Rike Date: Thu, 24 Mar 2022 14:51:23 +0100 Subject: [PATCH 6/8] Apply suggestion from code review --- .github/workflows/branch.yml | 1 - .github/workflows/linting.yml | 2 -- .github/workflows/linting_comment.yml | 1 - assets/multiqc_config.yaml | 34 --------------------------- assets/multiqc_config.yml | 25 +++++++++++++++++++- 5 files changed, 24 insertions(+), 39 deletions(-) delete mode 100644 assets/multiqc_config.yaml diff --git a/.github/workflows/branch.yml b/.github/workflows/branch.yml index 1cf39a881e..714c2e78f4 100644 --- a/.github/workflows/branch.yml +++ b/.github/workflows/branch.yml @@ -42,4 +42,3 @@ jobs: Thanks again for your contribution! repo-token: ${{ secrets.GITHUB_TOKEN }} allow-repeats: false -# diff --git a/.github/workflows/linting.yml b/.github/workflows/linting.yml index e9cf5de3ac..a089bbb459 100644 --- a/.github/workflows/linting.yml +++ b/.github/workflows/linting.yml @@ -78,5 +78,3 @@ jobs: lint_log.txt lint_results.md PR_number.txt - -# diff --git a/.github/workflows/linting_comment.yml b/.github/workflows/linting_comment.yml index 91c487a1a5..04758f61e3 100644 --- a/.github/workflows/linting_comment.yml +++ b/.github/workflows/linting_comment.yml @@ -26,4 +26,3 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} number: ${{ steps.pr_number.outputs.pr_number }} path: linting-logs/lint_results.md -# diff --git a/assets/multiqc_config.yaml b/assets/multiqc_config.yaml deleted file mode 100644 index e3db6a9321..0000000000 --- a/assets/multiqc_config.yaml +++ /dev/null @@ -1,34 +0,0 @@ -custom_logo: ../../../docs/images/nf-core_sarek_logo.png -custom_logo_url: https://github.com/nf-core/sarek/ -custom_logo_title: "nf-core/sarek" - -report_comment: > - This report has been generated by the nf-core/sarek - analysis pipeline. For information about how to interpret these results, please see the - documentation. -report_section_order: - software_versions: - order: -1000 - nf-core-sarek-summary: - order: -1001 - -export_plots: true - -top_modules: - - "fastqc": - name: "FastQC" - path_filters_exclude: - - "*trimmed_fastqc*" - - "cutadapt" - - "fastqc": - name: "FastQC after trimming" - info: "FastQC after applying TrimGalore." - path_filters: - - "*trimmed_fastqc*" - - "picard" - - "gatk" - - "samtools" - - "qualimap" - - "bcftools" - - "vcftools" - - "snpeff" diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index 33eb41b82a..e3db6a9321 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -1,3 +1,7 @@ +custom_logo: ../../../docs/images/nf-core_sarek_logo.png +custom_logo_url: https://github.com/nf-core/sarek/ +custom_logo_title: "nf-core/sarek" + report_comment: > This report has been generated by the nf-core/sarek analysis pipeline. For information about how to interpret these results, please see the @@ -5,7 +9,26 @@ report_comment: > report_section_order: software_versions: order: -1000 - "nf-core-sarek-summary": + nf-core-sarek-summary: order: -1001 export_plots: true + +top_modules: + - "fastqc": + name: "FastQC" + path_filters_exclude: + - "*trimmed_fastqc*" + - "cutadapt" + - "fastqc": + name: "FastQC after trimming" + info: "FastQC after applying TrimGalore." + path_filters: + - "*trimmed_fastqc*" + - "picard" + - "gatk" + - "samtools" + - "qualimap" + - "bcftools" + - "vcftools" + - "snpeff" From a5ad6c77826d86944dabb06fde6c10116b43c2ab Mon Sep 17 00:00:00 2001 From: Rike Date: Thu, 24 Mar 2022 15:39:27 +0100 Subject: [PATCH 7/8] update all the modules to simultaneously make prettier and nf-core lint happy --- modules.json | 18 ++-- modules/nf-core/modules/ascat/main.nf | 18 ++-- modules/nf-core/modules/ascat/meta.yml | 22 ++--- modules/nf-core/modules/controlfreec/meta.yml | 98 +++++++++---------- 4 files changed, 78 insertions(+), 78 deletions(-) diff --git a/modules.json b/modules.json index d91fae0aee..0442fea4fc 100644 --- a/modules.json +++ b/modules.json @@ -4,7 +4,7 @@ "repos": { "nf-core/modules": { "ascat": { - "git_sha": "d6244b42f596fa26d2ecba4ce862755821ed9da8" + "git_sha": "f0800157544a82ae222931764483331a81812012" }, "bcftools/stats": { "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" @@ -28,13 +28,13 @@ "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" }, "controlfreec": { - "git_sha": "c189835b1bb444e5ee87416fdbea66e2c2ba365e" + "git_sha": "f0800157544a82ae222931764483331a81812012" }, "custom/dumpsoftwareversions": { "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" }, "deeptools/bamcoverage": { - "git_sha": "fdb1664885480d9411c24ba45bb4fde4738e5907" + "git_sha": "f0800157544a82ae222931764483331a81812012" }, "deepvariant": { "git_sha": "c450b08a75cda8878876ccbbe42493d6774397bd" @@ -82,7 +82,7 @@ "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" }, "gatk4/gatherpileupsummaries": { - "git_sha": "8c8be7d7c6c5b17b89f1c392866fc433b0f79d69" + "git_sha": "f0800157544a82ae222931764483331a81812012" }, "gatk4/genomicsdbimport": { "git_sha": "967fb22dedc2c8855f00e64c3d7b5814c85242a6" @@ -91,7 +91,7 @@ "git_sha": "2383d43a0fdfdfb1fe15128ad8723b9f6f40d5cc" }, "gatk4/getpileupsummaries": { - "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" + "git_sha": "f0800157544a82ae222931764483331a81812012" }, "gatk4/haplotypecaller": { "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" @@ -112,7 +112,7 @@ "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" }, "gatk4/variantrecalibrator": { - "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" + "git_sha": "f0800157544a82ae222931764483331a81812012" }, "manta/germline": { "git_sha": "979e57b7ac6a405a395dd7a6dbe1a275c5bc226b" @@ -124,10 +124,10 @@ "git_sha": "979e57b7ac6a405a395dd7a6dbe1a275c5bc226b" }, "msisensorpro/msi_somatic": { - "git_sha": "c8ebd0de36c649a14fc92f2f73cbd9f691a8ce0a" + "git_sha": "f0800157544a82ae222931764483331a81812012" }, "msisensorpro/scan": { - "git_sha": "c8ebd0de36c649a14fc92f2f73cbd9f691a8ce0a" + "git_sha": "f0800157544a82ae222931764483331a81812012" }, "multiqc": { "git_sha": "e745e167c1020928ef20ea1397b6b4d230681b4d" @@ -191,4 +191,4 @@ } } } -} +} \ No newline at end of file diff --git a/modules/nf-core/modules/ascat/main.nf b/modules/nf-core/modules/ascat/main.nf index 1d2bd96fe1..35f262dd53 100644 --- a/modules/nf-core/modules/ascat/main.nf +++ b/modules/nf-core/modules/ascat/main.nf @@ -137,15 +137,15 @@ process ASCAT { stub: def prefix = task.ext.prefix ?: "${meta.id}" """ - touch ${prefix}.cnvs.txt - touch ${prefix}.purityploidy.txt - touch ${prefix}.segments.txt - touch Tumour.ASCATprofile.png - touch Tumour.ASPCF.png - touch Tumour.germline.png - touch Tumour.rawprofile.png - touch Tumour.sunrise.png - touch Tumour.tumour.png + echo stub > ${prefix}.cnvs.txt + echo stub > ${prefix}.purityploidy.txt + echo stub > ${prefix}.segments.txt + echo stub > Tumour.ASCATprofile.png + echo stub > Tumour.ASPCF.png + echo stub > Tumour.germline.png + echo stub > Tumour.rawprofile.png + echo stub > Tumour.sunrise.png + echo stub > Tumour.tumour.png echo 'ASCAT:' > versions.yml echo ' ascat: 3.0.0' >> versions.yml diff --git a/modules/nf-core/modules/ascat/meta.yml b/modules/nf-core/modules/ascat/meta.yml index 14e5454949..00d8606981 100644 --- a/modules/nf-core/modules/ascat/meta.yml +++ b/modules/nf-core/modules/ascat/meta.yml @@ -15,23 +15,23 @@ input: - args: type: map description: | - Groovy Map containing tool parameters. MUST follow the structure/keywords below and be provided via modules.config. Parameters must be set between quotes. parameters can be removed from the map, if they are not set. For default values, please check the documentation above. + Groovy Map containing tool parameters. MUST follow the structure/keywords below and be provided via modules.config. Parameters must be set between quotes. (optional) parameters can be removed from the map, if they are not set. For default values, please check the documentation above. ``` { [ "gender": "XX", "genomeVersion": "hg19" - "purity": , - "ploidy": , - "gc_files": , - "minCounts": , - "chrom_names": , - "min_base_qual": , - "min_map_qual": , - "ref_fasta": , - "skip_allele_counting_tumour": , - "skip_allele_counting_normal": + "purity": (optional), + "ploidy": (optional), + "gc_files": (optional), + "minCounts": (optional), + "chrom_names": (optional), + "min_base_qual": (optional), + "min_map_qual": (optional), + "ref_fasta": (optional), + "skip_allele_counting_tumour": (optional), + "skip_allele_counting_normal": (optional) ] } ``` diff --git a/modules/nf-core/modules/controlfreec/meta.yml b/modules/nf-core/modules/controlfreec/meta.yml index 200b3cd06d..b2a6772b5c 100644 --- a/modules/nf-core/modules/controlfreec/meta.yml +++ b/modules/nf-core/modules/controlfreec/meta.yml @@ -17,57 +17,57 @@ tools: input: - args: - type: map - description: | - Groovy Map containing tool parameters. MUST follow the structure/keywords below and be provided via modules.config. - parameters can be removed from the map, if they are not set. All value must be surrounded by quotes, meta map parameters can be set with, i.e. sex = meta.sex: - For default values, please check the documentation above. + type: map + description: | + Groovy Map containing tool parameters. MUST follow the structure/keywords below and be provided via modules.config. + Parameters marked as (optional) can be removed from the map, if they are not set. All values must be surrounded by quotes, meta map parameters can be set with, i.e. `sex = meta.sex`: + For default values, please check the documentation above. - ``` - { - [ - "general" :[ - "bedgraphoutput": , - "breakpointthreshold": , - "breakpointtype": , - "coefficientofvariation": , - "contamination": , - "contaminationadjustment": , - "degree": , - "forcegccontentnormalization": , - "gccontentprofile": , - "intercept": , - "mincnalength": , - "minmappabilityperwindow": , - "minexpectedgc": , - "maxexpectedgc": , - "minimalsubclonepresence": , - "noisydata": , - "ploidy": , - "printNA": , - "readcountthreshold": , - "sex": , - "step": , - "telocentromeric": , - "uniquematch": , - "window": - ], - "control":[ - "inputformat": , - "mateorientation": , - ], - "sample":[ - "inputformat": , - "mateorientation": , - ], - "BAF":[ - "minimalcoverageperposition": , - "minimalqualityperposition": , - "shiftinquality": + ``` + { + [ + "general" :[ + "bedgraphoutput": (optional), + "breakpointthreshold": (optional), + "breakpointtype": (optional), + "coefficientofvariation": (optional), + "contamination": (optional), + "contaminationadjustment": (optional), + "degree": (optional), + "forcegccontentnormalization": (optional), + "gccontentprofile": (optional), + "intercept": (optional), + "mincnalength": (optional), + "minmappabilityperwindow": (optional), + "minexpectedgc": (optional), + "maxexpectedgc": (optional), + "minimalsubclonepresence": (optional), + "noisydata": (optional), + "ploidy": (optional), + "printNA": (optional), + "readcountthreshold": (optional), + "sex": (optional), + "step": (optional), + "telocentromeric": (optional), + "uniquematch": (optional), + "window": (optional) + ], + "control":[ + "inputformat": (required), + "mateorientation": (optional), + ], + "sample":[ + "inputformat": (required), + "mateorientation": (optional), + ], + "BAF":[ + "minimalcoverageperposition": (optional), + "minimalqualityperposition": (optional), + "shiftinquality": (optional) + ] ] - ] - } - ``` + } + ``` - meta: type: map From d799562fc597302a13af95ab33923e3518ca350f Mon Sep 17 00:00:00 2001 From: Rike Date: Thu, 24 Mar 2022 15:51:00 +0100 Subject: [PATCH 8/8] prettier again --- modules.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules.json b/modules.json index 0442fea4fc..603ac393d3 100644 --- a/modules.json +++ b/modules.json @@ -191,4 +191,4 @@ } } } -} \ No newline at end of file +}