From 505bf5c31a99e300a37ac74da894851612ec5930 Mon Sep 17 00:00:00 2001 From: Steven Diamond Date: Mon, 22 Dec 2025 11:56:38 -0800 Subject: [PATCH] fix scipy format --- diffcp/cone_program.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/diffcp/cone_program.py b/diffcp/cone_program.py index 190b6c9..05218b0 100644 --- a/diffcp/cone_program.py +++ b/diffcp/cone_program.py @@ -629,7 +629,10 @@ def solve_and_derivative_internal(A, b, c, cone_dict, solve_method=None, M = _diffcp.M_dense(Q_dense, cones_parsed, u, v, w) MT = M.T elif mode in ("lsqr", "lsmr"): - M = _diffcp.M_operator(Q, cones_parsed, u, v, w) + # Convert to csc_matrix for compatibility with C++ bindings + # (scipy.sparse.bmat may return sparse array in scipy 1.14+) + Q_csc = sparse.csc_matrix(Q) + M = _diffcp.M_operator(Q_csc, cones_parsed, u, v, w) MT = M.transpose() pi_z = pi(z, cones)