github aws/aws-sdk-go-v2 v0.30.0
Release 2020-11-30

pre-release3 years ago

Breaking Change

  • codegen: Add support for slice and maps generated with value members instead of pointer (#887)
    • This update allow the SDK's code generation to be aware of API shapes and members that are not nullable, and can be rendered as value types by the code generation instead of pointer types.
    • Several API client parameter types will change from pointer members to value members for slice, map, number and bool member types.
    • See Migration notes for migrating to v0.30.0 with this change.
  • aws/transport/http: Move aws.BuildableHTTPClient to HTTP transport package (#898)
    • Moves the BuildableHTTPClient from the SDK's aws package to the aws/transport/http package as BuildableClient to with other HTTP specific utilities.
  • feature/cloudfront/sign: Add CloudFront sign feature as module (#884)
    • Moves service/cloudfront/sign package out of the cloudfront module, and into its own module as github.com/aws/aws-sdk-go-v2/feature/cloudfront/sign.

New Features

  • config: Add a WithRetryer provider helper to the config loader (#897)
    • Adds a WithRetryer configuration provider to the config loader as a convenience helper to set the Retryer on the aws.Config when its being loaded.
  • config: Default to TLS 1.2 for HTTPS requests (#892)
    • Updates the SDK's default HTTP client to use TLS 1.2 as the minimum TLS version for all HTTPS requests by default.

Bug Fixes

  • config: Fix AWS_CA_BUNDLE usage while loading default config (#912)
    • Fixes the LoadDefaultConfig's configuration provider order to correctly load a custom HTTP client prior to configuring the client for AWS_CA_BUNDLE environment variable.
  • service/s3: Fix signature mismatch error for s3 (#913)
  • service/s3control:
    • Fix HostPrefix addition behavior for s3control (#882)
    • Fix s3control error deserializer (#875)

Service Client Highlights

  • Pagination support has been added to supported APIs. See Using Operation Paginators in the Developer Guide. (#885)
  • Logging support has been added to service clients. See Logging in the Developer Guide. (#872)
  • service: Add support for pre-signed URL clients for S3, RDS, EC2 service (#888)
    • service/s3: operations PutObject and GetObject are now supported with s3 pre-signed url client.
    • service/ec2: operation CopySnapshot is now supported with ec2 pre-signed url client.
    • service/rds: operations CopyDBSnapshot, CreateDBInstanceReadReplica, CopyDBClusterSnapshot, CreateDBCluster are now supported with rds pre-signed url client.
  • service/s3: Add support for S3 access point and S3 on outposts access point ARNs (#870)
  • service/s3control: Adds support for S3 on outposts access point and S3 on outposts bucket ARNs (#870)

Migrating from v2 preview SDK's v0.29.0 to v0.30.0

aws.BuildableHTTPClient move

The aws's BuildableHTTPClient HTTP client implementation was moved to aws/transport/http as BuildableClient. If your application used the aws.BuildableHTTPClient type, update it to use the BuildableClient in the aws/transport/http package.

Slice and Map API member types

This release includes several code generation updates for API client's slice map members. Using API modeling metadata the Slice and map members are now generated as value types instead of pointer types. For your application this means that for these types, the SDK no longer will have pointer member types, and have value member types.

To migrate to this change you'll need to remove the pointer handling for slice and map members, and instead use value type handling of the member values.

Boolean and Number API member types

Similar to the slice and map API member types being generated as value, the SDK's code generation now has metadata where the SDK can generate boolean and number members as value type instead of pointer types.

To migrate to this change you'll need to remove the pointer handling for numbers and boolean member types, and instead use value handling.

Don't miss a new aws-sdk-go-v2 release

NewReleases is sending notifications on new releases.