PySCIPOpt icon indicating copy to clipboard operation
PySCIPOpt copied to clipboard

CI: Portability tests for building on various Linux distributions and macOS

Open mkoeppe opened this issue 2 years ago • 10 comments

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

mkoeppe avatar Nov 23 '22 20:11 mkoeppe

@mattmilten Any interest in this?

mkoeppe avatar Feb 18 '23 23:02 mkoeppe

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?

mattmilten avatar Feb 20 '23 17:02 mattmilten

certainly not for every single push

I've changed it so that it only runs when a tag is pushed

mkoeppe avatar Feb 20 '23 18:02 mkoeppe

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 ?

CGraczyk avatar May 30 '23 08:05 CGraczyk

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

matbesancon avatar May 30 '23 09:05 matbesancon

It would be good to have the logs for the action again, to see why certain distributions are failing.

CGraczyk avatar May 30 '23 10:05 CGraczyk

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

mkoeppe avatar Jun 07 '23 02:06 mkoeppe

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.

codecov[bot] avatar Feb 12 '24 04:02 codecov[bot]

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 avatar Feb 12 '24 05:02 mkoeppe

@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.

Opt-Mucca avatar Jul 05 '24 14:07 Opt-Mucca