Deprecation of Python 2.7
- **Important Notice** Python 2.7 will be obsolete by the end of 2019. There will be at most one more release supporting python 2.7.
Platform changes
- Ubuntu 18.10 -> Ubuntu 19.04
- Support compilation from sources on Visual Studio 2019
- Dropped support for python 3.5 on Windows.
Dependencies updates
- CBC 2.10.1 -> 2.10.3
- Protobuf 3.7.1 -> 3.8.0
CP-SAT
- Multiple improvements focusing on the search, the implementation of the parallelism, and the connection to the linear relaxation
- Added `LinearExpr.Sum()` and `LinearExpr.ScalProd()` APIs in python
- Deprecate `IntVar[].Sum()` and `IntVar[].ScalProd()` APIs in C
- C++: remove `SolveWithModel` as it was a duplicate of `SolveCpModel()`
- add `CpModel.addGreaterThan` and `CpModel.addLessThan` methods to the Java API
Linear Solver:
- Add `MPSolver.SetHint()` in non C++ languages (Supported by SCIP, Gurobi)
- Add `MPSolver.SetNumThreads()` for non C++ languages (supported by CBC, Gurobi, SCIP)
- Rewrite support for scip 6.0.1
Reference manuals
See http://google.github.io/or-tools/
- We have added doxygen and pdoc3 based reference manuals for all languages and all tools (algorithms, routing, graph, linear_solver, and CP-SAT).
- Documentation is complete for C++ (all products) and CP-SAT (C++, Python, Java).
- We are in the process of exporting all C++ documentation to Python and Java.
- .NET documentation is lacking, and we have no solution in the foreseeable future to improve this. We have kept it as it still shows the available API.
- Some non C++ APIs show the link to SWIG through the use of SWIGTYPE_* object in the signatures. We will eliminate all these in the future. Please consider that these methods are not usable.