Skip to content

Releases: soto-project/soto-core

v6.0.0

21 Jun 12:31
8e63c0f
Compare
Choose a tag to compare

Here are a list of all the changes from the latest 5.x.x version to 6.0.0

Major Release Changes

  • Preparing for implementing Sendable conformance (make classes final, set some member variables to private). PR #493
  • Add Sendable Conformance to all relevant objects/protocols. This includes AWSClient, AWSService, CredentialProvider, AWSShape and others.
  • Add support for automatic HTTP checksum calculation (md5, crc32, crc32c, sha1 and sha256) where checksum tests are supported (S3). PR #499
  • AWSHTTPClient, AWSHTTPRequest, AWSHTTPResponse are no longer public symbols.
  • Move _payloadOptions to AWSShape and rename to _options.
  • AWSResponse.headers type is now HTTPHeaders instead of [String: Any].
  • AWSPayload.stream has byteBufferAllocator parameter removed as it is no longer used.
  • Removed ConfigFile
  • DictionaryDecoder is no longer public
  • Removed version of SotoSignerV4.signHeaders/signURL that don't include omitSecurityToken parameter.
  • Removed version of AWSClient.init that doesn' include options parameter.
  • Removed version of AWSService.with that doesn't include region parameter.
  • Removed deprecated AWSClient.paginate functions

Minor Release Changes

  • Added async version of AWSClient.shutdown
  • Added AWSBase64Data to store base64 encoded data. This is to replace all instances of Data in AWS service API input/output shapes.
  • Add xmlNamespace to AWSServiceConfig.
  • Add AWSShape option .checksumRequired which calculates a checksum (md5, crc32, crc32c, sha1 and sha256) of the payload and places it in the headers.
  • Add AWSShape option .md5ChecksumHeader which indicates the shape has a MD5-Content header which will be calculated if the service config has option .calculateMD5 set to true.
  • Add Location.hostname which is used for placing content in the hostname.
  • Add Location.headerPrefix which is used for placing a dictionary into multiple headers with the keys prefixed by a string. This was part of the S3 middleware but has now been generalised.

Patch changes

  • Remove retry on NIOConnectionError as AsyncHTTPClient does this for us.
  • Only retry on HTTPClient.remoteConnectionClosed in debug builds as this could retry non-idempotent calls even when they have been successful.
  • Set user-agent header to "Soto/6.0".
  • Fix empty query protocol requests. Queries with no body should still include the API version and operation name in the body. PR #494
  • Fix V4 Signing bug where sequential spaces have to be removed from header values when building canonical request. PR #498
  • Require at least version 1.9.0 of AsyncHTTPClient

Other changes

v6.0.0 Release Candidate 2

31 May 11:23
5b80a69
Compare
Choose a tag to compare
Pre-release

Major version changes

  • Removed ConfigFile
  • DictionaryDecoder is no longer public
  • Base64 is no longer public
  • Removed version of SotoSignerV4.signHeaders/signURL that don't include omitSecurityToken parameter.
  • Removed version of AWSClient.init that doesn' include options parameter.
  • Removed version of AWSService.with that doesn't include region parameter.
  • Removed deprecated AWSClient.paginate functions

Minor version changes

  • Require at least version 1.9.0 of AsyncHTTPClient

Other changes

Use docc to generate documentation https://soto-project.github.io/soto-core/6.x.x/documentation/sotocore

v6.0.0 Release Candidate

18 May 15:44
Compare
Choose a tag to compare
Pre-release

Major Version Changes

  • Add Sendable Conformance to all relevant objects/protocols. This includes AWSClient, AWSService, CredentialProvider and AWSShape.

Minor Version Changes

  • Added async version of AWSClient.shutdown
  • Added AWSBase64Data to store base64 encoded data. This is to replace all instances of Data in AWS service API input/output shapes.

v6.0.0 Alpha 4

28 Mar 12:45
9892b16
Compare
Choose a tag to compare
v6.0.0 Alpha 4 Pre-release
Pre-release

Major version changes

  • Preparation for implementing Sendable conformance (make classes final, set some member variables to private). PR #493
  • Add support for automatic HTTP checksum calculation (crc32, crc32c, sha1 and sha256) where checksum tests are supported (S3). PR #499

Patch version changes

  • Fix empty query protocol requests. Queries with no body should still include the API version and operation name in the body. PR #494
  • Fix V4 Signing bug where sequential spaces have to be removed from header values when building canonical request. PR #498

Other changes

  • Add Swift 5.6 to CI
  • Add GitHub action to test for API breaking changes to run on all PRs

v5.9.3

15 Mar 16:47
3079d17
Compare
Choose a tag to compare

Fix issue with query protocol requests with an empty body. They should still include the Version and Action keys in the body

v6.0.0 Alpha 3

15 Jan 10:58
515ba59
Compare
Choose a tag to compare
v6.0.0 Alpha 3 Pre-release
Pre-release
  • Concurrency code is only available to compile with Swift 5.5.2 (Xcode 13.2). This allows us to make it available for macOS 10.15, iOS 13.0 etc

v5.9.2

13 Jan 08:20
a216ea4
Compare
Choose a tag to compare

Revert Swift Concurrency availability changes. Swift Concurrency will require macOS 12, iOS 15 etc
The changes required a major release as they change Swift version requirements. They will still be available in v6.x.x

v6.0.0 Alpha 2

07 Jan 08:25
0d3c9dc
Compare
Choose a tag to compare
v6.0.0 Alpha 2 Pre-release
Pre-release
  • Set Swift Concurrency API availability to macOS 10.15, iOS 13, tvOS 13, and watch 6.0

v5.9.1

04 Jan 23:18
6ba2fdd
Compare
Choose a tag to compare
  • Set Swift Concurrency Availability to macOS 10.15, iOS 13, tvOS 13, and watch 6.0

v5.9.0

01 Jan 16:59
Compare
Choose a tag to compare
  • Upgrade AsyncHTTPClient to v1.7.0