Skip to content

Commit f803a60

Browse files
authored
Merge branch 'dev' into nf-prov
2 parents 79f3c58 + f7207a5 commit f803a60

File tree

486 files changed

+28871
-20343
lines changed

Some content is hidden

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

486 files changed

+28871
-20343
lines changed

.devcontainer/devcontainer.json

+1-9
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,7 @@
1111
"vscode": {
1212
// Set *default* container specific settings.json values on container create.
1313
"settings": {
14-
"python.defaultInterpreterPath": "/opt/conda/bin/python",
15-
"python.linting.enabled": true,
16-
"python.linting.pylintEnabled": true,
17-
"python.formatting.autopep8Path": "/opt/conda/bin/autopep8",
18-
"python.formatting.yapfPath": "/opt/conda/bin/yapf",
19-
"python.linting.flake8Path": "/opt/conda/bin/flake8",
20-
"python.linting.pycodestylePath": "/opt/conda/bin/pycodestyle",
21-
"python.linting.pydocstylePath": "/opt/conda/bin/pydocstyle",
22-
"python.linting.pylintPath": "/opt/conda/bin/pylint"
14+
"python.defaultInterpreterPath": "/opt/conda/bin/python"
2315
},
2416

2517
// Add the IDs of extensions you want installed when the container is created.

.editorconfig

-12
This file was deleted.

.github/.coveragerc

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
[run]
2-
omit = nf_core/pipeline-template/*
2+
omit = nf_core/*-template/*
3+
source = nf_core
4+
relative_files = True

.github/ISSUE_TEMPLATE/bug_report.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ body:
2424
description: Steps to reproduce the behaviour. Please paste the command and output from your terminal.
2525
render: console
2626
placeholder: |
27-
$ nf-core lint ...
27+
$ nf-core pipelines lint ...
2828
2929
Some output where something broke
3030
@@ -37,5 +37,5 @@ body:
3737
* Hardware _(eg. HPC, Desktop, Cloud)_
3838
* Executor _(eg. slurm, local, awsbatch)_
3939
* OS _(eg. CentOS Linux, macOS, Linux Mint)_
40-
* Version of nf-core/tools _(eg. 1.1, 1.5, 1.8.2)_
41-
* Python version _(eg. 3.10, 3.11)_
40+
* Version of nf-core/tools _(eg. 1.10, 1.12.1, 1.13)_
41+
* Python version _(eg. 3.11, 3.12)_

.github/PULL_REQUEST_TEMPLATE.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ These are the most common things requested on pull requests (PRs).
66
77
Remember that PRs should be made against the dev branch, unless you're preparing a release.
88
9-
Learn more about contributing: https://github.com/nf-core/tools/tree/master/.github/CONTRIBUTING.md
9+
Learn more about contributing: https://github.com/nf-core/tools/tree/main/.github/CONTRIBUTING.md
1010
-->
1111

1212
## PR checklist

.github/RELEASE_CHECKLIST.md

+8-8
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,21 @@
33
1. Check issue milestones to see outstanding issues to resolve if possible or transfer to the milestones for the next release e.g. [`v1.9`](https://github.com/nf-core/tools/issues?q=is%3Aopen+is%3Aissue+milestone%3A1.9)
44
2. Most importantly, pick an undeniably outstanding [name](http://www.codenamegenerator.com/) for the release where _Prefix_ = _Metal_ and _Dictionary_ = _Animal_.
55
3. Check the [pipeline health page](https://nf-co.re/pipeline_health) to make sure that all repos look sane (missing `TEMPLATE` branches etc)
6-
4. Check that modules/subworkflows in tempalte are up to date with the latest releases
6+
4. Check that modules/subworkflows in template are up to date with the latest releases
77
5. Create a PR to `dev` to bump the version in `CHANGELOG.md` and `setup.py` and change the gitpod container to `nfcore/gitpod:latest`.
88
6. Make sure all CI tests are passing!
9-
7. Create a PR from `dev` to `master`
10-
8. Make sure all CI tests are passing again (additional tests are run on PRs to `master`)
9+
7. Create a PR from `dev` to `main`
10+
8. Make sure all CI tests are passing again (additional tests are run on PRs to `main`)
1111
9. Request review (2 approvals required)
12-
10. Run `rich-codex` to regenerate docs screengrabs (actions `workflow_dispatch` button)
13-
11. Merge the PR into `master`
14-
12. Wait for CI tests on the commit to passed
15-
13. (Optional but a good idea) Run a manual sync on `nf-core/testpipeline` and check that CI is passing on the resulting PR.
16-
14. Create a new release copying the `CHANGELOG` for that release into the description section.
12+
10. Merge the PR into `main`
13+
11. Wait for CI tests on the commit to passed
14+
12. (Optional but a good idea) Run a manual sync on `nf-core/testpipeline` and check that CI is passing on the resulting PR.
15+
13. Create a new release copying the `CHANGELOG` for that release into the description section.
1716

1817
## After release
1918

2019
1. Check the automated template synchronisation has been triggered properly. This should automatically open PRs directly to individual pipeline repos with the appropriate changes to update the pipeline template.
2120
2. Check that the automatic `PyPi` deployment has worked: [pypi.org/project/nf-core](https://pypi.org/project/nf-core/)
2221
3. Check `BioConda` has an automated PR to bump the version, and merge. eg. [bioconda/bioconda-recipes #20065](https://github.com/bioconda/bioconda-recipes/pull/20065)
2322
4. Create a tools PR to `dev` to bump back to the next development version in `CHANGELOG.md` and `setup.py` and change the gitpod container to `nfcore/gitpod:dev`.
23+
5. Run `rich-codex` on the [tools/website repo](https://github.com/nf-core/website/actions/workflows/rich-codex.yml) to regenerate docs screengrabs (actions `workflow_dispatch` button)
+119
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
name: "Create and lint nf-core pipeline"
2+
description: "Create and lint nf-core pipeline"
3+
inputs:
4+
NXF_VER:
5+
description: "Nextflow version"
6+
required: true
7+
8+
runs:
9+
using: "composite"
10+
steps:
11+
- name: go to subdirectory and change nextflow workdir
12+
shell: bash
13+
run: |
14+
mkdir -p create-lint-wf
15+
cd create-lint-wf
16+
export NXF_WORK=$(pwd)
17+
18+
- name: Install Nextflow
19+
uses: nf-core/setup-nextflow@v2
20+
with:
21+
version: ${{ matrix.NXF_VER }}
22+
23+
# Build a pipeline from the template
24+
- name: nf-core create
25+
shell: bash
26+
run: |
27+
mkdir -p create-lint-wf && cd create-lint-wf
28+
export NXF_WORK=$(pwd)
29+
nf-core --log-file log.txt pipelines create -n testpipeline -d "This pipeline is for testing" -a "Testing McTestface"
30+
31+
# Try syncing it before we change anything
32+
- name: nf-core pipelines sync
33+
shell: bash
34+
run: nf-core --log-file log.txt pipelines sync --dir nf-core-testpipeline/
35+
working-directory: create-lint-wf
36+
37+
# Run code style linting
38+
- name: run pre-commit
39+
shell: bash
40+
run: pre-commit run --all-files
41+
working-directory: create-lint-wf
42+
43+
# Update modules to the latest version
44+
- name: nf-core modules update
45+
shell: bash
46+
run: nf-core --log-file log.txt modules update --dir nf-core-testpipeline --all --no-preview
47+
working-directory: create-lint-wf
48+
49+
# Remove TODO statements
50+
- name: remove TODO
51+
shell: bash
52+
run: find nf-core-testpipeline -type f -exec sed -i '/TODO nf-core:/d' {} \;
53+
working-directory: create-lint-wf
54+
55+
# Uncomment includeConfig statement
56+
- name: uncomment include config
57+
shell: bash
58+
run: find nf-core-testpipeline -type f -exec sed -i 's/\/\/ includeConfig/includeConfig/' {} \;
59+
working-directory: create-lint-wf
60+
61+
# Replace zenodo.XXXXXX to pass readme linting
62+
- name: replace zenodo.XXXXXX
63+
shell: bash
64+
run: find nf-core-testpipeline -type f -exec sed -i 's/zenodo.XXXXXX/zenodo.123456/g' {} \;
65+
working-directory: create-lint-wf
66+
67+
# Add empty ro-crate file
68+
- name: add empty ro-crate file
69+
shell: bash
70+
run: touch nf-core-testpipeline/ro-crate-metadata.json
71+
working-directory: create-lint-wf
72+
73+
# Run nf-core pipelines linting
74+
- name: nf-core pipelines lint
75+
shell: bash
76+
run: nf-core --verbose --log-file log.txt --hide-progress pipelines lint --dir nf-core-testpipeline --fail-ignored --fail-warned
77+
working-directory: create-lint-wf
78+
79+
- name: nf-core pipelines bump-version to release
80+
shell: bash
81+
run: nf-core --log-file log.txt pipelines bump-version --dir nf-core-testpipeline/ 1.1
82+
working-directory: create-lint-wf
83+
84+
- name: nf-core pipelines lint in release mode
85+
shell: bash
86+
run: nf-core --log-file log.txt --hide-progress pipelines lint --dir nf-core-testpipeline --fail-ignored --fail-warned --release
87+
working-directory: create-lint-wf
88+
89+
- name: Upload log file artifact
90+
if: ${{ always() }}
91+
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4
92+
with:
93+
name: nf-core-log-file-${{ matrix.NXF_VER }}
94+
path: create-lint-wf/log.txt
95+
96+
- name: nf-core modules install
97+
shell: bash
98+
run: nf-core --log-file log.txt modules install fastqc --dir nf-core-testpipeline/ --force
99+
working-directory: create-lint-wf
100+
101+
- name: nf-core modules install gitlab
102+
shell: bash
103+
run: nf-core --log-file log.txt modules --git-remote https://gitlab.com/nf-core/modules-test.git --branch branch-tester install fastp --dir nf-core-testpipeline/
104+
working-directory: create-lint-wf
105+
106+
- name: nf-core modules list local
107+
shell: bash
108+
run: nf-core --log-file log.txt modules list local --dir nf-core-testpipeline/
109+
working-directory: create-lint-wf
110+
111+
- name: nf-core modules list remote
112+
shell: bash
113+
run: nf-core --log-file log.txt modules list remote
114+
working-directory: create-lint-wf
115+
116+
- name: nf-core modules list remote gitlab
117+
shell: bash
118+
run: nf-core --log-file log.txt modules --git-remote https://gitlab.com/nf-core/modules-test.git list remote
119+
working-directory: create-lint-wf

.github/renovate.json5

+13
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,18 @@
11
{
22
$schema: "https://docs.renovatebot.com/renovate-schema.json",
33
extends: ["github>nf-core/ops//.github/renovate/default.json5"],
4+
ignorePaths: ["**/nf_core/pipeline-template/modules/nf-core/**"],
45
baseBranches: ["dev"],
6+
packageRules: [
7+
{
8+
matchDatasources: ["docker"],
9+
matchPackageNames: ["python"],
10+
versioning: "pep440",
11+
},
12+
{
13+
matchDatasources: ["docker"],
14+
registryUrls: ["docker.io"],
15+
},
16+
],
17+
gitIgnoredAuthors: ["[email protected]"],
518
}

.github/workflows/branch.yml

+9-9
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
name: nf-core branch protection
2-
# This workflow is triggered on PRs to master branch on the repository
3-
# It fails when someone tries to make a PR against the nf-core `master` branch instead of `dev`
2+
# This workflow is triggered on PRs to main branch on the repository
3+
# It fails when someone tries to make a PR against the nf-core `main` branch instead of `dev`
44
on:
55
pull_request_target:
6-
branches: [master]
6+
branches: [main]
77

88
jobs:
99
test:
1010
runs-on: ubuntu-latest
1111
steps:
12-
# PRs to the nf-core repo master branch are only ok if coming from the nf-core repo `dev` or any `patch` branches
12+
# PRs to the nf-core repo main branch are only ok if coming from the nf-core repo `dev` or any `patch` branches
1313
- name: Check PRs
1414
if: github.repository == 'nf-core/tools'
1515
run: |
@@ -18,10 +18,10 @@ jobs:
1818
# If the above check failed, post a comment on the PR explaining the failure
1919
- name: Post PR comment
2020
if: failure()
21-
uses: mshick/add-pr-comment@v1
21+
uses: mshick/add-pr-comment@b8f338c590a895d50bcbfa6c5859251edc8952fc # v2
2222
with:
2323
message: |
24-
## This PR is against the `master` branch :x:
24+
## This PR is against the `main` branch :x:
2525
2626
* Do not close this PR
2727
* Click _Edit_ and change the `base` to `dev`
@@ -31,9 +31,9 @@ jobs:
3131
3232
Hi @${{ github.event.pull_request.user.login }},
3333
34-
It looks like this pull-request is has been made against the [${{github.event.pull_request.head.repo.full_name }}](https://github.com/${{github.event.pull_request.head.repo.full_name }}) `master` branch.
35-
The `master` branch on nf-core repositories should always contain code from the latest release.
36-
Because of this, PRs to `master` are only allowed if they come from the [${{github.event.pull_request.head.repo.full_name }}](https://github.com/${{github.event.pull_request.head.repo.full_name }}) `dev` branch.
34+
It looks like this pull-request is has been made against the [${{github.event.pull_request.head.repo.full_name }}](https://github.com/${{github.event.pull_request.head.repo.full_name }}) `main` branch.
35+
The `main` branch on nf-core repositories should always contain code from the latest release.
36+
Because of this, PRs to `main` are only allowed if they come from the [${{github.event.pull_request.head.repo.full_name }}](https://github.com/${{github.event.pull_request.head.repo.full_name }}) `dev` branch.
3737
3838
You do not need to close this PR, you can change the target branch to `dev` by clicking the _"Edit"_ button at the top of this page.
3939
Note that even after this, the test will continue to show as failing until you push a new commit.

0 commit comments

Comments
 (0)