2.1 KiB
Making a new release of jupyterlab_sandbox_theme
The extension can be published to PyPI
and npm
manually or using the Jupyter Releaser.
Manual release
Python package
This extension can be distributed as Python
packages. All of the Python
packaging instructions in the pyproject.toml
file to wrap your extension in a
Python package. Before generating a package, we first need to install build
.
pip install build twine hatch
Bump the version using hatch
. By default this will create a tag.
See the docs on hatch-nodejs-version for details.
hatch version <new-version>
To create a Python source package (.tar.gz
) and the binary package (.whl
) in the dist/
directory, do:
python -m build
python setup.py sdist bdist_wheel
is deprecated and will not work for this package.
Then to upload the package to PyPI, do:
twine upload dist/*
NPM package
To publish the frontend part of the extension as a NPM package, do:
npm login
npm publish --access public
Automated releases with the Jupyter Releaser
The extension repository should already be compatible with the Jupyter Releaser.
Check out the workflow documentation for more information.
Here is a summary of the steps to cut a new release:
- Fork the
jupyter-releaser
repo - Add
ADMIN_GITHUB_TOKEN
,PYPI_TOKEN
andNPM_TOKEN
to the Github Secrets in the fork - Go to the Actions panel
- Run the "Draft Changelog" workflow
- Merge the Changelog PR
- Run the "Draft Release" workflow
- Run the "Publish Release" workflow
Publishing to conda-forge
If the package is not on conda forge yet, check the documentation to learn how to add it: https://conda-forge.org/docs/maintainer/adding_pkgs.html
Otherwise a bot should pick up the new version publish to PyPI, and open a new PR on the feedstock repository automatically.