Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
105 commits
Select commit Hold shift + click to select a range
5a7079c
back to dev + nft-utils 0.0.4
maxulysse Jun 10, 2025
e555276
update CHANGELOG
maxulysse Jun 10, 2025
c396509
update CHANGELOG
maxulysse Jun 10, 2025
302669a
Merge pull request #1568 from maxulysse/back_to_dev
maxulysse Jun 10, 2025
952696c
ignore umi_dedup.transcriptome.sorted.log, only umi_dedup.sorted.log
idot Jun 17, 2025
58e7357
changelog
idot Jun 17, 2025
4d8ff15
changelog PR# correct
idot Jun 17, 2025
27673fb
[GH-1572] Fix salmon.merged.SummarizedExperiment.rds name collision
GallVp Jun 20, 2025
330c0ea
Updated changelog
GallVp Jun 20, 2025
11e1a15
Template update for nf-core/tools version 3.3.2
nf-core-bot Jul 8, 2025
4579dbf
Update awsfulltest.yml to restore aligner-wise output
pinin4fjords Jul 23, 2025
d7f8104
Update CHANGELOG.md
pinin4fjords Jul 23, 2025
00eb779
Merge branch 'dev' into restore_aligner_testfull_output
pinin4fjords Jul 23, 2025
96fb040
Poke CI
pinin4fjords Jul 23, 2025
93452bc
Merge pull request #1585 from nf-core/restore_aligner_testfull_output
pinin4fjords Jul 24, 2025
807fd19
install sentieon/staralign
FriederikeHanssen Aug 11, 2025
7636eb6
add args to sentieon_align_star
FriederikeHanssen Aug 12, 2025
c02c684
add sentieon secrets to ci
FriederikeHanssen Aug 12, 2025
8c8599d
add sentieon secrets
FriederikeHanssen Aug 12, 2025
82c38be
revert changes from schema builder
FriederikeHanssen Aug 12, 2025
fddcc5b
snapshots
FriederikeHanssen Aug 12, 2025
a4dace5
add auth_mech env var
FriederikeHanssen Aug 12, 2025
f4f5a18
sentieon star uses old style args
FriederikeHanssen Aug 12, 2025
7cc752e
Merge branch 'dev' into nf-core-template-merge-3.3.2
maxulysse Aug 12, 2025
806ef68
pre-commit
maxulysse Aug 12, 2025
06d2c07
forgot merge conflicts
maxulysse Aug 12, 2025
1f044f5
add more env vars
FriederikeHanssen Aug 12, 2025
f8f79b2
update nft-utils
maxulysse Aug 12, 2025
9f2f8ce
fix versions checksum
FriederikeHanssen Aug 12, 2025
05f43c3
update snapshot
maxulysse Aug 12, 2025
be418ff
update CHANGELOG
maxulysse Aug 12, 2025
a068046
update all snap
maxulysse Aug 12, 2025
9598559
salmon_deseq2_clustering and salmon_deseq2_pca
maxulysse Aug 12, 2025
38b285e
star_salmon_deseq2_clustering and star_salmon_deseq2_pca
maxulysse Aug 12, 2025
8522d1f
Update tests/.nftignore
maxulysse Aug 12, 2025
fae2eeb
restore snap
maxulysse Aug 12, 2025
8b725ca
Merge pull request #1580 from nf-core/nf-core-template-merge-3.3.2
maxulysse Aug 12, 2025
9452604
Merge branch 'dev' into add_sentieon_star
FriederikeHanssen Aug 12, 2025
fc3cab4
fix version
FriederikeHanssen Aug 12, 2025
0799db8
snapshots
FriederikeHanssen Aug 12, 2025
ff9b53a
refactor code since sentieon star uses same syntax as igenomes star
FriederikeHanssen Aug 12, 2025
e0351a6
add license usage docs
FriederikeHanssen Aug 12, 2025
411645c
update changelog
FriederikeHanssen Aug 12, 2025
f96bdc7
add complete pipeline test with sentieon
FriederikeHanssen Aug 12, 2025
6163917
checksum order
FriederikeHanssen Aug 12, 2025
752e85d
test out symlinking sentieon star in rsem
FriederikeHanssen Aug 12, 2025
476d022
add tests for symlinking star in rsem
FriederikeHanssen Aug 12, 2025
26703b9
add sentieon env vars to subworkflow test
FriederikeHanssen Aug 13, 2025
c3ff26a
update version chcksum
FriederikeHanssen Aug 13, 2025
a6958f5
add stub test
FriederikeHanssen Aug 13, 2025
679d699
add pipeline level test
FriederikeHanssen Aug 13, 2025
f55fccc
add sentieon license vars to pipeline level tests
FriederikeHanssen Aug 13, 2025
5be778d
replace local module with nf-core module
FriederikeHanssen Aug 13, 2025
59978b6
update module name in configs
FriederikeHanssen Aug 13, 2025
17b525d
add sentieon support for prepare_genome
FriederikeHanssen Aug 13, 2025
004e8ea
update README with reference to sentieon for STAR
FriederikeHanssen Aug 13, 2025
d17cafc
add subworkflow level tests
FriederikeHanssen Aug 13, 2025
c8122ee
add snapshots
FriederikeHanssen Aug 13, 2025
3a09fc4
fix test names in snapshots
FriederikeHanssen Aug 13, 2025
b0e7744
update rocrate
FriederikeHanssen Aug 13, 2025
dfc56ee
quotes
FriederikeHanssen Aug 13, 2025
af42ef3
add config for sentieon rsem_prepare
FriederikeHanssen Aug 13, 2025
62cde8b
add maketranscript refs
FriederikeHanssen Aug 13, 2025
5445d6d
fix mixed checksums
FriederikeHanssen Aug 13, 2025
54f20dc
Merge branch 'dev' into fix/1572
pinin4fjords Aug 13, 2025
f4c6058
Merge branch 'dev' into mqc_umitools_genomic_only
pinin4fjords Aug 13, 2025
88e05e4
remove excess whitespace
pinin4fjords Aug 13, 2025
a6264b2
Merge pull request #1573 from GallVp/fix/1572
pinin4fjords Aug 13, 2025
4536e45
Merge branch 'dev' into mqc_umitools_genomic_only
pinin4fjords Aug 13, 2025
00364d0
Merge pull request #1571 from idot/mqc_umitools_genomic_only
pinin4fjords Aug 13, 2025
3bc2151
Merge branch 'dev' into add_sentieon_star
maxulysse Aug 13, 2025
ddfbee8
Apply suggestions from code review
FriederikeHanssen Aug 13, 2025
d0c7eba
move license script to .github.actions
FriederikeHanssen Aug 13, 2025
43abdc7
fix comment alignment
FriederikeHanssen Aug 13, 2025
9450a5c
rename use_sentieon to use_sentieon_star
FriederikeHanssen Aug 13, 2025
9e00a4d
test process name reassignment
FriederikeHanssen Aug 14, 2025
74f7d4d
test renaming
FriederikeHanssen Aug 14, 2025
107f668
revert process renaming tests
FriederikeHanssen Aug 14, 2025
5f45235
assign output name
FriederikeHanssen Aug 14, 2025
3cf1b7b
Address reviews from @pinin4fjords & reduce one level of if statements
FriederikeHanssen Aug 14, 2025
c0bfbd2
add link to modules tested to address review by @edmundmiller
FriederikeHanssen Aug 14, 2025
e81774e
simplify logic
FriederikeHanssen Aug 14, 2025
9c108af
clean up code
FriederikeHanssen Aug 14, 2025
b33be90
fix syntax error
FriederikeHanssen Aug 14, 2025
195550b
propagate changes from #1573 to a number of other tests
FriederikeHanssen Aug 14, 2025
d6d32cb
set multi_channel initialisation to null
FriederikeHanssen Aug 14, 2025
fda153f
fix order
FriederikeHanssen Aug 14, 2025
f228324
more odering
FriederikeHanssen Aug 14, 2025
75ded6e
Merge pull request #1590 from nf-core/add_sentieon_star
FriederikeHanssen Aug 14, 2025
0a3f20b
update changelog
FriederikeHanssen Aug 14, 2025
ba216f4
Consistent naming for summarizedexperiment outputs
pinin4fjords Aug 14, 2025
d4fed11
Should be a minor release
pinin4fjords Aug 14, 2025
03f105e
Fix multiqc config
pinin4fjords Aug 14, 2025
9f1c33f
prettier
pinin4fjords Aug 14, 2025
5497960
Fix orderings
pinin4fjords Aug 14, 2025
6bf3f92
More sorting fixes
pinin4fjords Aug 14, 2025
ecf013d
Hopefully last sort fix
pinin4fjords Aug 14, 2025
eabd4b0
Fix version in nextflow.config
pinin4fjords Aug 14, 2025
06a78fb
Merge pull request #1592 from nf-core/prep_release
pinin4fjords Aug 14, 2025
767a9cc
Exclude unstable star_rsem PCAs from snaps
pinin4fjords Aug 15, 2025
a0894b4
Update changelog
pinin4fjords Aug 15, 2025
18fd3e8
Merge pull request #1594 from nf-core/exclude_star_rsem_pca_from_snaps
maxulysse Aug 15, 2025
4892865
Exclude unstable star_rsem clusterings from snaps
pinin4fjords Aug 15, 2025
b249b2f
Update changelog
pinin4fjords Aug 15, 2025
eb070e1
Merge pull request #1595 from nf-core/exclude_star_rsem_clustering_fr…
maxulysse Aug 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 10 additions & 2 deletions .github/actions/nf-test/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,12 +54,20 @@ runs:
conda-solver: libmamba
conda-remove-defaults: true

# TODO Skip failing conda tests and document their failures
# https://github.com/nf-core/modules/issues/7017
# Set up secrets
- name: Set up Nextflow secrets
if: env.SENTIEON_ENCRYPTION_KEY != '' && env.SENTIEON_LICENSE_MESSAGE != ''
shell: bash
run: |
python -m pip install cryptography
nextflow secrets set SENTIEON_AUTH_DATA $(python3 .github/actions/nf-test/license_message.py encrypt --key "$SENTIEON_ENCRYPTION_KEY" --message "$SENTIEON_LICENSE_MESSAGE")

- name: Run nf-test
shell: bash
env:
NFT_WORKDIR: ${{ env.NFT_WORKDIR }}
SENTIEON_LICSRVR_IP: ${{ env.SENTIEON_LICSRVR_IP }}
SENTIEON_AUTH_MECH: "GitHub Actions - token"
run: |
nf-test test \
--profile=+${{ inputs.profile }} \
Expand Down
113 changes: 113 additions & 0 deletions .github/actions/nf-test/license_message.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
#!/usr/bin/env python3

#########################################
# Author: [DonFreed](https://github.com/DonFreed)
# File: license_message.py
# Source: https://github.com/DonFreed/docker-actions-test/blob/main/.github/scripts/license_message.py
# Source+commit: https://github.com/DonFreed/docker-actions-test/blob/aa1051a9f53b3a1e801953748d062cad74dca9a9/.github/scripts/license_message.py
# Download Date: 2023-07-04, commit: aa1051a
# This source code is licensed under the BSD 2-Clause license
#########################################

"""
Functions for generating and sending license messages
"""

# Modified from - https://stackoverflow.com/a/59835994

import argparse
import base64
import calendar
import re
import secrets
import sys

from cryptography.hazmat.primitives.ciphers.aead import AESGCM
from datetime import datetime as dt

MESSAGE_TIMEOUT = 60 * 60 * 24 # Messages are valid for 1 day
NONCE_BYTES = 12


class DecryptionTimeout(Exception):
# Decrypting a message that is too old
pass


def generate_key():
key = secrets.token_bytes(32)
return key


def handle_generate_key(args):
key = generate_key()
key_b64 = base64.b64encode(key)
print(key_b64.decode("utf-8"), file=args.outfile)


def encrypt_message(key, message):
nonce = secrets.token_bytes(NONCE_BYTES)
timestamp = calendar.timegm(dt.now().utctimetuple())
data = timestamp.to_bytes(10, byteorder="big") + b"__" + message
ciphertext = nonce + AESGCM(key).encrypt(nonce, data, b"")
return ciphertext


def handle_encrypt_message(args):
key = base64.b64decode(args.key.encode("utf-8"))
message = args.message.encode("utf-8")
ciphertext = encrypt_message(key, message)
ciphertext_b64 = base64.b64encode(ciphertext)
print(ciphertext_b64.decode("utf-8"), file=args.outfile)


def decrypt_message(key, ciphertext, timeout=MESSAGE_TIMEOUT):
nonce, ciphertext = ciphertext[:NONCE_BYTES], ciphertext[NONCE_BYTES:]
message = AESGCM(key).decrypt(nonce, ciphertext, b"")

msg_timestamp, message = re.split(b"__", message, maxsplit=1)
msg_timestamp = int.from_bytes(msg_timestamp, byteorder="big")
timestamp = calendar.timegm(dt.now().utctimetuple())
if (timestamp - msg_timestamp) > timeout:
raise DecryptionTimeout("The message has an expired timeout")
return message.decode("utf-8")


def handle_decrypt_message(args):
key = base64.b64decode(args.key.encode("utf-8"))
ciphertext = base64.b64decode(args.message.encode("utf-8"))
message = decrypt_message(key, ciphertext, timeout=args.timeout)
print(str(message), file=args.outfile)


def parse_args(argv=None):
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("--outfile", default=sys.stdout, type=argparse.FileType("w"), help="The output file")

subparsers = parser.add_subparsers(help="Available sub-commands")

gen_parser = subparsers.add_parser("generate_key", help="Generate a random key string")
gen_parser.set_defaults(func=handle_generate_key)

encrypt_parser = subparsers.add_parser("encrypt", help="Encrypt a message")
encrypt_parser.add_argument("--key", required=True, help="The encryption key")
encrypt_parser.add_argument("--message", required=True, help="Message to encrypt")
encrypt_parser.set_defaults(func=handle_encrypt_message)

decrypt_parser = subparsers.add_parser("decrypt", help="Decyrpt a message")
decrypt_parser.add_argument("--key", required=True, help="The encryption key")
decrypt_parser.add_argument("--message", required=True, help="Message to decrypt")
decrypt_parser.add_argument(
"--timeout",
default=MESSAGE_TIMEOUT,
type=int,
help="A message timeout. Decryption will fail for older messages",
)
decrypt_parser.set_defaults(func=handle_decrypt_message)

return parser.parse_args(argv)


if __name__ == "__main__":
args = parse_args()
args.func(args)
2 changes: 1 addition & 1 deletion .github/workflows/awsfulltest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
{
"hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}",
"aligner": "${{ matrix.aligner }}",
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/rnaseq/results-${{ steps.revision.outputs.revision }}"
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/rnaseq/results-${{ steps.revision.outputs.revision }}/aligner_${{ matrix.aligner }}/"
}
profiles: test_full

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4

- name: Set up Python 3.12
- name: Set up Python 3.13
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
with:
python-version: "3.13"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/linting_comment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download lint results
uses: dawidd6/action-download-artifact@4c1e823582f43b179e2cbb49c3eade4e41f992e2 # v10
uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
with:
workflow: linting.yml
workflow_conclusion: completed
Expand Down
49 changes: 27 additions & 22 deletions .github/workflows/nf-test.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
name: Run nf-test
on:
push:
paths-ignore:
- "docs/**"
- "**/meta.yml"
- "**/*.md"
- "**/*.png"
- "**/*.svg"
pull_request:
paths-ignore:
- "docs/**"
Expand Down Expand Up @@ -37,7 +30,7 @@ jobs:
nf-test-changes:
name: nf-test-changes
runs-on: # use self-hosted runners
- runs-on=$-nf-test-changes
- runs-on=${{ github.run_id }}-nf-test-changes
- runner=4cpu-linux-x64
outputs:
shard: ${{ steps.set-shards.outputs.shard }}
Expand Down Expand Up @@ -71,7 +64,7 @@ jobs:
needs: [nf-test-changes]
if: ${{ needs.nf-test-changes.outputs.total_shards != '0' }}
runs-on: # use self-hosted runners
- runs-on=$-nf-test
- runs-on=${{ github.run_id }}-nf-test
- runner=4cpu-linux-x64
strategy:
fail-fast: false
Expand All @@ -87,7 +80,7 @@ jobs:
- isMain: false
profile: "singularity"
NXF_VER:
- "24.04.2"
- "24.10.5"
- "latest-everything"
env:
NXF_ANSI_LOG: false
Expand All @@ -99,23 +92,43 @@ jobs:
fetch-depth: 0

- name: Run nf-test
id: run_nf_test
uses: ./.github/actions/nf-test
continue-on-error: ${{ matrix.NXF_VER == 'latest-everything' }}
env:
NFT_DIFF: ${{ env.NFT_DIFF }}
NFT_DIFF_ARGS: ${{ env.NFT_DIFF_ARGS }}
NFT_WORKDIR: ${{ env.NFT_WORKDIR }}
SENTIEON_AUTH_MECH: "GitHub Actions - token"
SENTIEON_ENCRYPTION_KEY: ${{ secrets.SENTIEON_ENCRYPTION_KEY }}
SENTIEON_LICENSE_MESSAGE: ${{ secrets.SENTIEON_LICENSE_MESSAGE }}
SENTIEON_LICSRVR_IP: ${{ secrets.SENTIEON_LICSRVR_IP }}
with:
profile: ${{ matrix.profile }}
shard: ${{ matrix.shard }}
total_shards: ${{ env.TOTAL_SHARDS }}

- name: Report test status
if: ${{ always() }}
run: |
if [[ "${{ steps.run_nf_test.outcome }}" == "failure" ]]; then
echo "::error::Test with ${{ matrix.NXF_VER }} failed"
# Add to workflow summary
echo "## ❌ Test failed: ${{ matrix.profile }} | ${{ matrix.NXF_VER }} | Shard ${{ matrix.shard }}/${{ env.TOTAL_SHARDS }}" >> $GITHUB_STEP_SUMMARY
if [[ "${{ matrix.NXF_VER }}" == "latest-everything" ]]; then
echo "::warning::Test with latest-everything failed but will not cause workflow failure. Please check if the error is expected or if it needs fixing."
fi
if [[ "${{ matrix.NXF_VER }}" != "latest-everything" ]]; then
exit 1
fi
fi

confirm-pass:
needs: [nf-test]
if: always()
runs-on: # use self-hosted runners
- runs-on=$-confirm-pass
- runs-on=${{ github.run_id }}-confirm-pass
- runner=2cpu-linux-x64
steps:
- name: One or more tests failed
- name: One or more tests failed (excluding latest-everything)
if: ${{ contains(needs.*.result, 'failure') }}
run: exit 1

Expand All @@ -134,11 +147,3 @@ jobs:
echo "DEBUG: toJSON(needs) = ${{ toJSON(needs) }}"
echo "DEBUG: toJSON(needs.*.result) = ${{ toJSON(needs.*.result) }}"
echo "::endgroup::"

- name: Clean Workspace # Purge the workspace in case it's running on a self-hosted runner
if: always()
run: |
ls -la ./
rm -rf ./* || true
rm -rf ./.??* || true
ls -la ./
2 changes: 1 addition & 1 deletion .github/workflows/release-announcements.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
bsky-post:
runs-on: ubuntu-latest
steps:
- uses: zentered/bluesky-post-action@4aa83560bb3eac05dbad1e5f221ee339118abdd2 # v0.2.0
- uses: zentered/bluesky-post-action@6461056ea355ea43b977e149f7bf76aaa572e5e8 # v0.3.0
with:
post: |
Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}!
Expand Down
10 changes: 5 additions & 5 deletions .nf-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,15 @@ lint:
nextflow_config:
- config_defaults:
- params.ribo_database_manifest
nf_core_version: 3.3.1
nf_core_version: 3.3.2
repository_type: pipeline
template:
author: "Harshil Patel, Phil Ewels, Rickard Hammar\xE9n"
description: RNA sequencing analysis pipeline for gene/isoform quantification and
extensive quality control.
author: "Harshil Patel, Phil Ewels, Rickard Hammarén"
Copy link
Contributor

Choose a reason for hiding this comment

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

Just to nitpick, at what point does this pipeline become not 'authored' by these three people?

Copy link
Member

Choose a reason for hiding this comment

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

For me, these are the historic authors.
The contributors list in the manifest in the nextflow.config, reflects everyone.
And the author key has even been removed.
Also this author list has been replaced by the nf-core/rnaseq team in the LICENSE file.
For me, this list in this file, is just a remnant and is due to disappear in future TEMPLATE update.

@mirpedrol could probably confirm if I'm right or not

Copy link
Member

Choose a reason for hiding this comment

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

But the Credits section of the README could get an update, as I believe @pinin4fjords to be the true maintainer of this pipeline.
As I'm now in charge of this release since Jon is away, I'll let it slide and we'll make sure to update this later.
Thanks for nitpicking.
I do believe it's important to properly credit people for their work.

Copy link
Member

Choose a reason for hiding this comment

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

This value should contain the same names that are listed in contributors with the contribution "author", in the manifest of nextflow.config. In fact, when we generate the pipeline from the template we use this to populate the contributors field.
If these names in particular should be listed as authors is a different discussion. To me, authors are the original authors, and can include others if they have contributed significantly (for example on a pipeline rewrite, etc.). But maybe we could discuss this within core-team or maintainers.

Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah, I think this could do with a discussion.

description: RNA sequencing analysis pipeline for gene/isoform quantification
and extensive quality control.
force: false
is_nfcore: true
name: rnaseq
org: nf-core
outdir: .
version: 3.19.0
version: 3.20.0
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ repos:
hooks:
- id: prettier
additional_dependencies:
- prettier@3.5.0
- prettier@3.6.2
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
Expand Down
35 changes: 33 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,37 @@
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

# 3.19.0 - 2025-06-06
## 3.20.0

### Credits

Special thanks to the following for their contributions to the release:

- [Friederike Hanssen](https://github.com/friederikehanssen)
- [Ido Tamir](https://github.com/idot)
- [Jonathan Manning](https://github.com/pinin4fjords)
- [Maxime Garcia](https://github.com/maxulysse)
- [Usman Rashid](https://github.com/GallVp)

### Enhancements & fixes

- [PR #1568](https://github.com/nf-core/rnaseq/pull/1568) - Bump version after release 3.19.0
- [PR #1571](https://github.com/nf-core/rnaseq/pull/1571) - For umitools use only umi_dedup.sorted.log in multiqc_report
- [PR #1573](https://github.com/nf-core/rnaseq/pull/1573) - Fix salmon.merged.SummarizedExperiment.rds name collision
- [PR #1585](https://github.com/nf-core/rnaseq/pull/1585) - Update awsfulltest.yml to restore aligner-wise outputs
- [PR #1580](https://github.com/nf-core/rnaseq/pull/1580) - Template update for nf-core/tools v3.3.2
- [PR #1590](https://github.com/nf-core/rnaseq/pull/1590) - Addition of Sentieon STAR
- [PR #1594](https://github.com/nf-core/rnaseq/pull/1594) - Exclude star rsem pca from snaps
- [PR #1595](https://github.com/nf-core/rnaseq/pull/1595) - Exclude unstable star_rsem clusterings from snaps

### Software dependencies

| Dependency | Old version | New version |
| ---------- | ----------- | ----------- |
| `MultiQC` | 1.29 | 1.30 |
| `Sentieon` | | 202503.01 |

## [[3.19.0](https://github.com/nf-core/rnaseq/releases/tag/3.19.0)] - 2025-06-10

### Credits

Expand All @@ -15,6 +45,7 @@ Special thanks to the following for their contributions to the release:
- [Ben Sherman](https://github.com/bentsherman)
- [Dave Carlson](https://github.com/davidecarlson)
- [Gabriel Lichtenstein](https://github.com/glichtenstein)
- [Jonathan Manning](https://github.com/pinin4fjords)
- [Lorenzo Fontana](https://github.com/fntlnz)
- [Matthias Hörtenhuber](https://github.com/mashehu)
- [Milos Micik](https://github.com/milos7250)
Expand All @@ -41,7 +72,7 @@ Special thanks to the following for their contributions to the release:
- [PR #1565](https://github.com/nf-core/rnaseq/pull/1565) - Improve reproducibility with Conda
- [PR #1567](https://github.com/nf-core/rnaseq/pull/1567) - Prerelease 3.19.0 fixes

# 3.18.0 - 2024-12-19
## [[3.18.0](https://github.com/nf-core/rnaseq/releases/tag/3.18.0)] - 2024-12-19

### Credits

Expand Down
11 changes: 6 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,12 @@
</picture>
</h1>

[![GitHub Actions CI Status](https://github.com/nf-core/rnaseq/actions/workflows/ci.yml/badge.svg)](https://github.com/nf-core/rnaseq/actions/workflows/ci.yml)
[![GitHub Actions Linting Status](https://github.com/nf-core/rnaseq/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/rnaseq/actions/workflows/linting.yml)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/rnaseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.1400710-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.1400710)[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)
[![GitHub Actions CI Status](https://github.com/nf-core/rnaseq/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/rnaseq/actions/workflows/nf-test.yml)
[![GitHub Actions Linting Status](https://github.com/nf-core/rnaseq/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/rnaseq/actions/workflows/linting.yml)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/rnaseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.1400710-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.1400710)
[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)

[![Nextflow](https://img.shields.io/badge/version-%E2%89%A524.04.2-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)
[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.3.1-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.3.1)
[![Nextflow](https://img.shields.io/badge/version-%E2%89%A524.10.5-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)
[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.3.2-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.3.2)
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)
Expand All @@ -32,7 +33,7 @@
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. Choice of multiple alignment and quantification routes:
8. Choice of multiple alignment and quantification routes (_For `STAR` the sentieon implementation can be chosen_):
1. [`STAR`](https://github.com/alexdobin/STAR) -> [`Salmon`](https://combine-lab.github.io/salmon/)
2. [`STAR`](https://github.com/alexdobin/STAR) -> [`RSEM`](https://github.com/deweylab/RSEM)
3. [`HiSAT2`](https://ccb.jhu.edu/software/hisat2/index.shtml) -> **NO QUANTIFICATION**
Expand Down
Loading
Loading