diff --git a/.github/workflows/ci_build_library.yaml b/.github/workflows/ci_build_library.yaml index d300a3e50..8d681ffbb 100644 --- a/.github/workflows/ci_build_library.yaml +++ b/.github/workflows/ci_build_library.yaml @@ -87,6 +87,7 @@ jobs: env: # Must use explicit test for true so it works when inputs.debug is null. use-verbose: ${{github.event.inputs.debug == true}} + PIP_CONSTRAINT: .github/workflows/pip-constraints.txt steps: - name: Check out a copy of the git repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 diff --git a/.github/workflows/ci_format_checks.yml b/.github/workflows/ci_format_checks.yml index 820a39a49..2b2455a16 100644 --- a/.github/workflows/ci_format_checks.yml +++ b/.github/workflows/ci_format_checks.yml @@ -55,6 +55,8 @@ jobs: needs: find-changes runs-on: ubuntu-24.04 timeout-minutes: 30 + env: + PIP_CONSTRAINT: .github/workflows/pip-constraints.txt steps: - name: Check out a copy of the git repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 diff --git a/.github/workflows/ci_hardware_options.yaml b/.github/workflows/ci_hardware_options.yaml index eaeef5f8f..58c2c2629 100644 --- a/.github/workflows/ci_hardware_options.yaml +++ b/.github/workflows/ci_hardware_options.yaml @@ -64,6 +64,7 @@ jobs: env: # Must use explicit test for true so it works when inputs.debug is null. use-verbose: ${{github.event.inputs.debug == true}} + PIP_CONSTRAINT: .github/workflows/pip-constraints.txt steps: - name: Check out a copy of the git repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 diff --git a/.github/workflows/ci_sanitizer_tests.yaml b/.github/workflows/ci_sanitizer_tests.yaml index 14f02a171..3ca68e826 100644 --- a/.github/workflows/ci_sanitizer_tests.yaml +++ b/.github/workflows/ci_sanitizer_tests.yaml @@ -62,6 +62,7 @@ jobs: env: # Must use explicit test for true so it works when inputs.debug is null. use-verbose: ${{github.event.inputs.debug == true}} + PIP_CONSTRAINT: .github/workflows/pip-constraints.txt steps: - name: Check out a copy of the git repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 diff --git a/.github/workflows/ci_tcmalloc_test.yaml b/.github/workflows/ci_tcmalloc_test.yaml index a8778dd7e..5dfdcdcfd 100644 --- a/.github/workflows/ci_tcmalloc_test.yaml +++ b/.github/workflows/ci_tcmalloc_test.yaml @@ -58,6 +58,7 @@ jobs: env: # Must use explicit test for true so it works when inputs.debug is null. use-verbose: ${{github.event.inputs.debug == true}} + PIP_CONSTRAINT: .github/workflows/pip-constraints.txt steps: - name: Check out a copy of the git repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 diff --git a/.github/workflows/cirq_compatibility.yml b/.github/workflows/cirq_compatibility.yml index 847d75008..f9023b170 100644 --- a/.github/workflows/cirq_compatibility.yml +++ b/.github/workflows/cirq_compatibility.yml @@ -38,6 +38,8 @@ jobs: name: Test Cirq compatibility runs-on: ubuntu-24.04 timeout-minutes: 30 + env: + PIP_CONSTRAINT: .github/workflows/pip-constraints.txt steps: - name: Check out a copy of the git repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 diff --git a/.github/workflows/pip-constraints.txt b/.github/workflows/pip-constraints.txt new file mode 100644 index 000000000..2bbd8bd8b --- /dev/null +++ b/.github/workflows/pip-constraints.txt @@ -0,0 +1,18 @@ +# Copyright 2025 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Pillow released an updated on 2025-07-01 and it broke installations +# on Ubuntu GitHub runners. +# TODO(mhucka) remove this after the problem is fixed. +pillow<11.3.0 diff --git a/.github/workflows/reusable_build_wheels.yaml b/.github/workflows/reusable_build_wheels.yaml index 4f3138121..b3b048f59 100644 --- a/.github/workflows/reusable_build_wheels.yaml +++ b/.github/workflows/reusable_build_wheels.yaml @@ -60,6 +60,8 @@ jobs: {os: macos-15, arch: arm64}, {os: windows-2025, arch: AMD64}, ] + env: + PIP_CONSTRAINT: .github/workflows/pip-constraints.txt steps: - name: Check out a copy of the git repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4