Background
abICS currently pins nequip >=0.5.6, <0.7 (pyproject.toml) because the abICS
nequip solver/trainer (abics/applications/latgas_abinitio_interface/nequip.py,
nequip_trainer.py) target the pre-0.7 nequip API
(nequip-train / nequip-deploy, nequip.data.AtomicData, nequip.utils.Config,
torch.jit.load("deployed.pth")).
This series uses numpy.in1d, removed in NumPy 2, so it requires numpy<2.
Because Python 3.13 has no numpy 1.x wheels, the NequIP path cannot run on
Python 3.13, and the ActiveLearnNequip CI job is therefore skipped on 3.13
(see #81).
Goal
Migrate the abICS NequIP integration to a numpy-2 / Python-3.13 compatible
nequip (>=0.7, currently up to 0.18.0; requires-python >=3.10, numpy
unconstrained). nequip 0.7.0 is "a major backwards-incompatible update with
breaking changes throughout the code", so this is a real migration, not a
version bump.
Scope (likely)
- Rewrite
nequip.py (solver) and nequip_trainer.py for the new nequip API
(new CLI nequip-compile / nequip-package instead of nequip-deploy,
new config format, new data structures).
- Update
nequip-allegro (the pinned 0.3.0 is tied to old nequip; newer
Allegro has a different package/API).
- Update
tests/integration/active_learn_nequip inputs and install_nequip.sh,
and re-enable the ActiveLearnNequip CI job on Python 3.13.
- Update the JA/EN docs and lift the
<0.7 cap in pyproject.toml.
References
Background
abICS currently pins
nequip >=0.5.6, <0.7(pyproject.toml) because the abICSnequip solver/trainer (
abics/applications/latgas_abinitio_interface/nequip.py,nequip_trainer.py) target the pre-0.7 nequip API(
nequip-train/nequip-deploy,nequip.data.AtomicData,nequip.utils.Config,torch.jit.load("deployed.pth")).This series uses
numpy.in1d, removed in NumPy 2, so it requiresnumpy<2.Because Python 3.13 has no numpy 1.x wheels, the NequIP path cannot run on
Python 3.13, and the
ActiveLearnNequipCI job is therefore skipped on 3.13(see #81).
Goal
Migrate the abICS NequIP integration to a numpy-2 / Python-3.13 compatible
nequip (
>=0.7, currently up to 0.18.0;requires-python >=3.10, numpyunconstrained). nequip 0.7.0 is "a major backwards-incompatible update with
breaking changes throughout the code", so this is a real migration, not a
version bump.
Scope (likely)
nequip.py(solver) andnequip_trainer.pyfor the new nequip API(new CLI
nequip-compile/nequip-packageinstead ofnequip-deploy,new config format, new data structures).
nequip-allegro(the pinned0.3.0is tied to old nequip; newerAllegro has a different package/API).
tests/integration/active_learn_nequipinputs andinstall_nequip.sh,and re-enable the
ActiveLearnNequipCI job on Python 3.13.<0.7cap inpyproject.toml.References