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
4 changes: 0 additions & 4 deletions .github/workflows/gapic-generator-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,6 @@ env:
PRERELEASE_PYTHON: 3.15
ALL_PYTHON: "['3.10', '3.11', '3.12', '3.13', '3.14', '3.15']"
TRIMMED_PYTHON: "['3.10', '3.14', '3.15']"
# Workaround: Allows libcst to compile on Python 3.15+ while PyO3 catches up
# Can be removed once libcst releases a version with native Python 3.15 wheels
# Follow https://github.com/Instagram/LibCST/issues/1445 for updates.
PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1"

jobs:
# Check if the gapic-generator was changed. If so, execute specialized tests
Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/import-profiler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -89,8 +89,6 @@ jobs:
TARGET_BRANCH: ${{ github.base_ref || github.event.merge_group.base_ref }}
TEST_TYPE: import_profile
PY_VERSION: "3.15"
# Workaround: Allows libcst to compile on Python 3.15+ while PyO3 catches up
PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1"
PACKAGE_LIST: ${{ matrix.package_shard.packages }}
run: |
ci/run_conditional_tests.sh
Expand Down
8 changes: 5 additions & 3 deletions .github/workflows/prerelease-deps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,6 @@ env:
PACKAGE_DIRS: packages
NOX_DEFAULT_VENV_BACKEND: "virtualenv"
UV_PRERELEASE: "allow"
# Workaround: Allows libcst/Rust extensions to compile on Python 3.15+ while PyO3 catches up
PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1"

jobs:
prerelease:
Expand Down Expand Up @@ -178,7 +176,11 @@ jobs:
} >> "$GITHUB_OUTPUT"

- name: Create issue on failure
if: ${{ steps.run-tests.outcome == 'failure' && github.repository == 'googleapis/google-cloud-python' }}
# Only file an issue from the nightly schedule or a manual dispatch, never from a
# pull request. PRs that touch `ci/**` or this workflow trigger the check for
# validation purposes only; filing a `priority: p1` issue from them would duplicate
# the nightly report. The job summary written above still surfaces PR failures.
if: ${{ steps.run-tests.outcome == 'failure' && github.event_name != 'pull_request' && github.repository == 'googleapis/google-cloud-python' }}
uses: googleapis/librarian/.github/actions/create-issue-on-failure@bb2ee61752bd0f5387195b54c509e4d01a52b41d
with:
title: "prerelease_deps check failed"
Expand Down
25 changes: 0 additions & 25 deletions .github/workflows/unittest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -133,31 +133,6 @@ jobs:
- name: Install nox and nox-uv
run: |
uv pip install --system nox nox-uv
# Caches local wheels for Python 3.15+ to avoid repeatedly downloading or building heavy libraries.
# Follow https://github.com/grpc/grpc/issues/41010 for updates.
- name: Cache Built Python 3.15 Wheels
if: matrix.python == '3.15'
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
path: .uv-wheel-cache
key: ${{ runner.os }}-uv-wheels-3.15-${{ hashFiles('packages/**/testing/constraints*.txt') }}
restore-keys: |
${{ runner.os }}-uv-wheels-3.15-
# TODO: Remove this step once official Python 3.15 wheels for grpcio are published to PyPI.
# See https://github.com/grpc/grpc/issues/41010#issuecomment-4848264910 for details.
- name: Install grpcio wheel for Python 3.15
if: matrix.python == '3.15'
run: |
mkdir -p .uv-wheel-cache
WHEEL_FILE=".uv-wheel-cache/grpcio-1.83.0.dev0-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.whl"
if [ ! -f "$WHEEL_FILE" ]; then
curl -L "https://packages.grpc.io/archive/2026/06/5ccdab32010f762634e1082d19be53cf60458456-b37e49c7-5e62-4cbe-870a-c599bb907b04/python/grpcio/grpcio-1.83.0.dev0-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.whl" -o "$WHEEL_FILE"
fi
echo "d7706633cd5d97a8b8d3c6ed36c5940722a9b5cbb47f0d10bc433ee27af36ff0 $WHEEL_FILE" | sha256sum -c
uv pip install --system "$WHEEL_FILE"
echo "UV_FIND_LINKS=${{ github.workspace }}/.uv-wheel-cache" >> $GITHUB_ENV
echo "UV_CACHE_DIR=${{ github.workspace }}/.uv-wheel-cache" >> $GITHUB_ENV
echo "UV_PRERELEASE=allow" >> $GITHUB_ENV
- name: Run unit tests for ${{ matrix.package_shard.description }}
env:
BUILD_TYPE: presubmit
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -609,11 +609,6 @@ replacements:
def unit(session, protobuf_implementation):
# Install all test dependencies, then install this package in-place.

# TODO(https://github.com/googleapis/google-cloud-python/issues/17741):
# Remove once `google-crc32c` wheels are published for 3.15
if session.python == "3.15":
session.skip("Skipping 3.15 until wheels are available for google-crc32c.")

constraints_path = str(
CURRENT_DIRECTORY / "testing" / f"constraints-{session.python}.txt"
)
Expand Down
1 change: 1 addition & 0 deletions packages/django-google-spanner/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Topic :: Utilities",
"Framework :: Django",
"Framework :: Django :: 5.2",
Expand Down
1 change: 1 addition & 0 deletions packages/google-api-core/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ classifiers = [
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Operating System :: OS Independent",
"Topic :: Internet",
]
Expand Down
1 change: 1 addition & 0 deletions packages/google-auth-httplib2/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
Expand Down
1 change: 1 addition & 0 deletions packages/google-auth-oauthlib/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
Expand Down
1 change: 1 addition & 0 deletions packages/google-auth/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,7 @@
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
Expand Down
5 changes: 0 additions & 5 deletions packages/google-cloud-bigtable/noxfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -249,11 +249,6 @@ def install_unittest_dependencies(session, *constraints):
def unit(session, protobuf_implementation):
# Install all test dependencies, then install this package in-place.

# TODO(https://github.com/googleapis/google-cloud-python/issues/17741):
# Remove once `google-crc32c` wheels are published for 3.15
if session.python == "3.15":
session.skip("Skipping 3.15 until wheels are available for google-crc32c.")

constraints_path = str(
CURRENT_DIRECTORY / "testing" / f"constraints-{session.python}.txt"
)
Expand Down
1 change: 1 addition & 0 deletions packages/google-cloud-core/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Operating System :: OS Independent",
"Topic :: Internet",
],
Expand Down
1 change: 1 addition & 0 deletions packages/google-cloud-dns/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Operating System :: OS Independent",
"Topic :: Internet",
],
Expand Down
3 changes: 2 additions & 1 deletion packages/google-cloud-documentai-toolbox/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,8 @@
"pandas[performance,gcp]>=2.0.0, <3.0.0; python_version < '3.15'",
# pandas[performance] requires numba which does not have 3.15 support yet
"pandas[gcp]>=2.0.0, <3.0.0;python_version>='3.15'",
"pyarrow>=15.0.0, <23.0.0",
# pyarrow is transitive dependency; not accessed by the library directly
"pyarrow>=15.0.0",
Comment thread
daniel-sanche marked this conversation as resolved.
"tabulate>=0.9.0, <1.0.0",
"proto-plus>=1.26.1, <2.0.0",
"grpc-google-iam-v1>=0.14.2, <1.0.0",
Expand Down
1 change: 1 addition & 0 deletions packages/google-cloud-ndb/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ def main():
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Operating System :: OS Independent",
"Topic :: Internet",
],
Expand Down
1 change: 1 addition & 0 deletions packages/google-cloud-runtimeconfig/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Operating System :: OS Independent",
"Topic :: Internet",
],
Expand Down
1 change: 1 addition & 0 deletions packages/google-cloud-spanner-dbapi-driver/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Operating System :: OS Independent",
"Topic :: Database",
],
Expand Down
1 change: 1 addition & 0 deletions packages/google-cloud-testutils/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Topic :: Internet",
"Topic :: Software Development :: Libraries :: Python Modules",
],
Expand Down
1 change: 1 addition & 0 deletions packages/google-resumable-media/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@
'Programming Language :: Python :: 3.12',
'Programming Language :: Python :: 3.13',
'Programming Language :: Python :: 3.14',
'Programming Language :: Python :: 3.15',
'Topic :: Internet',
],
)
1 change: 1 addition & 0 deletions packages/proto-plus/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ classifiers = [
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Operating System :: OS Independent",
"Topic :: Software Development :: Code Generators",
"Topic :: Software Development :: Libraries :: Python Modules",
Expand Down
Loading