Releases: smithy-lang/smithy-rs
October 3rd, 2024
Breaking Changes:
⚠️ (server) The generated crates no longer have theaws-lambda
feature flag enabled by default. This prevents the aws-lambda feature from being automatically enabled in aws-smithy-http-server when the SDK is not intended for AWS Lambda.
New this release:
-
🎉 (server) All relevant types from aws-smithy-http-server are now re-exported within the generated crates. This removes the need to explicitly depend on aws-smithy-http-server in service handler code and prevents compilation errors caused by version mismatches.
-
🎉 (all, smithy-rs#3573) Support for the rpcv2Cbor protocol has been added, allowing services to serialize RPC payloads as CBOR (Concise Binary Object Representation), improving performance and efficiency in data transmission.
September 26th, 2024
New this release:
- 🐛 (client, smithy-rs#3820) Fixed a bug with the content length of compressed payloads that caused such requests to hang.
September 17th, 2024
Internal and aws-sdk-rust
-related changes only with this release
September 9th, 2024
Breaking Changes:
- 🐛
⚠️ (server, smithy-rs#3813) Operations with event stream member shapes must includeValidationException
in the errors list. This is necessary because the member shape is a required field, and the builder for the operation input or output returns astd::result::Result
with the error set tocrate::model::ValidationExceptionField
.
New this release:
-
🎉 (server, smithy-rs#3803) Setting the
addValidationExceptionToConstrainedOperations
codegen flag addsaws.smithy.framework#ValidationException
to operations with constrained inputs that do not already have this exception added.Sample
smithy-build-template.json
:{ "...", "plugins": { "rust-server-codegen": { "service": "ServiceToGenerateSDKFor", "module": "amzn-sample-server-sdk", "codegen": { "addValidationExceptionToConstrainedOperations": true, } } } }
-
🐛 (all, smithy-rs#3805) Fix bug in
DateTime::from_secs_f64
where certain floating point values could lead to a panic.
August 28th, 2024
Breaking Changes:
⚠️ (all, smithy-rs#3800) Upgrade MSRV to Rust 1.78.0.
New this release:
- 🐛 (client, smithy-rs#3798) Fix the execution order of modify_before_serialization and read_before_serialization in the orchestrator. The
modify_before_serialization
method now executes before theread_before_serialization
method. This adjustment may result in changes in behavior depending on how you customize interceptors. - (client, smithy-rs#1925) Backport connection poisoning to hyper 1.x support
- 🐛 (client, aws-sdk-rust#821, smithy-rs#3797) Fix the Length::UpTo usage in FsBuilder, ensuring that the specified length does not exceed the remaining file length.
- 🐛 (client, aws-sdk-rust#820) Re-export
ByteStream
'sLength
andFsBuilder
. By making these types available directly within a client crate, customers can useByteStream::read_from
without needing to import them separately from theaws-smithy-types
crate.
August 16th, 2024
Internal changes only with this release
August 14th, 2024
Internal changes only with this release
August 8th, 2024
New this release:
- 🐛 (client, smithy-rs#3767) Fix client error correction to properly parse structure members that target a
Union
containing that structure recursively. - 🐛 (client, smithy-rs#3765, smithy-rs#3757) Fix incorrect redaction of
@sensitive
types in maps and lists. - (client, smithy-rs#3779) Improve error messaging when HTTP headers aren't valid UTF-8
July 16th, 2024
New this release:
- (client, smithy-rs#3742) Support
stringArray
type in endpoints params - (client, smithy-rs#3755) Add support for
operationContextParams
Endpoints trait - (client, smithy-rs#3591)
aws_smithy_runtime_api::client::orchestrator::HttpRequest
andaws_smithy_runtime_api::client::orchestrator::HttpResponse
are now re-exported in generated clients so that using these types does not require directly depending onaws-smithy-runtime-api
.
July 9th, 2024
Breaking Changes:
-
⚠️ (server, smithy-rs#3746)FromParts<Protocol>::Rejection
must implementstd::fmt::Display
.Handlers can accept user-defined types if they implement
FromParts with aRejection
type that implementsstd::fmt::Display
(preferablystd::error::Error
) to enable error logging when parameter construction from request parts fails.
New this release:
- (client, smithy-rs#3742) Support
stringArray
type in endpoints params - 🐛 (client, smithy-rs#3744) Fix bug where stalled stream protection would panic with an underflow if the first event was logged too soon.