diff --git a/build/pkgs/onetbb/checksums.ini b/build/pkgs/onetbb/checksums.ini index 69e7ed4d027..42e837760b6 100644 --- a/build/pkgs/onetbb/checksums.ini +++ b/build/pkgs/onetbb/checksums.ini @@ -1,5 +1,5 @@ tarball=onetbb-VERSION.tar.gz -sha1=b991f5d882aba2182871cfe011614cc43b92aa3c -md5=ba4ecedc4949f673a34b35de738a72fc -cksum=211900655 +sha1=740e86b703f42446ddde392b73a9db3dc0f5f4cd +md5=b301151120b08a17e98dcdda6e4f6011 +cksum=3287903962 upstream_url=https://github.com/oneapi-src/oneTBB/archive/refs/tags/vVERSION.tar.gz diff --git a/build/pkgs/onetbb/package-version.txt b/build/pkgs/onetbb/package-version.txt index a6513d2ae59..90431db79ad 100644 --- a/build/pkgs/onetbb/package-version.txt +++ b/build/pkgs/onetbb/package-version.txt @@ -1 +1 @@ -2021.9.0 +2021.11.0 diff --git a/build/pkgs/onetbb/patches/gcc13-154cc73ca4d359621202399cc0c3c91058e56e79.patch b/build/pkgs/onetbb/patches/gcc13-154cc73ca4d359621202399cc0c3c91058e56e79.patch deleted file mode 100644 index a2e4d939311..00000000000 --- a/build/pkgs/onetbb/patches/gcc13-154cc73ca4d359621202399cc0c3c91058e56e79.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 154cc73ca4d359621202399cc0c3c91058e56e79 Mon Sep 17 00:00:00 2001 -From: Sam James -Date: Wed, 22 Feb 2023 14:16:46 +0000 -Subject: [PATCH] test: common: include for abort() (fix build with - GCC 13) (#1031) - -GCC 13 (as usual for new compiler releases) shuffles around some -internal includes and so etc is no longer transitively included. - -See https://www.gnu.org/software/gcc/gcc-13/porting_to.html. - -Signed-off-by: Sam James ---- - test/common/utils_assert.h | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/test/common/utils_assert.h b/test/common/utils_assert.h -index 1df8ae72ac..0123ab881e 100644 ---- a/test/common/utils_assert.h -+++ b/test/common/utils_assert.h -@@ -1,5 +1,5 @@ - /* -- Copyright (c) 2005-2022 Intel Corporation -+ Copyright (c) 2005-2023 Intel Corporation - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. -@@ -20,6 +20,8 @@ - #include "config.h" - #include "utils_report.h" - -+#include -+ - #define REPORT_FATAL_ERROR REPORT - - namespace utils { diff --git a/build/pkgs/papilo/checksums.ini b/build/pkgs/papilo/checksums.ini index b2385565547..8bebc605f2c 100644 --- a/build/pkgs/papilo/checksums.ini +++ b/build/pkgs/papilo/checksums.ini @@ -1,5 +1,5 @@ tarball=papilo-VERSION.tar.gz -sha1=85d599ac9936aa1ddf687e04273b995522909de5 -md5=c41f5aa615ffc9914f8ca924947aa8cb -cksum=1535425476 +sha1=069f64ff25cfb08c9b2a416d1d215bd5b907c877 +md5=d58b7c991ac1c4a863de92a404409ca8 +cksum=1552180280 upstream_url=https://github.com/scipopt/papilo/archive/refs/tags/vVERSION.tar.gz diff --git a/build/pkgs/papilo/package-version.txt b/build/pkgs/papilo/package-version.txt index 3e3c2f1e5ed..ccbccc3dc62 100644 --- a/build/pkgs/papilo/package-version.txt +++ b/build/pkgs/papilo/package-version.txt @@ -1 +1 @@ -2.1.1 +2.2.0 diff --git a/build/pkgs/papilo/patches/0001-CMakeLists.txt-Do-not-require-boost-program_options-.patch b/build/pkgs/papilo/patches/0001-CMakeLists.txt-Do-not-require-boost-program_options-.patch deleted file mode 100644 index 5001ca4d67a..00000000000 --- a/build/pkgs/papilo/patches/0001-CMakeLists.txt-Do-not-require-boost-program_options-.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 1fc5aecb4eca500917407b008c8c8eb8637a9c27 Mon Sep 17 00:00:00 2001 -From: Matthias Koeppe -Date: Sat, 19 Nov 2022 19:03:37 -0800 -Subject: [PATCH] CMakeLists.txt: Do not require boost program_options for the - library - ---- - CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 7256877..db905aa 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -47,7 +47,7 @@ if(NOT CMAKE_BUILD_TYPE) - set(CMAKE_BUILD_TYPE Release) - endif() - --find_package(Boost ${BOOST_MIN_VERSION} COMPONENTS program_options REQUIRED) -+find_package(Boost ${BOOST_MIN_VERSION} REQUIRED) - - if(GMP) - find_package(GMP) --- -2.37.3 - diff --git a/build/pkgs/papilo/patches/import_memory_multiprecision.patch b/build/pkgs/papilo/patches/import_memory_multiprecision.patch deleted file mode 100644 index 1f16ced0bed..00000000000 --- a/build/pkgs/papilo/patches/import_memory_multiprecision.patch +++ /dev/null @@ -1,20 +0,0 @@ -commit 855bd67a64c5c044080d790e5c9fb7e298a61ab7 -Author: Matthias Koeppe -Date: Thu Dec 8 18:10:29 2022 -0800 - - src/papilo/misc/MultiPrecision.hpp: Add #include - -diff --git a/src/papilo/misc/MultiPrecision.hpp b/src/papilo/misc/MultiPrecision.hpp -index 669014c..44d3e63 100644 ---- a/src/papilo/misc/MultiPrecision.hpp -+++ b/src/papilo/misc/MultiPrecision.hpp -@@ -26,6 +26,9 @@ - - #include "papilo/Config.hpp" - -+// work around build failure with boost on Fedora 37 -+#include -+ - #include - - #ifdef PAPILO_HAVE_FLOAT128 diff --git a/build/pkgs/pyscipopt/checksums.ini b/build/pkgs/pyscipopt/checksums.ini index 5b537d4c57d..1232c25dff5 100644 --- a/build/pkgs/pyscipopt/checksums.ini +++ b/build/pkgs/pyscipopt/checksums.ini @@ -1,5 +1,5 @@ tarball=PySCIPOpt-VERSION.tar.gz -sha1=5ae7f3d7e9d8b344ee9a4413154ae80a5ee137de -md5=32a4dced7e74a1c290b32ef0da751129 -cksum=2258510906 +sha1=713e32cc0ff112500c4f43487614094ece4a8bbf +md5=ee425a362744a4475228510b48781be9 +cksum=1541742154 upstream_url=https://pypi.io/packages/source/p/pyscipopt/PySCIPOpt-VERSION.tar.gz diff --git a/build/pkgs/pyscipopt/package-version.txt b/build/pkgs/pyscipopt/package-version.txt index fdc6698807a..0062ac97180 100644 --- a/build/pkgs/pyscipopt/package-version.txt +++ b/build/pkgs/pyscipopt/package-version.txt @@ -1 +1 @@ -4.4.0 +5.0.0 diff --git a/build/pkgs/pyscipopt/patches/792.patch b/build/pkgs/pyscipopt/patches/792.patch deleted file mode 100644 index faff6076eb4..00000000000 --- a/build/pkgs/pyscipopt/patches/792.patch +++ /dev/null @@ -1,1217 +0,0 @@ -From 96acc6be39b6d153cfcfe7b14741956eaf7f5851 Mon Sep 17 00:00:00 2001 -From: Matthias Koeppe -Date: Sun, 18 Feb 2024 19:47:52 -0800 -Subject: [PATCH] src/pyscipopt: Add 'noexcept' to functions that use 'with - gil' - ---- - src/pyscipopt/benders.pxi | 30 ++++++++--------- - src/pyscipopt/benderscut.pxi | 14 ++++---- - src/pyscipopt/branchrule.pxi | 18 +++++----- - src/pyscipopt/conshdlr.pxi | 64 ++++++++++++++++++------------------ - src/pyscipopt/cutsel.pxi | 14 ++++---- - src/pyscipopt/event.pxi | 18 +++++----- - src/pyscipopt/heuristic.pxi | 14 ++++---- - src/pyscipopt/nodesel.pxi | 16 ++++----- - src/pyscipopt/presol.pxi | 14 ++++---- - src/pyscipopt/pricer.pxi | 16 ++++----- - src/pyscipopt/propagator.pxi | 22 ++++++------- - src/pyscipopt/reader.pxi | 8 ++--- - src/pyscipopt/relax.pxi | 14 ++++---- - src/pyscipopt/scip.pxd | 2 +- - src/pyscipopt/scip.pxi | 4 +-- - src/pyscipopt/sepa.pxi | 16 ++++----- - 16 files changed, 142 insertions(+), 142 deletions(-) - -diff --git a/src/pyscipopt/benders.pxi b/src/pyscipopt/benders.pxi -index 3e11db189..66a394d8d 100644 ---- a/src/pyscipopt/benders.pxi -+++ b/src/pyscipopt/benders.pxi -@@ -70,10 +70,10 @@ cdef Variable getPyVar(SCIP_VAR* var): - return vardata - - --cdef SCIP_RETCODE PyBendersCopy (SCIP* scip, SCIP_BENDERS* benders, SCIP_Bool threadsafe) with gil: -+cdef SCIP_RETCODE PyBendersCopy (SCIP* scip, SCIP_BENDERS* benders, SCIP_Bool threadsafe) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersFree (SCIP* scip, SCIP_BENDERS* benders) with gil: -+cdef SCIP_RETCODE PyBendersFree (SCIP* scip, SCIP_BENDERS* benders) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata -@@ -81,56 +81,56 @@ cdef SCIP_RETCODE PyBendersFree (SCIP* scip, SCIP_BENDERS* benders) with gil: - Py_DECREF(PyBenders) - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersInit (SCIP* scip, SCIP_BENDERS* benders) with gil: -+cdef SCIP_RETCODE PyBendersInit (SCIP* scip, SCIP_BENDERS* benders) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata - PyBenders.bendersinit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersExit (SCIP* scip, SCIP_BENDERS* benders) with gil: -+cdef SCIP_RETCODE PyBendersExit (SCIP* scip, SCIP_BENDERS* benders) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata - PyBenders.bendersexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersInitpre (SCIP* scip, SCIP_BENDERS* benders) with gil: -+cdef SCIP_RETCODE PyBendersInitpre (SCIP* scip, SCIP_BENDERS* benders) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata - PyBenders.bendersinitpre() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersExitpre (SCIP* scip, SCIP_BENDERS* benders) with gil: -+cdef SCIP_RETCODE PyBendersExitpre (SCIP* scip, SCIP_BENDERS* benders) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata - PyBenders.bendersexitpre() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersInitsol (SCIP* scip, SCIP_BENDERS* benders) with gil: -+cdef SCIP_RETCODE PyBendersInitsol (SCIP* scip, SCIP_BENDERS* benders) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata - PyBenders.bendersinitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersExitsol (SCIP* scip, SCIP_BENDERS* benders) with gil: -+cdef SCIP_RETCODE PyBendersExitsol (SCIP* scip, SCIP_BENDERS* benders) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata - PyBenders.bendersexitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersCreatesub (SCIP* scip, SCIP_BENDERS* benders, int probnumber) with gil: -+cdef SCIP_RETCODE PyBendersCreatesub (SCIP* scip, SCIP_BENDERS* benders, int probnumber) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata - PyBenders.benderscreatesub(probnumber) - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersPresubsolve (SCIP* scip, SCIP_BENDERS* benders, SCIP_SOL* sol, SCIP_BENDERSENFOTYPE type, SCIP_Bool checkint, SCIP_Bool* infeasible, SCIP_Bool* auxviol, SCIP_Bool* skipsolve, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyBendersPresubsolve (SCIP* scip, SCIP_BENDERS* benders, SCIP_SOL* sol, SCIP_BENDERSENFOTYPE type, SCIP_Bool checkint, SCIP_Bool* infeasible, SCIP_Bool* auxviol, SCIP_Bool* skipsolve, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata -@@ -146,7 +146,7 @@ cdef SCIP_RETCODE PyBendersPresubsolve (SCIP* scip, SCIP_BENDERS* benders, SCIP_ - result[0] = result_dict.get("result", result[0]) - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersSolvesubconvex (SCIP* scip, SCIP_BENDERS* benders, SCIP_SOL* sol, int probnumber, SCIP_Bool onlyconvex, SCIP_Real* objective, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyBendersSolvesubconvex (SCIP* scip, SCIP_BENDERS* benders, SCIP_SOL* sol, int probnumber, SCIP_Bool onlyconvex, SCIP_Real* objective, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata -@@ -159,7 +159,7 @@ cdef SCIP_RETCODE PyBendersSolvesubconvex (SCIP* scip, SCIP_BENDERS* benders, SC - result[0] = result_dict.get("result", result[0]) - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersSolvesub (SCIP* scip, SCIP_BENDERS* benders, SCIP_SOL* sol, int probnumber, SCIP_Real* objective, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyBendersSolvesub (SCIP* scip, SCIP_BENDERS* benders, SCIP_SOL* sol, int probnumber, SCIP_Real* objective, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata -@@ -174,7 +174,7 @@ cdef SCIP_RETCODE PyBendersSolvesub (SCIP* scip, SCIP_BENDERS* benders, SCIP_SOL - - cdef SCIP_RETCODE PyBendersPostsolve (SCIP* scip, SCIP_BENDERS* benders, SCIP_SOL* sol, - SCIP_BENDERSENFOTYPE type, int* mergecands, int npriomergecands, int nmergecands, SCIP_Bool checkint, -- SCIP_Bool infeasible, SCIP_Bool* merged) with gil: -+ SCIP_Bool infeasible, SCIP_Bool* merged) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata -@@ -190,7 +190,7 @@ cdef SCIP_RETCODE PyBendersPostsolve (SCIP* scip, SCIP_BENDERS* benders, SCIP_SO - merged[0] = result_dict.get("merged", False) - return SCIP_OKAY - --cdef SCIP_RETCODE PyBendersFreesub (SCIP* scip, SCIP_BENDERS* benders, int probnumber) with gil: -+cdef SCIP_RETCODE PyBendersFreesub (SCIP* scip, SCIP_BENDERS* benders, int probnumber) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata -@@ -198,7 +198,7 @@ cdef SCIP_RETCODE PyBendersFreesub (SCIP* scip, SCIP_BENDERS* benders, int probn - return SCIP_OKAY - - #TODO: Really need to ask about the passing and returning of variables --cdef SCIP_RETCODE PyBendersGetvar (SCIP* scip, SCIP_BENDERS* benders, SCIP_VAR* var, SCIP_VAR** mappedvar, int probnumber) with gil: -+cdef SCIP_RETCODE PyBendersGetvar (SCIP* scip, SCIP_BENDERS* benders, SCIP_VAR* var, SCIP_VAR** mappedvar, int probnumber) noexcept with gil: - cdef SCIP_BENDERSDATA* bendersdata - bendersdata = SCIPbendersGetData(benders) - PyBenders = bendersdata -diff --git a/src/pyscipopt/benderscut.pxi b/src/pyscipopt/benderscut.pxi -index 506a6f065..1ce561a06 100644 ---- a/src/pyscipopt/benderscut.pxi -+++ b/src/pyscipopt/benderscut.pxi -@@ -24,10 +24,10 @@ cdef class Benderscut: - print("python error in benderscutexec: this method needs to be implemented") - return {} - --cdef SCIP_RETCODE PyBenderscutCopy (SCIP* scip, SCIP_BENDERS* benders, SCIP_BENDERSCUT* benderscut) with gil: -+cdef SCIP_RETCODE PyBenderscutCopy (SCIP* scip, SCIP_BENDERS* benders, SCIP_BENDERSCUT* benderscut) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyBenderscutFree (SCIP* scip, SCIP_BENDERSCUT* benderscut) with gil: -+cdef SCIP_RETCODE PyBenderscutFree (SCIP* scip, SCIP_BENDERSCUT* benderscut) noexcept with gil: - cdef SCIP_BENDERSCUTDATA* benderscutdata - benderscutdata = SCIPbenderscutGetData(benderscut) - PyBenderscut = benderscutdata -@@ -35,35 +35,35 @@ cdef SCIP_RETCODE PyBenderscutFree (SCIP* scip, SCIP_BENDERSCUT* benderscut) wit - Py_DECREF(PyBenderscut) - return SCIP_OKAY - --cdef SCIP_RETCODE PyBenderscutInit (SCIP* scip, SCIP_BENDERSCUT* benderscut) with gil: -+cdef SCIP_RETCODE PyBenderscutInit (SCIP* scip, SCIP_BENDERSCUT* benderscut) noexcept with gil: - cdef SCIP_BENDERSCUTDATA* benderscutdata - benderscutdata = SCIPbenderscutGetData(benderscut) - PyBenderscut = benderscutdata - PyBenderscut.benderscutinit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBenderscutExit (SCIP* scip, SCIP_BENDERSCUT* benderscut) with gil: -+cdef SCIP_RETCODE PyBenderscutExit (SCIP* scip, SCIP_BENDERSCUT* benderscut) noexcept with gil: - cdef SCIP_BENDERSCUTDATA* benderscutdata - benderscutdata = SCIPbenderscutGetData(benderscut) - PyBenderscut = benderscutdata - PyBenderscut.benderscutexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBenderscutInitsol (SCIP* scip, SCIP_BENDERSCUT* benderscut) with gil: -+cdef SCIP_RETCODE PyBenderscutInitsol (SCIP* scip, SCIP_BENDERSCUT* benderscut) noexcept with gil: - cdef SCIP_BENDERSCUTDATA* benderscutdata - benderscutdata = SCIPbenderscutGetData(benderscut) - PyBenderscut = benderscutdata - PyBenderscut.benderscutinitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBenderscutExitsol (SCIP* scip, SCIP_BENDERSCUT* benderscut) with gil: -+cdef SCIP_RETCODE PyBenderscutExitsol (SCIP* scip, SCIP_BENDERSCUT* benderscut) noexcept with gil: - cdef SCIP_BENDERSCUTDATA* benderscutdata - benderscutdata = SCIPbenderscutGetData(benderscut) - PyBenderscut = benderscutdata - PyBenderscut.benderscutexitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBenderscutExec (SCIP* scip, SCIP_BENDERS* benders, SCIP_BENDERSCUT* benderscut, SCIP_SOL* sol, int probnumber, SCIP_BENDERSENFOTYPE type, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyBenderscutExec (SCIP* scip, SCIP_BENDERS* benders, SCIP_BENDERSCUT* benderscut, SCIP_SOL* sol, int probnumber, SCIP_BENDERSENFOTYPE type, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_BENDERSCUTDATA* benderscutdata - benderscutdata = SCIPbenderscutGetData(benderscut) - PyBenderscut = benderscutdata -diff --git a/src/pyscipopt/branchrule.pxi b/src/pyscipopt/branchrule.pxi -index 251aa33b1..2d3411d2c 100644 ---- a/src/pyscipopt/branchrule.pxi -+++ b/src/pyscipopt/branchrule.pxi -@@ -39,10 +39,10 @@ cdef class Branchrule: - - - --cdef SCIP_RETCODE PyBranchruleCopy (SCIP* scip, SCIP_BRANCHRULE* branchrule) with gil: -+cdef SCIP_RETCODE PyBranchruleCopy (SCIP* scip, SCIP_BRANCHRULE* branchrule) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyBranchruleFree (SCIP* scip, SCIP_BRANCHRULE* branchrule) with gil: -+cdef SCIP_RETCODE PyBranchruleFree (SCIP* scip, SCIP_BRANCHRULE* branchrule) noexcept with gil: - cdef SCIP_BRANCHRULEDATA* branchruledata - branchruledata = SCIPbranchruleGetData(branchrule) - PyBranchrule = branchruledata -@@ -50,35 +50,35 @@ cdef SCIP_RETCODE PyBranchruleFree (SCIP* scip, SCIP_BRANCHRULE* branchrule) wit - Py_DECREF(PyBranchrule) - return SCIP_OKAY - --cdef SCIP_RETCODE PyBranchruleInit (SCIP* scip, SCIP_BRANCHRULE* branchrule) with gil: -+cdef SCIP_RETCODE PyBranchruleInit (SCIP* scip, SCIP_BRANCHRULE* branchrule) noexcept with gil: - cdef SCIP_BRANCHRULEDATA* branchruledata - branchruledata = SCIPbranchruleGetData(branchrule) - PyBranchrule = branchruledata - PyBranchrule.branchinit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBranchruleExit (SCIP* scip, SCIP_BRANCHRULE* branchrule) with gil: -+cdef SCIP_RETCODE PyBranchruleExit (SCIP* scip, SCIP_BRANCHRULE* branchrule) noexcept with gil: - cdef SCIP_BRANCHRULEDATA* branchruledata - branchruledata = SCIPbranchruleGetData(branchrule) - PyBranchrule = branchruledata - PyBranchrule.branchexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBranchruleInitsol (SCIP* scip, SCIP_BRANCHRULE* branchrule) with gil: -+cdef SCIP_RETCODE PyBranchruleInitsol (SCIP* scip, SCIP_BRANCHRULE* branchrule) noexcept with gil: - cdef SCIP_BRANCHRULEDATA* branchruledata - branchruledata = SCIPbranchruleGetData(branchrule) - PyBranchrule = branchruledata - PyBranchrule.branchinitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBranchruleExitsol (SCIP* scip, SCIP_BRANCHRULE* branchrule) with gil: -+cdef SCIP_RETCODE PyBranchruleExitsol (SCIP* scip, SCIP_BRANCHRULE* branchrule) noexcept with gil: - cdef SCIP_BRANCHRULEDATA* branchruledata - branchruledata = SCIPbranchruleGetData(branchrule) - PyBranchrule = branchruledata - PyBranchrule.branchexitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyBranchruleExeclp (SCIP* scip, SCIP_BRANCHRULE* branchrule, SCIP_Bool allowaddcons, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyBranchruleExeclp (SCIP* scip, SCIP_BRANCHRULE* branchrule, SCIP_Bool allowaddcons, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_BRANCHRULEDATA* branchruledata - branchruledata = SCIPbranchruleGetData(branchrule) - PyBranchrule = branchruledata -@@ -86,7 +86,7 @@ cdef SCIP_RETCODE PyBranchruleExeclp (SCIP* scip, SCIP_BRANCHRULE* branchrule, S - result[0] = result_dict.get("result", result[0]) - return SCIP_OKAY - --cdef SCIP_RETCODE PyBranchruleExecext(SCIP* scip, SCIP_BRANCHRULE* branchrule, SCIP_Bool allowaddcons, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyBranchruleExecext(SCIP* scip, SCIP_BRANCHRULE* branchrule, SCIP_Bool allowaddcons, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_BRANCHRULEDATA* branchruledata - branchruledata = SCIPbranchruleGetData(branchrule) - PyBranchrule = branchruledata -@@ -94,7 +94,7 @@ cdef SCIP_RETCODE PyBranchruleExecext(SCIP* scip, SCIP_BRANCHRULE* branchrule, S - result[0] = result_dict.get("result", result[0]) - return SCIP_OKAY - --cdef SCIP_RETCODE PyBranchruleExecps(SCIP* scip, SCIP_BRANCHRULE* branchrule, SCIP_Bool allowaddcons, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyBranchruleExecps(SCIP* scip, SCIP_BRANCHRULE* branchrule, SCIP_Bool allowaddcons, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_BRANCHRULEDATA* branchruledata - branchruledata = SCIPbranchruleGetData(branchrule) - PyBranchrule = branchruledata -diff --git a/src/pyscipopt/conshdlr.pxi b/src/pyscipopt/conshdlr.pxi -index 80c60c17c..1299ad35c 100644 ---- a/src/pyscipopt/conshdlr.pxi -+++ b/src/pyscipopt/conshdlr.pxi -@@ -150,16 +150,16 @@ cdef Constraint getPyCons(SCIP_CONS* cons): - - - --cdef SCIP_RETCODE PyConshdlrCopy (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_Bool* valid) with gil: -+cdef SCIP_RETCODE PyConshdlrCopy (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_Bool* valid) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsFree (SCIP* scip, SCIP_CONSHDLR* conshdlr) with gil: -+cdef SCIP_RETCODE PyConsFree (SCIP* scip, SCIP_CONSHDLR* conshdlr) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - PyConshdlr.consfree() - Py_DECREF(PyConshdlr) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsInit (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) with gil: -+cdef SCIP_RETCODE PyConsInit (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -167,7 +167,7 @@ cdef SCIP_RETCODE PyConsInit (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** c - PyConshdlr.consinit(constraints) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsExit (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) with gil: -+cdef SCIP_RETCODE PyConsExit (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -175,7 +175,7 @@ cdef SCIP_RETCODE PyConsExit (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** c - PyConshdlr.consexit(constraints) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsInitpre (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) with gil: -+cdef SCIP_RETCODE PyConsInitpre (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -183,7 +183,7 @@ cdef SCIP_RETCODE PyConsInitpre (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* - PyConshdlr.consinitpre(constraints) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsExitpre (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) with gil: -+cdef SCIP_RETCODE PyConsExitpre (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -191,7 +191,7 @@ cdef SCIP_RETCODE PyConsExitpre (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* - PyConshdlr.consexitpre(constraints) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsInitsol (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) with gil: -+cdef SCIP_RETCODE PyConsInitsol (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -199,7 +199,7 @@ cdef SCIP_RETCODE PyConsInitsol (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* - PyConshdlr.consinitsol(constraints) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsExitsol (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, SCIP_Bool restart) with gil: -+cdef SCIP_RETCODE PyConsExitsol (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, SCIP_Bool restart) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -207,7 +207,7 @@ cdef SCIP_RETCODE PyConsExitsol (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* - PyConshdlr.consexitsol(constraints, restart) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsDelete (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, SCIP_CONSDATA** consdata) with gil: -+cdef SCIP_RETCODE PyConsDelete (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, SCIP_CONSDATA** consdata) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - PyCons = getPyCons(cons) - assert consdata[0] == PyCons -@@ -216,7 +216,7 @@ cdef SCIP_RETCODE PyConsDelete (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* - Py_DECREF(PyCons) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsTrans (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* sourcecons, SCIP_CONS** targetcons) with gil: -+cdef SCIP_RETCODE PyConsTrans (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* sourcecons, SCIP_CONS** targetcons) noexcept with gil: - cdef Constraint PyTargetCons - PyConshdlr = getPyConshdlr(conshdlr) - PySourceCons = getPyCons(sourcecons) -@@ -235,7 +235,7 @@ cdef SCIP_RETCODE PyConsTrans (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* s - PySourceCons.isRemovable(), PySourceCons.isStickingAtNode())) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsInitlp (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, SCIP_Bool* infeasible) with gil: -+cdef SCIP_RETCODE PyConsInitlp (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, SCIP_Bool* infeasible) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -244,7 +244,7 @@ cdef SCIP_RETCODE PyConsInitlp (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** - infeasible[0] = result_dict.get("infeasible", infeasible[0]) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsSepalp (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, int nusefulconss, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyConsSepalp (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, int nusefulconss, SCIP_RESULT* result) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -254,7 +254,7 @@ cdef SCIP_RETCODE PyConsSepalp (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** - return SCIP_OKAY - - cdef SCIP_RETCODE PyConsSepasol (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, int nusefulconss, -- SCIP_SOL* sol, SCIP_RESULT* result) with gil: -+ SCIP_SOL* sol, SCIP_RESULT* result) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -265,7 +265,7 @@ cdef SCIP_RETCODE PyConsSepasol (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* - return SCIP_OKAY - - cdef SCIP_RETCODE PyConsEnfolp (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, int nusefulconss, -- SCIP_Bool solinfeasible, SCIP_RESULT* result) with gil: -+ SCIP_Bool solinfeasible, SCIP_RESULT* result) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -274,7 +274,7 @@ cdef SCIP_RETCODE PyConsEnfolp (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** - result[0] = result_dict.get("result", result[0]) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsEnforelax (SCIP* scip, SCIP_SOL* sol, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, int nusefulconss, SCIP_Bool solinfeasible, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyConsEnforelax (SCIP* scip, SCIP_SOL* sol, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, int nusefulconss, SCIP_Bool solinfeasible, SCIP_RESULT* result) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -285,7 +285,7 @@ cdef SCIP_RETCODE PyConsEnforelax (SCIP* scip, SCIP_SOL* sol, SCIP_CONSHDLR* con - return SCIP_OKAY - - cdef SCIP_RETCODE PyConsEnfops (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, int nusefulconss, -- SCIP_Bool solinfeasible, SCIP_Bool objinfeasible, SCIP_RESULT* result) with gil: -+ SCIP_Bool solinfeasible, SCIP_Bool objinfeasible, SCIP_RESULT* result) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -295,7 +295,7 @@ cdef SCIP_RETCODE PyConsEnfops (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** - return SCIP_OKAY - - cdef SCIP_RETCODE PyConsCheck (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, SCIP_SOL* sol, SCIP_Bool checkintegrality, -- SCIP_Bool checklprows, SCIP_Bool printreason, SCIP_Bool completely, SCIP_RESULT* result) with gil: -+ SCIP_Bool checklprows, SCIP_Bool printreason, SCIP_Bool completely, SCIP_RESULT* result) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -306,7 +306,7 @@ cdef SCIP_RETCODE PyConsCheck (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** - return SCIP_OKAY - - cdef SCIP_RETCODE PyConsProp (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss, int nusefulconss, int nmarkedconss, -- SCIP_PROPTIMING proptiming, SCIP_RESULT* result) with gil: -+ SCIP_PROPTIMING proptiming, SCIP_RESULT* result) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -319,7 +319,7 @@ cdef SCIP_RETCODE PyConsPresol (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** - int nnewfixedvars, int nnewaggrvars, int nnewchgvartypes, int nnewchgbds, int nnewholes, - int nnewdelconss, int nnewaddconss, int nnewupgdconss, int nnewchgcoefs, int nnewchgsides, - int* nfixedvars, int* naggrvars, int* nchgvartypes, int* nchgbds, int* naddholes, -- int* ndelconss, int* naddconss, int* nupgdconss, int* nchgcoefs, int* nchgsides, SCIP_RESULT* result) with gil: -+ int* ndelconss, int* naddconss, int* nupgdconss, int* nchgcoefs, int* nchgsides, SCIP_RESULT* result) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -354,12 +354,12 @@ cdef SCIP_RETCODE PyConsPresol (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** - return SCIP_OKAY - - cdef SCIP_RETCODE PyConsResprop (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, SCIP_VAR* infervar, int inferinfo, -- SCIP_BOUNDTYPE boundtype, SCIP_BDCHGIDX* bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT* result) with gil: -+ SCIP_BOUNDTYPE boundtype, SCIP_BDCHGIDX* bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT* result) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - PyConshdlr.consresprop() - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsLock (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, SCIP_LOCKTYPE locktype, int nlockspos, int nlocksneg) with gil: -+cdef SCIP_RETCODE PyConsLock (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, SCIP_LOCKTYPE locktype, int nlockspos, int nlocksneg) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - if cons == NULL: - PyConshdlr.conslock(None, locktype, nlockspos, nlocksneg) -@@ -368,31 +368,31 @@ cdef SCIP_RETCODE PyConsLock (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* co - PyConshdlr.conslock(PyCons, locktype, nlockspos, nlocksneg) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsActive (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons) with gil: -+cdef SCIP_RETCODE PyConsActive (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - PyCons = getPyCons(cons) - PyConshdlr.consactive(PyCons) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsDeactive (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons) with gil: -+cdef SCIP_RETCODE PyConsDeactive (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - PyCons = getPyCons(cons) - PyConshdlr.consdeactive(PyCons) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsEnable (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons) with gil: -+cdef SCIP_RETCODE PyConsEnable (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - PyCons = getPyCons(cons) - PyConshdlr.consenable(PyCons) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsDisable (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons) with gil: -+cdef SCIP_RETCODE PyConsDisable (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - PyCons = getPyCons(cons) - PyConshdlr.consdisable(PyCons) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsDelvars (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) with gil: -+cdef SCIP_RETCODE PyConsDelvars (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** conss, int nconss) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - cdef constraints = [] - for i in range(nconss): -@@ -400,7 +400,7 @@ cdef SCIP_RETCODE PyConsDelvars (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* - PyConshdlr.consdelvars(constraints) - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsPrint (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, FILE* file) with gil: -+cdef SCIP_RETCODE PyConsPrint (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, FILE* file) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - PyCons = getPyCons(cons) - # TODO: pass file -@@ -411,7 +411,7 @@ cdef SCIP_RETCODE PyConsCopy (SCIP* scip, SCIP_CONS** cons, const char* name, SC - SCIP_CONS* sourcecons, SCIP_HASHMAP* varmap, SCIP_HASHMAP* consmap, SCIP_Bool initial, - SCIP_Bool separate, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool propagate, SCIP_Bool local, - SCIP_Bool modifiable, SCIP_Bool dynamic, SCIP_Bool removable, SCIP_Bool stickingatnode, -- SCIP_Bool isglobal, SCIP_Bool* valid) with gil: -+ SCIP_Bool isglobal, SCIP_Bool* valid) noexcept with gil: - # TODO everything! - PyConshdlr = getPyConshdlr(sourceconshdlr) - PyConshdlr.conscopy() -@@ -421,14 +421,14 @@ cdef SCIP_RETCODE PyConsCopy (SCIP* scip, SCIP_CONS** cons, const char* name, SC - cdef SCIP_RETCODE PyConsParse (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS** cons, const char* name, const char* str, - SCIP_Bool initial, SCIP_Bool separate, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool propagate, - SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool dynamic, SCIP_Bool removable, -- SCIP_Bool stickingatnode, SCIP_Bool* success) with gil: -+ SCIP_Bool stickingatnode, SCIP_Bool* success) noexcept with gil: - # TODO everything! - PyConshdlr = getPyConshdlr(conshdlr) - PyConshdlr.consparse() - success[0] = False - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsGetvars (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, SCIP_VAR** vars, int varssize, SCIP_Bool* success) with gil: -+cdef SCIP_RETCODE PyConsGetvars (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, SCIP_VAR** vars, int varssize, SCIP_Bool* success) noexcept with gil: - # TODO - PyConshdlr = getPyConshdlr(conshdlr) - PyCons = getPyCons(cons) -@@ -436,7 +436,7 @@ cdef SCIP_RETCODE PyConsGetvars (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* - success[0] = False - return SCIP_OKAY - --cdef SCIP_RETCODE PyConsGetnvars (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, int* nvars, SCIP_Bool* success) with gil: -+cdef SCIP_RETCODE PyConsGetnvars (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS* cons, int* nvars, SCIP_Bool* success) noexcept with gil: - PyConshdlr = getPyConshdlr(conshdlr) - PyCons = getPyCons(cons) - result_dict = PyConshdlr.consgetnvars(PyCons) -@@ -445,7 +445,7 @@ cdef SCIP_RETCODE PyConsGetnvars (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_CONS - return SCIP_OKAY - - cdef SCIP_RETCODE PyConsGetdivebdchgs (SCIP* scip, SCIP_CONSHDLR* conshdlr, SCIP_DIVESET* diveset, SCIP_SOL* sol, -- SCIP_Bool* success, SCIP_Bool* infeasible) with gil: -+ SCIP_Bool* success, SCIP_Bool* infeasible) noexcept with gil: - # TODO - PyConshdlr = getPyConshdlr(conshdlr) - PyConshdlr.consgetdivebdchgs() -diff --git a/src/pyscipopt/cutsel.pxi b/src/pyscipopt/cutsel.pxi -index e953cb1e9..d259fb28e 100644 ---- a/src/pyscipopt/cutsel.pxi -+++ b/src/pyscipopt/cutsel.pxi -@@ -29,10 +29,10 @@ cdef class Cutsel: - return {} - - --cdef SCIP_RETCODE PyCutselCopy (SCIP* scip, SCIP_CUTSEL* cutsel) with gil: -+cdef SCIP_RETCODE PyCutselCopy (SCIP* scip, SCIP_CUTSEL* cutsel) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyCutselFree (SCIP* scip, SCIP_CUTSEL* cutsel) with gil: -+cdef SCIP_RETCODE PyCutselFree (SCIP* scip, SCIP_CUTSEL* cutsel) noexcept with gil: - cdef SCIP_CUTSELDATA* cutseldata - cutseldata = SCIPcutselGetData(cutsel) - PyCutsel = cutseldata -@@ -40,7 +40,7 @@ cdef SCIP_RETCODE PyCutselFree (SCIP* scip, SCIP_CUTSEL* cutsel) with gil: - Py_DECREF(PyCutsel) - return SCIP_OKAY - --cdef SCIP_RETCODE PyCutselInit (SCIP* scip, SCIP_CUTSEL* cutsel) with gil: -+cdef SCIP_RETCODE PyCutselInit (SCIP* scip, SCIP_CUTSEL* cutsel) noexcept with gil: - cdef SCIP_CUTSELDATA* cutseldata - cutseldata = SCIPcutselGetData(cutsel) - PyCutsel = cutseldata -@@ -48,21 +48,21 @@ cdef SCIP_RETCODE PyCutselInit (SCIP* scip, SCIP_CUTSEL* cutsel) with gil: - return SCIP_OKAY - - --cdef SCIP_RETCODE PyCutselExit (SCIP* scip, SCIP_CUTSEL* cutsel) with gil: -+cdef SCIP_RETCODE PyCutselExit (SCIP* scip, SCIP_CUTSEL* cutsel) noexcept with gil: - cdef SCIP_CUTSELDATA* cutseldata - cutseldata = SCIPcutselGetData(cutsel) - PyCutsel = cutseldata - PyCutsel.cutselexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyCutselInitsol (SCIP* scip, SCIP_CUTSEL* cutsel) with gil: -+cdef SCIP_RETCODE PyCutselInitsol (SCIP* scip, SCIP_CUTSEL* cutsel) noexcept with gil: - cdef SCIP_CUTSELDATA* cutseldata - cutseldata = SCIPcutselGetData(cutsel) - PyCutsel = cutseldata - PyCutsel.cutselinitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyCutselExitsol (SCIP* scip, SCIP_CUTSEL* cutsel) with gil: -+cdef SCIP_RETCODE PyCutselExitsol (SCIP* scip, SCIP_CUTSEL* cutsel) noexcept with gil: - cdef SCIP_CUTSELDATA* cutseldata - cutseldata = SCIPcutselGetData(cutsel) - PyCutsel = cutseldata -@@ -71,7 +71,7 @@ cdef SCIP_RETCODE PyCutselExitsol (SCIP* scip, SCIP_CUTSEL* cutsel) with gil: - - cdef SCIP_RETCODE PyCutselSelect (SCIP* scip, SCIP_CUTSEL* cutsel, SCIP_ROW** cuts, int ncuts, - SCIP_ROW** forcedcuts, int nforcedcuts, SCIP_Bool root, int maxnselectedcuts, -- int* nselectedcuts, SCIP_RESULT* result) with gil: -+ int* nselectedcuts, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_CUTSELDATA* cutseldata - cdef SCIP_ROW* scip_row - cutseldata = SCIPcutselGetData(cutsel) -diff --git a/src/pyscipopt/event.pxi b/src/pyscipopt/event.pxi -index 95c8bc1f4..914e882ed 100644 ---- a/src/pyscipopt/event.pxi -+++ b/src/pyscipopt/event.pxi -@@ -39,48 +39,48 @@ cdef class Eventhdlr: - - - # local helper functions for the interface --cdef Eventhdlr getPyEventhdlr(SCIP_EVENTHDLR* eventhdlr) with gil: -+cdef Eventhdlr getPyEventhdlr(SCIP_EVENTHDLR* eventhdlr) noexcept with gil: - cdef SCIP_EVENTHDLRDATA* eventhdlrdata - eventhdlrdata = SCIPeventhdlrGetData(eventhdlr) - return eventhdlrdata - --cdef SCIP_RETCODE PyEventCopy (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) with gil: -+cdef SCIP_RETCODE PyEventCopy (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) noexcept with gil: - PyEventhdlr = getPyEventhdlr(eventhdlr) - PyEventhdlr.eventcopy() - return SCIP_OKAY - --cdef SCIP_RETCODE PyEventFree (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) with gil: -+cdef SCIP_RETCODE PyEventFree (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) noexcept with gil: - PyEventhdlr = getPyEventhdlr(eventhdlr) - PyEventhdlr.eventfree() - Py_DECREF(PyEventhdlr) - return SCIP_OKAY - --cdef SCIP_RETCODE PyEventInit (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) with gil: -+cdef SCIP_RETCODE PyEventInit (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) noexcept with gil: - PyEventhdlr = getPyEventhdlr(eventhdlr) - PyEventhdlr.eventinit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyEventExit (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) with gil: -+cdef SCIP_RETCODE PyEventExit (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) noexcept with gil: - PyEventhdlr = getPyEventhdlr(eventhdlr) - PyEventhdlr.eventexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyEventInitsol (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) with gil: -+cdef SCIP_RETCODE PyEventInitsol (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) noexcept with gil: - PyEventhdlr = getPyEventhdlr(eventhdlr) - PyEventhdlr.eventinitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyEventExitsol (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) with gil: -+cdef SCIP_RETCODE PyEventExitsol (SCIP* scip, SCIP_EVENTHDLR* eventhdlr) noexcept with gil: - PyEventhdlr = getPyEventhdlr(eventhdlr) - PyEventhdlr.eventexitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyEventDelete (SCIP* scip, SCIP_EVENTHDLR* eventhdlr, SCIP_EVENTDATA** eventdata) with gil: -+cdef SCIP_RETCODE PyEventDelete (SCIP* scip, SCIP_EVENTHDLR* eventhdlr, SCIP_EVENTDATA** eventdata) noexcept with gil: - PyEventhdlr = getPyEventhdlr(eventhdlr) - PyEventhdlr.eventdelete() - return SCIP_OKAY - --cdef SCIP_RETCODE PyEventExec (SCIP* scip, SCIP_EVENTHDLR* eventhdlr, SCIP_EVENT* event, SCIP_EVENTDATA* eventdata) with gil: -+cdef SCIP_RETCODE PyEventExec (SCIP* scip, SCIP_EVENTHDLR* eventhdlr, SCIP_EVENT* event, SCIP_EVENTDATA* eventdata) noexcept with gil: - PyEventhdlr = getPyEventhdlr(eventhdlr) - PyEvent = Event() - PyEvent.event = event -diff --git a/src/pyscipopt/heuristic.pxi b/src/pyscipopt/heuristic.pxi -index 2980a1aee..930315630 100644 ---- a/src/pyscipopt/heuristic.pxi -+++ b/src/pyscipopt/heuristic.pxi -@@ -31,10 +31,10 @@ cdef class Heur: - - - --cdef SCIP_RETCODE PyHeurCopy (SCIP* scip, SCIP_HEUR* heur) with gil: -+cdef SCIP_RETCODE PyHeurCopy (SCIP* scip, SCIP_HEUR* heur) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyHeurFree (SCIP* scip, SCIP_HEUR* heur) with gil: -+cdef SCIP_RETCODE PyHeurFree (SCIP* scip, SCIP_HEUR* heur) noexcept with gil: - cdef SCIP_HEURDATA* heurdata - heurdata = SCIPheurGetData(heur) - PyHeur = heurdata -@@ -42,35 +42,35 @@ cdef SCIP_RETCODE PyHeurFree (SCIP* scip, SCIP_HEUR* heur) with gil: - Py_DECREF(PyHeur) - return SCIP_OKAY - --cdef SCIP_RETCODE PyHeurInit (SCIP* scip, SCIP_HEUR* heur) with gil: -+cdef SCIP_RETCODE PyHeurInit (SCIP* scip, SCIP_HEUR* heur) noexcept with gil: - cdef SCIP_HEURDATA* heurdata - heurdata = SCIPheurGetData(heur) - PyHeur = heurdata - PyHeur.heurinit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyHeurExit (SCIP* scip, SCIP_HEUR* heur) with gil: -+cdef SCIP_RETCODE PyHeurExit (SCIP* scip, SCIP_HEUR* heur) noexcept with gil: - cdef SCIP_HEURDATA* heurdata - heurdata = SCIPheurGetData(heur) - PyHeur = heurdata - PyHeur.heurexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyHeurInitsol (SCIP* scip, SCIP_HEUR* heur) with gil: -+cdef SCIP_RETCODE PyHeurInitsol (SCIP* scip, SCIP_HEUR* heur) noexcept with gil: - cdef SCIP_HEURDATA* heurdata - heurdata = SCIPheurGetData(heur) - PyHeur = heurdata - PyHeur.heurinitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyHeurExitsol (SCIP* scip, SCIP_HEUR* heur) with gil: -+cdef SCIP_RETCODE PyHeurExitsol (SCIP* scip, SCIP_HEUR* heur) noexcept with gil: - cdef SCIP_HEURDATA* heurdata - heurdata = SCIPheurGetData(heur) - PyHeur = heurdata - PyHeur.heurexitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyHeurExec (SCIP* scip, SCIP_HEUR* heur, SCIP_HEURTIMING heurtiming, SCIP_Bool nodeinfeasible, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyHeurExec (SCIP* scip, SCIP_HEUR* heur, SCIP_HEURTIMING heurtiming, SCIP_Bool nodeinfeasible, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_HEURDATA* heurdata - heurdata = SCIPheurGetData(heur) - PyHeur = heurdata -diff --git a/src/pyscipopt/nodesel.pxi b/src/pyscipopt/nodesel.pxi -index 4d795bc9d..a3e832f15 100644 ---- a/src/pyscipopt/nodesel.pxi -+++ b/src/pyscipopt/nodesel.pxi -@@ -42,10 +42,10 @@ cdef class Nodesel: - return 0 - - --cdef SCIP_RETCODE PyNodeselCopy (SCIP* scip, SCIP_NODESEL* nodesel) with gil: -+cdef SCIP_RETCODE PyNodeselCopy (SCIP* scip, SCIP_NODESEL* nodesel) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyNodeselFree (SCIP* scip, SCIP_NODESEL* nodesel) with gil: -+cdef SCIP_RETCODE PyNodeselFree (SCIP* scip, SCIP_NODESEL* nodesel) noexcept with gil: - cdef SCIP_NODESELDATA* nodeseldata - nodeseldata = SCIPnodeselGetData(nodesel) - PyNodesel = nodeseldata -@@ -53,7 +53,7 @@ cdef SCIP_RETCODE PyNodeselFree (SCIP* scip, SCIP_NODESEL* nodesel) with gil: - Py_DECREF(PyNodesel) - return SCIP_OKAY - --cdef SCIP_RETCODE PyNodeselInit (SCIP* scip, SCIP_NODESEL* nodesel) with gil: -+cdef SCIP_RETCODE PyNodeselInit (SCIP* scip, SCIP_NODESEL* nodesel) noexcept with gil: - cdef SCIP_NODESELDATA* nodeseldata - nodeseldata = SCIPnodeselGetData(nodesel) - PyNodesel = nodeseldata -@@ -61,28 +61,28 @@ cdef SCIP_RETCODE PyNodeselInit (SCIP* scip, SCIP_NODESEL* nodesel) with gil: - return SCIP_OKAY - - --cdef SCIP_RETCODE PyNodeselExit (SCIP* scip, SCIP_NODESEL* nodesel) with gil: -+cdef SCIP_RETCODE PyNodeselExit (SCIP* scip, SCIP_NODESEL* nodesel) noexcept with gil: - cdef SCIP_NODESELDATA* nodeseldata - nodeseldata = SCIPnodeselGetData(nodesel) - PyNodesel = nodeseldata - PyNodesel.nodeexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyNodeselInitsol (SCIP* scip, SCIP_NODESEL* nodesel) with gil: -+cdef SCIP_RETCODE PyNodeselInitsol (SCIP* scip, SCIP_NODESEL* nodesel) noexcept with gil: - cdef SCIP_NODESELDATA* nodeseldata - nodeseldata = SCIPnodeselGetData(nodesel) - PyNodesel = nodeseldata - PyNodesel.nodeinitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyNodeselExitsol (SCIP* scip, SCIP_NODESEL* nodesel) with gil: -+cdef SCIP_RETCODE PyNodeselExitsol (SCIP* scip, SCIP_NODESEL* nodesel) noexcept with gil: - cdef SCIP_NODESELDATA* nodeseldata - nodeseldata = SCIPnodeselGetData(nodesel) - PyNodesel = nodeseldata - PyNodesel.nodeexitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyNodeselSelect (SCIP* scip, SCIP_NODESEL* nodesel, SCIP_NODE** selnode) with gil: -+cdef SCIP_RETCODE PyNodeselSelect (SCIP* scip, SCIP_NODESEL* nodesel, SCIP_NODE** selnode) noexcept with gil: - cdef SCIP_NODESELDATA* nodeseldata - nodeseldata = SCIPnodeselGetData(nodesel) - PyNodesel = nodeseldata -@@ -91,7 +91,7 @@ cdef SCIP_RETCODE PyNodeselSelect (SCIP* scip, SCIP_NODESEL* nodesel, SCIP_NODE* - selnode[0] = selected_node.scip_node - return SCIP_OKAY - --cdef int PyNodeselComp (SCIP* scip, SCIP_NODESEL* nodesel, SCIP_NODE* node1, SCIP_NODE* node2) with gil: -+cdef int PyNodeselComp (SCIP* scip, SCIP_NODESEL* nodesel, SCIP_NODE* node1, SCIP_NODE* node2) noexcept with gil: - cdef SCIP_NODESELDATA* nodeseldata - nodeseldata = SCIPnodeselGetData(nodesel) - PyNodesel = nodeseldata -diff --git a/src/pyscipopt/presol.pxi b/src/pyscipopt/presol.pxi -index d2b9115a5..13bd9a623 100644 ---- a/src/pyscipopt/presol.pxi -+++ b/src/pyscipopt/presol.pxi -@@ -30,10 +30,10 @@ cdef class Presol: - - - --cdef SCIP_RETCODE PyPresolCopy (SCIP* scip, SCIP_PRESOL* presol) with gil: -+cdef SCIP_RETCODE PyPresolCopy (SCIP* scip, SCIP_PRESOL* presol) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyPresolFree (SCIP* scip, SCIP_PRESOL* presol) with gil: -+cdef SCIP_RETCODE PyPresolFree (SCIP* scip, SCIP_PRESOL* presol) noexcept with gil: - cdef SCIP_PRESOLDATA* presoldata - presoldata = SCIPpresolGetData(presol) - PyPresol = presoldata -@@ -41,14 +41,14 @@ cdef SCIP_RETCODE PyPresolFree (SCIP* scip, SCIP_PRESOL* presol) with gil: - Py_DECREF(PyPresol) - return SCIP_OKAY - --cdef SCIP_RETCODE PyPresolInit (SCIP* scip, SCIP_PRESOL* presol) with gil: -+cdef SCIP_RETCODE PyPresolInit (SCIP* scip, SCIP_PRESOL* presol) noexcept with gil: - cdef SCIP_PRESOLDATA* presoldata - presoldata = SCIPpresolGetData(presol) - PyPresol = presoldata - PyPresol.presolinit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPresolExit (SCIP* scip, SCIP_PRESOL* presol) with gil: -+cdef SCIP_RETCODE PyPresolExit (SCIP* scip, SCIP_PRESOL* presol) noexcept with gil: - cdef SCIP_PRESOLDATA* presoldata - presoldata = SCIPpresolGetData(presol) - PyPresol = presoldata -@@ -56,14 +56,14 @@ cdef SCIP_RETCODE PyPresolExit (SCIP* scip, SCIP_PRESOL* presol) with gil: - return SCIP_OKAY - - --cdef SCIP_RETCODE PyPresolInitpre (SCIP* scip, SCIP_PRESOL* presol) with gil: -+cdef SCIP_RETCODE PyPresolInitpre (SCIP* scip, SCIP_PRESOL* presol) noexcept with gil: - cdef SCIP_PRESOLDATA* presoldata - presoldata = SCIPpresolGetData(presol) - PyPresol = presoldata - PyPresol.presolinitpre() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPresolExitpre (SCIP* scip, SCIP_PRESOL* presol) with gil: -+cdef SCIP_RETCODE PyPresolExitpre (SCIP* scip, SCIP_PRESOL* presol) noexcept with gil: - cdef SCIP_PRESOLDATA* presoldata - presoldata = SCIPpresolGetData(presol) - PyPresol = presoldata -@@ -74,7 +74,7 @@ cdef SCIP_RETCODE PyPresolExec (SCIP* scip, SCIP_PRESOL* presol, int nrounds, SC - int nnewfixedvars, int nnewaggrvars, int nnewchgvartypes, int nnewchgbds, int nnewholes, - int nnewdelconss, int nnewaddconss, int nnewupgdconss, int nnewchgcoefs, int nnewchgsides, - int* nfixedvars, int* naggrvars, int* nchgvartypes, int* nchgbds, int* naddholes, -- int* ndelconss, int* naddconss, int* nupgdconss, int* nchgcoefs, int* nchgsides, SCIP_RESULT* result) with gil: -+ int* ndelconss, int* naddconss, int* nupgdconss, int* nchgcoefs, int* nchgsides, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_PRESOLDATA* presoldata - presoldata = SCIPpresolGetData(presol) - PyPresol = presoldata -diff --git a/src/pyscipopt/pricer.pxi b/src/pyscipopt/pricer.pxi -index 1368572de..a218b254c 100644 ---- a/src/pyscipopt/pricer.pxi -+++ b/src/pyscipopt/pricer.pxi -@@ -33,10 +33,10 @@ cdef class Pricer: - - - --cdef SCIP_RETCODE PyPricerCopy (SCIP* scip, SCIP_PRICER* pricer, SCIP_Bool* valid) with gil: -+cdef SCIP_RETCODE PyPricerCopy (SCIP* scip, SCIP_PRICER* pricer, SCIP_Bool* valid) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyPricerFree (SCIP* scip, SCIP_PRICER* pricer) with gil: -+cdef SCIP_RETCODE PyPricerFree (SCIP* scip, SCIP_PRICER* pricer) noexcept with gil: - cdef SCIP_PRICERDATA* pricerdata - pricerdata = SCIPpricerGetData(pricer) - PyPricer = pricerdata -@@ -44,35 +44,35 @@ cdef SCIP_RETCODE PyPricerFree (SCIP* scip, SCIP_PRICER* pricer) with gil: - Py_DECREF(PyPricer) - return SCIP_OKAY - --cdef SCIP_RETCODE PyPricerInit (SCIP* scip, SCIP_PRICER* pricer) with gil: -+cdef SCIP_RETCODE PyPricerInit (SCIP* scip, SCIP_PRICER* pricer) noexcept with gil: - cdef SCIP_PRICERDATA* pricerdata - pricerdata = SCIPpricerGetData(pricer) - PyPricer = pricerdata - PyPricer.pricerinit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPricerExit (SCIP* scip, SCIP_PRICER* pricer) with gil: -+cdef SCIP_RETCODE PyPricerExit (SCIP* scip, SCIP_PRICER* pricer) noexcept with gil: - cdef SCIP_PRICERDATA* pricerdata - pricerdata = SCIPpricerGetData(pricer) - PyPricer = pricerdata - PyPricer.pricerexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPricerInitsol (SCIP* scip, SCIP_PRICER* pricer) with gil: -+cdef SCIP_RETCODE PyPricerInitsol (SCIP* scip, SCIP_PRICER* pricer) noexcept with gil: - cdef SCIP_PRICERDATA* pricerdata - pricerdata = SCIPpricerGetData(pricer) - PyPricer = pricerdata - PyPricer.pricerinitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPricerExitsol (SCIP* scip, SCIP_PRICER* pricer) with gil: -+cdef SCIP_RETCODE PyPricerExitsol (SCIP* scip, SCIP_PRICER* pricer) noexcept with gil: - cdef SCIP_PRICERDATA* pricerdata - pricerdata = SCIPpricerGetData(pricer) - PyPricer = pricerdata - PyPricer.pricerexitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPricerRedcost (SCIP* scip, SCIP_PRICER* pricer, SCIP_Real* lowerbound, SCIP_Bool* stopearly, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyPricerRedcost (SCIP* scip, SCIP_PRICER* pricer, SCIP_Real* lowerbound, SCIP_Bool* stopearly, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_PRICERDATA* pricerdata - pricerdata = SCIPpricerGetData(pricer) - PyPricer = pricerdata -@@ -82,7 +82,7 @@ cdef SCIP_RETCODE PyPricerRedcost (SCIP* scip, SCIP_PRICER* pricer, SCIP_Real* l - stopearly[0] = result_dict.get("stopearly", stopearly[0]) - return SCIP_OKAY - --cdef SCIP_RETCODE PyPricerFarkas (SCIP* scip, SCIP_PRICER* pricer, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyPricerFarkas (SCIP* scip, SCIP_PRICER* pricer, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_PRICERDATA* pricerdata - pricerdata = SCIPpricerGetData(pricer) - PyPricer = pricerdata -diff --git a/src/pyscipopt/propagator.pxi b/src/pyscipopt/propagator.pxi -index d792577d9..4508efe78 100644 ---- a/src/pyscipopt/propagator.pxi -+++ b/src/pyscipopt/propagator.pxi -@@ -47,10 +47,10 @@ cdef class Prop: - - - --cdef SCIP_RETCODE PyPropCopy (SCIP* scip, SCIP_PROP* prop) with gil: -+cdef SCIP_RETCODE PyPropCopy (SCIP* scip, SCIP_PROP* prop) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyPropFree (SCIP* scip, SCIP_PROP* prop) with gil: -+cdef SCIP_RETCODE PyPropFree (SCIP* scip, SCIP_PROP* prop) noexcept with gil: - cdef SCIP_PROPDATA* propdata - propdata = SCIPpropGetData(prop) - PyProp = propdata -@@ -58,42 +58,42 @@ cdef SCIP_RETCODE PyPropFree (SCIP* scip, SCIP_PROP* prop) with gil: - Py_DECREF(PyProp) - return SCIP_OKAY - --cdef SCIP_RETCODE PyPropInit (SCIP* scip, SCIP_PROP* prop) with gil: -+cdef SCIP_RETCODE PyPropInit (SCIP* scip, SCIP_PROP* prop) noexcept with gil: - cdef SCIP_PROPDATA* propdata - propdata = SCIPpropGetData(prop) - PyProp = propdata - PyProp.propinit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPropExit (SCIP* scip, SCIP_PROP* prop) with gil: -+cdef SCIP_RETCODE PyPropExit (SCIP* scip, SCIP_PROP* prop) noexcept with gil: - cdef SCIP_PROPDATA* propdata - propdata = SCIPpropGetData(prop) - PyProp = propdata - PyProp.propexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPropInitpre (SCIP* scip, SCIP_PROP* prop) with gil: -+cdef SCIP_RETCODE PyPropInitpre (SCIP* scip, SCIP_PROP* prop) noexcept with gil: - cdef SCIP_PROPDATA* propdata - propdata = SCIPpropGetData(prop) - PyProp = propdata - PyProp.propinitpre() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPropExitpre (SCIP* scip, SCIP_PROP* prop) with gil: -+cdef SCIP_RETCODE PyPropExitpre (SCIP* scip, SCIP_PROP* prop) noexcept with gil: - cdef SCIP_PROPDATA* propdata - propdata = SCIPpropGetData(prop) - PyProp = propdata - PyProp.propexitpre() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPropInitsol (SCIP* scip, SCIP_PROP* prop) with gil: -+cdef SCIP_RETCODE PyPropInitsol (SCIP* scip, SCIP_PROP* prop) noexcept with gil: - cdef SCIP_PROPDATA* propdata - propdata = SCIPpropGetData(prop) - PyProp = propdata - PyProp.propinitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyPropExitsol (SCIP* scip, SCIP_PROP* prop, SCIP_Bool restart) with gil: -+cdef SCIP_RETCODE PyPropExitsol (SCIP* scip, SCIP_PROP* prop, SCIP_Bool restart) noexcept with gil: - cdef SCIP_PROPDATA* propdata - propdata = SCIPpropGetData(prop) - PyProp = propdata -@@ -104,7 +104,7 @@ cdef SCIP_RETCODE PyPropPresol (SCIP* scip, SCIP_PROP* prop, int nrounds, SCIP_P - int nnewfixedvars, int nnewaggrvars, int nnewchgvartypes, int nnewchgbds, int nnewholes, - int nnewdelconss, int nnewaddconss, int nnewupgdconss, int nnewchgcoefs, int nnewchgsides, - int* nfixedvars, int* naggrvars, int* nchgvartypes, int* nchgbds, int* naddholes, -- int* ndelconss, int* naddconss, int* nupgdconss, int* nchgcoefs, int* nchgsides, SCIP_RESULT* result) with gil: -+ int* ndelconss, int* naddconss, int* nupgdconss, int* nchgcoefs, int* nchgsides, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_PROPDATA* propdata - propdata = SCIPpropGetData(prop) - PyProp = propdata -@@ -137,7 +137,7 @@ cdef SCIP_RETCODE PyPropPresol (SCIP* scip, SCIP_PROP* prop, int nrounds, SCIP_P - nchgsides[0] = result_dict["nchgsides"] - return SCIP_OKAY - --cdef SCIP_RETCODE PyPropExec (SCIP* scip, SCIP_PROP* prop, SCIP_PROPTIMING proptiming, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyPropExec (SCIP* scip, SCIP_PROP* prop, SCIP_PROPTIMING proptiming, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_PROPDATA* propdata - propdata = SCIPpropGetData(prop) - PyProp = propdata -@@ -147,7 +147,7 @@ cdef SCIP_RETCODE PyPropExec (SCIP* scip, SCIP_PROP* prop, SCIP_PROPTIMING propt - return SCIP_OKAY - - cdef SCIP_RETCODE PyPropResProp (SCIP* scip, SCIP_PROP* prop, SCIP_VAR* infervar, int inferinfo, -- SCIP_BOUNDTYPE boundtype, SCIP_BDCHGIDX* bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT* result) with gil: -+ SCIP_BOUNDTYPE boundtype, SCIP_BDCHGIDX* bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_PROPDATA* propdata - cdef SCIP_VAR* tmp - tmp = infervar -diff --git a/src/pyscipopt/reader.pxi b/src/pyscipopt/reader.pxi -index df0b3a288..2c45585d6 100644 ---- a/src/pyscipopt/reader.pxi -+++ b/src/pyscipopt/reader.pxi -@@ -18,10 +18,10 @@ cdef class Reader: - return {} - - --cdef SCIP_RETCODE PyReaderCopy (SCIP* scip, SCIP_READER* reader) with gil: -+cdef SCIP_RETCODE PyReaderCopy (SCIP* scip, SCIP_READER* reader) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyReaderFree (SCIP* scip, SCIP_READER* reader) with gil: -+cdef SCIP_RETCODE PyReaderFree (SCIP* scip, SCIP_READER* reader) noexcept with gil: - cdef SCIP_READERDATA* readerdata - readerdata = SCIPreaderGetData(reader) - PyReader = readerdata -@@ -29,7 +29,7 @@ cdef SCIP_RETCODE PyReaderFree (SCIP* scip, SCIP_READER* reader) with gil: - Py_DECREF(PyReader) - return SCIP_OKAY - --cdef SCIP_RETCODE PyReaderRead (SCIP* scip, SCIP_READER* reader, const char* filename, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyReaderRead (SCIP* scip, SCIP_READER* reader, const char* filename, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_READERDATA* readerdata - readerdata = SCIPreaderGetData(reader) - PyReader = readerdata -@@ -44,7 +44,7 @@ cdef SCIP_RETCODE PyReaderWrite (SCIP* scip, SCIP_READER* reader, FILE* file, - SCIP_VAR** vars, int nvars, int nbinvars, int nintvars, int nimplvars, int ncontvars, - SCIP_VAR** fixedvars, int nfixedvars, int startnvars, - SCIP_CONS** conss, int nconss, int maxnconss, int startnconss, -- SCIP_Bool genericnames, SCIP_RESULT* result) with gil: -+ SCIP_Bool genericnames, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_READERDATA* readerdata - readerdata = SCIPreaderGetData(reader) - cdef int fd = fileno(file) -diff --git a/src/pyscipopt/relax.pxi b/src/pyscipopt/relax.pxi -index 2b52c2643..81695e8bb 100644 ---- a/src/pyscipopt/relax.pxi -+++ b/src/pyscipopt/relax.pxi -@@ -30,10 +30,10 @@ cdef class Relax: - return{} - - --cdef SCIP_RETCODE PyRelaxCopy (SCIP* scip, SCIP_RELAX* relax) with gil: -+cdef SCIP_RETCODE PyRelaxCopy (SCIP* scip, SCIP_RELAX* relax) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PyRelaxFree (SCIP* scip, SCIP_RELAX* relax) with gil: -+cdef SCIP_RETCODE PyRelaxFree (SCIP* scip, SCIP_RELAX* relax) noexcept with gil: - cdef SCIP_RELAXDATA* relaxdata - relaxdata = SCIPrelaxGetData(relax) - PyRelax = relaxdata -@@ -41,35 +41,35 @@ cdef SCIP_RETCODE PyRelaxFree (SCIP* scip, SCIP_RELAX* relax) with gil: - Py_DECREF(PyRelax) - return SCIP_OKAY - --cdef SCIP_RETCODE PyRelaxInit (SCIP* scip, SCIP_RELAX* relax) with gil: -+cdef SCIP_RETCODE PyRelaxInit (SCIP* scip, SCIP_RELAX* relax) noexcept with gil: - cdef SCIP_RELAXDATA* relaxdata - relaxdata = SCIPrelaxGetData(relax) - PyRelax = relaxdata - PyRelax.relaxinit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyRelaxExit (SCIP* scip, SCIP_RELAX* relax) with gil: -+cdef SCIP_RETCODE PyRelaxExit (SCIP* scip, SCIP_RELAX* relax) noexcept with gil: - cdef SCIP_RELAXDATA* relaxdata - relaxdata = SCIPrelaxGetData(relax) - PyRelax = relaxdata - PyRelax.relaxexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PyRelaxInitsol (SCIP* scip, SCIP_RELAX* relax) with gil: -+cdef SCIP_RETCODE PyRelaxInitsol (SCIP* scip, SCIP_RELAX* relax) noexcept with gil: - cdef SCIP_RELAXDATA* relaxdata - relaxdata = SCIPrelaxGetData(relax) - PyRelax = relaxdata - PyRelax.relaxinitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyRelaxExitsol (SCIP* scip, SCIP_RELAX* relax) with gil: -+cdef SCIP_RETCODE PyRelaxExitsol (SCIP* scip, SCIP_RELAX* relax) noexcept with gil: - cdef SCIP_RELAXDATA* relaxdata - relaxdata = SCIPrelaxGetData(relax) - PyRelax = relaxdata - PyRelax.relaxexitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PyRelaxExec (SCIP* scip, SCIP_RELAX* relax, SCIP_Real* lowerbound, SCIP_RESULT* result) with gil: -+cdef SCIP_RETCODE PyRelaxExec (SCIP* scip, SCIP_RELAX* relax, SCIP_Real* lowerbound, SCIP_RESULT* result) noexcept with gil: - cdef SCIP_RELAXDATA* relaxdata - relaxdata = SCIPrelaxGetData(relax) - PyRelax = relaxdata -diff --git a/src/pyscipopt/scip.pxd b/src/pyscipopt/scip.pxd -index 12815dbc4..f35a42486 100644 ---- a/src/pyscipopt/scip.pxd -+++ b/src/pyscipopt/scip.pxd -@@ -501,7 +501,7 @@ cdef extern from "scip/scip.h": - ctypedef union SCIP_DOMCHG: - pass - -- ctypedef void (*messagecallback) (SCIP_MESSAGEHDLR *messagehdlr, FILE *file, const char *msg) -+ ctypedef void (*messagecallback) (SCIP_MESSAGEHDLR *messagehdlr, FILE *file, const char *msg) noexcept - ctypedef void (*errormessagecallback) (void *data, FILE *file, const char *msg) - ctypedef SCIP_RETCODE (*messagehdlrfree) (SCIP_MESSAGEHDLR *messagehdlr) - -diff --git a/src/pyscipopt/scip.pxi b/src/pyscipopt/scip.pxi -index 0b2332d88..552197785 100644 ---- a/src/pyscipopt/scip.pxi -+++ b/src/pyscipopt/scip.pxi -@@ -975,10 +975,10 @@ cdef class Constraint: - and self.scip_cons == (other).scip_cons) - - --cdef void relayMessage(SCIP_MESSAGEHDLR *messagehdlr, FILE *file, const char *msg): -+cdef void relayMessage(SCIP_MESSAGEHDLR *messagehdlr, FILE *file, const char *msg) noexcept: - sys.stdout.write(msg.decode('UTF-8')) - --cdef void relayErrorMessage(void *messagehdlr, FILE *file, const char *msg): -+cdef void relayErrorMessage(void *messagehdlr, FILE *file, const char *msg) noexcept: - sys.stderr.write(msg.decode('UTF-8')) - - # - remove create(), includeDefaultPlugins(), createProbBasic() methods -diff --git a/src/pyscipopt/sepa.pxi b/src/pyscipopt/sepa.pxi -index 271945db1..94355a7d2 100644 ---- a/src/pyscipopt/sepa.pxi -+++ b/src/pyscipopt/sepa.pxi -@@ -34,10 +34,10 @@ cdef class Sepa: - - - --cdef SCIP_RETCODE PySepaCopy (SCIP* scip, SCIP_SEPA* sepa) with gil: -+cdef SCIP_RETCODE PySepaCopy (SCIP* scip, SCIP_SEPA* sepa) noexcept with gil: - return SCIP_OKAY - --cdef SCIP_RETCODE PySepaFree (SCIP* scip, SCIP_SEPA* sepa) with gil: -+cdef SCIP_RETCODE PySepaFree (SCIP* scip, SCIP_SEPA* sepa) noexcept with gil: - cdef SCIP_SEPADATA* sepadata - sepadata = SCIPsepaGetData(sepa) - PySepa = sepadata -@@ -45,35 +45,35 @@ cdef SCIP_RETCODE PySepaFree (SCIP* scip, SCIP_SEPA* sepa) with gil: - Py_DECREF(PySepa) - return SCIP_OKAY - --cdef SCIP_RETCODE PySepaInit (SCIP* scip, SCIP_SEPA* sepa) with gil: -+cdef SCIP_RETCODE PySepaInit (SCIP* scip, SCIP_SEPA* sepa) noexcept with gil: - cdef SCIP_SEPADATA* sepadata - sepadata = SCIPsepaGetData(sepa) - PySepa = sepadata - PySepa.sepainit() - return SCIP_OKAY - --cdef SCIP_RETCODE PySepaExit (SCIP* scip, SCIP_SEPA* sepa) with gil: -+cdef SCIP_RETCODE PySepaExit (SCIP* scip, SCIP_SEPA* sepa) noexcept with gil: - cdef SCIP_SEPADATA* sepadata - sepadata = SCIPsepaGetData(sepa) - PySepa = sepadata - PySepa.sepaexit() - return SCIP_OKAY - --cdef SCIP_RETCODE PySepaInitsol (SCIP* scip, SCIP_SEPA* sepa) with gil: -+cdef SCIP_RETCODE PySepaInitsol (SCIP* scip, SCIP_SEPA* sepa) noexcept with gil: - cdef SCIP_SEPADATA* sepadata - sepadata = SCIPsepaGetData(sepa) - PySepa = sepadata - PySepa.sepainitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PySepaExitsol (SCIP* scip, SCIP_SEPA* sepa) with gil: -+cdef SCIP_RETCODE PySepaExitsol (SCIP* scip, SCIP_SEPA* sepa) noexcept with gil: - cdef SCIP_SEPADATA* sepadata - sepadata = SCIPsepaGetData(sepa) - PySepa = sepadata - PySepa.sepaexitsol() - return SCIP_OKAY - --cdef SCIP_RETCODE PySepaExeclp (SCIP* scip, SCIP_SEPA* sepa, SCIP_RESULT* result, unsigned int allowlocal, int depth) with gil: -+cdef SCIP_RETCODE PySepaExeclp (SCIP* scip, SCIP_SEPA* sepa, SCIP_RESULT* result, unsigned int allowlocal, int depth) noexcept with gil: - cdef SCIP_SEPADATA* sepadata - sepadata = SCIPsepaGetData(sepa) - PySepa = sepadata -@@ -81,7 +81,7 @@ cdef SCIP_RETCODE PySepaExeclp (SCIP* scip, SCIP_SEPA* sepa, SCIP_RESULT* result - result[0] = result_dict.get("result", result[0]) - return SCIP_OKAY - --cdef SCIP_RETCODE PySepaExecsol (SCIP* scip, SCIP_SEPA* sepa, SCIP_SOL* sol, SCIP_RESULT* result, unsigned int allowlocal, int depth) with gil: -+cdef SCIP_RETCODE PySepaExecsol (SCIP* scip, SCIP_SEPA* sepa, SCIP_SOL* sol, SCIP_RESULT* result, unsigned int allowlocal, int depth) noexcept with gil: - cdef SCIP_SEPADATA* sepadata - sepadata = SCIPsepaGetData(sepa) - solution = Solution.create(scip, sol) diff --git a/build/pkgs/scip/checksums.ini b/build/pkgs/scip/checksums.ini index 97b8c8a7084..9dce3926f9b 100644 --- a/build/pkgs/scip/checksums.ini +++ b/build/pkgs/scip/checksums.ini @@ -1,5 +1,5 @@ -tarball=scip-VERSION.tar.gz -sha1=2637767428e285b6ddda8c462f1cc31d66833d80 -md5=b657369986ecd9b2944206d11ecce2e4 -cksum=967379932 -upstream_url=https://github.com/scipopt/scip/archive/refs/tags/vVERSION.tar.gz +tarball=scip-${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_MICRO}.tar.gz +sha1=bb28aef4bad00a1ff2c7f4ee982961709d15b9f8 +md5=2fdbc40c98d380b12586bcef6819b9d7 +cksum=1262698285 +upstream_url=https://github.com/scipopt/scip/archive/refs/tags/v${VERSION_MAJOR}${VERSION_MINOR}${VERSION_MICRO}.tar.gz diff --git a/build/pkgs/scip/dependencies b/build/pkgs/scip/dependencies index 62836bef5a5..fb21a14a5dd 100644 --- a/build/pkgs/scip/dependencies +++ b/build/pkgs/scip/dependencies @@ -1,4 +1,4 @@ -$(MP_LIBRARY) readline soplex papilo zlib | cmake +$(MP_LIBRARY) readline soplex papilo zlib bliss | cmake ---------- All lines of this file are ignored except the first. diff --git a/build/pkgs/scip/package-version.txt b/build/pkgs/scip/package-version.txt index 227b54a0631..486ff8cd7ba 100644 --- a/build/pkgs/scip/package-version.txt +++ b/build/pkgs/scip/package-version.txt @@ -1 +1 @@ -802 +9.0.0.p0 diff --git a/build/pkgs/scip/patches/no_rpath.patch b/build/pkgs/scip/patches/0001-CMakeLists.txt-Remove-hardcoded-RPATH-settings.patch similarity index 52% rename from build/pkgs/scip/patches/no_rpath.patch rename to build/pkgs/scip/patches/0001-CMakeLists.txt-Remove-hardcoded-RPATH-settings.patch index 28b4220b6b3..ad9449c59cb 100644 --- a/build/pkgs/scip/patches/no_rpath.patch +++ b/build/pkgs/scip/patches/0001-CMakeLists.txt-Remove-hardcoded-RPATH-settings.patch @@ -1,24 +1,27 @@ -commit eaff18abb55c86e90d44583731550c874dc3c3e0 -Author: Matthias Koeppe -Date: Sun Nov 27 14:12:32 2022 -0800 +From 5a05bcd05b75ca8f6b2228b08f57ff71ba46329b Mon Sep 17 00:00:00 2001 +From: Matthias Koeppe +Date: Sun, 3 Mar 2024 18:15:12 -0800 +Subject: [PATCH] CMakeLists.txt: Remove hardcoded RPATH settings - CMakeLists.txt: Remove hardcoded RPATH settings +--- + src/CMakeLists.txt | 9 +-------- + 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 8629ace18b..db2505d74b 100644 +index 5392127c5d..995d194aee 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt -@@ -3,8 +3,7 @@ - # +@@ -5,8 +5,7 @@ include(GNUInstallDirs) + function(setLibProperties targetname outputname) set_target_properties(${targetname} PROPERTIES - OUTPUT_NAME ${outputname} -- MACOSX_RPATH "${CMAKE_INSTALL_PREFIX}/lib") +- MACOSX_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}") + OUTPUT_NAME ${outputname}) endfunction(setLibProperties) set(CMAKE_C_STANDARD 99) -@@ -1092,7 +1091,6 @@ add_dependencies(scip scip_update_githash) +@@ -1118,7 +1117,6 @@ add_dependencies(scip scip_update_githash) set_target_properties(libscip PROPERTIES VERSION ${SCIP_VERSION_MAJOR}.${SCIP_VERSION_MINOR}.${SCIP_VERSION_PATCH}.${SCIP_VERSION_SUB} SOVERSION ${SCIP_VERSION_MAJOR}.${SCIP_VERSION_MINOR} @@ -26,15 +29,18 @@ index 8629ace18b..db2505d74b 100644 CXX_VISIBILITY_PRESET hidden C_VISIBILITY_PRESET hidden VISIBILITY_INLINES_HIDDEN 1) -@@ -1102,11 +1100,6 @@ target_include_directories(scip PUBLIC +@@ -1128,11 +1126,6 @@ target_include_directories(scip BEFORE PUBLIC $ $) -# set the install rpath to the installed destination -set_target_properties(scip PROPERTIES -- INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib" +- INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}" - INSTALL_RPATH_USE_LINK_PATH TRUE) - # install the header files of scip - install(FILES ${lpiheaders} DESTINATION include/lpi) - install(FILES ${dijkstraheaders} DESTINATION include/dijkstra) + install(FILES ${lpiheaders} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/lpi) + install(FILES ${dijkstraheaders} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dijkstra) +-- +2.42.0 + diff --git a/build/pkgs/scip/patches/struct_symmetry_header.patch b/build/pkgs/scip/patches/struct_symmetry_header.patch new file mode 100644 index 00000000000..39d9114a58e --- /dev/null +++ b/build/pkgs/scip/patches/struct_symmetry_header.patch @@ -0,0 +1,14 @@ +From https://github.com/scipopt/SCIP-SDP/issues/12#issuecomment-1969453709 + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 5392127c5d..b66e86dec5 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -991,6 +991,7 @@ set(scipheaders + set(symheaders + symmetry/build_sassy_graph.h + symmetry/compute_symmetry.h ++ symmetry/struct_symmetry.h + symmetry/type_symmetry.h + ) + diff --git a/build/pkgs/scip_sdp/checksums.ini b/build/pkgs/scip_sdp/checksums.ini index b0e38cf751d..94370bcab39 100644 --- a/build/pkgs/scip_sdp/checksums.ini +++ b/build/pkgs/scip_sdp/checksums.ini @@ -1,5 +1,5 @@ tarball=scipsdp-VERSION.tgz -sha1=dcfb090a95f79df8524bcc63d34d7ddc6692924e -md5=4f900c60456b3f08160ca494bec8e9f4 -cksum=2622380399 +sha1=d5482fd414fdcaa38d6d80111bbe8931aeef63ea +md5=0de7752ba6602e3432940eaaf79dfa9d +cksum=162799809 upstream_url=http://www.opt.tu-darmstadt.de/scipsdp/downloads/scipsdp-VERSION.tgz diff --git a/build/pkgs/scip_sdp/package-version.txt b/build/pkgs/scip_sdp/package-version.txt index ee74734aa22..80895903a15 100644 --- a/build/pkgs/scip_sdp/package-version.txt +++ b/build/pkgs/scip_sdp/package-version.txt @@ -1 +1 @@ -4.1.0 +4.3.0 diff --git a/build/pkgs/scip_sdp/patches/findlapack-09e79cf75146ca34c637f919d1f4527a63743300.patch b/build/pkgs/scip_sdp/patches/findlapack-09e79cf75146ca34c637f919d1f4527a63743300.patch deleted file mode 100644 index a2ec71a5e71..00000000000 --- a/build/pkgs/scip_sdp/patches/findlapack-09e79cf75146ca34c637f919d1f4527a63743300.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 09e79cf75146ca34c637f919d1f4527a63743300 Mon Sep 17 00:00:00 2001 -From: Marc Pfetsch -Date: Fri, 9 Dec 2022 18:52:09 +0100 -Subject: [PATCH] use cmake FindLAPACK - ---- - CMakeLists.txt | 14 +++++--------- - src/CMakeLists.txt | 6 +++--- - 2 files changed, 8 insertions(+), 12 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 15e4edc..d4f14f5 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -79,16 +79,12 @@ add_custom_target(scip_update_githash - COMMAND ${CMAKE_COMMAND} -DDST=${PROJECT_SOURCE_DIR}/scipsdpgithash.c - -P ${CMAKE_BINARY_DIR}/scip_update_githash.cmake) - -- - # find lapack and blas --find_library(LAPACK_LIBRARY lapack) --if(LAPACK_LIBRARY) -- message(STATUS "Found lapack library: " ${LAPACK_LIBRARY}) --endif() -- --find_library(BLAS_LIBRARY blas) --if(BLAS_LIBRARY) -- message(STATUS "Found blas library: " ${BLAS_LIBRARY}) -+find_package(LAPACK REQUIRED) -+if(LAPACK_FOUND) -+ message(STATUS "Found lapack library: " ${LAPACK_LIBRARIES}) -+else() -+ message(FATAL_ERROR "Lapack not found") - endif() - - # search the selected symmetry computation program -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 30c66b7..5e5d7d3 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -125,11 +125,11 @@ setLibProperties(libscipsdp "scipsdp") - #put binary in bin directory - set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) - if(SHARED) -- target_link_libraries(libscipsdp PRIVATE ${ZIMPL_PIC_LIBRARIES} ${SDPS_PIC_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARY} ${BLAS_LIBRARY} m) -+ target_link_libraries(libscipsdp PRIVATE ${ZIMPL_PIC_LIBRARIES} ${SDPS_PIC_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} m) - add_executable(scipsdp scipsdp/main.c ${scipsdpsources} ${objscipsdpsources} ${sdpisources} ${sym}) -- target_link_libraries(scipsdp ${ZLIB_LIBRARIES} ${Readline_LIBRARY} ${GMP_LIBRARIES} ${ZIMPL_LIBRARIES} ${SDPS_LIBRARIES} ${SCIP_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARY} ${BLAS_LIBRARY} m) -+ target_link_libraries(scipsdp ${ZLIB_LIBRARIES} ${Readline_LIBRARY} ${GMP_LIBRARIES} ${ZIMPL_LIBRARIES} ${SDPS_LIBRARIES} ${SCIP_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} m) - else() -- target_link_libraries(libscipsdp PRIVATE ${ZIMPL_LIBRARIES} ${SDPS_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARY} ${BLAS_LIBRARY} m) -+ target_link_libraries(libscipsdp PRIVATE ${ZIMPL_LIBRARIES} ${SDPS_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} m) - add_executable(scipsdp scipsdp/main.c ${scipsdpsources} ${objscipsdpsources} ${sdpisources} ${sym}) - target_link_libraries(scipsdp libscipsdp ${SCIP_LIBRARIES}) - endif() diff --git a/build/pkgs/scip_sdp/patches/macos_link.patch b/build/pkgs/scip_sdp/patches/macos_link.patch deleted file mode 100644 index 16f2da86d22..00000000000 --- a/build/pkgs/scip_sdp/patches/macos_link.patch +++ /dev/null @@ -1,19 +0,0 @@ -commit 09f4b596870a2774f7104e318d9812cd5c7ace4a -Author: Matthias Koeppe -Date: Wed Dec 7 14:59:49 2022 -0800 - - src/CMakeLists.txt: Link libscipsdp through with libscip - -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 5e5d7d3..ac3841e 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -125,7 +125,7 @@ setLibProperties(libscipsdp "scipsdp") - #put binary in bin directory - set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) - if(SHARED) -- target_link_libraries(libscipsdp PRIVATE ${ZIMPL_PIC_LIBRARIES} ${SDPS_PIC_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} m) -+ target_link_libraries(libscipsdp PRIVATE ${ZIMPL_PIC_LIBRARIES} ${SDPS_PIC_LIBRARIES} ${SCIP_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} m) - add_executable(scipsdp scipsdp/main.c ${scipsdpsources} ${objscipsdpsources} ${sdpisources} ${sym}) - target_link_libraries(scipsdp ${ZLIB_LIBRARIES} ${Readline_LIBRARY} ${GMP_LIBRARIES} ${ZIMPL_LIBRARIES} ${SDPS_LIBRARIES} ${SCIP_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} m) - else() diff --git a/build/pkgs/scip_sdp/patches/no_rpath.patch b/build/pkgs/scip_sdp/patches/no_rpath.patch deleted file mode 100644 index a4509df7fc7..00000000000 --- a/build/pkgs/scip_sdp/patches/no_rpath.patch +++ /dev/null @@ -1,35 +0,0 @@ -commit b12db4b95295fec9b32131039a6ee4a746c6f832 -Author: Matthias Koeppe -Date: Wed Dec 7 15:03:48 2022 -0800 - - src/CMakeLists.txt: Remote hardcoded RPATH settings - -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index f293115..64ac3d1 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -5,8 +5,7 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}) - # - function(setLibProperties targetname outputname) - set_target_properties(${targetname} PROPERTIES -- OUTPUT_NAME ${outputname} -- MACOSX_RPATH "${CMAKE_INSTALL_PREFIX}/lib") -+ OUTPUT_NAME ${outputname}) - endfunction(setLibProperties) - - set(CMAKE_C_STANDARD 99) -@@ -141,13 +140,7 @@ target_compile_definitions(scipsdp PRIVATE EXTERN=extern) - - set_target_properties(libscipsdp PROPERTIES - VERSION ${SCIPSDP_VERSION_MAJOR}.${SCIPSDP_VERSION_MINOR}.${SCIPSDP_VERSION_PATCH} -- SOVERSION ${SCIPSDP_VERSION_MAJOR}.${SCIPSDP_VERSION_MINOR} -- INSTALL_RPATH_USE_LINK_PATH TRUE) -- --# set the install rpath to the installed destination --set_target_properties(scipsdp PROPERTIES -- INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib" -- INSTALL_RPATH_USE_LINK_PATH TRUE) -+ SOVERSION ${SCIPSDP_VERSION_MAJOR}.${SCIPSDP_VERSION_MINOR}) - - # install the header files of scip - install(FILES ${sdpiheaders} DESTINATION include/sdpi) diff --git a/build/pkgs/scip_sdp/patches/zz_another_blas_change.patch b/build/pkgs/scip_sdp/patches/zz_another_blas_change.patch deleted file mode 100644 index 132f13eab82..00000000000 --- a/build/pkgs/scip_sdp/patches/zz_another_blas_change.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit acb468a1805055e9f34dc1057eea186335bc2e13 -Author: Matthias Koeppe -Date: Fri Dec 9 15:53:05 2022 -0800 - - cmake/Modules/Find{DSDP,MOSEK}.cmake: Do not hardcode blas/lapack lib names here - -commit 8c8f7f82a16af70e044526f2911a94429d65b588 -Author: Matthias Koeppe -Date: Fri Dec 9 19:09:51 2022 -0800 - - CMakeLists.txt, src/CMakeLists.txt: Explicitly link through with blas - - -diff --git a/cmake/Modules/FindDSDP.cmake b/cmake/Modules/FindDSDP.cmake -index 8f43ae8..376fbdb 100644 ---- a/cmake/Modules/FindDSDP.cmake -+++ b/cmake/Modules/FindDSDP.cmake -@@ -8,7 +8,7 @@ find_library(DSDP_LIBRARY - HINTS ${DSDP_DIR} $ENV{DSDP_DIR} - PATH_SUFFIXES lib) - --set(DSDP_LIBRARIES ${DSDP_LIBRARY} -llapack -lblas) -+set(DSDP_LIBRARIES ${DSDP_LIBRARY}) - - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(DSDP DEFAULT_MSG DSDP_INCLUDE_DIRS DSDP_LIBRARIES) -diff --git a/cmake/Modules/FindMOSEK.cmake b/cmake/Modules/FindMOSEK.cmake -index a8ee1d6..e3b7ab7 100644 ---- a/cmake/Modules/FindMOSEK.cmake -+++ b/cmake/Modules/FindMOSEK.cmake -@@ -15,10 +15,10 @@ find_library(IOMP5_LIBRARY - PATH_SUFFIXES bin) - - if(IOMPS_LIBRARY) -- set(MOSEK_LIBRARIES ${MOSEK_LIBRARY} ${IOMP5_LIBRARY} -llapack -lblas -pthread) -+ set(MOSEK_LIBRARIES ${MOSEK_LIBRARY} ${IOMP5_LIBRARY} -pthread) - else() - # if libiomps is not available, we skip it -- set(MOSEK_LIBRARIES ${MOSEK_LIBRARY} -llapack -lblas -pthread) -+ set(MOSEK_LIBRARIES ${MOSEK_LIBRARY} -pthread) - endif() - - include(FindPackageHandleStandardArgs) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index d4f14f5..fd2bdf9 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -86,6 +86,12 @@ if(LAPACK_FOUND) - else() - message(FATAL_ERROR "Lapack not found") - endif() -+find_package(BLAS REQUIRED) -+if(BLAS_FOUND) -+ message(STATUS "Found blas library: " ${BLAS_LIBRARIES}) -+else() -+ message(FATAL_ERROR "Blas not found") -+endif() - - # search the selected symmetry computation program - message(STATUS "Finding symmetry computation program \"${SYM}\"") -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 5e5d7d3..b3e2be9 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -125,11 +125,11 @@ setLibProperties(libscipsdp "scipsdp") - #put binary in bin directory - set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) - if(SHARED) -- target_link_libraries(libscipsdp PRIVATE ${ZIMPL_PIC_LIBRARIES} ${SDPS_PIC_LIBRARIES} ${SCIP_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} m) -+ target_link_libraries(libscipsdp PRIVATE ${ZIMPL_PIC_LIBRARIES} ${SDPS_PIC_LIBRARIES} ${SCIP_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES} m) - add_executable(scipsdp scipsdp/main.c ${scipsdpsources} ${objscipsdpsources} ${sdpisources} ${sym}) -- target_link_libraries(scipsdp ${ZLIB_LIBRARIES} ${Readline_LIBRARY} ${GMP_LIBRARIES} ${ZIMPL_LIBRARIES} ${SDPS_LIBRARIES} ${SCIP_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} m) -+ target_link_libraries(scipsdp ${ZLIB_LIBRARIES} ${Readline_LIBRARY} ${GMP_LIBRARIES} ${ZIMPL_LIBRARIES} ${SDPS_LIBRARIES} ${SCIP_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES} m) - else() -- target_link_libraries(libscipsdp PRIVATE ${ZIMPL_LIBRARIES} ${SDPS_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} m) -+ target_link_libraries(libscipsdp PRIVATE ${ZIMPL_LIBRARIES} ${SDPS_LIBRARIES} ${SYM_LIBRARIES} ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES} m) - add_executable(scipsdp scipsdp/main.c ${scipsdpsources} ${objscipsdpsources} ${sdpisources} ${sym}) - target_link_libraries(scipsdp libscipsdp ${SCIP_LIBRARIES}) - endif() diff --git a/build/pkgs/scip_sdp/spkg-check.in b/build/pkgs/scip_sdp/spkg-check.in index 8df53fc6a36..8ef3bb74f54 100644 --- a/build/pkgs/scip_sdp/spkg-check.in +++ b/build/pkgs/scip_sdp/spkg-check.in @@ -1,3 +1,6 @@ cd src cd build $MAKE test +if [ $? != 0 ]; then + ctest --rerun-failed --output-on-failure +fi diff --git a/build/pkgs/soplex/checksums.ini b/build/pkgs/soplex/checksums.ini index 5689a553333..866f76b3ba9 100644 --- a/build/pkgs/soplex/checksums.ini +++ b/build/pkgs/soplex/checksums.ini @@ -1,5 +1,5 @@ tarball=soplex-VERSION.tar.gz -sha1=6777fa6e7fd02ea6805901dbf60d873b4c312b62 -md5=2865c3a95ee903307d4bd32b0c9594e7 -cksum=278250056 -upstream_url=https://github.com/scipopt/soplex/archive/refs/tags/release-VERSION.tar.gz +sha1=5d0e7fa41b45aa0877134a5b8e261d9608505636 +md5=28be7e9aa5579ccd62cbe492d874ca2a +cksum=232471152 +upstream_url=https://github.com/scipopt/soplex/archive/refs/tags/release-${VERSION_MAJOR}${VERSION_MINOR}${VERSION_MICRO}.tar.gz diff --git a/build/pkgs/soplex/package-version.txt b/build/pkgs/soplex/package-version.txt index 85c3d27e59d..66ce77b7ead 100644 --- a/build/pkgs/soplex/package-version.txt +++ b/build/pkgs/soplex/package-version.txt @@ -1 +1 @@ -602 +7.0.0 diff --git a/build/pkgs/soplex/patches/no_rpath.patch b/build/pkgs/soplex/patches/0001-CMakeLists.txt-src-CMakeLists.txt-Remove-hardcoded-R.patch similarity index 57% rename from build/pkgs/soplex/patches/no_rpath.patch rename to build/pkgs/soplex/patches/0001-CMakeLists.txt-src-CMakeLists.txt-Remove-hardcoded-R.patch index 7cad9b059f7..b875781ebc1 100644 --- a/build/pkgs/soplex/patches/no_rpath.patch +++ b/build/pkgs/soplex/patches/0001-CMakeLists.txt-src-CMakeLists.txt-Remove-hardcoded-R.patch @@ -1,14 +1,19 @@ -commit 0c2527842fe4eaed8d9e5107d6a6621b3d6a716f -Author: Matthias Koeppe -Date: Sat Nov 26 17:08:40 2022 -0800 +From d96dd5fbfb790ab961243ef2cb5f1d0137e1f8a5 Mon Sep 17 00:00:00 2001 +From: Matthias Koeppe +Date: Sun, 3 Mar 2024 18:09:53 -0800 +Subject: [PATCH] CMakeLists.txt, src/CMakeLists.txt: Remove hardcoded RPATH + settings - CMakeLists.txt, src/CMakeLists.txt: Remove hardcoded RPATH settings +--- + CMakeLists.txt | 3 --- + src/CMakeLists.txt | 6 +----- + 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 4f8635fc..6f7a6e1b 100644 +index 25317fc0..310d29a0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -64,9 +64,6 @@ if(NOT CMAKE_BUILD_TYPE) +@@ -65,9 +65,6 @@ if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif() @@ -19,7 +24,7 @@ index 4f8635fc..6f7a6e1b 100644 set(CMAKE_CXX_STANDARD 14) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 27d52f14..fd3705ed 100644 +index d259115d..ffdf0435 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -3,8 +3,7 @@ @@ -27,18 +32,21 @@ index 27d52f14..fd3705ed 100644 function(setLibProperties targetname outputname) set_target_properties(${targetname} PROPERTIES - OUTPUT_NAME ${outputname} -- MACOSX_RPATH "${CMAKE_INSTALL_PREFIX}/lib") +- MACOSX_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}") + OUTPUT_NAME ${outputname}) endfunction(setLibProperties) - include_directories(BEFORE ${CMAKE_CURRENT_SOURCE_DIR}) -@@ -200,9 +199,6 @@ endif() + include(GNUInstallDirs) +@@ -208,9 +207,6 @@ endif() add_executable(example EXCLUDE_FROM_ALL example.cpp) target_link_libraries(example libsoplex) -# set the install rpath to the installed destination --set_target_properties(soplex PROPERTIES INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") +-set_target_properties(soplex PROPERTIES INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}") - # install the header files of soplex - install(FILES ${headers} ${PROJECT_BINARY_DIR}/soplex/config.h DESTINATION include/soplex) - install(FILES soplex.h soplex.hpp soplex_interface.h DESTINATION include) + install(FILES ${headers} ${PROJECT_BINARY_DIR}/soplex/config.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/soplex) + install(FILES soplex.h soplex.hpp soplex_interface.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) +-- +2.42.0 + diff --git a/src/sage/numerical/backends/scip_backend.pyx b/src/sage/numerical/backends/scip_backend.pyx index c1e226fb971..c081323cda7 100644 --- a/src/sage/numerical/backends/scip_backend.pyx +++ b/src/sage/numerical/backends/scip_backend.pyx @@ -1275,7 +1275,7 @@ cdef class SCIPBackend(GenericBackend): EXAMPLES: sage: from sage.numerical.backends.generic_backend import get_solver - sage: lp = get_solver(solver="SCIP") + sage: p = get_solver(solver="SCIP") sage: p.solver_parameter("limits/time", 1) sage: p.solver_parameter("limits/time") 1.0