[BUG] `beartype.cave` does not explicitly reexport anything *le sigh*
See original GitHub issueWe run mypy with --no-implicit-reexport
to discover accidental imports from modules where a name is not publicly exposed. Beartype fails this from beartype.roar import BeartypeException
, seemingly because its defined in beartype.roar._roarexc
and isn’t in contained in beartype.roar.__all__
.
Is there a good reason that the exceptions are defined in an other module than what’s exposed? If so, would you consider adding an __all__
to make them explicitly reexported?
Issue Analytics
- State:
- Created 2 years ago
- Comments:11 (7 by maintainers)
Top Results From Across the Web
beartype - PyPI
Beartype is an open-source PEP-compliant constant-time pure-Python runtime type checker emphasizing efficiency, usability, and thrilling puns.
Read more >Awesome JavaScript Awesome - DirDev.com
A collection of awesome browser-side JavaScript libraries, resources and shiny things. Awesome JavaScript; Package Managers; Component management; Loaders ...
Read more >Unbearably fast O(1) runtime type-checking in pure Python.
Beartype is an open-source pure-Python PEP-compliant constant-time ... [BUG] `beartype.cave` does not explicitly reexport anything *le sigh*.
Read more >[Feature Request] Support `typing.get_overloads()` under ...
I am not proposing function dispatching here. So the following is not what I wish to see: from beartype import dispatch @dispatch ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Thanks for fixing this! 🙏
Resolved by 7cd3333… yet again.
beartype.cave
now explicitly reexports its public API. In theory, this means the entire @beartype API is now explicitly reexported and should passmypy --no-implicit-reexport
without complaint or shocking scandal.In practice, you’re our last line of defence. In @antonagestam we trust. 🗽