1================================================== 2Building and Distributing Packages with Setuptools 3================================================== 4 5``Setuptools`` is a collection of enhancements to the Python ``distutils`` 6that allow developers to more easily build and 7distribute Python packages, especially ones that have dependencies on other 8packages. 9 10Packages built and distributed using ``setuptools`` look to the user like 11ordinary Python packages based on the ``distutils``. 12 13Transition to PEP517 14==================== 15 16Since setuptools no longer serves as the default build tool, one must explicitly 17opt in (by providing a :file:`pyproject.toml` file) to use this library. The user 18facing part is provided by tools such as pip and 19backend interface is described :doc:`in this document <../build_meta>`. The 20quickstart provides an overview of the new workflow. 21 22.. toctree:: 23 :maxdepth: 1 24 25 quickstart 26 package_discovery 27 entry_point 28 dependency_management 29 datafiles 30 development_mode 31 distribution 32 extension 33 declarative_config 34 pyproject_config 35 keywords 36 commands 37 functionalities_rewrite 38 miscellaneous 39