Given the brittle build system of cvxopt (#31905, #32087), and of its dependency suitesparse (#30478), we should give users a recourse when the installation fails.
cvxopt provides our only backend for SemidefiniteProgram, introduced over 5 years ago. Although not yet used anywhere in the Sage library, it provides important functionality for a number of Sage user, e.g.
it's used in https://github.com/bachirelkhadir/sdp_solvers_experiments which is needed for
demonstration of https://epubs.siam.org/doi/pdf/10.1137/19M1287584 in
https://github.com/bachirelkhadir/Convex-Quaternary-Quartics-Are-Sum-of-Squares/blob/master/optimal_constant_generalized_cs_deg_8_a4.pdf
Hence, we keep cvxopt as a standard package, but make it disablable.
Marking doctests that depend on cvxopt with # optional - cvxopt is also preparation for modularization. Thanks to the dummy backend MatrixSDPBackend, the modeling side of the interface can still be doctested even if cvxopt is not installed.
We also deprecate the outdated and unused global function linear_program, which directly uses cvxopt.
CC: @dimpase @tscrim @orlitzky
Component: packages: standard
Author: Matthias Koeppe
Branch/Commit: 2ab2f15
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/32226
Given the brittle build system of
cvxopt(#31905, #32087), and of its dependencysuitesparse(#30478), we should give users a recourse when the installation fails.cvxoptprovides our only backend forSemidefiniteProgram, introduced over 5 years ago. Although not yet used anywhere in the Sage library, it provides important functionality for a number of Sage user, e.g.it's used in https://github.com/bachirelkhadir/sdp_solvers_experiments which is needed for
demonstration of https://epubs.siam.org/doi/pdf/10.1137/19M1287584 in
https://github.com/bachirelkhadir/Convex-Quaternary-Quartics-Are-Sum-of-Squares/blob/master/optimal_constant_generalized_cs_deg_8_a4.pdf
Hence, we keep
cvxoptas a standard package, but make it disablable.Marking doctests that depend on
cvxoptwith# optional - cvxoptis also preparation for modularization. Thanks to the dummy backendMatrixSDPBackend, the modeling side of the interface can still be doctested even ifcvxoptis not installed.We also deprecate the outdated and unused global function
linear_program, which directly usescvxopt.CC: @dimpase @tscrim @orlitzky
Component: packages: standard
Author: Matthias Koeppe
Branch/Commit:
2ab2f15Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/32226