cta-observatory / pyeventio

Python read-only implementation for the EventIO data format used by the CORSIKA 7 IACT extension and sim_telarray
MIT License
10 stars 12 forks source link

Update setup.py / pyproject.toml to follow latest numpy and cython docs #271

Closed maxnoe closed 12 months ago

maxnoe commented 12 months ago

Remove all the magic for allowing compilation of bundled c files without Cython, this was obsolete since we python Cython into the build requirements in pyproject.toml. Supporting the case where people don't have cython doesn't make sense, since pip ensures it.

Numpy 1.25 made oldest-supported-numpy obsolete, we can chose the lowest version of numpy we want to support with a definition as long as we compile using at least numpy 1.25.

maxnoe commented 12 months ago

Dropping python 3.8 required for the numpy >= 1.25 requirement. But according to the NEP 29 schedule, this was overdue anyway and e.g. ctapipe has already done it.

maxnoe commented 12 months ago

I had to read a bit to figure out why in pyproject.toml you require numpy>=1.25 and in setup.py you require numpy>=1.21 and NPY_1_21_API_VERSION, but I think I understood and it's not a bug, so I approve (the one comment I left is not critical).

Yes, this is a bit confusing, but it boils down to:

codecov[bot] commented 12 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (72c9715) 86.58% compared to head (ef8d1dd) 86.58%.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #271 +/- ## ======================================= Coverage 86.58% 86.58% ======================================= Files 24 24 Lines 2222 2222 ======================================= Hits 1924 1924 Misses 298 298 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.