{{ message }}
feat(storage): add object contexts in Python GCS SDK#17039
Merged
Conversation
Implement object contexts feature parity with Go and Java SDKs. Allows users to attach custom key-value metadata payloads to objects and filter by them during list operations. - Define ObjectCustomContextPayload and ObjectContexts classes in blob.py. - Add 'contexts' property to Blob class and include it in _WRITABLE_FIELDS. - Update list_blobs in Client and Bucket to support 'filter_' parameter. - Implement gRPC conversion logic and update_mask generation in _grpc_conversions.py. - Add comprehensive unit tests. Co-authored-by: nidhiii-27 <224584462+nidhiii-27@users.noreply.github.com>
Contributor
Contributor
There was a problem hiding this comment.
Code Review
This pull request introduces support for object contexts in the Google Cloud Storage Python SDK, adding the ObjectContexts and ObjectCustomContextPayload classes and a contexts property to the Blob class. It also implements server-side filtering for list_blobs via a new filter_ parameter. Feedback focuses on improving the robustness of protobuf conversions by checking for field presence rather than truthiness, ensuring FieldMask generation for contexts replaces the entire map for consistency with other SDK fields, and hardening the custom context setter to handle None values.
- Improve gRPC conversion logic: use 'in' operator for field presence check and improve property mapping. - Refine update_mask generation logic. - Update tests to match new conversion logic. Co-authored-by: nidhiii-27 <224584462+nidhiii-27@users.noreply.github.com>
- Implement ObjectContexts and ObjectCustomContextPayload. - Add 'contexts' property to Blob. - Add 'filter_' parameter to list_blobs. - Add gRPC conversion for contexts and update_mask generation. - Fix unit tests to avoid ADC errors. - Format code with ruff. Co-authored-by: nidhiii-27 <224584462+nidhiii-27@users.noreply.github.com>
chandra-siri
requested changes
May 14, 2026
- Remove create_time and update_time from gRPC conversion. - Add system tests for Object Contexts in test_blob.py and test_zonal.py. - Format code with ruff. Co-authored-by: nidhiii-27 <224584462+nidhiii-27@users.noreply.github.com>
chandra-siri
requested changes
May 18, 2026
Contributor
This PR addresses remaining comments on PR #17039 by cleaning up constructors for ObjectContexts and ObjectCustomContextPayload, improving back-reference management, updating documentation, and expanding test coverage. Key changes: - `ObjectCustomContextPayload`: Removed `create_time` and `update_time` from `__init__` as they are output-only. Updated docstring. - `ObjectContexts`: - Moved back-reference logic into the initialization loop. - Updated `custom` setter to handle `None` and establish back-references for new elements. - Documentation: Added link to public docs for Object Contexts and fixed type annotation for `filter_` in `Bucket.list_blobs`. - Testing: - Updated unit tests in `test__grpc_conversions.py` for constructor changes. - Expanded system tests in `test_blob.py` and `test_bucket.py` to verify back-references and all context filter syntaxes. --- *PR created automatically by Jules for task [746690522954199067](https://jules.google.com/task/746690522954199067) started by @nidhiii-27* --------- Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> Co-authored-by: nidhiii-27 <224584462+nidhiii-27@users.noreply.github.com>
Removed create_time and update_time from ObjectCustomContextPayload instantiation in test.
chandra-siri
approved these changes
May 20, 2026
This was referenced May 26, 2026
chalmerlowe
pushed a commit
that referenced
this pull request
Jun 2, 2026
PR created by the Librarian CLI to initialize a release. Merging this PR will auto trigger a release. Librarian Version: v0.15.1-0.20260528141105-567c9bf1faa7 Language Image: us-central1-docker.pkg.dev/cloud-sdk-librarian-prod/images-prod/python-librarian-generator@sha256:234b9d1f2ddb057ed7ac6a38db0bf8163d839c65c6cf88ade52530cddebce59e <details><summary>db-dtypes: v1.7.0</summary> ## [v1.7.0](https://github.com/googleapis/google-cloud-python/compare/db-dtypes-v1.6.0...db-dtypes-v1.7.0) (2026-06-02) ### Features * support pandas 3.0 (#17177) ([2086b34d](https://github.com/googleapis/google-cloud-python/commit/2086b34d)) ### Bug Fixes * bump pyarrow from 13.0.0 to 14.0.1 in /packages/db-dtypes (#17182) ([49252da0](https://github.com/googleapis/google-cloud-python/commit/49252da0)) * Drop support for Python <= 3.9 (#16966) ([66988617](https://github.com/googleapis/google-cloud-python/commit/66988617)) </details> <details><summary>google-ads-admanager: v0.10.0</summary> ## [v0.10.0](https://github.com/googleapis/google-cloud-python/compare/google-ads-admanager-v0.9.0...google-ads-admanager-v0.10.0) (2026-06-02) ### Features * update API sources and regenerate (#16998) ([cef659d8](https://github.com/googleapis/google-cloud-python/commit/cef659d8)) </details> <details><summary>google-ads-datamanager: v0.9.0</summary> ## [v0.9.0](https://github.com/googleapis/google-cloud-python/compare/google-ads-datamanager-v0.8.0...google-ads-datamanager-v0.9.0) (2026-06-02) </details> <details><summary>google-ads-marketingplatform-admin: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-ads-marketingplatform-admin-v0.5.0...google-ads-marketingplatform-admin-v0.6.0) (2026-06-02) </details> <details><summary>google-ai-generativelanguage: v0.12.0</summary> ## [v0.12.0](https://github.com/googleapis/google-cloud-python/compare/google-ai-generativelanguage-v0.11.0...google-ai-generativelanguage-v0.12.0) (2026-06-02) </details> <details><summary>google-analytics-admin: v0.30.0</summary> ## [v0.30.0](https://github.com/googleapis/google-cloud-python/compare/google-analytics-admin-v0.29.0...google-analytics-admin-v0.30.0) (2026-06-02) </details> <details><summary>google-analytics-data: v0.23.0</summary> ## [v0.23.0](https://github.com/googleapis/google-cloud-python/compare/google-analytics-data-v0.22.0...google-analytics-data-v0.23.0) (2026-06-02) </details> <details><summary>google-api-core: v2.31.0</summary> ## [v2.31.0](https://github.com/googleapis/google-cloud-python/compare/google-api-core-v2.30.3...google-api-core-v2.31.0) (2026-06-02) ### Bug Fixes * bump protobuf from 4.25.8 to 5.29.6 (#17021) ([8f52e9ad](https://github.com/googleapis/google-cloud-python/commit/8f52e9ad)) * drop support for Python 3.9 (#16980) ([e5ed4720](https://github.com/googleapis/google-cloud-python/commit/e5ed4720)) ### Documentation * exclude Response.is_permanent_redirect from API docs (<a href="https://redirect.github.com/psf/requests/issues/7244">#7244</a>)</li> <li><a href="https://github.com/psf/requests/commit/d568f47278492e630cc990a259047c67991d007a"><code>d568f47</code></a> ([b79b3ea0](https://github.com/googleapis/google-cloud-python/commit/b79b3ea0)) * clarify Quickstart POST example (<a href="https://redirect.github.com/psf/requests/issues/6960">#6960</a>)</li> <li>Additional commits viewable in <a href="https://github.com/psf/requests/compare/v2.25.0...v2.33.0">compare view</a></li> </ul> </details> <br /> ([b79b3ea0](https://github.com/googleapis/google-cloud-python/commit/b79b3ea0)) * fix FAQ grammar in httplib2 example</li> <li><a href="https://github.com/psf/requests/commit/774a0b837a194ee885d4fdd9ca947900cc3daf71"><code>774a0b8</code></a> ([b79b3ea0](https://github.com/googleapis/google-cloud-python/commit/b79b3ea0)) * same block as other sections</li> <li><a href="https://github.com/psf/requests/commit/9c72a41bec8597f948c9d8caa5dc3f12273b3303"><code>9c72a41</code></a> Bump github/codeql-action from 4.33.0 to 4.34.1</li> <li><a href="https://github.com/psf/requests/commit/ebf71906798ec82f34e07d3168f8b8aecaf8a3be"><code>ebf7190</code></a> Bump github/codeql-action from 4.32.0 to 4.33.0</li> <li><a href="https://github.com/psf/requests/commit/0e4ae38f0c93d4f92a96c774bd52c069d12a4798"><code>0e4ae38</code></a> ([b79b3ea0](https://github.com/googleapis/google-cloud-python/commit/b79b3ea0)) </details> <details><summary>google-apps-card: v0.7.0</summary> ## [v0.7.0](https://github.com/googleapis/google-cloud-python/compare/google-apps-card-v0.6.0...google-apps-card-v0.7.0) (2026-06-02) </details> <details><summary>google-apps-chat: v0.10.0</summary> ## [v0.10.0](https://github.com/googleapis/google-cloud-python/compare/google-apps-chat-v0.9.0...google-apps-chat-v0.10.0) (2026-06-02) </details> <details><summary>google-apps-events-subscriptions: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-apps-events-subscriptions-v0.5.0...google-apps-events-subscriptions-v0.6.0) (2026-06-02) </details> <details><summary>google-apps-meet: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-apps-meet-v0.4.0...google-apps-meet-v0.5.0) (2026-06-02) </details> <details><summary>google-apps-script-type: v0.8.0</summary> ## [v0.8.0](https://github.com/googleapis/google-cloud-python/compare/google-apps-script-type-v0.7.0...google-apps-script-type-v0.8.0) (2026-06-02) </details> <details><summary>google-area120-tables: v0.15.0</summary> ## [v0.15.0](https://github.com/googleapis/google-cloud-python/compare/google-area120-tables-v0.14.0...google-area120-tables-v0.15.0) (2026-06-02) </details> <details><summary>google-cloud-access-approval: v1.20.0</summary> ## [v1.20.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-access-approval-v1.19.0...google-cloud-access-approval-v1.20.0) (2026-06-02) </details> <details><summary>google-cloud-access-context-manager: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-access-context-manager-v0.5.0...google-cloud-access-context-manager-v0.6.0) (2026-06-02) ### Bug Fixes * update incorrect urls in setup.py to point at monorepo vs splitrepo (#17237) ([eaed04ba](https://github.com/googleapis/google-cloud-python/commit/eaed04ba)) </details> <details><summary>google-cloud-advisorynotifications: v0.7.0</summary> ## [v0.7.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-advisorynotifications-v0.6.0...google-cloud-advisorynotifications-v0.7.0) (2026-06-02) </details> <details><summary>google-cloud-alloydb: v0.10.0</summary> ## [v0.10.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-alloydb-v0.9.0...google-cloud-alloydb-v0.10.0) (2026-06-02) </details> <details><summary>google-cloud-alloydb-connectors: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-alloydb-connectors-v0.4.0...google-cloud-alloydb-connectors-v0.5.0) (2026-06-02) </details> <details><summary>google-cloud-api-gateway: v1.16.0</summary> ## [v1.16.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-api-gateway-v1.15.0...google-cloud-api-gateway-v1.16.0) (2026-06-02) </details> <details><summary>google-cloud-api-keys: v0.9.0</summary> ## [v0.9.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-api-keys-v0.8.0...google-cloud-api-keys-v0.9.0) (2026-06-02) </details> <details><summary>google-cloud-apigee-connect: v1.16.0</summary> ## [v1.16.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-apigee-connect-v1.15.0...google-cloud-apigee-connect-v1.16.0) (2026-06-02) </details> <details><summary>google-cloud-apigee-registry: v0.10.0</summary> ## [v0.10.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-apigee-registry-v0.9.0...google-cloud-apigee-registry-v0.10.0) (2026-06-02) </details> <details><summary>google-cloud-apihub: v0.7.0</summary> ## [v0.7.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-apihub-v0.6.0...google-cloud-apihub-v0.7.0) (2026-06-02) </details> <details><summary>google-cloud-apiregistry: v0.3.0</summary> ## [v0.3.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-apiregistry-v0.2.0...google-cloud-apiregistry-v0.3.0) (2026-06-02) </details> <details><summary>google-cloud-appengine-admin: v1.18.0</summary> ## [v1.18.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-appengine-admin-v1.17.0...google-cloud-appengine-admin-v1.18.0) (2026-06-02) </details> <details><summary>google-cloud-appengine-logging: v1.10.0</summary> ## [v1.10.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-appengine-logging-v1.9.0...google-cloud-appengine-logging-v1.10.0) (2026-06-02) </details> <details><summary>google-cloud-apphub: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-apphub-v0.4.0...google-cloud-apphub-v0.5.0) (2026-06-02) </details> <details><summary>google-cloud-appoptimize: v0.2.0</summary> ## [v0.2.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-appoptimize-v0.1.0...google-cloud-appoptimize-v0.2.0) (2026-06-02) </details> <details><summary>google-cloud-artifact-registry: v1.22.0</summary> ## [v1.22.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-artifact-registry-v1.21.0...google-cloud-artifact-registry-v1.22.0) (2026-06-02) </details> <details><summary>google-cloud-asset: v4.4.0</summary> ## [v4.4.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-asset-v4.3.0...google-cloud-asset-v4.4.0) (2026-06-02) ### Features * regenerate asset w/ dependencies using generator v1.32.0 (#17153) ([ac594a0d](https://github.com/googleapis/google-cloud-python/commit/ac594a0d)) </details> <details><summary>google-cloud-assured-workloads: v2.4.0</summary> ## [v2.4.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-assured-workloads-v2.3.0...google-cloud-assured-workloads-v2.4.0) (2026-06-02) </details> <details><summary>google-cloud-audit-log: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-audit-log-v0.5.0...google-cloud-audit-log-v0.6.0) (2026-06-02) ### Bug Fixes * update incorrect urls in setup.py to point at monorepo vs splitrepo (#17237) ([eaed04ba](https://github.com/googleapis/google-cloud-python/commit/eaed04ba)) </details> <details><summary>google-cloud-auditmanager: v0.3.0</summary> ## [v0.3.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-auditmanager-v0.2.0...google-cloud-auditmanager-v0.3.0) (2026-06-02) </details> <details><summary>google-cloud-automl: v2.20.0</summary> ## [v2.20.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-automl-v2.19.0...google-cloud-automl-v2.20.0) (2026-06-02) ### Features * regenerate automl using generator v1.32.0 (#17143) ([5084ef00](https://github.com/googleapis/google-cloud-python/commit/5084ef00)) </details> <details><summary>google-cloud-backupdr: v0.10.0</summary> ## [v0.10.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-backupdr-v0.9.0...google-cloud-backupdr-v0.10.0) (2026-06-02) </details> <details><summary>google-cloud-bare-metal-solution: v1.14.0</summary> ## [v1.14.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bare-metal-solution-v1.13.0...google-cloud-bare-metal-solution-v1.14.0) (2026-06-02) </details> <details><summary>google-cloud-batch: v0.22.0</summary> ## [v0.22.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-batch-v0.21.0...google-cloud-batch-v0.22.0) (2026-06-02) </details> <details><summary>google-cloud-beyondcorp-appconnections: v0.8.0</summary> ## [v0.8.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-beyondcorp-appconnections-v0.7.0...google-cloud-beyondcorp-appconnections-v0.8.0) (2026-06-02) </details> <details><summary>google-cloud-beyondcorp-appconnectors: v0.8.0</summary> ## [v0.8.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-beyondcorp-appconnectors-v0.7.0...google-cloud-beyondcorp-appconnectors-v0.8.0) (2026-06-02) </details> <details><summary>google-cloud-beyondcorp-appgateways: v0.8.0</summary> ## [v0.8.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-beyondcorp-appgateways-v0.7.0...google-cloud-beyondcorp-appgateways-v0.8.0) (2026-06-02) </details> <details><summary>google-cloud-beyondcorp-clientconnectorservices: v0.8.0</summary> ## [v0.8.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-beyondcorp-clientconnectorservices-v0.7.0...google-cloud-beyondcorp-clientconnectorservices-v0.8.0) (2026-06-02) </details> <details><summary>google-cloud-beyondcorp-clientgateways: v0.8.0</summary> ## [v0.8.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-beyondcorp-clientgateways-v0.7.0...google-cloud-beyondcorp-clientgateways-v0.8.0) (2026-06-02) </details> <details><summary>google-cloud-biglake: v0.4.0</summary> ## [v0.4.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-biglake-v0.3.0...google-cloud-biglake-v0.4.0) (2026-06-02) </details> <details><summary>google-cloud-biglake-hive: v0.3.0</summary> ## [v0.3.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-biglake-hive-v0.2.0...google-cloud-biglake-hive-v0.3.0) (2026-06-02) </details> <details><summary>google-cloud-bigquery-analyticshub: v0.9.0</summary> ## [v0.9.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bigquery-analyticshub-v0.8.0...google-cloud-bigquery-analyticshub-v0.9.0) (2026-06-02) </details> <details><summary>google-cloud-bigquery-biglake: v0.8.0</summary> ## [v0.8.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bigquery-biglake-v0.7.0...google-cloud-bigquery-biglake-v0.8.0) (2026-06-02) </details> <details><summary>google-cloud-bigquery-connection: v1.22.0</summary> ## [v1.22.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bigquery-connection-v1.21.0...google-cloud-bigquery-connection-v1.22.0) (2026-06-02) </details> <details><summary>google-cloud-bigquery-data-exchange: v0.9.0</summary> ## [v0.9.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bigquery-data-exchange-v0.8.0...google-cloud-bigquery-data-exchange-v0.9.0) (2026-06-02) </details> <details><summary>google-cloud-bigquery-datapolicies: v0.10.0</summary> ## [v0.10.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bigquery-datapolicies-v0.9.0...google-cloud-bigquery-datapolicies-v0.10.0) (2026-06-02) </details> <details><summary>google-cloud-bigquery-datatransfer: v3.23.0</summary> ## [v3.23.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bigquery-datatransfer-v3.22.0...google-cloud-bigquery-datatransfer-v3.23.0) (2026-06-02) </details> <details><summary>google-cloud-bigquery-logging: v1.10.0</summary> ## [v1.10.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bigquery-logging-v1.9.0...google-cloud-bigquery-logging-v1.10.0) (2026-06-02) </details> <details><summary>google-cloud-bigquery-migration: v0.15.0</summary> ## [v0.15.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bigquery-migration-v0.14.0...google-cloud-bigquery-migration-v0.15.0) (2026-06-02) </details> <details><summary>google-cloud-bigquery-reservation: v1.25.0</summary> ## [v1.25.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bigquery-reservation-v1.24.0...google-cloud-bigquery-reservation-v1.25.0) (2026-06-02) </details> <details><summary>google-cloud-bigquery-storage: v2.39.0</summary> ## [v2.39.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-bigquery-storage-v2.38.0...google-cloud-bigquery-storage-v2.39.0) (2026-06-02) </details> <details><summary>google-cloud-billing: v1.20.0</summary> ## [v1.20.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-billing-v1.19.0...google-cloud-billing-v1.20.0) (2026-06-02) </details> <details><summary>google-cloud-billing-budgets: v1.21.0</summary> ## [v1.21.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-billing-budgets-v1.20.0...google-cloud-billing-budgets-v1.21.0) (2026-06-02) </details> <details><summary>google-cloud-binary-authorization: v1.17.0</summary> ## [v1.17.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-binary-authorization-v1.16.0...google-cloud-binary-authorization-v1.17.0) (2026-06-02) </details> <details><summary>google-cloud-build: v3.37.0</summary> ## [v3.37.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-build-v3.36.0...google-cloud-build-v3.37.0) (2026-06-02) </details> <details><summary>google-cloud-capacityplanner: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-capacityplanner-v0.4.0...google-cloud-capacityplanner-v0.5.0) (2026-06-02) </details> <details><summary>google-cloud-certificate-manager: v1.14.0</summary> ## [v1.14.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-certificate-manager-v1.13.0...google-cloud-certificate-manager-v1.14.0) (2026-06-02) </details> <details><summary>google-cloud-ces: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-ces-v0.5.0...google-cloud-ces-v0.6.0) (2026-06-02) </details> <details><summary>google-cloud-channel: v1.28.0</summary> ## [v1.28.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-channel-v1.27.0...google-cloud-channel-v1.28.0) (2026-06-02) </details> <details><summary>google-cloud-chronicle: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-chronicle-v0.5.0...google-cloud-chronicle-v0.6.0) (2026-06-02) ### Features * update API sources and regenerate (#16998) ([cef659d8](https://github.com/googleapis/google-cloud-python/commit/cef659d8)) </details> <details><summary>google-cloud-cloudcontrolspartner: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-cloudcontrolspartner-v0.5.0...google-cloud-cloudcontrolspartner-v0.6.0) (2026-06-02) </details> <details><summary>google-cloud-cloudsecuritycompliance: v0.8.0</summary> ## [v0.8.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-cloudsecuritycompliance-v0.7.0...google-cloud-cloudsecuritycompliance-v0.8.0) (2026-06-02) </details> <details><summary>google-cloud-commerce-consumer-procurement: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-commerce-consumer-procurement-v0.5.0...google-cloud-commerce-consumer-procurement-v0.6.0) (2026-06-02) </details> <details><summary>google-cloud-common: v1.10.0</summary> ## [v1.10.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-common-v1.9.0...google-cloud-common-v1.10.0) (2026-06-02) </details> <details><summary>google-cloud-compute: v1.48.0</summary> ## [v1.48.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-compute-v1.47.0...google-cloud-compute-v1.48.0) (2026-06-02) </details> <details><summary>google-cloud-compute-v1beta: v0.12.0</summary> ## [v0.12.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-compute-v1beta-v0.11.0...google-cloud-compute-v1beta-v0.12.0) (2026-06-02) </details> <details><summary>google-cloud-confidentialcomputing: v0.10.0</summary> ## [v0.10.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-confidentialcomputing-v0.9.0...google-cloud-confidentialcomputing-v0.10.0) (2026-06-02) </details> <details><summary>google-cloud-config: v0.7.0</summary> ## [v0.7.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-config-v0.6.0...google-cloud-config-v0.7.0) (2026-06-02) </details> <details><summary>google-cloud-configdelivery: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-configdelivery-v0.4.0...google-cloud-configdelivery-v0.5.0) (2026-06-02) </details> <details><summary>google-cloud-contact-center-insights: v1.27.0</summary> ## [v1.27.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-contact-center-insights-v1.26.0...google-cloud-contact-center-insights-v1.27.0) (2026-06-02) </details> <details><summary>google-cloud-container: v2.65.0</summary> ## [v2.65.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-container-v2.64.0...google-cloud-container-v2.65.0) (2026-06-02) </details> <details><summary>google-cloud-containeranalysis: v2.22.0</summary> ## [v2.22.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-containeranalysis-v2.21.0...google-cloud-containeranalysis-v2.22.0) (2026-06-02) </details> <details><summary>google-cloud-contentwarehouse: v0.11.0</summary> ## [v0.11.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-contentwarehouse-v0.10.0...google-cloud-contentwarehouse-v0.11.0) (2026-06-02) </details> <details><summary>google-cloud-data-fusion: v1.17.0</summary> ## [v1.17.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-data-fusion-v1.16.0...google-cloud-data-fusion-v1.17.0) (2026-06-02) </details> <details><summary>google-cloud-data-qna: v0.14.0</summary> ## [v0.14.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-data-qna-v0.13.0...google-cloud-data-qna-v0.14.0) (2026-06-02) </details> <details><summary>google-cloud-databasecenter: v0.9.0</summary> ## [v0.9.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-databasecenter-v0.8.0...google-cloud-databasecenter-v0.9.0) (2026-06-02) </details> <details><summary>google-cloud-datacatalog: v3.31.0</summary> ## [v3.31.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-datacatalog-v3.30.0...google-cloud-datacatalog-v3.31.0) (2026-06-02) </details> <details><summary>google-cloud-datacatalog-lineage: v0.7.0</summary> ## [v0.7.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-datacatalog-lineage-v0.6.0...google-cloud-datacatalog-lineage-v0.7.0) (2026-06-02) ### Features * regenerate google-cloud-datacatalog-lineage (#17148) ([e77dc55f](https://github.com/googleapis/google-cloud-python/commit/e77dc55f)) </details> <details><summary>google-cloud-datacatalog-lineage-configmanagement: v0.3.0</summary> ## [v0.3.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-datacatalog-lineage-configmanagement-v0.2.0...google-cloud-datacatalog-lineage-configmanagement-v0.3.0) (2026-06-02) </details> <details><summary>google-cloud-dataflow-client: v0.14.0</summary> ## [v0.14.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-dataflow-client-v0.13.0...google-cloud-dataflow-client-v0.14.0) (2026-06-02) </details> <details><summary>google-cloud-dataform: v0.11.0</summary> ## [v0.11.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-dataform-v0.10.0...google-cloud-dataform-v0.11.0) (2026-06-02) </details> <details><summary>google-cloud-datalabeling: v1.17.0</summary> ## [v1.17.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-datalabeling-v1.16.0...google-cloud-datalabeling-v1.17.0) (2026-06-02) </details> <details><summary>google-cloud-dataplex: v2.20.0</summary> ## [v2.20.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-dataplex-v2.19.0...google-cloud-dataplex-v2.20.0) (2026-06-02) </details> <details><summary>google-cloud-dataproc: v5.28.0</summary> ## [v5.28.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-dataproc-v5.27.0...google-cloud-dataproc-v5.28.0) (2026-06-02) ### Features * update API sources and regenerate (#16998) ([cef659d8](https://github.com/googleapis/google-cloud-python/commit/cef659d8)) </details> <details><summary>google-cloud-dataproc-metastore: v1.23.0</summary> ## [v1.23.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-dataproc-metastore-v1.22.0...google-cloud-dataproc-metastore-v1.23.0) (2026-06-02) </details> <details><summary>google-cloud-datastore: v2.25.0</summary> ## [v2.25.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-datastore-v2.24.0...google-cloud-datastore-v2.25.0) (2026-06-02) </details> <details><summary>google-cloud-datastream: v1.19.0</summary> ## [v1.19.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-datastream-v1.18.0...google-cloud-datastream-v1.19.0) (2026-06-02) </details> <details><summary>google-cloud-deploy: v2.11.0</summary> ## [v2.11.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-deploy-v2.10.0...google-cloud-deploy-v2.11.0) (2026-06-02) </details> <details><summary>google-cloud-developerconnect: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-developerconnect-v0.5.0...google-cloud-developerconnect-v0.6.0) (2026-06-02) </details> <details><summary>google-cloud-devicestreaming: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-devicestreaming-v0.4.0...google-cloud-devicestreaming-v0.5.0) (2026-06-02) </details> <details><summary>google-cloud-dialogflow: v2.48.0</summary> ## [v2.48.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-dialogflow-v2.47.0...google-cloud-dialogflow-v2.48.0) (2026-06-02) ### Features * regenerate google-cloud-dialogflow (#17129) ([b6bb63ea](https://github.com/googleapis/google-cloud-python/commit/b6bb63ea)) </details> <details><summary>google-cloud-dialogflow-cx: v2.6.0</summary> ## [v2.6.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-dialogflow-cx-v2.5.0...google-cloud-dialogflow-cx-v2.6.0) (2026-06-02) </details> <details><summary>google-cloud-discoveryengine: v0.20.0</summary> ## [v0.20.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-discoveryengine-v0.19.0...google-cloud-discoveryengine-v0.20.0) (2026-06-02) </details> <details><summary>google-cloud-dlp: v3.37.0</summary> ## [v3.37.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-dlp-v3.36.0...google-cloud-dlp-v3.37.0) (2026-06-02) </details> <details><summary>google-cloud-dms: v1.16.0</summary> ## [v1.16.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-dms-v1.15.0...google-cloud-dms-v1.16.0) (2026-06-02) </details> <details><summary>google-cloud-documentai: v3.15.0</summary> ## [v3.15.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-documentai-v3.14.0...google-cloud-documentai-v3.15.0) (2026-06-02) </details> <details><summary>google-cloud-documentai-toolbox: v0.17.0</summary> ## [v0.17.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-documentai-toolbox-v0.16.0...google-cloud-documentai-toolbox-v0.17.0) (2026-06-02) ### Bug Fixes * Drop support for Python <= 3.9 (#16967) ([8fa321e7](https://github.com/googleapis/google-cloud-python/commit/8fa321e7)) </details> <details><summary>google-cloud-domains: v1.14.0</summary> ## [v1.14.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-domains-v1.13.0...google-cloud-domains-v1.14.0) (2026-06-02) </details> <details><summary>google-cloud-logging: v3.16.0</summary> ## [v3.16.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-logging-v3.15.0...google-cloud-logging-v3.16.0) (2026-06-02) ### Features * drop support for Python 3.7, 3.8, and 3.9 runtimes (#17276) ([014e951b](https://github.com/googleapis/google-cloud-python/commit/014e951b)) </details> <details><summary>google-cloud-monitoring: v2.31.0</summary> ## [v2.31.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-monitoring-v2.30.0...google-cloud-monitoring-v2.31.0) (2026-06-02) ### Features * regenerate monitoring using generator v1.32.0 (#17165) ([042dc5c3](https://github.com/googleapis/google-cloud-python/commit/042dc5c3)) </details> <details><summary>google-cloud-pubsub: v2.39.0</summary> ## [v2.39.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-pubsub-v2.38.0...google-cloud-pubsub-v2.39.0) (2026-06-02) ### Features * regenerate pubsub library using gapic-generator v1.32.0 (#17167) ([01d3127d](https://github.com/googleapis/google-cloud-python/commit/01d3127d)) ### Bug Fixes * resolve issue with pubsub generation (#17219) ([b21c1d44](https://github.com/googleapis/google-cloud-python/commit/b21c1d44)) </details> <details><summary>google-cloud-saasplatform-saasservicemgmt: v0.7.0</summary> ## [v0.7.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-saasplatform-saasservicemgmt-v0.6.0...google-cloud-saasplatform-saasservicemgmt-v0.7.0) (2026-06-02) </details> <details><summary>google-cloud-scheduler: v2.20.0</summary> ## [v2.20.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-scheduler-v2.19.0...google-cloud-scheduler-v2.20.0) (2026-06-02) </details> <details><summary>google-cloud-secret-manager: v2.29.0</summary> ## [v2.29.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-secret-manager-v2.28.0...google-cloud-secret-manager-v2.29.0) (2026-06-02) </details> <details><summary>google-cloud-securesourcemanager: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-securesourcemanager-v0.5.0...google-cloud-securesourcemanager-v0.6.0) (2026-06-02) </details> <details><summary>google-cloud-security-publicca: v0.7.0</summary> ## [v0.7.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-security-publicca-v0.6.0...google-cloud-security-publicca-v0.7.0) (2026-06-02) </details> <details><summary>google-cloud-securitycenter: v1.45.0</summary> ## [v1.45.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-securitycenter-v1.44.0...google-cloud-securitycenter-v1.45.0) (2026-06-02) </details> <details><summary>google-cloud-securitycentermanagement: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-securitycentermanagement-v0.4.0...google-cloud-securitycentermanagement-v0.5.0) (2026-06-02) </details> <details><summary>google-cloud-service-control: v1.20.0</summary> ## [v1.20.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-service-control-v1.19.0...google-cloud-service-control-v1.20.0) (2026-06-02) </details> <details><summary>google-cloud-service-directory: v1.18.0</summary> ## [v1.18.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-service-directory-v1.17.0...google-cloud-service-directory-v1.18.0) (2026-06-02) </details> <details><summary>google-cloud-service-management: v1.17.0</summary> ## [v1.17.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-service-management-v1.16.0...google-cloud-service-management-v1.17.0) (2026-06-02) </details> <details><summary>google-cloud-service-usage: v1.17.0</summary> ## [v1.17.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-service-usage-v1.16.0...google-cloud-service-usage-v1.17.0) (2026-06-02) </details> <details><summary>google-cloud-servicehealth: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-servicehealth-v0.4.0...google-cloud-servicehealth-v0.5.0) (2026-06-02) </details> <details><summary>google-cloud-shell: v1.16.0</summary> ## [v1.16.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-shell-v1.15.0...google-cloud-shell-v1.16.0) (2026-06-02) </details> <details><summary>google-cloud-source-context: v1.11.0</summary> ## [v1.11.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-source-context-v1.10.0...google-cloud-source-context-v1.11.0) (2026-06-02) </details> <details><summary>google-cloud-spanner: v3.67.0</summary> ## [v3.67.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-spanner-v3.66.0...google-cloud-spanner-v3.67.0) (2026-06-02) ### Features * drop Python 3.7-3.9 support and regenerate (#17169) ([2408166f](https://github.com/googleapis/google-cloud-python/commit/2408166f)) * log client configuration at startup (#17040) ([a830a785](https://github.com/googleapis/google-cloud-python/commit/a830a785)) * drop python runtime 3.9 (#17070) ([cddabc0f](https://github.com/googleapis/google-cloud-python/commit/cddabc0f)) * update API sources and regenerate (#16998) ([cef659d8](https://github.com/googleapis/google-cloud-python/commit/cef659d8)) ### Bug Fixes * replace insecure pickle with json for partition deserialization (#17014) ([86e57cb9](https://github.com/googleapis/google-cloud-python/commit/86e57cb9)) </details> <details><summary>google-cloud-speech: v2.40.0</summary> ## [v2.40.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-speech-v2.39.0...google-cloud-speech-v2.40.0) (2026-06-02) </details> <details><summary>google-cloud-storage: v3.11.0</summary> ## [v3.11.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-storage-v3.10.1...google-cloud-storage-v3.11.0) (2026-06-02) ### Features * Added a new field `ComposeObjectRequest.delete_source_objects` field (PiperOrigin-RevId: 863087065) ([1230e174](https://github.com/googleapis/google-cloud-python/commit/1230e174)) * add object contexts in Python GCS SDK (#17039) ([15ec8bd7](https://github.com/googleapis/google-cloud-python/commit/15ec8bd7)) * Add delete_source_objects optional parameter to compose API (#17163) ([16ab4c26](https://github.com/googleapis/google-cloud-python/commit/16ab4c26)) * add fixed-key metadata support in AAOW (#16817) ([28487f5c](https://github.com/googleapis/google-cloud-python/commit/28487f5c)) * Add support for blob object in AAOW (#16577) ([32718318](https://github.com/googleapis/google-cloud-python/commit/32718318)) * implement AsyncMultiRangeDownloader with multiplexed bidi-gRPC stream support (#16528) ([493df65b](https://github.com/googleapis/google-cloud-python/commit/493df65b)) * populate the `persisted_data_checksums` field with object checksums on write object / query write status responses (PiperOrigin-RevId: 895357062) ([56ccbd86](https://github.com/googleapis/google-cloud-python/commit/56ccbd86)) * Enhance Otel Span Attributes with BucketId and Location details for every Bucket/Blob operation ([a0da993d](https://github.com/googleapis/google-cloud-python/commit/a0da993d)) * drop Python 3.7-3.9 support and regenerate (#17178) ([c804a935](https://github.com/googleapis/google-cloud-python/commit/c804a935)) ### Bug Fixes * updates typing for python 3.8 ([87b7ba97](https://github.com/googleapis/google-cloud-python/commit/87b7ba97)) * propagate quota_project_id and api_endpoint in AsyncGrpcClient (#16731) ([b8b457aa](https://github.com/googleapis/google-cloud-python/commit/b8b457aa)) ### Performance Improvements * add multiplexing performance tests for AsyncMultiRangeDownloader (#16501) ([20969910](https://github.com/googleapis/google-cloud-python/commit/20969910)) * implement fast-path for queue delivery in _StreamMultiplexer (#16718) ([7073be16](https://github.com/googleapis/google-cloud-python/commit/7073be16)) * use google_crc32c.value for checksums (#16719) ([c6461a42](https://github.com/googleapis/google-cloud-python/commit/c6461a42)) * use google_crc32c.value() for simpler crc32c calculation (#16761) ([c9846c92](https://github.com/googleapis/google-cloud-python/commit/c9846c92)) ### Documentation * Updated documentation for `BidiReadObject`, `ReadObjectRequest`, and `ObjectContexts` (PiperOrigin-RevId: 863087065) ([1230e174](https://github.com/googleapis/google-cloud-python/commit/1230e174)) * improve wording around `object_checksums` in bidi write object requests (PiperOrigin-RevId: 895357062) ([56ccbd86](https://github.com/googleapis/google-cloud-python/commit/56ccbd86)) </details> <details><summary>google-cloud-storage-control: v1.12.0</summary> ## [v1.12.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-storage-control-v1.11.0...google-cloud-storage-control-v1.12.0) (2026-06-02) </details> <details><summary>google-cloud-storage-transfer: v1.21.0</summary> ## [v1.21.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-storage-transfer-v1.20.0...google-cloud-storage-transfer-v1.21.0) (2026-06-02) </details> <details><summary>google-cloud-storagebatchoperations: v0.8.0</summary> ## [v0.8.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-storagebatchoperations-v0.7.0...google-cloud-storagebatchoperations-v0.8.0) (2026-06-02) </details> <details><summary>google-cloud-storageinsights: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-storageinsights-v0.4.0...google-cloud-storageinsights-v0.5.0) (2026-06-02) </details> <details><summary>google-cloud-support: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-support-v0.4.0...google-cloud-support-v0.5.0) (2026-06-02) </details> <details><summary>google-cloud-testutils: v1.9.0</summary> ## [v1.9.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-testutils-v1.8.0...google-cloud-testutils-v1.9.0) (2026-06-02) ### Bug Fixes * support != exclusion constraints in lower-bound-checker (#17269) ([65da3165](https://github.com/googleapis/google-cloud-python/commit/65da3165)) </details> <details><summary>google-cloud-vectorsearch: v0.11.0</summary> ## [v0.11.0](https://github.com/googleapis/google-cloud-python/compare/google-cloud-vectorsearch-v0.10.0...google-cloud-vectorsearch-v0.11.0) (2026-06-02) ### Features * update API sources and regenerate (#16998) ([cef659d8](https://github.com/googleapis/google-cloud-python/commit/cef659d8)) </details> <details><summary>google-geo-type: v0.7.0</summary> ## [v0.7.0](https://github.com/googleapis/google-cloud-python/compare/google-geo-type-v0.6.0...google-geo-type-v0.7.0) (2026-06-02) </details> <details><summary>google-maps-addressvalidation: v0.7.0</summary> ## [v0.7.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-addressvalidation-v0.6.0...google-maps-addressvalidation-v0.7.0) (2026-06-02) </details> <details><summary>google-maps-areainsights: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-areainsights-v0.4.0...google-maps-areainsights-v0.5.0) (2026-06-02) </details> <details><summary>google-maps-fleetengine: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-fleetengine-v0.5.0...google-maps-fleetengine-v0.6.0) (2026-06-02) </details> <details><summary>google-maps-fleetengine-delivery: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-fleetengine-delivery-v0.5.0...google-maps-fleetengine-delivery-v0.6.0) (2026-06-02) </details> <details><summary>google-maps-geocode: v0.3.0</summary> ## [v0.3.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-geocode-v0.2.0...google-maps-geocode-v0.3.0) (2026-06-02) </details> <details><summary>google-maps-mapsplatformdatasets: v0.8.0</summary> ## [v0.8.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-mapsplatformdatasets-v0.7.0...google-maps-mapsplatformdatasets-v0.8.0) (2026-06-02) </details> <details><summary>google-maps-navconnect: v0.2.0</summary> ## [v0.2.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-navconnect-v0.1.0...google-maps-navconnect-v0.2.0) (2026-06-02) </details> <details><summary>google-maps-places: v0.9.0</summary> ## [v0.9.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-places-v0.8.0...google-maps-places-v0.9.0) (2026-06-02) </details> <details><summary>google-maps-routeoptimization: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-routeoptimization-v0.4.0...google-maps-routeoptimization-v0.5.0) (2026-06-02) </details> <details><summary>google-maps-routing: v0.11.0</summary> ## [v0.11.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-routing-v0.10.0...google-maps-routing-v0.11.0) (2026-06-02) </details> <details><summary>google-maps-solar: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-maps-solar-v0.5.0...google-maps-solar-v0.6.0) (2026-06-02) </details> <details><summary>google-resumable-media: v2.10.0</summary> ## [v2.10.0](https://github.com/googleapis/google-cloud-python/compare/google-resumable-media-v2.9.0...google-resumable-media-v2.10.0) (2026-06-02) ### Bug Fixes * update incorrect urls in setup.py to point at monorepo vs splitrepo (#17237) ([eaed04ba](https://github.com/googleapis/google-cloud-python/commit/eaed04ba)) </details> <details><summary>google-shopping-css: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-css-v0.5.0...google-shopping-css-v0.6.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-accounts: v1.6.0</summary> ## [v1.6.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-accounts-v1.5.0...google-shopping-merchant-accounts-v1.6.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-conversions: v1.4.0</summary> ## [v1.4.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-conversions-v1.3.0...google-shopping-merchant-conversions-v1.4.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-datasources: v1.5.0</summary> ## [v1.5.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-datasources-v1.4.0...google-shopping-merchant-datasources-v1.5.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-inventories: v1.5.0</summary> ## [v1.5.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-inventories-v1.4.0...google-shopping-merchant-inventories-v1.5.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-issueresolution: v1.4.0</summary> ## [v1.4.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-issueresolution-v1.3.0...google-shopping-merchant-issueresolution-v1.4.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-lfp: v1.4.0</summary> ## [v1.4.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-lfp-v1.3.0...google-shopping-merchant-lfp-v1.4.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-notifications: v1.4.0</summary> ## [v1.4.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-notifications-v1.3.0...google-shopping-merchant-notifications-v1.4.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-ordertracking: v1.4.0</summary> ## [v1.4.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-ordertracking-v1.3.0...google-shopping-merchant-ordertracking-v1.4.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-products: v1.7.0</summary> ## [v1.7.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-products-v1.6.0...google-shopping-merchant-products-v1.7.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-productstudio: v0.5.0</summary> ## [v0.5.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-productstudio-v0.4.0...google-shopping-merchant-productstudio-v0.5.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-promotions: v1.4.0</summary> ## [v1.4.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-promotions-v1.3.0...google-shopping-merchant-promotions-v1.4.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-quota: v1.5.0</summary> ## [v1.5.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-quota-v1.4.0...google-shopping-merchant-quota-v1.5.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-reports: v1.5.0</summary> ## [v1.5.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-reports-v1.4.0...google-shopping-merchant-reports-v1.5.0) (2026-06-02) </details> <details><summary>google-shopping-merchant-reviews: v0.6.0</summary> ## [v0.6.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-merchant-reviews-v0.5.0...google-shopping-merchant-reviews-v0.6.0) (2026-06-02) </details> <details><summary>google-shopping-type: v1.5.0</summary> ## [v1.5.0](https://github.com/googleapis/google-cloud-python/compare/google-shopping-type-v1.4.0...google-shopping-type-v1.5.0) (2026-06-02) </details> <details><summary>grafeas: v1.23.0</summary> ## [v1.23.0](https://github.com/googleapis/google-cloud-python/compare/grafeas-v1.22.0...grafeas-v1.23.0) (2026-06-02) </details> <details><summary>sqlalchemy-spanner: v1.19.0</summary> ## [v1.19.0](https://github.com/googleapis/google-cloud-python/compare/sqlalchemy-spanner-v1.18.0...sqlalchemy-spanner-v1.19.0) (2026-06-02) ### Bug Fixes * Drop support for Python 3.8 and 3.9 (#16913) ([f5b392e5](https://github.com/googleapis/google-cloud-python/commit/f5b392e5)) </details> <details><summary>Bulk Changes</summary> * feat: regenerate google-cloud-c packages (#17091) ([16583934](https://github.com/googleapis/google-cloud-python/commit/16583934)) Libraries: google-cloud-capacityplanner,google-cloud-certificate-manager,google-cloud-ces,google-cloud-channel,google-cloud-chronicle,google-cloud-cloudcontrolspartner,google-cloud-cloudsecuritycompliance,google-cloud-commerce-consumer-procurement,google-cloud-common,google-cloud-compute,google-cloud-compute-v1beta,google-cloud-confidentialcomputing,google-cloud-config,google-cloud-configdelivery,google-cloud-contact-center-insights,google-cloud-container,google-cloud-containeranalysis,google-cloud-contentwarehouse * feat: regenerate google-shopping packages (#17072) ([2904f059](https://github.com/googleapis/google-cloud-python/commit/2904f059)) Libraries: google-shopping-css,google-shopping-merchant-accounts,google-shopping-merchant-conversions,google-shopping-merchant-datasources,google-shopping-merchant-inventories,google-shopping-merchant-issueresolution,google-shopping-merchant-lfp,google-shopping-merchant-notifications,google-shopping-merchant-ordertracking,google-shopping-merchant-products,google-shopping-merchant-productstudio,google-shopping-merchant-promotions,google-shopping-merchant-quota,google-shopping-merchant-reports,google-shopping-merchant-reviews,google-shopping-type * feat: regenerate google-cloud-a packages (#17089) ([39c98826](https://github.com/googleapis/google-cloud-python/commit/39c98826)) Libraries: google-cloud-access-approval,google-cloud-advisorynotifications,google-cloud-alloydb,google-cloud-alloydb-connectors,google-cloud-api-gateway,google-cloud-api-keys,google-cloud-apigee-connect,google-cloud-apigee-registry,google-cloud-apihub,google-cloud-apiregistry,google-cloud-appengine-admin,google-cloud-appengine-logging,google-cloud-apphub,google-cloud-appoptimize,google-cloud-artifact-registry,google-cloud-assured-workloads,google-cloud-auditmanager * feat: regenerate google-cloud-s packages (#17086) ([40b522a8](https://github.com/googleapis/google-cloud-python/commit/40b522a8)) Libraries: google-cloud-saasplatform-saasservicemgmt,google-cloud-scheduler,google-cloud-secret-manager,google-cloud-securesourcemanager,google-cloud-security-publicca,google-cloud-securitycenter,google-cloud-securitycentermanagement,google-cloud-service-control,google-cloud-service-directory,google-cloud-service-management,google-cloud-service-usage,google-cloud-servicehealth,google-cloud-shell,google-cloud-source-context,google-cloud-speech,google-cloud-storage-control,google-cloud-storage-transfer,google-cloud-storagebatchoperations,google-cloud-storageinsights,google-cloud-support * https: //github.com/googleapis/google-cloud-python/commit/f352cbdddc2cd969180ae431cb826def4a431090 . The other commits are handwritten ([522d1926](https://github.com/googleapis/google-cloud-python/commit/522d1926)) Libraries: google-ads-admanager,google-ads-datamanager,google-ads-marketingplatform-admin,google-ai-generativelanguage,google-analytics-admin,google-analytics-data,google-apps-card,google-apps-chat,google-apps-events-subscriptions,google-apps-meet,google-apps-script-type,google-area120-tables,google-cloud-access-approval,google-cloud-advisorynotifications,google-cloud-alloydb,google-cloud-alloydb-connectors,google-cloud-api-gateway,google-cloud-api-keys,google-cloud-apigee-connect,google-cloud-apigee-registry,google-cloud-apihub,google-cloud-apiregistry,google-cloud-appengine-admin,google-cloud-appengine-logging,google-cloud-apphub,google-cloud-appoptimize,google-cloud-artifact-registry,google-cloud-asset,google-cloud-assured-workloads,google-cloud-auditmanager,google-cloud-automl,google-cloud-backupdr,google-cloud-bare-metal-solution,google-cloud-batch,google-cloud-beyondcorp-appconnections,google-cloud-beyondcorp-appconnectors,google-cloud-beyondcorp-appgateways,google-cloud-beyondcorp-clientconnectorservices,google-cloud-beyondcorp-clientgateways,google-cloud-biglake,google-cloud-biglake-hive,google-cloud-bigquery-analyticshub,google-cloud-bigquery-biglake,google-cloud-bigquery-connection,google-cloud-bigquery-data-exchange,google-cloud-bigquery-datapolicies,google-cloud-bigquery-datatransfer,google-cloud-bigquery-logging,google-cloud-bigquery-migration,google-cloud-bigquery-reservation,google-cloud-bigquery-storage,google-cloud-billing,google-cloud-billing-budgets,google-cloud-binary-authorization,google-cloud-build,google-cloud-capacityplanner,google-cloud-certificate-manager,google-cloud-ces,google-cloud-channel,google-cloud-chronicle,google-cloud-cloudcontrolspartner,google-cloud-cloudsecuritycompliance,google-cloud-commerce-consumer-procurement,google-cloud-common,google-cloud-compute,google-cloud-compute-v1beta,google-cloud-confidentialcomputing,google-cloud-config,google-cloud-configdelivery,google-cloud-contact-center-insights,google-cloud-container,google-cloud-contentwarehouse,google-cloud-data-fusion,google-cloud-data-qna,google-cloud-databasecenter,google-cloud-datacatalog,google-cloud-datacatalog-lineage,google-cloud-datacatalog-lineage-configmanagement,google-cloud-dataflow-client,google-cloud-dataform,google-cloud-datalabeling,google-cloud-dataplex,google-cloud-dataproc,google-cloud-dataproc-metastore,google-cloud-datastore,google-cloud-datastream,google-cloud-deploy,google-cloud-developerconnect,google-cloud-devicestreaming,google-cloud-dialogflow,google-cloud-dialogflow-cx,google-cloud-discoveryengine,google-cloud-dlp,google-cloud-dms,google-cloud-documentai,google-cloud-domains,google-cloud-monitoring,google-cloud-saasplatform-saasservicemgmt,google-cloud-scheduler,google-cloud-secret-manager,google-cloud-securesourcemanager,google-cloud-security-publicca,google-cloud-securitycenter,google-cloud-securitycentermanagement,google-cloud-service-control,google-cloud-service-directory,google-cloud-service-management,google-cloud-service-usage,google-cloud-servicehealth,google-cloud-shell,google-cloud-source-context,google-cloud-speech,google-cloud-storage,google-cloud-storage-control,google-cloud-storage-transfer,google-cloud-storagebatchoperations,google-cloud-storageinsights,google-cloud-support,google-cloud-vectorsearch,google-geo-type,google-maps-addressvalidation,google-maps-areainsights,google-maps-fleetengine,google-maps-fleetengine-delivery,google-maps-geocode,google-maps-mapsplatformdatasets,google-maps-navconnect,google-maps-places,google-maps-routeoptimization,google-maps-routing,google-maps-solar,google-shopping-css,google-shopping-merchant-accounts,google-shopping-merchant-conversions,google-shopping-merchant-datasources,google-shopping-merchant-inventories,google-shopping-merchant-issueresolution,google-shopping-merchant-lfp,google-shopping-merchant-notifications,google-shopping-merchant-ordertracking,google-shopping-merchant-products,google-shopping-merchant-productstudio,google-shopping-merchant-promotions,google-shopping-merchant-quota,google-shopping-merchant-reports,google-shopping-merchant-reviews,google-shopping-type * chore: update librarian to v0.15.1-0.20260528141105-567c9bf1faa7 (#17290) ([522d1926](https://github.com/googleapis/google-cloud-python/commit/522d1926)) Libraries: google-ads-admanager,google-ads-datamanager,google-ads-marketingplatform-admin,google-ai-generativelanguage,google-analytics-admin,google-analytics-data,google-apps-card,google-apps-chat,google-apps-events-subscriptions,google-apps-meet,google-apps-script-type,google-area120-tables,google-cloud-access-approval,google-cloud-advisorynotifications,google-cloud-alloydb,google-cloud-alloydb-connectors,google-cloud-api-gateway,google-cloud-api-keys,google-cloud-apigee-connect,google-cloud-apigee-registry,google-cloud-apihub,google-cloud-apiregistry,google-cloud-appengine-admin,google-cloud-appengine-logging,google-cloud-apphub,google-cloud-appoptimize,google-cloud-artifact-registry,google-cloud-asset,google-cloud-assured-workloads,google-cloud-auditmanager,google-cloud-automl,google-cloud-backupdr,google-cloud-bare-metal-solution,google-cloud-batch,google-cloud-beyondcorp-appconnections,google-cloud-beyondcorp-appconnectors,google-cloud-beyondcorp-appgateways,google-cloud-beyondcorp-clientconnectorservices,google-cloud-beyondcorp-clientgateways,google-cloud-biglake,google-cloud-biglake-hive,google-cloud-bigquery-analyticshub,google-cloud-bigquery-biglake,google-cloud-bigquery-connection,google-cloud-bigquery-data-exchange,google-cloud-bigquery-datapolicies,google-cloud-bigquery-datatransfer,google-cloud-bigquery-logging,google-cloud-bigquery-migration,google-cloud-bigquery-reservation,google-cloud-bigquery-storage,google-cloud-billing,google-cloud-billing-budgets,google-cloud-binary-authorization,google-cloud-build,google-cloud-capacityplanner,google-cloud-certificate-manager,google-cloud-ces,google-cloud-channel,google-cloud-chronicle,google-cloud-cloudcontrolspartner,google-cloud-cloudsecuritycompliance,google-cloud-commerce-consumer-procurement,google-cloud-common,google-cloud-compute,google-cloud-compute-v1beta,google-cloud-confidentialcomputing,google-cloud-config,google-cloud-configdelivery,google-cloud-contact-center-insights,google-cloud-container,google-cloud-contentwarehouse,google-cloud-data-fusion,google-cloud-data-qna,google-cloud-databasecenter,google-cloud-datacatalog,google-cloud-datacatalog-lineage,google-cloud-datacatalog-lineage-configmanagement,google-cloud-dataflow-client,google-cloud-dataform,google-cloud-datalabeling,google-cloud-dataplex,google-cloud-dataproc,google-cloud-dataproc-metastore,google-cloud-datastore,google-cloud-datastream,google-cloud-deploy,google-cloud-developerconnect,google-cloud-devicestreaming,google-cloud-dialogflow,google-cloud-dialogflow-cx,google-cloud-discoveryengine,google-cloud-dlp,google-cloud-dms,google-cloud-documentai,google-cloud-domains,google-cloud-monitoring,google-cloud-saasplatform-saasservicemgmt,google-cloud-scheduler,google-cloud-secret-manager,google-cloud-securesourcemanager,google-cloud-security-publicca,google-cloud-securitycenter,google-cloud-securitycentermanagement,google-cloud-service-control,google-cloud-service-directory,google-cloud-service-management,google-cloud-service-usage,google-cloud-servicehealth,google-cloud-shell,google-cloud-source-context,google-cloud-speech,google-cloud-storage,google-cloud-storage-control,google-cloud-storage-transfer,google-cloud-storagebatchoperations,google-cloud-storageinsights,google-cloud-support,google-cloud-vectorsearch,google-geo-type,google-maps-addressvalidation,google-maps-areainsights,google-maps-fleetengine,google-maps-fleetengine-delivery,google-maps-geocode,google-maps-mapsplatformdatasets,google-maps-navconnect,google-maps-places,google-maps-routeoptimization,google-maps-routing,google-maps-solar,google-shopping-css,google-shopping-merchant-accounts,google-shopping-merchant-conversions,google-shopping-merchant-datasources,google-shopping-merchant-inventories,google-shopping-merchant-issueresolution,google-shopping-merchant-lfp,google-shopping-merchant-notifications,google-shopping-merchant-ordertracking,google-shopping-merchant-products,google-shopping-merchant-productstudio,google-shopping-merchant-promotions,google-shopping-merchant-quota,google-shopping-merchant-reports,google-shopping-merchant-reviews,google-shopping-type * chore: regenerate packages in google-cloud-s, copyright changes only (#17066) ([558920b1](https://github.com/googleapis/google-cloud-python/commit/558920b1)) Libraries: google-cloud-saasplatform-saasservicemgmt,google-cloud-scheduler,google-cloud-secret-manager,google-cloud-securesourcemanager,google-cloud-security-publicca,google-cloud-securitycenter,google-cloud-securitycentermanagement,google-cloud-service-control,google-cloud-service-directory,google-cloud-service-management,google-cloud-service-usage,google-cloud-servicehealth,google-cloud-shell,google-cloud-source-context,google-cloud-spanner,google-cloud-speech,google-cloud-storage,google-cloud-storage-control,google-cloud-storage-transfer,google-cloud-storagebatchoperations,google-cloud-storageinsights,google-cloud-support * feat: regenerate google-cloud-b packages (#17090) ([77d4fcc1](https://github.com/googleapis/google-cloud-python/commit/77d4fcc1)) Libraries: google-cloud-backupdr,google-cloud-bare-metal-solution,google-cloud-batch,google-cloud-beyondcorp-appconnections,google-cloud-beyondcorp-appconnectors,google-cloud-beyondcorp-appgateways,google-cloud-beyondcorp-clientconnectorservices,google-cloud-beyondcorp-clientgateways,google-cloud-biglake,google-cloud-biglake-hive,google-cloud-bigquery-analyticshub,google-cloud-bigquery-biglake,google-cloud-bigquery-connection,google-cloud-bigquery-data-exchange,google-cloud-bigquery-datapolicies,google-cloud-bigquery-datatransfer,google-cloud-bigquery-logging,google-cloud-bigquery-migration,google-cloud-bigquery-reservation,google-cloud-bigquery-storage,google-cloud-billing,google-cloud-billing-budgets,google-cloud-binary-authorization,google-cloud-build * chore: regenerate packages in google-shopping, copyright changes only (#17069) ([911468db](https://github.com/googleapis/google-cloud-python/commit/911468db)) Libraries: google-shopping-css,google-shopping-merchant-accounts,google-shopping-merchant-conversions,google-shopping-merchant-datasources,google-shopping-merchant-inventories,google-shopping-merchant-issueresolution,google-shopping-merchant-lfp,google-shopping-merchant-notifications,google-shopping-merchant-ordertracking,google-shopping-merchant-products,google-shopping-merchant-productstudio,google-shopping-merchant-promotions,google-shopping-merchant-quota,google-shopping-merchant-reports,google-shopping-merchant-reviews,google-shopping-type * chore: regenerate packages in google-maps, copyright changes only (#17068) ([9fc758b2](https://github.com/googleapis/google-cloud-python/commit/9fc758b2)) Libraries: google-maps-addressvalidation,google-maps-areainsights,google-maps-fleetengine,google-maps-fleetengine-delivery,google-maps-geocode,google-maps-mapsplatformdatasets,google-maps-navconnect,google-maps-places,google-maps-routeoptimization,google-maps-routing,google-maps-solar * chore: regenerate remaining packages, copyright changes only (#17071) ([a5fb6cf1](https://github.com/googleapis/google-cloud-python/commit/a5fb6cf1)) Libraries: google-ads-admanager,google-ads-datamanager,google-ads-marketingplatform-admin,google-ai-generativelanguage,google-analytics-admin,google-analytics-data,google-apps-card,google-apps-chat,google-apps-events-subscriptions,google-apps-meet,google-apps-script-type,google-area120-tables,google-geo-type,grafeas * feat: regenerate google-maps packages (#17073) ([bd31a8c7](https://github.com/googleapis/google-cloud-python/commit/bd31a8c7)) Libraries: google-maps-addressvalidation,google-maps-areainsights,google-maps-fleetengine,google-maps-fleetengine-delivery,google-maps-geocode,google-maps-mapsplatformdatasets,google-maps-navconnect,google-maps-places,google-maps-routeoptimization,google-maps-routing,google-maps-solar * feat: regenerate remaining packages (#17078) ([cc4f36f6](https://github.com/googleapis/google-cloud-python/commit/cc4f36f6)) Libraries: google-ads-admanager,google-ads-datamanager,google-ads-marketingplatform-admin,google-ai-generativelanguage,google-analytics-admin,google-analytics-data,google-apps-card,google-apps-chat,google-apps-events-subscriptions,google-apps-meet,google-apps-script-type,google-area120-tables,google-geo-type,grafeas * feat: regenerate google-cloud-d packages (#17092) ([d49a2b94](https://github.com/googleapis/google-cloud-python/commit/d49a2b94)) Libraries: google-cloud-data-fusion,google-cloud-data-qna,google-cloud-databasecenter,google-cloud-datacatalog,google-cloud-datacatalog-lineage-configmanagement,google-cloud-dataflow-client,google-cloud-dataform,google-cloud-datalabeling,google-cloud-dataplex,google-cloud-dataproc,google-cloud-dataproc-metastore,google-cloud-datastore,google-cloud-datastream,google-cloud-deploy,google-cloud-developerconnect,google-cloud-devicestreaming,google-cloud-dialogflow-cx,google-cloud-discoveryengine,google-cloud-dlp,google-cloud-dms,google-cloud-documentai,google-cloud-domains </details>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

This PR implements the "Object Contexts" feature in the
google-cloud-storagePython SDK, ensuring feature parity with the Go and Java SDKs.Key changes:
ObjectCustomContextPayloadandObjectContextsclasses togoogle/cloud/storage/blob.py. These allow users to define custom key-value pairs (contexts) for objects.contextsproperty to theBlobclass with appropriate getters and setters. Addedcontextsto_WRITABLE_FIELDSto enable REST API support for patching and updating these contexts.list_blobsmethod in bothgoogle/cloud/storage/client.pyandgoogle/cloud/storage/bucket.pyto include a keyword-onlyfilter_parameter. This allows server-side filtering of objects based on various attributes, including custom contexts.google/cloud/storage/_grpc_conversions.pywith:blob_to_proto: Support for convertingcontextsto GCS V2 proto.google/cloud/storage/tests/unit/test_blob.pyandgoogle/cloud/storage/tests/unit/test__grpc_conversions.pyto verify the new functionality and ensure no regressions (verified withnox -s unit-3.12). Fixed a minor regression in async write tests.This implementation allows for advanced metadata management and powerful server-side filtering as requested.
PR created automatically by Jules for task 13325527155543531515 started by @nidhiii-27