From 3060c4a87fed10db6ad276a254a67071e5e92756 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Sat, 30 Mar 2024 14:16:39 +0100 Subject: [PATCH 01/19] Use static build when compiling scip --- from_source.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/from_source.rs b/from_source.rs index d6b59a4..d5c603c 100644 --- a/from_source.rs +++ b/from_source.rs @@ -48,7 +48,10 @@ pub fn compile_scip(source_path: PathBuf) -> PathBuf { use cmake::Config; let mut dst = Config::new(source_path); - dst.define("AUTOBUILD", "ON").build() + dst + .define("AUTOBUILD", "ON") + .define("SHARED", "OFF") + .build() } #[cfg(not(feature = "from-source"))] From 77c0febf9e7ffcb4f13ddf427cad92f2a1b2f680 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Sat, 30 Mar 2024 14:23:22 +0100 Subject: [PATCH 02/19] CI: just macos for now --- .github/workflows/build_and_test.yml | 36 ++++++++++++++-------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 27f04c1..e0034e3 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -9,23 +9,23 @@ on: - main jobs: - bundled-test: - strategy: - matrix: - os: [ - ubuntu-latest, - macos-latest, - macos-14, # macOS arm runner - windows-latest, - ] - runs-on: ${{ matrix.os }} - steps: - - uses: actions/checkout@v3 - - name: Test bundled - run: | - cargo b --features bundled -vv - cargo t --features bundled create - cargo t --features bundled --examples +# bundled-test: +# strategy: +# matrix: +# os: [ +# ubuntu-latest, +# macos-latest, +# macos-14, # macOS arm runner +# windows-latest, +# ] +# runs-on: ${{ matrix.os }} +# steps: +# - uses: actions/checkout@v3 +# - name: Test bundled +# run: | +# cargo b --features bundled -vv +# cargo t --features bundled create +# cargo t --features bundled --examples from-source-test: strategy: @@ -33,7 +33,7 @@ jobs: os: [ macos-latest, macos-14, - ubuntu-latest, +# ubuntu-latest, ] runs-on: ${{ matrix.os }} steps: From 57b2c102c61c7d77a2ca110d22a8453226f955a3 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Sat, 30 Mar 2024 14:45:09 +0100 Subject: [PATCH 03/19] Install gcc too on macos --- .github/workflows/build_and_test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index e0034e3..799fc2f 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -41,7 +41,7 @@ jobs: - name: Install bison if: ${{ matrix.os == 'macos-latest' || matrix.os == 'macos-14' }} run: | - brew install bison + brew install bison gcc - name: Test from-source run: | cargo b --features from-source -vv From 4e6f374c3c378dde74519fb5dd2a3852da7e0d59 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 20:16:09 +0100 Subject: [PATCH 04/19] Static linking for the from-source feature --- build.rs | 15 +++++++++++++++ from_source.rs | 9 ++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/build.rs b/build.rs index b9ed33a..d6ca199 100644 --- a/build.rs +++ b/build.rs @@ -134,11 +134,26 @@ fn main() -> Result<(), Box> { } }; + #[cfg(windows)] println!("cargo:rustc-link-lib=libscip"); #[cfg(not(windows))] println!("cargo:rustc-link-lib=scip"); + #[cfg(feature ="from-source")] { + let target = env::var("TARGET").unwrap(); + let apple = target.contains("apple"); + let linux = target.contains("linux"); + let windows = target.contains("windows"); + if apple { + println!("cargo:rustc-link-lib=c++"); + } else if linux || windows { + println!("cargo:rustc-link-lib=stdc++"); + } + println!("cargo:rustc-link-lib=soplex"); + println!("cargo:rustc-link-lib=z"); + } + let builder = builder .blocklist_item("FP_NAN") .blocklist_item("FP_INFINITE") diff --git a/from_source.rs b/from_source.rs index d5c603c..fcee6ac 100644 --- a/from_source.rs +++ b/from_source.rs @@ -49,7 +49,14 @@ pub fn compile_scip(source_path: PathBuf) -> PathBuf { let mut dst = Config::new(source_path); dst - .define("AUTOBUILD", "ON") + .define("IPOPT", "OFF") + .define("ZIMPL", "OFF") + .define("GMP", "OFF") + .define("READLINE", "OFF") + .define("BOOST", "OFF") + .define("AUTOBUILD","OFF") + .define("PAPILO", "OFF") + .define("SYM", "none") .define("SHARED", "OFF") .build() } From 24b6f71484ff5ed0568df0a6da6daed914046799 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 20:22:16 +0100 Subject: [PATCH 05/19] Reenable ubuntu in CI for from-source feature --- .github/workflows/build_and_test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 799fc2f..a6d8ff9 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -33,7 +33,7 @@ jobs: os: [ macos-latest, macos-14, -# ubuntu-latest, + ubuntu-latest, ] runs-on: ${{ matrix.os }} steps: From 80408effc770611da067a9f9eacd22a509ea6847 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 20:29:57 +0100 Subject: [PATCH 06/19] Try out windows and linux arm --- .github/workflows/build_and_test.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index a6d8ff9..b6459fc 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -31,9 +31,11 @@ jobs: strategy: matrix: os: [ - macos-latest, - macos-14, - ubuntu-latest, +# macos-latest, +# macos-14, +# ubuntu-latest, + windows-latest, + ubuntu-22.04 # arm64 ] runs-on: ${{ matrix.os }} steps: From 913e5faa13ef19ac825ebfa040ec5f19161f4ad6 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 20:35:12 +0100 Subject: [PATCH 07/19] Remove libz requirement --- .github/workflows/build_and_test.yml | 1 - build.rs | 1 - from_source.rs | 3 ++- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index b6459fc..db63d88 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -35,7 +35,6 @@ jobs: # macos-14, # ubuntu-latest, windows-latest, - ubuntu-22.04 # arm64 ] runs-on: ${{ matrix.os }} steps: diff --git a/build.rs b/build.rs index d6ca199..12a8016 100644 --- a/build.rs +++ b/build.rs @@ -151,7 +151,6 @@ fn main() -> Result<(), Box> { println!("cargo:rustc-link-lib=stdc++"); } println!("cargo:rustc-link-lib=soplex"); - println!("cargo:rustc-link-lib=z"); } let builder = builder diff --git a/from_source.rs b/from_source.rs index fcee6ac..33e736d 100644 --- a/from_source.rs +++ b/from_source.rs @@ -56,7 +56,8 @@ pub fn compile_scip(source_path: PathBuf) -> PathBuf { .define("BOOST", "OFF") .define("AUTOBUILD","OFF") .define("PAPILO", "OFF") - .define("SYM", "none") + .define("SYM", "snauty") + .define("ZLIB", "OFF") .define("SHARED", "OFF") .build() } From e678baccd8d142b74d9544a4f5e9b004b1ea5ec9 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 20:41:21 +0100 Subject: [PATCH 08/19] Add ubuntu arm docker container test to CI --- .github/workflows/build_and_test.yml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index db63d88..ca27baf 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -49,6 +49,27 @@ jobs: cargo t --features from-source create cargo t --features from-source --examples + from-source-linux-arm-test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Set up QEMU for ARM64 emulation + uses: docker/setup-qemu-action@v2 + with: + platforms: arm64 + + - name: Run test in ARM64 environment + run: | + docker run --rm --platform linux/arm64 \ + -v ${{ github.workspace }}:/workspace \ + -w /workspace \ + rust:latest /bin/bash -c " + cargo build --features from-source -vv + cargo test --features from-source create + cargo test --features from-source --examples + " + # TODO: fix this, needs tbb # windows-from-source: # runs-on: windows-latest From 401922bb5b2cd3e89a0c66b6a25d50ae0c8c57dc Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 20:44:03 +0100 Subject: [PATCH 09/19] Update scip source to 9.1.1 --- from_source.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/from_source.rs b/from_source.rs index 33e736d..9a2fa3b 100644 --- a/from_source.rs +++ b/from_source.rs @@ -23,7 +23,7 @@ pub fn download_scip_source() -> PathBuf { #[cfg(feature = "from-source")] pub fn download_scip_source() -> PathBuf { - let url = "https://github.com/scipopt/scip-sys/releases/download/v0.1.9/scipoptsuite-9.0.0.zip"; + let url = "https://github.com/scipopt/scip/releases/download/v911/scipoptsuite-9.1.1.tgz"; let target = env::var("OUT_DIR").unwrap(); let target = std::path::Path::new(&target); if target.join("scipoptsuite-9.0.0").exists() { From cb4cf46812c6c604bbcd639f446d342c3bb9744a Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 20:50:16 +0100 Subject: [PATCH 10/19] Use another link for scip source --- from_source.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/from_source.rs b/from_source.rs index 9a2fa3b..213fd77 100644 --- a/from_source.rs +++ b/from_source.rs @@ -23,7 +23,7 @@ pub fn download_scip_source() -> PathBuf { #[cfg(feature = "from-source")] pub fn download_scip_source() -> PathBuf { - let url = "https://github.com/scipopt/scip/releases/download/v911/scipoptsuite-9.1.1.tgz"; + let url = "https://github.com/scipopt/scip-sys/releases/download/v0.1.9/scipoptsuite-9.1.1.zip"; let target = env::var("OUT_DIR").unwrap(); let target = std::path::Path::new(&target); if target.join("scipoptsuite-9.0.0").exists() { From 48c156a0a13cbfe3b68b32173c48f860f8f74346 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 20:54:00 +0100 Subject: [PATCH 11/19] Fix scip version number --- from_source.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/from_source.rs b/from_source.rs index 213fd77..96ef347 100644 --- a/from_source.rs +++ b/from_source.rs @@ -23,15 +23,16 @@ pub fn download_scip_source() -> PathBuf { #[cfg(feature = "from-source")] pub fn download_scip_source() -> PathBuf { - let url = "https://github.com/scipopt/scip-sys/releases/download/v0.1.9/scipoptsuite-9.1.1.zip"; + let scip_version = "9.1.1"; + let url = format!("https://github.com/scipopt/scip-sys/releases/download/v0.1.9/scipoptsuite-{scip_version}.zip"); let target = env::var("OUT_DIR").unwrap(); let target = std::path::Path::new(&target); - if target.join("scipoptsuite-9.0.0").exists() { + if target.join(format!("scipoptsuite-{scip_version}")).exists() { println!("cargo:warning=SCIP was previously downloaded, skipping download"); } else { - download_and_extract_zip(url, &*target).expect("Failed to download SCIP"); + download_and_extract_zip(&url, &*target).expect("Failed to download SCIP"); } - target.join("scipoptsuite-9.0.0") + target.join(format!("scipoptsuite-{scip_version}")) } From 2888d6ca980095017dd3f3c392d0ae7e38e5af05 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 20:56:55 +0100 Subject: [PATCH 12/19] Use mac arm runner for linux arm emulation --- .github/workflows/build_and_test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index ca27baf..8d53eb7 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -50,7 +50,7 @@ jobs: cargo t --features from-source --examples from-source-linux-arm-test: - runs-on: ubuntu-latest + runs-on: macos-14 steps: - uses: actions/checkout@v3 From 13a5b6e499920ac0892778206c17e07500addd2a Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 20:59:17 +0100 Subject: [PATCH 13/19] Test another way of using arm linux --- .github/workflows/build_and_test.yml | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 8d53eb7..3045dd1 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -50,25 +50,18 @@ jobs: cargo t --features from-source --examples from-source-linux-arm-test: - runs-on: macos-14 + runs-on: ubuntu-22.04 + strategy: + matrix: + architecture: [ arm64 ] steps: - uses: actions/checkout@v3 - - name: Set up QEMU for ARM64 emulation - uses: docker/setup-qemu-action@v2 - with: - platforms: arm64 - - - name: Run test in ARM64 environment + - name: Test from-source run: | - docker run --rm --platform linux/arm64 \ - -v ${{ github.workspace }}:/workspace \ - -w /workspace \ - rust:latest /bin/bash -c " - cargo build --features from-source -vv - cargo test --features from-source create - cargo test --features from-source --examples - " + cargo build --features from-source -vv + cargo test --features from-source create + cargo test --features from-source --examples # TODO: fix this, needs tbb # windows-from-source: From ef7487f820ae9bb1891ce055e4fe51cc851064d1 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 21:01:52 +0100 Subject: [PATCH 14/19] Rollback to qemu --- .github/workflows/build_and_test.yml | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 3045dd1..ca27baf 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -50,18 +50,25 @@ jobs: cargo t --features from-source --examples from-source-linux-arm-test: - runs-on: ubuntu-22.04 - strategy: - matrix: - architecture: [ arm64 ] + runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - name: Test from-source + - name: Set up QEMU for ARM64 emulation + uses: docker/setup-qemu-action@v2 + with: + platforms: arm64 + + - name: Run test in ARM64 environment run: | - cargo build --features from-source -vv - cargo test --features from-source create - cargo test --features from-source --examples + docker run --rm --platform linux/arm64 \ + -v ${{ github.workspace }}:/workspace \ + -w /workspace \ + rust:latest /bin/bash -c " + cargo build --features from-source -vv + cargo test --features from-source create + cargo test --features from-source --examples + " # TODO: fix this, needs tbb # windows-from-source: From 3680ea80e5651de617cbe6b89d3010b9b907bec4 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 21:16:05 +0100 Subject: [PATCH 15/19] Try out statically linking stdc++ in windows --- .github/workflows/build_and_test.yml | 40 ++++++++++++++-------------- build.rs | 4 ++- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index ca27baf..93358e6 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -49,26 +49,26 @@ jobs: cargo t --features from-source create cargo t --features from-source --examples - from-source-linux-arm-test: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - name: Set up QEMU for ARM64 emulation - uses: docker/setup-qemu-action@v2 - with: - platforms: arm64 - - - name: Run test in ARM64 environment - run: | - docker run --rm --platform linux/arm64 \ - -v ${{ github.workspace }}:/workspace \ - -w /workspace \ - rust:latest /bin/bash -c " - cargo build --features from-source -vv - cargo test --features from-source create - cargo test --features from-source --examples - " +# from-source-linux-arm-test: +# runs-on: ubuntu-latest +# steps: +# - uses: actions/checkout@v3 +# +# - name: Set up QEMU for ARM64 emulation +# uses: docker/setup-qemu-action@v2 +# with: +# platforms: arm64 +# +# - name: Run test in ARM64 environment +# run: | +# docker run --rm --platform linux/arm64 \ +# -v ${{ github.workspace }}:/workspace \ +# -w /workspace \ +# rust:latest /bin/bash -c " +# cargo build --features from-source -vv +# cargo test --features from-source create +# cargo test --features from-source --examples +# " # TODO: fix this, needs tbb # windows-from-source: diff --git a/build.rs b/build.rs index 12a8016..d385844 100644 --- a/build.rs +++ b/build.rs @@ -147,8 +147,10 @@ fn main() -> Result<(), Box> { let windows = target.contains("windows"); if apple { println!("cargo:rustc-link-lib=c++"); - } else if linux || windows { + } else if linux { println!("cargo:rustc-link-lib=stdc++"); + } else if windows { + println!("cargo:rustc-link-lib=static=stdc++"); } println!("cargo:rustc-link-lib=soplex"); } From 51736e5938ca0ad0b7f4967f7b423bc414bca2ff Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 21:26:26 +0100 Subject: [PATCH 16/19] Avoid linking to stdc++ on windows --- build.rs | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/build.rs b/build.rs index d385844..82fd9e1 100644 --- a/build.rs +++ b/build.rs @@ -144,13 +144,11 @@ fn main() -> Result<(), Box> { let target = env::var("TARGET").unwrap(); let apple = target.contains("apple"); let linux = target.contains("linux"); - let windows = target.contains("windows"); + let mingw = target.contains("pc-windows-gnu"); if apple { - println!("cargo:rustc-link-lib=c++"); - } else if linux { - println!("cargo:rustc-link-lib=stdc++"); - } else if windows { - println!("cargo:rustc-link-lib=static=stdc++"); + println!("cargo:rustc-link-lib=dylib=c++"); + } else if linux || mingw { + println!("cargo:rustc-link-lib=dylib=stdc++"); } println!("cargo:rustc-link-lib=soplex"); } From 8bcd5a6d0ac90aa97f2b7f7988ce6febce4d026d Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 21:44:09 +0100 Subject: [PATCH 17/19] Link correct soplex library on windows --- build.rs | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/build.rs b/build.rs index 82fd9e1..c320915 100644 --- a/build.rs +++ b/build.rs @@ -135,12 +135,16 @@ fn main() -> Result<(), Box> { }; - #[cfg(windows)] - println!("cargo:rustc-link-lib=libscip"); - #[cfg(not(windows))] - println!("cargo:rustc-link-lib=scip"); + #[cfg(windows)] { + println!("cargo:rustc-link-lib=libscip"); + println!("cargo:rustc-link-lib=libsoplex"); + } + #[cfg(not(windows))] { + println!("cargo:rustc-link-lib=scip"); + println!("cargo:rustc-link-lib=soplex"); + } - #[cfg(feature ="from-source")] { + #[cfg(feature = "from-source")] { let target = env::var("TARGET").unwrap(); let apple = target.contains("apple"); let linux = target.contains("linux"); @@ -150,7 +154,6 @@ fn main() -> Result<(), Box> { } else if linux || mingw { println!("cargo:rustc-link-lib=dylib=stdc++"); } - println!("cargo:rustc-link-lib=soplex"); } let builder = builder From 1d77bf008b6dfff0891b55e611a76d4a57a25563 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 21:51:12 +0100 Subject: [PATCH 18/19] Add back other runners --- .github/workflows/build_and_test.yml | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 93358e6..b2e847c 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -31,10 +31,10 @@ jobs: strategy: matrix: os: [ -# macos-latest, -# macos-14, -# ubuntu-latest, - windows-latest, + macos-latest, + macos-14, + ubuntu-latest, + windows-latest, ] runs-on: ${{ matrix.os }} steps: @@ -68,17 +68,4 @@ jobs: # cargo build --features from-source -vv # cargo test --features from-source create # cargo test --features from-source --examples -# " - -# TODO: fix this, needs tbb -# windows-from-source: -# runs-on: windows-latest -# steps: -# - uses: actions/checkout@v3 -# -# - name: Test from-source -# run: | -# echo "${{ runner.workspace }}/vcpkg" >> $GITHUB_PATH -# cargo b --features from-source -vv -# cargo t --features from-source create -# cargo t --features from-source --examples \ No newline at end of file +# " \ No newline at end of file From ff6d2af4e40e7017d07d36d95adbf83917199ca1 Mon Sep 17 00:00:00 2001 From: Mohammed Ghannam Date: Wed, 30 Oct 2024 21:51:36 +0100 Subject: [PATCH 19/19] And also bundled runners --- .github/workflows/build_and_test.yml | 34 ++++++++++++++-------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index b2e847c..142aa6d 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -9,23 +9,23 @@ on: - main jobs: -# bundled-test: -# strategy: -# matrix: -# os: [ -# ubuntu-latest, -# macos-latest, -# macos-14, # macOS arm runner -# windows-latest, -# ] -# runs-on: ${{ matrix.os }} -# steps: -# - uses: actions/checkout@v3 -# - name: Test bundled -# run: | -# cargo b --features bundled -vv -# cargo t --features bundled create -# cargo t --features bundled --examples + bundled-test: + strategy: + matrix: + os: [ + ubuntu-latest, + macos-latest, + macos-14, # macOS arm runner + windows-latest, + ] + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v3 + - name: Test bundled + run: | + cargo b --features bundled -vv + cargo t --features bundled create + cargo t --features bundled --examples from-source-test: strategy: