Skip to content

Releases: smithy-lang/smithy-rs

November 20th, 2025

20 Nov 02:30

Choose a tag to compare

New this release:

Contributors
Thank you for your contributions! ❤

November 6th, 2025

06 Nov 17:55

Choose a tag to compare

New this release:

  • (client) Bump crc-fast version to 1.6.0
  • (client) Validate Region is a valid host label when constructing endpoints.

October 30th, 2025

30 Oct 18:35

Choose a tag to compare

Breaking Changes:

  • ⚠️🎉 (server, smithy-rs#4356) Parse EventStream signed-frames for servers marked with @sigv4.

    This is a breaking change, because events from SigV4 services are wrapped in a SignedEvent frame.

  • ⚠️ (all, smithy-rs#4367) Upgrade MSRV to Rust 1.88.0.

New this release:

  • 🐛🎉 (server, smithy-rs#4352, smithy-rs#4345) Update smithy-rs servers to support sending initial-response events over event streams.

    Prior to this change, event streams that had initial responses were unsupported. This change also adds a new codegen setting, alwaysSendEventStreamInitialResponse.

    When this setting is set to true, the generated server will unconditionally send initial-response objects, even when empty. This is required for compatibility with smithy-java as well as a few other clients.

    This setting defaults to false currently because smithy-rs based clients do not currently support this behavior.

    "codegen": {
      "alwaysSendEventStreamInitialResponse": true // default false
    }
  • 🎉 (all, @arielby) Include the protocol name in package.metadata.smithy.protocol in Cargo.toml
    to allow easily figuring out which protocol was used to generate a crate.

  • 🐛🎉 (client, smithy-rs#4349, @arielby) Make Hyper idle pool timeout configurable, and fix the bug where pool timeouts
    would not work if the client was built directly.

  • 🎉 (server, smithy-rs#4317, @jasgin) Adds validators and codegen support for the custom traits custom traits @validationException, @validationMessage,
    @validationFieldList, @validationFieldName, and @validationFieldMessage for defining a custom validation exception
    to use instead of smithy.framework#ValidationException.

  • 🐛 (client, smithy-rs#4346) Fix bug where httpQueryParams were silently dropped when no other query parameters were modeled.

  • 🐛 (server, smithy-rs#4344, smithy-rs#4325) Fix bug where servers did not attempt to parse an initial-request. initial-requests may be sent by clients both when they would contain valid data
    and when they are empty.

  • 🐛 (client, smithy-rs#4352, smithy-rs#4353) Update clients to allow initial-response events to be accepted on event streams, even when know modeled initial response exists.

    This is required for spec compliance, backwards compatibility, and compatibility with non-smithy-rs based servers that
    MAY unconditionally send initial-response messages.

  • 🐛 (client, smithy-rs#4265, smithy-rs#4189) Adds new with_test_defaults_v2() for all clients supporting region configuration which applies us-east-1 as default region if not set by user. This allows aws-smithy-mocks to work for non AWS SDK generated clients. Also clarify test-util feature requirement when using aws-smithy-mocks.

Contributors
Thank you for your contributions! ❤

October 6th, 2025

06 Oct 21:49

Choose a tag to compare

New this release:

  • 🎉 (server, smithy-rs#4321, @jasgin) Adds the custom traits @validationException, @validationMessage, @validationFieldList, @validationFieldName, and @validationFieldMessage
    for defining custom validation exceptions.

Contributors
Thank you for your contributions! ❤

October 2nd, 2025

02 Oct 23:22

Choose a tag to compare

New this release:

  • 🐛 (server) Fix bug where servers rejected application/vnd.amazon.evenstream ACCEPT header for RPCv2Cbor

    This change allows this header while also allowing application/cbor for backwards compatibility.

October 1st, 2025

01 Oct 16:31

Choose a tag to compare

New this release:

  • 🎉 (client, smithy-rs#4299, @greenwoodcm) Added a new then_compute_output to aws-smithy-mocks rule builder that allows using the input type when computing a mocked response, e.g.
    // Return a computed output based on the input
    let compute_rule = mock!(Client::get_object)
        .then_compute_output(|req| {
            let key = req.key().unwrap_or("unknown");
            GetObjectOutput::builder()
                .body(ByteStream::from_static(format!("content for {}", key).as_bytes()))
                .build()
        });
  • 🐛 (client, smithy-rs#4226, @haydenbaker) Fixed problematic assertion on HttpApiKeyAuthTrait scheme, which was causing client-codegen to fail when the correct settings for api-key based auth were set.

Contributors
Thank you for your contributions! ❤

September 10th, 2025

10 Sep 21:10

Choose a tag to compare

New this release:

  • 🐛 (client, smithy-rs#4274) The HickoryDnsResolver and TokioDnsResolver were not Clone making it impossible to use them in the http_client builder's build_with_resolver method.

August 28th, 2025

28 Aug 23:29

Choose a tag to compare

New this release:

August 18th, 2025

18 Aug 19:39

Choose a tag to compare

New this release:

  • 🎉 (client, aws-sdk-rust#169) Add support for proxy environment variables (HTTP_PROXY, HTTPS_PROXY, ALL_PROXY, NO_PROXY). Service clients will now automatically respect these proxy environment variables on the latest BehaviorVersion. Older behavior versions do not automatically detect these environment variables and will require manually building a aws_smithy_http_client::Connector with a proxy config explicitly set to use this feature.
  • 🎉 (client, @WillChilds-Klein) Enable rustls post-quantum by default.
  • (client) fix aws-smithy-eventstream feature derive-arbitrary on arbitrary >= 1.4.2

Contributors
Thank you for your contributions! ❤

August 13th, 2025

13 Aug 23:46

Choose a tag to compare

New this release:

  • 🐛 (client) pin crc-fast to <1.4 to workaround SIGILL