Skip to content
This repository was archived by the owner on Mar 6, 2026. It is now read-only.
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: googleapis/python-bigquery
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v3.38.0
Choose a base ref
...
head repository: googleapis/python-bigquery
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v3.39.0
Choose a head ref
  • 17 commits
  • 43 files changed
  • 13 contributors

Commits on Sep 19, 2025

  1. docs: remove experimental annotations from GA features (#2303)

    * docs: remove experimental annotations from GA features
    
    Corrects some documentation drift.
    shollyman authored Sep 19, 2025
    Configuration menu
    Copy the full SHA
    1f1f9d4 View commit details
    Browse the repository at this point in the history

Commits on Sep 24, 2025

  1. fix: remove ambiguous error codes from query retries (#2308)

    Context: internal issue b/445984807 comment 10.
    tswast authored Sep 24, 2025
    Configuration menu
    Copy the full SHA
    8bbd3d0 View commit details
    Browse the repository at this point in the history

Commits on Sep 30, 2025

  1. Configuration menu
    Copy the full SHA
    63d7737 View commit details
    Browse the repository at this point in the history
  2. fix: honor custom retry in job.result() (#2302)

    * fix(job): honor custom retry in job.result()
    
    The `_AsyncJob.result()` method was not correctly passing the `retry`
    argument to the superclass's `result()` method when the `retry` object
    was the same as the default retry object. This caused the default
    retry settings to be ignored in some cases.
    
    This change modifies the `result()` method to always pass the `retry`
    argument to the superclass, ensuring that the provided retry settings
    are always honored.
    
    A new test case is added to verify that `job.result()` correctly
    handles both the default retry and a custom retry object.
    
    * Update tests/unit/test_job_retry.py
    
    * Update tests/unit/test_job_retry.py
    
    * blacken and lint
    
    * udpates retry handling and testing of retry handling
    
    * Update tests/unit/test_job_retry.py
    
    * Update tests/unit/test_job_retry.py
    
    * Update tests/unit/test_job_retry.py
    
    ---------
    
    Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
    chalmerlowe and google-labs-jules[bot] authored Sep 30, 2025
    Configuration menu
    Copy the full SHA
    e118b02 View commit details
    Browse the repository at this point in the history

Commits on Oct 1, 2025

  1. Configuration menu
    Copy the full SHA
    9a6a1ab View commit details
    Browse the repository at this point in the history

Commits on Oct 6, 2025

  1. Configuration menu
    Copy the full SHA
    3e116c2 View commit details
    Browse the repository at this point in the history

Commits on Oct 13, 2025

  1. build: update pyproject.toml to follow PEP 639 (#2309)

    * update pyproject.toml to follow PEP 639
    
    * Update pyproject.toml PEP 639
    
    Thanks for the feedback,
    I've removed the version number completely as requested.
    
    * Update pyproject.toml
    
    ---------
    
    Co-authored-by: Chalmer Lowe <[email protected]>
    walid83-0 and chalmerlowe authored Oct 13, 2025
    Configuration menu
    Copy the full SHA
    4251fee View commit details
    Browse the repository at this point in the history

Commits on Oct 14, 2025

  1. chore(python): Add Python 3.14 to python post processor image (#2317)

    * chore(python): Add Python 3.14 to python post processor image
    
    Source-Link: googleapis/synthtool@16790a3
    Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:543e209e7c1c1ffe720eb4db1a3f045a75099304fb19aa11a47dc717b8aae2a9
    
    * Update samples/snippets/noxfile.py
    
    * Update samples/notebooks/noxfile.py
    
    * Update samples/magics/noxfile.py
    
    * Update samples/geography/noxfile.py
    
    * Update samples/desktopapp/noxfile.py
    
    * 🦉 Updates from OwlBot post-processor
    
    See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md
    
    * 🦉 Updates from OwlBot post-processor
    
    See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md
    
    * 🦉 Updates from OwlBot post-processor
    
    See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md
    
    * 🦉 Updates from OwlBot post-processor
    
    See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md
    
    * 🦉 Updates from OwlBot post-processor
    
    See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md
    
    ---------
    
    Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
    Co-authored-by: Chalmer Lowe <[email protected]>
    3 people authored Oct 14, 2025
    Configuration menu
    Copy the full SHA
    7fbd8c2 View commit details
    Browse the repository at this point in the history

Commits on Oct 15, 2025

  1. feat: Add ExternalRuntimeOptions to BigQuery routine (#2311)

    * feat: Add ExternalRuntimeOptions to BigQuery routine
    
    This change introduces the `ExternalRuntimeOptions` class to the
    `google.cloud.bigquery.routine` module, allowing users to configure
    runtime options for external routines.
    
    Key changes:
    - Created the `ExternalRuntimeOptions` class with setters and getters for
      `container_memory`, `container_cpu`, `runtime_connection`,
      `max_batching_rows`, and `runtime_version`.
    - Updated the `Routine` class to include an `external_runtime_options`
      property that accepts an `ExternalRuntimeOptions` object.
    - Added comprehensive unit tests for the new class and its integration
      with the `Routine` class, including tests for both valid and invalid
      input values.
    
    * Update google/cloud/bigquery/routine/routine.py
    
    * feat: Add ExternalRuntimeOptions to BigQuery routine
    
    This change introduces the `ExternalRuntimeOptions` class to the
    `google.cloud.bigquery.routine` module, allowing users to configure
    runtime options for external routines.
    
    Key changes:
    - Created the `ExternalRuntimeOptions` class with setters and getters for
      `container_memory`, `container_cpu`, `runtime_connection`,
      `max_batching_rows`, and `runtime_version`.
    - Updated the `Routine` class to include an `external_runtime_options`
      property that accepts an `ExternalRuntimeOptions` object.
    - Added comprehensive unit tests for the new class and its integration
      with the `Routine` class, including tests for both valid and invalid
      input values.
    
    * feat: Add ExternalRuntimeOptions to BigQuery routine
    
    This change introduces the `ExternalRuntimeOptions` class to the
    `google.cloud.bigquery.routine` module, allowing users to configure
    runtime options for external routines.
    
    Key changes:
    - Created the `ExternalRuntimeOptions` class with setters and getters for
      `container_memory`, `container_cpu`, `runtime_connection`,
      `max_batching_rows`, and `runtime_version`.
    - Updated the `Routine` class to include an `external_runtime_options`
      property that accepts an `ExternalRuntimeOptions` object.
    - Added comprehensive unit tests for the new class and its integration
      with the `Routine` class, including tests for both valid and invalid
      input values.
    - Added additional tests to improve code coverage based on feedback.
    
    * feat: Add ExternalRuntimeOptions to BigQuery routine
    
    This change introduces the `ExternalRuntimeOptions` class to the
    `google.cloud.bigquery.routine` module, allowing users to configure
    runtime options for external routines.
    
    Key changes:
    - Created the `ExternalRuntimeOptions` class with setters and getters for
      `container_memory`, `container_cpu`, `runtime_connection`,
      `max_batching_rows`, and `runtime_version`.
    - Updated the `Routine` class to include an `external_runtime_options`
      property that accepts an `ExternalRuntimeOptions` object.
    - Added comprehensive unit tests for the new class and its integration
      with the `Routine` class, including tests for both valid and invalid
      input values.
    - Added additional tests to improve code coverage based on feedback.
    - Addressed PyType errors by using helper functions for type conversion.
    
    * Update tests/unit/routine/test_external_runtime_options.py
    
    * feat: Add ExternalRuntimeOptions to BigQuery routine
    
    This change introduces the `ExternalRuntimeOptions` class to the
    `google.cloud.bigquery.routine` module, allowing users to configure
    runtime options for external routines.
    
    Key changes:
    - Created the `ExternalRuntimeOptions` class with setters and getters for
      `container_memory`, `container_cpu`, `runtime_connection`,
      `max_batching_rows`, and `runtime_version`.
    - Updated the `Routine` class to include an `external_runtime_options`
      property that accepts an `ExternalRuntimeOptions` object.
    - Added comprehensive unit tests for the new class and its integration
      with the `Routine` class, including tests for both valid and invalid
      input values.
    - Added additional tests to improve code coverage based on feedback.
    - Addressed PyType errors by using helper functions for type conversion.
    - Addressed formatting nits from code review.
    
    ---------
    
    Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
    Co-authored-by: Chalmer Lowe <[email protected]>
    Co-authored-by: Lingqing Gan <[email protected]>
    3 people authored Oct 15, 2025
    Configuration menu
    Copy the full SHA
    fa76e31 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b11e09c View commit details
    Browse the repository at this point in the history

Commits on Oct 20, 2025

  1. feat: adds support for Python runtime 3.14 (#2322)

    * feat: adds support for Python runtime 3.14
    
    * adds step to install gdal
    
    * adds files required by pyarrow
    
    * adds repo required by pyarrow
    
    * corrects url to repo required by pyarrow
    
    * testing a theory with a conditional
    
    * testing a theory with a conditional version of ubuntu
    
    * testing a new approach to installing arrow
    
    * testing a new approach to dearmoring the key
    
    * back to the basics
    
    * trying a conditional again.
    
    * adds explanatory comment resets ubuntu version to latest
    
    * Apply suggestion from @chalmerlowe
    
    * Apply suggestion from @chalmerlowe
    
    * Apply suggestion from @chalmerlowe
    
    * Apply suggestion from @chalmerlowe
    chalmerlowe authored Oct 20, 2025
    Configuration menu
    Copy the full SHA
    6065e14 View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2025

  1. chore(librarian): onboard to librarian (#2326)

    Towards googleapis/librarian#2456
    
    Files removed which is no longer used
    - Owlbot config files, including owlbot.py
    - Sync repo settings config file 
    - Release please config files
    parthea authored Nov 7, 2025
    Configuration menu
    Copy the full SHA
    68e915f View commit details
    Browse the repository at this point in the history

Commits on Nov 21, 2025

  1. tests: temporarily pin pytest (#2334)

    Temporarily pin `pytest < 9` to resolve the following issue
    
    ```
            for invalid_view_value in invalid_view_values:
    >           with self.subTest(invalid_view_value=invalid_view_value):
    
    tests/unit/test_client.py:810: 
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
    /opt/hostedtoolcache/Python/3.11.14/x64/lib/python3.11/contextlib.py:144: in __exit__
        next(self.gen)
    /opt/hostedtoolcache/Python/3.11.14/x64/lib/python3.11/contextlib.py:144: in __exit__
        next(self.gen)
    .nox/unit-3-11/lib/python3.11/site-packages/_pytest/unittest.py:438: in addSubTest
        self.ihook.pytest_runtest_logreport(report=sub_report)
    .nox/unit-3-11/lib/python3.11/site-packages/pluggy/_hooks.py:512: in __call__
        return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    .nox/unit-3-11/lib/python3.11/site-packages/pluggy/_manager.py:120: in _hookexec
        return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    .nox/unit-3-11/lib/python3.11/site-packages/xdist/remote.py:289: in pytest_runtest_logreport
        self.sendevent("testreport", data=data)
    .nox/unit-3-11/lib/python3.11/site-packages/xdist/remote.py:126: in sendevent
        self.channel.send((name, kwargs))
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:912: in send
        self.gateway._send(Message.CHANNEL_DATA, self.id, dumps_internal(item))
                                                          ^^^^^^^^^^^^^^^^^^^^
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1629: in dumps_internal
        return _Serializer().save(obj)  # type: ignore[return-value]
               ^^^^^^^^^^^^^^^^^^^^^^^
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1647: in save
        self._save(obj)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1667: in _save
        dispatch(self, obj)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1744: in save_tuple
        self._save(item)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1667: in _save
        dispatch(self, obj)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1740: in save_dict
        self._write_setitem(key, value)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1734: in _write_setitem
        self._save(value)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1667: in _save
        dispatch(self, obj)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1740: in save_dict
        self._write_setitem(key, value)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1734: in _write_setitem
        self._save(value)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1667: in _save
        dispatch(self, obj)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1740: in save_dict
        self._write_setitem(key, value)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1734: in _write_setitem
        self._save(value)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1667: in _save
        dispatch(self, obj)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1740: in save_dict
        self._write_setitem(key, value)
    .nox/unit-3-11/lib/python3.11/site-packages/execnet/gateway_base.py:1734: in _write_setitem
        self._save(value)
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
    
    self = <execnet.gateway_base._Serializer object at 0x7fc425a0c710>
    obj = <object object at 0x7fc425bcb920>
    
        def _save(self, obj: object) -> None:
            tp = type(obj)
            try:
                dispatch = self._dispatch[tp]
            except KeyError:
                methodname = "save_" + tp.__name__
                meth: Callable[[_Serializer, object], None] | None = getattr(
                    self.__class__, methodname, None
                )
                if meth is None:
    >               raise DumpError(f"can't serialize {tp}") from None
    E               execnet.gateway_base.DumpError: can't serialize <class 'object'>
    ```
    
    The upstream issue is tracked in
    pytest-dev/pytest-xdist#1273
    parthea authored Nov 21, 2025
    Configuration menu
    Copy the full SHA
    8016baa View commit details
    Browse the repository at this point in the history
  2. chore: update librarian sha (#2329)

    This PR updates the librarian sha to support v1.0.0
    ohmayr authored Nov 21, 2025
    Configuration menu
    Copy the full SHA
    0529726 View commit details
    Browse the repository at this point in the history

Commits on Nov 26, 2025

  1. chore(python): removes a filter put in place due to a dependency issu…

    …e with pyarrow (#2338)
    
    Due to an issue with `pyarrow`, a significant dependency for certain
    python-bigquery use cases, not being compatible with Python 3.14, we
    temporarily skipped the failing CI/CD check for 3.14 while awaiting the
    update to pyarrow. Pyarrow is now fully compatible, so that filter is
    being removed.
    
    **KNOWN ISSUES**: this will show that unittests for 3.14 are failing.
    This has nothing to do with this PR/these changes. It is being addressed
    in an alternate mod. It is due to a missing dependency related to
    handling IO for `geopandas` (namely it is missing `libgdal-dev`, etc
    which are normally installed with `pyogrio` + `geopandas`). Because
    `pyogrio` is currently not compatible with Python 3.14 the tests in 3.14
    cannot complete.
    
    This should not prevent **this PR from being merged** to help solve the
    current issue, which is a blocker for getting our continuous tests to
    green.
    chalmerlowe authored Nov 26, 2025
    Configuration menu
    Copy the full SHA
    91fed54 View commit details
    Browse the repository at this point in the history

Commits on Dec 15, 2025

  1. chore: update ownership/routing for repo (#2346)

    This PR effectively moves ownership for this repo to the python language
    team, and removes api-bigquery as the defacto code owner.
    shollyman authored Dec 15, 2025
    Configuration menu
    Copy the full SHA
    fcaf397 View commit details
    Browse the repository at this point in the history
  2. chore: librarian release pull request: 20251212T151524Z (#2344)

    PR created by the Librarian CLI to initialize a release. Merging this PR
    will auto trigger a release.
    
    Librarian Version: v0.7.0
    Language Image:
    us-central1-docker.pkg.dev/cloud-sdk-librarian-prod/images-prod/python-librarian-generator@sha256:c8612d3fffb3f6a32353b2d1abd16b61e87811866f7ec9d65b59b02eb452a620
    <details><summary>google-cloud-bigquery: 3.39.0</summary>
    
    ##
    [3.39.0](v3.38.0...v3.39.0)
    (2025-12-12)
    
    ### Features
    
    * adds support for Python runtime 3.14 (#2322)
    ([6065e14](6065e14c))
    
    * Add ExternalRuntimeOptions to BigQuery routine (#2311)
    ([fa76e31](fa76e310))
    
    ### Bug Fixes
    
    * remove ambiguous error codes from query retries (#2308)
    ([8bbd3d0](8bbd3d01))
    
    * include `io.Base` in the `PathType` (#2323)
    ([b11e09c](b11e09cb))
    
    * honor custom `retry` in `job.result()` (#2302)
    ([e118b02](e118b029))
    
    ### Documentation
    
    * remove experimental annotations from GA features (#2303)
    ([1f1f9d4](1f1f9d41))
    
    </details>
    
    Co-authored-by: Daniel Sanche <[email protected]>
    chalmerlowe and daniel-sanche authored Dec 15, 2025
    Configuration menu
    Copy the full SHA
    8634630 View commit details
    Browse the repository at this point in the history
Loading