Skip to content

Commit

Permalink
PEP 685: Update headers & fix reST syntax, links & punctuation
Browse files Browse the repository at this point in the history
  • Loading branch information
CAM-Gerlach committed Mar 14, 2022
1 parent 13aa4b1 commit d58495e
Showing 1 changed file with 10 additions and 10 deletions.
20 changes: 10 additions & 10 deletions pep-0685.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Status: Draft
Type: Standards Track
Content-Type: text/x-rst
Created: 08-Mar-2022
Post-History: 08-Mar-2022
Post-History: `08-Mar-2022 <https://discuss.python.org/t/14141>`__


Abstract
Expand Down Expand Up @@ -64,10 +64,10 @@ Runs of ``.`` and ``-``, unlike PEP 503, do **not** get collapsed,
e.g. ``..`` stays the same.

For pip 22, its
"extra normalisation behaviour is quite convoluted and erratic" [pip-erratic]_,
`"extra normalisation behaviour is quite convoluted and erratic" <pip-erratic_>`__,
and so its use is not considered.

.. [pip-erratic] https://discuss.python.org/t/what-extras-names-are-treated-as-equal-and-why/7614/10?
.. _pip-erratic: https://discuss.python.org/t/7614/10


Specification
Expand Down Expand Up @@ -99,7 +99,7 @@ tools SHOULD warn the user.
Tools SHOULD warn users when an invalid extra name is read and not use
the name to avoid ambiguity.
Tools MAY raise an error instead of a warning when reading an
invalid name if they so desire.
invalid name, if they so desire.


Backwards Compatibility
Expand All @@ -108,20 +108,20 @@ Backwards Compatibility
Moving to :pep:`503` normalization and :pep:`508` name acceptance, it
allows for all preexisting, valid names to continue to be valid.

Based on research looking at a collection of wheels on PyPI [pypi-results]_,
Based on `research looking at a collection of wheels on PyPI <pypi-results_>`__,
the risk of extra name clashes is limited to 73 clashes when considering
even invalid names,
while *only* looking at valid names leads to only 3 clashes:

1. dev-test: dev_test, dev-test, dev.test
2. dev-lint: dev-lint, dev.lint, dev_lint
3. apache-beam: apache-beam, apache.beam
* ``dev-test``: ``dev_test``, ``dev-test``, ``dev.test``
* ``dev-lint``: ``dev-lint``, ``dev.lint``, ``dev_lint``
* ``apache-beam``: ``apache-beam``, ``apache.beam``

By requiring tools writing core metadata to only record the normalized name,
the issue of preexisting, invalid extra names should be diminished over
time.

.. [pypi-results] https://discuss.python.org/t/pep-685-comparison-of-extra-names-for-optional-distribution-dependencies/14141/17?u=brettcannon
.. _pypi-results: https://discuss.python.org/t/14141/17


Security Implications
Expand Down Expand Up @@ -162,7 +162,7 @@ Rejected Ideas
Using setuptools 60's normalization
-----------------------------------

Initially this PEP proposed following setuptools to try and minimize
Initially, this PEP proposed following setuptools to try to minimize
backwards-compatibility issues.
But after checking various wheels on PyPI,
it became clear that standardizing **all** naming on :pep:`508` and
Expand Down

0 comments on commit d58495e

Please sign in to comment.