From 1eb0d6b9e25462d47c90c423a3703a9be9bffa75 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Wed, 4 Sep 2024 13:21:49 -0700 Subject: [PATCH 01/32] No change, just trigger the CI From b45a20a5045f36f0ce41e8e434470911e9ac5536 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Wed, 4 Sep 2024 13:29:15 -0700 Subject: [PATCH 02/32] CI - migrate to docker compose v2 Recent GHA runner images require docker-compose v2. Ref: https://github.com/actions/runner-images/issues/9557 --- .github/workflows/dockertest.yml | 4 ++-- docs/docker.md | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/dockertest.yml b/.github/workflows/dockertest.yml index 2f83183b..edf33497 100644 --- a/.github/workflows/dockertest.yml +++ b/.github/workflows/dockertest.yml @@ -24,7 +24,7 @@ jobs: - name: Checkout submodules run: git submodule update --init --recursive - name: Build Docker images - run: docker-compose build + run: docker compose build - name: Run C++ tests run: docker run --rm qsim-cxx-tests:latest - name: Run Python tests @@ -34,4 +34,4 @@ jobs: - name: Test install process run: | cd install/tests - docker-compose up --build + docker compose up --build diff --git a/docs/docker.md b/docs/docker.md index 72b50429..39a1d4de 100644 --- a/docs/docker.md +++ b/docs/docker.md @@ -19,10 +19,10 @@ git submodule update --init --recursive To build qsim and run all the tests: ``` -# docker-compose up --build +# docker compose up --build ``` -`docker-compose` will create the `qsim`, `qsim-cxx-tests`, and `qsim-py-tests` +`docker compose` will create the `qsim`, `qsim-cxx-tests`, and `qsim-py-tests` images and automatically run all tests. A successful run should have the following messages somewhere in the logs: @@ -34,7 +34,7 @@ qsim-py-tests exited with code 0 To build without running tests, simply run: ``` -# docker-compose build +# docker compose build ``` ## Run Simulations From f5d45bde70aaa6f616c0a7787b8f712b395f45f5 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Wed, 4 Sep 2024 14:18:37 -0700 Subject: [PATCH 03/32] Try to run ci on ubuntu-22 --- .github/workflows/bazeltest.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/bazeltest.yml b/.github/workflows/bazeltest.yml index 41e6f0b3..649e5e2c 100644 --- a/.github/workflows/bazeltest.yml +++ b/.github/workflows/bazeltest.yml @@ -12,7 +12,7 @@ jobs: # Run tests with Bazel v5.3.0. test: name: Test with Bazel - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 strategy: matrix: # Hardware optimizers. @@ -43,7 +43,7 @@ jobs: test-san: name: Sanitizer tests - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 strategy: matrix: # Test sanitizers @@ -72,7 +72,7 @@ jobs: test-mem: name: Test with tcmalloc - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v2 From cbd1da0dab178d20dc88a9420ae6eff8424a323e Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Wed, 4 Sep 2024 14:31:01 -0700 Subject: [PATCH 04/32] Stop testing wheels for Python 3.7 That version is possibly too old. Wheels for newer Python versions appear to build successfully. --- .github/workflows/release_wheels.yml | 8 ++++---- .github/workflows/testing_wheels.yml | 9 ++++----- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 4eeb81cd..f196a2d8 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -15,22 +15,22 @@ jobs: - os: macos-12 # x86_64 name: mac cibw: - build: "cp37* cp38* cp39* cp310* cp311* cp312*" + build: "cp38* cp39* cp310* cp311* cp312*" - os: macos-13-large # Apple Silicon name: mac_arm64 cibw: - build: "cp37* cp38* cp39* cp310* cp311* cp312*" + build: "cp38* cp39* cp310* cp311* cp312*" - os: ubuntu-20.04 name: manylinux2014 cibw: arch: x86_64 - build: "cp37* cp38* cp39* cp310* cp311* cp312*" + build: "cp38* cp39* cp310* cp311* cp312*" manylinux_image: manylinux2014 - os: windows-2019 name: win_amd64 architecture: x64 cibw: - build: "cp37-win_amd64 cp38-win_amd64 cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" + build: "cp38-win_amd64 cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index de263fe6..924737f8 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -20,22 +20,22 @@ jobs: - os: macos-12 # x86_64 name: mac cibw: - build: "cp37* cp38* cp39* cp310* cp311* cp312*" + build: "cp38* cp39* cp310* cp311* cp312*" - os: macos-13-large # Apple Silicon name: mac_arm64 cibw: - build: "cp37* cp38* cp39* cp310* cp311* cp312*" + build: "cp38* cp39* cp310* cp311* cp312*" - os: ubuntu-20.04 name: manylinux2014 cibw: arch: x86_64 - build: "cp37* cp38* cp39* cp310* cp311* cp312*" + build: "cp38* cp39* cp310* cp311* cp312*" manylinux_image: manylinux2014 - os: windows-2019 name: win_amd64 architecture: x64 cibw: - build: "cp37-win_amd64 cp38-win_amd64 cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" + build: "cp38-win_amd64 cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" @@ -73,4 +73,3 @@ jobs: with: name: python-wheels path: ./wheelhouse/*.whl - From d64fc2a94ef0edc2436b027aa27de1c703ecf06a Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Wed, 4 Sep 2024 14:35:28 -0700 Subject: [PATCH 05/32] For some reason the test-mem CI job fails on ubuntu-22, but passes on ubuntu-20 --- .github/workflows/bazeltest.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/bazeltest.yml b/.github/workflows/bazeltest.yml index 649e5e2c..338fc6c5 100644 --- a/.github/workflows/bazeltest.yml +++ b/.github/workflows/bazeltest.yml @@ -72,7 +72,7 @@ jobs: test-mem: name: Test with tcmalloc - runs-on: ubuntu-22.04 + runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v2 From b27ff9c647ad0fdb93e225ebb211a7d9bddc4127 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Wed, 4 Sep 2024 14:48:10 -0700 Subject: [PATCH 06/32] Bump up to actions/checkout@v4 compatible with node20 Ref: https://github.com/actions/checkout/blob/main/CHANGELOG.md --- .github/workflows/bazeltest.yml | 6 +++--- .github/workflows/cirq_compatibility.yml | 2 +- .github/workflows/dockertest.yml | 2 +- .github/workflows/python_format.yml | 2 +- .github/workflows/release_wheels.yml | 2 +- .github/workflows/testing_wheels.yml | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/bazeltest.yml b/.github/workflows/bazeltest.yml index 338fc6c5..495cb1ef 100644 --- a/.github/workflows/bazeltest.yml +++ b/.github/workflows/bazeltest.yml @@ -21,7 +21,7 @@ jobs: parallel_opt: [openmp,nopenmp] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Checkout submodules run: git submodule update --init --recursive - name: Install Bazel on CI @@ -50,7 +50,7 @@ jobs: sanitizer_opt: [msan,asan] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Checkout submodules run: git submodule update --init --recursive - name: Install Bazel on CI @@ -75,7 +75,7 @@ jobs: runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Checkout submodules run: git submodule update --init --recursive - name: Install Bazel on CI diff --git a/.github/workflows/cirq_compatibility.yml b/.github/workflows/cirq_compatibility.yml index ce402d43..47c2037c 100644 --- a/.github/workflows/cirq_compatibility.yml +++ b/.github/workflows/cirq_compatibility.yml @@ -9,7 +9,7 @@ jobs: name: Nightly Compatibility runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - uses: actions/setup-python@v1 with: python-version: '3.7' diff --git a/.github/workflows/dockertest.yml b/.github/workflows/dockertest.yml index edf33497..4f0750d7 100644 --- a/.github/workflows/dockertest.yml +++ b/.github/workflows/dockertest.yml @@ -20,7 +20,7 @@ jobs: os: [ubuntu-latest] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Checkout submodules run: git submodule update --init --recursive - name: Build Docker images diff --git a/.github/workflows/python_format.yml b/.github/workflows/python_format.yml index 213abf2e..c1c28d71 100644 --- a/.github/workflows/python_format.yml +++ b/.github/workflows/python_format.yml @@ -17,7 +17,7 @@ jobs: name: Format check runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: fetch-depth: 0 - uses: actions/setup-python@v1 diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index f196a2d8..0f228297 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -45,7 +45,7 @@ jobs: CIBW_TEST_EXTRAS: "dev" CIBW_TEST_COMMAND: "pytest {package}/qsimcirq_tests/qsimcirq_test.py && mv /tmp/qsimcirq {package}" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 # Used to host cibuildwheel - uses: actions/setup-python@v2 diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 924737f8..4ab59ff1 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -50,7 +50,7 @@ jobs: CIBW_TEST_EXTRAS: "dev" CIBW_TEST_COMMAND: "pytest {package}/qsimcirq_tests/qsimcirq_test.py && mv /tmp/qsimcirq {package}" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 # Used to host cibuildwheel - uses: actions/setup-python@v2 From 506c6f1afc0de06b62394ecf8a95e0cf7407e760 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Wed, 4 Sep 2024 14:49:54 -0700 Subject: [PATCH 07/32] Bump up to actions/setup-python@v5 compatible with node20 Ref: https://github.com/actions/setup-python/releases/tag/v5.0.0 --- .github/workflows/cirq_compatibility.yml | 2 +- .github/workflows/python_format.yml | 2 +- .github/workflows/release_wheels.yml | 2 +- .github/workflows/testing_wheels.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/cirq_compatibility.yml b/.github/workflows/cirq_compatibility.yml index 47c2037c..1aa9f208 100644 --- a/.github/workflows/cirq_compatibility.yml +++ b/.github/workflows/cirq_compatibility.yml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v4 - - uses: actions/setup-python@v1 + - uses: actions/setup-python@v5 with: python-version: '3.7' architecture: 'x64' diff --git a/.github/workflows/python_format.yml b/.github/workflows/python_format.yml index c1c28d71..8c58f58f 100644 --- a/.github/workflows/python_format.yml +++ b/.github/workflows/python_format.yml @@ -20,7 +20,7 @@ jobs: - uses: actions/checkout@v4 with: fetch-depth: 0 - - uses: actions/setup-python@v1 + - uses: actions/setup-python@v5 with: python-version: '3.7' architecture: 'x64' diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 0f228297..c8365001 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -48,7 +48,7 @@ jobs: - uses: actions/checkout@v4 # Used to host cibuildwheel - - uses: actions/setup-python@v2 + - uses: actions/setup-python@v5 with: python-version: '3.11' diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 4ab59ff1..aad0092a 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -53,7 +53,7 @@ jobs: - uses: actions/checkout@v4 # Used to host cibuildwheel - - uses: actions/setup-python@v2 + - uses: actions/setup-python@v5 with: python-version: '3.11' From ae4b888ff2499a05946ccd520032b0319baa9c0d Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Wed, 4 Sep 2024 14:53:11 -0700 Subject: [PATCH 08/32] Bump up to actions/upload-artifact@v4 compatible with node20 Ref: https://github.com/actions/upload-artifact/issues/444#issuecomment-1856410599 Finalize #6445 --- .github/workflows/release_wheels.yml | 4 ++-- .github/workflows/testing_wheels.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index c8365001..c1b05a23 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -64,7 +64,7 @@ jobs: - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v4 with: name: python-wheels path: ./wheelhouse/*.whl @@ -74,7 +74,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Download build artifacts - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v4 with: name: python-wheels path: dist/ diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index aad0092a..07cebdc1 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -69,7 +69,7 @@ jobs: - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v4 with: name: python-wheels path: ./wheelhouse/*.whl From 91f0ae9650100449fc55ffeb588b8fdf0a8e0d8b Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Wed, 4 Sep 2024 14:55:43 -0700 Subject: [PATCH 09/32] Bump up to cibuildwheel-2.20.0 since we are at it --- .github/workflows/release_wheels.yml | 2 +- .github/workflows/testing_wheels.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index c1b05a23..3d753e09 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -53,7 +53,7 @@ jobs: python-version: '3.11' - name: Install cibuildwheel and twine - run: python -m pip install cibuildwheel==2.16.2 + run: python -m pip install cibuildwheel==2.20.0 - name: Install requirements run: python -m pip install -r requirements.txt diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 07cebdc1..574e1254 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -58,7 +58,7 @@ jobs: python-version: '3.11' - name: Install cibuildwheel and twine - run: python -m pip install cibuildwheel==2.16.2 + run: python -m pip install cibuildwheel==2.20.0 - name: Install requirements run: python -m pip install -r requirements.txt From 09feb703914482edeeb855f51cae7e5d0cfd54ce Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Wed, 4 Sep 2024 23:09:37 -0700 Subject: [PATCH 10/32] Stop testing wheels for Python 3.8 It is nearing its end-of-life. --- .github/workflows/release_wheels.yml | 8 ++++---- .github/workflows/testing_wheels.yml | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 3d753e09..a37b33c0 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -15,22 +15,22 @@ jobs: - os: macos-12 # x86_64 name: mac cibw: - build: "cp38* cp39* cp310* cp311* cp312*" + build: "cp39* cp310* cp311* cp312*" - os: macos-13-large # Apple Silicon name: mac_arm64 cibw: - build: "cp38* cp39* cp310* cp311* cp312*" + build: "cp39* cp310* cp311* cp312*" - os: ubuntu-20.04 name: manylinux2014 cibw: arch: x86_64 - build: "cp38* cp39* cp310* cp311* cp312*" + build: "cp39* cp310* cp311* cp312*" manylinux_image: manylinux2014 - os: windows-2019 name: win_amd64 architecture: x64 cibw: - build: "cp38-win_amd64 cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" + build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 574e1254..913da7d0 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -20,22 +20,22 @@ jobs: - os: macos-12 # x86_64 name: mac cibw: - build: "cp38* cp39* cp310* cp311* cp312*" + build: "cp39* cp310* cp311* cp312*" - os: macos-13-large # Apple Silicon name: mac_arm64 cibw: - build: "cp38* cp39* cp310* cp311* cp312*" + build: "cp39* cp310* cp311* cp312*" - os: ubuntu-20.04 name: manylinux2014 cibw: arch: x86_64 - build: "cp38* cp39* cp310* cp311* cp312*" + build: "cp39* cp310* cp311* cp312*" manylinux_image: manylinux2014 - os: windows-2019 name: win_amd64 architecture: x64 cibw: - build: "cp38-win_amd64 cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" + build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" From 2b9f1e0cab3722cb026397fe78925bcc30f223c6 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 5 Sep 2024 18:20:01 -0700 Subject: [PATCH 11/32] REVERT ME - temporarily skip CI jobs that work fine --- .github/workflows/bazeltest.yml | 3 ++- .github/workflows/dockertest.yml | 3 ++- .github/workflows/release_wheels.yml | 13 +++++++------ 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/.github/workflows/bazeltest.yml b/.github/workflows/bazeltest.yml index 495cb1ef..abbafa10 100644 --- a/.github/workflows/bazeltest.yml +++ b/.github/workflows/bazeltest.yml @@ -6,7 +6,8 @@ on: branches: - master - pull_request: + # TODO(pavoljuhas) - uncomment below + # pull_request: jobs: # Run tests with Bazel v5.3.0. diff --git a/.github/workflows/dockertest.yml b/.github/workflows/dockertest.yml index 4f0750d7..7263beab 100644 --- a/.github/workflows/dockertest.yml +++ b/.github/workflows/dockertest.yml @@ -7,7 +7,8 @@ on: - master # Run tests for any PRs. - pull_request: + # TODO(pavoljuhas) - uncomment below + # pull_request: jobs: # Run tests. diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index a37b33c0..a4692339 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -20,12 +20,13 @@ jobs: name: mac_arm64 cibw: build: "cp39* cp310* cp311* cp312*" - - os: ubuntu-20.04 - name: manylinux2014 - cibw: - arch: x86_64 - build: "cp39* cp310* cp311* cp312*" - manylinux_image: manylinux2014 + # TODO(pavoljuhas) - uncomment below + # - os: ubuntu-20.04 + # name: manylinux2014 + # cibw: + # arch: x86_64 + # build: "cp39* cp310* cp311* cp312*" + # manylinux_image: manylinux2014 - os: windows-2019 name: win_amd64 architecture: x64 From 69a6c1d2dbc13a559a52c18c3923e3c6ea210467 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 5 Sep 2024 18:22:17 -0700 Subject: [PATCH 12/32] Show environment variables --- .github/workflows/release_wheels.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index a4692339..d8229e34 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -62,6 +62,9 @@ jobs: - name: Run C++ tests run: bash build_tools/test_libs.sh + - name: Show environment variables + run: env + - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse From e447d1a076a6cf9037ae4da5fb7d2341a534cb11 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 5 Sep 2024 18:45:17 -0700 Subject: [PATCH 13/32] Show environment variables for real --- .github/workflows/testing_wheels.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 913da7d0..a8e39a7b 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -66,6 +66,9 @@ jobs: - name: Run C++ tests run: bash build_tools/test_libs.sh + - name: Show environment variables + run: env + - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse From cd04853d1fc98407dcc83c90254dad0c2737cdf8 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 5 Sep 2024 19:03:58 -0700 Subject: [PATCH 14/32] Try if macos-12 will build with the suggested MACOSX_DEPLOYMENT_TARGET --- .github/workflows/release_wheels.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index d8229e34..0f8248e5 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -33,6 +33,7 @@ jobs: cibw: build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: + MACOSX_DEPLOYMENT_TARGET: "12.0" CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" From 1d47b3443ad87208d9b0eabe35dbededc884263a Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 5 Sep 2024 19:23:36 -0700 Subject: [PATCH 15/32] ugh put that MACOSX_DEPLOYMENT_TARGET in a tested workflow --- .github/workflows/testing_wheels.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index a8e39a7b..70697647 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -37,6 +37,7 @@ jobs: cibw: build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: + MACOSX_DEPLOYMENT_TARGET: "12.0" CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" From f3251e42f114b569e7c18994f84c412dbe3ef2ba Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 5 Sep 2024 19:53:00 -0700 Subject: [PATCH 16/32] Downgrade to download-artifact@v3 download-artifact@v4 requires some changes per https://github.com/actions/download-artifact/blob/main/docs/MIGRATION.md --- .github/workflows/release_wheels.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 0f8248e5..7245749a 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -79,7 +79,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Download build artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 with: name: python-wheels path: dist/ From 19b0b128fd203186600208b40a94f767cbb33ea9 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 5 Sep 2024 19:56:08 -0700 Subject: [PATCH 17/32] Let us try to install libunwind on its own rather than with llvm --- .github/workflows/testing_wheels.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 70697647..fa6b7616 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -37,12 +37,11 @@ jobs: cibw: build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: - MACOSX_DEPLOYMENT_TARGET: "12.0" CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm && brew link --overwrite python@3.11 && brew link --force libomp" + CIBW_BEFORE_BUILD_MACOS: "brew install libomp libunwind && brew link --overwrite python@3.11 && brew link --force libomp && brew link --force libunwind" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" From b6f6cf19e965308a341e9cfea9890cc667dc832f Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 5 Sep 2024 21:10:16 -0700 Subject: [PATCH 18/32] Revert "Let us try to install libunwind on its own rather than with llvm" This reverts commit 19b0b128fd203186600208b40a94f767cbb33ea9. --- .github/workflows/testing_wheels.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index fa6b7616..70697647 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -37,11 +37,12 @@ jobs: cibw: build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: + MACOSX_DEPLOYMENT_TARGET: "12.0" CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: "brew install libomp libunwind && brew link --overwrite python@3.11 && brew link --force libomp && brew link --force libunwind" + CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm && brew link --overwrite python@3.11 && brew link --force libomp" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" From 4d5a47f70787ca16862ae0293fc169154eb3d7db Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 5 Sep 2024 23:54:41 -0700 Subject: [PATCH 19/32] Let us try if llvm@12 would do the job --- .github/workflows/release_wheels.yml | 2 +- .github/workflows/testing_wheels.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 7245749a..52031ad0 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -38,7 +38,7 @@ jobs: CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm && brew link --overwrite python@3.11 && brew link --force libomp" + CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@12 && brew link --overwrite python@3.11 && brew link --force libomp" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 70697647..2007baaf 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -42,7 +42,7 @@ jobs: CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm && brew link --overwrite python@3.11 && brew link --force libomp" + CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@12 && brew link --overwrite python@3.11 && brew link --force libomp" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" From 8d6157026ba6f239f3d4e379605804496db56064 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Fri, 6 Sep 2024 10:02:10 -0700 Subject: [PATCH 20/32] And how about llvm@11? --- .github/workflows/release_wheels.yml | 2 +- .github/workflows/testing_wheels.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 52031ad0..4c441364 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -38,7 +38,7 @@ jobs: CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@12 && brew link --overwrite python@3.11 && brew link --force libomp" + CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@11 && brew link --overwrite python@3.11 && brew link --force libomp" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 2007baaf..b8369988 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -42,7 +42,7 @@ jobs: CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@12 && brew link --overwrite python@3.11 && brew link --force libomp" + CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@11 && brew link --overwrite python@3.11 && brew link --force libomp" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" From af8c6130151bdeb2f9298d3c563ea80919bd2dd8 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Fri, 6 Sep 2024 11:32:28 -0700 Subject: [PATCH 21/32] Revert "And how about llvm@11?" This reverts commit 8d6157026ba6f239f3d4e379605804496db56064. --- .github/workflows/release_wheels.yml | 2 +- .github/workflows/testing_wheels.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 4c441364..52031ad0 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -38,7 +38,7 @@ jobs: CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@11 && brew link --overwrite python@3.11 && brew link --force libomp" + CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@12 && brew link --overwrite python@3.11 && brew link --force libomp" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index b8369988..2007baaf 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -42,7 +42,7 @@ jobs: CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@11 && brew link --overwrite python@3.11 && brew link --force libomp" + CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@12 && brew link --overwrite python@3.11 && brew link --force libomp" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" From 5e17b68e2a2e677723762923b75ec89cb6c14a21 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Fri, 6 Sep 2024 11:36:39 -0700 Subject: [PATCH 22/32] Try universal MACOSX_DEPLOYMENT_TARGET=13 --- .github/workflows/release_wheels.yml | 2 +- .github/workflows/testing_wheels.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 52031ad0..6d675d13 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -33,7 +33,7 @@ jobs: cibw: build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: - MACOSX_DEPLOYMENT_TARGET: "12.0" + MACOSX_DEPLOYMENT_TARGET: "13.0" CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 2007baaf..14fa1e7b 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -37,7 +37,7 @@ jobs: cibw: build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: - MACOSX_DEPLOYMENT_TARGET: "12.0" + MACOSX_DEPLOYMENT_TARGET: "13.0" CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" From 2e4d98b9092c412ef4620cc0c3cf7e77b14e7a07 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 12 Sep 2024 17:05:19 -0700 Subject: [PATCH 23/32] Setup MACOSX_DEPLOYMENT_TARGET per mac version of the job --- .github/workflows/testing_wheels.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 14fa1e7b..ebfe8c10 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -19,10 +19,14 @@ jobs: include: - os: macos-12 # x86_64 name: mac + env: + MACOSX_DEPLOYMENT_TARGET: "12.0" cibw: build: "cp39* cp310* cp311* cp312*" - os: macos-13-large # Apple Silicon name: mac_arm64 + env: + MACOSX_DEPLOYMENT_TARGET: "13.0" cibw: build: "cp39* cp310* cp311* cp312*" - os: ubuntu-20.04 @@ -37,7 +41,6 @@ jobs: cibw: build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: - MACOSX_DEPLOYMENT_TARGET: "13.0" CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" From c8c0601133c010f041417632e1d39a0d13952a93 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 12 Sep 2024 17:18:55 -0700 Subject: [PATCH 24/32] Set MACOSX_DEPLOYMENT_TARGET environment variable for real --- .github/workflows/testing_wheels.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index ebfe8c10..5f0a0783 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -20,13 +20,13 @@ jobs: - os: macos-12 # x86_64 name: mac env: - MACOSX_DEPLOYMENT_TARGET: "12.0" + macosx_deployment_target: "12.0" cibw: build: "cp39* cp310* cp311* cp312*" - os: macos-13-large # Apple Silicon name: mac_arm64 env: - MACOSX_DEPLOYMENT_TARGET: "13.0" + macosx_deployment_target: "13.0" cibw: build: "cp39* cp310* cp311* cp312*" - os: ubuntu-20.04 @@ -41,6 +41,7 @@ jobs: cibw: build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: + MACOSX_DEPLOYMENT_TARGET: "${{ matrix.env.macosx_deployment_target }}" CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" From e06d6da4d34463987e90a0e2a72d759ea6fa01d0 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 12 Sep 2024 18:24:21 -0700 Subject: [PATCH 25/32] Use unique names in upload-artifact@v4 Ref: https://github.com/actions/upload-artifact/blob/main/docs/MIGRATION.md --- .github/workflows/testing_wheels.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 5f0a0783..dd5def9b 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -79,5 +79,5 @@ jobs: - uses: actions/upload-artifact@v4 with: - name: python-wheels + name: python-wheels-${{ matrix.name }} path: ./wheelhouse/*.whl From 693f77825d73c76e200dca30d1bf62d090e9ee56 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Thu, 12 Sep 2024 19:23:20 -0700 Subject: [PATCH 26/32] Revert "REVERT ME - temporarily skip CI jobs that work fine" This reverts commit 2b9f1e0cab3722cb026397fe78925bcc30f223c6. --- .github/workflows/bazeltest.yml | 3 +-- .github/workflows/dockertest.yml | 3 +-- .github/workflows/release_wheels.yml | 13 ++++++------- 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/.github/workflows/bazeltest.yml b/.github/workflows/bazeltest.yml index abbafa10..495cb1ef 100644 --- a/.github/workflows/bazeltest.yml +++ b/.github/workflows/bazeltest.yml @@ -6,8 +6,7 @@ on: branches: - master - # TODO(pavoljuhas) - uncomment below - # pull_request: + pull_request: jobs: # Run tests with Bazel v5.3.0. diff --git a/.github/workflows/dockertest.yml b/.github/workflows/dockertest.yml index 7263beab..4f0750d7 100644 --- a/.github/workflows/dockertest.yml +++ b/.github/workflows/dockertest.yml @@ -7,8 +7,7 @@ on: - master # Run tests for any PRs. - # TODO(pavoljuhas) - uncomment below - # pull_request: + pull_request: jobs: # Run tests. diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 6d675d13..fdfd420d 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -20,13 +20,12 @@ jobs: name: mac_arm64 cibw: build: "cp39* cp310* cp311* cp312*" - # TODO(pavoljuhas) - uncomment below - # - os: ubuntu-20.04 - # name: manylinux2014 - # cibw: - # arch: x86_64 - # build: "cp39* cp310* cp311* cp312*" - # manylinux_image: manylinux2014 + - os: ubuntu-20.04 + name: manylinux2014 + cibw: + arch: x86_64 + build: "cp39* cp310* cp311* cp312*" + manylinux_image: manylinux2014 - os: windows-2019 name: win_amd64 architecture: x64 From d40571a5e5a7680c3f018b75f27c036396030c5d Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Fri, 13 Sep 2024 01:06:45 -0700 Subject: [PATCH 27/32] Sync release_wheels workflow with testing_wheels --- .github/workflows/release_wheels.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index fdfd420d..bc8ce896 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -14,10 +14,14 @@ jobs: include: - os: macos-12 # x86_64 name: mac + env: + macosx_deployment_target: "12.0" cibw: build: "cp39* cp310* cp311* cp312*" - os: macos-13-large # Apple Silicon name: mac_arm64 + env: + macosx_deployment_target: "13.0" cibw: build: "cp39* cp310* cp311* cp312*" - os: ubuntu-20.04 @@ -32,7 +36,7 @@ jobs: cibw: build: "cp39-win_amd64 cp310-win_amd64 cp311-win_amd64 cp312-win_amd64" env: - MACOSX_DEPLOYMENT_TARGET: "13.0" + MACOSX_DEPLOYMENT_TARGET: "${{ matrix.env.macosx_deployment_target }}" CIBW_BUILD: "${{ matrix.cibw.build || '*' }}" CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" @@ -42,7 +46,7 @@ jobs: # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" # due to package and module name conflict have to temporarily move it away to run tests - CIBW_BEFORE_TEST: mv {package}/qsimcirq /tmp + CIBW_BEFORE_TEST: "mv {package}/qsimcirq /tmp" CIBW_TEST_EXTRAS: "dev" CIBW_TEST_COMMAND: "pytest {package}/qsimcirq_tests/qsimcirq_test.py && mv /tmp/qsimcirq {package}" steps: @@ -70,7 +74,7 @@ jobs: - uses: actions/upload-artifact@v4 with: - name: python-wheels + name: python-wheels-${{ matrix.name }} path: ./wheelhouse/*.whl release-wheels: name: Publish all wheels From 2c93d859a3f4cef094e4e3ac3c98df20d9f622bd Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Fri, 13 Sep 2024 01:08:50 -0700 Subject: [PATCH 28/32] Bump up to actions/download-artifact@v4 Handle multiple uploads per https://github.com/actions/upload-artifact/blob/main/docs/MIGRATION.md --- .github/workflows/release_wheels.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index bc8ce896..afa3fd87 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -82,10 +82,11 @@ jobs: runs-on: ubuntu-latest steps: - name: Download build artifacts - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: - name: python-wheels path: dist/ + pattern: python-wheels-* + merge-multiple: true - name: Publish wheels uses: pypa/gh-action-pypi-publish@release/v1 with: From f0bddf1883a41032e9a87107bd16ab4538fd481a Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Sat, 14 Sep 2024 00:34:04 -0700 Subject: [PATCH 29/32] Disable CIBW_BEFORE_BUILD_MACOS Per GHA annotations all brew libraries are already installed. --- .github/workflows/release_wheels.yml | 2 +- .github/workflows/testing_wheels.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index afa3fd87..6044b210 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -41,7 +41,7 @@ jobs: CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@12 && brew link --overwrite python@3.11 && brew link --force libomp" + CIBW_BEFORE_BUILD_MACOS: ": no action" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index dd5def9b..4ad2c0c4 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -46,7 +46,7 @@ jobs: CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@12 && brew link --overwrite python@3.11 && brew link --force libomp" + CIBW_BEFORE_BUILD_MACOS: ": no action" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" From 712c37dfdbb408dbf18c25e59767207dd5412cb7 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Sat, 14 Sep 2024 01:25:36 -0700 Subject: [PATCH 30/32] Revert "Disable CIBW_BEFORE_BUILD_MACOS" This reverts commit f0bddf1883a41032e9a87107bd16ab4538fd481a. --- .github/workflows/release_wheels.yml | 2 +- .github/workflows/testing_wheels.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 6044b210..afa3fd87 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -41,7 +41,7 @@ jobs: CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: ": no action" + CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@12 && brew link --overwrite python@3.11 && brew link --force libomp" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 4ad2c0c4..dd5def9b 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -46,7 +46,7 @@ jobs: CIBW_SKIP: "*musllinux*" CIBW_ARCHS: "${{ matrix.cibw.arch || 'auto' }}" CIBW_MANYLINUX_X86_64_IMAGE: "${{ matrix.cibw.manylinux_image }}" - CIBW_BEFORE_BUILD_MACOS: ": no action" + CIBW_BEFORE_BUILD_MACOS: "brew install libomp llvm@12 && brew link --overwrite python@3.11 && brew link --force libomp" CIBW_REPAIR_WHEEL_COMMAND_MACOS: "delocate-listdeps {wheel} && delocate-wheel --verbose --require-archs {delocate_archs} -w {dest_dir} {wheel}" # to install latest delocate package CIBW_DEPENDENCY_VERSIONS: "latest" From 062bea5cb24a28996f07d6a2b8d31f2b40081a54 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Sat, 14 Sep 2024 01:29:08 -0700 Subject: [PATCH 31/32] Remove temporary printout of environment variables --- .github/workflows/release_wheels.yml | 3 --- .github/workflows/testing_wheels.yml | 3 --- 2 files changed, 6 deletions(-) diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index afa3fd87..94d03cf9 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -66,9 +66,6 @@ jobs: - name: Run C++ tests run: bash build_tools/test_libs.sh - - name: Show environment variables - run: env - - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index dd5def9b..97f1da51 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -71,9 +71,6 @@ jobs: - name: Run C++ tests run: bash build_tools/test_libs.sh - - name: Show environment variables - run: env - - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse From 2cc072c7025b611db98056fdf2639aefa3b7f9a1 Mon Sep 17 00:00:00 2001 From: Pavol Juhas Date: Sat, 14 Sep 2024 15:14:40 -0700 Subject: [PATCH 32/32] CI - update linux runners to ubuntu-22 or ubuntu-latest Run test-mem job on ubuntu-20 for it for some reason fails on ubuntu-22. --- .github/workflows/cirq_compatibility.yml | 2 +- .github/workflows/release_wheels.yml | 2 +- .github/workflows/testing_wheels.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cirq_compatibility.yml b/.github/workflows/cirq_compatibility.yml index 1aa9f208..626cd82e 100644 --- a/.github/workflows/cirq_compatibility.yml +++ b/.github/workflows/cirq_compatibility.yml @@ -7,7 +7,7 @@ on: jobs: consistency: name: Nightly Compatibility - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 diff --git a/.github/workflows/release_wheels.yml b/.github/workflows/release_wheels.yml index 94d03cf9..094f6086 100644 --- a/.github/workflows/release_wheels.yml +++ b/.github/workflows/release_wheels.yml @@ -24,7 +24,7 @@ jobs: macosx_deployment_target: "13.0" cibw: build: "cp39* cp310* cp311* cp312*" - - os: ubuntu-20.04 + - os: ubuntu-22.04 name: manylinux2014 cibw: arch: x86_64 diff --git a/.github/workflows/testing_wheels.yml b/.github/workflows/testing_wheels.yml index 97f1da51..a67b8556 100644 --- a/.github/workflows/testing_wheels.yml +++ b/.github/workflows/testing_wheels.yml @@ -29,7 +29,7 @@ jobs: macosx_deployment_target: "13.0" cibw: build: "cp39* cp310* cp311* cp312*" - - os: ubuntu-20.04 + - os: ubuntu-22.04 name: manylinux2014 cibw: arch: x86_64