MadAnalysis/madanalysis5

Necessary dependencies to run full validation vs. validation with just ROOT

Opened this issue · 1 comments

Following some success with HEPData/hepdata_lib#220 I'm trying to setup some CI on my fork (to PR) that would run a full validation as compared to .github/workflows/quick_validation.yml which seems to be only be taking a few seconds and so not actually testing things. Conversely, when I ran

./validation/scripts/validation_bootstrap --parton-level

on my local machine in my dev area a huge amount of log activity and downloading started to happen, which was running for a bit before I killed it as I wasn't quite clear what it was actually doing.

The requirements are listed as

madanalysis5/README.md

Lines 46 to 67 in 65d4239

### Requirements
MadAnalysis 5 requires several external libraries in order to properly run:
- Python 3.8 or a more recent version that can be downloaded from [this website](http://www.python.org/)
In order to check the installed version of Python on a system, it is
sufficient to issue in a shell `$ python --version`.
- Either the GNU GCC compiler, or the Apple clang compiler. MadAnalysis 5 has been validated:
- with the version (minimum) `7.0` of the GCC compiler. The GCC compiler can be downloaded from [this website](http://gcc.gnu.org/).
- with the version 13.1.6 (clang-1316.0.21.2) of the clang compiler.
To benefit from all options coming with the MadAnalysis 5 program, the following
(optional) libraries have to be installed on the system:
- Zlib headers and libraries that can be downloaded from [this website](http://zlib.net/) which can
also be downloaded by by typing `ma5> install zlib` through MadAnalysis interface.
- The FastJet package version 3.3, or a more recent version, that can be
downloaded from [this link](http://fastjet.fr/). This package can also be installed by
typing `ma5> install fastjet` in MadAnalysis.
- LaTeX and `pdflatex` compilers for report rendering.
- All Python libraries that MadAnalysis 5 requires can be installed by typing
`$ python3 -m pip install -r requirements.txt`.

but Delphes is also

- [Delphes](https://github.com/delphes/delphes) v3.4.3

To get all the dependencies to fully test MA5 I would assume one needs all of these, and so Issue #2 / PR #12 would need to also include additional software like LaTeX, FastJet, and Delphes. As FastJet and Delphes aren't on conda-forge I don't think that micromamba is going to be able to make things as easy as it did for hepdata-lib, but are there a subset of tests that could be run that go beyond the quick validation with ROOT and LaTeX?

HI @matthewfeickert, thanks for the effort! Our testing is not fully functioning on GitHub yet, but we do end-to-end validation in HPC before releases (thats why we release new versions very slowly...). Need more men power to implement unit tests so that it's easier with GitHub. But whenever you compile MadAnalysis it does set of basic tests where it basically makes sure that everything is accessible. ./validation/scripts/validation_bootstrap is a very basic attempt to end-to-end validation it downloads some samples and runs predefined analyses and makes sure everything is created as expected. In principle if you run ./validation/scripts/validation_bootstrap --delphes it should test ROOT, $\LaTeX$ and delphes and if its not installed it will try to install it.