Release how-to

Here are the step by step instructions to release a new version of xESMF.

  1. Make sure CHANGES.rst is up to date and includes a section on the version to be released;
  2. On GitHub, go the Releases page and click on Draft a new release;
  3. Enter new version in Tag version (e.g. v<major>.<minor>.<patch>);
  4. Enter the Release title (e.g. the same tag);
  5. Copy the relevant section of CHANGES.rst in the description;
  6. Click Publish release; Keep this tab open, we’ll come back to it.
  7. Go to Actions and in the left-hand menu select Upload xesmf to PyPi;
  8. Click on the release you just made;
  9. At the bottom of the page, wait for the action to complete then download the artifact to your local disk;
  10. Unzip it;
  11. Run shell command sha256sum on xesmf-<version>.tar.gz and copy the checksum string;
  12. Add the artifacts (drag & drop) to the Assets of the Github release you just created.
  13. Go to the conda-forge repo and edit the recipe/meta.yml file;
  14. Update the version on the first line to the latest release;
  15. Update the sha256 value in the source section to the checksum just calculated;
  16. Enter a commit message, e.g. (Update version to <version>);
  17. Submit the pull request (Propose changes);
  18. Get an approval from a maintainer to merge the pull request.

Note that Conda Forge’s Continuous Integration (CI) checks will fail if you haven’t uploaded the artifacts to the Github release assets or if the sha256 checksum does not match the asset’s. In case you need to re-run the CI checks, just post the comment @conda-forge-admin, please restart ci.