As of January 1, 2020 this library no longer supports Python 2 on the latest released version. Library versions released prior to that date will continue to be available. For more information please visit Python 2 support on Google Cloud.

Changelog

PyPI History

2.18.0 (2024-03-20)

Features

  • Add common logic for supporting universe domain (#621) (94f2ca3)

Bug Fixes

  • Add _registered_method to grpc ChannelStub (#614) (5eaaea8)

  • deps: Require proto-plus >= 1.22.3 (#626) (4fed37c)

2.17.1 (2024-02-13)

Bug Fixes

  • Resolve issue handling protobuf responses in rest streaming (#604) (bcebc92)

2.17.0 (2024-02-06)

Features

  • Add attempt_direct_path argument to create_channel (#583) (94726e7)

Bug Fixes

  • Retry constructors methods support None (#592) (416203c)

2.16.2 (2024-02-02)

Bug Fixes

2.16.1 (2024-01-30)

Bug Fixes

  • Fix broken import for google.api_core.retry_async.AsyncRetry (#587) (ac012c0)

2.16.0 (2024-01-29)

Features

  • Retry and retry_async support streaming rpcs (#495) (17ff5f1)

2.15.0 (2023-12-07)

Features

  • Add support for Python 3.12 (#557) (091b4f1)

  • Add type annotations to wrapped grpc calls (#554) (fc12b40)

  • Add universe_domain argument to ClientOptions (3069ef4)

  • Introduce compatibility with native namespace packages (#561) (bd82827)

Bug Fixes

  • Fix regression in bidi causing Thread-ConsumeBidirectionalStream caught unexpected exception  and will exit (#562) (40c8ae0)

  • Replace deprecated datetime.datetime.utcnow() (#552) (448923a), closes #540

2.14.0 (2023-11-09)

Features

2.13.1 (2023-11-09)

Bug Fixes

  • Update async client to use async retry (#544) (f21bb32)

2.13.0 (2023-11-03)

Features

  • Add caching to routing header calculation (#526) (6251eab)

Bug Fixes

  • Add warning to retry target to avoid incorrect usage (#543) (bfb40e6)

  • Drop usage of distutils (#541) (4bd9e10)

  • Ensure exception is available when BackgroundConsumer open stream fails (#357) (405272c)

2.12.0 (2023-09-07)

Features

  • Add a little bit of typing to google.api_core.retry (#453) (2477ab9)

  • Add grpc Compression argument to channels and methods (#451) (bdebd63)

Documentation

  • Fix a typo in google/api_core/page_iterator.py (#511) (c0ce73c)

2.11.1 (2023-06-12)

Bug Fixes

  • Add actionable errors for GCE long running operations (#498) (7dfc3a7)

  • Invalid dev version identifiers in setup.py (#505) (8844edb)

2.11.0 (2022-11-10)

Features

  • Add support for Python 3.11 (#466) (ff379e3)

  • Allow representing enums with their unqualified symbolic names in headers (#465) (522b98e)

Bug Fixes

  • Major refactoring of Polling, Retry and Timeout logic (#462) (434253d)

  • Require google-auth >= 2.14.1 (#463) (7cc329f)

2.10.2 (2022-10-08)

Bug Fixes

2.10.1 (2022-09-14)

Bug Fixes

2.10.0 (2022-09-02)

Features

  • Add ‘strict’ to flatten_query_params to lower-case bools (#433) (83678e9)

2.9.0 (2022-09-01)

Features

  • Make grpc transcode logic work in terms of protobuf python objects (#428) (c3ad8ea)

Bug Fixes

2.8.2 (2022-06-13)

Bug Fixes

Documentation

  • fix changelog header to consistent size (#394) (ac266e9)

  • Fix typo in the BackgroundConsumer docstring (#395) (0eb727f)

2.8.1 (2022-05-26)

Bug Fixes

  • deps: require googleapis-common-protos >= 1.56.2 (d84d66c)

  • deps: require protobuf>= 3.15.0, <4.0.0dev (#385) (d84d66c)

2.8.0 (2022-05-18)

Features

  • adds support for audience in client_options (#379) (c97c498)

  • adds support for audience in client_options. (c97c498)

2.7.3 (2022-04-29)

Bug Fixes

  • Avoid AttributeError if grpcio-status is not installed (#370) (022add1)

2.7.2 (2022-04-13)

Bug Fixes

2.7.1 (2022-03-09)

Bug Fixes

2.7.0 (2022-03-08)

Features

  • expose extra fields in ExtendedOperation (#351) (9abc6f4)

2.6.1 (2022-03-05)

Bug Fixes

2.6.0 (2022-03-03)

Features

  • initial support for Extended Operations (#344) (021bb7d)

2.5.0 (2022-02-02)

Features

Bug Fixes

  • deps: remove setuptools from dependencies (#339) (c782f29)

Documentation

2.4.0 (2022-01-11)

Features

  • add support for ‘error_info’ (#315) (cc46aa6)

  • iterator for processing JSON responses in REST streaming. (#317) (f9f2696)

2.3.2 (2021-12-16)

Bug Fixes

  • address broken wheels in version 2.3.1

2.3.1 (2021-12-15)

Bug Fixes

  • exclude function target from retry deadline exceeded exception message (#318) (34ebdcc)

2.3.0 (2021-11-25)

Features

  • add operations rest client to support long-running operations. (#311) (ce1adf3)

Bug Fixes

  • handle bare ‘grpc.Call’ in ‘from_grpc_error’ (#298) (060b339)

2.2.2 (2021-11-02)

Bug Fixes

  • make ‘gapic_v1.method.DEFAULT’ a typed object (#292) (ffc51f0)

2.2.1 (2021-10-26)

Bug Fixes

  • revert “fix: do not error on LROs with no response or error” (#294) (9e6091e)

2.2.0 (2021-10-25)

Features

  • add ‘GoogleAPICallError.error_details’ property (#286) (ef6f0fc)

2.1.1 (2021-10-13)

Bug Fixes

  • add mypy checking + ‘py.typed’ file (#290) (0023ee1)

2.1.0 (2021-10-05)

Features

  • add grpc transcoding + tests (#259) (afe0fa1)

  • Add helper function to format query_params for rest transport. (#275) (1c5eb4d)

  • add support for Python 3.10 (#284) (a422a5d)

2.0.1 (2021-08-31)

Bug Fixes

  • do not error on LROs with no response or error (#258) (618f192)

2.0.0 (2021-08-18)

⚠ BREAKING CHANGES

Bug Fixes

  • bump grpcio version to use stable aio API (#234) (bdbf889)

  • strip trailing _ from field mask paths (#228) (ff6ef1b)

2.0.0b1 (2021-08-03)

⚠ BREAKING CHANGES

Bug Fixes

  • strip trailing _ from field mask paths (#228) (ff6ef1b)

1.31.1 (2021-07-26)

Bug Fixes

  • add ‘requests.exceptions.ChunkedEncodingError’ to retryable exceptions (#237) (5e540f2)

Documentation

  • add Samples section to CONTRIBUTING.rst (#229) (a12c051)

1.31.0 (2021-07-07)

Features

  • add ServiceUnavailable exception to polling retries (#184) (11032cf)

Bug Fixes

1.30.0 (2021-06-08)

Features

  • add iterator capability to paged iterators (#200) (3487d68)

1.29.0 (2021-06-02)

Features

  • HTTPIterator now accepts a page_size parameter to control page … (#197) (a421913)

Documentation

  • fix broken links in multiprocessing.rst (#195) (8d8bc51)

1.28.0 (2021-05-20)

Bug Fixes

Miscellaneous Chores

1.27.0 (2021-05-18)

Features

  • Add support for rest/ token in x-goog-api-client header (#189) (15aca6b)

  • retry google.auth TransportError and requests ConnectionError (#178) (6ae04a8)

1.26.3 (2021-03-25)

Bug Fixes

  • skip empty policy bindings in len() and iter() (#159) (9eaa786)

Documentation

1.26.2 (2021-03-23)

Bug Fixes

1.26.1 (2021-02-12)

Bug Fixes

  • add operation name to x-goog-request-params in async client (#137) (7271b23)

1.26.0 (2021-02-08)

Features

  • allow default_host and default_scopes to be passed to create_channel (#134) (94c76e0)

1.25.1 (2021-01-25)

Bug Fixes

  • add operation name to x-goog-request-params (#133) (97cef4a)

Documentation

1.25.0 (2021-01-14)

Features

  • allow gRPC metadata to be passed to operations client (#127) (73854e8)

Documentation

  • python: document adding Python 3.9 support, dropping 3.5 support (#120) (b51b7f5), closes #787

1.24.1 (2020-12-16)

Bug Fixes

  • support ‘retry’ for ops built from HTTP/gRPC responses (#115) (7a38243), closes #87

1.24.0 (2020-12-14)

Features

  • add support for Python 3.9, drop support for Python 3.5 (#111) (fdbed0f), closes #110

Documentation

  • explain how to create credentials from dict (#109) (5dce6d6)

1.23.0 (2020-10-16)

Features

  • api-core: pass retry from result() to done() (#9) (6623b31)

Bug Fixes

  • map LRO errors to library exception types (#86) (a855339), closes #15

  • harden install to use full paths, and windows separators on windows (#88) (db8e636)

  • update out-of-date comment in exceptions.py (#93) (70ebe42)

1.22.4 (2020-10-05)

Bug Fixes

  • use version.py instead of pkg_resources.get_distribution (#80) (d480d97)

1.22.3 (2020-10-02)

Bug Fixes

1.22.2 (2020-09-03)

Bug Fixes

  • only add quota project id if supported (#75) (8f8ee78)

1.22.1 (2020-08-12)

Documentation

  • fix spelling errors for amount in retry (#69) (7bb713d)

1.22.0 (2020-07-21)

Features

  • allow quota project to be passed to create_channel (#58) (e2d9a7b)

Bug Fixes

  • _determine_timeout problem handling float type timeout (#64) (2010373)

Documentation

  • change the documentation for using ‘six.moves.collections_abc.Mapping’ instead of ‘dict’ in ‘client_options.from_dict()’ (#53) (c890675)

1.21.0 (2020-06-18)

Features

  • allow credentials files to be passed for channel creation (#50) (ded92d0)

1.20.1 (2020-06-16)

Bug Fixes

  • dependencies: increase protobuf version (#49) (1ba6095), closes #48

1.20.0 (2020-06-09)

Features

  • allow disabling response stream pre-fetch (#30) (74e0b0f), closes #25

1.19.1 (2020-06-06)

Bug Fixes

  • bump up grpcio minimum version to 1.29.0 (#41) (4b11422)

1.19.0 (2020-06-05)

Features

  • client_options: add new client options ‘quota_project_id’, ‘scopes’, and ‘credentials_file’ (a582936)

1.18.0 (2020-06-04)

Features

  • [CBT-6 helper] Exposing Retry._deadline as a property (#20) (7be1e59)

  • add client_encryped_cert_source to ClientOptions (#31) (e4eaec0)

  • AsyncIO Integration [Part 2] (#28) (dd9b2f3), closes #23

  • First batch of AIO integration (#26) (a82f289)

  • third batch of AsyncIO integration (#29) (7d8d580)

1.17.0 (2020-04-14)

Features

  • api_core: add retry param into PollingFuture() and it’s inheritors (#9923) (14f1f34), closes #6197

  • api-core: add client_cert_source to ClientOptions (#17) (748c935)

Bug Fixes

  • consume part of StreamingResponseIterator to support failure while under a retry context (#10206) (2b103b6)

1.16.0

01-13-2020 14:19 PST

New Features

  • feat(storage): support optionsRequestedPolicyVersion (#9989)

  • feat(api_core): support version 3 policy bindings (#9869)

1.15.0

12-16-2019 15:27 PST

New Features

  • Make the last retry happen at deadline. (#9873)

  • Add a repr method for ClientOptions. (#9849)

  • Simplify from_rfc3339 methods. (#9641)

  • Provide a raw_page field for page_iterator.Page. (#9486)

Documentation

  • Add Python 2 sunset banner to documentation. (#9036)

  • Remove references to the old authentication credentials. (#9456)

1.14.3

10-07-2019 10:35 PDT

Implementation Changes

  • Finalize during close of ‘ResumableBidiRpc’ (#9337)

  • add on_error to Retry.init (#8892)

  • Fix race in ‘BackgroundConsumer._thread_main’. (#8883)

Documentation

  • Fix intersphinx reference to requests (#9294)

  • Fix broken links in docs. (#9148)

  • About of time -> amount of time (#9052)

  • Remove compatability badges from READMEs. (#9035)

Internal / Testing Changes

  • Remove CI for gh-pages, use googleapis.dev for api_core refs. (#9085)

1.14.2

07-30-2019 14:08 PDT

Documentation

  • Add client_options documentation. (#8834)

1.14.1

07-30-2019 12:24 PDT

Implementation Changes

  • Remove error log entry on clean BiDi shutdown. (#8806)

  • Forward ‘timeout’ arg from ‘exception’ to _blocking_poll. (#8735)

Documentation

  • Update intersphinx mapping for requests. (#8805)

  • Link to googleapis.dev documentation in READMEs. (#8705)

1.14.0

07-17-2019 13:16 PDT

New Features

  • Firestore: Add should_terminate predicate for clean BiDi shutdown. (#8650)

Dependencies

  • Update pins of ‘googleapis-common-protos. (#8688)

Documentation

  • Add compatibility check badges to READMEs. (#8288)

Internal / Testing Changes

  • All: Add docs job to publish to googleapis.dev. (#8464)

1.13.0

06-24-2019 10:34 PDT

New Features

  • Add client_options.ClientOptions object. (#8265)

1.12.0

06-18-2019 12:37 PDT

New Features

  • Add Throttling to Bidi Reopening. Mitigates ResumableBidiRpc consuming 100% CPU (#8193)

1.11.1

05-28-2019 11:19 PDT

Implementation Changes

  • Classify 503 Service Unavailable errors as transient. (#8182)

Dependencies

  • Pin grpcio < 2.0dev. (#8182)

Internal / Testing Changes

  • Add parameterized test for from_rfc3339 with nanos (#7675)

  • Unbreak pytype by silencing a false positive. (#8106)

1.11.0

05-15-2019 10:29 PDT

New Features

  • Refactor ‘client_info’ support. (#7849)

1.10.0

04-29-2019 10:12 PDT

Implementation Changes

  • Append leading zeros for nanosecond precision DateTimes (#7663)

New Features

  • Add user_agent property to ClientInfo (#7799)

1.9.0

04-05-2019 10:38 PDT

Implementation Changes

  • Allow passing metadata as part of creating a bidi (#7514)

Internal / Testing Changes

  • Update setup.py

  • API Core: specify a pytype output directory in setup.cfg. (#7639)

1.8.2

03-22-2019 16:27 PDT

Implementation Changes

  • Remove classifier for Python 3.4 for end-of-life. (#7535)

Internal / Testing Changes

  • When re-opening a ResumableBidiRPC set _request_queue_generator to None. (#7548)

1.8.1

03-12-2019 12:45 PDT

Implementation Changes

  • Protect the creation of a background thread in BackgroundConsumer and wait on it starting. (#7499)

1.8.0

02-23-2019 15:46 PST

New Features

  • Add support to unwrap Anys into wrapped pb2 objects. (#7430)

  • Add Operation.deserialize. (#7427)

Documentation

  • Updated client library documentation URLs. (#7307)

Internal / Testing Changes

  • Fix new lint failure. (#7382)

1.7.0

12-17-2018 13:56 PST

New Features

  • Support converting DatetimeWithNanos to / from google.protobuf.timestamp_pb2.Timestamp. (#6919)

Documentation

  • Document Python 2 deprecation. (#6910)

  • Add usage example for google.api_core.iam.Polcy. (#6855)

Internal / Testing Changes

  • Work around pytype big for ABCMeta.register. (#6873)

1.6.0

11-30-2018 12:45 PST

Implementation Changes

  • Import stdlib ABCs from ‘collections.abc’ rather than ‘collections’. (#6451)

New Features

  • Move google.cloud.iam (core) to google.api_core.iam (#6740)

  • Add bidi support to api_core. (#6191)

Documentation

Internal / Testing Changes

  • blacken api_core and core (#6668)

1.5.2

11-09-2018 14:22 PST

Implementation Changes

  • Retry transient errors in ‘PollingFuture.result’. (#6305)

Dependencies

  • Remove hyphen from named extra in api_core. (#6468)

  • Bump minimum ‘api_core’ version for all GAPIC libs to 1.4.1. (#6391)

  • Avoid broken ‘google-common-apis 1.5.4’ release. (#6355)

1.5.1

10-29-2018 13:29 PDT

Implementation Changes

  • Don’t URL-encode slashes in gRPC request headers. (#6310)

Internal / Testing Changes

  • Back out changes from #6267 / api_core-1.6.0a1 release. (#6328)

1.5.0

New Features

  • Add bidi, Bidirection Streaming, to api-core (#6211)

Internal / Testing Changes

1.4.1

Dependencies

  • Pin minimum protobuf dependency to 3.4.0. (#6132)

Internal / Testing Changes

  • Add type-checking via pytype to api_core. (#6116)

1.4.0

Dependencies

  • Add support for gRPC connection management (available when using optional grpc_gcp dependency) (#5553) (#5904)

  • Update classifiers to drop Python 3.4 and add Python 3.7 (#5702)

1.3.0

New Features

  • Add protobuf_helpers.field_mask to calculate a field mask from two messages (#5320)

1.2.1

Implementation Changes

  • Make client_info work without gRPC installed. (#5075)

  • Rename x-goog-header-params to x-goog-request-params (#5495)

1.2.0

Implementation Changes

  • Add close method to grpc Channel (#5333)

Internal / Testing Changes

  • Fix tests after grpcio update (#5333)

  • Add Test runs for Python 3.7 and remove 3.4 (#5295)

1.1.2

Packaging

  • Update setuptools before packaging (#5265)

1.1.1

Internal / Testing Changes

  • Use install_requires for platform dependencies instead of extras_require (#4991)

  • Update trove classifer to ‘5 - Production/Stable’

1.1.0

Interface additions

  • Add datetime_helpers.DatetimeWithNanoSeconds (#4979)

Implementation changes

  • Use a class to wrap grpc streaming errors instead of monkey-patching (#4995)

1.0.0

This is the stable v1.0.0 release of google-api-core for Python. Releases after this will not contain breaking changes.

Interface changes and additions

  • Made api_core.page_iterator.PageIterator.item_to_value public

  • Added ability to specify retry for Operation and polling.Future. (#4922)

0.1.4

New Features

  • Add ChannelStub to grpc_helpers for testing gRPC-based clients. (#4705)

Notable Implementation Changes

  • Fix handling of gapic metadata when specified as None. (#4701)

0.1.3

Notable Implementation Changes

  • Apply scopes to explicitly provided credentials if needed (#4594).

  • Removing google.api_core.gapic_v1.method.METRICS_METADATA_KEY. It can be accessed via google.api_core.gapic_v1.client_info.METRICS_METADATA_KEY (#4588).

Dependencies

  • Upgrading to latest grpcio==1.8.2 (#4642). For details, see related gRPC bug and fix.

PyPI: https://pypi.org/project/google-api-core/0.1.3/

0.1.2

  • Upgrading concurrent.futures backport from >= 3.0.0 to >= 3.2.0 (#4521).

  • Moved datetime-related helpers from google.cloud.core to google.api_core.datetime_helpers (#4399).

  • Added missing client_info to gapic_v1/__init__.py’s __all__ (#4567).

  • Added helpers for routing headers to gapic_v1 (#4336).

PyPI: https://pypi.org/project/google-api-core/0.1.2/

0.1.1

Dependencies

  • Upgrading grpcio dependency from 1.2.0, < 1.6dev to >= 1.7.0 (#4280)

PyPI: https://pypi.org/project/google-api-core/0.1.1/

0.1.0

Initial release

Prior to being separated, this package was developed in google-cloud-core, so relevant changes from that package are included here.

  • Add google.api.core.gapic_v1.config (#4022)

  • Add google.api.core.helpers.grpc_helpers (#4041)

  • Add google.api.core.gapic_v1.method (#4057)

  • Add wrap_with_paging (#4067)

  • Add grpc_helpers.create_channel (#4069)

  • Add DEFAULT sentinel for gapic_v1.method (#4079)

  • Remove googleapis-common-protos from deps in non-core packages. (#4098)

  • Add google.api.core.operations_v1 (#4081)

  • Fix test assertion in test_wrap_method_with_overriding_retry_deadline (#4131)

  • Add google.api.core.helpers.general_helpers.wraps (#4166)

  • Update Docs with Python Setup Guide (#4187)

  • Move modules in google.api.core.helpers up one level, delete google.api.core.helpers. (#4196)

  • Clarify that PollingFuture timeout is in seconds. (#4201)

  • Add api_core package (#4210)

  • Replace usage of google.api.core with google.api_core (#4221)

  • Add google.api_core.gapic_v2.client_info (#4225)

  • Fix how api_core.operation populates exception errors (#4231)

  • Fix bare except (#4250)

  • Fix parsing of API errors with Unicode err message (#4251)

  • Port gax proto helper methods (#4249)

  • Remove gapic_v1.method.wrap_with_paging (#4257)

  • Add final set of protobuf helpers to api_core (#4259)

PyPI: https://pypi.org/project/google-api-core/0.1.0/