Skip to content

Solver version compatibility

MIP++ drives each solver through one implementation that adapts at runtime to a range of releases, so the question this table answers is: which released versions does that implementation drive correctly? Its passing rows are the evidence behind the validated_versions each backend declares, and the loaded_release_is_a_validated_one test fails on a row whose release passes but is missing from that claim.

Each row is a published library, downloaded and pointed at through MIPPP_<solver>_LIBRARY, with the backend's full test suite run against it on Linux/x86-64. The result column counts the tests that passed out of every test accounted for:

  • ✅ every test passed
  • ❌ some test failed
  • ⚠️ passed, but an unusual number of tests skipped, or nothing ran at all -- the notes say which

Capability skips are counted in the total, so a backend that cannot do quadratic objectives still shows those tests. The fuzz seed is pinned so that rows differ only by the library under test.

Cbc

Implementation impl/v1, library from coin-or-cbc (conda).

version library result notes
2.10.13 libCbcSolver.so.3.10.13 ✅ 100/100 -
2.10.12 libCbcSolver.so.3.10.12 ✅ 100/100 -
2.10.11 libCbcSolver.so.3.10.11 ✅ 100/100 -
2.10.10 libCbcSolver.so.3.10.10 ✅ 100/100 -
2.10.9 libCbcSolver.so.3.10.9 ✅ 100/100 -
2.10.8 libCbcSolver.so.3.10.8 ❌ aborts killed by signal 6; [ RUN ] Cbc/MilpModelTest/0.add_integer_variable_and_indexed_integer_variables / [ RUN ] Cbc/MilpModelTest/0.solve_bounded_integer_variables_max / free(): invalid pointer
2.10.7 libCbcSolver.so.3.10.7 ❌ aborts killed by signal 6; [ RUN ] Cbc/MilpModelTest/0.add_integer_variable_and_indexed_integer_variables / [ RUN ] Cbc/MilpModelTest/0.solve_bounded_integer_variables_max / free(): invalid pointer
2.10.5 libCbcSolver.so.3.10.5 ❌ aborts killed by signal 6; [ RUN ] Cbc/MilpModelTest/0.add_integer_variable_and_indexed_integer_variables / [ RUN ] Cbc/MilpModelTest/0.solve_bounded_integer_variables_max / free(): invalid pointer
2.10.4 libCbcSolver.so.3.10.4 ❌ aborts killed by signal 6; [ RUN ] Cbc/MilpModelTest/0.add_integer_variable_and_indexed_integer_variables / [ RUN ] Cbc/MilpModelTest/0.solve_bounded_integer_variables_max / free(): invalid pointer

Clp

Implementation impl/v1, library from coin-or-clp (conda).

version library result notes
1.17.11 libClp.so.1.14.11 ✅ 92/92 -
1.17.10 libClp.so.1.14.10 ✅ 92/92 -
1.17.8 libClp.so.1.14.8 ✅ 92/92 -
1.17.7 libClp.so.1.14.7 ✅ 92/92 -
1.17.6 libClp.so.1.14.6 ✅ 92/92 -
1.17.4 libClp.so.1.14.4 ✅ 92/92 -

COPT

Implementation impl/v1, library from coptpy (pypi).

Warning

Community licence caps model size. validated_versions rests on the release the wrapper was written against and a maintainer's local full run of copt 8.0.5 (2026-09-19).

version library result notes
8.0.6 - ⚠️ no library in archive no candidate matched ['*/libcopt.so']; archive ships coptcore.so, coptpywrap.so, libcopt_python.so
8.0.5 - ⚠️ no library in archive no candidate matched ['*/libcopt.so']; archive ships coptcore.so, coptpywrap.so, libcopt_python.so
8.0.4 - ⚠️ no library in archive no candidate matched ['*/libcopt.so']; archive ships coptcore.so, coptpywrap.so, libcopt_python.so
8.0.3 - ⚠️ no library in archive no candidate matched ['*/libcopt.so']; archive ships coptcore.so, coptpywrap.so, libcopt_python.so
8.0.2 - ⚠️ no library in archive no candidate matched ['*/libcopt.so']; archive ships coptcore.so, coptpywrap.so, libcopt_python.so
8.0.1 - ⚠️ no library in archive no candidate matched ['*/libcopt.so']; archive ships coptcore.so, coptpywrap.so, libcopt_python.so
7.2.11 - ⚠️ no library in archive no candidate matched ['*/libcopt.so']; archive ships coptcore.so, coptpywrap.so, libcopt_python.so
7.2.10 - ⚠️ no library in archive no candidate matched ['*/libcopt.so']; archive ships coptcore.so, coptpywrap.so, libcopt_python.so
7.2.9 - ⚠️ no library in archive no candidate matched ['*/libcopt.so']; archive ships coptcore.so, coptpywrap.so, libcopt_python.so
7.2.8 - ⚠️ no library in archive no candidate matched ['*/libcopt.so']; archive ships coptcore.so, coptpywrap.so, libcopt_python.so

CPLEX

Implementation impl/v1, library from cplex (pypi).

Warning

Community edition caps model size.

version library result notes
2220 libcplex2220.so ✅ 193/194 cplex 22.2.0.0-22.2.0.1; 1 skipped
2212 libcplex2212.so ✅ 193/194 cplex 22.1.2.0-22.1.2.1; 1 skipped
2211 libcplex2211.so ✅ 193/194 cplex 20.1.0.5-22.1.1.2; 1 skipped
2210 libcplex2210.so ✅ 193/194 1 skipped

GLPK

Implementation impl/v1, library from glpk (conda).

version library result notes
5.0 libglpk.so.40.3.1 ✅ 156/156 -
4.65 libglpk.so.40.3.0 ✅ 156/156 -
4.63 libglpk.so.40.2.2 ✅ 156/156 -
4.62 libglpk.so.40.2.1 ✅ 156/156 -
4.61 libglpk.so.40.2.0 ✅ 156/156 -
4.60 libglpk.so.40.1.0 ✅ 156/156 -
4.59 libglpk.so.40.0.0 ✅ 156/156 -

Gurobi

Implementation impl/v1, library from gurobipy (pypi).

Warning

The wheel bundles a size-limited licence, so results only cover small models.

version library result notes
130 libgurobi130.so ✅ 193/194 gurobipy 13.0.0-13.0.3; 1 skipped
120 libgurobi120.so ✅ 193/194 gurobipy 12.0.0-12.0.3; 1 skipped
110 libgurobi110.so ✅ 193/194 gurobipy 11.0.2-11.0.3; 1 skipped

HiGHS

Implementation impl/v1, library from highs (conda).

version library result notes
1.15.1 libhighs.so.1.15.1 ✅ 286/286 -
1.14.0 libhighs.so.1.14.0 ✅ 286/286 -
1.13.1 libhighs.so.1.13.1 ✅ 286/286 -
1.13.0 libhighs.so.1.13.0 ✅ 286/286 -
1.12.0 libhighs.so.1.12.0 ✅ 286/286 -
1.11.0 libhighs.so.1.11.0 ✅ 286/286 -
1.10.0 libhighs.so.1.10.0 ✅ 286/286 -
1.9.0 libhighs.so.1.9.0 ✅ 286/286 -
1.8.1 libhighs.so.1.8.1 ✅ 286/286 -
1.7.2 libhighs.so.1.7.2 ❌ 269/286 failing: HiGHS_api.loaded_release_is_a_validated_one, HiGHS_lp/LpModelTest/0.add_constraints, HiGHS_lp/LpModelTest/0.add_constraints_distinct_variables

MOSEK

Implementation impl/v1, library from Mosek (pypi).

Warning

Needs a licence file; without one every test skips on license_error. validated_versions rests on the release the wrapper was written against and a maintainer's local full run of mosek 11.0.14 (2026-09-19).

version library result notes
11.2 libmosek64.so.11.2 ❌ 156/157 Mosek 11.2.0-11.2.4; failing: MOSEK_api.loaded_release_is_a_validated_one
11.1 libmosek64.so.11.1 ❌ 156/157 Mosek 11.1.7-11.1.11; failing: MOSEK_api.loaded_release_is_a_validated_one

SCIP

Implementation impl/v1, library from scip (conda).

version library result notes
10.0.3 libscip.so.10.0.3 ✅ 84/84 -
10.0.2 libscip.so.10.0.2 ✅ 84/84 -
10.0.1 libscip.so.10.0.1 ✅ 84/84 -
10.0.0 libscip.so.10.0.0 ✅ 84/84 -
9.2.4 libscip.so.9.2.4.0 ✅ 84/84 -
9.2.3 libscip.so.9.2.3.0 ✅ 84/84 -
9.2.2 libscip.so.9.2.2.0 ✅ 84/84 -
9.2.1 libscip.so.9.2.1.0 ✅ 84/84 -
9.2.0 libscip.so.9.2.0.0 ✅ 84/84 -
9.1.1 libscip.so.9.1.1.0 ✅ 84/84 -

SoPlex

Implementation impl/v1, library from soplex (conda).

version library result notes
8.0.3 libsoplexshared.so.8.0.3 ✅ 45/46 1 skipped
8.0.2 libsoplexshared.so.8.0.2 ✅ 45/46 1 skipped
8.0.1 libsoplexshared.so.8.0.1 ✅ 45/46 1 skipped
8.0.0 libsoplexshared.so.7.0.0.0 ✅ 45/46 1 skipped
7.1.6 libsoplexshared.so.7.1.6.0 ✅ 45/46 1 skipped
7.1.5 libsoplexshared.so.7.1.5.0 ✅ 45/46 1 skipped
7.1.4 libsoplexshared.so.7.1.4.0 ✅ 45/46 1 skipped
7.1.3 libsoplexshared.so.7.1.3.0 ✅ 45/46 1 skipped
7.1.2 libsoplexshared.so.7.1.2.0 ✅ 45/46 1 skipped
7.1.1 libsoplexshared.so.7.1.1.0 ✅ 45/46 1 skipped

Xpress

Implementation impl/v1, library from xpresslibs (pypi).

Warning

Community licence caps model size. validated_versions rests on the release the wrapper was written against and a maintainer's local full run of xpress 47.1.1 (2026-09-19).

version library result notes
47 libxprs.so.47 ✅ 159/160 xpresslibs 9.9.0-9.9.1; 1 skipped
46 libxprs.so.46 ✅ 159/160 xpresslibs 9.8.0-9.8.1; 1 skipped
45 libxprs.so.45 ✅ 159/160 xpresslibs 9.6.3-9.7.2; 1 skipped