To release a new version of the widgets on PyPI and npm, first checkout
master and cd into the repo root. Make sure the version in widget.py
matches
the JS frontend version. Also check that the frontend version specified in
manager-base.js
(version
) is correct.
# nuke the `dist` and `node_modules`
git clean -fdx
npm version [patch/minor/major]
npm install
npm publish
edit package.json to point to new jupyter-js-widgets version
npm version [patch/minor/major]
edit widgetsnbextension/_version.py (Remove dev from the version. If it's the first beta, use b1, etc...)
python setup.py sdist upload && python setup.py bdist_wheel upload
edit ipywidgets/_version.py (remove dev from the version and update the frontend version requirement)
Change install_requires to point to new widgetsnbextension version
python setup.py sdist upload && python setup.py bdist_wheel upload
commit and tag (ipywidgets) release
edit ipywidgets/_version.py (increase version and add dev tag)
edit widgetsnbextension/widgetsnbextension/_version.py (increase version and add dev tag)
git add ipywidgets/_version.py
git add widgetsnbextension/widgetsnbextension/_version.py
git commit -m "Back to dev"
git push [upstream master]
git push [upstream] --tags
On GitHub