Releases: smithy-lang/smithy-rs
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.
July 3rd, 2024
New this release:
- 🐛 (server, smithy-rs#3643) A feature,
aws-lambda
, has been added to generated SDKs to re-export types required for Lambda deployment. - 🐛 (server, smithy-rs#3471, smithy-rs#3724, @djedward) Content-Type header validation now ignores parameter portion of media types.
Contributors
Thank you for your contributions! ❤
June 19th, 2024
Breaking Changes:
-
🐛
⚠️ (server, smithy-rs#3690) Fix requestContent-Type
header checkingTwo bugs related to how servers were checking the
Content-Type
header in incoming requests have been fixed:Content-Type
header checking was incorrectly succeeding when noContent-Type
header was present but one was expected.- When a shape was @httpPayload
-bound,
Content-Type` header checking occurred even when no payload was being sent. In this case it is not necessary to check the header, since there is no content.
This is a breaking change in that servers are now stricter at enforcing the expected
Content-Type
header is being sent by the client in general, and laxer when the shape is bound with@httpPayload
.
June 17th, 2024
Internal and aws-sdk-rust
-related changes only with this release