I'll let others voice their opinions but my intuition for 3.8.x is to leave 
your patch be. True, it should not have been backported but it was, and it was 
already released as part of 3.8.1 and now 3.8.2rc1.

The user will have to special-case the change in behavior anyway. I feel like 
it is easier for them to do so by only special-casing "sys.version_info < (3, 
8, 1)". The alternative if you revert your patch will be to special case both 
"sys.version_info < (3, 9)" and "sys.version_info == (3, 8, 1)" (let alone 
3.8.2rc1). That is worse I think.

So, the only thing to do is to clearly document that there was a change, not in 
3.9 but in 3.8.1 and forward.

Agreed that it's a bit of a mess for 3.7 since that was way later in the 
release cadence with only 3.7.6 getting the change. I will let Ned decide here.

- Ł


> On 10 Feb 2020, at 15:27, Senthil Kumaran <sent...@uthcode.com> wrote:
> 
> Hello Python-Committers,
> 
> In https://bugs.python.org/issue27657 <https://bugs.python.org/issue27657>, I 
> introduced a regression in a minor release.
> The original patch to parsing logic of URL, cleaned up a lot of corner cases 
> (https://github.com/python/cpython/pull/661 
> <https://github.com/python/cpython/pull/661>) and I felt good about the 
> change.
> However, the mistake was with the backport.
> 
> Demo:
> 
> $ ./python 
> Python 3.8.0 (default, Feb 10 2020, 06:15:43) 
> [GCC 9.2.1 20191008] on linux
> Type "help", "copyright", "credits" or "license" for more information.
> >>> from urllib.parse import urlparse
> >>> urlparse('localhost:8080')
> ParseResult(scheme='', netloc='', path='localhost:8080', params='', query='', 
> fragment='')
> 
> ----
> 
> $ ./python 
> Python 3.8.1+ (heads/3.8:b086ea5edc, Feb 10 2020, 06:15:44) 
> [GCC 9.2.1 20191008] on linux
> Type "help", "copyright", "credits" or "license" for more information.
> >>> from urllib.parse import urlparse
> >>> urlparse('localhost:8080')
> ParseResult(scheme='localhost', netloc='', path='8080', params='', query='', 
> fragment='')
> 
> ---
> 
> When I read an associated bug report against a user of the software (like 
> this: https://github.com/mozilla/bleach/issues/503 
> <https://github.com/mozilla/bleach/issues/503>) - I feel that this was a 
> mistake.
> The change of test-suite in minor versions should have alerted me, but I seem 
> to have missed it.
> 
> I am planning to revert this change in 3.8.2 and 3.7.7
> Should I highlight this in any documentation?  Thoughts and opinions?
> 
> Thank you,
> Senthil
> 
> 
> _______________________________________________
> python-committers mailing list -- python-committers@python.org
> To unsubscribe send an email to python-committers-le...@python.org
> https://mail.python.org/mailman3/lists/python-committers.python.org/
> Message archived at 
> https://mail.python.org/archives/list/python-committers@python.org/message/2ONL562L35S77FGCLYH2ZDWVAXHH2BZP/
> Code of Conduct: https://www.python.org/psf/codeofconduct/

_______________________________________________
python-committers mailing list -- python-committers@python.org
To unsubscribe send an email to python-committers-le...@python.org
https://mail.python.org/mailman3/lists/python-committers.python.org/
Message archived at 
https://mail.python.org/archives/list/python-committers@python.org/message/AEXBKUEPJP7ZHAXYDZNVIUB5G2MOHFDS/
Code of Conduct: https://www.python.org/psf/codeofconduct/

Reply via email to