From 48d271a15d227b75ad33af1fa00bde4324aa0fa6 Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Wed, 5 Feb 2025 11:07:30 +0000 Subject: [PATCH 01/11] Lock to February 2 (expected fail on build) --- pyproject.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index bc06f322d..c346b667b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,8 +60,8 @@ before-all = "rm -rf {project}/build {project}/*.so {project}/CMakeCache.txt && archs = "x86_64 aarch64" # Use manylinux2014 image for both x86_64 and aarch64 -manylinux-x86_64-image = "manylinux2014" -manylinux-aarch64-image = "manylinux2014" +manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2025.02.02-1" +manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2025.02.02-1" [tool.cibuildwheel.macos] # For macOS wheels, we only need to install cmake From 1491af46998d23d8d117e0d651fb94dc08ab4a13 Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Wed, 5 Feb 2025 14:28:03 +0000 Subject: [PATCH 02/11] Lock to 16 December 2024 --- pyproject.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index c346b667b..da886d2ae 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,8 +60,8 @@ before-all = "rm -rf {project}/build {project}/*.so {project}/CMakeCache.txt && archs = "x86_64 aarch64" # Use manylinux2014 image for both x86_64 and aarch64 -manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2025.02.02-1" -manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2025.02.02-1" +manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2024.12.16-1" +manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2024.12.16-1" [tool.cibuildwheel.macos] # For macOS wheels, we only need to install cmake From ddab5a0403f64aa850df76c42ba63d1078893016 Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Wed, 5 Feb 2025 14:55:18 +0000 Subject: [PATCH 03/11] Lock to 12 November 2024 --- pyproject.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index da886d2ae..a9acd5f67 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,8 +60,8 @@ before-all = "rm -rf {project}/build {project}/*.so {project}/CMakeCache.txt && archs = "x86_64 aarch64" # Use manylinux2014 image for both x86_64 and aarch64 -manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2024.12.16-1" -manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2024.12.16-1" +manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2024.11.12-1" +manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2024.11.12-1" [tool.cibuildwheel.macos] # For macOS wheels, we only need to install cmake From 5c3bece3c01ef3f9b4497ce02b80c1da4ad1e092 Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Wed, 5 Feb 2025 16:27:50 +0000 Subject: [PATCH 04/11] Lock to 03 November 2024 --- pyproject.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index a9acd5f67..5f7e038e9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,8 +60,8 @@ before-all = "rm -rf {project}/build {project}/*.so {project}/CMakeCache.txt && archs = "x86_64 aarch64" # Use manylinux2014 image for both x86_64 and aarch64 -manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2024.11.12-1" -manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2024.11.12-1" +manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2024.11.03-3" +manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2024.11.03-3" [tool.cibuildwheel.macos] # For macOS wheels, we only need to install cmake From 6d16c978829eb1414527c7cbde3608f77ae6f4ba Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Wed, 5 Feb 2025 16:40:18 +0000 Subject: [PATCH 05/11] Switch to CentOS Image --- pyproject.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 5f7e038e9..4bc71d563 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,8 +60,8 @@ before-all = "rm -rf {project}/build {project}/*.so {project}/CMakeCache.txt && archs = "x86_64 aarch64" # Use manylinux2014 image for both x86_64 and aarch64 -manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2024.11.03-3" -manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2024.11.03-3" +manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2024.11.03-2" +manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2024.11.03-2" [tool.cibuildwheel.macos] # For macOS wheels, we only need to install cmake From 4866fb5fb066311404b99305768623205bb3161a Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Wed, 5 Feb 2025 17:39:07 +0000 Subject: [PATCH 06/11] Test pinned version --- pyproject.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 4bc71d563..781529e3b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,8 +60,8 @@ before-all = "rm -rf {project}/build {project}/*.so {project}/CMakeCache.txt && archs = "x86_64 aarch64" # Use manylinux2014 image for both x86_64 and aarch64 -manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2024.11.03-2" -manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2024.11.03-2" +manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2024.10.21-1" +manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2024.10.21-1" [tool.cibuildwheel.macos] # For macOS wheels, we only need to install cmake From 822227c6d85745abff764046251222e3efb597bb Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Thu, 6 Feb 2025 19:40:27 +0000 Subject: [PATCH 07/11] Build aarch64 wheel only --- .github/workflows/test_and_deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_and_deploy.yml b/.github/workflows/test_and_deploy.yml index 2c384567c..840ab272f 100644 --- a/.github/workflows/test_and_deploy.yml +++ b/.github/workflows/test_and_deploy.yml @@ -129,7 +129,7 @@ jobs: if: github.event_name != 'release' uses: pypa/cibuildwheel@v2.19.2 # The main configuration is in pyproject.toml env: - CIBW_BUILD: "cp312-manylinux*" # Build only python 3.12 wheels for testing + CIBW_BUILD: "cp312-manylinux_aarch64" # Build only python 3.12 wheels for testing # Increase verbosity to see what's going on in the build in case of failure CIBW_BUILD_VERBOSITY: 3 CIBW_REPAIR_WHEEL_COMMAND_LINUX: > From 333ab0c973b30b34242b3893439755461823e06b Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Fri, 7 Feb 2025 15:24:27 +0000 Subject: [PATCH 08/11] Change build sequence so wheels are done after other tests are complete. --- .github/workflows/test_and_deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_and_deploy.yml b/.github/workflows/test_and_deploy.yml index 840ab272f..629dcd679 100644 --- a/.github/workflows/test_and_deploy.yml +++ b/.github/workflows/test_and_deploy.yml @@ -114,7 +114,7 @@ jobs: path: dist/ build_wheels: name: Build wheels on Ubuntu - needs: test_repo + needs: [test_repo, test_sdist_3_8, test_sdist_3_12] runs-on: ubuntu-20.04 # Can be also run for macOS steps: - uses: actions/checkout@v4 From 7b625ebe9c852886afcec24bd231560b6db487d9 Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Fri, 7 Feb 2025 17:10:51 +0000 Subject: [PATCH 09/11] Try build with 4 parallel jobs --- CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index e2e28d390..7e9de708d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -88,6 +88,8 @@ set(NLE_UTIL_GEN ${nle_BINARY_DIR}/util) set(CMAKE_INSTALL_MESSAGE LAZY) # Don't tell us about up-to-date files. +set(CMAKE_BUILD_PARALLEL_LEVEL 4) # Reduce the number of parallel jobs + # EXCLUDE_FROM_ALL: Don't install this static library into /usr/local. add_subdirectory(third_party/deboost.context EXCLUDE_FROM_ALL) add_subdirectory(util) From c8b51d40282b549e7e375e1fcb8ac3474b4c8c06 Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Fri, 7 Feb 2025 17:27:38 +0000 Subject: [PATCH 10/11] Switch to Ubuntu 22.04 runner for wheels --- .github/workflows/test_and_deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_and_deploy.yml b/.github/workflows/test_and_deploy.yml index 629dcd679..5f64f5f70 100644 --- a/.github/workflows/test_and_deploy.yml +++ b/.github/workflows/test_and_deploy.yml @@ -115,7 +115,7 @@ jobs: build_wheels: name: Build wheels on Ubuntu needs: [test_repo, test_sdist_3_8, test_sdist_3_12] - runs-on: ubuntu-20.04 # Can be also run for macOS + runs-on: ubuntu-22.04 # Can be also run for macOS steps: - uses: actions/checkout@v4 with: From cba5ceeaad2ee7fa9b5c492555adf7d337988533 Mon Sep 17 00:00:00 2001 From: Stephen Oman Date: Sat, 8 Feb 2025 09:23:03 +0000 Subject: [PATCH 11/11] Revert to previous release config and build x86 wheel only --- .github/workflows/test_and_deploy.yml | 6 +++--- CMakeLists.txt | 2 -- pyproject.toml | 4 ++-- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/.github/workflows/test_and_deploy.yml b/.github/workflows/test_and_deploy.yml index 5f64f5f70..7fc68ec7b 100644 --- a/.github/workflows/test_and_deploy.yml +++ b/.github/workflows/test_and_deploy.yml @@ -114,8 +114,8 @@ jobs: path: dist/ build_wheels: name: Build wheels on Ubuntu - needs: [test_repo, test_sdist_3_8, test_sdist_3_12] - runs-on: ubuntu-22.04 # Can be also run for macOS + needs: [test_repo] + runs-on: ubuntu-20.04 # Can be also run for macOS steps: - uses: actions/checkout@v4 with: @@ -129,7 +129,7 @@ jobs: if: github.event_name != 'release' uses: pypa/cibuildwheel@v2.19.2 # The main configuration is in pyproject.toml env: - CIBW_BUILD: "cp312-manylinux_aarch64" # Build only python 3.12 wheels for testing + CIBW_BUILD: "cp312-manylinux_x86_64" # Build only python 3.12 wheels for testing # Increase verbosity to see what's going on in the build in case of failure CIBW_BUILD_VERBOSITY: 3 CIBW_REPAIR_WHEEL_COMMAND_LINUX: > diff --git a/CMakeLists.txt b/CMakeLists.txt index 7e9de708d..e2e28d390 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -88,8 +88,6 @@ set(NLE_UTIL_GEN ${nle_BINARY_DIR}/util) set(CMAKE_INSTALL_MESSAGE LAZY) # Don't tell us about up-to-date files. -set(CMAKE_BUILD_PARALLEL_LEVEL 4) # Reduce the number of parallel jobs - # EXCLUDE_FROM_ALL: Don't install this static library into /usr/local. add_subdirectory(third_party/deboost.context EXCLUDE_FROM_ALL) add_subdirectory(util) diff --git a/pyproject.toml b/pyproject.toml index 781529e3b..bc06f322d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,8 +60,8 @@ before-all = "rm -rf {project}/build {project}/*.so {project}/CMakeCache.txt && archs = "x86_64 aarch64" # Use manylinux2014 image for both x86_64 and aarch64 -manylinux-x86_64-image = "quay.io/pypa/manylinux2014_x86_64:2024.10.21-1" -manylinux-aarch64-image = "quay.io/pypa/manylinux2014_aarch64:2024.10.21-1" +manylinux-x86_64-image = "manylinux2014" +manylinux-aarch64-image = "manylinux2014" [tool.cibuildwheel.macos] # For macOS wheels, we only need to install cmake