Contents  Menu  Expand  Light mode  Dark mode  Auto light/dark mode

Hide navigation sidebar

Hide table of contents sidebar

Toggle site navigation sidebar

_ _

[ Python Packaging User Guide  ](../../)

Toggle Light / Dark / Auto color theme

Toggle table of contents sidebar

_ _

[ Python Packaging User Guide  ](../../)

  * [ Overview of Python Packaging ](../../overview/)
  * [ The Packaging Flow ](../../flow/)
  * [ Tutorials ](../../tutorials/)

Toggle navigation of Tutorials

_ _

    * [ Installing Packages ](../../tutorials/installing-packages/)
    * [ Managing Application Dependencies ](../../tutorials/managing-dependencies/)
    * [ Packaging Python Projects ](../../tutorials/packaging-projects/)
  * [ Guides ](../../guides/)

Toggle navigation of Guides

_ _

    * [ Installation ](../../guides/section-install/)

Toggle navigation of Installation

_ _

      * [ Install packages in a virtual environment using pip and venv ](../../guides/installing-using-pip-and-virtual-environments/)
      * [ Installing packages using virtualenv ](../../guides/installing-using-virtualenv/)
      * [ Installing stand alone command line tools ](../../guides/installing-stand-alone-command-line-tools/)
      * [ Installing pip/setuptools/wheel with Linux Package Managers ](../../guides/installing-using-linux-tools/)
      * [ Installing scientific packages ](../../guides/installing-scientific-packages/)
    * [ Building and Publishing ](../../guides/section-build-and-publish/)

Toggle navigation of Building and Publishing

_ _

      * [ Writing your ` pyproject.toml  ` ](../../guides/writing-pyproject-toml/)
      * [ Packaging and distributing projects ](../../guides/distributing-packages-using-setuptools/)
      * [ Single-sourcing the package version ](../../guides/single-sourcing-package-version/)
      * [ Dropping support for older Python versions ](../../guides/dropping-older-python-versions/)
      * [ Packaging binary extensions ](../../guides/packaging-binary-extensions/)
      * [ Packaging namespace packages ](../../guides/packaging-namespace-packages/)
      * [ Creating and discovering plugins ](../../guides/creating-and-discovering-plugins/)
      * [ Using TestPyPI ](../../guides/using-testpypi/)
      * [ Making a PyPI-friendly README ](../../guides/making-a-pypi-friendly-readme/)
      * [ Publishing package distribution releases using GitHub Actions CI/CD workflows ](../../guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/)
      * [ How to modernize a ` setup.py  ` based project? ](../../guides/modernize-setup-py-project/)
    * [ Hosting ](../../guides/section-hosting/)

Toggle navigation of Hosting

_ _

      * [ Package index mirrors and caches ](../../guides/index-mirrors-and-caches/)
      * [ Hosting your own simple repository ](../../guides/hosting-your-own-index/)
    * [ Tool recommendations ](../../guides/tool-recommendations/)
    * [ Analyzing PyPI package downloads ](../../guides/analyzing-pypi-package-downloads/)
  * [ Discussions ](../../discussions/)

Toggle navigation of Discussions

_ _

    * [ Versioning ](../../discussions/versioning/)
    * [ Deploying Python applications ](../../discussions/deploying-python-applications/)
    * [ pip vs easy_install ](../../discussions/pip-vs-easy-install/)
    * [ install_requires vs requirements files ](../../discussions/install-requires-vs-requirements/)
    * [ Distribution package vs. import package ](../../discussions/distribution-package-vs-import-package/)
    * [ Package Formats ](../../discussions/package-formats/)
    * [ src layout vs flat layout ](../../discussions/src-layout-vs-flat-layout/)
    * [ Is ` setup.py  ` deprecated? ](../../discussions/setup-py-deprecated/)
  * [ PyPA specifications ](../)

Toggle navigation of PyPA specifications

_ _

    * [ Package Distribution Metadata ](../section-distribution-metadata/)

Toggle navigation of Package Distribution Metadata

_ _

      * [ Names and normaliz