Before you release
If this is your first release, make sure to follow the first release tutorial for extra review requirements!
-
- It’s fine to decide that some things should be postponed until the next release. Move them on to the next milestone
-
- This is what reviewers will be checking against.
-
-
nf-core pipelines lint
-
-
- We recommend you also add the GitHub handle of the main contributors of each CHANGELOG entry (author, and significant reviewers etc.).
- This will mean each release on GitHub will display each contributors icons for extra visibility and recognition.
Steps to release
Prepare release PR
-
-
For example,
1.0.0devbecomes1.0.0. -
Use nf-core/tools make the changes:
nf-core pipelines bump-version <1.0.0> -
Please make sure to use strictly numeric release numbers that follow Semantic Versioning (for example, must be
1.0.0NOTv1.0.1rc). -
Review the nf-core semantic versioning guidelines to decide if you need a patch, minor, or major release (for example
1.0.0not1.0).
-
-
nf-core pipelines lint --release -
- For the human-readable release name, you can use any scheme you would like, for example nf-core/funcscan uses national dishes, nf-core/airrflow uses magic spells from Harry Potter, and nf-core/eager uses the C14th Swabian League of Cities
- If you don’t know what schema to use, you can use a code name generator. For example releases in nf-core/rnaseq use: A Metal (Prefix), and Animals (Dictionary), and no suffix.
Open release PR
Once all checks pass and pipeline version updated you are now ready to get your release review:
- (First release only) Request one review from one core or maintainers team member - feel free to ping the two teams on slack under your post on #release-review-trading.
- One review can come from a member of the same development team, but we strongly recommend the second to be an another external/neutral person from the community.
Make release
You can now formalise the release:
-
- We recommend that you copy your
CHANGELOG.mdentry for the title and release description.
NoteUse exactly the same version as in the code (for example:
1.0.0). Do not prefix with v (for example: notv1.0.0). - We recommend that you copy your
Post-release tasks
Automated events
A number of events are automatically triggered after the pipeline is released:
After release
Once all the automated steps are completed you should:
- For example for nf-core/atacseq.
You should also do some more manual advertising about your pipeline:
Finally, the last step is to bump up the pipeline version number in the development branch:
-
-
nf-core pipelines bump-version <1.1.0>dev
-
-
nf-test test tests/ --profile=+<docker/singularity/conda etc.>