Skip to main content

Python Packaging Library

Project description

Distutils2 development is stopped.

tl;dr: keep using setuptools and pip for now, don’t use distutils2.

Distutils2 tried to be all things to all people; Python core developers and developers of packaging tools have a different strategy to improve packaging. First, various features are discussed and integrated into Python on their own, such as namespace packages and virtual environments (Python 3.3). Second, a new format is defined for binary distibutions (wheel). Third, pip is blessed as de facto standard installer and installed with Python (3.4). Ongoing, new PEPs are in progress to make version numbers more robust, metadata more comprehensive, wheels usable on more platforms, build tools more flexible, etc. Other efforts like conda, bento, hashdist or pyinstaller may serve different needs of specific Python communities better.

Older description follows.

Welcome to Distutils2

Distutils2 is the packaging library that supersedes Distutils. It has three main audiences:

  • Python authors who want to distribute their code
  • End users who want to install modules or applications
  • Developers of packaging-related tools who need a support library to build on

Authors will have to write a setup.cfg file and run a few commands to package and distribute their code. End users will be able to search for, install and remove Python projects with the included pysetup program. Last, developers will be able to reuse classes and functions in their tools.

The Distutils2 codebase is a fork of Distutils. It is not backward compatible with Distutils and does not depend on it. It provides more features and implements new packaging standards. In Python 3.3, Distutils2 is included in the standard library under the module name “packaging”. Documentation is provided at http://docs.python.org/dev/packaging –for ease of maintenance, it is not duplicated in this repository. You can use the Packaging documentation to use Distutils2; only the package name is different (packaging vs. distutils2), all modules, classes and functions have the same name.

If you want to contribute, please have a look at DEVNOTES.txt or http://wiki.python.org/Distutils2/Contributing .

Beware that Distutils2 is still in alpha stage and its API is subject to change. It should be not used for critical deployments. That said, it is possible to start using it while keeping compatiblity with tools based on the old Distutils or Setuptools, and the developers are eager to get feedback from authors, end users and developers.

Useful links:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
Distutils2-1.0a4.tar.gz (894.1 kB) Copy SHA256 hash SHA256 Source None Mar 13, 2012

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page