February 6th, 2023
Pre-releaseThis release broke native-tls
, so it was yanked from crates.io. The next release includes all of these changes and a fix to native-tls
.
Breaking Changes:
-
🐛
⚠️ (server, smithy-rs#2276) Fixname
andabsolute
methods onOperationExtension
.The older, now removed, service builder would insert
OperationExtension
into thehttp::Response
containing the absolute shape ID with the#
symbol replaced with a.
. When reintroduced into the new service builder machinery the behavior was changed - we now do not perform the replace. This change fixes the documentation andname
/absolute
methods of theOperationExtension
API to match this new behavior.In the old service builder,
OperationExtension
was initialized, by the framework, and then used as follows:let ext = OperationExtension::new(“com.amazonaws.CompleteSnapshot”); // This is expected let name = ext.name(); // “CompleteSnapshot” let namespace = ext.namespace(); // = “com.amazonaws”;
When reintroduced,
OperationExtension
was initialized by thePlugin
and then used as follows:let ext = OperationExtension::new(“com.amazonaws#CompleteSnapshot”); // This is the bug let name = ext.name(); // “amazonaws#CompleteSnapshot” let namespace = ext.namespace(); // = “com”;
The intended behavior is now restored:
let ext = OperationExtension::new(“com.amazonaws#CompleteSnapshot”); // This is expected let name = ext.name(); // “CompleteSnapshot” let namespace = ext.namespace(); // = “com.amazonaws”;
The rationale behind this change is that the previous design was tailored towards a specific internal use case and shouldn’t be enforced on all customers.
New this release:
- 🎉 (server, smithy-rs#2232, smithy-rs#1670) The
@uniqueItems
trait onlist
shapes is now supported in server SDKs. - (client, smithy-rs#2312) Raise the minimum TLS version from 1.0 to 1.2 when using the
native-tls
feature inaws-smithy-client
. - 🐛 (client, smithy-rs#2271) Fix broken doc link for
tokio_stream::Stream
that is a re-export offutures_core::Stream
.