> On 26 Jul 2019, at 20:58, Eric V. Smith <e...@trueblade.com> wrote:
> 
> On 7/26/2019 2:50 PM, Anders Hovmöller wrote:
>>> On 26 Jul 2019, at 20:34, Serhiy Storchaka <storch...@gmail.com> wrote:
>>> 
>>> 26.07.19 21:10, Anders Hovmöller пише:
>>>> This doesn't really solve the problem imo. Imported symbols shouldn't be i 
>>>> portable elsewhere. Not by import * or explicitly. That's the problem.
>>> 
>>> I do not think that this is always a problem. It is common to refactor the 
>>> code by defining names in submodules and then importing them in the main 
>>> module. For example, in `json/__init__.py`:
>>> 
>>>    from .decoder import JSONDecoder, JSONDecodeError
>>>    from .encoder import JSONEncoder
>>> 
>>> It is possible even to use a star import.
>>> 
>>> So this change would break much more code.
>> I believe I covered that in my last email. I'll repeat it here for clarity: 
>> if you indent to re-export you can do that explicitly:
>> from foo import bar
>> bar = bar
> 
> I think breaking a whole lot of existing code is a bad idea.

I don't think it's that common that code would break for this. If it does the 
fixed code is very likely better (except in libs where some API is exposed but 
implented in another module). 

And the length of the deprecation period is tweakable. We can set it for 30 
years if we want. 

/ Anders 
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at 
https://mail.python.org/archives/list/python-ideas@python.org/message/KPXZ5B4XMBY2ZGFLMIXLKTW42GXRTVFI/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to