Skip to content

Commit 42eb8d6

Browse files
authored
Merge pull request #483 from nf-core/dev
Release 3.0.2
2 parents 98f02be + c27117b commit 42eb8d6

File tree

90 files changed

+2936
-1700
lines changed

Some content is hidden

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

90 files changed

+2936
-1700
lines changed

.devcontainer/devcontainer.json

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

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

.editorconfig

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,20 @@ end_of_line = unset
1818
insert_final_newline = unset
1919
trim_trailing_whitespace = unset
2020
indent_style = unset
21-
indent_size = unset
21+
[/subworkflows/nf-core/**]
22+
charset = unset
23+
end_of_line = unset
24+
insert_final_newline = unset
25+
trim_trailing_whitespace = unset
26+
indent_style = unset
2227

2328
[/assets/email*]
2429
indent_size = unset
30+
31+
# ignore Readme
32+
[README.md]
33+
indent_style = unset
34+
35+
# ignore python
36+
[*.{py,md}]
37+
indent_style = unset

.github/CONTRIBUTING.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,8 @@ Please use the pre-filled template to save time.
99
However, don't be put off by this template - other more general issues and suggestions are welcome!
1010
Contributions to the code are even more welcome ;)
1111

12-
:::info
13-
If you need help using or modifying nf-core/rnafusion then the best place to ask is on the nf-core Slack [#rnafusion](https://nfcore.slack.com/channels/rnafusion) channel ([join our Slack here](https://nf-co.re/join/slack)).
14-
:::
12+
> [!NOTE]
13+
> If you need help using or modifying nf-core/rnafusion then the best place to ask is on the nf-core Slack [#rnafusion](https://nfcore.slack.com/channels/rnafusion) channel ([join our Slack here](https://nf-co.re/join/slack)).
1514
1615
## Contribution workflow
1716

@@ -27,6 +26,12 @@ If you're not used to this workflow with git, you can start with some [docs from
2726

2827
## Tests
2928

29+
You have the option to test your changes locally by running the pipeline. For receiving warnings about process selectors and other `debug` information, it is recommended to use the debug profile. Execute all the tests with the following command, BUT DON'T FORGET TO ADD THE PARAMETERS cosmic_username AND cosmic_passwd in tests/main.nf.test.
30+
31+
```bash
32+
nf-test test --profile debug,test,docker --verbose
33+
```
34+
3035
When you create a pull request with changes, [GitHub Actions](https://github.com/features/actions) will run automatic tests.
3136
Typically, pull-requests are only fully reviewed when these tests are passing, though of course we can help out before then.
3237

@@ -87,7 +92,7 @@ Once there, use `nf-core schema build` to add to `nextflow_schema.json`.
8792

8893
Sensible defaults for process resource requirements (CPUs / memory / time) for a process should be defined in `conf/base.config`. These should generally be specified generic with `withLabel:` selectors so they can be shared across multiple processes/steps of the pipeline. A nf-core standard set of labels that should be followed where possible can be seen in the [nf-core pipeline template](https://github.com/nf-core/tools/blob/master/nf_core/pipeline-template/conf/base.config), which has the default process as a single core-process, and then different levels of multi-core configurations for increasingly large memory requirements defined with standardised labels.
8994

90-
The process resources can be passed on to the tool dynamically within the process with the `${task.cpu}` and `${task.memory}` variables in the `script:` block.
95+
The process resources can be passed on to the tool dynamically within the process with the `${task.cpus}` and `${task.memory}` variables in the `script:` block.
9196

9297
### Naming schemes
9398

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-core/rnaf
1818
- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/rnafusion/tree/master/.github/CONTRIBUTING.md)
1919
- [ ] If necessary, also make a PR on the nf-core/rnafusion _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository.
2020
- [ ] Make sure your code lints (`nf-core lint`).
21-
- [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir <OUTDIR>`).
21+
<!-- - [ ] Ensure the test suite passes (`nf-test test main.nf.test -profile test,docker`). -->
22+
- [ ] Check for unexpected warnings in debug mode (`nextflow run . -profile debug,test,docker --outdir <OUTDIR>`).
2223
- [ ] Usage Documentation in `docs/usage.md` is updated.
2324
- [ ] Output Documentation in `docs/output.md` is updated.
2425
- [ ] `CHANGELOG.md` is updated.

.github/workflows/awsfulltest.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
"build_references": true
3333
}
3434
profiles: test_full,aws_tower
35-
- uses: actions/upload-artifact@v3
35+
- uses: actions/upload-artifact@v4
3636
with:
3737
name: Tower debug log file
3838
path: |

.github/workflows/awstest.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,14 @@ jobs:
3030
"build_references": true
3131
}
3232
profiles: test,aws_tower
33-
- uses: actions/upload-artifact@v3
33+
- uses: actions/upload-artifact@v4
3434
with:
3535
name: Tower debug log file
3636
path: |
3737
tower_action_*.log
3838
tower_action_*.json
3939
40-
- name: Launch arriba workflow via tower
40+
- name: Launch workflow via tower
4141
uses: seqeralabs/action-tower-launch@v2
4242
with:
4343
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
@@ -54,7 +54,7 @@ jobs:
5454
"stub": true
5555
}
5656
profiles: test,aws_tower
57-
- uses: actions/upload-artifact@v3
57+
- uses: actions/upload-artifact@v4
5858
with:
5959
name: Tower debug log file
6060
path: |

.github/workflows/branch.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
# NOTE - this doesn't currently work if the PR is coming from a fork, due to limitations in GitHub actions secrets
2020
- name: Post PR comment
2121
if: failure()
22-
uses: mshick/add-pr-comment@v1
22+
uses: mshick/add-pr-comment@b8f338c590a895d50bcbfa6c5859251edc8952fc # v2
2323
with:
2424
message: |
2525
## This PR is against the `master` branch :x:

.github/workflows/ci.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,16 @@ jobs:
3131
- "--fastp_trim true"
3232
steps:
3333
- name: Check out pipeline code
34-
uses: actions/checkout@v3
34+
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
3535

3636
- name: Install Nextflow
3737
uses: nf-core/setup-nextflow@v1
3838
with:
3939
version: "${{ matrix.NXF_VER }}"
4040

41+
- name: Disk space cleanup
42+
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
43+
4144
- name: Dry test build
4245
run: |
4346
nextflow run ${GITHUB_WORKSPACE} -profile test,docker -stub --build_references \

.github/workflows/clean-up.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
issues: write
1111
pull-requests: write
1212
steps:
13-
- uses: actions/stale@v7
13+
- uses: actions/stale@28ca1036281a5e5922ead5184a1bbf96e5fc984e # v9
1414
with:
1515
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."
1616
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."
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
name: Test successful pipeline download with 'nf-core download'
2+
3+
# Run the workflow when:
4+
# - dispatched manually
5+
# - when a PR is opened or reopened to master branch
6+
# - the head branch of the pull request is updated, i.e. if fixes for a release are pushed last minute to dev.
7+
on:
8+
workflow_dispatch:
9+
inputs:
10+
testbranch:
11+
description: "The specific branch you wish to utilize for the test execution of nf-core download."
12+
required: true
13+
default: "dev"
14+
pull_request:
15+
types:
16+
- opened
17+
branches:
18+
- master
19+
pull_request_target:
20+
branches:
21+
- master
22+
23+
env:
24+
NXF_ANSI_LOG: false
25+
26+
jobs:
27+
download:
28+
runs-on: ubuntu-latest
29+
steps:
30+
- name: Install Nextflow
31+
uses: nf-core/setup-nextflow@v1
32+
33+
- uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5
34+
with:
35+
python-version: "3.11"
36+
architecture: "x64"
37+
- uses: eWaterCycle/setup-singularity@931d4e31109e875b13309ae1d07c70ca8fbc8537 # v7
38+
with:
39+
singularity-version: 3.8.3
40+
41+
- name: Install dependencies
42+
run: |
43+
python -m pip install --upgrade pip
44+
pip install git+https://github.com/nf-core/tools.git@dev
45+
46+
- name: Get the repository name and current branch set as environment variable
47+
run: |
48+
echo "REPO_LOWERCASE=${GITHUB_REPOSITORY,,}" >> ${GITHUB_ENV}
49+
echo "REPOTITLE_LOWERCASE=$(basename ${GITHUB_REPOSITORY,,})" >> ${GITHUB_ENV}
50+
echo "REPO_BRANCH=${{ github.event.inputs.testbranch || 'dev' }}" >> ${GITHUB_ENV}
51+
52+
- name: Download the pipeline
53+
env:
54+
NXF_SINGULARITY_CACHEDIR: ./
55+
run: |
56+
nf-core download ${{ env.REPO_LOWERCASE }} \
57+
--revision ${{ env.REPO_BRANCH }} \
58+
--outdir ./${{ env.REPOTITLE_LOWERCASE }} \
59+
--compress "none" \
60+
--container-system 'singularity' \
61+
--container-library "quay.io" -l "docker.io" -l "ghcr.io" \
62+
--container-cache-utilisation 'amend' \
63+
--download-configuration
64+
65+
- name: Inspect download
66+
run: tree ./${{ env.REPOTITLE_LOWERCASE }}
67+
68+
- name: Run the downloaded pipeline
69+
env:
70+
NXF_SINGULARITY_CACHEDIR: ./
71+
NXF_SINGULARITY_HOME_MOUNT: true
72+
run: nextflow run ./${{ env.REPOTITLE_LOWERCASE }}/$( sed 's/\W/_/g' <<< ${{ env.REPO_BRANCH }}) -stub -profile test,singularity --outdir ./results

.github/workflows/fix-linting.yml

Lines changed: 53 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
types: [created]
55

66
jobs:
7-
deploy:
7+
fix-linting:
88
# Only run if comment is on a PR with the main repo, and if it contains the magic keywords
99
if: >
1010
contains(github.event.comment.html_url, '/pull/') &&
@@ -13,43 +13,77 @@ jobs:
1313
runs-on: ubuntu-latest
1414
steps:
1515
# Use the @nf-core-bot token to check out so we can push later
16-
- uses: actions/checkout@v3
16+
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
1717
with:
1818
token: ${{ secrets.nf_core_bot_auth_token }}
1919

20+
# indication that the linting is being fixed
21+
- name: React on comment
22+
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4
23+
with:
24+
comment-id: ${{ github.event.comment.id }}
25+
reactions: eyes
26+
2027
# Action runs on the issue comment, so we don't get the PR by default
2128
# Use the gh cli to check out the PR
2229
- name: Checkout Pull Request
2330
run: gh pr checkout ${{ github.event.issue.number }}
2431
env:
2532
GITHUB_TOKEN: ${{ secrets.nf_core_bot_auth_token }}
2633

27-
- uses: actions/setup-node@v3
34+
# Install and run pre-commit
35+
- uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5
36+
with:
37+
python-version: 3.11
2838

29-
- name: Install Prettier
30-
run: npm install -g prettier @prettier/plugin-php
39+
- name: Install pre-commit
40+
run: pip install pre-commit
3141

32-
# Check that we actually need to fix something
33-
- name: Run 'prettier --check'
34-
id: prettier_status
35-
run: |
36-
if prettier --check ${GITHUB_WORKSPACE}; then
37-
echo "result=pass" >> $GITHUB_OUTPUT
38-
else
39-
echo "result=fail" >> $GITHUB_OUTPUT
40-
fi
42+
- name: Run pre-commit
43+
id: pre-commit
44+
run: pre-commit run --all-files
45+
continue-on-error: true
4146

42-
- name: Run 'prettier --write'
43-
if: steps.prettier_status.outputs.result == 'fail'
44-
run: prettier --write ${GITHUB_WORKSPACE}
47+
# indication that the linting has finished
48+
- name: react if linting finished succesfully
49+
if: steps.pre-commit.outcome == 'success'
50+
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4
51+
with:
52+
comment-id: ${{ github.event.comment.id }}
53+
reactions: "+1"
4554

4655
- name: Commit & push changes
47-
if: steps.prettier_status.outputs.result == 'fail'
56+
id: commit-and-push
57+
if: steps.pre-commit.outcome == 'failure'
4858
run: |
4959
git config user.email "core@nf-co.re"
5060
git config user.name "nf-core-bot"
5161
git config push.default upstream
5262
git add .
5363
git status
54-
git commit -m "[automated] Fix linting with Prettier"
64+
git commit -m "[automated] Fix code linting"
5565
git push
66+
67+
- name: react if linting errors were fixed
68+
id: react-if-fixed
69+
if: steps.commit-and-push.outcome == 'success'
70+
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4
71+
with:
72+
comment-id: ${{ github.event.comment.id }}
73+
reactions: hooray
74+
75+
- name: react if linting errors were not fixed
76+
if: steps.commit-and-push.outcome == 'failure'
77+
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4
78+
with:
79+
comment-id: ${{ github.event.comment.id }}
80+
reactions: confused
81+
82+
- name: react if linting errors were not fixed
83+
if: steps.commit-and-push.outcome == 'failure'
84+
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4
85+
with:
86+
issue-number: ${{ github.event.issue.number }}
87+
body: |
88+
@${{ github.actor }} I tried to fix the linting errors, but it didn't work. Please fix them manually.
89+
See [CI log](https://github.com/nf-core/rnafusion/actions/runs/${{ github.run_id }}) for more details.

0 commit comments

Comments
 (0)