PySCIPOpt
PySCIPOpt copied to clipboard
CI: Portability tests for building on various Linux distributions and macOS
Using the reusable workflows of the Sage CI. It builds papilo, soplex, scip, pyscipopt from source.
The same is already in use in SCIP-SDP
Sample run: https://github.com/mkoeppe/PySCIPOpt/actions/runs/7969460775
@mattmilten Any interest in this?
This looks very impressive, but I don't think it's necessary to run such an extensive test suite on a regular basis - certainly not for every single push.
@CGraczyk, do you have an opinion on this?
certainly not for every single push
I've changed it so that it only runs when a tag is pushed
This seems nice to have but the question is how we should handle fails in that check, since i am not sure we can provide the support for all the different linux distributions - WDYT @matbesancon ?
normally we should, as in, SCIP should compile on all distributions since there is not much changing from the SCIP point of view if the dependencies are available there
It would be good to have the logs for the action again, to see why certain distributions are failing.
It would be good to have the logs for the action again, to see why certain distributions are failing.
Running at https://github.com/mkoeppe/PySCIPOpt/actions/runs/5195176263
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 52.72%. Comparing base (
9ce5d73
) to head (d76bd5e
).
Additional details and impacted files
@@ Coverage Diff @@
## master #630 +/- ##
=======================================
Coverage 52.72% 52.72%
=======================================
Files 17 17
Lines 3829 3829
=======================================
Hits 2019 2019
Misses 1810 1810
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Meanwhile Sage has switched to Cython 3, so we see build errors on all platforms: https://github.com/mkoeppe/PySCIPOpt/actions/runs/7867400154/job/21463042569#step:11:3964
@mkoeppe I'm not sure if this should be added to the repository. From my understanding the new CI ensures that pyscipopt is compatible with sage, and will continue working on those pipelines. Shouldn't this be a responsibility on the sage repository? We want to the pipeline to work of course, and we are against changes that would break it without good reason, but we already have support for tests over multiple distributions. Our build process is also now finally up and running (in part thanks to your original suggestion). So I would be in favour of closing this merge request unless I've missed something.