Skip to content

Commit 5ce052d

Browse files
authored
Merge pull request #234 from nf-core/dev
Dev -> Master for 2.2.0 release
2 parents 27514c4 + 7d0d94f commit 5ce052d

Some content is hidden

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

64 files changed

+354
-322
lines changed

Diff for: .devcontainer/devcontainer.json

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
{
2+
"name": "nfcore",
3+
"image": "nfcore/gitpod:latest",
4+
"remoteUser": "gitpod",
5+
6+
// Configure tool-specific properties.
7+
"customizations": {
8+
// Configure properties specific to VS Code.
9+
"vscode": {
10+
// Set *default* container specific settings.json values on container create.
11+
"settings": {
12+
"python.defaultInterpreterPath": "/opt/conda/bin/python",
13+
"python.linting.enabled": true,
14+
"python.linting.pylintEnabled": true,
15+
"python.formatting.autopep8Path": "/opt/conda/bin/autopep8",
16+
"python.formatting.yapfPath": "/opt/conda/bin/yapf",
17+
"python.linting.flake8Path": "/opt/conda/bin/flake8",
18+
"python.linting.pycodestylePath": "/opt/conda/bin/pycodestyle",
19+
"python.linting.pydocstylePath": "/opt/conda/bin/pydocstyle",
20+
"python.linting.pylintPath": "/opt/conda/bin/pylint"
21+
},
22+
23+
// Add the IDs of extensions you want installed when the container is created.
24+
"extensions": ["ms-python.python", "ms-python.vscode-pylance", "nf-core.nf-core-extensionpack"]
25+
}
26+
}
27+
}

Diff for: .gitattributes

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
*.config linguist-language=nextflow
2+
*.nf.test linguist-language=nextflow
23
modules/nf-core/** linguist-generated
34
subworkflows/nf-core/** linguist-generated

Diff for: .github/CONTRIBUTING.md

+16
Original file line numberDiff line numberDiff line change
@@ -101,3 +101,19 @@ If you are using a new feature from core Nextflow, you may bump the minimum requ
101101
### Images and figures
102102

103103
For overview images and other documents we follow the nf-core [style guidelines and examples](https://nf-co.re/developers/design_guidelines).
104+
105+
## GitHub Codespaces
106+
107+
This repo includes a devcontainer configuration which will create a GitHub Codespaces for Nextflow development! This is an online developer environment that runs in your browser, complete with VSCode and a terminal.
108+
109+
To get started:
110+
111+
- Open the repo in [Codespaces](https://github.com/nf-core/smrnaseq/codespaces)
112+
- Tools installed
113+
- nf-core
114+
- Nextflow
115+
116+
Devcontainer specs:
117+
118+
- [DevContainer config](.devcontainer/devcontainer.json)
119+
- [Dockerfile](.devcontainer/Dockerfile)

Diff for: .github/ISSUE_TEMPLATE/bug_report.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ body:
4242
attributes:
4343
label: System information
4444
description: |
45-
* Nextflow version _(eg. 21.10.3)_
45+
* Nextflow version _(eg. 22.10.1)_
4646
* Hardware _(eg. HPC, Desktop, Cloud)_
4747
* Executor _(eg. slurm, local, awsbatch)_
4848
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter or Charliecloud)_

Diff for: .github/workflows/ci.yml

+6-2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@ on:
1111
env:
1212
NXF_ANSI_LOG: false
1313

14+
concurrency:
15+
group: "${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}"
16+
cancel-in-progress: true
17+
1418
jobs:
1519
test:
1620
name: Run pipeline with test data
@@ -20,14 +24,14 @@ jobs:
2024
strategy:
2125
matrix:
2226
NXF_VER:
23-
- "21.10.3"
27+
- "22.10.1"
2428
- "latest-everything"
2529
profile:
2630
- "test"
2731
- "test_no_genome"
2832
steps:
2933
- name: Check out pipeline code
30-
uses: actions/checkout@v2
34+
uses: actions/checkout@v3
3135

3236
- name: Install Nextflow
3337
uses: nf-core/setup-nextflow@v1

Diff for: .github/workflows/fix-linting.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
env:
2525
GITHUB_TOKEN: ${{ secrets.nf_core_bot_auth_token }}
2626

27-
- uses: actions/setup-node@v2
27+
- uses: actions/setup-node@v3
2828

2929
- name: Install Prettier
3030
run: npm install -g prettier @prettier/plugin-php
@@ -34,9 +34,9 @@ jobs:
3434
id: prettier_status
3535
run: |
3636
if prettier --check ${GITHUB_WORKSPACE}; then
37-
echo "::set-output name=result::pass"
37+
echo "result=pass" >> $GITHUB_OUTPUT
3838
else
39-
echo "::set-output name=result::fail"
39+
echo "result=fail" >> $GITHUB_OUTPUT
4040
fi
4141
4242
- name: Run 'prettier --write'

Diff for: .github/workflows/linting.yml

+10-8
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ name: nf-core linting
44
# that the code meets the nf-core guidelines.
55
on:
66
push:
7+
branches:
8+
- dev
79
pull_request:
810
release:
911
types: [published]
@@ -12,9 +14,9 @@ jobs:
1214
EditorConfig:
1315
runs-on: ubuntu-latest
1416
steps:
15-
- uses: actions/checkout@v2
17+
- uses: actions/checkout@v3
1618

17-
- uses: actions/setup-node@v2
19+
- uses: actions/setup-node@v3
1820

1921
- name: Install editorconfig-checker
2022
run: npm install -g editorconfig-checker
@@ -25,9 +27,9 @@ jobs:
2527
Prettier:
2628
runs-on: ubuntu-latest
2729
steps:
28-
- uses: actions/checkout@v2
30+
- uses: actions/checkout@v3
2931

30-
- uses: actions/setup-node@v2
32+
- uses: actions/setup-node@v3
3133

3234
- name: Install Prettier
3335
run: npm install -g prettier
@@ -38,7 +40,7 @@ jobs:
3840
PythonBlack:
3941
runs-on: ubuntu-latest
4042
steps:
41-
- uses: actions/checkout@v2
43+
- uses: actions/checkout@v3
4244

4345
- name: Check code lints with Black
4446
uses: psf/black@stable
@@ -69,12 +71,12 @@ jobs:
6971
runs-on: ubuntu-latest
7072
steps:
7173
- name: Check out pipeline code
72-
uses: actions/checkout@v2
74+
uses: actions/checkout@v3
7375

7476
- name: Install Nextflow
7577
uses: nf-core/setup-nextflow@v1
7678

77-
- uses: actions/setup-python@v3
79+
- uses: actions/setup-python@v4
7880
with:
7981
python-version: "3.7"
8082
architecture: "x64"
@@ -97,7 +99,7 @@ jobs:
9799

98100
- name: Upload linting log file artifact
99101
if: ${{ always() }}
100-
uses: actions/upload-artifact@v2
102+
uses: actions/upload-artifact@v3
101103
with:
102104
name: linting-logs
103105
path: |

Diff for: .github/workflows/linting_comment.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818

1919
- name: Get PR number
2020
id: pr_number
21-
run: echo "::set-output name=pr_number::$(cat linting-logs/PR_number.txt)"
21+
run: echo "pr_number=$(cat linting-logs/PR_number.txt)" >> $GITHUB_OUTPUT
2222

2323
- name: Post PR comment
2424
uses: marocchino/sticky-pull-request-comment@v2

Diff for: .prettierignore

+2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
email_template.html
22
adaptivecard.json
3+
slackreport.json
34
.nextflow*
45
work/
56
data/
@@ -8,3 +9,4 @@ results/
89
testing/
910
testing*
1011
*.pyc
12+
bin/

Diff for: CHANGELOG.md

+12-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,18 @@
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-
## [v2.1.0](https://github.com/nf-core/smrnaseq/releases/tag/2.1.0) - 2022-10-25 Maroon Tin Dalmatian
6+
## [v2.2.0](https://github.com/nf-core/smrnaseq/releases/tag/2.2.0) - 2023-04-26
7+
8+
- [[#220](https://github.com/nf-core/smrnaseq/issues/220)] - Fixed an issue where miRTrace reports fastq basename instead of sample ID
9+
- [[#208](https://github.com/nf-core/smrnaseq/issues/208)] - Fixed usability of `--skip_qc` parameter
10+
- Updated FASTP module to allow direct addition of adapter_fasta file to it
11+
- [[#205](https://github.com/nf-core/smrnaseq/issues/205)] - Fix mirTrace Report to be a single report again instead of per sample reports
12+
- [[#206](https://github.com/nf-core/smrnaseq/issues/206)] - Use % as separator in sed commands to enable conda working properly on OSX and Linux
13+
- [[#207](https://github.com/nf-core/smrnaseq/issues/224)] - Fix Samplesheet print error
14+
- Group samples by adapter sequence before running mirtrace
15+
- Remove `--skip_qc` parameter
16+
17+
## [v2.1.0](https://github.com/nf-core/smrnaseq/releases/tag/2.1.0) - 2022-10-20 Maroon Tin Dalmatian
718

819
### Enhancements & fixes
920

Diff for: CITATION.cff

-56
This file was deleted.

Diff for: LICENSE

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) P. Ewels, C. Wang, R. Hammarén, L. Pantano
3+
Copyright (c) P. Ewels, C. Wang, R. Hammarén, L. Pantano, A. Peltzer
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

Diff for: README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/smrnaseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.3456879-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.3456879)
44

5-
[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A521.10.3-23aa62.svg)](https://www.nextflow.io/)
5+
[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A522.10.1-23aa62.svg)](https://www.nextflow.io/)
66
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)
77
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)
88
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)
@@ -52,7 +52,7 @@ You can find numerous talks on the nf-core events page from various topics inclu
5252

5353
## Quick Start
5454

55-
1. Install [`Nextflow`](https://www.nextflow.io/docs/latest/getstarted.html#installation) (`>=21.10.3`)
55+
1. Install [`Nextflow`](https://www.nextflow.io/docs/latest/getstarted.html#installation) (`>=22.10.1`)
5656

5757
2. Install any of [`Docker`](https://docs.docker.com/engine/installation/), [`Singularity`](https://www.sylabs.io/guides/3.0/user-guide/) (you can follow [this tutorial](https://singularity-tutorial.github.io/01-installation/)), [`Podman`](https://podman.io/), [`Shifter`](https://nersc.gitlab.io/development/shifter/how-to-use/) or [`Charliecloud`](https://hpc.github.io/charliecloud/) for full pipeline reproducibility _(you can use [`Conda`](https://conda.io/miniconda.html) both to install Nextflow itself and also to manage software within pipelines. Please only use it within pipelines as a last resort; see [docs](https://nf-co.re/usage/configuration#basic-configuration-profiles))_.
5858

Diff for: assets/methods_description_template.yml

-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ description: "Suggested text and references to use when describing pipeline usag
33
section_name: "nf-core/smrnaseq Methods Description"
44
section_href: "https://github.com/nf-core/smrnaseq"
55
plot_type: "html"
6-
## TODO nf-core: Update the HTML below to your prefered methods description, e.g. add publication citation for this pipeline
7-
## You inject any metadata in the Nextflow '${workflow}' object
86
data: |
97
<h4>Methods</h4>
108
<p>Data was processed using nf-core/smrnaseq v${workflow.manifest.version} ${doi_text} of the nf-core collection of workflows (<a href="https://doi.org/10.1038/s41587-020-0439-x">Ewels <em>et al.</em>, 2020</a>).</p>

Diff for: assets/slackreport.json

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
{
2+
"attachments": [
3+
{
4+
"fallback": "Plain-text summary of the attachment.",
5+
"color": "<% if (success) { %>good<% } else { %>danger<%} %>",
6+
"author_name": "sanger-tol/readmapping v${version} - ${runName}",
7+
"author_icon": "https://www.nextflow.io/docs/latest/_static/favicon.ico",
8+
"text": "<% if (success) { %>Pipeline completed successfully!<% } else { %>Pipeline completed with errors<% } %>",
9+
"fields": [
10+
{
11+
"title": "Command used to launch the workflow",
12+
"value": "```${commandLine}```",
13+
"short": false
14+
}
15+
<%
16+
if (!success) { %>
17+
,
18+
{
19+
"title": "Full error message",
20+
"value": "```${errorReport}```",
21+
"short": false
22+
},
23+
{
24+
"title": "Pipeline configuration",
25+
"value": "<% out << summary.collect{ k,v -> k == "hook_url" ? "_${k}_: (_hidden_)" : ( ( v.class.toString().contains('Path') || ( v.class.toString().contains('String') && v.contains('/') ) ) ? "_${k}_: `${v}`" : (v.class.toString().contains('DateTime') ? ("_${k}_: " + v.format(java.time.format.DateTimeFormatter.ofLocalizedDateTime(java.time.format.FormatStyle.MEDIUM))) : "_${k}_: ${v}") ) }.join(",\n") %>",
26+
"short": false
27+
}
28+
<% }
29+
%>
30+
],
31+
"footer": "Completed at <% out << dateComplete.format(java.time.format.DateTimeFormatter.ofLocalizedDateTime(java.time.format.FormatStyle.MEDIUM)) %> (duration: ${duration})"
32+
}
33+
]
34+
}

Diff for: bin/check_samplesheet.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,13 @@ def check_samplesheet(file_in, file_out):
5050

5151
sample_mapping_dict = {}
5252
with open(file_in, "r") as fin:
53-
5453
## Check header
5554
MIN_COLS = 2
5655
HEADER = ["sample", "fastq_1"]
5756
header = [x.strip('"') for x in fin.readline().strip().split(",")]
5857
if any([item not in header for item in HEADER]):
5958
missing = [item for item in HEADER if item not in header]
60-
eprint("ERROR: Please check samplesheet header. Missing columns: '{}'".format(",".join(missing)))
59+
print_error("ERROR: Please check samplesheet header. Missing columns: '{}'".format(",".join(missing)))
6160
sys.exit(1)
6261

6362
## Check sample entries

Diff for: bin/edgeR_miRBase.r

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ for (i in 1:2) {
4343
# Only subset if at least one sample is remaining
4444
nr_keep <- sum(row_sub)
4545
if (nr_keep > 0){
46-
data<-data[!row_sub,]
46+
data<-data[!row_sub,, drop=FALSE]
4747
}
4848
#Also check for colSums > 0, otherwise DGEList will fail if samples have entirely colSum == 0 #Fixes #134
4949
drop_colsum_zero <- (colSums(data, na.rm=T) != 0) # T if colSum is not 0, F otherwise

Diff for: conf/modules.config

+2-3
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ process {
8787
}
8888
}
8989

90-
if (!(params.skip_fastqc || params.skip_qc)) {
90+
if (!(params.skip_fastqc)) {
9191
process {
9292
withName: '.*:FASTQC_FASTP:FASTQC_.*' {
9393
ext.args = '--quiet'
@@ -104,8 +104,7 @@ if (!params.skip_fastp) {
104104
params.three_prime_clip_r1 > 0 ? "--trim_tail1 ${params.three_prime_clip_r1}" : "", // Remove bp from the 3' end of read 1 AFTER adapter/quality trimming has been performed.
105105
params.fastp_min_length > 0 ? "-l ${params.fastp_min_length}" : "",
106106
params.fastp_max_length > 0 ? "--max_len1 ${params.fastp_max_length}" : "",
107-
params.three_prime_adapter == null ? '' : "--adapter_sequence ${params.three_prime_adapter}",
108-
params.fastp_known_mirna_adapters == null ? '' : "--adapter_fasta ${params.fastp_known_mirna_adapters}"
107+
params.three_prime_adapter == null ? '' : "--adapter_sequence ${params.three_prime_adapter}"
109108
].join(" ").trim()
110109
publishDir = [
111110
[

0 commit comments

Comments
 (0)