How to create a Landlab release¶
The Release Checklist¶
Go to GitHub and use it to create a pull request that brings the changes associated with
landlab/landlab/masterintolandlab/landlab/release.Assuming the continuous integration from step 1 passes, merge the pull request into
landlab/landlab/release.Next, decide what new version number is appropriate based on Semantic Versioning.
This can either be done locally or on the GitHub website. Here are instructions to do this locally:
In the
landlab/landlabrepository, checkout thereleasebranch and tag it.$ git tag vX.X.X
Then, push your tag on
landlab/landlab/releaseto the remote.$ git push --tags
This will trigger both standard Landlab CI and a deploy stage that uploads wheels to PyPI. A new PR will be autogenerated in the landlab-feedstock on conda-forge.
Assuming its tests pass, merge the PR autogenerated in the landlab-feedstock.
Verify the builds on PyPI and on conda-forge.
Now tag the current version of
masterwith a “-dev” and push the tag.$ git tag vX.X.X-dev $ git push --tags
Notes¶
Although you can create such a tag on any branch, releases should only come from the
releasebranch. Make sure that when you create a tag you are doing so onrelease(and all your changes are committed).Landlab follows Semantic Versioning rules for version assignment and formatting. Please stick to them.
Helpful links¶
Using conda: What
condais and how to use it.git tags: What git tags are and how to create them.
The git tag command: A description of all of the options for the
git tagcommand (includinggit tag --delete).landlab on Travis: The latest Travis builds of landlab.
landlab on Anaconda: The conda packages for landlab releases.
Semantic Versioning: Rules for assigning and formatting versions.