Skip to content

A command-line script to guide you through the process of releasing a new version of your Python package on PyPI.

License

Notifications You must be signed in to change notification settings

tfiers/puprelease

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Puprelease

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.

Example

Screencast of making a new release with pup:

Installation

$ pip install puprelease

This will get you the

latest version on PyPI

To update an existing installation to this version, use pip install -U puprelease.

Usage

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.


Git tags for versioning

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.

About

A command-line script to guide you through the process of releasing a new version of your Python package on PyPI.

Topics

Resources

License

Stars

Watchers

Forks

Languages