Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -177,3 +177,5 @@ dmypy.json

# Scikit-build build folder
_skbuild/

.pixi/
2 changes: 1 addition & 1 deletion cmake/DependenciesResolver.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ macro(find_or_download_package)
FetchContent_GetProperties(${ARG_NAME})
if(NOT ${ARG_NAME}_POPULATED)
message(STATUS "Downloading ${ARG_NAME}")
FetchContent_Populate(${ARG_NAME})
FetchContent_MakeAvailable(${ARG_NAME})
message(STATUS "Building ${ARG_NAME}")
# FetchContent_Populate uses lower case name of FetchContent_Declare for directories
string(TOLOWER "${ARG_NAME}" ARG_NAME_LOWER)
Expand Down
12 changes: 3 additions & 9 deletions cmake/Python.cmake
Original file line number Diff line number Diff line change
@@ -1,14 +1,8 @@
# Set some variables to find the proper Python version

if(SKBUILD)
# If scikit-build is compiling, let if define the interpreter
set(Python_EXECUTABLE "${PYTHON_EXECUTABLE}")
set(Python_INCLUDE_DIR "${PYTHON_INCLUDE_DIR}")
set(Python_LIBRARY "${PYTHON_LIBRARY}")
set(DUMMY "${PYTHON_VERSION_STRING}") # Not needed, silences a warning

elseif(NOT DEFINED Python_EXECUTABLE)
# Find Python interpreter from the path and don't resolve symlinks
# scikit-build-core sets Python paths automatically via CMake's FindPython.
# For standalone builds, find Python from the path.
if(NOT SKBUILD AND NOT DEFINED Python_EXECUTABLE)
execute_process(
COMMAND "python3" "-c" "import sys; print(sys.executable)"
OUTPUT_VARIABLE Python_EXECUTABLE
Expand Down
2 changes: 1 addition & 1 deletion dev/conda.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ dependencies:
- pybind11>=2.7
- numpy>=1.4
- xtensor-python
- scikit-build
- scikit-build-core
- build

# Documentation
Expand Down
12 changes: 6 additions & 6 deletions libecole/dependencies/private.cmake
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
find_or_download_package(
NAME range-v3
URL https://github.com/ericniebler/range-v3/archive/0.11.0.tar.gz
URL_HASH SHA256=376376615dbba43d3bef75aa590931431ecb49eb36d07bb726a19f680c75e20c
URL https://github.com/ericniebler/range-v3/archive/0.12.0.tar.gz
URL_HASH SHA256=015adb2300a98edfceaf0725beec3337f542af4915cec4d0b89fa0886f4ba9cb
CONFIGURE_ARGS
-D RANGE_V3_TESTS=OFF
-D RANGE_V3_EXAMPLES=OFF
Expand All @@ -11,8 +11,8 @@ find_or_download_package(

find_or_download_package(
NAME fmt
URL https://github.com/fmtlib/fmt/archive/8.0.1.tar.gz
URL_HASH SHA256=b06ca3130158c625848f3fb7418f235155a4d389b2abc3a6245fb01cb0eb1e01
URL https://github.com/fmtlib/fmt/archive/12.0.0.tar.gz
URL_HASH SHA256=aa3e8fbb6a0066c03454434add1f1fc23299e85758ceec0d7d2d974431481e40
CONFIGURE_ARGS
-D FMT_TEST=OFF
-D FMT_DOC=OFF
Expand All @@ -24,7 +24,7 @@ find_or_download_package(

find_or_download_package(
NAME robin_hood
URL https://github.com/martinus/robin-hood-hashing/archive/refs/tags/3.11.2.tar.gz
URL_HASH SHA256=148b4fbd4fbb30ba10cc97143dcbe385078801b9c9e329cd477c1ea27477cb73
URL https://github.com/martinus/robin-hood-hashing/archive/refs/tags/3.11.5.tar.gz
URL_HASH SHA256=3693e44dda569e9a8b87ce8263f7477b23af448a3c3600c8ab9004fe79c20ad0
CONFIGURE_ARGS -D RH_STANDALONE_PROJECT=OFF
)
16 changes: 8 additions & 8 deletions libecole/dependencies/public.cmake
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
find_or_download_package(
NAME xtl
URL https://github.com/xtensor-stack/xtl/archive/0.7.2.tar.gz
URL_HASH SHA256=95c221bdc6eaba592878090916383e5b9390a076828552256693d5d97f78357c
URL https://github.com/xtensor-stack/xtl/archive/0.8.1.tar.gz
URL_HASH SHA256=e69a696068ccffd2b435539d583665981b6c6abed596a72832bffbe3e13e1f49
CONFIGURE_ARGS -D BUILD_TESTS=OFF
)

find_or_download_package(
NAME xsimd
URL https://github.com/xtensor-stack/xsimd/archive/7.4.9.tar.gz
URL_HASH SHA256=f6601ffb002864ec0dc6013efd9f7a72d756418857c2d893be0644a2f041874e
URL https://github.com/xtensor-stack/xsimd/archive/14.0.0.tar.gz
URL_HASH SHA256=17de0236954955c10c09d6938d4c5f3a3b92d31be5dadd1d5d09fc1b15490dce
CONFIGURE_ARGS -D BUILD_TESTS=OFF
)

find_or_download_package(
NAME xtensor
URL https://github.com/xtensor-stack/xtensor/archive/0.23.1.tar.gz
URL_HASH SHA256=b9bceea49db240ab64eede3776d0103bb0503d9d1f3ce5b90b0f06a0d8ac5f08
URL https://github.com/xtensor-stack/xtensor/archive/0.27.1.tar.gz
URL_HASH SHA256=117c192ae3b7c37c0156dedaa88038e0599a6b264666c3c6c2553154b500fe23
CONFIGURE_ARGS -D BUILD_TESTS=OFF
)

find_or_download_package(
NAME span-lite
URL https://github.com/martinmoene/span-lite/archive/v0.9.0.tar.gz
URL_HASH SHA256=cdb5f86e5f5e679d63700a56de734c44fe22a574a17347d09dbaaef80619af91
URL https://github.com/martinmoene/span-lite/archive/v0.11.0.tar.gz
URL_HASH SHA256=ef4e028e18ff21044da4b4641ca1bc8a2e2d656e2028322876c0e1b9b6904f9d
CONFIGURE_ARGS
-D SPAN_LITE_OPT_BUILD_TESTS=OFF
-D SPAN_LITE_OPT_BUILD_EXAMPLES=OFF
Expand Down
2 changes: 1 addition & 1 deletion libecole/include/ecole/dynamics/branching.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#include <cstddef>
#include <optional>

#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

#include "ecole/default.hpp"
#include "ecole/dynamics/parts.hpp"
Expand Down
2 changes: 1 addition & 1 deletion libecole/include/ecole/dynamics/primal-search.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
#include <nonstd/span.hpp>
#include <scip/def.h>
#include <scip/type_result.h>
#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

#include "ecole/dynamics/parts.hpp"
#include "ecole/export.hpp"
Expand Down
2 changes: 1 addition & 1 deletion libecole/include/ecole/observation/hutter-2011.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

#include <optional>

#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

#include "ecole/export.hpp"
#include "ecole/observation/abstract.hpp"
Expand Down
2 changes: 1 addition & 1 deletion libecole/include/ecole/observation/khalil-2016.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#include <cstddef>
#include <optional>

#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

#include "ecole/export.hpp"
#include "ecole/observation/abstract.hpp"
Expand Down
2 changes: 1 addition & 1 deletion libecole/include/ecole/observation/milp-bipartite.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

#include <optional>

#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

#include "ecole/export.hpp"
#include "ecole/observation/abstract.hpp"
Expand Down
2 changes: 1 addition & 1 deletion libecole/include/ecole/observation/node-bipartite.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

#include <optional>

#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

#include "ecole/export.hpp"
#include "ecole/observation/abstract.hpp"
Expand Down
2 changes: 1 addition & 1 deletion libecole/include/ecole/observation/pseudocosts.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

#include <optional>

#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

#include "ecole/export.hpp"
#include "ecole/observation/abstract.hpp"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
#include <memory>
#include <optional>

#include <xtensor/xtensor.hpp>
#include <xtensor/xview.hpp>
#include <xtensor/containers/xtensor.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/export.hpp"
#include "ecole/observation/abstract.hpp"
Expand Down
2 changes: 1 addition & 1 deletion libecole/include/ecole/scip/cons.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#include <memory>
#include <optional>
#include <vector>
#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

#include <nonstd/span.hpp>
#include <scip/cons_linear.h>
Expand Down
2 changes: 1 addition & 1 deletion libecole/include/ecole/utility/sparse-matrix.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#include <cstddef>
#include <tuple>

#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

namespace ecole::utility {

Expand Down
2 changes: 1 addition & 1 deletion libecole/src/dynamics/branching.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#include <stdexcept>

#include <fmt/format.h>
#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

#include "ecole/dynamics/branching.hpp"
#include "ecole/scip/model.hpp"
Expand Down
2 changes: 1 addition & 1 deletion libecole/src/dynamics/primal-search.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#include <stdexcept>

#include <fmt/format.h>
#include <xtensor/xtensor.hpp>
#include <xtensor/containers/xtensor.hpp>

#include "ecole/dynamics/primal-search.hpp"
#include "ecole/exception.hpp"
Expand Down
8 changes: 4 additions & 4 deletions libecole/src/instance/capacitated-facility-location.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

#include <fmt/format.h>
#include <range/v3/view/enumerate.hpp>
#include <xtensor/xmath.hpp>
#include <xtensor/xrandom.hpp>
#include <xtensor/xtensor.hpp>
#include <xtensor/xview.hpp>
#include <xtensor/core/xmath.hpp>
#include <xtensor/generators/xrandom.hpp>
#include <xtensor/containers/xtensor.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/instance/capacitated-facility-location.hpp"
#include "ecole/scip/cons.hpp"
Expand Down
14 changes: 7 additions & 7 deletions libecole/src/instance/combinatorial-auction.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@

#include <fmt/format.h>

#include <xtensor/xadapt.hpp>
#include <xtensor/xindex_view.hpp>
#include <xtensor/xrandom.hpp>
#include <xtensor/xsort.hpp>
#include <xtensor/xtensor.hpp>
#include <xtensor/xview.hpp>
#include <xtensor/containers/xadapt.hpp>
#include <xtensor/views/xindex_view.hpp>
#include <xtensor/generators/xrandom.hpp>
#include <xtensor/misc/xsort.hpp>
#include <xtensor/containers/xtensor.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/instance/combinatorial-auction.hpp"
#include "ecole/scip/cons.hpp"
Expand Down Expand Up @@ -59,7 +59,7 @@ class Logger {

template <typename T> void log(T&& message) {
if (print) {
fmt::print(pattern, std::forward<T>(message));
fmt::print(fmt::runtime(pattern), std::forward<T>(message));
}
}

Expand Down
8 changes: 4 additions & 4 deletions libecole/src/instance/set-cover.cpp
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
#include <fmt/format.h>
#include <map>

#include <xtensor/xrandom.hpp>
#include <xtensor/xsort.hpp>
#include <xtensor/xtensor.hpp>
#include <xtensor/xview.hpp>
#include <xtensor/generators/xrandom.hpp>
#include <xtensor/misc/xsort.hpp>
#include <xtensor/containers/xtensor.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/instance/set-cover.hpp"
#include "ecole/scip/cons.hpp"
Expand Down
10 changes: 5 additions & 5 deletions libecole/src/observation/hutter-2011.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@
#include <range/v3/view/iota.hpp>
#include <range/v3/view/transform.hpp>
#include <scip/scip.h>
#include <xtensor/xadapt.hpp>
#include <xtensor/xindex_view.hpp>
#include <xtensor/xsort.hpp>
#include <xtensor/xtensor.hpp>
#include <xtensor/xview.hpp>
#include <xtensor/containers/xadapt.hpp>
#include <xtensor/views/xindex_view.hpp>
#include <xtensor/misc/xsort.hpp>
#include <xtensor/containers/xtensor.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/observation/hutter-2011.hpp"
#include "ecole/scip/cons.hpp"
Expand Down
4 changes: 2 additions & 2 deletions libecole/src/observation/khalil-2016.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
#include <range/v3/view/filter.hpp>
#include <range/v3/view/transform.hpp>
#include <range/v3/view/zip.hpp>
#include <xtensor/xfixed.hpp>
#include <xtensor/xview.hpp>
#include <xtensor/containers/xfixed.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/observation/khalil-2016.hpp"
#include "ecole/scip/col.hpp"
Expand Down
5 changes: 2 additions & 3 deletions libecole/src/observation/milp-bipartite.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,8 @@
#include <cstddef>
#include <scip/scip.h>
#include <scip/struct_lp.h>
#include <xtensor/xadapt.hpp>
#include <xtensor/xnorm.hpp>
#include <xtensor/xview.hpp>
#include <xtensor/containers/xadapt.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/exception.hpp"
#include "ecole/observation/milp-bipartite.hpp"
Expand Down
2 changes: 1 addition & 1 deletion libecole/src/observation/node-bipartite.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

#include <scip/scip.h>
#include <scip/struct_lp.h>
#include <xtensor/xview.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/observation/node-bipartite.hpp"
#include "ecole/scip/model.hpp"
Expand Down
4 changes: 2 additions & 2 deletions libecole/src/observation/pseudocosts.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

#include <nonstd/span.hpp>
#include <range/v3/view/zip.hpp>
#include <xtensor/xtensor.hpp>
#include <xtensor/xview.hpp>
#include <xtensor/containers/xtensor.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/observation/pseudocosts.hpp"
#include "ecole/scip/model.hpp"
Expand Down
16 changes: 10 additions & 6 deletions libecole/src/scip/cons.cpp
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
#include <cmath>
#include <fmt/format.h>
#include <stdexcept>
#include <xtensor/xadapt.hpp>
#include <xtensor/xnorm.hpp>
#include <xtensor/xtensor.hpp>
#include <xtensor/xview.hpp>

#include <xtensor/reducers/xnorm.hpp>
#include <xtensor/containers/xadapt.hpp>
#include <xtensor/containers/xtensor.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/scip/cons.hpp"
#include "ecole/utility/sparse-matrix.hpp"
Expand Down Expand Up @@ -212,8 +213,11 @@ auto get_constraint_linear_coefs(SCIP* const scip, SCIP_CONS* const constraint)
&n_constraint_variables,
static_cast<int>(buffer_size),
&constant_offset,
&requiredsize,
true);
&requiredsize
#if SCIP_VERSION_MAJOR < 10
, true
#endif
);
}

variables.resize(static_cast<std::size_t>(n_constraint_variables));
Expand Down
4 changes: 2 additions & 2 deletions libecole/tests/src/dynamics/test-branching.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
#include <tuple>

#include <catch2/catch.hpp>
#include <xtensor/xmath.hpp>
#include <xtensor/xsort.hpp>
#include <xtensor/core/xmath.hpp>
#include <xtensor/misc/xsort.hpp>

#include "ecole/dynamics/branching.hpp"
#include "ecole/exception.hpp"
Expand Down
4 changes: 2 additions & 2 deletions libecole/tests/src/dynamics/test-primal-search.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
#include <tuple>

#include <catch2/catch.hpp>
#include <xtensor/xmath.hpp>
#include <xtensor/xsort.hpp>
#include <xtensor/core/xmath.hpp>
#include <xtensor/misc/xsort.hpp>

#include <scip/scip.h>

Expand Down
2 changes: 1 addition & 1 deletion libecole/tests/src/observation/test-hutter-2011.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#include <type_traits>

#include <catch2/catch.hpp>
#include <xtensor/xview.hpp>
#include <xtensor/views/xview.hpp>

#include "ecole/observation/hutter-2011.hpp"

Expand Down
Loading
Loading