diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 03e6aaf74a..2d705b6313 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,7 +38,7 @@ on: required: false env: - rust_version: 1.74.1 + rust_version: 1.75.0 rust_toolchain_components: clippy,rustfmt ENCRYPTED_DOCKER_PASSWORD: ${{ secrets.ENCRYPTED_DOCKER_PASSWORD }} DOCKER_LOGIN_TOKEN_PASSPHRASE: ${{ secrets.DOCKER_LOGIN_TOKEN_PASSPHRASE }} diff --git a/.github/workflows/claim-crate-names.yml b/.github/workflows/claim-crate-names.yml index 6f0ec0b2f5..607ac15e79 100644 --- a/.github/workflows/claim-crate-names.yml +++ b/.github/workflows/claim-crate-names.yml @@ -10,7 +10,7 @@ concurrency: cancel-in-progress: true env: - rust_version: 1.74.1 + rust_version: 1.75.0 name: Claim unpublished crate names on crates.io run-name: ${{ github.workflow }} diff --git a/.github/workflows/github-pages.yml b/.github/workflows/github-pages.yml index 306c2276fb..1ffe657cd6 100644 --- a/.github/workflows/github-pages.yml +++ b/.github/workflows/github-pages.yml @@ -8,7 +8,7 @@ on: name: Update GitHub Pages env: - rust_version: 1.74.1 + rust_version: 1.75.0 # Allow only one doc pages build to run at a time for the entire smithy-rs repo concurrency: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ae99e5cc81..31d3661a1f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -10,7 +10,7 @@ concurrency: cancel-in-progress: true env: - rust_version: 1.74.1 + rust_version: 1.75.0 name: Release smithy-rs on: diff --git a/.github/workflows/update-sdk-next.yml b/.github/workflows/update-sdk-next.yml index b47a8b7a86..c765bf3513 100644 --- a/.github/workflows/update-sdk-next.yml +++ b/.github/workflows/update-sdk-next.yml @@ -45,7 +45,7 @@ jobs: - name: Set up Rust uses: dtolnay/rust-toolchain@master with: - toolchain: 1.74.1 + toolchain: 1.75.0 - name: Delete old SDK run: | - name: Generate a fresh SDK diff --git a/CHANGELOG.next.toml b/CHANGELOG.next.toml index fc4c4c2578..b254dcdc4a 100644 --- a/CHANGELOG.next.toml +++ b/CHANGELOG.next.toml @@ -9,4 +9,16 @@ # message = "Fix typos in module documentation for generated crates" # references = ["smithy-rs#920"] # meta = { "breaking" = false, "tada" = false, "bug" = false, "target" = "client | server | all"} -# author = "rcoh" \ No newline at end of file +# author = "rcoh" + +[[aws-sdk-rust]] +message = "Upgraded MSRV to Rust 1.75" +references = ["smithy-rs#3553"] +meta = { "breaking" = false, "tada" = false, "bug" = false } +author = "jdisanti" + +[[smithy-rs]] +message = "Upgraded MSRV to Rust 1.75" +references = ["smithy-rs#3553"] +meta = { "breaking" = false, "tada" = false, "bug" = false, "target" = "all"} +author = "jdisanti" diff --git a/aws/rust-runtime/aws-config/Cargo.toml b/aws/rust-runtime/aws-config/Cargo.toml index cfab87c8fd..ac6f7dfa12 100644 --- a/aws/rust-runtime/aws-config/Cargo.toml +++ b/aws/rust-runtime/aws-config/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aws-config" -version = "1.2.0" +version = "1.2.1" authors = [ "AWS Rust SDK Team ", "Russell Cohen ", diff --git a/aws/rust-runtime/aws-config/src/credential_process.rs b/aws/rust-runtime/aws-config/src/credential_process.rs index 6aec2a9888..b1b6572354 100644 --- a/aws/rust-runtime/aws-config/src/credential_process.rs +++ b/aws/rust-runtime/aws-config/src/credential_process.rs @@ -207,19 +207,12 @@ pub(crate) fn parse_credential_process_json_credentials( } fn parse_expiration(expiration: impl AsRef) -> Result { - SystemTime::try_from( - OffsetDateTime::parse(expiration.as_ref(), &Rfc3339).map_err(|err| { - InvalidJsonCredentials::InvalidField { - field: "Expiration", - err: err.into(), - } - })?, - ) - .map_err(|_| { - InvalidJsonCredentials::Other( - "credential expiration time cannot be represented by a DateTime".into(), - ) - }) + OffsetDateTime::parse(expiration.as_ref(), &Rfc3339) + .map(SystemTime::from) + .map_err(|err| InvalidJsonCredentials::InvalidField { + field: "Expiration", + err: err.into(), + }) } #[cfg(test)] diff --git a/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/customize/timestream/TimestreamDecorator.kt b/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/customize/timestream/TimestreamDecorator.kt index 3e4705a743..650730b146 100644 --- a/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/customize/timestream/TimestreamDecorator.kt +++ b/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/customize/timestream/TimestreamDecorator.kt @@ -63,7 +63,7 @@ class TimestreamDecorator : ClientCodegenDecorator { async fn resolve_endpoint(client: &crate::Client) -> Result<(#{Endpoint}, #{SystemTime}), #{BoxError}> { let describe_endpoints = client.describe_endpoints().send().await?; - let endpoint = describe_endpoints.endpoints().get(0).unwrap(); + let endpoint = describe_endpoints.endpoints().first().unwrap(); let expiry = client.config().time_source().expect("checked when ep discovery was enabled").now() + #{Duration}::from_secs(endpoint.cache_period_in_minutes() as u64 * 60); Ok(( diff --git a/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/testutil/Rust.kt b/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/testutil/Rust.kt index 89ce563e2a..2aa5e83e3b 100644 --- a/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/testutil/Rust.kt +++ b/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/testutil/Rust.kt @@ -118,7 +118,7 @@ object TestWorkspace { // help rust select the right version when we run cargo test // TODO(https://github.com/smithy-lang/smithy-rs/issues/2048): load this from the msrv property using a // method as we do for runtime crate versions - "[toolchain]\nchannel = \"1.74.1\"\n", + "[toolchain]\nchannel = \"1.75.0\"\n", ) // ensure there at least an empty lib.rs file to avoid broken crates newProject.resolve("src").mkdirs() diff --git a/gradle.properties b/gradle.properties index f21384f19a..3a44cdddf5 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,7 +4,7 @@ # # Rust MSRV (entered into the generated README) -rust.msrv=1.74.1 +rust.msrv=1.75.0 # To enable debug, swap out the two lines below. # When changing this value, be sure to run `./gradlew --stop` to kill the Gradle daemon. diff --git a/rust-runtime/aws-smithy-runtime/Cargo.toml b/rust-runtime/aws-smithy-runtime/Cargo.toml index 94c0a3c084..90cc797cce 100644 --- a/rust-runtime/aws-smithy-runtime/Cargo.toml +++ b/rust-runtime/aws-smithy-runtime/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aws-smithy-runtime" -version = "1.3.0" +version = "1.3.1" authors = ["AWS Rust SDK Team ", "Zelda Hessler "] description = "The new smithy runtime crate" edition = "2021" diff --git a/rust-runtime/aws-smithy-runtime/tests/stalled_stream_common.rs b/rust-runtime/aws-smithy-runtime/tests/stalled_stream_common.rs index 3596fa2e38..01d0248327 100644 --- a/rust-runtime/aws-smithy-runtime/tests/stalled_stream_common.rs +++ b/rust-runtime/aws-smithy-runtime/tests/stalled_stream_common.rs @@ -4,6 +4,8 @@ */ #![cfg(all(feature = "client", feature = "test-util"))] +// Extra imports are used by stalled_stream_download and stalled_stream_upload as conveniences +#![allow(unused_imports)] pub use aws_smithy_async::{ test_util::tick_advance_sleep::{ diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 27ae62c5bc..7897a24d1a 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,2 +1,2 @@ [toolchain] -channel = "1.74.1" +channel = "1.75.0" diff --git a/tools/ci-build/Dockerfile b/tools/ci-build/Dockerfile index 5f52d553eb..54948615c1 100644 --- a/tools/ci-build/Dockerfile +++ b/tools/ci-build/Dockerfile @@ -6,7 +6,7 @@ # This is the base Docker build image used by CI ARG base_image=public.ecr.aws/amazonlinux/amazonlinux:2023 -ARG rust_stable_version=1.74.1 +ARG rust_stable_version=1.75.0 ARG rust_nightly_version=nightly-2024-02-07 FROM ${base_image} AS bare_base_image