Package Management & Distribution

Building and Distributing Packages with Setuptools #article - "Setuptools is a collection of enhancements to the Python distutils that allow developers to more easily build and distribute Python packages, especially ones that have dependencies on other packages."

Flit #software - "Flit is a simple way to put Python packages and modules on PyPI."

How to Publish an Open-Source Python Package to PyPI #article - "In this tutorial, you’ll cover how to upload your own package to PyPI. While getting your project published is easier than it used to be, there are still a few steps involved." 👍

pip #software - "pip is the package installer for Python. You can use pip to install packages from the Python Package Index and other indexes." PyPA recommended.

Pipenv #software - "Pipenv is a tool that aims to bring the best of all packaging worlds (bundler, composer, npm, cargo, yarn, etc.) to the Python world. ... It automatically creates and manages a virtualenv for your projects, as well as adds/removes packages from your Pipfile as you install/uninstall packages. It also generates the ever-important Pipfile.lock, which is used to produce deterministic builds." PyPA recommended.

pipx #software - "Execute binaries from Python packages in isolated environments. ❡ pipx is a tool to install and run any of the thousands of Python applications available on PyPI in a safe, convenient, and reliable way. Not all Python packages have entry points, but many do."

Python Packaging Authority - "The Python Packaging Authority (PyPA) is a working group that maintains many of the relevant projects in Python packaging."

Tool recommendations #article - Python Packaging Authority recommendations. "If you’re familiar with Python packaging and installation, and just want to know what tools are currently recommended, then here it is."

Twine - "Twine is a utility for publishing Python packages on PyPI. It provides build system independent uploads of source and binary distribution artifacts for both new and existing projects." PyPA recommended.

wheel - "This library is the reference implementation of the Python wheel packaging standard, as defined in PEP 427." PyPA recommended.

Last updated