[Python-ideas] Add from __experimental__ import bla [was: Should we move to replace re with regex?]
ncoghlan at gmail.com
Wed Aug 31 06:00:16 CEST 2011
On Wed, Aug 31, 2011 at 1:23 PM, Stephen J. Turnbull <stephen at xemacs.org> wrote:
> As I understand Guido's position, "experimental" is a non-starter
> unless it can be expected to significantly increase beta tests of such
> modules by developers inside organizations that strictly control their
> internal code libraries. This requires that the "experimental"
> modules be distributed with the interpreter.
Yep, that's a nice explanation of the motivation here. People that can
just grab a module from PyPI and run it already have plenty of
opportunities to provide feedback on in-development APIs. The idea of
adding a new namespace within the standard library would be to have an
18-24 month window to gather similar feedback from folks in
environments where they *can't* just grab packages from PyPI to try
out, but *can* try out the latest version of CPython itself. (I
suspect we'd also have an easier time getting feedback from folks that
*could* retrieve modules PyPI if they wanted to, but in practice
> This last might kill the whole idea, as QA might take the position
> that "yes, you're just upgrading Python 2.7 from 2.7.4 to 2.7.5, but
> we have no idea what might be in experimental, so you're going to have
> to make a separate request for that." (I have never worked in such an
> organization so I don't know if that's a realistic worry or not.)
It depends on the organization, but the main hurdle I experienced at
my previous employer was the initial licensing and "development
pedigree" approval process (to make sure that we were on solid legal
ground in redistributing the component to our own customers and that
we were prepared to shoulder the risk of latent defects - both bars
were significantly lower if we added "for internal use only" to the
review request). Due to the way the PSF and python-dev operate,
CPython and the standard library check a lot of boxes in that kind of
review that smaller projects often miss.
Once a component was on the approved list, as long as the licensing
didn't change, decisions about upgrades were then in the engineers'
hands without needing to get the lawyers involved again.
Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
More information about the Python-ideas