-
Create a new virtual environment following the instructions in
CONTRIBUTING.md
. Make sure to also install all dependencies for the documentation. -
Make certain your branch is in sync with head:
git pull upstream main
-
Do a clean doc build:
hatch run doc:clean-all hatch run doc:build-html hatch run doc:serve
Navigate to http://localhost:8000 and ensure it looks OK (particularly do a visual scan of the gallery thumbnails).
-
Make sure changes.rst is up to date for the release: compare against PRs merged since the last release & update top heading with release date.
-
Update version to, e.g. 5.0.0:
- in
altair/__init__.py
- in
doc/conf.py
- in
-
Double-check that all vega-lite/vega/vega-embed versions are up-to-date:
- URLs in
doc/conf.py
- versions in
altair/vegalite/v5/display.py
- URLs in
-
Commit change and push to main:
git add . -u git commit -m "MAINT: bump version to 5.0.0" git push upstream main
-
Tag the release:
git tag -a v5.0.0 -m "version 5.0.0 release" git push upstream v5.0.0
-
Build source & wheel distributions:
hatch clean # clean old builds & distributions hatch build # create a source distribution and universal wheel
-
publish to PyPI (Requires correct PyPI owner permissions):
hatch publish
-
build and publish docs (Requires write-access to altair-viz/altair-viz.github.io):
hatch run doc:publish-clean-build
-
update version to, e.g. 5.1.0dev:
- in
altair/__init__.py
- in
doc/conf.py
- in
-
add a new changelog entry for the unreleased version:
Version 5.1.0 (unreleased) -------------------------- Enhancements ~~~~~~~~~~~~ Bug Fixes ~~~~~~~~~ Backward-Incompatible Changes ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
Commit change and push to main:
git add . -u git commit -m "MAINT: bump version to 5.1.0dev" git push upstream main
-
Double-check that a conda-forge pull request is generated from the updated pip package by the conda-forge bot (may take up to ~an hour): https://github.com/conda-forge/altair-feedstock/pulls
-
Copy changes.rst section into release notes within https://github.com/altair-viz/altair/releases/, and publish the release.