Releases: smithy-lang/smithy-rs
Releases · smithy-lang/smithy-rs
v0.30.0-alpha (November 23rd, 2021)
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 variantTimeoutError
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 fromaws_smithy_client::hyper_ext
. (smithy-rs#855)
v0.29.0-alpha (November 18th, 2021) Pre-release
Breaking Changes
Several breaking changes around aws_smithy_types::Instant
were introduced by smithy-rs#849:
aws_smithy_types::Instant
from was renamed toDateTime
to avoid confusion with the standard library's monotonically nondecreasingInstant
type.DateParseError
inaws_smithy_types
has been renamed toDateTimeParseError
to match the type that's being parsed.- The
chrono-conversions
feature and associated functions have been moved to theaws-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();
- Calls to
Instant::from_system_time
andInstant::to_system_time
have been changed toFrom
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();
- Calls to
- 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 aDateTime
's value is outside what can be represented by the desired date format. - In
aws-sigv4
, theSigningParams
builder'sdate_time
setter was renamed totime
and changed to take astd::time::SystemTime
instead of a chrono'sDateTime<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
toOffsetDateTime
from thetime
crate are now available from theaws-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)
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)
Breaking Changes
- Members named
builder
on model structs were renamed tobuilder_value
so that their accessors don't conflict with the existingbuilder()
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)
Breaking Changes
<operation>.make_operation(&config)
is now anasync
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
insmithy-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)
v0.27 (October 20th, 2021)
Breaking Changes
⚠️ All Smithy runtime crates have been renamed to have anaws-
prefix. This may require code changes:- Cargo.toml changes:
smithy-async
->aws-smithy-async
smithy-client
->aws-smithy-client
smithy-eventstream
->aws-smithy-eventstream
smithy-http
->aws-smithy-http
smithy-http-tower
->aws-smithy-http-tower
smithy-json
->aws-smithy-json
smithy-protocol-test
->aws-smithy-protocol-test
smithy-query
->aws-smithy-query
smithy-types
->aws-smithy-types
smithy-xml
->aws-smithy-xml
- Rust
use
statement changes:smithy_async
->aws_smithy_async
smithy_client
->aws_smithy_client
smithy_eventstream
->aws_smithy_eventstream
smithy_http
->aws_smithy_http
smithy_http_tower
->aws_smithy_http_tower
smithy_json
->aws_smithy_json
smithy_protocol_test
->aws_smithy_protocol_test
smithy_query
->aws_smithy_query
smithy_types
->aws_smithy_types
smithy_xml
->aws_smithy_xml
- Cargo.toml changes:
New this week
- Filled in missing docs for services in the rustdoc documentation (smithy-rs#779)
v0.26.1-alpha
v0.26.0-alpha (October 15th, 2021)
Breaking Changes
⚠️ Therust-codegen
plugin now requires amoduleDescription
in the smithy-build.json file. This
property goes into the generated Cargo.toml file as the package description. (smithy-rs#766)
New this week
- Add
RustSettings
toCodegenContext
(smithy-rs#616, smithy-rs#752) - Prepare crate manifests for publishing to crates.io (smithy-rs#755)
- Generated Cargo.toml files can now be customized (smithy-rs#766)
- Lots more docs on internal code generators
v0.25.1 (October 11, 2021)
New this week
- 🐛 Re-add missing deserialization operations that were missing because of a typo in
HttpBoundProtocolGenerator.kt
v0.25 (October 7, 2021)
Breaking changes
⚠️ MSRV increased from 1.52.1 to 1.53.0 per our 3-behind MSRV policy.⚠️ Several classes in the codegen module were renamed and/or refactored (smithy-rs#735):ProtocolConfig
becameCodegenContext
and moved tosoftware.amazon.smithy.rust.codegen.smithy
HttpProtocolGenerator
becameProtocolGenerator
and was refactored
to rely on composition instead of inheritanceHttpProtocolTestGenerator
becameProtocolTestGenerator
Protocol
moved intosoftware.amazon.smithy.rust.codegen.smithy.protocols
New this week
- 🐛 Fix an issue where
smithy-xml
may have generated invalid XML (smithy-rs#719) - 🐛 Fix error when receiving empty event stream messages (smithy-rs#736)
- 🐛 Fix bug in event stream receiver that could cause the last events in the response stream to be lost (smithy-rs#736)
New Contributors
- @hyandell made their first contribution in #644
- @davidbarsky made their first contribution in #638
- @JesseWright made their first contribution in #694
- @Velfi made their first contribution in #702
- @obi1kenobi made their first contribution in #719
- @crisidev made their first contribution in #737
- @guyilin-amazon made their first contribution in #750
- @yerke made their first contribution in #753