Re: [Python-Dev] Removing the provisional label from pathlib
On 5/24/2016 10:49 AM, Paul Moore wrote: On 24 May 2016 at 15:11, Koos Zevenhoven wrote: Please, no. We learned that lesson in Python 2.2.1 with True/False. What happened? True was included in 2.2.1 but not False?-). Anyway, I guess you are probably right, and "3.6->" is the way to go. Besides, Guido already wrote that in the first response. He did so because our policy rightly forbids changing os. The history is at http://python-history.blogspot.co.uk/2013/11/the-history-of-bool-true-and-false.html but basically we added new *constants* for True/False in a point release. Some people used them, and their code only worked on 2.2.1 and above but not 2.2.0. Others were using variables called True and False, and the 2.2.1 change broke their code (you could no longer assign to those names). So essentially it ended up that people couldn't say "works on 2.2" and had to distinguish between 2.2.0 and 2.2.1+. Python's strict backward compatibility rules basically stem from the grief caused by that change. The policy was reinforced by its violation in changing the behavior of a StringIO method in 3.1.2 or something like that. For people affected (like me), the change resulted in a subtle bug that only manifested later. -- Terry Jan Reedy ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com
Re: [Python-Dev] Removing the provisional label from pathlib
On 24 May 2016 at 15:11, Koos Zevenhoven wrote: >> Please, no. We learned that lesson in Python 2.2.1 with True/False. > > What happened? True was included in 2.2.1 but not False?-). Anyway, I > guess you are probably right, and "3.6->" is the way to go. Besides, > Guido already wrote that in the first response. The history is at http://python-history.blogspot.co.uk/2013/11/the-history-of-bool-true-and-false.html but basically we added new *constants* for True/False in a point release. Some people used them, and their code only worked on 2.2.1 and above but not 2.2.0. Others were using variables called True and False, and the 2.2.1 change broke their code (you could no longer assign to those names). So essentially it ended up that people couldn't say "works on 2.2" and had to distinguish between 2.2.0 and 2.2.1+. Python's strict backward compatibility rules basically stem from the grief caused by that change. Paul ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com
Re: [Python-Dev] Removing the provisional label from pathlib
On Tue, May 24, 2016 at 4:56 PM, Barry Warsaw wrote: > On May 24, 2016, at 02:03 PM, Koos Zevenhoven wrote: > >>I guess we might consider adding __fspath__ in maintenance releases, >>and make open() support it? That would cover a significant share of >>use cases, although it might be weird if code written for 3.5.2 >>doesn't run on 3.5.1... > > Please, no. We learned that lesson in Python 2.2.1 with True/False. What happened? True was included in 2.2.1 but not False?-). Anyway, I guess you are probably right, and "3.6->" is the way to go. Besides, Guido already wrote that in the first response. -- Koos > Cheers, > -Barry > ___ > Python-Dev mailing list > Python-Dev@python.org > https://mail.python.org/mailman/listinfo/python-dev > Unsubscribe: > https://mail.python.org/mailman/options/python-dev/k7hoven%40gmail.com ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com
Re: [Python-Dev] Removing the provisional label from pathlib
On May 24, 2016, at 02:03 PM, Koos Zevenhoven wrote: >I guess we might consider adding __fspath__ in maintenance releases, >and make open() support it? That would cover a significant share of >use cases, although it might be weird if code written for 3.5.2 >doesn't run on 3.5.1... Please, no. We learned that lesson in Python 2.2.1 with True/False. Cheers, -Barry ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com
Re: [Python-Dev] Removing the provisional label from pathlib
On Mon, May 23, 2016 at 10:38 PM, Chris Barker wrote: > On Mon, May 23, 2016 at 10:13 AM, Brett Cannon wrote: >> >> 3.5 is still getting bugfixes: >> https://docs.python.org/devguide/#status-of-python-branches >> >> As for backporting __fspath__() for pathlib, you can easily write your own >> subclass that adds it. And since the stdlib won't be updated in 3.5 for >> consumption of fspath > > > OK -- when I said "it", I meant the whole shebang -- i.e. the stdlib stuff > too. But fair enough, we can't be backporting everything, and I that would > be touching a lot of the lib. > > -CHB I guess we might consider adding __fspath__ in maintenance releases, and make open() support it? That would cover a significant share of use cases, although it might be weird if code written for 3.5.2 doesn't run on 3.5.1... So maybe just 3.6-> ? I'm not quite as busy as last week, so I might consider working on the stdlib changes if I find the time. Or is someone already working on this? -- Koos ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com