Skip to main content

solver-qpoases

A qpOASES wrapper for Python that ships prebuilt binaries. It exposes qpOASES' online active-set solver through a thin, numpy-friendly, MATLAB-quadprog-like interface.

Installation

Python (PyPI)

pip install marinholab-solvers-qpoases

C++ (Ubuntu .deb from the SmartArmStack PPA)

The C++ part (marinholab::solvers::qpoases, with qpOASES bundled) is distributed as the libmarinholab-solver-qpoases .deb from the SmartArmStack APT repository hosted at smartarmstack.github.io. On Ubuntu (Noble/24.04), add it and install:

curl -s --compressed "https://smartarmstack.github.io/smart_arm_stack_ROS2/KEY.gpg" \
    | gpg --dearmor \
    | sudo tee /etc/apt/trusted.gpg.d/smartarmstack_lgpl.gpg >/dev/null
sudo curl -s --compressed -o /etc/apt/sources.list.d/smartarmstack_lgpl.list \
    "https://smartarmstack.github.io/smart_arm_stack_ROS2/smartarmstack_lgpl.list"
sudo apt update
sudo apt-get install libmarinholab-solver-qpoases

This is the same repository the SmartArmStack ROS2 packages come from; see smartarmstack.github.io for the full list of available packages.

Overview

Given a symmetric matrix H, a vector f, and (optionally) inequality and equality constraint matrices, the solver solves the quadratic program

min_x   0.5 * x' H x + f' x
s.t.    A x <= b
        Aeq x = beq

Once a problem has been solved once, subsequent solves on the same Solver instance are warm-started by default (Configuration.use_hotstart = True), which is the main performance benefit of qpOASES for repeated, related QPs.

Quickstart

import numpy as np
from marinholab.solvers import qpoases

solver = qpoases.Solver()

H = np.eye(2)                          # positive definite Hessian
f = np.array([-1.0, -1.0])             # linear term
A = np.array([[1.0, 0.0]])             # x[0] <= 0.2
b = np.array([0.2])

x = solver.solve_quadratic_program(H, f, A, b,
                                   Aeq=np.zeros((1, 2)),
                                   beq=np.zeros((1,)))
# x ≈ [0.2, 1.0]

Omitting constraints

Any of the four constraint arguments (A, b, Aeq, beq) can be None, meaning "no such constraint". The matrix and its right-hand side must be omitted (or provided) together:

# Unconstrained
x = solver.solve_quadratic_program(H, f, None, None, None, None)

# Equality constraints only
x = solver.solve_quadratic_program(H, f, None, None, Aeq, beq)

Active set

solver.get_active_set() reports, for each row of the combined constraint matrix (rows of A followed by rows of Aeq), whether it is:

  • -1 active at its lower bound,
  • 0 inactive,
  • +1 active at its upper bound (equality constraints are always +1, since their bounds coincide).
solver.solve_quadratic_program(H, f, A, b, Aeq, beq)
solver.get_active_set()  # e.g. [ 1.0, 0.0, 0.0]

C++ API

The same solver is available directly in C++ (the Python wrapper is a thin pybind11 layer over it). It is built with Eigen and qpOASES:

#include <marinholab/solvers/qpoases.h>

namespace qpoases = marinholab::solvers::qpoases;

qpoases::Configuration config;
config.set("terminationTolerance", 1.0e-9);  // the rest keeps its defaults

qpoases::Solver solver(config);

Eigen::MatrixXd H = Eigen::MatrixXd::Identity(2, 2);
Eigen::VectorXd f(2);
f << -1.0, -1.0;

Eigen::MatrixXd A(1, 2);
A << 1.0, 0.0;                            // x[0] <= 0.2
Eigen::VectorXd b(1);
b << 0.2;

Eigen::MatrixXd Aeq = Eigen::MatrixXd::Zero(1, 2);
Eigen::VectorXd beq = Eigen::VectorXd::Zero(1);

Eigen::VectorXd x = solver.solve_quadratic_program(H, f, A, b, Aeq, beq);
// x ≈ [0.2, 1.0]

Eigen::VectorXd active_set = solver.get_active_set();  // e.g. [1, 0]

The API mirrors the Python one: solve_quadratic_program(H, f, A, b, Aeq, beq) solves the QP above, and get_active_set() reports the active constraints with the same -1 / 0 / +1 convention. Configuration is keyed by option name (see below); a runnable version lives in example/example.cpp.

To build and run it (the example is off by default so pip install . is unaffected):

cmake -B build -GNinja -DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=ON
cmake --build build
./build/example_qpoases

Configuration

All of qpOASES' Options fields are exposed, plus a few wrapper-specific settings, by name. Values are typed: bool, int, float, or, for enum options, the enum value name (e.g. "HST_SEMIDEF", "PL_NONE"), so the public API (and the C++ header, where values are a std::variant<bool, long long, double, std::string>) stays free of qpOASES types. Unset options use qpOASES' own double-precision defaults except printLevel ("PL_NONE").

config = qpoases.Configuration()
config.set("hessian_type", qpoases.HessianType.HST_SEMIDEF)  # H is rank-deficient
config.set("terminationTolerance", 1.0e-9)                   # tighter convergence
solver = qpoases.Solver(config)

set() accepts a bool, an int, a float, an enum member (used by its name), or a string, converted to the option's kind: config.set("terminationTolerance", "1.0e-9") also works, and an int is accepted for a real option. The other accessors are:

Method Returns
config.get(key) the option's value as bool, int, float, or str (or its default)
config.has(key) whether key has been explicitly set
config.keys() sorted list of all settable option names
config.defaults() mapping of option name -> default value
config.reset(key) / config.reset_all() revert to the default(s)

Setting an unknown key, or a value that does not convert to the option's kind (e.g. 1.5 for an integer option or True for a real one), raises ValueError.

The enum types are re-exported for convenience: qpoases.BooleanType, qpoases.HessianType, qpoases.PrintLevel, and qpoases.SubjectToStatus.

Wrapper-specific options

Option Default Type Description
maximum_working_set_recalculations 150 int Max working-set recalculations during the initial homotopy (nWSR passed to init/hotstart). Increase if solves hit the maximum.
use_hotstart true bool Warm-start subsequent solves with hotstart() instead of re-initialising with init().
hessian_type HST_POSDEF HessianType Definiteness assumed for H; given to the underlying SQProblem.

Hessian definiteness (HessianType)

Value Meaning
HST_ZERO Hessian is the zero matrix (LP formulation)
HST_IDENTITY Hessian is the identity matrix
HST_POSDEF Hessian is (strictly) positive definite
HST_POSDEF_NULLSPACE Positive definite on the null space of active bounds/constraints
HST_SEMIDEF Positive semi-definite
HST_INDEF Indefinite
HST_UNKNOWN Unknown

qpOASES options

These map 1:1 onto qpOASES' Options fields. Defaults match qpOASES' own defaults for a double-precision build (see Options::setToDefault()), except printLevel, which defaults to the least verbose level (PL_NONE). See the qpOASES manual for a full description of each option.

Booleans (set as "true" / "false")

Option Default Description
enableRamping true Enables the ramping strategy.
enableFarBounds true Enables the far bounds strategy.
enableFlippingBounds true Allows flipping active bounds between lower and upper values.
enableRegularisation false Regularises H when (semi-)definiteness is detected.
enableFullLITests false Uses the condition-hardened linear-independence (LI) test.
enableNZCTests true Enables the nonzero-curvature test.
enableEqualities false Treats equality constraints as always active.
enableInertiaCorrection true Repairs the working set when negative curvature is found during a hotstart.
enableDropInfeasibles false Whether infeasible constraints may be dropped.

Integers (int_t)

Option Default Description
enableDriftCorrection 1 Frequency of drift corrections (0 = off).
enableCholeskyRefactorisation 0 Frequency of full Cholesky refactorisation of the projected Hessian (0 = rank updates only).
numRegularisationSteps 0 Max successive regularisation steps.
numRefinementSteps 1 Max iterative-refinement steps.
dropBoundPriority 1 Priority used when dropping bounds.
dropEqConPriority 1 Priority used when dropping equality constraints.
dropIneqConPriority 1 Priority used when dropping inequality constraints.

Reals (real_t, double)

Option Default Description
terminationTolerance 5.0e6 * EPS (~1.1e-9) Relative tolerance that stops the homotopy. Smaller = more accurate, more work.
boundTolerance 1.0e6 * EPS Bound tolerance; a constraint whose bounds differ by less is treated as an equality.
boundRelaxation 1.0e4 Offset for relaxing bounds at the start of the initial homotopy (also the initial far-bound value).
epsNum -1.0e3 * EPS Numerator tolerance for the ratio test.
epsDen 1.0e3 * EPS Denominator tolerance for the ratio test.
maxPrimalJump 1.0e8 Max allowed primal jump in nonzero-curvature tests.
maxDualJump 1.0e8 Max allowed dual jump in LI tests.
initialRamping 0.5 Start value of the ramping strategy.
finalRamping 1.0 Final value of the ramping strategy.
initialFarBounds 1.0e6 Initial size of the far bounds.
growFarBounds 1.0e3 Growth factor applied to the far bounds.
epsFlipping 1.0e3 * EPS Tolerance of the squared Cholesky diagonal factor that triggers flipping a bound.
epsRegularisation 1.0e3 * EPS Scaling factor of the identity matrix used for Hessian regularisation.
epsIterRef 1.0e2 * EPS Early-termination tolerance for iterative refinement.
epsLITests 1.0e5 * EPS Tolerance for the linear-independence tests.
epsNZCTests 3.0e3 * EPS Tolerance for the nonzero-curvature tests.
rcondSMin 1.0e-14 Min reciprocal condition number of the Schur complement before a refactorisation is triggered.

Status / print enums

Option Default Type Description
printLevel PL_NONE PrintLevel Verbosity of qpOASES output (PL_NONE, PL_LOW, PL_MEDIUM, PL_HIGH, PL_TABULAR, PL_DEBUG_ITER). Defaults to the least verbose level (PL_NONE), intentionally differing from qpOASES' own default (PL_MEDIUM).
initialStatusBounds ST_LOWER SubjectToStatus Status assumed for all bounds at the first iteration.

Print levels (PrintLevel)

PL_DEBUG_ITER, PL_TABULAR, PL_NONE, PL_LOW, PL_MEDIUM, PL_HIGH.

Bound/constraint statuses (SubjectToStatus)

ST_LOWER, ST_INACTIVE, ST_UPPER, ST_INFEASIBLE_LOWER, ST_INFEASIBLE_UPPER, ST_UNDEFINED.

Examples

  • example/example.cpp — a standalone C++ usage of marinholab::solvers::qpoases::Solver. Build it with cmake -B build -GNinja -DBUILD_EXAMPLES=ON && cmake --build build, then run ./build/example_qpoases.
  • marinholab/solvers/qpoases/example.py — positive-definite and semi-definite solves, the None-constraint path, and the active set. Run it with qpoases_example (installed as a console script).
  • marinholab/solvers/qpoases/example_kinematics.py — an optional example showing the solver used in a hierarchical (task-priority) controller for a kinematically redundant robot, built on dqrobotics. It requires the optional dependencies dqrobotics and dqrobotics-pyplot (pip install --pre dqrobotics dqrobotics-pyplot).

Building from source

The package builds a C++ extension (via CMake + pybind11) and vendors qpOASES and pybind11 as git submodules.

git clone --recurse-submodules <repo>
pip install .

Prerequisites: a C++23 compiler, CMake, an Eigen3 installation, and Python. On Ubuntu: sudo apt-get install cmake libeigen3-dev.

Type checking

The package ships a type stub (marinholab/solvers/qpoases/_core.pyi) and a py.typed marker, so downstream projects can be checked with Pyright (or Pylance) without extra configuration. Run the project's own check with:

pyright

License

The qpOASES library is LGPLv2.1; the wrapper is under the terms of the included LICENSE file.

Metadata

Release files for marinholab-solvers-qpoases 26.4.0.64

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for marinholab-solvers-qpoases 26.4.0.64
File
marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-manylinux_2_39_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.39+ x86-64 Details
marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-manylinux_2_39_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.39+ ARM64 Details
marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-macosx_26_0_universal2.whl CPython 3.14 CPython 3.14 macOS 26.0+ universal2 (ARM64, x86-64) Details
marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-manylinux_2_39_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.39+ x86-64 Details
marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-manylinux_2_39_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.39+ ARM64 Details
marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-macosx_26_0_universal2.whl CPython 3.13 CPython 3.13 macOS 26.0+ universal2 (ARM64, x86-64) Details
marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-manylinux_2_39_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ x86-64 Details
marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-manylinux_2_39_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ ARM64 Details
marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-macosx_26_0_universal2.whl CPython 3.12 CPython 3.12 macOS 26.0+ universal2 (ARM64, x86-64) Details
marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-manylinux_2_39_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ x86-64 Details
marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-manylinux_2_39_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ ARM64 Details
marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-macosx_26_0_universal2.whl CPython 3.11 CPython 3.11 macOS 26.0+ universal2 (ARM64, x86-64) Details
marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-manylinux_2_39_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.39+ x86-64 Details
marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-manylinux_2_39_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.39+ ARM64 Details
marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-macosx_26_0_universal2.whl CPython 3.10 CPython 3.10 macOS 26.0+ universal2 (ARM64, x86-64) Details

Total release size: 5.8 MB

Release files / marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-win_amd64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-win_amd64.whl
Size 250.8 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
90e86cccc0a09670081cba42806fa877da1c67bd1410f7086b7e8f0924b44a02
BLAKE2b-256 checksum
How to use checksums
3fe119bf26f30da3b4c95ebf2f5259926bb80318acacf0f2d166346d0ecd8f11
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-manylinux_2_39_x86_64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-manylinux_2_39_x86_64.whl
Size 341.0 kB
Tags CPython 3.14 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
3bbc00cd1cc486ca595d2c42a1c6c548a334a170069eb6929f54fcbd026b1bd7
BLAKE2b-256 checksum
How to use checksums
b42ed1ad45829ee900554782fc1059967963c9db7ad9d9878c96e1841ca4f2fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-manylinux_2_39_aarch64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-manylinux_2_39_aarch64.whl
Size 303.4 kB
Tags CPython 3.14 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
da6fc126fffda00c116955ec52a5b7790397931e7d59e608baf9bad2b617b18c
BLAKE2b-256 checksum
How to use checksums
6e94c9ac1a6b61ad13af480e459b28442974390bca064461cb1e1df5bfde7547
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-macosx_26_0_universal2.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp314-cp314-macosx_26_0_universal2.whl
Size 265.9 kB
Tags CPython 3.14 macOS 26.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
b246f3b486d324082c984226b3bbc8a5b984431cf600f4c07dda7e3b42655681
BLAKE2b-256 checksum
How to use checksums
f7d5f6b9485ffbe05eb74610597b84de2d0f3fa0eb1bc2299ed6cbff5a4701f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-win_amd64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-win_amd64.whl
Size 244.2 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
e2f069217efea1d2affa6791a5ad7da44e0573bd2be07ce56ba0b16e9abbe755
BLAKE2b-256 checksum
How to use checksums
1f665bbf8ec4c7ccf220afe38d34bbcab5645d735762136af933146922070914
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-manylinux_2_39_x86_64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-manylinux_2_39_x86_64.whl
Size 341.0 kB
Tags CPython 3.13 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
a07a1a637decee32a470fdb19e4dd8accf4fe1b6d004d13a59d883e30a35eded
BLAKE2b-256 checksum
How to use checksums
3a8a87237e21960b027d4d03be7cf5b163d24f8b8c0fc070472f0204268fbaf0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-manylinux_2_39_aarch64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-manylinux_2_39_aarch64.whl
Size 302.9 kB
Tags CPython 3.13 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
7c9d21c05421ca15f0f08554798956c1705a7d8d73d7ccfc0d16172b68df70c8
BLAKE2b-256 checksum
How to use checksums
ac298801b02974565da9f1e3c42d43e2d0a0b97b1b4ca1b0aa58e07b3b7c4127
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-macosx_26_0_universal2.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp313-cp313-macosx_26_0_universal2.whl
Size 265.6 kB
Tags CPython 3.13 macOS 26.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
5ddc14690e2c068d3521a3cff3116867a1829e7822b5da0a1ac92ad714e04b0d
BLAKE2b-256 checksum
How to use checksums
39598d76584a156d6adf170c454c531f0ef2a7dc924e019d2898011f328d0d6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-win_amd64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-win_amd64.whl
Size 244.2 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
8afaee58945975942106b529aa3d2b9f15cab3eb1c369ae001cecfa89c77dccf
BLAKE2b-256 checksum
How to use checksums
f46629bfa2d2a712f17612c4d666a8161838ded4d21f7bbdb479b941f8e06ce3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-manylinux_2_39_x86_64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-manylinux_2_39_x86_64.whl
Size 341.0 kB
Tags CPython 3.12 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
ae73ba9d31978f10490a622f49c10606992a58d47a4fa550ae3a80cb751bed25
BLAKE2b-256 checksum
How to use checksums
5ff237b07345b2c8dcf2949fceec14d3e4c98f708cd0c2a626e759b5e479164e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-manylinux_2_39_aarch64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-manylinux_2_39_aarch64.whl
Size 302.8 kB
Tags CPython 3.12 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
bfc920d532bc43d01e37e5c508755ffb3c6df016e9b512b22a349a2b846866c7
BLAKE2b-256 checksum
How to use checksums
f6f18985efbaa7019b44d3f063b6d2fd9718360ba4be8accb4964c2223eca01a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-macosx_26_0_universal2.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp312-cp312-macosx_26_0_universal2.whl
Size 265.6 kB
Tags CPython 3.12 macOS 26.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
808795d382af12e449aaa8bd0e43ea251ec611bf5e08d20904b92a8a6ae03143
BLAKE2b-256 checksum
How to use checksums
11e9e2687685ebcc469081f90218303524e3875fac9bd09d4df72128d8acbf2b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-win_amd64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-win_amd64.whl
Size 242.0 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
82b151370338047d2dc5d0f3b8e2cc83fdcba6d4a4ad70339764179f1da945f4
BLAKE2b-256 checksum
How to use checksums
6321c8fac69fc9607a9a42351e4a0eded3566a5f755f8e2418ce195be1dbfd3c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-manylinux_2_39_x86_64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-manylinux_2_39_x86_64.whl
Size 340.7 kB
Tags CPython 3.11 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
ed3e22c3b990c1021dcf66c5fa20139619d4b1195850998656c9d94918d2dc51
BLAKE2b-256 checksum
How to use checksums
dd00918f15b14baed602532049990e620b805accd89ee759c6a7b45d978555c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-manylinux_2_39_aarch64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-manylinux_2_39_aarch64.whl
Size 302.7 kB
Tags CPython 3.11 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
fdd881c1893b0b69210182b095887823bb12af59d68621c0a63e78feeb5cad87
BLAKE2b-256 checksum
How to use checksums
10d6518e3db62a686cd2e4c5446924533bca2db2fdab1c2613c485c802f07072
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-macosx_26_0_universal2.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp311-cp311-macosx_26_0_universal2.whl
Size 264.1 kB
Tags CPython 3.11 macOS 26.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
5ee622fcf463cb3070afa57c9755eb3917573d90af15a20397b15ac22fd35d96
BLAKE2b-256 checksum
How to use checksums
da5c25f53b4c14403e1a2f08360e70a0a57db065b499c61e95b44af117cbdf2f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-win_amd64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-win_amd64.whl
Size 240.7 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
339ad594876cc8a032f1762c50b7048147ec1c4152c741b3a945cc5154c0f900
BLAKE2b-256 checksum
How to use checksums
20da901efa3fc1a37ea6ac05b439f1dca2160f4e43c651b51cb2b881a54c0460
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-manylinux_2_39_x86_64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-manylinux_2_39_x86_64.whl
Size 339.8 kB
Tags CPython 3.10 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
6f37b8e1ea42d1a436d2185355e688b0dc1c7ee51f368e3d4d9644142b5e1550
BLAKE2b-256 checksum
How to use checksums
416e14da1576fefea9cf87398c5c9fa1ed6e5797af1dd25234db510dc9ab4eba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-manylinux_2_39_aarch64.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-manylinux_2_39_aarch64.whl
Size 302.4 kB
Tags CPython 3.10 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
9325d12721f8c77df81e0d5dcb0b7c28255db764116695ffbdbd1c36bb6d2b66
BLAKE2b-256 checksum
How to use checksums
57515965a3d03c1cb8eafd68d953cc95638033416f118aec32b34ce8442e3dab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release files / marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-macosx_26_0_universal2.whl

Download URL marinholab_solvers_qpoases-26.4.0.64-cp310-cp310-macosx_26_0_universal2.whl
Size 262.5 kB
Tags CPython 3.10 macOS 26.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
7b9cd71dfdd04fb133eb10956f8fc53b058174c071cdb9a790af73d18a7d219a
BLAKE2b-256 checksum
How to use checksums
400267d747b8c1be116798737ba135b5bce267404883b2fd6d78f614f648237d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 30, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

26.4.0.64 This release

20 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page