root
root copied to clipboard
[ROOT-10909] Add TMVA python dependencies to the requirements.txt
Explain what you would like to see improved and how.
From https://its.cern.ch/jira/browse/ROOT-10909
The PR https://github.com/root-project/root/pull/5408 will add a requirements.txt file to the repo, which should reflect our dependencies to python packages. The current status does not cover TMVA with xgboost, sklearn and keras as runtime dependencies, which should be added.
ROOT version
Any
Installation method
Any
Operating system
Any
Additional context
No response
Our current understanding is that we lack the following Python packages for the optional runtime dependencies of TMVA
tensorflow
keras
torch
sklearn
xgboost
sonnet
graph_nets
@lmoneta could you confirm this is the list of dependencies? It's important to have those fixed, also considering containers and setup of CI nodes.
Yes, this is the list of dependencies, but they are optional, we should not emit an error if the package is not installed
but what happens if they are not there?
For TMVA nothing, if they are not there the corresponding tests are not run. Everything is protected. But I think if we add in the requirements.txt and the package is not there an error in the build is emitted. We should have a way to install the packages in the new CI, but not in all platforms, only in some of them, for example in a platform tensorflow in another torch. It could be too much work to install them in every platforms, due to some possible incompatibilities
@lmoneta I was wondering if this PR could be merged after all
Giving an update on this comment: our current understanding is that we lack the following Python packages for the optional runtime dependencies of TMVA:
graph_nets
sonnet
ipywidgets (for JsMVA)
What is stopping us from adding them and close this item for good?
What is stopping us from adding them and close this item for good?
That the CI will probably become red, because it would enable the GNN tests that were never run on the CI before.
But we can work around this by also always disabling the tests: https://github.com/root-project/root/pull/15512
Once that PR is merged, we can close this issue, and I'll open a new one to remind the TMVA guys to re-enable the GNN tests.