Version history

Version 3.9.0, released 2024-03-26

New features

Version 3.8.0, released 2024-03-14

New features

Version 3.7.0, released 2024-03-06

No API surface changes; just dependency updates.

Version 3.6.0, released 2024-02-20

New features

Version 3.5.0, released 2023-10-13

New features

Version 3.4.0, released 2023-06-07

New features

Version 3.3.0, released 2023-04-19

New features

Version 3.2.0, released 2022-11-16

New features

Version 3.1.0, released 2022-07-25

New features

  • Adds table ACLs support (commit 22b00e2)
  • Add support for BigQuery job metadata deletion. (commit 2b501e8) ## Version 3.0.0, released 2022-06-08

This is the first version of this package to depend on GAX v4.

There are some breaking changes, both in GAX v4 and in the generated code. The changes that aren't specific to any given API are described in the Google Cloud documentation. We don't anticipate any changes to most customer code, but please file a GitHub issue if you run into problems.

The most important change in this release is the use of the Grpc.Net.Client package for gRPC communication, instead of Grpc.Core. When using .NET Core 3.1 or .NET 5.0+ this should lead to a smaller installation footprint and greater compatibility (e.g. with Apple M1 chips). Any significant change in a core component comes with the risk of incompatibility, however - so again, please let us know if you encounter any issues.

Bug fixes

New features

  • Add BigQueryJob.ThrowOnFatalError (commit 788a4d0)
    • The existing BigQueryJob.ThrowOnAnyError will throw an exception if any errors are detected, even if the job goes on to complete successfully. This can happen in a query job against an external data source which has been configured to permit a certain number of "bad" rows, for example. The new method is a convenient way of throwing an exception for a genuinely-failed job, as indicated by the JobStatus.ErrorResult property. ## Version 2.4.0, released 2022-05-05

GA release of the features previously in beta: support for BigNumeric, and more detailed exceptions.

Version 2.4.0-beta02, released 2022-04-26

New features

  • Include more information on GoogleApiException.Message when possible. (commit 2057c2e)

BREAKING CHANGE: If calling code depended on the exact exception message, it could be broken by this change. Customers are strongly encouraged not to depend on error message text.

Version 2.4.0-beta01, released 2022-02-07

New features

Version 2.3.0, released 2021-08-10

Version 2.2.0, released 2021-05-05

Version 2.1.0, released 2020-09-23

  • Commit 14be654: feat: Disable pretty printing in BigQuery unless explicitly requested. Fixes issue 5330.
  • Commit 909f568: docs: Clarify the scopes used by BigQueryClient.Create and CreateAsync

Version 2.0.0, released 2020-06-04

  • Commit 0970dff: Fix: Propagates some cancellation tokens that weren't being propagated before.
  • Commit e9e6a47: Binary breaking change: Adds missing CancellationToken parameter on BigQueryDataset.DeleteModelAsync.
  • Commit 8e9c40f: Adds BigQuery Routines CRUD operations.
  • Commit 575c61a:
    • Convert BigQuery field validation from a regex to hand-written code.
    • This is entirely for the sake of performance. Benchmark results are approximately 10x better.
    • Fixes issue 4975

Version 2.0.0-beta04, released 2020-04-07

Version 2.0.0-beta03, released 2020-03-30

Version 2.0.0-beta02, released 2020-03-18

  • Commit 2b4c06f:
    • Table creation breaking change:
      • All options have been removed from Google.Cloud.BigQuery.V2.TableCreateOptions.
      • Table create operations overloads added that received a Google.Apis.Bigquery.v2.Data.Table instead.
      • Extension methods have been added to help in setting some Google.Apis.Bigquery.v2.Data.Table properties.
  • Commit d951c14:
    • Dataset creation breaking change:
      • All options have been removed from Google.Cloud.BigQuery.V2.DatasetCreateOptions.
      • Dataset create operations now received a Google.Apis.Bigquery.v2.Data.Dataset instead.
      • Extension methods have been added to help in setting some Google.Apis.Bigquery.v2.Data.Dataset properties.
  • Commit acad11b:
    • BigQueryResults breaking change.
      • TotalRows is now ulong? instead of ulong.
      • SafeTotalRows has been removed.

In addition to the above changes, this release now targets GAX 3.0.0 (GA).

Version 2.0.0-beta01, released 2020-02-20

Breaking changes:

  • Updated to GAX v3, which has breaking changes, particularly around async pagination
  • Removed obsolete BigQueryResults constructor
  • Insert operations now return a BigQueryInsertResults instead of void

Further breaking changes are being considered before the 3.0.0 release, specifically around BigQueryResults.SafeTotalRows and options to create resources (tables, datasets etc).

New features:

  • Introduced BigQueryInsertResults as a cleaner way of handling insert errors
  • Retrieval of partial results via GetTableOptions.SelectedFields
  • Support for ParentJobId filtering when listing jobs
  • CRUD support for models

Specific commits:

Version 1.4.0, released 2019-12-16

New features since 1.3.0:

  • Commit 1074e9f: Support for empty InsertIds when inserting rows.
  • Add TemplateSuffix, SkipInvalidRows and SuppressInsertErrors to InsertOptions.
  • Add DefaultPartitionExpiration and DefaultEncryptionConfiguration to CreateDatasetOptions.
  • Add table CreationTime, ExpirationTime and Clustering info to ListTables output.
  • Loosen the restriction on JobConfigurationQuery.DestinationTable not being null.
  • Provide option for using Avro logical types for load/extract.
  • Adds creation time filtering to BigQuery job listing.
  • New type BigQueryClientBuilder to simplify configuration.
  • Implement support for BigQuery GEOGRAPHY type.
  • netstandard2.0 target
  • Reimplemented query handling using GetQueryResults RPC instead of ListRows, resulting in a performance improvement

Version 1.3.0, released 2019-02-07

New features since 1.2.0:

  • Support for table clustering in CreateTableOptions
  • Nullable row count properties (SafeTotalRows and NumDmlAffectedRows) in BigQueryResults
  • Support for the NUMERIC type via BigQueryNumeric
  • Support for a projection to be specified when listing jobs
  • Support for time-based partitioning in load and query jobs
  • Support for time-based partitioning by a specific field
  • Support for SchemaUpdateOptions for load and query jobs
  • Support for Parquet load jobs
  • Support for ORC load jobs
  • Support for job labels
  • Support for supplying page tokens to all list operations
  • Public constructors for BigQueryTable etc, for improved testability

Version 1.2.0, released 2018-04-09

New features since 1.1.0:

  • Support for geo-regionalization for data sets and jobs

Version 1.1.0, released 2018-03-06

New features since 1.0.0:

Version 1.0.0, released 2017-12-07

Initial release.