Skip to content

Commit bf64874

Browse files
authored
Merge branch 'dev' into use-integrated-pdiff
2 parents 7efe452 + 3dd3003 commit bf64874

File tree

9 files changed

+107
-168
lines changed

9 files changed

+107
-168
lines changed

.pre-commit-config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
repos:
22
- repo: https://github.com/astral-sh/ruff-pre-commit
3-
rev: v0.11.9
3+
rev: v0.11.11
44
hooks:
55
- id: ruff # linter
66
args: [--fix, --exit-non-zero-on-fix] # sort imports and fix

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313
- run nf-test tests on runsOn runners ([#3525](https://github.com/nf-core/tools/pull/3525))
1414
- Include the centralized nf-core configs also in offline mode, if a local copy is available. ([#3491](https://github.com/nf-core/tools/pull/3491))
1515
- downgrade nf-schema to fix CI tests ([#3544](https://github.com/nf-core/tools/pull/3544))
16+
- Make jobs automatically resubmit for exit code 175 ([#3564](https://github.com/nf-core/tools/pull/3564))
17+
- bump nf-schema back to 2.3.0 ([#3577](https://github.com/nf-core/tools/pull/3577))
18+
- Do not skip AWS fulltest action on release ([#3583](https://github.com/nf-core/tools/pull/3583))
1619

1720
### Linting
1821

@@ -80,6 +83,7 @@
8083
- chore(deps): update python:3.12-slim docker digest to 31a416d ([#3568](https://github.com/nf-core/tools/pull/3568))
8184
- chore(deps): update codecov/codecov-action digest to 18283e0 ([#3575](https://github.com/nf-core/tools/pull/3575))
8285
- use pdiff from setup-nf-test ([#3578](https://github.com/nf-core/tools/pull/3578))
86+
- chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.11.11 ([#3585](https://github.com/nf-core/tools/pull/3585))
8387

8488
## [v3.2.1 - Pewter Pangolin Patch](https://github.com/nf-core/tools/releases/tag/3.2.1) - [2025-04-29]
8589

nf_core/modules/lint/environment_yml.py

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,28 @@ def environment_yml(module_lint_object: ComponentLint, module: NFCoreComponent,
8383

8484
if valid_env_yml:
8585
# Check that the dependencies section is sorted alphabetically
86-
if sorted(env_yml["dependencies"]) == env_yml["dependencies"]:
86+
def sort_recursively(obj):
87+
"""Simple recursive sort for nested structures."""
88+
if isinstance(obj, list):
89+
90+
def get_key(x):
91+
if isinstance(x, dict):
92+
# For dicts like {"pip": [...]}, use the key "pip"
93+
return (list(x.keys())[0], 1)
94+
else:
95+
# For strings like "pip=23.3.1", use "pip" and for bioconda::samtools=1.15.1, use "bioconda::samtools"
96+
return (str(x).split("=")[0], 0)
97+
98+
return sorted([sort_recursively(item) for item in obj], key=get_key)
99+
elif isinstance(obj, dict):
100+
return {k: sort_recursively(v) for k, v in obj.items()}
101+
else:
102+
return obj
103+
104+
sorted_dependencies = sort_recursively(env_yml["dependencies"])
105+
106+
# Direct comparison of sorted vs original dependencies
107+
if sorted_dependencies == env_yml["dependencies"]:
87108
module.passed.append(
88109
(
89110
"environment_yml_sorted",
@@ -96,6 +117,6 @@ def environment_yml(module_lint_object: ComponentLint, module: NFCoreComponent,
96117
log.info(
97118
f"Dependencies in {module.component_name}'s environment.yml were not sorted alphabetically. Sorting them now."
98119
)
99-
env_yml["dependencies"].sort()
120+
env_yml["dependencies"] = sorted_dependencies
100121
with open(Path(module.component_dir, "environment.yml"), "w") as fh:
101122
yaml.dump(env_yml, fh, Dumper=custom_yaml_dumper())

nf_core/pipeline-template/.github/workflows/awsfulltest.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
run-platform:
1515
name: Run AWS full tests
1616
# 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 == '{{ name }}' && github.event.review.state == 'approved' && (github.event.pull_request.base.ref == 'master' || github.event.pull_request.base.ref == 'main') || github.event_name == 'workflow_dispatch'
17+
if: github.repository == '{{ name }}' && github.event.review.state == 'approved' && (github.event.pull_request.base.ref == 'master' || github.event.pull_request.base.ref == 'main') || github.event_name == 'workflow_dispatch' || github.event_name == 'release'
1818
runs-on: ubuntu-latest
1919
steps:
2020
- name: Set revision variable

nf_core/pipeline-template/conf/base.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ process {
1515
memory = { 6.GB * task.attempt }
1616
time = { 4.h * task.attempt }
1717

18-
errorStrategy = { task.exitStatus in ((130..145) + 104) ? 'retry' : 'finish' }
18+
errorStrategy = { task.exitStatus in ((130..145) + 104 + 175) ? 'retry' : 'finish' }
1919
maxRetries = 1
2020
maxErrors = '-1'
2121

nf_core/pipeline-template/nextflow.config

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,9 @@ process {
8383
memory = { 6.GB * task.attempt }
8484
time = { 4.h * task.attempt }
8585

86-
errorStrategy = { task.exitStatus in ((130..145) + 104) ? 'retry' : 'finish' }
86+
// 175 signals that the Pipeline had an unrecoverable error while
87+
// restoring a Snapshot via Fusion Snapshots.
88+
errorStrategy = { task.exitStatus in ((130..145) + 104 + 175) ? 'retry' : 'finish' }
8789
maxRetries = 1
8890
maxErrors = '-1'
8991
}
@@ -304,7 +306,7 @@ manifest {
304306
{% if nf_schema -%}
305307
// Nextflow plugins
306308
plugins {
307-
id 'nf-schema@2.2.0' // Validation of pipeline parameters and creation of an input channel from a sample sheet
309+
id 'nf-schema@2.3.0' // Validation of pipeline parameters and creation of an input channel from a sample sheet
308310
}
309311

310312
validation {

requirements.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ jsonschema>=4.0
77
markdown>=3.3
88
packaging
99
pillow
10-
pdiff
1110
pre-commit
1211
prompt_toolkit<=3.0.51
1312
pydantic>=2.2.1

0 commit comments

Comments
 (0)