You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Namespace packages have poor tooling support. We are stuck using old pkgutil-style namespace packages because Maturin doesn't and won't support the new native namespace packages (PyO3/maturin#811). Meanwhile, mypy supports only native namespace packages and not pkgutil-style ones (python/mypy#9393).
I think we should use pyqir_generator, pyqir_parser, pyqir_evaluator instead of pyqir.generator, pyqir.parser, pyqir.evaluator. It's simpler and just works in more scenarios.
The text was updated successfully, but these errors were encountered:
One idea to avoid a breaking change is to create the pyqir module once in the metawheel, and from there re-export pyqir_parser as parser, pyqir_generator as generator, pyqir_evaluator as evaluator. This works like a backwards compatibility shim.
However, that only works if you have the metawheel installed, which depends on all three pyqir components. If you only want to depend on one or two of them, you wouldn't have access to the backwards compatibility shim. We could define a separate wheel that provides the pyqir module without depending on anything, and conditionally tries to import and re-export each component, ignoring missing ones.
Both of these ideas have flaws and probably aren't worth the trouble, since the breaking change itself is pretty simple to adapt to...
Namespace packages have poor tooling support. We are stuck using old pkgutil-style namespace packages because Maturin doesn't and won't support the new native namespace packages (PyO3/maturin#811). Meanwhile, mypy supports only native namespace packages and not pkgutil-style ones (python/mypy#9393).
I think we should use
pyqir_generator
,pyqir_parser
,pyqir_evaluator
instead ofpyqir.generator
,pyqir.parser
,pyqir.evaluator
. It's simpler and just works in more scenarios.The text was updated successfully, but these errors were encountered: