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/master into landlab/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/landlab repository, checkout the release branch and tag it.
$ git tag vX.X.X
Then, push your tag on landlab/landlab/release to 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 master with 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
release
branch. 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 conda is 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 tag command (including git 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.