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
intolandlab/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 therelease
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 (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.