Platforms
- This will be the last release to support Python3.8.
- Add Python 3.13 support.
- Add muslinux wheel package.
- This will be the last release to support Java 1.8
Builds
- dependencies (protobuf, abseil, re2, highs) are now seperated shared libraries
- Windows libraries are now dll
Dependencies
C++
- Protobuf 29.3
- CoinUtils: 2.11.12
- Osi: 0.108.11
- Clp: 1.17.10
- Cgl: 0.60.9
- Cbc: 2.10.12
- HiGHS: 1.9.0
- Scip: v920
- benchmark: 1.9.1
Graph
- Old graph classes (
EbertGraph
,StarGraph
,ForwardEbertGraph
,ForwardStarGraph
) have been removed.
UseReverseArcListGraph<>
andListGraph<>
instead. Those are conceptually similar, but typically perform better.
APIs are mostly compatible.
CP-SAT
- Improve the no_overlap_2d layer (propagation, presolve, cuts)
- Add RandomHalfBranching search heuristics
- Improve Cumulative propagation and cuts
- Rewrote the hint transformation during presolve. Feasible and complete hints should now be preserved after presolve
- Rewrite and optimize the linear expression part of the python layer
- Improve shared tree workers, implement job affinity with workers
- Add scheduling samples
- Support 1-var affine expressions in the Automaton constraint
- Support 1-var affine expressions in the Element constraint
- Speed up LNS
- Tens of fixes for bugs found by fuzzer
Linear Solver
- Add
WriteModelToMpsFile
toMPSolver
in Java, Python and .NET
Math Opt
- Add Xpress support.
Model Builder
- Speedup of the python expression part.
- Add HiGHS support.
SCIP
- This is likely the last release of SCIP build with glop
- We will transition to SCIP with SOPLEX builds
- This is already the case for the Bazel build
Known Issues
- MathOpt: python_math_opt_solver_test failed on macOS #4460
- cmake: MacOS Intel based python wheel do not contains mypy files #4540
- cmake: cxx_graph_shortest_paths_test (Timeout) #4539
Full Changelog: v9.11...v9.12