I just posted a PR explaining the procedure for changing the typing spec. It’s what we’ve already followed for a few changes that are in flight, but I think the intended procedure hasn’t been documented very clearly, so I’m proposing to add the procedure to the spec itself, where it will hopefully be easy to find.
The procedure is as follows:
Changes to the specification come in three kinds:
- Minor, non-substantive changes can simply be proposed as PRs to
the python/typing repository,
and may be merged by anyone with commit access. Such changes may
include formatting fixes, linking improvements, etc.- Major changes should go through the PEP process, as described in
PEP 1. What counts as a major change is not precisely defined,
but it would generally include any change of a similar magnitude
to previous typing PEPs.- Substantive changes that do not rise to the level of a PEP must
be approved by the Typing Council. The procedure is described below.Changes that need Typing Council approval go through three steps:
- Open a discussion on discuss.python.org
describing the issue.- Open a PR on python/typing
that changes the spec and the conformance test suite.- Open an issue on
the Typing Council’s issue tracker asking for a decision.
My hope is that this procedure is as simple as possible while giving enough opportunity for community input and ensuring that future changes improve the quality of the spec.