From d7273f4800e18f883d0a036d4c574b77915c8546 Mon Sep 17 00:00:00 2001 From: Fredrik Bagge Carlson Date: Mon, 24 Aug 2026 09:56:48 +0000 Subject: [PATCH] Widen LinearMPC compat to 0.8, 0.9 and 0.10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `LinearMPC = "0.7"` pins any environment that loads this extension to LinearMPC 0.7.x, and LinearMPC 0.7.x requires DAQPBase 0.3. That makes DAQPBase 0.5 (and so DAQP 0.9) unreachable alongside RobustAndOptimalControl >= 0.4.47, which is where the extension was added. Downstream, DyadControlSystems.jl cannot take DAQP 0.9 without rolling RobustAndOptimalControl back to 0.4.46 — and with it Optim to 1.x and ControlSystemIdentification to 2.11.x. Nothing in the extension needed changing: it only calls `LinearMPC.MPC(F, G; ...)`, `set_objective!` and `set_bounds!`, all of which are unchanged across the 0.7 - 0.10 range. test_linearmpc_ext.jl passes 15/15 against LinearMPC 0.7.3, 0.8.0, 0.8.3, 0.9.0 and 0.10.0. Co-Authored-By: Claude Opus 5 (1M context) --- Project.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Project.toml b/Project.toml index 9b4a38aa..539a7802 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "RobustAndOptimalControl" uuid = "21fd56a4-db03-40ee-82ee-a87907bee541" authors = ["Fredrik Bagge Carlson", "Marcus Greiff"] -version = "0.4.51" +version = "0.4.52" [deps] ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" @@ -36,7 +36,7 @@ ControlSystemsBase = "1.17" DescriptorSystems = "1.2" Distributions = "0.25" GenericSchur = "0.5.2" -LinearMPC = "0.7" +LinearMPC = "0.7, 0.8, 0.9, 0.10" MatrixEquations = "2" MatrixPencils = "1" MonteCarloMeasurements = "1.0"