Releases: qpsolvers/qpsolvers
v4.3.2
This patch release updates the wheels_only
optional dependency to work on more systems.
Added
- Optional dependency:
wheels_only
for solvers with pre-compiled binaries
Changed
- Update developer notes in the documentation
- Update some solver tolerances in unit tests
- Warn rather than raise when there is no solver detected
Fixed
- CICD: Update micromamba setup action
v4.3.1
This patch release fixes the sign of dual multipliers in the Gurobi interface, and adds corresponding unit tests. Thanks @563925743 for finding this 👍
Fixed
- Gurobi: sign of inequality multipliers (thanks to @563925743)
v4.3.0
This release moves all QP solvers to optional dependencies (#268), along with a healthy batch of corrections to the documentation.
Thanks to @ogencoglu and @ottapav for contributing to this release 👍
Added
- Extend continuous integration to Python 3.11
- Optional dependencies for all solvers in the list available on PyPI
Changed
- Breaking: no default QP solver installed along with the library
- NPPro: update exit flag value to match new solver API (thanks to @ottapav)
Fixed
- Documentation: Add Clarabel to the list of supported solvers (thanks to @ogencoglu)
- Documentation: Correct note in
solve_ls
documentation (thanks to @ogencoglu) - Documentation: Correct output of LS example (thanks to @ogencoglu)
v4.2.0
This release adds the ability to load and save problems from/to files.
Added
Problem.load
functionProblem.save
function
v4.1.1
This patch release marks QPALM as a sparse solver only to reflect its API.
Changed
- Mark QPALM as a sparse solver only
v4.1.0
This release adds QPALM, a proximal augmented Lagrangian based solver for (possibly nonconvex) quadratic programs. Check it out!
Added
- New solver: QPALM
- Unit test for internal linear-box inequality combination
Changed
- Internal: refactor linear-box inequality combination function
- Renamed main branch of the repository from
master
tomain
Fixed
- Fix combination of box inequalities with empty linear inequalities
- Gurobi: Account for a slight regression in QPSUT01 performance
v4.0.1
This minor release adds the ability to install specific solvers from PyPI, e.g. pip install qpsolvers[clarabel,daqp,proxqp,scs]
.
Thanks to @sandeep026 for suggesting this in #247 👍
Added
- Allow installation of a subset of QP solvers from PyPI
v4.0.0
This release adds PIQP, a proximal interior point solver suited to both dense and sparse problems. Thanks to @shaoanlu for implementing this interface 👍
This release ships an API-breaking change in the condition number Problem.cond
, which now requires an active set. Thanks to @aescande for bringing this up in #220 👍
Added
- New solver: PIQP
- Type for active set of equality and inequality constraints
Changed
- Breaking: condition number of a problem now requires an active set
v3.5.0
This release adds HPIPM, an interior point solver suited to small to medium-size problems arising in model predictive control and embedded optmization. Thanks to @adamheins for implementing this interface 👍
Added
- New solver: HPIPM
Changed
- MOSEK: Disable CI test on QPSUT03 due to regression with 10.1.8
- MOSEK: Relax test tolerances as latest version is less accurate with defaults
v3.4.0
This release adds support for MOSEK, fixes corner-case residual computations, and has ECOS raise errors on problems its interface does not handle.
Thanks to @aszekMosek for helping with MOSEK integration and @uricohen for bringing up this point 👍
Changed
- Converted THANKS file to CFF
- ECOS: raise a ProblemError if inequality vectors contain infinite values
- ECOS: raise a ProblemError if the cost matrix is not positive definite
- MOSEK is now a supported solver
Fixed
- Residual and duality gap computations when solution is not found
- Update OSQP version to 0.6.2.post9 for testing