Releases: awslabs/aws-sdk-swift
0.9.1
0.9.0
Summary
This release consists mostly of bug fixes and internal, structural changes.
- Incorporates recent modernization of
aws-crt-swift
- Fixes error parsing for S3, EC2, and other XML protocol-based services
- Improvements to internal SDK structure
- Fixes bug where waiters may not behave as expected on an operation error
- Fixes inline docs for paginators
Breaking changes in this release:
All of these breaking API changes are related to interface improvements in aws-crt-swift
, which was updated from 0.4.0
to 0.5.4
for this release.
- The type for the
expiration
param on URL presign methods has changed fromInt64
toTimeInterval
. To update, convert your expiration value to aTimeInterval
before passing it into thepresign
function. - The
AWSCredentials
type'sexpirationTimeout
field has changed from aUInt64
to aDate?
. - The
AWSCredentialsProvider
type's underlyingcrtCredentialsProvider
has been re-typed fromCRTAWSCredentialsProvider
toAwsCommonRuntimeKit.CredentialsProvider
. - The
AWSCredentialsProviderCachedConfig
'srefreshTime
field was changed fromInt
toTimeInterval
. - The
AWSCredentialsProviderContainerConfig
'sauthToken
,host
, andpathAndQuery
fields are no longer optionals. - The
AWSCredentialsProviderSTSConfig
'sdurationSeconds
field was changed fromUInt16
toTimeInterval
. - The initializer for
AWSCredentialsProviderWebIdentityConfig
is now marked asthrows
. - Several public CRT types have been renamed, and references have been changed in various SDK APIs:
CredentialsProviding
renamed fromCRTCredentialsProvider
Credentials
renamed fromCRTCredentials
AwsCommonRuntimeKit.Profile
renamed fromCRTAWSProfile
AwsCommonRuntimeKit.ProfileCollection
renamed fromCRTAWSProfileCollection
AwsCommonRuntimeKit.EndpointsRequestContext
renamed fromCRTAWSEndpointsRequestContext
AwsCommonRuntimeKit.ResolvedEndpoint
renamed fromCRTAWSEndpointResolvedEndpoint
AwsCommonRuntimeKit.EndpointsRuleEngine
renamed fromCRTAWSEndpointsRuleEngine
AwsCommonRuntimeKit.IMDSClient
renamed fromCRTIMDSClient
- Several getter functions on
AWSEndpointsResolvedEndpoint
no longer throw. - The initializer for
IMDSClient
now throws. - The initializer for
DefaultRegionResolver
now throws. - The initializer for
IMDSRegionProvider
now throws. - The
AWSSigningConfig
'sexpiration
field is changed from typeInt64
toTimeInterval
. - The
SigV4Config
'sexpiration
field is changed from typeInt64
toTimeInterval
.
What's Changed
- feat: Update CRT to 0.5.0+ by @epau in #777
- fix: Support custom error format for Route53 ChangeResourceRecordSets operation by @epau in #791
- fix: Fixes S3 and Ec2 error parsing by @epau in #787
- chore: Reverts version pinning by @epau in #799
- chore: Adds new workflow for building the full sdk by @epau in #802
- fix!: Updates
expiration
paramater inpresign
functions toTimeInterval
type. by @epau in #805 - feat: Move retry middleware out by @jbelkins in #806
- fix: Remove try from non-throwing method calls by @jbelkins in #809
- chore: Regen models by @epau in #800
- chore: Update smithy-swift & aws-crt-swift; pin to latest versions by @jbelkins in #811
- chore: update smithyVersion to use exact version by @syall in #812
- chore: bump aws-crt-swift to 0.5.4 by @ganeshnj in #816
- chore: aws-sdk-swift package structuring by @ganeshnj in #803
- chore: remove trailing whitespaces in all Swift files by @ganeshnj in #819
- fix: use same aws-crt-swift version in aws-sdk-swift as smithy-swift by @ganeshnj in #822
- chore: bump models by @jbelkins in #825
- chore: bump smithy-swift from 0.8.0 to 0.10.2 by @jbelkins in #827
New Contributors
Full Changelog: https://github.com/awslabs/aws-sdk-swift/commits/0.9.0
0.8.0
What's Changed
- chore: Generate Release 0.7.0 by @epau in #774
- fix: Modify dev scripts to run on Linux as well as Mac by @jbelkins in #765
- chore: Move
.swiftlint.yml
to project root by @jbelkins in #788 - fix: Add protocol tests for nested & sparse collections by @jbelkins in #779
- chore: bump models by @ganeshnj in #793
- chore: update client runtime version to 0.8.0 by @ganeshnj in #794
Full Changelog: https://github.com/awslabs/aws-sdk-swift/commits/0.8.0
0.7.0
What's Changed
- Forces CRT depenency to use pinned version by @epau in #751
- Fixes XML encoding issues by @epau in #740
- feat: Smithy Waiters by @jbelkins in #755
- chore: bump models by @epau in #770
- chore: update client runtime version to 0.7.0 by @epau in #772
Full Changelog: https://github.com/awslabs/aws-sdk-swift/commits/0.7.0
0.6.0
AWS SDK for Swift release 0.6.0 consists primarily of API improvements and bug fixes.
Notable / breaking changes in this release:
- [Breaking] The names of the
aws-sdk-swift
,smithy-swift
, andaws-crt-swift
Swift packages have changed to match the name that is inferred from the Git URL, as is common practice with modern Swift. When consuming these packages please update the name you use to reference them. - [Breaking] In S3-related models, any
Expires
date is now typed as aString
rather than aDate
. - [Breaking] Accessing query items on service models is now a throwing operation; Swift error handling may need to be added where query items are accessed.
- [Bugfix] Presigned URLs for S3
GET
/PUT
operations should now be code signed correctly.
A complete record of changes is below.
What's Changed
- fix!: Rename package to match name inferred from git URL by @jbelkins in #678
- chore: Build then run tests after generating a release by @jbelkins in #689
- chore: Make main branch buildable by @jbelkins in #664
- fix! Converts Expires members in S3 output structures to String shape by @epau in #709
- fix: Pin smithy to 1.26.2 by @jbelkins in #720
- Updates smithy version to 1.26.4 by @epau in #726
- fix: fix S3 presigning, centralize generation of signature params by @jbelkins in #719
- chore: Update generated Swift code in
main
by @jbelkins in #729 - fix: remedy Swift Package Index build failures & timeouts by @jbelkins in #731
- chore: bump models for release 0.6.0 by @jbelkins in #744
New in smithy-swift 0.6.0
:
- fix!: Rename package to match name inferred from git URL by @jbelkins in smithy-lang/smithy-swift#464
- fix: Properly SerDe recusive union shapes (enums) by @epau in smithy-lang/smithy-swift#474
- fix!: Throw error if a required query param is nil by @epau in smithy-lang/smithy-swift#468
- Exposes model property in CodegenVisitor by @epau in smithy-lang/smithy-swift#477
- fix: Properly encode empty bodies for json and xml by @epau in smithy-lang/smithy-swift#480
- No-ops instead of encoding empty string when encoding an empty body in xml by @epau in smithy-lang/smithy-swift#481
- feat: Adds IntEnum support by @epau in smithy-lang/smithy-swift#484
- Adds test for recursive enum by @epau in smithy-lang/smithy-swift#485
- chore: bump CRT to 0.4.0 by @jbelkins in smithy-lang/smithy-swift#489
New in aws-crt-swift 0.4.0
:
- fix!: Rename package to match name inferred from git URL by @jbelkins in awslabs/aws-crt-swift#93
Full Changelog: https://github.com/awslabs/aws-sdk-swift/commits/0.6.0
0.5.0
What's Changed
- fix: Fixes issue where linter wasn’t using config file on CI by @epau in #672
- chore: Swiftlint rules change by @jbelkins in #673
- chore: Use Github macOS runner for swiftlint by @jbelkins in #662
- chore: Lint all PRs, regardless of base branch by @jbelkins in #676
- fix: Timestamp encoding and decoding by @epau in #674
- fix: remove guard for auth scheme for operations such as STS GetCallerIdentity to continue execution by @ganeshnj in #681
- fix!: consistent naming for types, protocols and everything else by @ganeshnj in #675
- fix!: update shape and member extensions to use same casing as rest of the system by @ganeshnj in #684
- chore: .gitignore cleanup, TestLambdaSDK project deleted by @jbelkins in #682
- chore: bump models by @epau in #688
- chore: update client runtime version by @epau in #690
Full Changelog: https://github.com/awslabs/aws-sdk-swift/commits/0.5.0
0.4.0
What's Changed
- Issue templates using github forms by @jmklix in #631
- fix: pin crt and clientruntime versions by @atierian in #636
- Update continuous-integration.yml by @ganeshnj in #639
- docs: update Package.swift with updated SPM spec by @ganeshnj in #645
- feat(endpoints)!: integrate endpoints 2.0 by @ganeshnj in #607
- chore: bump models by @ganeshnj in #658
- fix: prefer EndpointResolver Bucket for S3 in http label, AccountId for S3Control host label by @ganeshnj in #660
- fix: Allow empty lists to be serialized for Aws queries and Ec2 queries by @epau in #666
- chore: update client runtime version by @ganeshnj in #668
New Contributors
Full Changelog: https://github.com/awslabs/aws-sdk-swift/commits/0.4.0
0.3.1
0.2.7
0.3.0
What's Changed
- Add JDK setup step to development instructions by @jbelkins in #609
- Add stability policy to SDK docs by @jbelkins in #614
- bug: Fix
Package.swift
on Xcode 14 by @jbelkins in #617 - fix: Use smithy-swift package manifest in root of project by @jbelkins in #616
- chore: Update CRT builder & macOS/Xcode to latest by @jbelkins in #622
- fix: Delete the
Package.swift
inAWSClientRuntime/
by @jbelkins in #621 - fix: Use the IDLv2 ClientOptional trait instead of Box by @sugmanue in #625
- chore: bump models by @jbelkins in #627
- chore: update client runtime version by @jbelkins in #628
New Contributors
Full Changelog: https://github.com/awslabs/aws-sdk-swift/commits/0.3.0