aiidateam / aiida-project

AiiDA project manager
Other
3 stars 7 forks source link

♻️🐛 Refactor `project` subpackage #17

Closed mbercx closed 6 months ago

mbercx commented 7 months ago

While providing fish support in d6a299c, we unfortunately introduced a bug: ProjectDict was moved into the base.py module, but load_project_class was not imported here and is used by one of the methods of ProjectDict.

A straightforward fix would be either import load_project_class in base.py or move it into the module as well, but both these options would lead to circular imports. Since the base.py module is really only for defining the BaseProject abstract class, ProjectDict, load_project_class and EngineType are probably more at home in a seprate core.py module.

mbercx commented 7 months ago

@GeigerJ2 I was still sort of inclined to avoid adding an extra module and just putting these in the __init__.py. But perhaps it's better not to clutter this file up too much.