GithubHelp home page GithubHelp logo

Comments (5)

bstellato avatar bstellato commented on July 28, 2024

Can you please post an example or CI where it fails?

CVXPY does not import OSQP unless you specify to use it. We use CVXPY to solve the test problems with ECOS and double check the results. It is not a problem on our CI.

from osqp-python.

drewrisinger avatar drewrisinger commented on July 28, 2024

@bstellato it's an issue in Nix (nixos.org), where you're building all python packages from source, so you can't rely on pre-compiled wheels like cibuildwheel presumably does for cvxpy in your CI.

The dependency goes something like

  • Build osqp -> requires cvxpy (for tests) -> requires osqp
  • Build cvxpy -> requires osqp (b/c the setup.py has it as required install) -> requires cvxpy to complete tests

This problem could presumably be resolved by disabling tests on osqp, but that comes with its own problems.

from osqp-python.

h-vetinari avatar h-vetinari commented on July 28, 2024

We have the same problem in conda-forge. I now need to skip the whole test suite for the python 3.9 build to be able to unbreak the cycle.

CVXPY does not import OSQP unless you specify to use it

CVXPY specifies OSQP as a hard dependency. I agree with @drewrisinger that this is circular.

At a minimum (to fly a bit less blindly when having to break the cycle in conda-forge e.g. for a new python version), it would be good to have a way (e.g. a pytest-tag) to easily skip all tests that require cvxpy.

from osqp-python.

rileyjmurray avatar rileyjmurray commented on July 28, 2024

@h-vetinari @bstellato it may be possible to resolve the circular dependency by having OSQP's recipe require cvxpy-base (the version Michael Grant set up a while back) rather than cvxpy.

from osqp-python.

h-vetinari avatar h-vetinari commented on July 28, 2024

@rileyjmurray: @h-vetinari @bstellato it may be possible to resolve the circular dependency by having OSQP's recipe require cvxpy-base (the version Michael Grant set up a while back) rather than cvxpy.

Since cvxpy-base is built concurrently with cvxpy in the cvxpy-feedstock, that would unfortunately not make a difference for conda-forge.

from osqp-python.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.