[Python-Dev] Making PEP 3156 (asyncio) non-provisional

Nick Coghlan ncoghlan at gmail.com
Wed Sep 7 23:43:44 EDT 2016


On 8 September 2016 at 04:31, Guido van Rossum <guido at python.org> wrote:
> There's also the issue of starttls, a feature that we know we'd like
> to add but don't have ready for 3.6b1. I think the right approach
> there is to provide an add-on package on PyPI that implements a
> starttls-capable Transport class, and when that code is sufficiently
> battle-tested we can add it to the stdlib (hopefully by 3.7). Such a
> package might end up having to copy portions of the asyncio
> implementation and/or use internal/undocumented APIs; that's fine
> because it is only meant as a temporary measure, and we can make it
> clear that just because the starttls package uses a certain internal
> API that doesn't mean that API is now public. A big advantage of
> having the initial starttls implementation outside the stdlib is that
> its release schedule can be much more frequent than that of the stdlib
> (== every 6 months), and a security issue in the starttls package
> won't require all the heavy guns of doing a security release of all of
> CPython.

This could also be useful in general in terms of defining more clearly
what kinds of access to asyncio internals are currently needed to
implement 3rd party Transport classes, and perhaps lead to related
future additions to the public API.

Pending Amber's response, a definite thumbs up from me for removing
the provisional caveat, and congratulations on a provisional
experiment proving successful :)

Cheers,
Nick.

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


More information about the Python-Dev mailing list