]> granicus.if.org Git - python/commitdiff
Issue #22711: improve links in new distribution docs
authorNick Coghlan <ncoghlan@gmail.com>
Sat, 25 Oct 2014 14:00:04 +0000 (00:00 +1000)
committerNick Coghlan <ncoghlan@gmail.com>
Sat, 25 Oct 2014 14:00:04 +0000 (00:00 +1000)
- key term hyperlinks for distutils, setuptools & wheel
- distutils landing page links directly to setuptools docs
- short summary of setuptools benefits provided with link

Doc/distributing/index.rst
Doc/library/distutils.rst

index 9146b81aad37cd35b48935fc00f53bbf280f4eee..04606f15244c186f6cd901abed1c2d5bee00ec68 100644 (file)
@@ -41,26 +41,28 @@ Key terms
   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/>`__.
-* ``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
+* :mod:`distutils` is the original build and distribution system first added
+  to the Python standard library in 1998. While direct use of :mod:`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 ``distutils`` first
+* `setuptools`_ is a (largely) drop-in replacement for :mod:`distutils` first
   published in 2004. Its most notable addition over the unmodified
-  ``distutils`` tools was the ability to declare dependencies on other
+  :mod:`distutils` tools was the ability to declare dependencies on other
   packages. It is currently recommended as a more regularly updated
-  alternative to ``distutils`` that offers consistent support for more
+  alternative to :mod:`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 ``distutils``/``setuptools``. This produces a cross platform
+* `wheel`_ (in this context) is a project that adds the ``bdist_wheel``
+  command to :mod:`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
   locally.
 
+.. _setuptools: https://setuptools.pypa.io/en/latest/setuptools.html
+.. _wheel: http://wheel.readthedocs.org
 
 Open source licensing and collaboration
 =======================================
index 8e3732bca5bed5d1e6e05122882b24ab21ef9e3c..a7ad837cd91b1fd63e7924a11e554d65e11eb40d 100644 (file)
@@ -13,9 +13,25 @@ additional modules into a Python installation.  The new modules may be either
 collections of Python packages which include modules coded in both Python and C.
 
 Most Python users will *not* want to use this module directly, but instead
-use the cross-version tools maintained by the Python Packaging Authority.
-Refer to the `Python Packaging User Guide <http://packaging.python.org>`_
-for more information.
+use the cross-version tools maintained by the Python Packaging Authority. In
+particular,
+`setuptools <https://setuptools.pypa.io/en/latest/setuptools.html>`__ is an
+enhanced alternative to :mod:`distutils` that provides:
+
+* support for declaring project dependencies
+* additional mechanisms for configuring which files to include in source
+  releases (including plugins for integration with version control systems)
+* the ability to declare project "entry points", which can be used as the
+  basis for application plugin systems
+* the ability to automatically generate Windows command line executables at
+  installation time rather than needing to prebuild them
+* consistent behaviour across all supported Python versions
+
+The recommended `pip <https://pip.pypa.io/>`__ installer runs all
+``setup.py`` scripts with ``setuptools``, even if the script itself only
+imports ``distutils``. Refer to the
+`Python Packaging User Guide <http://packaging.python.org>`_ for more
+information.
 
 For the benefits of packaging tool authors and users seeking a deeper
 understanding of the details of the current packaging and distribution