Releasing new versions

This page describes some of the steps required for releasing new versions of GCPy on Github, PyPi, and conda-forge.

  1. For clarity, update version numbers to the new release in the following locations:



    • docs/source/

    • benchmark/

    • benchmark/modules/

    • benchmark/modules/

  2. Update

  3. Merge dev into main

  4. Publish the release on Github.

  5. Install twine using pip install twine (if you haven’t done this before).

  6. To package GCPy for publication to PyPi, run the following from the root of your local GCPy repository:

    $ run python sdist bdist_wheel
    $ run twine check dist/*
    $ run twine upload --repository-url dist/*

    Enter your login credentials for as requested. Publishing to test.pypi ensures there are no issues with packaging the new release before publication to the primary PyPi database.

  7. Publish to PyPi by running run twine upload dist/*, and enter your login information for as requested.

  8. Verify the new release is visible at (may take a few minutes).

  9. After a period of time (around an hour), you will be notified of a new PR at indicating conda-forge has detected a new release on PyPi. You should be able to merge this PR without any additinal interference once all checks have passed.

  10. Once the feedstock PR has been merged and after another period of waiting, you should see builds for the new release when running conda search -f geoschem-gcpy. This indicates the new version is publicly available for installation through conda-forge.