We follow semantic versioning, e.g.,
v1.0.0. A major version causes incompatible API
changes, a minor version adds functionality, and a patch covers bug fixes.
Create a new branch
release-v1.0.0with the version for the release.
Make sure all new changes and features are reflected in the documentation.
Open a new pull request for this branch targeting
After all tests pass and the PR has been approved, merge the PR into
Tag a release and push to github:
$ git tag -a v1.0.0 -m "Version 1.0.0" $ git push upstream main --tags
We use Github Actions to automate the new release being published to PyPI. Simply confirm that the new release is reflected at https://pypi.org/project/climpred/. There is typically a delay, but check Github Actions if there’s an issue, and otherwise you can manually do it with the following:
$ git clean -xfd # remove any files not checked into git $ python setup.py sdist bdist_wheel --universal # build package $ twine upload dist/* # register and push to pypi
Next, update the stable branch with
main. This will trigger a stable build for ReadTheDocs:
$ git checkout stable $ git rebase main $ git push -f upstream stable $ git checkout main
Go to https://readthedocs.org and add the new version to
"Active Versions"under the version tab. Force-build
"stable"if it isn’t already building.
Update climpred conda-forge feedstock
Clone this fork and edit recipe:$ git clone email@example.com:username/climpred-feedstock.git $ cd climpred-feedstock $ cd recipe $ # edit meta.yaml
sha256from pypi.org for climpred
requirements.txtfrom the main
climpredrepo is accounted for in
meta.yamlfrom the feedstock.
Fill in the rest of information as described here
Commit and submit a PR