.. _jupyter_console_release:
Making a release as a maintainer
================================
This document guides a maintainer through creating a release of the Jupyter
console.
Clean the repository
--------------------
Remove all non-tracked files with:
.. code:: bash
git clean -xfdi
This will ask you for confirmation before removing all untracked files. Make
sure the ``dist/`` folder is clean and does not contain any stale builds from
previous attempts.
Create the release
------------------
#. Set Environment variables
Set environment variables to document current release version, and git tag:
.. code:: bash
VERSION=4.1.0
#. Update version number in ``jupyter_console/_version.py``. Make sure that
a valid `PEP 440 `_ version is
being used.
#. Commit and tag the release with the current version number:
.. code:: bash
git commit -am "release $VERSION"
git tag $VERSION
#. You are now ready to build the ``sdist`` and ``wheel``:
.. code:: bash
python setup.py sdist --formats=gztar
python setup.py bdist_wheel
#. You can now test the ``wheel`` and the ``sdist`` locally before uploading
to PyPI. Make sure to use `twine `_ to
upload the archives over SSL.
.. code:: bash
twine upload dist/*
#. If all went well, change the ``jupyter_console/_version.py`` to the next
release.
#. Push directly on master, not forgetting to push ``--tags`` too.