github.com-googleapis-google-cloud-python
all · 32 devs · built 2026-06-13
Repository snapshot
Monthly reports
Highlights
- Introduced new *AI generation capabilities* to *BigFrames DataFrames* with `ai_generate` functions [6b62cb6f · Shenyang Cai].
- Optimized *BigFrames* resource efficiency by deferring deployment of unnamed UDFs until invocation [ad3b8fa9 · TrevorBergeron].
- Enhanced *BigFrames* interoperability by adding direct support for *pandas.Series* inputs in *GoogleSQL scalar operations* [d4d88554 · Tim Sweña (Swast)].
- Expanded *BigFrames* functionality with a rich set of new *scalar array functions* in `bigframes.bigquery` [4f8a6c81 · Tim Sweña (Swast)].
- Implemented *App-centric Observability (ACO)* tracing for *google-cloud-storage*, enhancing *OpenTelemetry spans* with critical resource attributes and an *LRU metadata cache* [a0da993d · Chandra Shekhar Sirimala].
- Added a new *dependency version scanner tool* to aid in tracking and updating Python runtimes and package dependencies across the repository [b85ff031 · Chalmer Lowe].
- Established foundational *Angular infrastructure* for the *TableWidget* within *BigFrames display*, preparing for a hybrid development approach [4d20bab8 · Shuowei Li].
- Refactored *CI/CD system test trigger logic* to dynamically determine package testing, removing error-prone hardcoded lists [025a4876 · Anthonios Partheniou].
Observations
- Total output increased 34% (36 vs 27) compared to the 2-month average, indicating efficient delivery despite reduced commit volume.
- Maintenance activity saw a 34% increase (27 vs 20) compared to the 2-month average, reflecting a strong focus on upkeep, infrastructure, and modernization efforts.
- The *waste score* surged 209% (4 vs 1) compared to the 2-month average, primarily driven by rework in the *GAPIC generator* to resolve `pytest-asyncio` failures and `grpcio` dependency issues [204b6d0b · Chalmer Lowe], and fixes for *Pub/Sub* client generation [b21c1d44 · Chalmer Lowe].
- Commit volume decreased significantly by 53% (233 vs 496) compared to the 2-month average, suggesting a period of fewer, but potentially more impactful, changes.
- A consistent pattern of *Python version modernization* was observed, with multiple client libraries (*google-cloud-logging* [014e951b · Chalmer Lowe], *google-cloud-firestore* [b11224ff · Chalmer Lowe], *google-cloud-datastore* [391c1a32 · Chalmer Lowe], *google-cloud-error-reporting* [233635dc · Chalmer Lowe]) dropping support for Python 3.7-3.9 to align with current Python ecosystems.
- Extensive *CI/CD and testing infrastructure improvements* were made, including refactoring `noxfile.py` configurations, enhancing `pytest-asyncio` reliability, and adding new *Kokoro* configurations for *BigFrames* benchmarks and notebooks [1c2e24f3 · Anthonios Partheniou], [06965d82 · Anthonios Partheniou], [20242246 · Anthonios Partheniou], [7813ca4e · Chalmer Lowe], [569c8235 · Tomo Suzuki], [0d9abb39 · Shenyang Cai], [27f04086 · Shenyang Cai].
- Rework related to the *GAPIC generator* was notable, including fixes for `pytest-asyncio` failures [204b6d0b · Chalmer Lowe], `constants.py` coverage issues [1436a23c · Chalmer Lowe], and general template refactoring to reduce duplication and improve request ID handling [c7b49a99 · Anthonios Partheniou], [3397d1b6 · Anthonios Partheniou], [1e6989da · Anthonios Partheniou].
- Several `librarian` tool updates and release processes were managed, ensuring the use of the latest code generation and dependency management tooling [54fd04b6 · Tomo Suzuki], [6ce0a669 · Tomo Suzuki], [d026fd3c · Tomo Suzuki], [529479e0 · Tomo Suzuki], [commit/e906d01d].
Performance over time
ETV stacked by Growth, Maintenance and Fixes — 90-day moving average, normalized to ETV / month.
Average performance per developer
ETV per active developer per month — 30-day moving average.
Active developers over time
Unique developers committing each day — 90-day moving average.
Knowledge concentration
How dependent is this repo on a small number of contributors? Higher top-1 share = higher key-person risk.
Anthonios Partheniou owns 25.2 % of commits.
Top contributors
Most impactful commits
Top 20 by ETV in the all-time window.
- 9.6ETVfeat: set up Angular infrastructure for TableWidget (#16934) Initialized an Angular workspace within bigframes/display/table_widget_angular and configured a custom build pipeline using esbuild to generate a single-file ESM output. This establishes the infrastructure required for the planned Angular hybrid approach for TableWidget. Verified at: screen/8uAnJEYQr9nx655 Fixes #<505414691> 🦕Shuowei Li · 4d20bab8 · 2026-05-28
- 4.5ETVfeat: make `all` and `any` compatible with integer columns on Polars session (#2154) * docs: remove import bigframes.pandas as bpd boilerplate from many samples Also, fixes several constructors that didn't take a session for compatibility with multi-session applications. * fix docs * fix unit tests * skip sklearn test * fix snapshot * plumb through session for from_tuples and from_arrays * add from_frame * make sure polars session isnt skipped on Kokoro * fix apply doctest * make doctest conftest available everywhere * add python version flexibility for to_dict * disambiguate explicit names * disambiguate explicit name none versus no name * fix for column name comparison in pandas bin op * avoid setting column labels in special case of Series(block) * revert doctest changes * revert doctest changes * revert df docstrings * add polars series unit tests * restore a test * Revert "restore a test" This reverts commit 765b678b34a7976aef1017d2a1fdb34d7a4cfbe4. * skip null * skip unsupported tests * revert more docs changes * revert more docs * revert more docs * fix unit tests python 3.13 * add test to reproduce name error * revert new session methods * fix TestSession read_pandas for Series * revert more unnecessary changes * even more * add unit_noextras to improve code coverage * run system tests on latest fully supported * system-3.12 not found * cap polars version * hide progress bar * relax polars upper pinTim Sweña (Swast) · af4d769b · 2025-10-14
- 4.5ETVchore: fix google3 import colabsqlviz tests (#2499) b/490160312Garrett Wu · 3603b523 · 2026-03-10
- 4.4ETVtest: Add dataframe unit test suite (#1751)TrevorBergeron · cfc93b5d · 2025-06-04
- 3.8ETVfeat: support authorized views (#1034)Daniel Sanche · 115adc76 · 2025-05-22
- 3.3ETVrefactor: reorganize the sqlglot scalar compiler layout - part 2 (#2093) This change follows up on #2075 by splitting unary_compiler.py and its unit test file into smaller files.Chelsea Lin · e18797c1 · 2025-09-17
- 3.2ETVfeat(google-cloud-vectorsearch): regenerate library (#16626) Internal Bug: b/502172684Cody Oss · d80f278e · 2026-04-13
- 3.1ETVfix: resolve rare issue where ValueError is not raised when both request and flattened param are set (#2258)Anthonios Partheniou · 5dfd7718 · 2025-02-28
- 2.7ETVfeat: added client side metric instrumentation to read_rows and mutate_rows (#16758) Migration of https://github.com/googleapis/python-bigtable/pull/1256 to the monorepo Builds off of https://github.com/googleapis/google-cloud-python/pull/16712/ to add instrumentation to read_rows and mutate_rows, along with the mutation batcherDaniel Sanche · 4005e660 · 2026-06-05
- 2.7ETVfeat(bigtable): add client side metric instrumentation to basic rpcs (#16712) Migration of https://github.com/googleapis/python-bigtable/pull/1188 to the monorepo This PR builds off of https://github.com/googleapis/python-bigtable/pull/1187 to add instrumentation to basic data client rpcs (check_and_mutate, read_modify_write, sample_row_keys, mutate_row) Metrics are not currently being exported anywhere, just collected and dropped. A future PR will add a GCP exporter to the system --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>Daniel Sanche · 636af266 · 2026-05-08
- 2.3ETVchore(revert): Revert "chore: [google-cloud-confidentialcomputing] Update gapic-generator-python to 1.26.2"" (#14359) Reverts googleapis/google-cloud-python#14356 BEGIN_COMMIT_OVERRIDE feat: Add new `VerifyConfidentialSpace` and `VerifyConfidentialGke` rpcs and relevant fields fix!: Move `AwsPrincipalTagsOptions` out from `TokenOptions` message docs: Updated comment for method `VerifyAttestation`, `VerifyAttestationRequest` and `VerifyAttestationResponse` in service `ConfidentialComputing` is changed docs: A comment for field `aws_principal_tags_options` in message `.google.cloud.confidentialcomputing.v1.TokenOptions` is changed END_COMMIT_OVERRIDE ~Wait for discussion in b/421423826~Anthonios Partheniou · cb89cdd4 · 2025-09-08
- 2.2ETVfeat: add data model for client side metrics (#1187) This PR revives https://github.com/googleapis/python-bigtable/pull/923, which was de-priotirized to work on the sync client. This PR brings it back, working with both async and sync. It also adds a grpc interceptor, as an improved way to capture metadata across both clients --- ## Design The main architecture looks like this: <img width="651" height="631" alt="300137129-bebbb05a-20f0-45c2-9d38-e95a314edf64 drawio (1)" src="https://github.com/user-attachments/assets/c8318ac8-5f18-4027-9f64-4a40a8ab1d79" /> Most of the work is done by the ActiveOperationMetric class, which is instantiated with each rpc call, and updated through the lifecycle of the call. When the rpc is complete, it will call `on_operation_complete` and `on_attempt_complete` on the MetricsHandler, which can then log the completed data into OpenTelemetry (or theoretically, other locations if needed) Note that there are separate classes for active vs completed metrics (`ActiveOperationMetric`, `ActiveAttemptMetric`, `CompletedOperationMetric`, `CompletedAttemptMetric`). This is so that we can keep fields mutable and optional while the request is ongoing, but pass down static immutable copies once the attempt is completed and no new data is coming --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com> Co-authored-by: Mattie Fu <mattiefu@google.com>Daniel Sanche · db8d5286 · 2026-01-22
- 2.1ETVchore: librarian update image pull request: 20260325T185910Z (#1532) feat: update image to us-central1-docker.pkg.dev/cloud-sdk-librarian-prod/images-prod/python-librarian-generator@sha256:667c9c407ace8caf2deba85187536df8a091e7b05c78eea63eb01255fe17a8f3Anthonios Partheniou · 8f68116e · 2026-03-25
- 2.1ETVtest(gapic-generator): Update gapic generator to resolve pytest-asyncio errors. (#17260) This PR updates the Python GAPIC generator templates to support modern EOL Python support drops natively across the entire SDK. ### Changes * **setup.py.j2**: Bumps the baseline minimum `grpcio` dependency requirement to `>= 1.59.0`. This robust minimum requirement resolves the `pytest-asyncio` event loop regressions universally, removing the need for custom `pytest-asyncio` overrides. * **noxfile.py.j2**: Replaced the hardcoded constraints path with a dynamic constraints file path resolver at runtime, ensuring that monorepos natively resolve to their version-specific constraints files (e.g., `testing/constraints-3.10.txt`). * **pytest-asyncio** Updates the gapic-generator in order to resolve an issue with `pytest-asyncio` failures across Python runtimes 3.10 - 3.14.Chalmer Lowe · 204b6d0b · 2026-05-27
- 2.1ETVchore: update generated noxfile.py (#2379)Anthonios Partheniou · e2d6d7eb · 2025-04-11
- 1.9ETVfeat(auth): implement regional access boundary support for standalone JWT and async service accounts (#17025) This PR implements the following changes: - Add RAB support to async service account and jwt credential types, by providing async manager and fetching methods. - Update unit tests to accept both mtls and standard lookup endpoint urls. - Refactor before_request to use a _after_refresh hook so we don't have to override the method. - Add RAb support for self signed jwt flow through jwt.py - some small enhancements for test coverage and backward compatibilitynbayati · 35af6168 · 2026-06-05
- 1.9ETVrefactor: reorganize the sqlglot scalar compiler layout - part 1 (#2075)Chelsea Lin · d8372818 · 2025-09-15
- 1.8ETVfeat: add cloud.region, request_tag and transaction_tag in span attributes (#1449) This change enhances observability by introducing these new features: 1. **Cloud Region Attribute**: The `cloud.region` attribute is now added to all OpenTelemetry spans generated by the Spanner client. This provides better geographical context for traces, aiding in performance analysis and debugging across different regions. 2. **Transaction Tag**: The `transaction_tag` set on a `Transaction` object is now correctly propagated and included in the `Commit` request. This allows for better end-to-end traceability of transactions. 3. **Request Tag**: This introduces support for `request_tag` on individual Spanner operations like `read`, `execute_sql`, and `execute_update`. When a `request_tag` is provided in the `request_options`, it is now added as a `spanner.request_tag` attribute to the corresponding OpenTelemetry span. This allows for more granular tracing and debugging of specific requests within a transaction or a snapshot. --------- Co-authored-by: surbhigarg92 <surbhigarg.92@gmail.com>Subham Sinha · 36b5b3a6 · 2025-11-12
- 1.7ETVrefactor: move operator definitions from __init__.py to separate files (#1290) * refactor: move operator definitions from __init__.py to separate files * import geo operators * use Union instead of | * update more Union types * expose CaseWhenOp * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * fix lint error --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>Shenyang Cai · 59ab397f · 2025-01-16
- 1.7ETVfeat(gapic): support mTLS certificates when available (#1140) Autogenerated gapic update Includes: - support for mTLS by default when the environment detects it - support for pipelines protosDaniel Sanche · 4fd19634 · 2025-12-16