Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update semantic_versioning.md #2842

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion sites/docs/src/content/docs/checklists/pipeline_release.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ If this is your first release, make sure to follow the [first release tutorial](
- [ ] For example, `1.0.0dev` becomes `1.0.0`
- [ ] Use the `nf-core pipelines bump-version` command to make the changes, eg: navigate to the pipeline directory and run `nf-core pipelines bump-version 1.0.0`
- [ ] Please make sure to use strictly numeric release numbers
- [ ] Use [Semantic Versioning](https://semver.org/)
- [ ] Use [Semantic Versioning](https://semver.org/) - see the [nf-core semantic versioning guidelines](docs/guidelines/pipelines/requirements/semantic_versioning.md) to decide if you need a patch, minor, or major release.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfeck 👍

- [ ] Make sure to update the version in any pipeline diagrams and other figures
- [ ] Run `nf-core pipelines lint --release` and check that there are no test failures for release.
- [ ] Check that `CHANGELOG.md` includes everything that has been added/fixed in this release, update the version number above the changes, and optionally add a human-readable release name (e.g. using a [code name generator](http://www.codenamegenerator.com/))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,22 @@ menu:
weight: 90
---

Pipelines must be released with stable release tags.
Releases must use GitHub releases and [keep a detailed changelog](https://keepachangelog.com/en/1.0.0/) file.
- Pipelines must be released with stable release tags.
- Releases must use GitHub releases and include a [detailed changelog](https://keepachangelog.com/en/1.0.0/) file.
- Release version tags must be numerical only (no `v` prefix) and should follow [semantic versioning](https://semver.org/) rules: `[major].[minor].[patch]`

Release version tags must be numerical only (no `v` prefix) and should follow [semantic versioning](https://semver.org/) rules: `[major].[minor].[patch]`
**Versioning Examples**

For example, starting with with a release version `1.4.3`, bumping the version to:
Starting from release version `1.4.3`, bumping the version to:

- `1.4.4` would be a patch release for minor things such as fixing bugs.
- `1.5` would be a minor release, for example adding some new features.
- `2.0` would correspond to the _major_ release where results would no longer be backwards compatible.
- **`1.4.4`**: A patch release for minor fixes such as bug corrections that do not modify how the user interacts with the pipeline. Examples:
- Inserting a missing argument to a process command line
- Updating a container build version of a tool that is otherwise the same version of the tool itself
pinin4fjords marked this conversation as resolved.
Show resolved Hide resolved
- Fixing the logic of the pipeline operators to ensure correct inputs for a process
- **`1.5.0`**: A minor release that adds new features without changing existing functionality. Examples:
- Adding a new parameter that adds new functionality/options to an existing module
- Add a new optional or default process that does not change the way the user interacts with previous steps of a pipeline
- **`2.0.0`**: A major release where execution interaction, inputs or result structures are no longer backwards compatible in terms of pipeline user interaction. Examples:
- Renaming or deprecations of existing parameter(s)
- Change to input sample sheet specification (adding, dropping, renaming of mandatory columns) or change the input samplesheet specification
- Note that a major release DOES NOT necessarily require new functionality
Loading