Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
ee6503e
Update nf-schema and ignore igenomes in config (#210)
erikrikarddaniel Jun 11, 2026
e9fd85f
Add species-preference ability (#212)
erikrikarddaniel Jul 28, 2026
c724363
Template update for nf-core/tools 4.0.3, and update nf-core modules a…
erikrikarddaniel Jul 28, 2026
d6618ac
Remove vulnerable PR-comment artifact pattern (#216)
mashehu Jul 28, 2026
dbffd1e
Add Bakta as an alternative to Prokka for genome annotation (#217)
erikrikarddaniel Jul 30, 2026
18cc48c
Add --save_parquet to also write summary tables as Parquet (#219)
erikrikarddaniel Aug 3, 2026
e50c954
Document read-count units and fix brittle R code in COLLECT_STATS/COL…
erikrikarddaniel Aug 3, 2026
737f8b4
Template sync to nf-core/tools 4.1.0 and module updates (#223)
erikrikarddaniel Aug 4, 2026
9761653
Bump version: 1.2.0dev -> 1.2.0 (#224)
erikrikarddaniel Aug 4, 2026
3b21bc0
Remove vulnerable PR-comment artifact pattern (#226)
erikrikarddaniel Aug 4, 2026
338513d
Remove vulnerable PR-comment artifact pattern (#227)
erikrikarddaniel Aug 4, 2026
223d8df
Merge remote-tracking branch 'upstream/master' into dev
erikrikarddaniel Aug 4, 2026
d80e66b
Document potential Prokka/Bakta version drift across a reused store d…
erikrikarddaniel Aug 4, 2026
ae6f0c0
Update CHANGELOG with recent fixes and documentation
erikrikarddaniel Aug 4, 2026
ceb333b
Address review comments: DuckDB citation, Bakta dirs, docs gaps
erikrikarddaniel Aug 6, 2026
4d8686e
Fix COLLECT_GENOMESELECTION not scaling to large genome collections
erikrikarddaniel Aug 10, 2026
d26ca97
Address remaining review comments from vagkaratzas
erikrikarddaniel Aug 10, 2026
5173522
Rename remaining local modules' leftover r-test environment.yml name
erikrikarddaniel Aug 10, 2026
ba3b33f
Address remaining vagkaratzas review items
erikrikarddaniel Aug 10, 2026
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
6 changes: 3 additions & 3 deletions .github/actions/nf-test/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ runs:
using: "composite"
steps:
- name: Setup Nextflow
uses: nf-core/setup-nextflow@b4ec1bc7c16a94435159de94a05253542fddf6ef # v3
uses: nf-core/setup-nextflow@893c28b667aedeba26e37f296d260ccc5bc4d914 # v3
with:
version: "${{ env.NXF_VERSION }}"

- name: Set up Python
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7
with:
python-version: "3.14"

Expand All @@ -37,7 +37,7 @@ runs:

- name: Setup apptainer
if: contains(inputs.profile, 'singularity')
uses: eWaterCycle/setup-apptainer@3f706d898c9db585b1d741b4692e66755f3a1b40 # v2
uses: eWaterCycle/setup-apptainer@3f706d898c9db585b1d741b4692e66755f3a1b40 # v2.0.0

- name: Set up Singularity
if: contains(inputs.profile, 'singularity')
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/clean-up.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
issues: write
pull-requests: write
steps:
- uses: actions/stale@b5d41d4e1d5dceea10e7104786b73624c18a190f # v10
- uses: actions/stale@4391f3da665fdf50b6810c1a66712fb9ba21aa93 # v11
with:
stale-issue-message: "This issue has been tagged as awaiting-changes or awaiting-feedback by an nf-core contributor. Remove stale label or add a comment otherwise this issue will be closed in 20 days."
stale-pr-message: "This PR has been tagged as awaiting-changes or awaiting-feedback by an nf-core contributor. Remove stale label or add a comment if it is still useful."
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/download_pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,21 +39,21 @@ jobs:
needs: configure
steps:
- name: Check out pipeline code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7

- name: Install Nextflow
uses: nf-core/setup-nextflow@b4ec1bc7c16a94435159de94a05253542fddf6ef # v3
uses: nf-core/setup-nextflow@893c28b667aedeba26e37f296d260ccc5bc4d914 # v3

- name: Disk space cleanup
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1

- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7
with:
python-version: "3.14"
architecture: "x64"

- name: Setup Apptainer
uses: eWaterCycle/setup-apptainer@4bb22c52d4f63406c49e94c804632975787312b3 # v2.0.0
uses: eWaterCycle/setup-apptainer@3f706d898c9db585b1d741b4692e66755f3a1b40 # v2
with:
apptainer-version: 1.3.4

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/fix_linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
steps:
# Use the @nf-core-bot token to check out so we can push later
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
with:
token: ${{ secrets.nf_core_bot_auth_token }}

Expand All @@ -32,12 +32,12 @@ jobs:
GITHUB_TOKEN: ${{ secrets.nf_core_bot_auth_token }}

- name: Install Nextflow
uses: nf-core/setup-nextflow@b4ec1bc7c16a94435159de94a05253542fddf6ef # v3
uses: nf-core/setup-nextflow@893c28b667aedeba26e37f296d260ccc5bc4d914 # v3

# Install and run prek
- name: Run prek
id: prek
uses: j178/prek-action@6ad80277337ad479fe43bd70701c3f7f8aa74db3 # v2
uses: j178/prek-action@5337cb91e0fa35a7ff31b9ca345126d8bbbcdf16 # v2
continue-on-error: true

# indication that the linting has finished
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,30 +11,30 @@ jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7

- name: Install Nextflow
uses: nf-core/setup-nextflow@b4ec1bc7c16a94435159de94a05253542fddf6ef # v3
uses: nf-core/setup-nextflow@893c28b667aedeba26e37f296d260ccc5bc4d914 # v3

- name: Run prek
uses: j178/prek-action@6ad80277337ad479fe43bd70701c3f7f8aa74db3 # v2
uses: j178/prek-action@5337cb91e0fa35a7ff31b9ca345126d8bbbcdf16 # v2

nf-core:
runs-on: ubuntu-latest
steps:
- name: Check out pipeline code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7

- name: Install Nextflow
uses: nf-core/setup-nextflow@b4ec1bc7c16a94435159de94a05253542fddf6ef # v3
uses: nf-core/setup-nextflow@893c28b667aedeba26e37f296d260ccc5bc4d914 # v3

- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7
with:
python-version: "3.14"
architecture: "x64"

- name: Setup uv
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0

- name: read .nf-core.yml
uses: pietrobolcato/action-read-yaml@9f13718d61111b69f30ab4ac683e67a56d254e1d # 1.1.0
Expand All @@ -46,7 +46,7 @@ jobs:
run: uv tool install nf-core==${{ steps.read_yml.outputs['nf_core_version'] }}

- name: Run nf-core pipelines lint
if: ${{ github.base_ref != 'master' || github.base_ref != 'main' }}
if: ${{ github.base_ref != 'master' && github.base_ref != 'main' }}
env:
GITHUB_COMMENTS_URL: ${{ github.event.pull_request.comments_url }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand Down
18 changes: 6 additions & 12 deletions .github/workflows/nf-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,7 @@ env:
jobs:
nf-test-changes:
name: nf-test-changes
runs-on: # use self-hosted runners
- runs-on=${{ github.run_id }}-nf-test-changes
- runner=4cpu-linux-x64
runs-on: ubuntu-latest
outputs:
shard: ${{ steps.set-shards.outputs.shard }}
total_shards: ${{ steps.set-shards.outputs.total_shards }}
Expand All @@ -40,7 +38,7 @@ jobs:
rm -rf ./* || true
rm -rf ./.??* || true
ls -la ./
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
with:
fetch-depth: 0

Expand All @@ -61,9 +59,7 @@ jobs:
name: "${{ matrix.profile }} | ${{ matrix.NXF_VER }} | ${{ matrix.shard }}/${{ needs.nf-test-changes.outputs.total_shards }}"
needs: [nf-test-changes]
if: ${{ needs.nf-test-changes.outputs.total_shards != '0' }}
runs-on: # use self-hosted runners
- runs-on=${{ github.run_id }}-nf-test
- runner=4cpu-linux-x64
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
Expand All @@ -81,14 +77,14 @@ jobs:
profile: "conda"

NXF_VER:
- "25.10.4"
- "26.04.0"
- "latest-everything"
env:
NXF_ANSI_LOG: false
TOTAL_SHARDS: ${{ needs.nf-test-changes.outputs.total_shards }}

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
with:
fetch-depth: 0

Expand Down Expand Up @@ -138,9 +134,7 @@ jobs:
confirm-pass:
needs: [nf-test]
if: always()
runs-on: # use self-hosted runners
- runs-on=${{ github.run_id }}-confirm-pass
- runner=2cpu-linux-x64
runs-on: ubuntu-latest
steps:
- name: One or more tests failed (excluding latest-everything)
if: ${{ contains(needs.*.result, 'failure') }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-announcements.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
id: get_description
run: |
echo "description=$(curl -s https://nf-co.re/pipelines.json | jq -r '.remote_workflows[] | select(.full_name == "${{ github.repository }}") | .description')" >> $GITHUB_OUTPUT
- uses: rzr/fediverse-action@563159eb8d45f70ab6aaba36ed55cd037e51f441 # master
- uses: rzr/fediverse-action@66c2cbb5b1997666b0e28d597631b6a4f09a2719 # v0.0.6
with:
access-token: ${{ secrets.MASTODON_ACCESS_TOKEN }}
host: "mstdn.science" # custom host if not "mastodon.social" (default)
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/template-version-comment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out pipeline code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
with:
ref: ${{ github.event.pull_request.head.sha }}

Expand Down
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,9 @@ null/
kraken2_databases/
magmap_genomes
magmap_prokka
magmap_bakta
magmap_bakta_db
magmap_bakta_db_test
genomes/

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Might need to add magmap_bakta, magmap_bakta_db, and magmap_bakta_db_test if, as by conf/test_bakta.config:53, are created in the launch directory

*.Rproj
.positai
44 changes: 44 additions & 0 deletions .hooks/block_pipeline_outdir.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
#!/usr/bin/env bash
Comment thread
vagkaratzas marked this conversation as resolved.
Resolved
# This hook is used to block commits if they include staged files inside a directory
# which also contains a subdirectory called `pipeline_info`. The purpose of this is to
# prevent users from inadvertently committing output from pipeline test runs inside the
# development directory.

set -e

status=0
seen_dirs=""

while IFS= read -r file; do
# The offending output bundle's root is the ancestor directory that has
# `pipeline_info` as an immediate child, so callers can restore it in one go.
if [[ "$file" == pipeline_info/* ]]; then
top_dir="pipeline_info"
elif [[ "$file" == */pipeline_info/* ]]; then
top_dir="${file%%/pipeline_info/*}"
else
top_dir=""
dir=$(dirname "$file")
while [[ "$dir" != "." && "$dir" != "/" ]]; do
if [[ -d "$dir/pipeline_info" ]]; then
top_dir="$dir"
break
fi
dir=$(dirname "$dir")
done
fi

if [[ -n "$top_dir" ]]; then
echo "❌ Commit blocked: Please do not commit output from pipeline test runs to the pipeline code itself: $file"
status=1
case "$seen_dirs" in
*"|$top_dir|"*) ;;
*)
echo "Run 'git restore --staged $top_dir' to remove the whole output folder from the staging area."
seen_dirs="$seen_dirs|$top_dir|"
;;
esac
fi
done < <(git diff --cached --name-only)

exit "$status"
6 changes: 2 additions & 4 deletions .nf-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,7 @@ lint:
nextflow_config:
- config_defaults:
- params.ncbi_genome_infos
files_exist:
- .github/workflows/linting_comment.yml
nf_core_version: 4.0.2
nf_core_version: 4.1.0
repository_type: pipeline
template:
author: Danilo Di Leo, Emelie Nilsson and Daniel Lundin
Expand All @@ -20,4 +18,4 @@ template:
name: magmap
org: nf-core
outdir: .
version: 1.1.0
version: 1.2.0
19 changes: 18 additions & 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.8.3
- prettier@3.9.6
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v6.0.0
hooks:
Expand All @@ -25,9 +25,26 @@ repos:
subworkflows/(?!local/).*|
.*\.snap$
)$
- id: check-added-large-files
args: [--maxkb=5000]
exclude: |
(?x)^(
.*ro-crate-metadata.json$|
.*\.snap$|
lib/nfcore_external_java_deps.jar$|
docs/.*\.(svg|pdf)$|
assets/.*$
)$
- id: check-merge-conflict
- repo: https://github.com/seqeralabs/nf-lint-pre-commit
rev: v0.3.0
hooks:
- id: nextflow-lint
files: '\.nf$|nextflow\.config$'
args: ["-output", "json"]
- repo: local
hooks:
- id: block-pipeline-outdir
name: Prevent committing output from pipeline test runs to the pipeline code itself
entry: ./.hooks/block_pipeline_outdir.sh
language: script
Loading
Loading