From e67879e6c5aecd9f77d13dfa8c9a9eab8c7ab653 Mon Sep 17 00:00:00 2001 From: "Klamkin, Michael" Date: Mon, 9 Feb 2026 15:16:21 -0500 Subject: [PATCH 1/3] handle `AbstractOptimizerAttribute` --- src/moi_wrapper.jl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/moi_wrapper.jl b/src/moi_wrapper.jl index 56cd2096..f5b368b6 100644 --- a/src/moi_wrapper.jl +++ b/src/moi_wrapper.jl @@ -1045,3 +1045,7 @@ end function MOI.get(model::Optimizer, ::NonLinearKKTJacobianFactorization) return model.input_cache.factorization end + +function MOI.set(model::Optimizer, attr::MOI.AbstractOptimizerAttribute, value) + MOI.set(model.optimizer, attr, value) +end \ No newline at end of file From 02e708616a80cbc783920747b1ae09648a62a99b Mon Sep 17 00:00:00 2001 From: "Klamkin, Michael" Date: Mon, 9 Feb 2026 16:40:41 -0500 Subject: [PATCH 2/3] test + format --- src/moi_wrapper.jl | 4 ++-- test/jump_wrapper.jl | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/moi_wrapper.jl b/src/moi_wrapper.jl index f5b368b6..1617834d 100644 --- a/src/moi_wrapper.jl +++ b/src/moi_wrapper.jl @@ -1047,5 +1047,5 @@ function MOI.get(model::Optimizer, ::NonLinearKKTJacobianFactorization) end function MOI.set(model::Optimizer, attr::MOI.AbstractOptimizerAttribute, value) - MOI.set(model.optimizer, attr, value) -end \ No newline at end of file + return MOI.set(model.optimizer, attr, value) +end diff --git a/test/jump_wrapper.jl b/test/jump_wrapper.jl index 6588ab0c..af450853 100644 --- a/test/jump_wrapper.jl +++ b/test/jump_wrapper.jl @@ -56,6 +56,11 @@ function test_jump_api() @testset "$(MODEL) with: $(SOLVER), $(ineq ? "ineqs" : "eqs"), $(_min ? "Min" : "Max"), $(flip ? "geq" : "leq") bridge:$with_bridge_type" begin model = MODEL(SOLVER; with_bridge_type) set_silent(model) + if SOLVER === Ipopt.Optimizer + # avoiding MOI.TimeLimitSec to cover the RawOptimizerAttribute path + # only tests that MOI doesn't throw an unsupported error (#335) + set_optimizer_attribute(model, "max_wall_time", 600.0) + end p_val = 4.0 pc_val = 2.0 From 71e701a1717669605acf35808e15dfdc45be1cf1 Mon Sep 17 00:00:00 2001 From: "Klamkin, Michael" Date: Mon, 9 Feb 2026 16:42:34 -0500 Subject: [PATCH 3/3] fix runic's mess --- test/jump_wrapper.jl | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/test/jump_wrapper.jl b/test/jump_wrapper.jl index af450853..b7d50c7c 100644 --- a/test/jump_wrapper.jl +++ b/test/jump_wrapper.jl @@ -56,11 +56,11 @@ function test_jump_api() @testset "$(MODEL) with: $(SOLVER), $(ineq ? "ineqs" : "eqs"), $(_min ? "Min" : "Max"), $(flip ? "geq" : "leq") bridge:$with_bridge_type" begin model = MODEL(SOLVER; with_bridge_type) set_silent(model) - if SOLVER === Ipopt.Optimizer - # avoiding MOI.TimeLimitSec to cover the RawOptimizerAttribute path - # only tests that MOI doesn't throw an unsupported error (#335) - set_optimizer_attribute(model, "max_wall_time", 600.0) - end + if SOLVER === Ipopt.Optimizer + # avoiding MOI.TimeLimitSec to cover the RawOptimizerAttribute path + # only tests that MOI doesn't throw an unsupported error (#335) + set_optimizer_attribute(model, "max_wall_time", 600.0) + end p_val = 4.0 pc_val = 2.0