This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author hawkowl
Recipients dstufft, gvanrossum, hawkowl, ncoghlan, r.david.murray, serhiy.storchaka
Date 2017-10-11.00:35:34
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1507682138.3.0.213398074469.issue31742@psf.upfronthosting.co.za>
In-reply-to
Content
> What happened to "consenting adults"?

Consent does not mean that by using Python, users fully consent to using modules that they may not be aware will, to paraphrase Donald, come back to bite them in the ass.

Consent requires multiple things:

- Acknowledgement of the benefits involved
- Acknowledgement of the risks involved
- Positive affirmation that these things are accepted.

The spate of PyCon talks on provisional modules (the half dozen asyncio at PyCon US last year, and the 2-3+ asyncio talks at every conference I've been to since 2014) very much has given the community the first item, and as people have expressed interest in the benefits, acknowledge them.

But, CPython does not like at all admitting clearly or explicitly the risks involved. From multiple discussions with Nick, an author of the provisional API PEP, it has come clear to me that the intended role of provisional software is to allow CPython to ship not-production-ready software for testing and API usability testing in an experimental capacity. How many people, from reading the single line in the docs (which, remember, is not the only path where people learned how to use asyncio in 3.4/3.5, and is absent from module documentation), did not know this?

Upon discussing this issue with others, a few people admitted that they had no idea that provisional APIs existed, that asyncio was one, that typing is one, and they had no idea where to look to see if they were using a provisional module in their code or their dependencies.

So, it appears that CPython is failing item #2 here, by not adequately informing users of the risks. Yes, the warning should be improved (and ought to be made bright red, not grey, and actually use the word "warning", not note), but we should also take a step to protect the users that may not learn about the module through official documentation, and in some cases, may never reference it.

Only then can we confidently say that the user is potentially a "consenting adult". (Which is maybe interesting language to use nowadays considering Python's growth areas contain a lot of school-age education...)
History
Date User Action Args
2017-10-11 00:35:38hawkowlsetrecipients: + hawkowl, gvanrossum, ncoghlan, r.david.murray, serhiy.storchaka, dstufft
2017-10-11 00:35:38hawkowlsetmessageid: <1507682138.3.0.213398074469.issue31742@psf.upfronthosting.co.za>
2017-10-11 00:35:38hawkowllinkissue31742 messages
2017-10-11 00:35:34hawkowlcreate