Constrain Python 3.12 dependency updates#59
Conversation
|
What are your thoughts on deprecating support for Espaloma as a charge model? It appears many of the Python 3.12 env problems are coming from incompatible NumPy/TensorFlow constraints associated with this charger. Specifically, current mbuild pulls gmso>=0.16, which requires numpy>=2, while espaloma_charge pulls dgl -> tensorflow-base=2.17, which requires numpy<2 on Python 3.12. mbuild + openff-toolkit itself seems to solve fine without that broader Espaloma stack. From my understanding, we want people using OpenFF NAGL/AshGC now anyway. Maybe the cleanest path is to remove espaloma_charge from the default/test envs, keep EspalomaCharger temporarily as deprecated/backward-compatible, and switch examples/docs toward NAGL. |
|
Note, this can be closed should a PR be opened to address #60 . These are the env files I used to get 3.12 working though for reference. |
Lower cap makes sense, but why the upper cap at 3.13? Which tests/deps fail without it?
Regrettable these are still needed (was hoping to ditch all upper version pins while rooting around during these updates), but I can confirm
That sounds like a reasonable path forward, as you pointed out in more detail in #60
I don't see any attachments, did you forget to include them? At any rate, apart from verifying that the shipped conda envs YAMLs install, I also want to try to follow a mock pip-install as detailed in this comment, as that will be most useful as a pre-check that a PyPI build will be installable. |
|
As a semi-related small test fix, I noticed the |
This is a small follow-up to PR #58 based on dependency solver debugging for Python 3.12.
Findings:
importlib.resources._commonusage inpkginspect.py; the existing PR fix usingModuleSpec.submodule_search_locationslooks correct.Changes here:
Validation run locally: