A command-line script to guide you through the process of releasing a new version of your Python package on PyPI.
The goal is not having to remember and manually type the different release steps and checks.
Screencast of making a new release with pup:
$ pip install puprelease
This will get you the
To update an existing installation to this version, use pip install -U puprelease.
In the root directory of the package you want to release a new version of
(i.e. where your setup.py file is located), run:
$ pup
Then follow along with the program.
I recommend using git tags as the single-source-of-truth for package versions.
To do this, add the following lines to your setup.py, replacing the
version=... argument of the setup() call:
setup(
...
setup_requires=["setuptools_scm"],
use_scm_version={
"version_scheme": "post-release",
"local_scheme": "dirty-tag",
}, # Example configuration.
# See the docs [*] for other options.
)[*] setuptools_scm documentation.
Then call pup, which will take care of the rest, for each new release.
Also, check-out semantic versioning.
