hackingmaterials / automatminer

An automatic engine for predicting materials properties.
Other
135 stars 50 forks source link

Needless warnings about too up-to-date deps during pip installs #382

Open janosh opened 3 years ago

janosh commented 3 years ago

automatminer causes needless recurring warnings when updating packages it depends on:

pip install crystal-toolkit

[...]

automatminer 1.0.3.20200727 requires matminer==0.6.2, but you'll have matminer 0.6.5 which is incompatible.
automatminer 1.0.3.20200727 requires pymatgen==2020.01.28, but you'll have pymatgen 2022.0.5 which is incompatible.
automatminer 1.0.3.20200727 requires scikit-learn==0.22.2, but you'll have scikit-learn 0.24.1 which is incompatible.

I believe the way to fix this is to simply specify dependencies with >= rather than == in requirements.txt. Will submit PR.

ardunn commented 3 years ago

Hey @janosh thanks for reporting the issue!

I will update the dependencies soon (hopefully resolving some of the incompatibilities) but I am a big weary about changing everything to >=. I have not tested it yet but I suspect that will break some things. Considering the large number of things automatminer does in a pipeline (many of which rely on a lot of different libraries) it seems like this could cause some instability. But if you have a PR with the updated requirements that passes CI and is relatively stable, I'm all ears!!

janosh commented 3 years ago

I will update the dependencies soon [...]

Good to know. In that case feel free to close my PR.

shyamd commented 3 years ago

You should test against pinned versions in requirements.txt, but have compatible version ranges in setup.py where you can use both >= and < to ensure you have compatible versions ranges. This is causing problems in the MP Workshop repo for auto-updates for instance.