Contributions are welcome. Fork this repository and open a pull request to propose changes. Consider submitting an issue to discuss any proposed changes with the maintainers before submitting a pull request.
Build and install the plugin to your local Nextflow installation:
make installRun with Nextflow as usual:
nextflow run seqeralabs/nf-canary -plugins nf-ga4gh@<version>Community contributions must adhere to the following standards:
-
Every change must be proposed through a pull request (PR)
-
All functionality (e.g. config options) must be documented in the README (or the
docsfolder if needed) -
Every PR must be approved by at least one maintainer or a delegated reviewer
-
Every PR must pass the required CI checks, which include building the plugin, unit tests, and an end-to-end test with a Nextflow pipeline
-
PRs must be squashed when merged to
main -
Community PRs must not update the version file -- the version should only be updated in a separate release commit when making a release
The plugin follows semantic versioning -- major.minor.patch, where major is bumped for breaking changes, minor is bumped for new functionality, and patch is bumped for bug fixes.
In practice, it is acceptable to bump only the minor version for small breaking changes (e.g. removing an old feature). Users can pin a minor version in their config to receive the latest patch release without breaking changes:
plugins {
// use the latest 1.4.x release
id 'nf-ga4gh@~1.4.0'
}To publish a new plugin version:
-
Update the version file and make a release commit (e.g. "Release 1.4.0").
-
Run
make releaseto build and publish the plugin. -
Make a GitHub release.
See the Nextflow documentation to learn how to authenticate with the Nextflow registry. Currently, only one person at a time can "own" the plugin and publish new versions.