[Python-Dev] Negative times behaviour in itertools.repeat for Python maintenance releases (2.7, 3.3 and maybe 3.4)
Larry Hastings
larry at hastings.org
Wed Jan 29 03:50:50 CET 2014
On 01/28/2014 06:18 AM, Ethan Furman wrote:
> On 01/28/2014 04:37 AM, Steven D'Aprano wrote:
>> On Mon, Jan 27, 2014 at 10:06:57PM -0800, Larry Hastings wrote:
>>> .. note: if "times" is specified using a keyword argument, and
>>> provided with a negative value, repeat yields the object forever.
>>> This is a bug, its use is unsupported, and this behavior may be
>>> removed in a future version of Python.
>>
>> How about changing "may be removed" to "will be removed", he asks
>> hopefully? :-)
>
> +1
See the recent discussion "Deprecation policy" right here in python-dev
for a cogent discussion on this issue. I agree with Raymond's view,
posted on 1/25:
* A good use for deprecations is for features that were flat-out
misdesigned
and prone to error. For those, there is nothing wrong with
deprecating them
right away. Once deprecated though, there doesn't need to be a rush to
actually remove it -- that just makes it harder for people with
currently
working code to upgrade to newer versions of Python.
* When I became a core developer well over a decade ago, I was a little
deprecation happy (old stuff must go, keep everything nice and
clean, etc).
What I learned though is that deprecations are very hard on users
and that
the purported benefits usually aren't really important.
I think the "times behaves differently when passed by name versus passed
by position" behavior falls exactly into this category, and its advice
on how to handle it is sound.
Cheers,
//arry/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20140128/5aa08894/attachment.html>
More information about the Python-Dev
mailing list