[Python-Dev] PEP 408 -- Standard library __preview__ package

Nick Coghlan ncoghlan at gmail.com
Mon Jan 30 23:04:28 CET 2012

On Tue, Jan 31, 2012 at 4:59 AM, Antoine Pitrou <solipsis at pitrou.net> wrote:
> It would be nice if that pronouncement or decision could outline the
> steps required to include an "experimental" module in the stdlib, and
> the steps required to move it from "experimental" to "stable".

Actually, that's a good idea - Eli, care to try your hand at writing
up a counter-PEP to 408 that more explicitly documents Guido's
preferred approach?

It should document a standard note to be placed in the module
documentation and in What's New for experimental/provisional/whatever
modules. For example:

"The <X> module has been included in the standard library on a
provisional basis. While major changes are not anticipated, as long as
this notice remains in place, backwards incompatible changes are
permitted if deemed necessary by the standard library developers. Such
changes will not be made gratuitously - they will occur only if
serious API flaws are uncovered that were missed prior to inclusion of
the module. If the small chance of such changes is not acceptable for
your use, the module is also available from PyPI with full backwards
compatibility guarantees." (include direct link to module on PyPI)

As far as the provisional->stable transition goes, I'd say there are a
couple of options:
1. Just make it part of the normal release process to ask for each
provisional module "This hasn't been causing any dramas, shall we drop
the provisional warning?"
2. Explicitly create 'release blocker' tracker issues for the *next*
release whenever a provisional module is added. These will basically
say "either drop the provisional warning for module <X> or bump this
issue along to the next release"

Former is obviously easier, latter means we're less likely to forget to do it.


Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia

More information about the Python-Dev mailing list