From d3b210dfb436d22834e1cff7f9190b44a7f26562 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Thu, 5 Jan 2023 18:41:32 +0100 Subject: [PATCH 01/18] Update ci.yml --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6f889f74..1fa9ce1d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,7 +12,7 @@ jobs: fail-fast: false matrix: version: ['1.6', '1'] - os: [ubuntu-latest, macOS-latest] + os: [ubuntu-latest, macOS-latest, windows-latest] arch: [x64] steps: - uses: actions/checkout@v2 From b078e759b445e672b783d6cf2fe9a91963695d55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Thu, 5 Jan 2023 18:43:20 +0100 Subject: [PATCH 02/18] adapt build --- deps/build.jl | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/deps/build.jl b/deps/build.jl index a4f4c0f0..189dc1fa 100644 --- a/deps/build.jl +++ b/deps/build.jl @@ -1,12 +1,9 @@ using Libdl -if VERSION >= v"1.3" && !haskey(ENV, "SCIPOPTDIR") && !Sys.iswindows() +if VERSION >= v"1.3" && !haskey(ENV, "SCIPOPTDIR") # Skip build in favor of SCIP_jll exit() end -if Sys.iswindows() - @warn("SCIP_jll still doesn't work with windows, segfaults are likely!") -end depsfile = joinpath(dirname(@__FILE__), "deps.jl") if isfile(depsfile) From 0614bd0f9926989c1d6947e1f00d452a2f0fb744 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Thu, 14 Sep 2023 16:06:23 +0200 Subject: [PATCH 03/18] available wrapper --- test/runtests.jl | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/test/runtests.jl b/test/runtests.jl index 7dd09000..7792133c 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -3,17 +3,14 @@ using SCIP using SCIP_jll using SCIP_PaPILO_jll -@static if VERSION >= v"1.7" - import LinearAlgebra, OpenBLAS32_jll - LinearAlgebra.BLAS.lbt_forward(OpenBLAS32_jll.libopenblas_path) -end - @show(@eval(SCIP, libscip) == SCIP_jll.libscip) @show( SCIP_PaPILO_jll.is_available() && @eval(SCIP, libscip) == SCIP_PaPILO_jll.libscip ) +@show SCIP_PaPILO_jll.best_wrapper @show SCIP.SCIP_versionnumber() +@show SCIP_jll.best_wrapper @testset "MathOptInterface nonlinear expressions" begin include("MOI_nonlinear_exprs.jl") From cb4b3c5df59fb631b6da977ceeb5c3b543bd0b03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Fri, 6 Oct 2023 11:06:58 +0200 Subject: [PATCH 04/18] windows no papilo --- src/init.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/init.jl b/src/init.jl index 9836f166..c1de0807 100644 --- a/src/init.jl +++ b/src/init.jl @@ -7,7 +7,7 @@ if isfile(depsjl_path) else # Artifact from BinaryBuilder package import SCIP_PaPILO_jll - if SCIP_PaPILO_jll.is_available() + if SCIP_PaPILO_jll.is_available() && !Sys.iswindows() using SCIP_PaPILO_jll: libscip else using SCIP_jll: libscip From cfc27f3bd058c9abc90c4627cfea42778ad5ad3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Thu, 14 Dec 2023 11:48:56 +0100 Subject: [PATCH 05/18] fake commit --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index 161e1145..d6903a60 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,7 @@ [![codecov](https://codecov.io/gh/scipopt/SCIP.jl/branch/master/graph/badge.svg)](https://codecov.io/gh/scipopt/SCIP.jl) [![Genie Downloads](https://shields.io/endpoint?url=https://pkgs.genieframework.com/api/v1/badge/SCIP)](https://pkgs.genieframework.com?packages=SCIP) -[SCIP.jl](https://github.com/scipopt/SCIP.jl) is a Julia interface to the -[SCIP](https://scipopt.org) solver. +[SCIP.jl](https://github.com/scipopt/SCIP.jl) is a Julia interface to the [SCIP](https://scipopt.org) solver. ## Affiliation From c03cb0277eb52f5f9ec5259223ace6097ed4f777 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Tue, 19 Dec 2023 18:23:31 +0100 Subject: [PATCH 06/18] attempt no ALNS --- src/MOI_wrapper.jl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/MOI_wrapper.jl b/src/MOI_wrapper.jl index 744c3d1f..917a1192 100644 --- a/src/MOI_wrapper.jl +++ b/src/MOI_wrapper.jl @@ -85,6 +85,7 @@ mutable struct Optimizer <: MOI.AbstractOptimizer name = replace(String(key), "_" => "/") MOI.set(o, MOI.RawOptimizerAttribute(name), value) end + set_parameter(o.inner, "heuristics/alns/freq", 0) return o end end @@ -281,6 +282,7 @@ function MOI.empty!(o::Optimizer) for pair in o.params set_parameter(o.inner, pair.first, pair.second) end + set_parameter(o.inner, "heuristics/alns/freq", 0) o.objective_sense = nothing o.objective_function_set = false o.conflict_status = MOI.COMPUTE_CONFLICT_NOT_CALLED From d50c79185105fbc8ef099a8c9da5491f2a6d5752 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Wed, 3 Jan 2024 18:43:45 +0100 Subject: [PATCH 07/18] up --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d6903a60..bb8ab1d4 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,7 @@ [![codecov](https://codecov.io/gh/scipopt/SCIP.jl/branch/master/graph/badge.svg)](https://codecov.io/gh/scipopt/SCIP.jl) [![Genie Downloads](https://shields.io/endpoint?url=https://pkgs.genieframework.com/api/v1/badge/SCIP)](https://pkgs.genieframework.com?packages=SCIP) + [SCIP.jl](https://github.com/scipopt/SCIP.jl) is a Julia interface to the [SCIP](https://scipopt.org) solver. ## Affiliation From 407467ccd2ceb1912a18273ce239698fdc1acc74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Fri, 1 Mar 2024 10:46:32 +0100 Subject: [PATCH 08/18] SCIP version up --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index cf643cd5..a58528a3 100644 --- a/Project.toml +++ b/Project.toml @@ -14,7 +14,7 @@ SCIP_jll = "e5ac4fe4-a920-5659-9bf8-f9f73e9e79ce" MathOptInterface = "1.7" OpenBLAS32_jll = "0.3" SCIP_PaPILO_jll = "800" -SCIP_jll = "800" +SCIP_jll = "900" julia = "1.6" [extras] From 241f3c5c653992c52c644df18ce1c6db4629fd83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Fri, 1 Mar 2024 10:47:53 +0100 Subject: [PATCH 09/18] reduce tests --- .github/workflows/ci.yml | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1fa9ce1d..d1ec9dec 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,9 +11,19 @@ jobs: strategy: fail-fast: false matrix: - version: ['1.6', '1'] - os: [ubuntu-latest, macOS-latest, windows-latest] - arch: [x64] + include: + - version: '1' # The latest point-release (Linux) + os: ubuntu-latest + arch: x64 + - version: '1' # The latest point-release (Windows) + os: windows-latest + arch: x64 + - version: '1.6' # 1.6 LTS (64-bit Linux) + os: ubuntu-latest + arch: x64 + - version: 'nightly' + os: ubuntu-latest + arch: x64 steps: - uses: actions/checkout@v2 - uses: julia-actions/setup-julia@v1 From 09da8a16e77ecf8d08c8658e510a6ac3d90cdd0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Fri, 1 Mar 2024 10:53:18 +0100 Subject: [PATCH 10/18] relax version constraint --- src/init.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/init.jl b/src/init.jl index 76fec61b..9d7879ad 100644 --- a/src/init.jl +++ b/src/init.jl @@ -31,7 +31,7 @@ function __init__() patch = SCIPtechVersion() current = VersionNumber("$major.$minor.$patch") required = VersionNumber("8") - upperbound = VersionNumber("9") + upperbound = VersionNumber("10") if current < required || current >= upperbound @error( "SCIP is installed at version $current, " * From e455817d798a26635bc8fd110e66a42c09c07706 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Fri, 1 Mar 2024 11:20:32 +0100 Subject: [PATCH 11/18] relax version constraint --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index a58528a3..9bde8ab2 100644 --- a/Project.toml +++ b/Project.toml @@ -14,7 +14,7 @@ SCIP_jll = "e5ac4fe4-a920-5659-9bf8-f9f73e9e79ce" MathOptInterface = "1.7" OpenBLAS32_jll = "0.3" SCIP_PaPILO_jll = "800" -SCIP_jll = "900" +SCIP_jll = "800,900" julia = "1.6" [extras] From 7e8521e42c8c1cd90bdb15ecfaba2a6268a04b97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Fri, 1 Mar 2024 14:23:26 +0100 Subject: [PATCH 12/18] if windows remove nonlinear --- test/runtests.jl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test/runtests.jl b/test/runtests.jl index b03a4a41..ae195a6e 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -18,7 +18,9 @@ using SCIP_PaPILO_jll @show SCIP_jll.best_wrapper @testset "MathOptInterface nonlinear expressions" begin - include("MOI_nonlinear_exprs.jl") + if !Sys.iswindows() + include("MOI_nonlinear_exprs.jl") + end end @testset "direct library calls" begin From 8296779962ad1a74ec606b37aad578489766d67c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Fri, 1 Mar 2024 14:35:39 +0100 Subject: [PATCH 13/18] Revert "relax version constraint" This reverts commit e455817d798a26635bc8fd110e66a42c09c07706. --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index 9bde8ab2..a58528a3 100644 --- a/Project.toml +++ b/Project.toml @@ -14,7 +14,7 @@ SCIP_jll = "e5ac4fe4-a920-5659-9bf8-f9f73e9e79ce" MathOptInterface = "1.7" OpenBLAS32_jll = "0.3" SCIP_PaPILO_jll = "800" -SCIP_jll = "800,900" +SCIP_jll = "900" julia = "1.6" [extras] From 18a179a50930bd64b6745f2a2c2f5a176a31d90f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Fri, 1 Mar 2024 16:48:58 +0100 Subject: [PATCH 14/18] test windows hack --- Artifacts.toml | 4 ++++ src/init.jl | 12 ++++++++---- 2 files changed, 12 insertions(+), 4 deletions(-) create mode 100644 Artifacts.toml diff --git a/Artifacts.toml b/Artifacts.toml new file mode 100644 index 00000000..6e3e38be --- /dev/null +++ b/Artifacts.toml @@ -0,0 +1,4 @@ +["libscip-windows.zip"] +git-tree-sha1 = "08709fd089e77f09335ebe65886cded2a3487f3a" +sha256 = "f5efbc0243a4982cfbb0d52488f58b414f78d2d1251601728d2d99f7adee2f13" +url = "https://cloud.zib.de/s/Wd3go7gpDNpqHrY/download/libscip-windows.zip" diff --git a/src/init.jl b/src/init.jl index 9d7879ad..142ddd09 100644 --- a/src/init.jl +++ b/src/init.jl @@ -11,11 +11,15 @@ if isfile(depsjl_path) include(depsjl_path) else # Artifact from BinaryBuilder package - import SCIP_PaPILO_jll - if SCIP_PaPILO_jll.is_available() && !Sys.iswindows() - using SCIP_PaPILO_jll: libscip + if Sys.iswindows() + @eval const libscip = joinpath(artifact"libscip-windows.zip", "scip_install/bin/libscip.dll") else - using SCIP_jll: libscip + import SCIP_PaPILO_jll + if SCIP_PaPILO_jll.is_available() && !Sys.iswindows() + using SCIP_PaPILO_jll: libscip + else + using SCIP_jll: libscip + end end end From dd3c431cc4a4f5a2f558be9112b6b0cac7cfd0ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Fri, 1 Mar 2024 17:11:20 +0100 Subject: [PATCH 15/18] force use artifact --- src/init.jl | 1 + 1 file changed, 1 insertion(+) diff --git a/src/init.jl b/src/init.jl index 142ddd09..63cd4d69 100644 --- a/src/init.jl +++ b/src/init.jl @@ -12,6 +12,7 @@ if isfile(depsjl_path) else # Artifact from BinaryBuilder package if Sys.iswindows() + @eval using Artifacts @eval const libscip = joinpath(artifact"libscip-windows.zip", "scip_install/bin/libscip.dll") else import SCIP_PaPILO_jll From d65ce266eccf89a4fb2eecde241b8110787b6e88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Fri, 1 Mar 2024 17:27:29 +0100 Subject: [PATCH 16/18] artifact as dep --- Project.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/Project.toml b/Project.toml index a58528a3..5c8cac3b 100644 --- a/Project.toml +++ b/Project.toml @@ -3,6 +3,7 @@ uuid = "82193955-e24f-5292-bf16-6f2c5261a85f" version = "0.11.14" [deps] +Artifacts = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" Libdl = "8f399da3-3557-5675-b5ff-fb832c97cbdb" LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" MathOptInterface = "b8f27783-ece8-5eb3-8dc8-9495eed66fee" From 08034d4b62a051b018003cb8be8e69abc46d7857 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Thu, 4 Apr 2024 09:19:18 +0200 Subject: [PATCH 17/18] bump version --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index 5c8cac3b..53ed4589 100644 --- a/Project.toml +++ b/Project.toml @@ -14,7 +14,7 @@ SCIP_jll = "e5ac4fe4-a920-5659-9bf8-f9f73e9e79ce" [compat] MathOptInterface = "1.7" OpenBLAS32_jll = "0.3" -SCIP_PaPILO_jll = "800" +SCIP_PaPILO_jll = "900" SCIP_jll = "900" julia = "1.6" From d2552af63a2ccc946abd1ee40fb38763d60ee21e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Besan=C3=A7on?= Date: Thu, 4 Apr 2024 09:29:17 +0200 Subject: [PATCH 18/18] format --- src/init.jl | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/init.jl b/src/init.jl index 63cd4d69..f6896813 100644 --- a/src/init.jl +++ b/src/init.jl @@ -13,7 +13,10 @@ else # Artifact from BinaryBuilder package if Sys.iswindows() @eval using Artifacts - @eval const libscip = joinpath(artifact"libscip-windows.zip", "scip_install/bin/libscip.dll") + @eval const libscip = joinpath( + artifact"libscip-windows.zip", + "scip_install/bin/libscip.dll", + ) else import SCIP_PaPILO_jll if SCIP_PaPILO_jll.is_available() && !Sys.iswindows()