NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #228 most downloaded on PyPI
Google BigQuery API client library
Last release today
01 Oct 2026
Release timing varies
gaps range from 1 weeks to 3 months
Nearly every release is documented
notes for 59 of the last 60 stable releases
4 versions withdrawn
withdrawn after publishing
10 years old
196 releases · first in 2016
add TableReference.__str__ to get table ID in standard SQL (#405) (53dff2a), closes #354
One column per quarter.
add progress bar to QueryJob.to_dataframe and to_arrow
QueryJob.to_dataframe and to_arrow (#352) (dc78edd)to_dataframe if all rows are cached (#384) (c52b317)jobs.getQueryResults rows (#374) (86f6a51)getQueryResults from DB-API (#375) (30de15f)update google.cloud.bigquery.__version__
11-05-2020 09:27 PST
google.cloud.bigquery.__version__add method api_repr for table list item
add constants for MONTH and YEAR time partitioning types
Transition the library to microgenerator. (#278) This is a breaking change that drops support for Python 2.7 and 3.5 and brings a few other changes. S…
09-30-2020 14:51 PDT
Fix invalid version specification of pyarrow
deps: require protobuf<4.0.0 on v1 branch
deps: require google-api-core >= 1.31.5, >= 2.3.2 on v1 release
add custom cell magic parser to handle complex --params values
--params values (#213) (dcfbac2)rationalize platform constraints for 'pyarrow' extra
Migrated code samples from https://github.com/GoogleCloudPlatform/python-docs-samples
use BigQuery Storage client by default (#55) (e75ff82), closes #91
NaN values when uploading from insert_rows_from_dataframe (#170) (f9f2f45)1.25.0 (2026-10-01) Features declare Python3.15 support
Deprecate client.dataset() in favor of DatasetReference.
02-03-2020 01:38 PST
client.dataset() in favor of DatasetReference. (#7753)to_arrow + to_pandas in to_dataframe() when pyarrow is available. (#10027)datetime[ns] columns to BigQuery TIMESTAMP columns. (#10028)rows argument type in insert_rows(). (#10174)json_rows arg type in insert_rows_json(). (#10162)RowIterator.to_dataframe_iterable() method public. (#10017)QueryJob.done() method. (#9875)create_bqstorage_client parameter to to_dataframe() and to_arrow() methods. (#9573)google-cloud-core and google-resumable-media dependencies. (#10016)job.py. (#10209)Client constructor and imports in samples. (#10058)Add iamMember entity type to allowed access classes.
Add close() method to client for releasing open sockets.
12-11-2019 13:31 PST
close() method to client for releasing open sockets. (#9894)use_avro_logical_types for extract jobs. (#9642)Preserve job config passed to Client methods.
11-13-2019 12:23 PST
job_config type is passed to client job methods. (#9506)--destination_table parameter to IPython magic. (#9599)google-resumable-media to includ 0.5.x. (#9572)add ability to pass in a table ID instead of a query to the %%bigquery magic
10-16-2019 10:33 PDT
%%bigquery magic (#9170)QueryJobConfig in BigQuery.cursor.execute method (#9278)QueryJob to destination var on error in %%bigquery magic (#9245)Dataset.default_partition_expiration_ms and Table.require_partition_filter properties (#9464)google-resumable-media (#9243)Deprecate automatic schema conversion.
09-13-2019 11:22 PDT
arraysize attribute to None (#9199)list_rows() max results with BQ storage client (#9178)Model.encryption_config. (via synth) (#9214)Client.insert_rows_from_dataframe() method (#9162)Cursor.execute(). (#9189)Table.from_string() factory. (#9161)--max_results option to Jupyter magics (#9169)max_results parameter to QueryJob.result(). (#9167)Nothing published for this version
Raise when unexpected fields are present in the LoadJobConfig.schema when calling load_table_from_dataframe.
09-03-2019 14:33 PDT
LoadJobConfig.schema when calling load_table_from_dataframe. (#9096)load_table_from_dataframe based on dtypes. (#9049)STRUCT columns. (#9053)None in QueryJob for queries with parameters. (#9029)load_table_from_dataframe, only if
fields corresponding to indexes are present in LoadJobConfig.schema.
(#9084)client_options to constructor. (#8999)--dry_run option to %%bigquery magic. (#9067)load_table_from_json() method to create a table from a list of dictionaries. (#9076)load_table_from_dataframe. (#9064)LoadJobConfig.schema. (#9077)Dataset for project IDs containing an org prefix. (#8877)SchemaField. (#9040)Client.create_dataset(). (#9149)client.dataset(). (#9032)Nothing published for this version
Add bqstorage_client param to QueryJob.to_arrow()
08-08-2019 12:28 PDT
bqstorage_client param to QueryJob.to_arrow() (#8693)to_standard_sql() method to SchemaField (#8880)0.14.*. (#8785)maybe_fail_import() to top level test utils (#8840)Nothing published for this version
Support faster Arrow data format in to_dataframe when using BigQuery Storage API.
Nothing published for this version
Add more stats to Models API, such as optimization_strategy (via synth).
07-01-2019 10:22 PDT
optimization_strategy (via synth). (#8344)to_dataframe to deterministicly update progress bar. (#8303)Nothing published for this version
Fix bug where load_table_from_dataframe could not append to REQUIRED fields.
Nothing published for this version
Add maximum_bytes_billed argument and context.default_query_job_config property to magics.
Nothing published for this version
Use job_config.schema for data type conversion if specified in load_table_from_dataframe.
Nothing published for this version
Don't raise error when encountering unknown fields in Models API.
Remove duplicates from index on pandas DataFrames returned by to_dataframe().
05-16-2019 11:25 PDT
to_dataframe(). (#7953)to_dataframe with BQ Storage from queries containing ORDER BY (#7793)progress_bar_type in to_dataframe when used with BQ Storage API (#7697)to_dataframe progress bar when finished. (#7757)KeyboardInterrupt during to_dataframeno longer hangs. (#7698)total_rows available on RowIterator before iteration (#7622)to_dataframe with BQ Storage API (#7674)client_info. (#7849 and (#7806)destination and related properties to LoadJob. (#7710)clustering_fields property to TableListItem (#7692)created and expires properties to TableListItem (#7684)google-cloud-core >= 1.0.0, < 2.0dev. (#7993)[all] extras to install all extra dependencies (#7610)Nothing published for this version
Nothing published for this version
04-05-2019 08:16 PDT ### Dependencies - Add dependency on protobuf.
Increment version number in setup.py.
04-04-2019 09:19 PDT
setup.py.Nothing published for this version
Harden 'ArrayQueryParameter.from_api_repr' against missing 'parameterValue'.
03-06-2019 15:20 PST
exists_ok and not_found_ok options to ignore errors when creating/deleting datasets/tables. (#7491)Nothing published for this version
update API sources and regenerate
02-04-2019 13:28 PST
dtypes and use BQ Storage API to QueryJob.to_dataframe(). (#7241)total_rows from query results. (#7217)Nothing published for this version
Normalize docs for 'page_size' / 'max_results' / 'page_token'
Add option to use BQ Storage API with to_dataframe
12-10-2018 12:39 PST
to_dataframe (#6854)to_bqstorage to convert from Table[Reference] google-cloud-bigquery-storage reference (#6840)iam.policy from google.api_core. (#6741)retry argument to _AsyncJob.result. (#6302)Nothing published for this version
Add destination table properties to LoadJobConfig.
11-05-2018 16:41 PST
LoadJobConfig. (#6202)create_dataset and create_table (#6199)--params option to %%bigquery magic (#6277)to_api_repr method for jobs. (#6176)Nothing published for this version
Nothing published for this version
1.6.0 (2026-10-01) Features declare Python3.15 support
Nothing published for this version
Retry '502 Bad Gateway' errors by default.
1.5.0 (2026-10-01) Features declare Python3.15 support
Add 'internalError' to retryable error reasons.
Add timeline and top-level slot-millis to query statistics.
client.load_table_from_dataframe() (#5387)Switch list_partitions helper to a direct metatable read
list_partitions helper to a direct metatable read (#5273)Encoding.ISO_8859_1 enum value (#5211)list_datasets and list_jobs (#5217)ExtractJob.destination_uri_file_counts. (#5245)Add client.get_service_account_email
client.get_service_account_email (#5203)Your coding agent can read these notes before it upgrades. Set up the MCP server →