file format standards. They maintain a variety of tools, documentation
and issue trackers on both `GitHub <https://github.com/pypa>`__ and
`Bitbucket <https://bitbucket.org/pypa/>`__.
-* :mod:`distutils` is the original build and distribution system first added
- to the Python standard library in 1998. While direct use of :mod:`distutils`
+* ``distutils`` is the original build and distribution system first added
+ to the Python standard library in 1998. While direct use of ``distutils``
is being phased out, it still laid the foundation for the current packaging
and distribution infrastructure, and it not only remains part of the
standard library, but its name lives on in other ways (such as the name
of the mailing list used to coordinate Python packaging standards
development).
-* `setuptools`_ is a (largely) drop-in replacement for :mod:`distutils` first
+* `setuptools`_ is a (largely) drop-in replacement for ``distutils`` first
published in 2004. Its most notable addition over the unmodified
- :mod:`distutils` tools was the ability to declare dependencies on other
+ ``distutils`` tools was the ability to declare dependencies on other
packages. It is currently recommended as a more regularly updated
- alternative to :mod:`distutils` that offers consistent support for more
+ alternative to ``distutils`` that offers consistent support for more
recent packaging standards across a wide range of Python versions.
* `wheel`_ (in this context) is a project that adds the ``bdist_wheel``
- command to :mod:`distutils`/`setuptools`_. This produces a cross platform
+ command to ``distutils``/`setuptools`_. This produces a cross platform
binary packaging format (called "wheels" or "wheel files" and defined in
:pep:`427`) that allows Python libraries, even those including binary
extensions, to be installed on a system without needing to be built
The SIG for distribution utilities, shepherded by Greg Ward, has created the
Distutils, a system to make package installation much easier. They form the
-:mod:`distutils` package, a new part of Python's standard library. In the best
+``distutils`` package, a new part of Python's standard library. In the best
case, installing a Python module from source will require the same steps: first
you simply mean unpack the tarball or zip archive, and the run "``python
setup.py install``". The platform will be automatically detected, the compiler
such as "3.2".
It also provides access to the paths and variables corresponding to one of
-seven named schemes used by :mod:`distutils`. Those include *posix_prefix*,
+seven named schemes used by ``distutils``. Those include *posix_prefix*,
*posix_home*, *posix_user*, *nt*, *nt_user*, *os2*, *os2_home*:
* :func:`~sysconfig.get_paths` makes a dictionary containing installation paths
enable parallel building of extension modules.
(Contributed by Antoine Pitrou in :issue:`5309`.)
-The :mod:`distutils` module now supports ``xz`` compression, and can be
+The ``distutils`` module now supports ``xz`` compression, and can be
enabled by passing ``xztar`` as an argument to ``bdist --format``.
(Contributed by Serhiy Storchaka in :issue:`16314`.)
---------
The ``default_format`` attribute has been removed from
-:class:`distutils.command.sdist.sdist` and the ``formats``
+``distutils.command.sdist.sdist`` and the ``formats``
attribute defaults to ``['gztar']``. Although not anticipated,
any code relying on the presence of ``default_format`` may
need to be adapted. See :issue:`27819` for more details.
~~~~~~~~~
The undocumented ``extra_path`` argument to the
-:class:`~distutils.Distribution` constructor is now considered deprecated
+``distutils.Distribution`` constructor is now considered deprecated
and will raise a warning if set. Support for this parameter will be
removed in a future Python release. See :issue:`27919` for details.
accepting additional keyword arguments will need to adjust their calls to
:meth:`type.__new__` (whether direct or via :class:`super`) accordingly.
-* In :class:`distutils.command.sdist.sdist`, the ``default_format``
+* In ``distutils.command.sdist.sdist``, the ``default_format``
attribute has been removed and is no longer honored. Instead, the
gzipped tarfile format is the default on all platforms and no
platform-specific selection is made.
variables were defined. Previously, the order was undefined.
(Contributed by Raymond Hettinger in :issue:`32690`.)
-* The :mod:`distutils` ``upload`` command no longer tries to change CR
+* The ``distutils`` ``upload`` command no longer tries to change CR
end-of-line characters to CRLF. This fixes a corruption issue with sdists
that ended with a byte equivalent to CR.
(Contributed by Bo Bayles in :issue:`32304`.)
:func:`ssl.wrap_socket` or :class:`ssl.SSLContext`.
(Contributed by Christian Heimes in :issue:`32951`.)
-* The unused :mod:`distutils` ``install_misc`` command has been removed.
+* The unused ``distutils`` ``install_misc`` command has been removed.
(Contributed by Eric N. Vander Weele in :issue:`29218`.)
.. nonce: zwl5Hc
.. section: Library
-:mod:`distutils` upload creates SHA2-256 and Blake2b-256 digests. MD5
+``distutils`` upload creates SHA2-256 and Blake2b-256 digests. MD5
digests is skipped if platform blocks MD5.
..
.. nonce: GK9a0l
.. section: Library
-Install schemes in :mod:`distutils.command.install` are now loaded from
+Install schemes in ``distutils.command.install`` are now loaded from
:mod:`sysconfig`.
..
.. nonce: SenEje
.. section: Library
-:mod:`distutils.sysconfig` has been merged to :mod:`sysconfig`.
+``distutils.sysconfig`` has been merged to :mod:`sysconfig`.
..
.. nonce: NOwcDJ
.. section: Library
-Fix clang rpath issue in :mod:`distutils`. The UnixCCompiler now uses
+Fix clang rpath issue in ``distutils``. The UnixCCompiler now uses
correct clang option to add a runtime library directory (rpath) to a shared
library.
.. nonce: rvyf2v
.. section: Library
-Restore back :func:`parse_makefile` in :mod:`distutils.sysconfig` because it
+Restore back :func:`parse_makefile` in ``distutils.sysconfig`` because it
behaves differently than the similar implementation in :mod:`sysconfig`.
..
.. section: Security
The :option:`-I` command line option (run Python in isolated mode) is now
-also copied by the :mod:`multiprocessing` and :mod:`distutils` modules when
+also copied by the :mod:`multiprocessing` and ``distutils`` modules when
spawning child processes. Previously, only :option:`-E` and :option:`-s`
options (enabled by :option:`-I`) were copied.
.. nonce: laV_IE
.. section: Library
-:func:`~distutils.utils.check_environ` of :mod:`distutils.utils` now catches
+:func:`~distutils.utils.check_environ` of ``distutils.utils`` now catches
:exc:`KeyError` on calling :func:`pwd.getpwuid`: don't create the ``HOME``
environment variable in this case.
.. nonce: Pr3-iG
.. section: Library
-ZIP files created by :mod:`distutils` will now include entries for
+ZIP files created by ``distutils`` will now include entries for
directories.
..
.. section: Library
Restore ``msilib.Win64`` to preserve backwards compatibility since it's
-already used by :mod:`distutils`' ``bdist_msi`` command.
+already used by ``distutils``' ``bdist_msi`` command.
..
.. nonce: MW1TLt
.. section: Library
-Fix :mod:`distutils.sysconfig` if :data:`sys.executable` is ``None`` or an
+Fix ``distutils.sysconfig`` if :data:`sys.executable` is ``None`` or an
empty string: use :func:`os.getcwd` to initialize ``project_base``. Fix
also the distutils build command: don't use :data:`sys.executable` if it is
``None`` or an empty string.
.. nonce: Fg4EXb
.. section: Library
-:func:`shutil.which` and :func:`distutils.spawn.find_executable` now use
+:func:`shutil.which` and ``distutils.spawn.find_executable`` now use
``os.confstr("CS_PATH")`` if available instead of :data:`os.defpath`, if the
``PATH`` environment variable is not set. Moreover, don't use
``os.confstr("CS_PATH")`` nor :data:`os.defpath` if the ``PATH`` environment
.. nonce: 5a822c
.. section: Library
-Reimplement :func:`distutils.spawn.spawn` function with the
+Reimplement ``distutils.spawn.spawn`` function with the
:mod:`subprocess` module.
..
.. nonce: MnHdYl
.. section: Windows
-:mod:`distutils` will no longer statically link :file:`vcruntime140.dll`
+``distutils`` will no longer statically link :file:`vcruntime140.dll`
when a redistributable version is unavailable. All future releases of
CPython will include a copy of this DLL to ensure distributed extensions can
continue to load.
C extension modules are now built by ``configure`` and ``make``
-instead of :mod:`distutils` and ``setup.py``.
+instead of ``distutils`` and ``setup.py``.