Before you release

Warning

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.
    • Ensure wording will fill into a (Bluesky and/or Mastodon) post for the automated announcements.

Steps to release

Prepare release PR

    • For example, 1.0.0dev becomes 1.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.0 NOT v1.0.1rc).

    • Review the nf-core semantic versioning guidelines to decide if you need a patch, minor, or major release (for example 1.0.0 not 1.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.md entry for the title and release description.
    Note

    Use exactly the same version as in the code (for example: 1.0.0). Do not prefix with v (for example: not v1.0.0).

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:

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.>