On 14 June 2017 at 09:59, Paul Moore <[email protected]> wrote: > On 13 June 2017 at 23:36, Chris Angelico <[email protected]> wrote: > > On Wed, Jun 14, 2017 at 8:10 AM, Mahmoud Hashemi <[email protected]> > wrote: > >> I didn't interpret the initial email as wanting an error on *all* > circular > >> imports. Merely those which are unresolvable. I've definitely helped > people > >> diagnose circular imports and wished there was an error that called > that out > >> programmatically, even if it's just a string admonition to check for > >> circular imports, appended to the ImportError message. > > > > Oh! That could be interesting. How about a traceback in the import chain? > > I have a feeling that mypy might flag circular imports. I've not used > mypy myself, but I just saw the output from a project where we enabled > very basic use of mypy (no type hints at all, yet) and saw an error > reported about a circular import. So with suitable configuration, mypy > could help here (and may lead to other benefits if you want to use > more of its capabilities). >
Mypy doesn't always flag invalid circular imports, there is an old issue about this, see https://github.com/python/mypy/issues/61 But yes, one gets many other benefits like static type checking (including checking the types of things imported in a circular manner). -- Ivan
_______________________________________________ Python-ideas mailing list [email protected] https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/
