The current release process is still a bit manual, but should hopefully improve and be more automated soon.
To get a clean environment, the simplest is to follow the documentation for contributing: https://jupyterlite.readthedocs.io/en/latest/contributing.html
Alternatively, a local repository can be cleaned with:
git clean -fdx
We use github-activity
to
generate the Changelog based on GitHub labels.
This can be generated locally by running github-activity
locally.
Or using the Draft Changelog GitHub Actions workflow from the Jupyter Releaser to handle that automatically: https://github.com/jupyter-server/jupyter_releaser#typical-workflow
To update the version:
- JS packages:
yarn update:dependency --regex @jupyterlite <new-version-spec
- Python packages with the search / replace on the Python releated files
Here is an example commit that bumps the versions: https://github.com/jupyterlite/jupyterlite/commit/99dcbe7e445901bd09b34b7f0a19ca13af37312a
TBD: streamline the bump version process and sync between Python and JS packages.
git add .
git commit -m "Release x.y.z"
git tag x.y.z
git push upstream main --tags
When the new tag is pushed, a GitHub Actions workflow will create the new draft GitHub Release.
Go to the draft release, paste the new changelog entry, and press Publish.
To release the jupyterlite
command line tool on PyPI, download the Python assets from
the GitHub Release (previous step). Then:
cd path-to-assets/
twine upload *
TBD
TBD