PEP 685: add a tranisition plan

This commit is contained in:
Brett Cannon 2022-03-30 20:20:33 -07:00 committed by GitHub
parent ac651d1555
commit 4d8bc00d99
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 20 additions and 4 deletions

View File

@ -97,11 +97,11 @@ Tools generating metadata MUST raise an error if a user specified
two or more extra names which would normalize to the same name. two or more extra names which would normalize to the same name.
Tools generating metadata MUST raise an error if an invalid extra Tools generating metadata MUST raise an error if an invalid extra
name is provided as appropriate for the specified core metadata version. name is provided as appropriate for the specified core metadata version.
If a project's metadata specifies an older core metadata version and the name would be If a project's metadata specifies an older core metadata version and
invalid with newer core metadata versions, the name would be invalid with newer core metadata versions,
tools reading that metadata SHOULD warn the user. tools reading that metadata SHOULD warn the user.
Tools SHOULD warn users when an invalid extra name is read and SHOULD ignore Tools SHOULD warn users when an invalid extra name is read and SHOULD
the name to avoid ambiguity. ignore the name to avoid ambiguity.
Tools MAY raise an error instead of a warning when reading an Tools MAY raise an error instead of a warning when reading an
invalid name, if they so desire. invalid name, if they so desire.
@ -159,6 +159,22 @@ Finally, if the project ever gains the ability to write out metadata,
it will also implement this PEP. it will also implement this PEP.
Transition Plan
===============
There is a risk that a build tool will produce core metadata
conforming to version 2.3 and thus this PEP but which is consumed by a
tool that is unaware of this PEP (if that tool chooses to attempt to
read a core metadata version it does not directly support).
In such a case there is a chance that a user may specify an extra
using an non-normalized name which worked previously but which fails
now.
As such, consumers of this PEP should be prioritized more than
producers so that users can be notified that they are specifying extra
names which are not normalized (and thus may break in the future).
Rejected Ideas Rejected Ideas
============== ==============