Skip to content

v9.3 (2022/03)

Compare
Choose a tag to compare
@Mizux Mizux released this 17 Mar 00:47
· 180 commits to master since this release

Platform changes

  • Drop Debian-10 support
  • Drop Ubuntu-16.04 support
  • Drop .NET Framework 4.5.2

Dependencies Update

  • Add Eigen 3.4.0.
  • Add Google re2 2021-11-01.
  • Protobuf 3.19.1 -> 3.19.4.
  • SCIP 7.0.1 -> v800

Python

  • Add pybind11.

Features

  • Add PDLP as experimental
  • Add MathOpt as experimental.

CP-SAT

  • renamed few API for consistency
    e.g. LinearExpr.ScalProd -> LinearExpr.WeightedSum.
  • Add AddAtLeastOne/AddAtMostOne/AddExactlyOne methods.
  • Add AddMultiplicationConstraint(z, x, y) in all languages.
  • AddMultipleCircuit() in all languages

C++

  • explicit ctor IntVar(BoolVar)
  • remove LinearExpr::Add*and replaced them by operator e.g. LinearExpr +=
  • Add arithmetic operators on linear expression
  • removed LinearExpr::BooleanSum/BooleanScalProd, use Sum/WeightedSum
  • Add CpModelBuilder::FixVariable() which overwrite the domain of the variable to a single value

Java

  • Rewrite LinearExpr, add a incremental builder class: LinearExpr.newBuilder().add(x).addSum(<array of variables).build()
  • Follow C++ API: Circuit, MultipleCircuit, Cumulative, Reservoir, AllowedAssignment and ForbiddenAssignment now return a specialized class with incremental API to add new variables, terms, demands…

C#

  • Document all methods
  • Follow C++ API: Circuit, MultipleCircuit, Cumulative, Reservoir, AllowedAssignment and ForbiddenAssignment now return a specialized class with incremental API to add new variables, terms, demands…
  • Add LinearExprBuilder class to build expression incrementally.

Build System

CMake

  • Require at least CMake >= 3.18

Make

  • Now use the CMake based build internally.