Skip to content

Releases: smithy-lang/smithy-rs

v0.34.0 (January 6th, 2022)

06 Jan 19:15
9be54c9
Compare
Choose a tag to compare
Pre-release

Breaking Changes:

  • ⚠ (smithy-rs#990) Codegen will no longer produce builders and clients with methods that take impl Into<T> except for strings and boxed types.
  • ⚠ (smithy-rs#1003) The signature of aws_smithy_protocol_test::validate_headers was made more flexible but may require adjusting invocations slightly.

New this release:

  • 🎉 (aws-sdk-rust#47, smithy-rs#1006) Add support for paginators! Paginated APIs now include .into_paginator() and (when supported) .into_paginator().items() to enable paginating responses automatically. The paginator API should be considered in preview and is subject to change pending customer feedback.
  • 🐛 (aws-sdk-rust#357) Generated docs will convert <a> tags with no href attribute to <pre> tags
  • (aws-sdk-rust#254, @Jacco) Made fluent operation structs cloneable

Contributors
Thank you for your contributions! ❤

v0.33.1 (December 13th, 2021)

15 Dec 18:08
35ac555
Compare
Choose a tag to compare
Pre-release

New this release:

  • 🐛 (smithy-rs#979) Make aws-smithy-client a required dependency in generated services.

v0.33.0 (December 15th, 2021)

15 Dec 14:25
64ccdcc
Compare
Choose a tag to compare
Pre-release

Breaking Changes:

  • ⚠ (smithy-rs#930) Runtime crates no longer have default features. You must now specify the features that you want when you add a dependency to your Cargo.toml.

    Upgrade guide

    before after
    aws-smithy-async = "VERSION" aws-smithy-async = { version = "VERSION", features = ["rt-tokio"] }
    aws-smithy-client = "VERSION" aws-smithy-client = { version = "VERSION", features = ["client-hyper", "rustls", "rt-tokio"] }
    aws-smithy-http = "VERSION" aws-smithy-http = { version = "VERSION", features = ["rt-tokio"] }
  • ⚠ (smithy-rs#940) aws_smithy_client::Client::https() has been renamed to dyn_https().
    This is to clearly distinguish it from rustls and native_tls which do not use a boxed connector.

New this release:

v0.32.0

09 Dec 15:20
b1835a1
Compare
Choose a tag to compare
v0.32.0 Pre-release
Pre-release

This is a version-bump only release to work around version number conflict in the aws-sigv4 crate.

v0.31.0 (December 2nd, 2021)

01 Dec 19:05
71fef7a
Compare
Choose a tag to compare
Pre-release

New this week

  • Add docs.rs metadata section to all crates to document all features

v0.30.0-alpha (November 23rd, 2021)

23 Nov 19:49
a1dbbe2
Compare
Choose a tag to compare
Pre-release

New this week

  • Improve docs on aws-smithy-client (smithy-rs#855)
  • Fix http-body dependency version (smithy-rs#883, aws-sdk-rust#305)
  • SdkError now includes a variant TimeoutError for when a request times out (smithy-rs#885)
  • Timeouts for requests are now configurable. You can set separate timeouts for each individual request attempt and all attempts made for a request. (smithy-rs#831)

Breaking Changes

  • (aws-smithy-client): Extraneous pub use SdkSuccess removed from aws_smithy_client::hyper_ext. (smithy-rs#855)

v0.29.0-alpha (November 18th, 2021) Pre-release

19 Nov 17:00
f2b05cf
Compare
Choose a tag to compare

Breaking Changes

Several breaking changes around aws_smithy_types::Instant were introduced by smithy-rs#849:

  • aws_smithy_types::Instant from was renamed to DateTime to avoid confusion with the standard library's monotonically nondecreasing Instant type.
  • DateParseError in aws_smithy_types has been renamed to DateTimeParseError to match the type that's being parsed.
  • The chrono-conversions feature and associated functions have been moved to the aws-smithy-types-convert crate.
    • Calls to Instant::from_chrono should be changed to:
      use aws_smithy_types::DateTime;
      use aws_smithy_types_convert::date_time::DateTimeExt;
      
      // For chrono::DateTime<Utc>
      let date_time = DateTime::from_chrono_utc(chrono_date_time);
      // For chrono::DateTime<FixedOffset>
      let date_time = DateTime::from_chrono_offset(chrono_date_time);
    • Calls to instant.to_chrono() should be changed to:
      use aws_smithy_types_convert::date_time::DateTimeExt;
      
      date_time.to_chrono_utc();
  • Instant::from_system_time and Instant::to_system_time have been changed to From trait implementations.
    • Calls to from_system_time should be changed to:
      DateTime::from(system_time);
      // or
      let date_time: DateTime = system_time.into();
    • Calls to to_system_time should be changed to:
      SystemTime::from(date_time);
      // or
      let system_time: SystemTime = date_time.into();
  • Several functions in Instant/DateTime were renamed:
    • Instant::from_f64 -> DateTime::from_secs_f64
    • Instant::from_fractional_seconds -> DateTime::from_fractional_secs
    • Instant::from_epoch_seconds -> DateTime::from_secs
    • Instant::from_epoch_millis -> DateTime::from_millis
    • Instant::epoch_fractional_seconds -> DateTime::as_secs_f64
    • Instant::has_nanos -> DateTime::has_subsec_nanos
    • Instant::epoch_seconds -> DateTime::secs
    • Instant::epoch_subsecond_nanos -> DateTime::subsec_nanos
    • Instant::to_epoch_millis -> DateTime::to_millis
  • The DateTime::fmt method is now fallible and fails when a DateTime's value is outside what can be represented by the desired date format.
  • In aws-sigv4, the SigningParams builder's date_time setter was renamed to time and changed to take a std::time::SystemTime instead of a chrono's DateTime<Utc>.

New this week

  • ⚠️ MSRV increased from 1.53.0 to 1.54.0 per our 3-behind MSRV policy.
  • Conversions from aws_smithy_types::DateTime to OffsetDateTime from the time crate are now available from the aws-smithy-types-convert crate. (smithy-rs#849)
  • Fixed links to Usage Examples (smithy-rs#862, @floric)

New Contributors

v0.28.0-alpha (November 11th, 2021)

11 Nov 18:17
0ad2d55
Compare
Choose a tag to compare
Pre-release

No changes since last release except for version bumping since older versions of the AWS SDK were failing to compile with the 0.27.0-alpha.2 version chosen for the previous release.

v0.27.0-alpha.2 (November 9th, 2021)

09 Nov 18:36
50d812b
Compare
Choose a tag to compare
Pre-release

Breaking Changes

  • Members named builder on model structs were renamed to builder_value so that their accessors don't conflict with the existing builder() methods (smithy-rs#842)

New this week

  • Fix epoch seconds date-time parsing bug in aws-smithy-types (smithy-rs#834)
  • Omit trailing zeros from fraction when formatting HTTP dates in aws-smithy-types (smithy-rs#834)
  • Generated structs now have accessor methods for their members (smithy-rs#842)

v0.27.0-alpha.1 (November 3rd, 2021)

03 Nov 17:49
643f2ee
Compare
Choose a tag to compare
Pre-release

Breaking Changes

  • <operation>.make_operation(&config) is now an async function for all operations. Code should be updated to call .await. This will only impact users using the low-level API. (smithy-rs#797)

New this week

  • SDK code generation now includes a version in addition to path parameters when the version parameter is included in smithy-build.json
  • moduleDescription in smithy-build.json settings is now optional
  • Upgrade to Smithy 1.13
  • hyper::Error(IncompleteMessage) will now be retried (smithy-rs#815)
  • Fix generated docs on unions. (smithy-rs#826)