Came across this circular dependency importing MeanEstimator:
>>> from aspire.reconstruction import MeanEstimator
2024-03-07 09:22:11,526 CRITICAL [root] cannot import name 'Estimator' from partially initialized module 'aspire.reconstruction' (most likely due to a circular import) (/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/reconstruction/__init__.py)
Traceback:
File "<stdin>", line 1, in <module>
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/reconstruction/__init__.py", line 1, in <module>
from .estimator import Estimator
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/reconstruction/estimator.py", line 5, in <module>
from aspire.basis import Coef, FFBBasis3D
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/basis/__init__.py", line 17, in <module>
from .fspca import FSPCABasis
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/basis/fspca.py", line 7, in <module>
from aspire.covariance import BatchedRotCov2D
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/covariance/__init__.py", line 1, in <module>
from .covar import CovarianceEstimator
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/covariance/covar.py", line 12, in <module>
from aspire.reconstruction import Estimator, FourierKernel, MeanEstimator
Error in sys.excepthook:
Traceback (most recent call last):
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/exceptions.py", line 87, in handle_exception
raise exc_value
File "<stdin>", line 1, in <module>
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/reconstruction/__init__.py", line 1, in <module>
from .estimator import Estimator
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/reconstruction/estimator.py", line 5, in <module>
from aspire.basis import Coef, FFBBasis3D
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/basis/__init__.py", line 17, in <module>
from .fspca import FSPCABasis
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/basis/fspca.py", line 7, in <module>
from aspire.covariance import BatchedRotCov2D
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/covariance/__init__.py", line 1, in <module>
from .covar import CovarianceEstimator
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/covariance/covar.py", line 12, in <module>
from aspire.reconstruction import Estimator, FourierKernel, MeanEstimator
ImportError: cannot import name 'Estimator' from partially initialized module 'aspire.reconstruction' (most likely due to a circular import) (/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/reconstruction/__init__.py)
Original exception was:
Traceback (most recent call last):
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/exceptions.py", line 87, in handle_exception
raise exc_value
File "<stdin>", line 1, in <module>
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/reconstruction/__init__.py", line 1, in <module>
from .estimator import Estimator
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/reconstruction/estimator.py", line 5, in <module>
from aspire.basis import Coef, FFBBasis3D
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/basis/__init__.py", line 17, in <module>
from .fspca import FSPCABasis
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/basis/fspca.py", line 7, in <module>
from aspire.covariance import BatchedRotCov2D
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/covariance/__init__.py", line 1, in <module>
from .covar import CovarianceEstimator
File "/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/covariance/covar.py", line 12, in <module>
from aspire.reconstruction import Estimator, FourierKernel, MeanEstimator
ImportError: cannot import name 'Estimator' from partially initialized module 'aspire.reconstruction' (most likely due to a circular import) (/Users/carmichael/Work/ASPIRE-python.actions_update/src/aspire/reconstruction/__init__.py)
Came across this circular dependency importing
MeanEstimator
: