Skip to content

tests: add Python 3.15 testing#17585

Draft
parthea wants to merge 32 commits into
mainfrom
chore-update-librarian-2026-06-26
Draft

tests: add Python 3.15 testing#17585
parthea wants to merge 32 commits into
mainfrom
chore-update-librarian-2026-06-26

Conversation

@parthea

@parthea parthea commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

chore: update librarian to v0.22.1-0.20260626155540-a0930f4b0f52

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request centralizes mypy configurations by removing individual package-level mypy.ini files and updating nox configurations to reference a centralized file. It also adds support for Python 3.15 across multiple packages, updating test matrices, constraints, and preview versions, and adds assertions to unit tests for REST pagers. Feedback is provided for the access-context-manager and audit-log packages, where dynamically resolving DEFAULT_PYTHON_VERSION to the last element of UNIT_TEST_PYTHON_VERSIONS incorrectly sets it to the preview Python 3.15 version, potentially causing default sessions to fail.

Comment thread packages/google-cloud-access-context-manager/noxfile.py
Comment thread packages/google-cloud-audit-log/noxfile.py
@parthea parthea force-pushed the chore-update-librarian-2026-06-26 branch from ab09d55 to 7174f0d Compare June 26, 2026 19:52
@parthea

parthea commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

For bigframes

Collecting pyproj>=3.5.0 (from geopandas>=0.12.2->bigframes==2.44.0)
  Using cached pyproj-3.7.2.tar.gz (226 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'error'
  error: subprocess-exited-with-error
  
  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [1 lines of output]
      proj executable not found. Please set the PROJ_DIR variable. For more information see: https://pyproj4.github.io/pyproj/stable/installation.html
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed to build 'pyproj' when getting requirements to build wheel
nox > Session unit-3.15(test_extra=False) failed.

See potential workaround from Gemini. I'll skip bigframes for now and we can follow up on it separately.

The pyproj package depends on a C-library called PROJ (a coordinate transformation library). Because Python 3.15 is so new, pyproj does not have a pre-compiled binary wheel for it yet.  When pip drops back to installing it from source, the compilation instantly crashes because the Ubuntu runner does not have the underlying system-level libproj-dev binaries installed.  To fix this, you need to install libproj-dev via apt only when running on Python 3.15.

@parthea parthea self-assigned this Jun 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant