New release
The ase/utils/newrelease.py
script generates a new release.
The instructions below were written before this script, so some
of these steps are in fact automatic now.
Make sure all tests pass.
Go through the git-logs and make sure all important changes since last stable release are mentioned in the Release notes.
Build the web-page:
$ cd doc $ make clean $ make
and check the generated images with
make inspect
.Update
__version__
to"x.y.z"
in ase/__init__.py.Upload to PyPI:
$ python3 setup.py sdist $ python3 setup.py bdist_wheel $ twine upload dist/*
Push and make a tag “x.y.z”.
Create pull-request for Easy-Build. The EasyBuild (
.eb
) files are in docs/development/easybuild.Rename the old
.eb
files, updating the ASE version number. There are two.eb
files, one for Python 2.7.12 and one for Python 3.5.2. Usegit mv
to rename the files.Edit file file.
Update the version number.
Remove the checksum (delete the entire line in the file).
Check the syntax and style, and insert new checksums by running these commands:
eb --check-style ASE-X.Y.X-Python*.eb eb --inject-checksums sha256 ASE-X.Y.X-Python*.eb
Submit the new files:
eb --new-pr --pr-commit-message "ASE updated to version X.Y.Z" ASE-X.Y.X-Python*.eb
Commit the updated
*.eb
files, so they will be part of the next release.
If the commands above fail, you need to integrate EasyBuild with github.
Export issues, MR’s, … from GitLab (https://gitlab.com/ase/ase/) and store the tar-file in a safe place.
Merge master into the web-page branch (which is used for creating the web-page for the stable version).
Update version numbers in News, Release notes and Installation pages.
Increase the version number and push (“x.y+1.0b1”).
Send announcement email to the
ase-users
mailing list.Number of commits since last release:
$ git shortlog -s -n 3.13.0..