Skip to content

v6.0.0

Compare
Choose a tag to compare
@adam-fowler adam-fowler released this 21 Jun 12:51
· 66 commits to 6.x.x since this release

Using SotoCore v6.0.0
Using AWS models from Release (2022-06-17)

Major release changes

  • The major change in v6 is in actual an internal change, but it affects everything. We have moved from generating the AWS Service files from the json model files to the new Smithy format model files. There is a formal spec for the Smithy format unlike the original json files. AWS are moving to using Smithy for all of their SDKs.
  • The Soto service code generator is now a separate project, instead of being in the same repo as Soto, and can be found here.
  • In theory the above changes shouldn't affect the end user but with this move some service names have changed and some APIs have changed name.
  • It is now required you use AsyncHTTPClient with Soto. Previously a AWSHTTPClient protocol was available which you could conform to. This change has been implemented to reduce the API surface of Soto and to allow us more flexibility in how we integrate with the HTTP client.
  • There have been a number of fixes to enum and variable names. Enums are now camel cased, previously they were all lowercased. Variable names that started with an uppercase acronym now capitalise correctly. Previously the first letter of the name was lowercased, ignoring the rest of the acronym. This gave us eC2InstanceDetails instead of ec2InstanceDetails. This is now fixed.
  • Add Sendable conformance to many public symbols. This includes AWSClient, AWSService, CredentialProvider and all service API input/output shapes. PR #590
  • Replace all usages of Foundation.Data in service API input/output shapes with AWSBase64Data. PR #591
  • Added final to all API input and output shapes that are classes.

New services

ChimeSDKMediaPipelines, ConnectCampaigns, EMRServerless, M2, RedshiftServerless

Services removed

SimpleDB, ImportExport, MobileAnalytics

Service name changes

AppIntegrationsService -> AppIntegrations
AppRegistry -> ServiceCatalogAppRegistry
AugmentedAIRuntime -> SageMakerA2IRuntime
CloudControlApi -> CloudControl
CodeStarconnections -> CodeStarConnections
ConnectWisdomService -> Wisdom
CostandUsageReportService -> CostAndUsageReportService
ElasticLoadBalancingv2 -> ElasticLoadBalancingV2
FinSpaceData -> FinspaceData
ForecastService -> Forecast
ForecastQueryService -> Forecastquery
GlueDataBrew -> DataBrew
KinesisVideoSignalingChannels -> KinesisVideoSignaling
LocationService -> Location
LookoutforVision -> LookoutVision
ManagedGrafana -> Grafana
MigrationHubStrategyRecommendations -> MigrationHubStrategy
NimbleStudio -> Nimble
OpenSearchService -> OpenSearch
PrometheusService -> Amp
RDSDataService -> RDSData
RedshiftDataAPIService -> RedshiftData
ResilienceHub -> Resiliencehub
SESV2 -> SESv2
SagemakerEdgeManager -> SagemakerEdge
TranscribeService -> Transcribe
TranscribeStreamingService -> TranscribeStreaming

Minor release changes

  • Where operation input struct has deprecated members add an additional init which doesn't include deprecated members and deprecate old init.
  • S3: MD5 checksums are no longer automatically calculated (unless required). You can re-enable the automatic calculation of MD5 checksums using the S3 service option .calculateMD5.
  • S3: Added async versions of Multipart Upload/download functions
  • S3: Send Expect: 100-continue header to cancel large uploads early if AWS knows they are going to fail.

Patch release changes

  • S3: Select Object Content code now uses crc32 from SotoCore, instead of importing zlib. PR #589
  • S3: S3RequestMiddleware now preserves trailing "/" when reconstructing URL. PR #587 from @jmoisan21
  • S3: Percent encode additional characters in URL paths, to support S3 like services that require this. PR #604