qiime2 / q2-types

BSD 3-Clause "New" or "Revised" License
17 stars 41 forks source link

Refactor q2-types to avoid circular imports #341

Closed ebolyen closed 4 months ago

ebolyen commented 4 months ago

Each submodule gets two sides, the public and importable subpackage as before, and a new _deferred_setup which is only accessed by plugin_setup.py. This allows implementations and subpackages to rely on other subpackages without invoking registration logic which invariable re-imports plugin causing the mess in the first place.

ebolyen commented 4 months ago

Superseded by better branch: #342