The extension can be published to PyPI and npm manually or using the Jupyter Releaser.
To refresh the packages list run python scripts/modules.py with the target version of JupyterLab installed.
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 twineTo 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_wheelis deprecated and will not work for this package.
Then to upload the package to PyPI, do:
twine upload dist/*To publish the frontend part of the extension as a NPM package, do:
npm login
npm publish --access publicThe 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-releaserrepo - Add
ADMIN_GITHUB_TOKEN,PYPI_TOKENandNPM_TOKENto 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
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.