diff --git a/CHANGELOG.next.toml b/CHANGELOG.next.toml index 7a5f6d7515..389de8640b 100644 --- a/CHANGELOG.next.toml +++ b/CHANGELOG.next.toml @@ -14,6 +14,8 @@ [[aws-sdk-rust]] message = """ Provide a way to retrieve fallback credentials if a call to `provide_credentials` is interrupted. An interrupt can occur when a timeout future is raced against a future for `provide_credentials`, and the former wins the race. A new method, `fallback_on_interrupt` on the `ProvideCredentials` trait, can be used in that case. The following code snippet from `LazyCredentialsCache::provide_cached_credentials` has been updated like so: + + Before: ```rust let timeout_future = self.sleeper.sleep(self.load_timeout); @@ -84,28 +86,39 @@ author = "ysaito1001" [[smithy-rs]] message = """ Fix `name` and `absolute` methods on `OperationExtension`. + The older, [now removed](https://github.com/awslabs/smithy-rs/pull/2161), service builder would insert `OperationExtension` into the `http::Response` containing the [absolute shape ID](https://smithy.io/2.0/spec/model.html#grammar-token-smithy-AbsoluteRootShapeId) with the `#` symbol replaced with a `.`. When [reintroduced](https://github.com/awslabs/smithy-rs/pull/2157) into the new service builder machinery the behavior was changed - we now do _not_ perform the replace. This change fixes the documentation and `name`/`absolute` methods of the `OperationExtension` API to match this new behavior. + In the old service builder, `OperationExtension` was initialized, by the framework, and then used as follows: + ```rust 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 the `Plugin` and then used as follows: + ```rust 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: + ```rust 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. """ references = ["smithy-rs#2276"] @@ -118,13 +131,4 @@ Fix request canonicalization for HTTP requests with repeated headers (for exampl """ references = ["smithy-rs#2261", "aws-sdk-rust#720"] meta = { "breaking" = false, "tada" = false, "bug" = true } -author = "nipunn1313" - -[[smithy-rs]] -message = """Add serde crate to `aws-smithy-types`. - -It's behind the feature gate `aws_sdk_unstable` which can only be enabled via a `--cfg` flag. -""" -references = ["smithy-rs#1944"] -meta = { "breaking" = false, "tada" = false, "bug" = false } -author = "thomas-k-cameron" +author = "nipunn1313" \ No newline at end of file