[Python-Dev] BDFL ruling request: should we block forever waiting for high-quality random bits? (original) (raw)

Barry Warsaw barry at python.org
Thu Jun 16 04:46:10 EDT 2016


On Jun 16, 2016, at 12:36 AM, Nathaniel Smith wrote:

Basically this is a question of whether we should make an (unlikely) error totally invisible to the user, and "errors should never pass silently" is right there in the Zen of Python :-).

I'd phrase it differently though. To me, it comes down to hand-holding our users who for whatever reason, don't use the appropriate APIs for what they're trying to accomplish.

We can educate them through documentation, but I don't think it's appropriate to retrofit existing APIs to different behavior based on those faulty assumptions, because that has other negative effects, such as breaking the promises we make to experienced and knowledgeable developers.

To me, the better policy is to admit our mistake in 3.5.0 and 3.5.1, restore pre-existing behavior, accurately document the trade-offs, and provide a clear, better upgrade path for our users. We've done this beautifully and effectively via the secrets module in Python 3.6.

Cheers, -Barry



More information about the Python-Dev mailing list