Skip to content

Commit 03ab820

Browse files
authored
Merge pull request #888 from nf-core/dev
Dev > Master for 1.13 release
2 parents 8c68650 + 8a2f7e6 commit 03ab820

File tree

185 files changed

+8346
-4453
lines changed

Some content is hidden

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

185 files changed

+8346
-4453
lines changed

.github/CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ We aim to write function docstrings according to the [Google Python style-guide]
5757
You can find this documentation here: [https://nf-co.re/tools-docs/](https://nf-co.re/tools-docs/)
5858

5959
If you would like to test the documentation, you can install Sphinx locally by following Sphinx's [installation instruction](https://www.sphinx-doc.org/en/master/usage/installation.html).
60-
Once done, you can run `make clean` and then `make html` in the root directory of `nf-core tools`.
60+
Once done, you can run `make clean` and then `make html` in the `docs/api` directory of `nf-core tools`.
6161
The HTML will then be generated in `docs/api/_build/html`.
6262

6363
## Tests

.github/markdownlint.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ no-inline-html:
1010
- kbd
1111
- details
1212
- summary
13+
- kbd
1314
# tools only - the {{ jinja variables }} break URLs and cause this to error
1415
no-bare-urls: false
1516
# tools only - suppresses error messages for usage of $ in main README

.github/workflows/branch.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,12 @@ jobs:
2323
message: |
2424
Hi @${{ github.event.pull_request.user.login }},
2525
26-
It looks like this pull-request has been made against the ${{github.event.pull_request.head.repo.full_name}} `master` branch. The `master` branch on nf-core repositories should always contain code from the latest release. Because of this, PRs to `master` are only allowed if they come from the ${{github.event.pull_request.head.repo.full_name}} `dev` branch.
26+
It looks like this pull-request has been made against the ${{github.event.pull_request.base.repo.full_name}} `master` branch.
27+
The `master` branch on nf-core repositories should always contain code from the latest release.
28+
Because of this, PRs to `master` are only allowed if they come from the ${{github.event.pull_request.base.repo.full_name}} `dev` branch.
2729
2830
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.
31+
Note that even after this, the test will continue to show as failing until you push a new commit.
2932
3033
Thanks again for your contribution!
3134
repo-token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/create-lint-wf.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,16 @@ jobs:
3030
- name: Run nf-core/tools
3131
run: |
3232
nf-core --log-file log.txt create -n testpipeline -d "This pipeline is for testing" -a "Testing McTestface"
33-
nf-core --log-file log.txt lint nf-core-testpipeline
33+
nf-core --log-file log.txt lint nf-core-testpipeline --fail-ignored
3434
nf-core --log-file log.txt list
3535
nf-core --log-file log.txt licences nf-core-testpipeline
3636
nf-core --log-file log.txt sync nf-core-testpipeline/
3737
nf-core --log-file log.txt schema build nf-core-testpipeline/ --no-prompts
3838
nf-core --log-file log.txt bump-version nf-core-testpipeline/ 1.1
39-
nf-core --log-file log.txt modules install nf-core-testpipeline/ fastqc
39+
nf-core --log-file log.txt modules install nf-core-testpipeline/ --tool fastqc
4040
4141
- name: Upload log file artifact
42+
if: ${{ always() }}
4243
uses: actions/upload-artifact@v2
4344
with:
4445
name: nf-core-log-file

.github/workflows/tools-api-docs.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ jobs:
1919

2020
- name: Install python dependencies
2121
run: |
22-
python -m pip install --upgrade pip Sphinx sphinxcontrib-napoleon
22+
pip install --upgrade pip
23+
pip install -r ./docs/api/requirements.txt
2324
pip install .
2425
2526
- name: Build HTML docs
@@ -30,6 +31,7 @@ jobs:
3031
run: |
3132
git checkout --orphan api-doc
3233
git rm -r --cache .
34+
rm .gitignore
3335
git config user.email "[email protected]"
3436
git config user.name "nf-core-bot"
3537
git add docs

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
.coverage
44
.pytest_cache
5+
docs/api/_build
56

67
# Byte-compiled / optimized / DLL files
78
__pycache__/
@@ -20,7 +21,6 @@ dist/
2021
downloads/
2122
eggs/
2223
.eggs/
23-
lib/
2424
lib64/
2525
parts/
2626
sdist/

CHANGELOG.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,69 @@
11
# nf-core/tools: Changelog
22

3+
## [v1.13 - Copper Crocodile](https://github.com/nf-core/tools/releases/tag/1.13) - [2021-03-18]
4+
5+
### Template
6+
7+
* **Major new feature** - Validation of pipeline parameters [[#426]](https://github.com/nf-core/tools/issues/426)
8+
* The addition runs as soon as the pipeline launches and checks the pipeline input parameters two main things:
9+
* No parameters are supplied that share a name with core Nextflow options (eg. `--resume` instead of `-resume`)
10+
* Supplied parameters validate against the pipeline JSON schema (eg. correct variable types, required values)
11+
* If either parameter validation fails or the pipeline has errors, a warning is given about any unexpected parameters found which are not described in the pipeline schema.
12+
* This behaviour can be disabled by using `--validate_params false`
13+
* Added profiles to support the [Charliecloud](https://hpc.github.io/charliecloud/) and [Shifter](https://nersc.gitlab.io/development/shifter/how-to-use/) container engines [[#824](https://github.com/nf-core/tools/issues/824)]
14+
* Note that Charliecloud requires Nextflow version `v21.03.0-edge` or later.
15+
* Profiles for container engines now explicitly _disable_ all other engines [[#867](https://github.com/nf-core/tools/issues/867)]
16+
* Fixed typo in nf-core-lint CI that prevented the markdown summary from being automatically posted on PRs as a comment.
17+
* Changed default for `--input` from `data/*{1,2}.fastq.gz` to `null`, as this is now validated by the schema as a required value.
18+
* Removed support for `--name` parameter for custom run names.
19+
* The same functionality for MultiQC still exists with the core Nextflow `-name` option.
20+
* Added to template docs about how to identify process name for resource customisation
21+
* The parameters `--max_memory` and `--max_time` are now validated against a regular expression [[#793](https://github.com/nf-core/tools/issues/793)]
22+
* Must be written in the format `123.GB` / `456.h` with any of the prefixes listed in the [Nextflow docs](https://www.nextflow.io/docs/latest/process.html#memory)
23+
* Bare numbers no longer allowed, avoiding people from trying to specify GB and actually specifying bytes.
24+
* Switched from cookiecutter to Jinja2 [[#880]](https://github.com/nf-core/tools/pull/880)
25+
* Finally dropped the wonderful [cookiecutter](https://github.com/cookiecutter/cookiecutter) library that was behind the first pipeline template that led to nf-core [[#880](https://github.com/nf-core/tools/pull/880)]
26+
* Now rendering templates directly using [Jinja](https://jinja.palletsprojects.com/), which is what cookiecutter was doing anyway
27+
28+
### Modules
29+
30+
Initial addition of a number of new helper commands for working with DSL2 modules:
31+
32+
* `modules list` - List available modules
33+
* `modules install` - Install a module from nf-core/modules
34+
* `modules remove` - Remove a module from a pipeline
35+
* `modules create` - Create a module from the template
36+
* `modules create-test-yml` - Create the `test.yml` file for a module with md5 sums, tags, commands and names added
37+
* `modules lint` - Check a module against nf-core guidelines
38+
39+
You can read more about each of these commands in the main tools documentation (see `README.md` or <https://nf-co.re/tools>)
40+
41+
### Tools helper code
42+
43+
* Fixed some bugs in the command line interface for `nf-core launch` and improved formatting [[#829](https://github.com/nf-core/tools/pull/829)]
44+
* New functionality for `nf-core download` to make it compatible with DSL2 pipelines [[#832](https://github.com/nf-core/tools/pull/832)]
45+
* Singularity images in module files are now discovered and fetched
46+
* Direct downloads of Singularity images in python allowed (much faster than running `singularity pull`)
47+
* Downloads now work with `$NXF_SINGULARITY_CACHEDIR` so that pipelines sharing containers have efficient downloads
48+
* Changed behaviour of `nf-core sync` command [[#787](https://github.com/nf-core/tools/issues/787)]
49+
* Instead of opening or updating a PR from `TEMPLATE` directly to `dev`, a new branch is now created from `TEMPLATE` and a PR opened from this to `dev`.
50+
* This is to make it easier to fix merge conflicts without accidentally bringing the entire pipeline history back into the `TEMPLATE` branch (which makes subsequent sync merges much more difficult)
51+
52+
### Linting
53+
54+
* Major refactor and rewrite of pipieline linting code
55+
* Much better code organisation and maintainability
56+
* New automatically generated documentation using Sphinx
57+
* Numerous new tests and functions, removal of some unnecessary tests
58+
* Added lint check for merge markers [[#321]](https://github.com/nf-core/tools/issues/321)
59+
* Added new option `--fix` to automatically correct some problems detected by linting
60+
* Added validation of default params to `nf-core schema lint` [[#823](https://github.com/nf-core/tools/issues/823)]
61+
* Added schema validation of GitHub action workflows to lint function [[#795](https://github.com/nf-core/tools/issues/795)]
62+
* Fixed bug in schema title and description validation
63+
* Added second progress bar for conda dependencies lint check, as it can be slow [[#299](https://github.com/nf-core/tools/issues/299)]
64+
* Added new lint test to check files that should be unchanged from the pipeline.
65+
* Added the possibility to ignore lint tests using a `nf-core-lint.yml` config file [[#809](https://github.com/nf-core/tools/pull/809)]
66+
367
## [v1.12.1 - Silver Dolphin](https://github.com/nf-core/tools/releases/tag/1.12.1) - [2020-12-03]
468

569
### Template

0 commit comments

Comments
 (0)