Update module aws/aws-sdk-go-v2/config to v0.2.2 #52
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v0.2.1->v0.29.0Release Notes
aws/aws-sdk-go-v2
v0.29.0Compare Source
v0.28.0Compare Source
v0.27.0Compare Source
Configuration
The
configmodule's exported types were trimmed down to add clarity and reduce confusion. Additional changes to theconfigmodule' helpers.WithCredentialsProvider,WithHTTPClient, andWithEndpointResolverto functions instead of structs.MFATokenFuncProvider, useAssumeRoleCredentialOptionsProviderfor setting options forstscreds.AssumeRoleOptions.WithWebIdentityCredentialProviderOptionstoWithWebIdentityRoleCredentialOptionsAssumeRoleCredentialProviderOptionstoAssumeRoleCredentialOptionsProviderEndpointResolverFuncProvidertoEndpointResolverProviderAPI Client
Optionstype getter methods have been removed. Use the struct members instead.smithy.OperationErrortosmithy.OperationInvokeError.v0.26.0Compare Source
Configuration
The
configmodule's exported types were trimmed down to add clarity and reduce confusion. Additional changes to theconfigmodule' helpers.WithCredentialsProvider,WithHTTPClient, andWithEndpointResolverto functions instead of structs.MFATokenFuncProvider, useAssumeRoleCredentialOptionsProviderfor setting options forstscreds.AssumeRoleOptions.WithWebIdentityCredentialProviderOptionstoWithWebIdentityRoleCredentialOptionsAssumeRoleCredentialProviderOptionstoAssumeRoleCredentialOptionsProviderEndpointResolverFuncProvidertoEndpointResolverProviderAPI Client
Optionstype getter methods have been removed. Use the struct members instead.smithy.OperationErrortosmithy.OperationInvokeError.v0.25.0Compare Source
Design changes
The v2 preview SDK
v0.25.0release represents a significant stepping stone bringing the v2 SDK closer to its target design and usability. This release includes significant breaking changes to the v2 preview SDK. The updates in thev0.25.0release focus on refactoring and modularization of the SDK’s API clients to use the new client design, updated request pipeline (aka middleware), refactored credential providers, and configuration loading packages.We've also bumped the minimum supported Go version with this release. Starting with v0.25.0 the SDK requires a minimum version of Go
v1.15.As a part of the refactoring done to v2 preview SDK some components have not been included in this update. The following is a non exhaustive list of features that are not available.
We expect additional breaking changes to the v2 preview SDK in the coming releases. We expect these changes to focus on organizational, naming, and hardening the SDK's design for future feature capabilities after it is released for general availability.
Relocated Packages
In this release packages within the SDK were relocated, and in some cases those packages were converted to Go modules. The following is a list of packages have were relocated.
github.com/aws/aws-sdk-go-v2/aws/external=>github.com/aws/aws-sdk-go-v2/configmodulegithub.com/aws/aws-sdk-go-v2/aws/ec2metadata=>github.com/aws/aws-sdk-go-v2/ec2imdsmoduleThe
github.com/aws/aws-sdk-go-v2/credentialsmodule contains refactored credentials providers.github.com/aws/aws-sdk-go-v2/ec2rolecreds=>github.com/aws/aws-sdk-go-v2/credentials/ec2rolecredsgithub.com/aws/aws-sdk-go-v2/endpointcreds=>github.com/aws/aws-sdk-go-v2/credentials/endpointcredsgithub.com/aws/aws-sdk-go-v2/processcreds=>github.com/aws/aws-sdk-go-v2/credentials/processcredsgithub.com/aws/aws-sdk-go-v2/stscreds=>github.com/aws/aws-sdk-go-v2/credentials/stscredsModularization
New modules were added to the v2 preview SDK to allow the components to be versioned independently from each other. This allows your application to depend on specific versions of an API client module, and take discrete updates from the SDK core and other API client modules as desired.
API Clients
The following is a list of the major changes to the API client modules
v0.25.0, you'll need to add the API client's module to your application's go.mod file.typespackage within the API client's module, e.g.github.com/aws/aws-sdk-go-v2/service/s3/typesThese types were moved to improve documentation and discovery of the API client, operation, and input/output types. For example Amazon S3's ListObject's operation ListObjectOutput.Contents input parameter is a slice of types.Object.Requestsuffix. The method now invokes the operation instead of constructing a request, which needed to be invoked separately. The operation methods were also expanded to include functional options for providing operation specific configuration, such as modifying the request pipeline.Configuration
In addition to the
github.com/aws/aws-sdk-go-v2/aws/externalpackage being made a module atgithub.com/aws/aws-sdk-go-v2/config, theLoadDefaultAWSConfigfunction was renamed toLoadDefaultConfig.The
github.com/aws/aws-sdk-go-v2/aws/defaultspackage has been removed. Its components have been migrated to thegithub.com/aws/aws-sdk-go-v2/awspackage, andgithub.com/aws/aws-sdk-go-v2/configmodule.Error Handling
The
github.com/aws/aws-sdk-go-v2/aws/awserrpackage was removed as a part of the SDK error handling refactor. The SDK now uses typed errors built around Go v1.13's errors.As and errors.Unwrap features. All SDK error types that wrap other errors implement theUnwrapmethod. Generic v2 preview SDK errors created withfmt.Errorfuse%wto wrap the underlying error.The SDK API clients now include generated public error types for errors modeled for an API. The SDK will automatically deserialize the error response from the API into the appropriate error type. Your application should use
errors.Asto check if the returned error matches one it is interested in. Your application can also use the generic interface smithy.APIError to test if the API client's operation method returned an API error, but not check against a specific error.API client errors returned to the caller will use error wrapping to layer the error values. This allows underlying error types to be specific to their use case, and the SDK's more generic error types to wrap the underlying error.
For example, if an Amazon DynamoDB Scan operation call cannot find the
TableNamerequested, the error returned will contain dynamodb.ResourceNotFoundException. The SDK will return this error value wrapped in a couple layers, with each layer adding additional contextual information such as ResponseError for AWS HTTP response error metadata , and smithy.OperationError for API operation call metadata.Logging an error value will include information from each wrapped error. For example, the following is a mock error logged for a Scan operation call that failed because the table was not found.
The
github.com/aws/aws-sdk-go-v2/aws/endpointshas been removed from the SDK, along with all exported endpoint definitions and iteration behavior. Each generated API client now includes its own endpoint definition internally to the module.API clients can optionally be configured with a generic aws.EndpointResolver via the aws.Config.EndpointResolver. If the API client is not configured with a custom endpoint resolver it will defer to the endpoint resolver the client module was generated with.
v0.24.0Compare Source
Design changes
The v2 preview SDK
v0.25.0release represents a significant stepping stone bringing the v2 SDK closer to its target design and usability. This release includes significant breaking changes to the v2 preview SDK. The updates in thev0.25.0release focus on refactoring and modularization of the SDK’s API clients to use the new client design, updated request pipeline (aka middleware), refactored credential providers, and configuration loading packages.We've also bumped the minimum supported Go version with this release. Starting with v0.25.0 the SDK requires a minimum version of Go
v1.15.As a part of the refactoring done to v2 preview SDK some components have not been included in this update. The following is a non exhaustive list of features that are not available.
We expect additional breaking changes to the v2 preview SDK in the coming releases. We expect these changes to focus on organizational, naming, and hardening the SDK's design for future feature capabilities after it is released for general availability.
Relocated Packages
In this release packages within the SDK were relocated, and in some cases those packages were converted to Go modules. The following is a list of packages have were relocated.
github.com/aws/aws-sdk-go-v2/aws/external=>github.com/aws/aws-sdk-go-v2/configmodulegithub.com/aws/aws-sdk-go-v2/aws/ec2metadata=>github.com/aws/aws-sdk-go-v2/ec2imdsmoduleThe
github.com/aws/aws-sdk-go-v2/credentialsmodule contains refactored credentials providers.github.com/aws/aws-sdk-go-v2/ec2rolecreds=>github.com/aws/aws-sdk-go-v2/credentials/ec2rolecredsgithub.com/aws/aws-sdk-go-v2/endpointcreds=>github.com/aws/aws-sdk-go-v2/credentials/endpointcredsgithub.com/aws/aws-sdk-go-v2/processcreds=>github.com/aws/aws-sdk-go-v2/credentials/processcredsgithub.com/aws/aws-sdk-go-v2/stscreds=>github.com/aws/aws-sdk-go-v2/credentials/stscredsModularization
New modules were added to the v2 preview SDK to allow the components to be versioned independently from each other. This allows your application to depend on specific versions of an API client module, and take discrete updates from the SDK core and other API client modules as desired.
API Clients
The following is a list of the major changes to the API client modules
v0.25.0, you'll need to add the API client's module to your application's go.mod file.typespackage within the API client's module, e.g.github.com/aws/aws-sdk-go-v2/service/s3/typesThese types were moved to improve documentation and discovery of the API client, operation, and input/output types. For example Amazon S3's ListObject's operation ListObjectOutput.Contents input parameter is a slice of types.Object.Requestsuffix. The method now invokes the operation instead of constructing a request, which needed to be invoked separately. The operation methods were also expanded to include functional options for providing operation specific configuration, such as modifying the request pipeline.Configuration
In addition to the
github.com/aws/aws-sdk-go-v2/aws/externalpackage being made a module atgithub.com/aws/aws-sdk-go-v2/config, theLoadDefaultAWSConfigfunction was renamed toLoadDefaultConfig.The
github.com/aws/aws-sdk-go-v2/aws/defaultspackage has been removed. Its components have been migrated to thegithub.com/aws/aws-sdk-go-v2/awspackage, andgithub.com/aws/aws-sdk-go-v2/configmodule.Error Handling
The
github.com/aws/aws-sdk-go-v2/aws/awserrpackage was removed as a part of the SDK error handling refactor. The SDK now uses typed errors built around Go v1.13's errors.As and errors.Unwrap features. All SDK error types that wrap other errors implement theUnwrapmethod. Generic v2 preview SDK errors created withfmt.Errorfuse%wto wrap the underlying error.The SDK API clients now include generated public error types for errors modeled for an API. The SDK will automatically deserialize the error response from the API into the appropriate error type. Your application should use
errors.Asto check if the returned error matches one it is interested in. Your application can also use the generic interface smithy.APIError to test if the API client's operation method returned an API error, but not check against a specific error.API client errors returned to the caller will use error wrapping to layer the error values. This allows underlying error types to be specific to their use case, and the SDK's more generic error types to wrap the underlying error.
For example, if an Amazon DynamoDB Scan operation call cannot find the
TableNamerequested, the error returned will contain dynamodb.ResourceNotFoundException. The SDK will return this error value wrapped in a couple layers, with each layer adding additional contextual information such as ResponseError for AWS HTTP response error metadata , and smithy.OperationError for API operation call metadata.Logging an error value will include information from each wrapped error. For example, the following is a mock error logged for a Scan operation call that failed because the table was not found.
The
github.com/aws/aws-sdk-go-v2/aws/endpointshas been removed from the SDK, along with all exported endpoint definitions and iteration behavior. Each generated API client now includes its own endpoint definition internally to the module.API clients can optionally be configured with a generic aws.EndpointResolver via the aws.Config.EndpointResolver. If the API client is not configured with a custom endpoint resolver it will defer to the endpoint resolver the client module was generated with.
v0.23.0Compare Source
Services
SDK Enhancements
aws/stscreds:PolicyArnscan now be passed in tostscreds.AssumeRoleProviderandstscreds.WebIdentityRoleProviderin the same way assts.AssumeRoleInput.SDK Bugs
aws/defaults: Fix handling of unexpected Date response header value (#560)service/s3: Fix S3 client behavior wrt 200 OK response with empty payloadv0.22.0Compare Source
Services
Breaking Changes
v0.21.0Compare Source
Breaking Change
aws/endpoints: Several functions and types have been removedDecodeModelandDecodeModelOptionsfrom the package (#509)service/s3/s3crypto: Package and associated encryption/decryption clients have been removed from the SDK (#511)aws/external: Removes several export constants and types (#508)DefaultSharedConfigProfileis now defined an exported constantaws:ErrMissingRegion,ErrMissingEndpoint,ErrStaticCredentialsEmptyare now concrete error types (#510)Services
SDK Features
aws/signer/v4: New methodsSignHTTPandPresignHTTPhave been added (#519)SignHTTPreplacesSign, and usage ofSignshould be migrated before it's removal at a later datePresignHTTPreplacesPresign, and usage ofPresignshould be migrated before it's removal at a later dateDisableRequestBodyOverwriteandUnsignedPayloadare now deprecated options and have no effect onSignHTTPorPresignHTTP. These options will be removed at a later date.aws/external: Add Support for setting a default fallback region and resolving region from EC2 IMDS (#523)WithDefaultRegionhelper has been added which can be passed toLoadDefaultAWSConfigSDK Enhancements
service/dynamodb/expression: Add IsSet helper for ConditionBuilder and KeyConditionBuilder (#494)internal/ini: Normalize Section keys to lowercase (#495)SDK Bugs
internal/sdk: Fix SDK's UUID utility to handle partial read (#536)aws/defaults: Fix request metadata headers causing signature errors (#536)v0.20.0Compare Source
Breaking Change
aws/retrypackage allow wrapping aRetrierwith custom behavior, overriding the baseRetrier, (e.g.AddWithErrorCodes, andAddWithMaxAttempts)errors.As,Is, andUnwrap. The SDK's errors were updated to satisfy theUnwrapinterface, returning the underlying error.Timeout,Temporary, and other states added to the SDK such asCanceledError.errorspackage.Services
SDK Features
aws: Add Support for additional credential providers and credential configuration chaining (#488)aws/processcreds: Adds Support for the Process Credential Provideraws/stscreds: Adds Support for the Web Identity Credential Providercredential_sourceaws/awserr: Adds support for Go 1.13'serrors.Unwrap(#487)aws: Updates SDK retry behavior (#487)aws/retry: New package defining logic to determine if a request should be retried, and backoff.aws/ratelimit: New package defining rate limit logic such as token bucket used by theretry.Standardretrier.SDK Enhancements
aws: Add grouping of concurrent refresh of credentials (#503)Retrieveare now grouped in order to prevent numerous synchronous calls to refresh the credentials. Replacing the mutex with a singleflight reduces the overall amount of time request signatures need to wait while retrieving credentials. This is improvement becomes pronounced when many requests are made concurrently.service/s3/s3manager: Improve memory allocation behavior by replacing sync.Pool with custom pool implementationio.Readerto upload does not satisfy both theio.ReaderAtandio.ReadSeekerinterfaces.SDK Bugs
service/s3/s3manager: Fix resource leaks when the following occurred:v0.19.0Compare Source
Breaking Change
service: Add generated service for wafregional and dynamodbstreams #463aws: Context has been added to EC2Metadata operations.(#461)private/model: Add utility for validating shape names for structs and enums for the service packages (#471)aws: Client, Metadata, and Request structures have been refactored to simplify the usage of resolved endpoints (#473)aws.Client.Endpointstruct member has been removed, andaws.Request.Endpointstruct member has been added of typeaws.Endpointaws.Client.Regionstructure member has been removedServices
SDK Features
aws:PartitionIDhas been added toaws.Endpointstructure, and is used by the endpoint resolver to indicate which AWS partition an endpoint was resolved for (#473)aws/endpoints: Updated resolvers to populatePartitionIDfor a resolvedaws.Endpoint(#473)service/s3: Add support for Access Point resourcesSDK Enhancements
internal/sdkio: Adds RingBuffer data structure to the sdk #417aws/ec2metadata: Adds support for EC2Metadata client to use secure tokens provided by the IMDS (#453)service/dynamodb/dynamodbattribute: Adds clarifying docs on dynamodbattribute.UnixTime (#464)example/service/sts/assumeRole: added sts assume role example (#224)SDK Bugs
service/dynamodb/dynamodbattribute: Fixes a panic when decoding into a map with a key string type alias. (#465)v0.18.0Compare Source
Services
SDK Bugs
aws/endpoints: aws/endpoints: Fix SDK resolving endpoint without region (#420)v0.17.0Compare Source
Services
SDK Enhancements
v0.16.0Compare Source
Services
v0.15.0Compare Source
Services
v0.14.0Compare Source
Services
v0.13.0Compare Source
Services
SDK Breaking changes
Deprecations
service/s3/s3crypto: Deprecates the crypto client from the SDK (#394)aws: Removes plugin credential provider (#391)SDK Features
service/s3/s3manager: Add Upload Buffer Provider (#404)BufferProvidermember for specifying how part data can be buffered in memory.service/s3/s3manager: Add Download Buffer Provider (#404)BufferProvidermember for specifying how part data can be buffered in memory when copying from the http response body.service/dynamodb/dynamodbattribute: New Encoder and Decoder Behavior for Empty Collections (#401)EncoderandDecodertypes have been enhanced to support the marshaling of empty structures, maps, and slices to and from their respective DynamoDB AttributeValues.SDK Enhancements
internal/awsutil: Add suppressing logging sensitive API parameters (#398)sensitivetrait. This prevents the API type'sStringmethod returning a string representation of the API type with sensitive fields printed such as keys and passwords.aws/request: Retryer is now a named field on Request. (#393)service/s3/s3manager: Addssync.Poolto allow reuse of part buffers for streaming payloads (#404)SDK Bugs
service/s3/s3manager: Fix index out of range when a streaming reader returns -1 (#378)internal/ini: Fix ini parser to handle empty values #406v0.12.0Compare Source
Services
SDK Enhancements
aws/endpoints: Expose DNSSuffix for partitions (#369)DNSSuffixmethod on the endpoint'sPartitiontype. This allows access to the partition's DNS suffix, e.g. "amazon.com".private/protocol: Add support for parsing fractional timestamp (#367)aws/ec2metadata: Add marketplaceProductCodes to EC2 Instance Identity Document (#374)MarketplaceProductCodesto the EC2 Instance Metadata's Identity Document. The ec2metadata client will now retrieve these values if they are available.aws: Adds configurations to the default retryer (#375)aws: Refactors request retry behavior path logic (#384)SDK Bugs
aws: Fixes bug in calculating throttled retry delay (#373)Retry-Afterduration specified in the request is now added to the Retry delay for throttled exception. Adds test for retry delays for throttled exceptions. Fixes bug where the throttled retry's math was off.aws: Adds missing sdk error checking when seeking readers (#379)service/s3: Fixes unexpected EOF error by s3manager (#386)private/model: Fixes generated API Reference docs links being invalid (387)v0.11.0Compare Source
Services
SDK Features
SDK Enhancements
private/protocol: Add support for TimestampFormat in protocols (#358)aws: Add example for custom HTTP client idle connection options (#350)SDK Bugs
private/model/api: Fix API doc being generated with wrong value (#359)aws/ec2rolecreds: Fix security creds path to include trailing slash (#356)service/dynamodb/expression: Improved reporting of bad key conditions (#360)v0.10.0Compare Source
Services
SDK Breaking Changes
aws: Add default HTTP client instead of http.DefaultClient/Transport (#315)SDK Enhancements
service/s3/s3manager: Update S3 Upload Multipart location (#324)SDK Bugs
private/model: Handles empty map vs unset map behavior in send request (#337)service/rds: Fix presign URL for same region (#331)private/protocola/json/jsonutil: Fix Unmarshal map[string]bool (#320)v0.9.0Compare Source
Services
SDK Breaking changes
This update includes multiple breaking changes to the SDK. These updates improve the SDK's usability, consistency.
Client type name
The API client type is renamed to
Clientfor consistency, and remove stutter between package and client type name. Using Amazon S3 API client as an example, thes3.S3type is renamed tos3.Client.New API operation response type
API operations'
Request.Sendmethod now returns a Response type for the specific operation. The Response type wraps the operation's Output parameter, and includes a method for the response's metadata such as RequestID. The Output type is an anonymous embedded field within the Output type. If your application was passing the Output value around you'll need to extract it directly, or pass the Response type instead.New API operation paginator utility
This change removes the
Paginatemethod from API operation Request types, (e.g. ListObjectsRequest). A new Paginator constructor is added that can be used to page these operations. To update your application to use the new pattern, wherePaginatewas being called, replace this with the Paginator type's constructor. The usage of the returned Paginator type is unchanged.Is updated to to use the Paginator constructor instead of Paginate method.
Other changes
ServiceID.endpointspackage's service identifier constants. These values were unstable. Each API client package contains anEndpointsIDconstant that can be used for service specific endpoint lookup.EndpointsID(akaenpdointPrefix). Searching for API endpoints in theendpointspackage should use the API client package's,EndpointsID.SDK Enhancements
Update CI tests to ensure all codegen changes are accounted for in PR (#183)
Updates the CI tests to ensure that any code generation changes are accounted for in the PR, and that there were no mistaken changes made without also running code generation. This change should also help ensure that code generation order is stable, and there are no ordering issues with the SDK's codegen.
Related aws/aws-sdk-go#1966
service/dynamodb/expression: Fix Builder with KeyCondition example (#306)aws/defaults: Fix UserAgent execution environment key (#307)private/model/api: Improve SDK API reference doc generation (#309)v0.8.0Compare Source
Services
SDK Breaking changes
SDK Enhancements
aws: Add RequestThrottledException to set of throttled exceptions (#292)private/model/api: Backfill authtype, STS and Cognito Identity (#293)SDK Bugs
example/service/s3/mockPaginator: Update example to not use internal pkg (#278)service/s3/s3manager: Fix brittle Upload unit test (#288)aws/ec2metadata: Fix EC2 Metadata client panic with debug logging (#290)aws: Fix RequestUserAgent test to be stable ([#289](https://togithuRenovate configuration
📅 Schedule: "every weekend" in timezone Asia/Tokyo.
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻️ Rebasing: Renovate will not automatically rebase this PR, because other commits have been found.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.