What's Changed
Breaking Changes
There were a number of breaking changes. Many were simple renames of functions. The most interesting were:
- Clients are now constructed by using a builder pattern. See How to initialize a client for the updated pattern.
- Many types not intended to be public were moved into either the
google-cloud-gax-internalcrate, or into amod internal. These types are not part of the public API. They may change or be removed without notice, and we will not consider it a breaking change going forward.
- impl(auth)!: ring for default crypto provider by @dbolduc in #1492
- feat(gax)!: stable paginator by @dbolduc in #1466
- cleanup!: remove 'unstable-stream' feature from clients by @dbolduc in #1499
- refactor!: move
ReqwestClientby @coryan in #1497 - refactor!: move param helpers to
g-c-http-clientby @coryan in #1507 - cleanup(wkt)!: hide
wkt::generatedmodule by @dbolduc in #1589 - cleanup!: hide request builder impls by @dbolduc in #1605
- refactor!: rename polling policy by @coryan in #1608
- cleanup!: use new name for
PollingErrorPolicyby @coryan in #1614 - cleanup!: remove
PollingPolicyvestiges by @coryan in #1610 - cleanup(gax)!:
ClientConfigdoes not need to clear options by @dbolduc in #1625 - feat!: return unit type instead of
wkt::Emptyby @coryan in #1635 - cleanup(gax)!: seal
RequestOptionsBuilder; hideRequestBuilderby @dbolduc in #1637 - cleanup(gax)!: rename paginator to stream by @dbolduc in #1611
- feat!: use builder to create all clients by @coryan in #1649
- cleanup!: hide
PageableResponsetrait by @dbolduc in #1666 - cleanup(auth)!: remove unused type by @coryan in #1697
- fix(auth)!: Rename CredentialTrait to CredentialsTrait and UserCredential to UserCredentials by @sai-sunder-s in #1704
- fix(auth)!: Rename the public Credential Struct to Credentials by @sai-sunder-s in #1707
- fix(auth)!: Rename create_access_token_credential to create_access_token_credentials by @sai-sunder-s in #1711
- fix(auth)!: Rename ServiceAccountCredential and MDSCredential by @sai-sunder-s in #1712
- fix(auth)!: Rename CredentialError to CredentialsError by @sai-sunder-s in #1713
- fix(auth)!: Rename get_universe_domain to universe_domain by @sai-sunder-s in #1721
- fix(auth)!: rename get_headers to headers by @sai-sunder-s in #1720
- fix(auth)!: Rename get_token to token by @sai-sunder-s in #1729
- cleanup(gax)!: prefer "CANCELLED" by @dbolduc in #1736
- cleanup(gax)!:
Paginatoras a trait by @dbolduc in #1737 - cleanup(lro)!: prefer into_stream by @dbolduc in #1742
- cleanup!: shorten oneof accessors by @dbolduc in #1803
Normal Changes
- fix(generator/rust): enum default values by @coryan in #1363
- doc(auth): clarify
Noneexpiration by @dbolduc in #1373 - feat(auth): API Key credentials by @dbolduc in #1372
- feat(generator/rust): enums with bad defaults by @coryan in #1389
- feat(wkt): add
DescriptorProtoby @coryan in #1390 - feat(wkt): implement
NullValueby @coryan in #1388 - feat(financialservices): generate library by @dbolduc in #1396
- fix(wkt): no trailing zeroes in duration as JSON by @coryan in #1400
- feat(wkt): easier to set paths in
FieldMaskby @coryan in #1413 - fix(auth): feature gate aws_lc_rs from rustls by @Sh4d1 in #1359
- feat(wkt): add
type_url()toAnyby @coryan in #1419 - feat(parametermanager/v1): generate library by @coryan in #1423
- feat(wkt): convert to Prost's version of the WKT by @coryan in #1420
- fix(generator/rust): name conflicts for
bytesby @coryan in #1428 - feat(generator): separate unique enum values by @coryan in #1435
- docs: start architecture document by @coryan in #1449
- fix(firestore): include in default workspace members by @coryan in #1450
- feat(generator/rust)!: use integers for enums by @coryan in #1448
- fix(auth): Read token_uri from user json by @sai-sunder-s in #1430
- feat(wkt):
NullValuebehaves like enums by @coryan in #1485 - docs(gax): include streaming APIs by @dbolduc in #1487
- docs(wkt): time and chrono conversions by @dbolduc in #1488
- docs(lro): to_stream methods by @dbolduc in #1508
- feat(bigquery/admin/v2): generate library by @coryan in #1540
- feat(generator): support empty return types by @coryan in #1591
- feat(auth): support non-default MDS credentials by @harkamaljot in #1472
- feat(generator/rust): full transport and client for gRPC by @coryan in #1597
- feat(generator/rust): modules link their message by @coryan in #1606
- feat(auth): introduce caching for user credentials by @sai-sunder-s in #1607
- feat(auth): Integrate service account with token cache by @sai-sunder-s in #1628
- feat(auth): integrate mds cred with token cache by @sai-sunder-s in #1629
- fix(wkt): non-negative timestamp nanos by @coryan in #1634
- docs: user-guide section on retry policies by @coryan in #1657
- docs: user-guide section on mocking by @dbolduc in #1659
- docs: user guide on error handling by @coryan in #1670
- feat(storagebatchoperations): generate library by @dbolduc in #1676
- fix(gax): deserialize error details by @coryan in #1680
- docs: link client call in builder by @dbolduc in #1678
- docs: mocking errors by @dbolduc in #1683
- docs(user-guide): how to examine error details by @coryan in #1685
- feat(gax): new type to represent credential errors by @coryan in #1688
- feat(auth): support non-default Service account credentials by @harkamaljot in #1660
- fix(auth): Updating ApiKeyCredential to ApiKeyCredentials by @sai-sunder-s in #1706
- cleanup: pagination tests by @dbolduc in #1703
- impl(gax-credentials): retry loop in
grpc::Clientby @coryan in #1708 - docs: user guide for testing LROs by @dbolduc in #1695
- docs: fix typos in architecture document by @chrischiedo in #1723
- feat(licensemanager/v1): generate library by @coryan in #1730
- feat(chronicle): generate library by @dbolduc in #1754
- feat(gax): a wrapper for responses with metadata by @coryan in #1745
- feat(auth): support non-default User account credentials by @harkamaljot in #1747
- docs: fix typos in setup dev environment document by @chrischiedo in #1769
- feat(generator): support unknown fields by @coryan in #1770
- fix: field masks as query parameters by @coryan in #1781
- fix(auth): hide token in debug messages by @coryan in #1794
- feat: better setters and comments for
oneofby @coryan in #1798 - docs: user guide for mocking LRO errors by @dbolduc in #1722
New Contributors
- @nakayamaryo0731 made their first contribution in #1394
- @Sh4d1 made their first contribution in #1359
- @chrischiedo made their first contribution in #1723
Full Changelog: v0.3.0...v0.4.0