Skip to content

Commit 7ffd8b8

Browse files
authored
Merge pull request #807 from nf-core/dev
Release PR: 4.0.0
2 parents 4717d3d + 81d9ff5 commit 7ffd8b8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+2741
-1071
lines changed

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* @jfy133 @d4straub @prototaxites @muabnezor @dialvarezs

.github/workflows/awsfulltest.yml

Lines changed: 10 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -4,57 +4,36 @@ name: nf-core AWS full size tests
44
# It runs the -profile 'test_full' on AWS batch
55

66
on:
7-
pull_request:
8-
branches:
9-
- main
10-
- master
117
workflow_dispatch:
128
pull_request_review:
139
types: [submitted]
10+
release:
11+
types: [published]
1412

1513
jobs:
1614
run-platform:
1715
name: Run AWS full tests
18-
# run only if the PR is approved by at least 2 reviewers and against the master branch or manually triggered
19-
if: github.repository == 'nf-core/mag' && github.event.review.state == 'approved' && github.event.pull_request.base.ref == 'master' || github.event_name == 'workflow_dispatch'
16+
# run only if the PR is approved by at least 2 reviewers and against the master/main branch or manually triggered
17+
if: github.repository == 'nf-core/mag' && github.event.review.state == 'approved' && (github.event.pull_request.base.ref == 'master' || github.event.pull_request.base.ref == 'main') || github.event_name == 'workflow_dispatch'
2018
runs-on: ubuntu-latest
2119
steps:
22-
- name: Get PR reviews
23-
uses: octokit/[email protected]
24-
if: github.event_name != 'workflow_dispatch'
25-
id: check_approvals
26-
continue-on-error: true
27-
with:
28-
route: GET /repos/${{ github.repository }}/pulls/${{ github.event.pull_request.number }}/reviews?per_page=100
29-
env:
30-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
31-
32-
- name: Check for approvals
33-
if: ${{ failure() && github.event_name != 'workflow_dispatch' }}
34-
run: |
35-
echo "No review approvals found. At least 2 approvals are required to run this action automatically."
36-
exit 1
37-
38-
- name: Check for enough approvals (>=2)
39-
id: test_variables
40-
if: github.event_name != 'workflow_dispatch'
20+
- name: Set revision variable
21+
id: revision
4122
run: |
42-
JSON_RESPONSE='${{ steps.check_approvals.outputs.data }}'
43-
CURRENT_APPROVALS_COUNT=$(echo $JSON_RESPONSE | jq -c '[.[] | select(.state | contains("APPROVED")) ] | length')
44-
test $CURRENT_APPROVALS_COUNT -ge 2 || exit 1 # At least 2 approvals are required
23+
echo "revision=${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'release') && github.sha || 'dev' }}" >> "$GITHUB_OUTPUT"
4524
4625
- name: Launch workflow via Seqera Platform
4726
uses: seqeralabs/action-tower-launch@v2
4827
with:
4928
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
5029
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
5130
compute_env: ${{ secrets.TOWER_COMPUTE_ENV }}
52-
revision: ${{ github.sha }}
53-
workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/mag/work-${{ github.sha }}
31+
revision: ${{ steps.revision.outputs.revision }}
32+
workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/mag/work-${{ steps.revision.outputs.revision }}
5433
parameters: |
5534
{
5635
"hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}",
57-
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/mag/results-${{ github.sha }}"
36+
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/mag/results-${{ steps.revision.outputs.revision }}"
5837
}
5938
profiles: test_full
6039

.github/workflows/ci.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
strategy:
2828
matrix:
2929
NXF_VER:
30-
- "24.04.2"
30+
- "25.04.2"
3131
- "latest-everything"
3232
profile:
3333
- "conda"
@@ -36,7 +36,7 @@ jobs:
3636
test_name:
3737
- "test"
3838
isMaster:
39-
- ${{ github.base_ref == 'master' }}
39+
- ${{ github.base_ref == 'main' }}
4040
# Exclude conda and singularity on dev
4141
exclude:
4242
- isMaster: false
@@ -88,6 +88,7 @@ jobs:
8888
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
8989

9090
- name: "Run pipeline with test data ${{ matrix.NXF_VER }} | ${{ matrix.test_name }} | ${{ matrix.profile }}"
91+
continue-on-error: ${{ matrix.NXF_VER == 'latest-everything' }}
9192
run: |
9293
nextflow run ${GITHUB_WORKSPACE} -profile ${{ matrix.test_name }},${{ matrix.profile }} --outdir ./results
9394

.nf-core.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ lint:
55
- config_defaults:
66
- params.phix_reference
77
- params.lambda_reference
8-
nf_core_version: 3.2.0
8+
nf_core_version: 3.2.1
99
repository_type: pipeline
1010
template:
1111
author: "Hadrien Gourlé, Daniel Straub, Sabrina Krakau, James A. Fellows Yates,
@@ -16,4 +16,4 @@ template:
1616
name: mag
1717
org: nf-core
1818
outdir: .
19-
version: 3.4.0
19+
version: 4.0.0

CHANGELOG.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,42 @@
33
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
44
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
55

6+
## v4.0.0 - [2025-05-22]
7+
8+
### `Added`
9+
10+
- [#730](https://github.com/nf-core/mag/pull/730) - Added `--busco_db_lineage` to allow specifying a specific lineage for BUSCO database (added by @jfy133, @dialvarezs)
11+
- [#730](https://github.com/nf-core/mag/pull/730) - Added a new documentation section on database setup (by @jfy133, @dialvarezs)
12+
- [#784](https://github.com/nf-core/mag/pull/784) - Added `--bin_min_size` and `--bin_max_size` parameters to filter out bins based on size (requested by @maxibor, @alexhbnr, added by @jfy133, @prototaxites)
13+
- [#793](https://github.com/nf-core/mag/pull/793) - Document use of a SquashFS image with `--gtdb_db`, useful for limited inode infrastructure (by @muniheart)
14+
- [#805](https://github.com/nf-core/mag/pull/793) - Add support for fastp's `--trim_poly_g` option (by @jfy133)
15+
16+
### `Changed`
17+
18+
- [#730](https://github.com/nf-core/mag/pull/730) - Migrate from local BUSCO module to nf-core one, updating version (by @dialvarezs)
19+
- [#730](https://github.com/nf-core/mag/pull/730) - Use BUSCO database from nf-core test datasets (by @dialvarezs)
20+
- [#788](https://github.com/nf-core/mag/pull/788) - Tweak method of loading GTDB database in GTDBTK_CLASSIFYWF for more stability (reported by @alexhbnr, fix by @jfy133)
21+
- [#800](https://github.com/nf-core/mag/pull/800) - Default branch is now set to `main` (by @jfy133 and @mirpedrol)
22+
- [#801](https://github.com/nf-core/mag/pull/800) - Increase CheckM memory requests to match [recommended requirements](https://github.com/nf-core/mag/pull/800) (by @jfy133)
23+
24+
### `Fixed`
25+
26+
- [#789](https://github.com/nf-core/mag/pull/789) - Improve `--bowtie2_mode` description to clarify default settings (reported by @IceGreb, fix by @jfy133)
27+
- [#798](https://github.com/nf-core/mag/pull/798) - Fix overly strict database validation for `--metauk_db` and improve documentation (reported by @ruqse, fix by @jfy133)
28+
- [#804](https://github.com/nf-core/mag/pull/804) - Fix broken memory specification for FASTQC (reported by @jmichaelegana, fix by @awgymer & @jfy133)
29+
30+
### `Dependencies`
31+
32+
| Tool | Previous version | New version |
33+
| -------- | ---------------- | ----------- |
34+
| BUSCO | 5.4.3 | 5.8.3 |
35+
| csvtk | | 0.31.0 |
36+
| nextflow | 24.04.2 | 25.04.2 |
37+
38+
### `Deprecated`
39+
40+
- [#730](https://github.com/nf-core/mag/pull/730) - Remove `--busco_auto_lineage_prok` due to update and simplified usage of BUSCO (added by @jfy133, @dialvarezs)
41+
642
## 3.4.0 [2025-04-04]
743

844
### `Added`
@@ -11,6 +47,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1147
- [#745](https://github.com/nf-core/mag/pull/745) - Added `trimmomatic` as an additional pre-processing tool (by @Pranjal-Bioinfo, @jfy133, @GallVp & @sateeshperi).
1248
- [#745](https://github.com/nf-core/mag/pull/745) - Added parameters for `concoct/cut_up_fasta.py` including `bin_concoct_chunksize`, `bin_concoct_overlap` and `bin_concoct_donotconcatlast` (by @Pranjal-Bioinfo, @jfy133, @GallVp & @sateeshperi).
1349
- [#777](https://github.com/nf-core/mag/pull/777) - Improved input validation through additional JSON keywords and error messages (by @agusinac)
50+
- [#784](https://github.com/nf-core/mag/pull/784) - Add ability to filter out bins based on bin size for downstream using `--bin_min_size`, `--bin_max_size` (reported by @maxibor & @alexhbnr, fix by @jfy133)
1451

1552
### `Changed`
1653

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)
1111
[![Cite Publication](https://img.shields.io/badge/Cite%20Us!-Cite%20Publication-orange)](https://doi.org/10.1093/nargab/lqac007)
1212

13-
[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A524.04.2-23aa62.svg)](https://www.nextflow.io/)
13+
[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A525.04.2-23aa62.svg)](https://www.nextflow.io/)
1414
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)
1515
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)
1616
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)

assets/multiqc_config.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
report_comment: >
2-
This report has been generated by the <a href="https://github.com/nf-core/mag/releases/tag/3.4.0"
2+
This report has been generated by the <a href="https://github.com/nf-core/mag/releases/tag/4.0.0"
33
target="_blank">nf-core/mag</a> analysis pipeline. For information about how to
4-
interpret these results, please see the <a href="https://nf-co.re/mag/3.4.0/docs/output"
4+
interpret these results, please see the <a href="https://nf-co.re/mag/4.0.0/docs/output"
55
target="_blank">documentation</a>.
66
report_section_order:
77
"nf-core-mag-methods-description":

assets/schema_assembly_input.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
3-
"$id": "https://raw.githubusercontent.com/nf-core/mag/master/assets/schema_input.json",
3+
"$id": "https://raw.githubusercontent.com/nf-core/mag/main/assets/schema_input.json",
44
"title": "nf-core/mag pipeline - params.input schema",
55
"description": "Schema for the file provided with params.input",
66
"type": "array",

assets/schema_input.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
3-
"$id": "https://raw.githubusercontent.com/nf-core/mag/master/assets/schema_input.json",
3+
"$id": "https://raw.githubusercontent.com/nf-core/mag/main/assets/schema_input.json",
44
"title": "nf-core/mag pipeline - params.input schema",
55
"description": "Schema for the file provided with params.input",
66
"type": "array",

bin/combine_tables.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import argparse
77
import sys
8+
import warnings
89

910
import pandas as pd
1011

@@ -110,10 +111,14 @@ def main(args=None):
110111

111112
if args.binqc_summary and args.binqc_tool == "busco":
112113
busco_results = pd.read_csv(args.binqc_summary, sep="\t")
113-
if not bins.equals(busco_results["GenomeBin"].sort_values().reset_index(drop=True)):
114+
busco_bins = set(busco_results["Input_file"])
115+
116+
if set(bins) != busco_bins and len(busco_bins.intersection(set(bins))) > 0:
117+
warnings.warn("Bins in BUSCO summary do not match bins in bin depths summary")
118+
elif len(busco_bins.intersection(set(bins))) == 0:
114119
sys.exit("Bins in BUSCO summary do not match bins in bin depths summary!")
115120
results = pd.merge(
116-
results, busco_results, left_on="bin", right_on="GenomeBin", how="outer"
121+
results, busco_results, left_on="bin", right_on="Input_file", how="outer"
117122
) # assuming depths for all bins are given
118123

119124
if args.binqc_summary and args.binqc_tool == "checkm":

bin/run_busco.sh

Lines changed: 0 additions & 166 deletions
This file was deleted.

0 commit comments

Comments
 (0)