Opened 5 years ago

Last modified 3 years ago

#22380 closed enhancement

Upgrade to cvxopt 1.2.1 — at Version 5

Reported by: dimpase Owned by:
Priority: major Milestone: sage-9.0
Component: packages: standard Keywords: upgrade, cvxopt
Cc: arojas, embray, fbissey, gh-timokau, infinity0, pcpa, saraedum, slelievre, strogdon, thansen, tmonteil Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description (last modified by slelievre)

This ticket is to upgrade to cvxopt 1.2.1, released 2018-08-31.


Since cvxopt 1.1.9, SuiteSparse is no longer included, thus it will have to be packaged separately.

Ticket #19687 was our previous upgrade, to cvxopt 1.1.8 (released 2015-09-22).

Change History (6)

Changed 5 years ago by dimpase

suite-sparse license

comment:1 Changed 5 years ago by dimpase

  • Cc fbissey added
  • Description modified (diff)

the 1st task would be to understand whether the Suite tarfile needs to be cut to exclude non-GPL compatible parts (see attachment)...

comment:2 Changed 5 years ago by fbissey

I don't know about debian and other but we split suitesparse in components in Gentoo. I would be shocked if the other didn't do the same. It looks like upstream integrated a lot of the autoconfig patches that were floating around which makes life easier. What cvxopt needs:

  • suitesparseconfig





Indentation is for dependency. That's without optional or more complicated configuration - a minimal setup (although options using blas/lapack could be enabled without extra burden). All the above in mimimum configuration is LGPL 2.1. In non-mimimum configuration some switch to GPL-2.

Last edited 5 years ago by fbissey (previous) (diff)

comment:3 Changed 5 years ago by fbissey

From - this can all be overridden, but it horrifies me

if platform.platform().startswith("Darwin"):
    # macOS
    SUITESPARSE_LIB_DIR = '/usr/local/lib'
    SUITESPARSE_INC_DIR = '/usr/local/include'
    # default: Ubuntu/Debian
    SUITESPARSE_LIB_DIR = "/usr/lib/x86_64-linux-gnu"
    SUITESPARSE_INC_DIR = "/usr/include/suitesparse"

The only line that is valid is the default include directory for debian. The rest is accessible by default without defining anything. Basically it destroys stuff that would work out of the box without any values. This is relevant in that it means we will have to override things manually when it could work out of the box if left alone. That's not just suitesparse. gsl, glpk... Of course there are limitations of distutils that complicate things (an empty includedir statement generate a -I in the compilation line instead of nothing at all, the compiler then gets confused. The best default is probably '.' if you have to put something).

comment:4 Changed 5 years ago by fbissey

Good news, cvxopt-1.1.9 is in gentoo now and no doctests were harmed by the upgrade in sage-on-gentoo. The bad news is that writing the spkgs for this is not high on my TODO list.

comment:5 Changed 4 years ago by slelievre

  • Cc arojas embray gh-timokau infinity0 pcpa saraedum slelievre strogdon thansen tmonteil added
  • Description modified (diff)
  • Keywords upgrade cvxopt added
  • Milestone changed from sage-7.6 to sage-wishlist
  • Summary changed from update cvxopt to 1.1.9 to Upgrade to cvxopt 1.2.1

Sage-on-Gentoo just upgraded to cvxopt 1.2.1.


Note: See TracTickets for help on using tickets.