Changes in version 0.11.3 (2026-08-23) - clarabel_control() defaults now match Clarabel.rs exactly. Several had fallen behind upstream: - Chordal decomposition is now enabled by default for semidefinite programs: chordal_decomposition_enable, chordal_decomposition_compact and chordal_decomposition_complete_dual are TRUE, and chordal_decomposition_merge_method is "clique_graph". On a semidefinite program with a decomposable sparsity pattern this is dramatically faster — on a banded example with a 120x120 semidefinite cone, 0.007 seconds against 422 seconds. Two consequences: the dual variables reported for semidefinite constraints are not in general the same as before, and data updates are blocked when a decomposition actually takes place. Linear, quadratic and second-order cone problems are unaffected and remain updatable. Pass chordal_decomposition_enable = FALSE for the previous behavior. - reduced_tol_infeas_abs is now 5e-12, not 5e-5, matching upstream since Clarabel.rs v0.10.0. Smaller means less margin required, so the previous value was stricter than upstream; the change makes AlmostPrimalInfeasible and AlmostDualInfeasible marginally easier to reach on borderline problems. - direct_solve_method is now "auto", not "qdldl", matching upstream since v0.11.0. This build links only the QDLDL solver, so "auto" resolves to the same code path and results are unchanged. - Removed two direct_solve_method options that never worked: "cholmod" (never existed in Clarabel.rs; it is a Clarabel.jl option) and "mkl" (requires a Pardiso feature this build does not enable). The accepted values are "auto" and "qdldl". - Corrected the documented defaults for tol_ktratio (1e-6, was documented as 1e-7) and iterative_refinement_reltol (1e-13, was documented as 1e-12). The code was already correct; only the help page was wrong. Changes in version 0.11.2 (2026-03-01) - Added persistent solver API for warm starts: clarabel_solver(), solver_solve(), solver_update(), solver_is_update_allowed() - Robustified Rust interface: type coercion, error handling, CscMatrix validation, and regex ordering fixes - Switched all R-side error messaging to cli::cli_abort() with markup - Upgraded savvy crate from 0.8.13 to 0.9.2 - Added examples to clarabel_control() and solver functions - Added vignette section on updating problem data (warm starts) - Reduced CRAN test suite to LP and QP only; full suite runs locally via tinytest::at_home() - Fixed macOS CRAN linker warning by forwarding MACOSX_DEPLOYMENT_TARGET to Rust cc crate during cargo build Changes in version 0.11.1 (2025-09-24) - Synced up to v0.11.1 of Clarabel.rs - Fixed flang issues shown on CRAN for fedora-clang-rdevel Changes in version 0.10.1 (2025-04-17) - Minor fixes to fix CRAN issues Changes in version 0.10.0 (2025-02-18) - Synced up to v0.10.0 of Clarabel.rs - Fixed up to use new r-src that detects R being used correctly (thank you, Ivan Krylov!) Changes in version 0.9.0.1 (2024-09-03) - Explicit system requirements for Rust and Cargo added. Changes in version 0.9.0 (2024-06-22) - Synced up to version 0.9.0 of Clarabel.rs - Added all applicable tests from Clarabel.rs - Updated documentation of cone specification - Updated vignette - Switched to savvy from rextendr Changes in version 0.5.1 (2023-06-24) - Clarabel now supports semidefinite programs (syncing up to version 0.5.1 of Clarabel.rs) - Added tests - Updated documentation of cone specification Changes in version 0.4.1 (2023-04-25) - First public release