Contributions are very welcome. Please make sure there is a github issue associated with with every pull request. Creating an issue is also a good way to propose new features.
For technical assistance with your contribution, please check the contributing guidelines on readthedocs.
Ensure all authors are present in:
CITATION.cff
era5cli/__version__.py
Ensure the right date and upcoming version number (including release candidate tag, if applicable) is set in:
CITATION.cff
era5cli/__version__.py
docs/source/conf.py
Update CHANGELOG.rst
with new features and fixes in the upcoming version.
Confirm that README.rst
is up to date with new features as well.
Open releases and draft a new release. Copy the changelog for this version into the description (though note that the description is in Markdown, so reformat from Rst if necessary).
Tag the release according to semantic versioning
guidelines, preceded with a v
(e.g.: v1.0.0). The
release title is the tag and the release date together (e.g.: v1.0.0
(2019-07-25)).
When releasing a release candidate on Github, tick the pre-release box, and
amend the version tag with -rc
and the candidate number. Ensure the release
candidate version is accurate in CITATION.cff
and era5cli/__version__.py
.
If the version number in these files is not updated, Zenodo release
workflows will fail.
Releasing a release candidate is not required, but can help detect bugs early.
Publishing a new release in github triggers the github Action workflow that
builds and publishes the package to test.PyPI or PyPI. Versions with "rc"
(release candidate) in their version tag will only be published to test.PyPI.
Other version tags will trigger a PyPI release. Inspect
.github/workflows/publish-to-pypi.yml
for more information.
Confirm a release candidate on test.PyPI with:
pip install -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ era5cli
Confirm the new release on Zenodo.
Wait a few hours, then confirm the addition of a new release on the RSD.
If any contributors have been added, or the description of the software has changed, this can be edited (by eScience Center employees) via the RSD admin interface. More information about this process (e.g. how to add a new contributor or new affiliation) can be found in the RSD documentation or in this blogpost.