From 323ccb7388470095f73542132bb0a2fdd20e71ff Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Thu, 11 Apr 2024 16:12:18 +0100 Subject: [PATCH 01/19] Add CI fix from @adamrtalbot --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 726d92b..208a270 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -128,7 +128,7 @@ jobs: if: always() steps: - name: All tests ok - if: ${{ !contains(needs.*.result, 'failure') }} + if: ${{ success() || !contains(needs.*.result, 'failure') }} run: exit 0 - name: One or more tests failed if: ${{ contains(needs.*.result, 'failure') }} From 47617392e8603a1a5a0f848568d5f8c434cdd8f2 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Thu, 11 Apr 2024 16:54:02 +0100 Subject: [PATCH 02/19] CI should not work on pushes- breaks CI python script --- .github/workflows/ci.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 208a270..f12743b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,9 +1,6 @@ name: nf-core CI # This workflow runs the pipeline with the minimal test dataset to check that it completes without any syntax errors on: - push: - branches: - - dev pull_request: release: types: [published] From 5c51ef9019ff67d4fae04132f64d46441a7c079e Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 10:04:56 +0100 Subject: [PATCH 03/19] Update download CI- see https://nfcore.slack.com/archives/C04QR0T3G3H/p1712912212013879 --- .github/workflows/download_pipeline.yml | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/.github/workflows/download_pipeline.yml b/.github/workflows/download_pipeline.yml index 48fe5d0..2d20d64 100644 --- a/.github/workflows/download_pipeline.yml +++ b/.github/workflows/download_pipeline.yml @@ -14,6 +14,8 @@ on: pull_request: types: - opened + - edited + - synchronize branches: - master pull_request_target: @@ -28,11 +30,14 @@ jobs: runs-on: ubuntu-latest steps: - name: Install Nextflow - uses: nf-core/setup-nextflow@v1 + uses: nf-core/setup-nextflow@v2 - - uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5 + - name: Disk space cleanup + uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1 + + - uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5 with: - python-version: "3.11" + python-version: "3.12" architecture: "x64" - uses: eWaterCycle/setup-singularity@931d4e31109e875b13309ae1d07c70ca8fbc8537 # v7 with: @@ -65,7 +70,16 @@ jobs: - name: Inspect download run: tree ./${{ env.REPOTITLE_LOWERCASE }} - - name: Run the downloaded pipeline + - name: Run the downloaded pipeline (stub) + id: stub_run_pipeline + continue-on-error: true + env: + NXF_SINGULARITY_CACHEDIR: ./ + NXF_SINGULARITY_HOME_MOUNT: true + run: nextflow run ./${{ env.REPOTITLE_LOWERCASE }}/$( sed 's/\W/_/g' <<< ${{ env.REPO_BRANCH }}) -stub -profile test,singularity --outdir ./results + - name: Run the downloaded pipeline (stub run not supported) + id: run_pipeline + if: ${{ job.steps.stub_run_pipeline.status == failure() }} env: NXF_SINGULARITY_CACHEDIR: ./ NXF_SINGULARITY_HOME_MOUNT: true From e228313a312651279b0776c021e70ad4d1f3a309 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 10:12:20 +0100 Subject: [PATCH 04/19] Address JackCurragh review comments --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 60b93ae..d7e914e 100644 --- a/README.md +++ b/README.md @@ -28,15 +28,15 @@ 5. Adapter and quality trimming ([`Trim Galore!`](https://www.bioinformatics.babraham.ac.uk/projects/trim_galore/)) 6. Removal of genome contaminants ([`BBSplit`](http://seqanswers.com/forums/showthread.php?t=41288)) 7. Removal of ribosomal RNA ([`SortMeRNA`](https://github.com/biocore/sortmerna)) -8. Multiple alignment to both genome and transcriptome using [`STAR`](https://github.com/alexdobin/STAR) +8. Genome alignment of reads, outputting both genome and transcriptome alignments with [`STAR`](https://github.com/alexdobin/STAR) 9. Sort and index alignments ([`SAMtools`](https://sourceforge.net/projects/samtools/files/samtools/)) 10. UMI-based deduplication ([`UMI-tools`](https://github.com/CGATOxford/UMI-tools)) Differences occur in the downstream analysis steps. Currently these specialist steps are: 1. Check reads distribution around annotated protein coding regions on user provided transcripts, show frame bias and estimate P-site offset for different group of reads ([`Ribo-TISH`](https://github.com/zhpn1024/ribotish)) -2. Predict translating open reading frames and/ or translation initiation sites _de novo_ from alignment data ([`Ribo-TISH`](https://github.com/zhpn1024/ribotish)) -3. Derive candidate ORFs from reference data and detect translating ORFs from that list ([`Ribotricer`](https://github.com/smithlabcode/ribotricer)) +2. (default, optional) Predict translated open reading frames and/ or translation initiation sites _de novo_ from alignment data ([`Ribo-TISH`](https://github.com/zhpn1024/ribotish)) +3. (default, optional) Derive candidate ORFs from reference data and detect translated ORFs from that list ([`Ribotricer`](https://github.com/smithlabcode/ribotricer)) 4. (optional) Use a translational efficiency approach to study the dynamics of transcription and translation, with [anota2seq](https://bioconductor.org/packages/release/bioc/html/anota2seq.html). **requires matched RNA-seq and Ribo-seq data** ## Usage @@ -98,7 +98,7 @@ For more details about the output files and reports, please refer to the ## Credits -nf-core/riboseq was originally written by [Jonathan Manning](https://github.com/pinin4fjords) (Bioinformatics Engineer as Seqera) with support from [Altos labs](https://www.altoslabs.com/) and in discussion with [Felix Krueger](https://github.com/FelixKrueger) and [Christel Krueger](https://github.com/ChristelKrueger). We thank the following people for their input: +nf-core/riboseq was originally written by [Jonathan Manning](https://github.com/pinin4fjords) (Bioinformatics Engineer at Seqera) with support from [Altos labs](https://www.altoslabs.com/) and in discussion with [Felix Krueger](https://github.com/FelixKrueger) and [Christel Krueger](https://github.com/ChristelKrueger). We thank the following people for their input: - Anne Bresciani (ZS) - [Felibe Almeida](https://github.com/fmalmeida) (ZS) From e966136a5164a240182c74f7481d950a375ff3a2 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 10:15:03 +0100 Subject: [PATCH 05/19] update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f8d208c..934d371 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,6 +27,7 @@ Initial release of nf-core/riboseq, created with the [nf-core](https://nf-co.re/ - [#46](https://github.com/nf-core/riboseq/pull/46) - Prerelease changes v1.0.0 ([@pinin4fjords](https://github.com/pinin4fjords), review by [@FelixKrueger](https://github.com/FelixKrueger)) - [#48](https://github.com/nf-core/riboseq/pull/48) - Remove stub option from download in CI ([@pinin4fjords](https://github.com/pinin4fjords), review by [@maxulysse](https://github.com/maxulysse)) - [#49](https://github.com/nf-core/riboseq/pull/49) - Fix CI ([@pinin4fjords](https://github.com/pinin4fjords), review by [@adamrtalbot](https://github.com/adamrtalbot)) +- [#50](https://github.com/nf-core/riboseq/pull/50) - V1.0.0 release review fixes ([@pinin4fjords](https://github.com/pinin4fjords), review by) ### `Added` From be8c220c8a50eb3a5d403f0a9183f4a69561b105 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 11:11:32 +0100 Subject: [PATCH 06/19] Removed at @maxulysse request --- .github/workflows/release-announcments.yml | 68 ---------------------- 1 file changed, 68 deletions(-) delete mode 100644 .github/workflows/release-announcments.yml diff --git a/.github/workflows/release-announcments.yml b/.github/workflows/release-announcments.yml deleted file mode 100644 index 6ad3392..0000000 --- a/.github/workflows/release-announcments.yml +++ /dev/null @@ -1,68 +0,0 @@ -name: release-announcements -# Automatic release toot and tweet anouncements -on: - release: - types: [published] - workflow_dispatch: - -jobs: - toot: - runs-on: ubuntu-latest - steps: - - uses: rzr/fediverse-action@master - with: - access-token: ${{ secrets.MASTODON_ACCESS_TOKEN }} - host: "mstdn.science" # custom host if not "mastodon.social" (default) - # GitHub event payload - # https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#release - message: | - Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}! - - Please see the changelog: ${{ github.event.release.html_url }} - - send-tweet: - runs-on: ubuntu-latest - - steps: - - uses: actions/setup-python@v4 - with: - python-version: "3.10" - - name: Install dependencies - run: pip install tweepy==4.14.0 - - name: Send tweet - shell: python - run: | - import os - import tweepy - - client = tweepy.Client( - access_token=os.getenv("TWITTER_ACCESS_TOKEN"), - access_token_secret=os.getenv("TWITTER_ACCESS_TOKEN_SECRET"), - consumer_key=os.getenv("TWITTER_CONSUMER_KEY"), - consumer_secret=os.getenv("TWITTER_CONSUMER_SECRET"), - ) - tweet = os.getenv("TWEET") - client.create_tweet(text=tweet) - env: - TWEET: | - Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}! - - Please see the changelog: ${{ github.event.release.html_url }} - TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }} - TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }} - TWITTER_ACCESS_TOKEN: ${{ secrets.TWITTER_ACCESS_TOKEN }} - TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }} - - bsky-post: - runs-on: ubuntu-latest - steps: - - uses: zentered/bluesky-post-action@v0.0.2 - with: - post: | - Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}! - - Please see the changelog: ${{ github.event.release.html_url }} - env: - BSKY_IDENTIFIER: ${{ secrets.BSKY_IDENTIFIER }} - BSKY_PASSWORD: ${{ secrets.BSKY_PASSWORD }} - # From 6683f8fc5f4f582c1be27345f5dc24e473bea42c Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 11:17:38 +0100 Subject: [PATCH 07/19] @FelixKrueger suggestions --- CITATIONS.md | 2 +- README.md | 10 +++++----- assets/email_template.html | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/CITATIONS.md b/CITATIONS.md index df00e0f..6f65855 100644 --- a/CITATIONS.md +++ b/CITATIONS.md @@ -48,7 +48,7 @@ > Dobin A, Davis CA, Schlesinger F, Drenkow J, Zaleski C, Jha S, Batut P, Chaisson M, Gingeras TR. STAR: ultrafast universal RNA-seq aligner Bioinformatics. 2013 Jan 1;29(1):15-21. doi: 10.1093/bioinformatics/bts635. Epub 2012 Oct 25. PubMed PMID: 23104886; PubMed Central PMCID: PMC3530905. -- [Trim Galore!](https://www.bioinformatics.babraham.ac.uk/projects/trim_galore/) +- [Trim Galore!](https://github.com/FelixKrueger/TrimGalore) - [UMI-tools](https://pubmed.ncbi.nlm.nih.gov/28100584/) diff --git a/README.md b/README.md index d7e914e..d24c4e5 100644 --- a/README.md +++ b/README.md @@ -19,13 +19,13 @@ ## Introduction -**nf-core/riboseq** is a bioinformatics pipeline for analysis of ribo-seq data. It borrows heavily from nf-core/rnaseq in the preprocessing stages: +**nf-core/riboseq** is a bioinformatics pipeline for analysis of Ribo-seq data. It borrows heavily from nf-core/rnaseq in the preprocessing stages: 1. Merge re-sequenced FastQ files ([`cat`](http://www.linfo.org/cat.html)) 2. Sub-sample FastQ files and auto-infer strandedness ([`fq`](https://github.com/stjude-rust-labs/fq), [`Salmon`](https://combine-lab.github.io/salmon/)) 3. Read QC ([`FastQC`](https://www.bioinformatics.babraham.ac.uk/projects/fastqc/)) 4. UMI extraction ([`UMI-tools`](https://github.com/CGATOxford/UMI-tools)) -5. Adapter and quality trimming ([`Trim Galore!`](https://www.bioinformatics.babraham.ac.uk/projects/trim_galore/)) +5. Adapter and quality trimming ([`Trim Galore!`](https://github.com/FelixKrueger/TrimGalore)) 6. Removal of genome contaminants ([`BBSplit`](http://seqanswers.com/forums/showthread.php?t=41288)) 7. Removal of ribosomal RNA ([`SortMeRNA`](https://github.com/biocore/sortmerna)) 8. Genome alignment of reads, outputting both genome and transcriptome alignments with [`STAR`](https://github.com/alexdobin/STAR) @@ -53,7 +53,7 @@ sample,fastq_1,fastq_2,strandedness,type CONTROL_REP1,AEG588A1_S1_L002_R1_001.fastq.gz,AEG588A1_S1_L002_R2_001.fastq.gz,forward,riboseq ``` -Each row represents a fastq file (single-end) or a pair of fastq files (paired end). Each row should have a 'type' value of `riboseq`, `tiseq` or `rnaseq`. Future iterations of the workflow will conduct paired analysis of matched riboseq and rnaseq samples to accomplish analysis types such as 'translational efficiency, but in the current version you should set this to `riboseq` or `tiseq` for reglar ribo-seq or TI-seq data respectively. +Each row represents a fastq file (single-end) or a pair of fastq files (paired end). Each row should have a 'type' value of `riboseq`, `tiseq` or `rnaseq`. Future iterations of the workflow will conduct paired analysis of matched riboseq and rnaseq samples to accomplish analysis types such as 'translational efficiency, but in the current version you should set this to `riboseq` or `tiseq` for reglar Ribo-seq or TI-seq data respectively. Now, you can run the pipeline using: @@ -98,10 +98,10 @@ For more details about the output files and reports, please refer to the ## Credits -nf-core/riboseq was originally written by [Jonathan Manning](https://github.com/pinin4fjords) (Bioinformatics Engineer at Seqera) with support from [Altos labs](https://www.altoslabs.com/) and in discussion with [Felix Krueger](https://github.com/FelixKrueger) and [Christel Krueger](https://github.com/ChristelKrueger). We thank the following people for their input: +nf-core/riboseq was originally written by [Jonathan Manning](https://github.com/pinin4fjords) (Bioinformatics Engineer at Seqera) with support from [Altos Labs](https://www.altoslabs.com/) and in discussion with [Felix Krueger](https://github.com/FelixKrueger) and [Christel Krueger](https://github.com/ChristelKrueger). We thank the following people for their input: - Anne Bresciani (ZS) -- [Felibe Almeida](https://github.com/fmalmeida) (ZS) +- [Felipe Almeida](https://github.com/fmalmeida) (ZS) - [Mikhail Osipovitch](https://github.com/mosi223) (ZS) - [Edward Wallace](https://github.com/ewallace) (University of Edinburgh) - [Jack Tierney](https://github.com/JackCurragh) (University College Cork) diff --git a/assets/email_template.html b/assets/email_template.html index 5033940..aeaecab 100644 --- a/assets/email_template.html +++ b/assets/email_template.html @@ -4,7 +4,7 @@ - + nf-core/riboseq Pipeline Report From 2ba4a5e2ee37d3a8e4f5870326baccd80e05ae66 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 11:28:55 +0100 Subject: [PATCH 08/19] Ribo-Seq to Ribo-seq --- nextflow.config | 2 +- nextflow_schema.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nextflow.config b/nextflow.config index cd909cb..3427c24 100644 --- a/nextflow.config +++ b/nextflow.config @@ -299,7 +299,7 @@ manifest { name = 'nf-core/riboseq' author = """Maxime U Garcia""" homePage = 'https://github.com/nf-core/riboseq' - description = """Analysis of ribosome profiling, or Ribo-Seq (also named ribosome footprinting)""" + description = """Analysis of ribosome profiling, or Ribo-seq (also named ribosome footprinting)""" mainScript = 'main.nf' nextflowVersion = '!>=23.04.0' version = '1.0.0' diff --git a/nextflow_schema.json b/nextflow_schema.json index c163f2e..db341c4 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema", "$id": "https://raw.githubusercontent.com/nf-core/riboseq/master/nextflow_schema.json", "title": "nf-core/riboseq pipeline parameters", - "description": "Analysis of ribosome profiling, or Ribo-Seq (also named ribosome footprinting)", + "description": "Analysis of ribosome profiling, or Ribo-seq (also named ribosome footprinting)", "type": "object", "definitions": { "input_output_options": { From d2f35d3b39cd8087428ee149c35380239f2ddba7 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 11:33:05 +0100 Subject: [PATCH 09/19] Remove null index options- problematic in Platform --- nextflow.config | 2 -- 1 file changed, 2 deletions(-) diff --git a/nextflow.config b/nextflow.config index 3427c24..5672273 100644 --- a/nextflow.config +++ b/nextflow.config @@ -50,7 +50,6 @@ params { skip_bbsplit = true // Ribosomal RNA removal - sortmerna_index = false remove_ribo_rna = true save_non_ribo_reads = false ribo_database_manifest = "${projectDir}/assets/rrna-db-defaults.txt" @@ -61,7 +60,6 @@ params { seq_center = null bam_csi_index = false star_ignore_sjdbgtf = false - salmon_index = null salmon_quant_libtype = null min_mapped_reads = 5 extra_star_align_args = null From d0ac86694f503a88fb4bd56c6ee59f647c4a3857 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 11:57:58 +0100 Subject: [PATCH 10/19] Increase retries --- conf/base.config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/base.config b/conf/base.config index 61000cb..8caa4ac 100644 --- a/conf/base.config +++ b/conf/base.config @@ -15,7 +15,7 @@ process { time = { check_max( 4.h * task.attempt, 'time' ) } errorStrategy = { task.exitStatus in ((130..145) + 104) ? 'retry' : 'finish' } - maxRetries = 1 + maxRetries = 2 maxErrors = '-1' // Process-specific resource requirements From 8c3052f477a8706cac9f67006cf636077ca5bfbd Mon Sep 17 00:00:00 2001 From: Felix Krueger Date: Fri, 12 Apr 2024 13:47:13 +0200 Subject: [PATCH 11/19] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 934d371..c3af4da 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,7 +27,7 @@ Initial release of nf-core/riboseq, created with the [nf-core](https://nf-co.re/ - [#46](https://github.com/nf-core/riboseq/pull/46) - Prerelease changes v1.0.0 ([@pinin4fjords](https://github.com/pinin4fjords), review by [@FelixKrueger](https://github.com/FelixKrueger)) - [#48](https://github.com/nf-core/riboseq/pull/48) - Remove stub option from download in CI ([@pinin4fjords](https://github.com/pinin4fjords), review by [@maxulysse](https://github.com/maxulysse)) - [#49](https://github.com/nf-core/riboseq/pull/49) - Fix CI ([@pinin4fjords](https://github.com/pinin4fjords), review by [@adamrtalbot](https://github.com/adamrtalbot)) -- [#50](https://github.com/nf-core/riboseq/pull/50) - V1.0.0 release review fixes ([@pinin4fjords](https://github.com/pinin4fjords), review by) +- [#50](https://github.com/nf-core/riboseq/pull/50) - V1.0.0 release review fixes ([@pinin4fjords](https://github.com/pinin4fjords), review by [@FelixKrueger](https://github.com/FelixKrueger)) ### `Added` From 80d4f995320ea2b25220ff6c31f901a038b4b3a0 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 13:57:34 +0100 Subject: [PATCH 12/19] Update copyright --- LICENSE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE b/LICENSE index fa54ba9..dfca20a 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) Maxime U Garcia +Copyright (c) Jonathan Manning Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal From 083e23e9ad65273859756cb58aa33fd97e555a11 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 14:28:08 +0100 Subject: [PATCH 13/19] Remove multiqc aligner subdir --- docs/output.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/output.md b/docs/output.md index 74a7977..36e4cb7 100644 --- a/docs/output.md +++ b/docs/output.md @@ -356,7 +356,7 @@ By plotting fold changes for RNA-seq and Ribo-seq data against one another this
Output files -- `multiqc//` +- `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. From d10dbe210e98b9cb4e1050752c5361d2911842e5 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 14:29:45 +0100 Subject: [PATCH 14/19] Fix UMIs docs --- docs/usage.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/usage.md b/docs/usage.md index 1b291e2..b269f3a 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -71,9 +71,9 @@ When specifying `contrasts` to perform a translational efficiency analysis (see The pipeline currently uses [STAR](https://github.com/alexdobin/STAR) to map the raw FastQ reads to the reference genome and project the alignments onto the transcriptome. STAR is fast but requires a lot of memory to run, typically around 38GB for the Human GRCh37 reference genome. -### Unique Molecular Identifiers (UMI) +### Unique Molecular Identifiers (UMIs) -The pipeline supports Unique Molecular Identifiers to increase the accuracy of the quantification. UMIs are short sequences used to uniquely tag each molecule in a sample library and facilitate the accurate identification of read duplicates. They must be added during library preparation and prior to sequencing, therefore require appropriate arrangements with your sequencing provider. +The pipeline supports UMIs to increase the accuracy of the quantification. UMIs are short sequences used to uniquely tag each molecule in a sample library and facilitate the accurate identification of read duplicates. They must be added during library preparation and prior to sequencing, therefore require appropriate arrangements with your sequencing provider. To take UMIs into consideration during a workflow run, specify the `--with_umi` parameter. The pipeline currently supports UMIs, which are embedded within a read's sequence and UMIs, whose sequence is given inside the read's name. Please consult your kit's manual and/or contact your sequencing provider regarding the exact specification. From 92499723f49464d1647971bfe1e5a29e6bdf21f1 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 14:30:52 +0100 Subject: [PATCH 15/19] update author --- nextflow.config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nextflow.config b/nextflow.config index 5672273..83397e4 100644 --- a/nextflow.config +++ b/nextflow.config @@ -295,7 +295,7 @@ dag { manifest { name = 'nf-core/riboseq' - author = """Maxime U Garcia""" + author = """Jonathan Manning""" homePage = 'https://github.com/nf-core/riboseq' description = """Analysis of ribosome profiling, or Ribo-seq (also named ribosome footprinting)""" mainScript = 'main.nf' From e3d45f4567bdc2f807080820d9acb8fef58a942b Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 14:35:01 +0100 Subject: [PATCH 16/19] Don't need subworkflows/local/prepare_genome/nextflow.config --- .../local/prepare_genome/nextflow.config | 97 ------------------- 1 file changed, 97 deletions(-) delete mode 100644 subworkflows/local/prepare_genome/nextflow.config diff --git a/subworkflows/local/prepare_genome/nextflow.config b/subworkflows/local/prepare_genome/nextflow.config deleted file mode 100644 index 7ac6a8b..0000000 --- a/subworkflows/local/prepare_genome/nextflow.config +++ /dev/null @@ -1,97 +0,0 @@ -process { - withName: 'GUNZIP_.*|MAKE_TRANSCRIPTS_FASTA' { - publishDir = [ - path: { params.save_reference ? "${params.outdir}/genome" : params.outdir }, - mode: params.publish_dir_mode, - saveAs: { filename -> (filename != 'versions.yml' && params.save_reference) ? filename : null } - ] - } - - withName: 'UNTAR_.*' { - ext.args2 = '--no-same-owner' - } - - withName: 'UNTAR_.*|STAR_GENOMEGENERATE|STAR_GENOMEGENERATE_IGENOMES|HISAT2_BUILD' { - publishDir = [ - path: { params.save_reference ? "${params.outdir}/genome/index" : params.outdir }, - mode: params.publish_dir_mode, - saveAs: { filename -> (filename != 'versions.yml' && params.save_reference) ? filename : null } - ] - } - - withName: 'GFFREAD' { - ext.args = '--keep-exon-attrs -F -T' - publishDir = [ - path: { params.save_reference ? "${params.outdir}/genome" : params.outdir }, - mode: params.publish_dir_mode, - saveAs: { filename -> (filename != 'versions.yml' && params.save_reference) ? filename : null } - ] - } - - withName: 'SALMON_INDEX' { - ext.args = { [ - params.gencode ? '--gencode' : '', - params.pseudo_aligner_kmer_size ? "-k ${params.pseudo_aligner_kmer_size}": '' - ].join(' ').trim() } - publishDir = [ - path: { params.save_reference ? "${params.outdir}/genome/index" : params.outdir }, - mode: params.publish_dir_mode, - saveAs: { filename -> (filename != 'versions.yml' && params.save_reference) ? filename : null } - ] - } - - withName: 'RSEM_PREPAREREFERENCE_GENOME' { - ext.args = '--star' - publishDir = [ - path: { params.save_reference ? "${params.outdir}/genome/index" : params.outdir }, - mode: params.publish_dir_mode, - saveAs: { filename -> (filename != 'versions.yml' && params.save_reference) ? filename : null } - ] - } - - withName: 'GTF2BED' { - publishDir = [ - path: { params.save_reference ? "${params.outdir}/genome" : params.outdir }, - mode: params.publish_dir_mode, - saveAs: { filename -> (filename != 'versions.yml' && params.save_reference) ? filename : null } - ] - } - - withName: 'CAT_ADDITIONAL_FASTA|PREPROCESS_TRANSCRIPTS_FASTA_GENCODE' { - publishDir = [ - path: { params.save_reference ? "${params.outdir}/genome" : params.outdir }, - mode: params.publish_dir_mode, - saveAs: { filename -> (filename != 'versions.yml' && params.save_reference) ? filename : null } - ] - } - - withName: 'GTF_FILTER' { - ext.args = { params.skip_gtf_transcript_filter ?: '--skip_transcript_id_check' } - publishDir = [ - path: { params.save_reference ? "${params.outdir}/genome" : params.outdir }, - mode: params.publish_dir_mode, - saveAs: { filename -> (filename != 'versions.yml' && params.save_reference) ? filename : null } - ] - } - - withName: 'CUSTOM_GETCHROMSIZES' { - publishDir = [ - path: { params.save_reference ? "${params.outdir}/genome" : params.outdir }, - mode: params.publish_dir_mode, - saveAs: { filename -> (filename != 'versions.yml' && params.save_reference) ? filename : null } - ] - } -} - -if (!params.skip_bbsplit && params.bbsplit_fasta_list) { - process { - withName: 'PREPARE_GENOME:BBMAP_BBSPLIT' { - ext.args = 'build=1' - publishDir = [ - path: { params.save_reference ? "${params.outdir}/genome/index" : params.outdir }, - mode: params.publish_dir_mode, - saveAs: { filename -> (filename != 'versions.yml' && params.save_reference) ? filename : null } - ] - } - } -} From 42a4b8a0436030f3e2638cbe85f0be2babb2c028 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 14:52:18 +0100 Subject: [PATCH 17/19] Fix anota2seq versions --- workflows/riboseq/main.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workflows/riboseq/main.nf b/workflows/riboseq/main.nf index 101b11c..b12659e 100644 --- a/workflows/riboseq/main.nf +++ b/workflows/riboseq/main.nf @@ -351,7 +351,7 @@ workflow RIBOSEQ { ch_contrasts, ch_samplesheet_matrix ) - ch_versions = ch_versions.mix(QUANTIFY_STAR_SALMON.out.versions) + ch_versions = ch_versions.mix(ANOTA2SEQ_ANOTA2SEQRUN.out.versions) } // From d03b2a01b11fa1208bc3817604268973c2e2d4fe Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 15:10:11 +0100 Subject: [PATCH 18/19] Add missing versions mixes --- workflows/riboseq/main.nf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/workflows/riboseq/main.nf b/workflows/riboseq/main.nf index b12659e..4c2bde2 100644 --- a/workflows/riboseq/main.nf +++ b/workflows/riboseq/main.nf @@ -292,6 +292,7 @@ workflow RIBOSEQ { ribotish_predict_inputs.offset, [[:],[]] ) + ch_versions = ch_versions.mix(RIBOTISH_PREDICT_INDIVIDUAL.out.versions) RIBOTISH_PREDICT_ALL( ribotish_predict_inputs.bam.map{meta, bam, bai -> [[id:'allsamples'], bam, bai]}.groupTuple(), @@ -301,17 +302,20 @@ workflow RIBOSEQ { ribotish_predict_inputs.offset.map{meta, offset -> [[id:'allsamples'], offset]}.groupTuple(), [[:],[]] ) + ch_versions = ch_versions.mix(RIBOTISH_PREDICT_ALL.out.versions) } if (!params.skip_ribotricer){ RIBOTRICER_PREPAREORFS( ch_fasta_gtf ) + ch_versions = ch_versions.mix(RIBOTRICER_PREPAREORFS.out.versions) RIBOTRICER_DETECTORFS( ch_bams_for_analysis, RIBOTRICER_PREPAREORFS.out.candidate_orfs ) + ch_versions = ch_versions.mix(RIBOTRICER_DETECTORFS.out.versions) } // From 0641734a697bf1cc4bf89c30474da08ce55a2be5 Mon Sep 17 00:00:00 2001 From: Jonathan Manning Date: Fri, 12 Apr 2024 15:17:37 +0100 Subject: [PATCH 19/19] Update CHANGELOG --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9a183ea..05e0d79 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -36,6 +36,7 @@ Initial release of nf-core/riboseq, created with the [nf-core](https://nf-co.re/ - [#45](https://github.com/nf-core/riboseq/pull/45) - Update CI from rnaseq, strip unused rnaseq components ([@pinin4fjords](https://github.com/pinin4fjords), review by [@jfy133](https://github.com/jfy133)) - [#48](https://github.com/nf-core/riboseq/pull/48) - Remove stub option from download in CI ([@pinin4fjords](https://github.com/pinin4fjords), review by [@maxulysse](https://github.com/maxulysse)) - [#49](https://github.com/nf-core/riboseq/pull/49) - Fix CI ([@pinin4fjords](https://github.com/pinin4fjords), review by [@adamrtalbot](https://github.com/adamrtalbot)) +- [#50](https://github.com/nf-core/riboseq/pull/50) - V1.0.0 release review fixes ([@pinin4fjords](https://github.com/pinin4fjords), review by [@maxulysse](https://github.com/maxulysse)) ### `Dependencies`