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 Zevenhovenwrote: 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 Zevenhovenwrote: >> 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 Warsawwrote: > 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 Barkerwrote: > 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
Re: [Python-Dev] Removing the provisional label from pathlib
On Mon, May 23, 2016 at 10:13 AM, Brett Cannonwrote: > 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 > you're only missing out on production which your subclass can take care of. > > -brett > > > >> -CHB >> >> >> >> >>> I'll update the implementation task list shortly. >>> >>> -Brett >>> >>> On Fri, May 20, 2016 at 9:43 AM, Brett Cannon wrote: > Three questions: > > Should pathlib gain __fspath__() all the way back to 3.4? > Should pathlib's constructor support __fspath__() all the way back to 3.4? > (separate question as os.fspath() will only be in 3.6; and if we backport > I'm not looking forward to making Typeshed happy w/o os.PathLike being > available only in 3.6 :/) > Should the docs from 3.4 and forward reflect the removal of the provisional > status? (I assume yes, but wanted to double-check) > > And a quick thanks to Guido for removing `path` from pathlib for me already. > :) > > ___ > 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/guido%40python.org > -- --Guido van Rossum (python.org/~guido) >>> >>> ___ >>> 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/chris.barker%40noaa.gov >>> >>> >> >> >> -- >> >> Christopher Barker, Ph.D. >> Oceanographer >> >> Emergency Response Division >> NOAA/NOS/OR(206) 526-6959 voice >> 7600 Sand Point Way NE (206) 526-6329 fax >> Seattle, WA 98115 (206) 526-6317 main reception >> >> chris.bar...@noaa.gov >> > -- Christopher Barker, Ph.D. Oceanographer Emergency Response Division NOAA/NOS/OR(206) 526-6959 voice 7600 Sand Point Way NE (206) 526-6329 fax Seattle, WA 98115 (206) 526-6317 main reception chris.bar...@noaa.gov ___ 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, 09:55 Chris Barkerwrote: > On Fri, May 20, 2016 at 11:42 AM, Brett Cannon wrote: > >> >> WFM. I'll let 3.4 and 3.5 just stay as they are and make all PEP 519 >> changes a 3.6 thing. >> > > I'd like to see it in 3.5 if we could do that -- that'll be available for > operational code a lot sooner than 3.6, and it's still in active > maintenance mode, yes? > 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 you're only missing out on production which your subclass can take care of. -brett > -CHB > > > > >> I'll update the implementation task list shortly. >> >> -Brett >> >> >>> >>> On Fri, May 20, 2016 at 9:43 AM, Brett Cannon wrote: >>> > Three questions: >>> > >>> > Should pathlib gain __fspath__() all the way back to 3.4? >>> > Should pathlib's constructor support __fspath__() all the way back to >>> 3.4? >>> > (separate question as os.fspath() will only be in 3.6; and if we >>> backport >>> > I'm not looking forward to making Typeshed happy w/o os.PathLike being >>> > available only in 3.6 :/) >>> > Should the docs from 3.4 and forward reflect the removal of the >>> provisional >>> > status? (I assume yes, but wanted to double-check) >>> > >>> > And a quick thanks to Guido for removing `path` from pathlib for me >>> already. >>> > :) >>> > >>> > ___ >>> > 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/guido%40python.org >>> > >>> >>> >>> >>> -- >>> --Guido van Rossum (python.org/~guido) >>> >> >> ___ >> 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/chris.barker%40noaa.gov >> >> > > > -- > > Christopher Barker, Ph.D. > Oceanographer > > Emergency Response Division > NOAA/NOS/OR(206) 526-6959 voice > 7600 Sand Point Way NE (206) 526-6329 fax > Seattle, WA 98115 (206) 526-6317 main reception > > chris.bar...@noaa.gov > ___ 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 Fri, May 20, 2016 at 11:42 AM, Brett Cannonwrote: > > WFM. I'll let 3.4 and 3.5 just stay as they are and make all PEP 519 > changes a 3.6 thing. > I'd like to see it in 3.5 if we could do that -- that'll be available for operational code a lot sooner than 3.6, and it's still in active maintenance mode, yes? -CHB > I'll update the implementation task list shortly. > > -Brett > > >> >> On Fri, May 20, 2016 at 9:43 AM, Brett Cannon wrote: >> > Three questions: >> > >> > Should pathlib gain __fspath__() all the way back to 3.4? >> > Should pathlib's constructor support __fspath__() all the way back to >> 3.4? >> > (separate question as os.fspath() will only be in 3.6; and if we >> backport >> > I'm not looking forward to making Typeshed happy w/o os.PathLike being >> > available only in 3.6 :/) >> > Should the docs from 3.4 and forward reflect the removal of the >> provisional >> > status? (I assume yes, but wanted to double-check) >> > >> > And a quick thanks to Guido for removing `path` from pathlib for me >> already. >> > :) >> > >> > ___ >> > 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/guido%40python.org >> > >> >> >> >> -- >> --Guido van Rossum (python.org/~guido) >> > > ___ > 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/chris.barker%40noaa.gov > > -- Christopher Barker, Ph.D. Oceanographer Emergency Response Division NOAA/NOS/OR(206) 526-6959 voice 7600 Sand Point Way NE (206) 526-6329 fax Seattle, WA 98115 (206) 526-6317 main reception chris.bar...@noaa.gov ___ 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 05/20/2016 09:15 PM, Victor Stinner wrote: > 2016-05-20 18:56 GMT+02:00 Guido van Rossum: >> Let's start in 3.6 with all this. I added path to 3.4 because I didn't >> realize it was in security-mode only. > > I also had to ask the question to myself about branches, that's why I > wrote this table ;-) > https://docs.python.org/devguide/#status-of-python-branches > > By the way, is it still up to date? Python 3.2 end-of-line is > documented as 2016-02-20, so its status should be end-of-life, no? > > Georg Brandl scheduled a 3.2.7 release at the end of February 2016, > but I don't see it on python.org and I don't recall its announcement. > https://mail.python.org/pipermail/python-dev/2016-February/143300.html > > Georg: any update on the Python 3.2 last release? Still waiting for some last security update. I sent another mail to python-dev that announced the delay, I think. Georg signature.asc Description: OpenPGP digital signature ___ 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
2016-05-20 18:56 GMT+02:00 Guido van Rossum: > Let's start in 3.6 with all this. I added path to 3.4 because I didn't > realize it was in security-mode only. I also had to ask the question to myself about branches, that's why I wrote this table ;-) https://docs.python.org/devguide/#status-of-python-branches By the way, is it still up to date? Python 3.2 end-of-line is documented as 2016-02-20, so its status should be end-of-life, no? Georg Brandl scheduled a 3.2.7 release at the end of February 2016, but I don't see it on python.org and I don't recall its announcement. https://mail.python.org/pipermail/python-dev/2016-February/143300.html Georg: any update on the Python 3.2 last release? Victor ___ 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 Fri, 20 May 2016 at 09:56 Guido van Rossumwrote: > Let's start in 3.6 with all this. I added path to 3.4 because I didn't > realize it was in security-mode only. I've now undone all my work > there. Let's not disturb it again, not even its docs. > > I don't think there's an "upstream" repo for pathlib (like there still > is for asyncio) and I don't think there's much of a point in > supporting __fspath__ in pathlib if there's no os.fspath(). It would > only encourage hackery in apps that want to play with __fspath__. > WFM. I'll let 3.4 and 3.5 just stay as they are and make all PEP 519 changes a 3.6 thing. I'll update the implementation task list shortly. -Brett > > On Fri, May 20, 2016 at 9:43 AM, Brett Cannon wrote: > > Three questions: > > > > Should pathlib gain __fspath__() all the way back to 3.4? > > Should pathlib's constructor support __fspath__() all the way back to > 3.4? > > (separate question as os.fspath() will only be in 3.6; and if we backport > > I'm not looking forward to making Typeshed happy w/o os.PathLike being > > available only in 3.6 :/) > > Should the docs from 3.4 and forward reflect the removal of the > provisional > > status? (I assume yes, but wanted to double-check) > > > > And a quick thanks to Guido for removing `path` from pathlib for me > already. > > :) > > > > ___ > > 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/guido%40python.org > > > > > > -- > --Guido van Rossum (python.org/~guido) > ___ 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
Let's start in 3.6 with all this. I added path to 3.4 because I didn't realize it was in security-mode only. I've now undone all my work there. Let's not disturb it again, not even its docs. I don't think there's an "upstream" repo for pathlib (like there still is for asyncio) and I don't think there's much of a point in supporting __fspath__ in pathlib if there's no os.fspath(). It would only encourage hackery in apps that want to play with __fspath__. On Fri, May 20, 2016 at 9:43 AM, Brett Cannonwrote: > Three questions: > > Should pathlib gain __fspath__() all the way back to 3.4? > Should pathlib's constructor support __fspath__() all the way back to 3.4? > (separate question as os.fspath() will only be in 3.6; and if we backport > I'm not looking forward to making Typeshed happy w/o os.PathLike being > available only in 3.6 :/) > Should the docs from 3.4 and forward reflect the removal of the provisional > status? (I assume yes, but wanted to double-check) > > And a quick thanks to Guido for removing `path` from pathlib for me already. > :) > > ___ > 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/guido%40python.org > -- --Guido van Rossum (python.org/~guido) ___ 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
[Python-Dev] Removing the provisional label from pathlib
Three questions: 1. Should pathlib gain __fspath__() all the way back to 3.4? 2. Should pathlib's constructor support __fspath__() all the way back to 3.4? (separate question as os.fspath() will only be in 3.6; and if we backport I'm not looking forward to making Typeshed happy w/o os.PathLike being available only in 3.6 :/) 3. Should the docs from 3.4 and forward reflect the removal of the provisional status? (I assume yes, but wanted to double-check) And a quick thanks to Guido for removing `path` from pathlib for me already. :) ___ 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