AWS SDK

AWS SDK

rev. c4f9295a7b4566dca79c361e3a2aa9e63cdf82e7

Files changed:

tmp-codegen-diff/aws-sdk/sdk/glacier/src/operation/upload_multipart_part.rs

@@ -265,265 +325,325 @@
  285    285   
  286    286   
#[allow(unreachable_code, unused_variables)]
  287    287   
#[cfg(test)]
  288    288   
mod upload_multipart_part_test {
  289    289   
  290    290   
    /// Glacier requires checksum headers that are cumbersome to provide.
  291    291   
    /// Test ID: GlacierMultipartChecksums
  292    292   
    #[::tokio::test]
  293    293   
    #[::tracing_test::traced_test]
  294    294   
    async fn glacier_multipart_checksums_request() {
  295         -
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
         295  +
        let (http_client, request_receiver) = ::aws_smithy_http_client::test_util::capture_request(None);
  296    296   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  297    297   
        let config_builder = config_builder.region(::aws_types::region::Region::new("us-east-1"));
  298    298   
        let mut config_builder = config_builder;
  299    299   
        config_builder.set_region(Some(crate::config::Region::new("us-east-1")));
  300    300   
  301    301   
        let config = config_builder.http_client(http_client).build();
  302    302   
        let client = crate::Client::from_conf(config);
  303    303   
        let result = client
  304    304   
            .upload_multipart_part()
  305    305   
            .set_account_id(::std::option::Option::Some("foo".to_owned()))

tmp-codegen-diff/aws-sdk/sdk/glacier/tests/custom-headers.rs

@@ -1,1 +39,39 @@
    1      1   
/*
    2      2   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
    3      3   
 * SPDX-License-Identifier: Apache-2.0
    4      4   
 */
    5      5   
    6      6   
use aws_sdk_glacier::config::{Credentials, Region};
    7      7   
use aws_sdk_glacier::primitives::ByteStream;
           8  +
use aws_smithy_http_client::test_util::capture_request;
    8      9   
use aws_smithy_protocol_test::{assert_ok, validate_headers};
    9         -
use aws_smithy_runtime::client::http::test_util::capture_request;
   10     10   
   11     11   
#[tokio::test]
   12     12   
async fn set_correct_headers() {
   13     13   
    let (http_client, handler) = capture_request(None);
   14     14   
    let conf = aws_sdk_glacier::Config::builder()
   15     15   
        .region(Region::new("us-east-1"))
   16     16   
        .credentials_provider(Credentials::for_tests())
   17     17   
        .http_client(http_client)
   18     18   
        .build();
   19     19   

tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml

@@ -1,1 +0,144 @@
    9      9   
repository = "https://github.com/awslabs/aws-sdk-rust"
   10     10   
rust-version = "1.81.0"
   11     11   
readme = "README.md"
   12     12   
[package.metadata.smithy]
   13     13   
codegen-version = "ci"
   14     14   
[package.metadata.docs.rs]
   15     15   
all-features = true
   16     16   
targets = ["x86_64-unknown-linux-gnu"]
   17     17   
[dependencies.aws-credential-types]
   18     18   
path = "../aws-credential-types"
   19         -
version = "1.2.1"
          19  +
version = "1.2.2"
   20     20   
   21     21   
[dependencies.aws-runtime]
   22     22   
path = "../aws-runtime"
   23         -
version = "1.5.5"
          23  +
version = "1.5.6"
   24     24   
   25     25   
[dependencies.aws-smithy-async]
   26     26   
path = "../aws-smithy-async"
   27         -
version = "1.2.4"
          27  +
version = "1.2.5"
   28     28   
   29     29   
[dependencies.aws-smithy-http]
   30     30   
path = "../aws-smithy-http"
   31         -
version = "0.61.1"
          31  +
version = "0.62.0"
   32     32   
   33     33   
[dependencies.aws-smithy-json]
   34     34   
path = "../aws-smithy-json"
   35         -
version = "0.61.2"
          35  +
version = "0.61.3"
   36     36   
   37     37   
[dependencies.aws-smithy-query]
   38     38   
path = "../aws-smithy-query"
   39     39   
version = "0.60.7"
   40     40   
   41     41   
[dependencies.aws-smithy-runtime]
   42     42   
path = "../aws-smithy-runtime"
   43     43   
features = ["client"]
   44         -
version = "1.7.8"
          44  +
version = "1.8.0"
   45     45   
   46     46   
[dependencies.aws-smithy-runtime-api]
   47     47   
path = "../aws-smithy-runtime-api"
   48     48   
features = ["client", "http-02x"]
   49         -
version = "1.7.3"
          49  +
version = "1.7.4"
   50     50   
   51     51   
[dependencies.aws-smithy-types]
   52     52   
path = "../aws-smithy-types"
   53         -
version = "1.2.13"
          53  +
version = "1.3.0"
   54     54   
   55     55   
[dependencies.aws-smithy-xml]
   56     56   
path = "../aws-smithy-xml"
   57     57   
version = "0.60.9"
   58     58   
   59     59   
[dependencies.aws-types]
   60     60   
path = "../aws-types"
   61         -
version = "1.3.5"
          61  +
version = "1.3.6"
   62     62   
   63     63   
[dependencies.http]
   64     64   
version = "0.2.9"
   65     65   
   66     66   
[dependencies.once_cell]
   67     67   
version = "1.16"
   68     68   
   69     69   
[dependencies.regex-lite]
   70     70   
version = "0.1.5"
   71     71   
   72     72   
[dependencies.tracing]
   73     73   
version = "0.1"
   74     74   
[dev-dependencies.aws-config]
   75     75   
path = "../aws-config"
   76         -
version = "1.5.18"
          76  +
version = "1.6.0"
   77     77   
   78     78   
[dev-dependencies.aws-credential-types]
   79     79   
path = "../aws-credential-types"
   80     80   
features = ["test-util"]
   81         -
version = "1.2.1"
          81  +
version = "1.2.2"
   82     82   
   83     83   
[dev-dependencies.aws-runtime]
   84     84   
path = "../aws-runtime"
   85     85   
features = ["test-util"]
   86         -
version = "1.5.5"
          86  +
version = "1.5.6"
   87     87   
   88     88   
[dev-dependencies.aws-smithy-async]
   89     89   
path = "../aws-smithy-async"
   90     90   
features = ["test-util"]
   91         -
version = "1.2.4"
          91  +
version = "1.2.5"
          92  +
          93  +
[dev-dependencies.aws-smithy-http-client]
          94  +
path = "../aws-smithy-http-client"
          95  +
features = ["test-util", "wire-mock"]
          96  +
version = "1.0.0"
   92     97   
   93     98   
[dev-dependencies.aws-smithy-protocol-test]
   94     99   
path = "../aws-smithy-protocol-test"
   95         -
version = "0.63.0"
         100  +
version = "0.63.1"
   96    101   
   97    102   
[dev-dependencies.aws-smithy-runtime]
   98    103   
path = "../aws-smithy-runtime"
   99         -
features = ["test-util", "wire-mock"]
  100         -
version = "1.7.8"
         104  +
features = ["test-util"]
         105  +
version = "1.8.0"
  101    106   
  102    107   
[dev-dependencies.aws-smithy-runtime-api]
  103    108   
path = "../aws-smithy-runtime-api"
  104    109   
features = ["test-util"]
  105         -
version = "1.7.3"
         110  +
version = "1.7.4"
  106    111   
  107    112   
[dev-dependencies.aws-smithy-types]
  108    113   
path = "../aws-smithy-types"
  109    114   
features = ["test-util"]
  110         -
version = "1.2.13"
         115  +
version = "1.3.0"
  111    116   
  112    117   
[dev-dependencies.futures-util]
  113    118   
version = "0.3.25"
  114    119   
features = ["alloc"]
  115    120   
default-features = false
  116    121   
         122  +
[dev-dependencies.http-1x]
         123  +
version = "1"
         124  +
package = "http"
         125  +
  117    126   
[dev-dependencies.serde_json]
  118    127   
version = "1.0.0"
  119    128   
  120    129   
[dev-dependencies.tokio]
  121    130   
version = "1.23.1"
  122    131   
features = ["macros", "test-util", "rt-multi-thread"]
  123    132   
  124    133   
[dev-dependencies.tracing-subscriber]
  125    134   
version = "0.3.16"
  126    135   
features = ["env-filter", "json"]
  127    136   
  128    137   
[features]
  129    138   
behavior-version-latest = []
  130    139   
rustls = ["aws-smithy-runtime/tls-rustls"]
         140  +
default-https-client = ["aws-smithy-runtime/default-https-client"]
  131    141   
rt-tokio = ["aws-smithy-async/rt-tokio", "aws-smithy-types/rt-tokio"]
  132    142   
test-util = ["aws-credential-types/test-util", "aws-smithy-runtime/test-util"]
  133    143   
gated-tests = []
  134         -
default = ["rustls", "rt-tokio"]
         144  +
default = ["rustls", "default-https-client", "rt-tokio"]

tmp-codegen-diff/aws-sdk/sdk/iam/tests/resolve-global-endpoint.rs

@@ -1,1 +22,22 @@
    1      1   
/*
    2      2   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
    3      3   
 * SPDX-License-Identifier: Apache-2.0
    4      4   
 */
    5      5   
    6      6   
use aws_sdk_iam::config::{Credentials, Region};
    7         -
use aws_smithy_runtime::client::http::test_util::capture_request;
           7  +
use aws_smithy_http_client::test_util::capture_request;
    8      8   
    9      9   
#[tokio::test]
   10     10   
async fn correct_endpoint_resolver() {
   11     11   
    let (http_client, request) = capture_request(None);
   12     12   
    let conf = aws_sdk_iam::Config::builder()
   13     13   
        .credentials_provider(Credentials::for_tests())
   14     14   
        .use_fips(true)
   15     15   
        .region(Region::new("us-east-1"))
   16     16   
        .http_client(http_client)
   17     17   
        .build();

tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml

@@ -1,1 +0,139 @@
    9      9   
repository = "https://github.com/awslabs/aws-sdk-rust"
   10     10   
rust-version = "1.81.0"
   11     11   
readme = "README.md"
   12     12   
[package.metadata.smithy]
   13     13   
codegen-version = "ci"
   14     14   
[package.metadata.docs.rs]
   15     15   
all-features = true
   16     16   
targets = ["x86_64-unknown-linux-gnu"]
   17     17   
[dependencies.aws-credential-types]
   18     18   
path = "../aws-credential-types"
   19         -
version = "1.2.1"
          19  +
version = "1.2.2"
   20     20   
   21     21   
[dependencies.aws-runtime]
   22     22   
path = "../aws-runtime"
   23         -
version = "1.5.5"
          23  +
version = "1.5.6"
   24     24   
   25     25   
[dependencies.aws-smithy-async]
   26     26   
path = "../aws-smithy-async"
   27         -
version = "1.2.4"
          27  +
version = "1.2.5"
   28     28   
   29     29   
[dependencies.aws-smithy-http]
   30     30   
path = "../aws-smithy-http"
   31         -
version = "0.61.1"
          31  +
version = "0.62.0"
   32     32   
   33     33   
[dependencies.aws-smithy-json]
   34     34   
path = "../aws-smithy-json"
   35         -
version = "0.61.2"
          35  +
version = "0.61.3"
   36     36   
   37     37   
[dependencies.aws-smithy-runtime]
   38     38   
path = "../aws-smithy-runtime"
   39     39   
features = ["client"]
   40         -
version = "1.7.8"
          40  +
version = "1.8.0"
   41     41   
   42     42   
[dependencies.aws-smithy-runtime-api]
   43     43   
path = "../aws-smithy-runtime-api"
   44     44   
features = ["client", "http-02x"]
   45         -
version = "1.7.3"
          45  +
version = "1.7.4"
   46     46   
   47     47   
[dependencies.aws-smithy-types]
   48     48   
path = "../aws-smithy-types"
   49         -
version = "1.2.13"
          49  +
version = "1.3.0"
   50     50   
   51     51   
[dependencies.aws-types]
   52     52   
path = "../aws-types"
   53         -
version = "1.3.5"
          53  +
version = "1.3.6"
   54     54   
   55     55   
[dependencies.bytes]
   56     56   
version = "1.4.0"
   57     57   
   58     58   
[dependencies.http]
   59     59   
version = "0.2.9"
   60     60   
   61     61   
[dependencies.once_cell]
   62     62   
version = "1.16"
   63     63   
   64     64   
[dependencies.regex-lite]
   65     65   
version = "0.1.5"
   66     66   
   67     67   
[dependencies.tracing]
   68     68   
version = "0.1"
   69     69   
[dev-dependencies.aws-config]
   70     70   
path = "../aws-config"
   71         -
version = "1.5.18"
          71  +
version = "1.6.0"
   72     72   
   73     73   
[dev-dependencies.aws-credential-types]
   74     74   
path = "../aws-credential-types"
   75     75   
features = ["test-util"]
   76         -
version = "1.2.1"
          76  +
version = "1.2.2"
   77     77   
   78     78   
[dev-dependencies.aws-runtime]
   79     79   
path = "../aws-runtime"
   80     80   
features = ["test-util"]
   81         -
version = "1.5.5"
          81  +
version = "1.5.6"
   82     82   
   83     83   
[dev-dependencies.aws-smithy-async]
   84     84   
path = "../aws-smithy-async"
   85     85   
features = ["test-util"]
   86         -
version = "1.2.4"
          86  +
version = "1.2.5"
          87  +
          88  +
[dev-dependencies.aws-smithy-http-client]
          89  +
path = "../aws-smithy-http-client"
          90  +
features = ["test-util", "wire-mock"]
          91  +
version = "1.0.0"
   87     92   
   88     93   
[dev-dependencies.aws-smithy-protocol-test]
   89     94   
path = "../aws-smithy-protocol-test"
   90         -
version = "0.63.0"
          95  +
version = "0.63.1"
   91     96   
   92     97   
[dev-dependencies.aws-smithy-runtime]
   93     98   
path = "../aws-smithy-runtime"
   94         -
features = ["test-util", "wire-mock"]
   95         -
version = "1.7.8"
          99  +
features = ["test-util"]
         100  +
version = "1.8.0"
   96    101   
   97    102   
[dev-dependencies.aws-smithy-runtime-api]
   98    103   
path = "../aws-smithy-runtime-api"
   99    104   
features = ["test-util"]
  100         -
version = "1.7.3"
         105  +
version = "1.7.4"
  101    106   
  102    107   
[dev-dependencies.aws-smithy-types]
  103    108   
path = "../aws-smithy-types"
  104    109   
features = ["test-util"]
  105         -
version = "1.2.13"
         110  +
version = "1.3.0"
  106    111   
  107    112   
[dev-dependencies.futures-util]
  108    113   
version = "0.3.25"
  109    114   
features = ["alloc"]
  110    115   
default-features = false
  111    116   
         117  +
[dev-dependencies.http-1x]
         118  +
version = "1"
         119  +
package = "http"
         120  +
  112    121   
[dev-dependencies.serde_json]
  113    122   
version = "1.0.0"
  114    123   
  115    124   
[dev-dependencies.tokio]
  116    125   
version = "1.23.1"
  117    126   
features = ["macros", "test-util", "rt-multi-thread"]
  118    127   
  119    128   
[dev-dependencies.tracing-subscriber]
  120    129   
version = "0.3.16"
  121    130   
features = ["env-filter", "json"]
  122    131   
  123    132   
[features]
  124    133   
behavior-version-latest = []
  125    134   
rustls = ["aws-smithy-runtime/tls-rustls"]
         135  +
default-https-client = ["aws-smithy-runtime/default-https-client"]
  126    136   
rt-tokio = ["aws-smithy-async/rt-tokio", "aws-smithy-types/rt-tokio"]
  127    137   
test-util = ["aws-credential-types/test-util", "aws-smithy-runtime/test-util"]
  128    138   
gated-tests = []
  129         -
default = ["rustls", "rt-tokio"]
         139  +
default = ["rustls", "default-https-client", "rt-tokio"]

tmp-codegen-diff/aws-sdk/sdk/kms/tests/integration.rs

@@ -1,1 +163,163 @@
    1      1   
/*
    2      2   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
    3      3   
 * SPDX-License-Identifier: Apache-2.0
    4      4   
 */
    5      5   
    6      6   
use aws_sdk_kms as kms;
    7      7   
use aws_sdk_kms::operation::RequestId;
    8         -
use aws_smithy_runtime::client::http::test_util::{ReplayEvent, StaticReplayClient};
           8  +
use aws_smithy_http_client::test_util::{ReplayEvent, StaticReplayClient};
    9      9   
use aws_smithy_runtime_api::client::result::SdkError;
   10     10   
use aws_smithy_types::body::SdkBody;
   11         -
use http::Uri;
          11  +
use http_1x::Uri;
   12     12   
use kms::config::{Config, Credentials, Region};
   13     13   
   14     14   
// TODO(DVR): having the full HTTP requests right in the code is a bit gross, consider something
   15     15   
// like https://github.com/davidbarsky/sigv4/blob/master/aws-sigv4/src/lib.rs#L283-L315 to store
   16     16   
// the requests/responses externally
   17     17   
   18     18   
/// Validate that for CN regions we set the URI correctly
   19     19   
#[tokio::test]
   20     20   
async fn generate_random_cn() {
   21     21   
    let http_client= StaticReplayClient::new(vec![ReplayEvent::new(
   22         -
        http::Request::builder()
          22  +
        http_1x::Request::builder()
   23     23   
            .uri(Uri::from_static("https://kms.cn-north-1.amazonaws.com.cn/"))
   24     24   
            .body(SdkBody::from(r#"{"NumberOfBytes":64}"#)).unwrap(),
   25         -
        http::Response::builder()
   26         -
            .status(http::StatusCode::from_u16(200).unwrap())
          25  +
        http_1x::Response::builder()
          26  +
            .status(http_1x::StatusCode::from_u16(200).unwrap())
   27     27   
            .body(SdkBody::from(r#"{"Plaintext":"6CG0fbzzhg5G2VcFCPmJMJ8Njv3voYCgrGlp3+BZe7eDweCXgiyDH9BnkKvLmS7gQhnYDUlyES3fZVGwv5+CxA=="}"#)).unwrap())
   28     28   
    ]);
   29     29   
    let conf = Config::builder()
   30     30   
        .http_client(http_client.clone())
   31     31   
        .region(Region::new("cn-north-1"))
   32     32   
        .credentials_provider(Credentials::for_tests())
   33     33   
        .build();
   34     34   
    let client = kms::Client::from_conf(conf);
   35     35   
    let _ = client
   36     36   
        .generate_random()
   37     37   
        .number_of_bytes(64)
   38     38   
        .send()
   39     39   
        .await
   40     40   
        .expect("success");
   41     41   
   42     42   
    assert_eq!(http_client.actual_requests().count(), 1);
   43     43   
    http_client.assert_requests_match(&[]);
   44     44   
}
   45     45   
   46     46   
#[cfg(feature = "test-util")]
   47     47   
#[tokio::test]
   48     48   
async fn generate_random() {
   49     49   
    let http_client = StaticReplayClient::new(vec![ReplayEvent::new(
   50         -
        http::Request::builder()
          50  +
        http_1x::Request::builder()
   51     51   
            .header("content-type", "application/x-amz-json-1.1")
   52     52   
            .header("x-amz-target", "TrentService.GenerateRandom")
   53     53   
            .header("content-length", "20")
   54     54   
            .header("authorization", "AWS4-HMAC-SHA256 Credential=ANOTREAL/20090213/us-east-1/kms/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-date;x-amz-target;x-amz-user-agent, Signature=53dcf70f6f852cb576185dcabef5aaa3d068704cf1b7ea7dc644efeaa46674d7")
   55     55   
            .header("x-amz-date", "20090213T233130Z")
   56     56   
            .header("user-agent", "aws-sdk-rust/0.123.test os/windows/XPSP3 lang/rust/1.50.0")
   57     57   
            .header("x-amz-user-agent", "aws-sdk-rust/0.123.test api/test-service/0.123 os/windows/XPSP3 lang/rust/1.50.0")
   58     58   
            .uri(Uri::from_static("https://kms.us-east-1.amazonaws.com/"))
   59     59   
            .body(SdkBody::from(r#"{"NumberOfBytes":64}"#)).unwrap(),
   60         -
        http::Response::builder()
   61         -
            .status(http::StatusCode::from_u16(200).unwrap())
          60  +
        http_1x::Response::builder()
          61  +
            .status(http_1x::StatusCode::from_u16(200).unwrap())
   62     62   
            .body(SdkBody::from(r#"{"Plaintext":"6CG0fbzzhg5G2VcFCPmJMJ8Njv3voYCgrGlp3+BZe7eDweCXgiyDH9BnkKvLmS7gQhnYDUlyES3fZVGwv5+CxA=="}"#)).unwrap())
   63     63   
    ]);
   64     64   
    let conf = Config::builder()
   65     65   
        .http_client(http_client.clone())
   66     66   
        .region(Region::new("us-east-1"))
   67     67   
        .credentials_provider(Credentials::for_tests_with_session_token())
   68     68   
        .with_test_defaults()
   69     69   
        .build();
   70     70   
    let client = kms::Client::from_conf(conf);
   71     71   
    let resp = client
   72     72   
        .generate_random()
   73     73   
        .number_of_bytes(64)
   74     74   
        .customize()
   75     75   
        .mutate_request(|req| {
   76     76   
            // Remove the invocation ID since the signed request above doesn't have it
   77     77   
            req.headers_mut().remove("amz-sdk-invocation-id");
   78     78   
        })
   79     79   
        .send()
   80     80   
        .await
   81     81   
        .expect("request should succeed");
   82     82   
    // primitive checksum
   83     83   
    assert_eq!(
   84     84   
        resp.plaintext
   85     85   
            .expect("blob should exist")
   86     86   
            .as_ref()
   87     87   
            .iter()
   88     88   
            .map(|i| *i as u32)
   89     89   
            .sum::<u32>(),
   90     90   
        8562
   91     91   
    );
   92     92   
    http_client.relaxed_requests_match();
   93     93   
}
   94     94   
   95     95   
#[tokio::test]
   96     96   
async fn generate_random_malformed_response() {
   97     97   
    let http_client = StaticReplayClient::new(vec![ReplayEvent::new(
   98         -
        http::Request::builder().body(SdkBody::from(r#"{"NumberOfBytes":64}"#)).unwrap(),
   99         -
        http::Response::builder()
  100         -
            .status(http::StatusCode::from_u16(200).unwrap())
          98  +
        http_1x::Request::builder().body(SdkBody::from(r#"{"NumberOfBytes":64}"#)).unwrap(),
          99  +
        http_1x::Response::builder()
         100  +
            .status(http_1x::StatusCode::from_u16(200).unwrap())
  101    101   
            // last `}` replaced with a space, invalid JSON
  102    102   
            .body(SdkBody::from(r#"{"Plaintext":"6CG0fbzzhg5G2VcFCPmJMJ8Njv3voYCgrGlp3+BZe7eDweCXgiyDH9BnkKvLmS7gQhnYDUlyES3fZVGwv5+CxA==" "#)).unwrap())
  103    103   
    ]);
  104    104   
    let conf = Config::builder()
  105    105   
        .http_client(http_client.clone())
  106    106   
        .region(Region::new("us-east-1"))
  107    107   
        .credentials_provider(Credentials::for_tests())
  108    108   
        .build();
  109    109   
    let client = kms::Client::from_conf(conf);
  110    110   
    client
  111    111   
        .generate_random()
  112    112   
        .number_of_bytes(64)
  113    113   
        .send()
  114    114   
        .await
  115    115   
        .expect_err("response was malformed");
  116    116   
}
  117    117   
  118    118   
#[cfg(feature = "test-util")]
  119    119   
#[tokio::test]
  120    120   
async fn generate_random_keystore_not_found() {
  121    121   
    let http_client = StaticReplayClient::new(vec![ReplayEvent::new(
  122         -
        http::Request::builder()
         122  +
        http_1x::Request::builder()
  123    123   
            .header("content-type", "application/x-amz-json-1.1")
  124    124   
            .header("x-amz-target", "TrentService.GenerateRandom")
  125    125   
            .header("content-length", "56")
  126    126   
            .header("authorization", "AWS4-HMAC-SHA256 Credential=ANOTREAL/20090213/us-east-1/kms/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-target, Signature=ffef92c6b75d66cc511daa896eb4a085ec053a2592e17d1f22ecaf167f2fa4bb")
  127    127   
            .header("x-amz-date", "20090213T233130Z")
  128    128   
            .header("user-agent", "aws-sdk-rust/0.123.test os/windows/XPSP3 lang/rust/1.50.0")
  129    129   
            .header("x-amz-user-agent", "aws-sdk-rust/0.123.test api/test-service/0.123 os/windows/XPSP3 lang/rust/1.50.0")
  130    130   
            .uri(Uri::from_static("https://kms.us-east-1.amazonaws.com/"))
  131    131   
            .body(SdkBody::from(r#"{"NumberOfBytes":64,"CustomKeyStoreId":"does not exist"}"#)).unwrap(),
  132         -
        http::Response::builder()
  133         -
            .status(http::StatusCode::from_u16(400).unwrap())
         132  +
        http_1x::Response::builder()
         133  +
            .status(http_1x::StatusCode::from_u16(400).unwrap())
  134    134   
            .header("x-amzn-requestid", "bfe81a0a-9a08-4e71-9910-cdb5ab6ea3b6")
  135    135   
            .header("cache-control", "no-cache, no-store, must-revalidate, private")
  136    136   
            .header("expires", "0")
  137    137   
            .header("pragma", "no-cache")
  138    138   
            .header("date", "Fri, 05 Mar 2021 15:01:40 GMT")
  139    139   
            .header("content-type", "application/x-amz-json-1.1")
  140    140   
            .header("content-length", "44")
  141    141   
            .body(SdkBody::from(r#"{"__type":"CustomKeyStoreNotFoundException"}"#)).unwrap())
  142    142   
    ]);
  143    143   
    let conf = Config::builder()

tmp-codegen-diff/aws-sdk/sdk/kms/tests/retryable_errors.rs

@@ -1,1 +73,73 @@
    1      1   
/*
    2      2   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
    3      3   
 * SPDX-License-Identifier: Apache-2.0
    4      4   
 */
    5      5   
    6      6   
use aws_credential_types::Credentials;
    7      7   
use aws_runtime::retries::classifiers::AwsErrorCodeClassifier;
    8      8   
use aws_sdk_kms as kms;
    9         -
use aws_smithy_runtime::client::http::test_util::infallible_client_fn;
           9  +
use aws_smithy_http_client::test_util::infallible_client_fn;
   10     10   
use aws_smithy_runtime_api::client::interceptors::context::{Error, Input, InterceptorContext};
   11     11   
use aws_smithy_runtime_api::client::orchestrator::{HttpResponse, OrchestratorError};
   12     12   
use aws_smithy_runtime_api::client::result::SdkError;
   13     13   
use aws_smithy_runtime_api::client::retries::classifiers::{ClassifyRetry, RetryAction};
   14     14   
use bytes::Bytes;
   15     15   
use kms::operation::create_alias::CreateAliasError;
   16     16   
   17     17   
async fn make_err(
   18         -
    response: impl Fn() -> http::Response<Bytes> + Send + Sync + 'static,
          18  +
    response: impl Fn() -> http_1x::Response<Bytes> + Send + Sync + 'static,
   19     19   
) -> SdkError<CreateAliasError, HttpResponse> {
   20     20   
    let http_client = infallible_client_fn(move |_| response());
   21     21   
    let conf = kms::Config::builder()
   22     22   
        .http_client(http_client)
   23     23   
        .credentials_provider(Credentials::for_tests())
   24     24   
        .region(kms::config::Region::from_static("us-east-1"))
   25     25   
        .build();
   26     26   
    let client = kms::Client::from_conf(conf);
   27     27   
    client
   28     28   
        .create_alias()
   29     29   
        .send()
   30     30   
        .await
   31     31   
        .expect_err("response was a failure")
   32     32   
}
   33     33   
   34     34   
/// Parse a semi-real response body and assert that the correct retry status is returned
   35     35   
#[tokio::test]
   36     36   
async fn errors_are_retryable() {
   37     37   
    let err = make_err(|| {
   38         -
        http::Response::builder()
          38  +
        http_1x::Response::builder()
   39     39   
            .status(400)
   40     40   
            .body(Bytes::from_static(
   41     41   
                br#"{ "code": "LimitExceededException" }"#,
   42     42   
            ))
   43     43   
            .unwrap()
   44     44   
    })
   45     45   
    .await;
   46     46   
   47     47   
    dbg!(&err);
   48     48   
    let classifier = AwsErrorCodeClassifier::<CreateAliasError>::new();
   49     49   
    let mut ctx = InterceptorContext::new(Input::doesnt_matter());
   50     50   
    let err = err.into_service_error();
   51     51   
    ctx.set_output_or_error(Err(OrchestratorError::operation(Error::erase(err))));
   52     52   
    let retry_action = classifier.classify_retry(&ctx);
   53     53   
    assert_eq!(RetryAction::throttling_error(), retry_action);
   54     54   
}
   55     55   
   56     56   
#[tokio::test]
   57     57   
async fn unmodeled_errors_are_retryable() {
   58     58   
    let err = make_err(|| {
   59         -
        http::Response::builder()
          59  +
        http_1x::Response::builder()
   60     60   
            .status(400)
   61     61   
            .body(Bytes::from_static(br#"{ "code": "ThrottlingException" }"#))
   62     62   
            .unwrap()
   63     63   
    })
   64     64   
    .await;
   65     65   
   66     66   
    dbg!(&err);
   67     67   
    let classifier = AwsErrorCodeClassifier::<CreateAliasError>::new();
   68     68   
    let mut ctx = InterceptorContext::new(Input::doesnt_matter());
   69     69   
    let err = err.into_service_error();

tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml

@@ -1,1 +0,150 @@
    9      9   
repository = "https://github.com/awslabs/aws-sdk-rust"
   10     10   
rust-version = "1.81.0"
   11     11   
readme = "README.md"
   12     12   
[package.metadata.smithy]
   13     13   
codegen-version = "ci"
   14     14   
[package.metadata.docs.rs]
   15     15   
all-features = true
   16     16   
targets = ["x86_64-unknown-linux-gnu"]
   17     17   
[dependencies.aws-credential-types]
   18     18   
path = "../aws-credential-types"
   19         -
version = "1.2.1"
          19  +
version = "1.2.2"
   20     20   
   21     21   
[dependencies.aws-runtime]
   22     22   
path = "../aws-runtime"
   23     23   
features = ["event-stream"]
   24         -
version = "1.5.5"
          24  +
version = "1.5.6"
   25     25   
   26     26   
[dependencies.aws-smithy-async]
   27     27   
path = "../aws-smithy-async"
   28         -
version = "1.2.4"
          28  +
version = "1.2.5"
   29     29   
   30     30   
[dependencies.aws-smithy-eventstream]
   31     31   
path = "../aws-smithy-eventstream"
   32         -
version = "0.60.7"
          32  +
version = "0.60.8"
   33     33   
   34     34   
[dependencies.aws-smithy-http]
   35     35   
path = "../aws-smithy-http"
   36     36   
features = ["event-stream"]
   37         -
version = "0.61.1"
          37  +
version = "0.62.0"
   38     38   
   39     39   
[dependencies.aws-smithy-json]
   40     40   
path = "../aws-smithy-json"
   41         -
version = "0.61.2"
          41  +
version = "0.61.3"
   42     42   
   43     43   
[dependencies.aws-smithy-runtime]
   44     44   
path = "../aws-smithy-runtime"
   45     45   
features = ["client"]
   46         -
version = "1.7.8"
          46  +
version = "1.8.0"
   47     47   
   48     48   
[dependencies.aws-smithy-runtime-api]
   49     49   
path = "../aws-smithy-runtime-api"
   50     50   
features = ["client", "http-02x"]
   51         -
version = "1.7.3"
          51  +
version = "1.7.4"
   52     52   
   53     53   
[dependencies.aws-smithy-types]
   54     54   
path = "../aws-smithy-types"
   55         -
version = "1.2.13"
          55  +
version = "1.3.0"
   56     56   
   57     57   
[dependencies.aws-types]
   58     58   
path = "../aws-types"
   59         -
version = "1.3.5"
          59  +
version = "1.3.6"
   60     60   
   61     61   
[dependencies.bytes]
   62     62   
version = "1.4.0"
   63     63   
   64     64   
[dependencies.http]
   65     65   
version = "0.2.9"
   66     66   
   67     67   
[dependencies.once_cell]
   68     68   
version = "1.16"
   69     69   
   70     70   
[dependencies.regex-lite]
   71     71   
version = "0.1.5"
   72     72   
   73     73   
[dependencies.tracing]
   74     74   
version = "0.1"
   75     75   
[dev-dependencies.aws-config]
   76     76   
path = "../aws-config"
   77         -
version = "1.5.18"
          77  +
version = "1.6.0"
   78     78   
   79     79   
[dev-dependencies.aws-credential-types]
   80     80   
path = "../aws-credential-types"
   81     81   
features = ["test-util"]
   82         -
version = "1.2.1"
          82  +
version = "1.2.2"
   83     83   
   84     84   
[dev-dependencies.aws-runtime]
   85     85   
path = "../aws-runtime"
   86     86   
features = ["test-util"]
   87         -
version = "1.5.5"
          87  +
version = "1.5.6"
   88     88   
   89     89   
[dev-dependencies.aws-smithy-async]
   90     90   
path = "../aws-smithy-async"
   91     91   
features = ["test-util"]
   92         -
version = "1.2.4"
          92  +
version = "1.2.5"
   93     93   
   94     94   
[dev-dependencies.aws-smithy-eventstream]
   95     95   
path = "../aws-smithy-eventstream"
   96     96   
features = ["test-util"]
   97         -
version = "0.60.7"
          97  +
version = "0.60.8"
          98  +
          99  +
[dev-dependencies.aws-smithy-http-client]
         100  +
path = "../aws-smithy-http-client"
         101  +
features = ["test-util", "wire-mock"]
         102  +
version = "1.0.0"
   98    103   
   99    104   
[dev-dependencies.aws-smithy-protocol-test]
  100    105   
path = "../aws-smithy-protocol-test"
  101         -
version = "0.63.0"
         106  +
version = "0.63.1"
  102    107   
  103    108   
[dev-dependencies.aws-smithy-runtime]
  104    109   
path = "../aws-smithy-runtime"
  105         -
features = ["test-util", "wire-mock"]
  106         -
version = "1.7.8"
         110  +
features = ["test-util"]
         111  +
version = "1.8.0"
  107    112   
  108    113   
[dev-dependencies.aws-smithy-runtime-api]
  109    114   
path = "../aws-smithy-runtime-api"
  110    115   
features = ["test-util"]
  111         -
version = "1.7.3"
         116  +
version = "1.7.4"
  112    117   
  113    118   
[dev-dependencies.aws-smithy-types]
  114    119   
path = "../aws-smithy-types"
  115    120   
features = ["test-util"]
  116         -
version = "1.2.13"
         121  +
version = "1.3.0"
  117    122   
  118    123   
[dev-dependencies.futures-util]
  119    124   
version = "0.3.25"
  120    125   
features = ["alloc"]
  121    126   
default-features = false
  122    127   
         128  +
[dev-dependencies.http-1x]
         129  +
version = "1"
         130  +
package = "http"
         131  +
  123    132   
[dev-dependencies.serde_json]
  124    133   
version = "1.0.0"
  125    134   
  126    135   
[dev-dependencies.tokio]
  127    136   
version = "1.23.1"
  128    137   
features = ["macros", "test-util", "rt-multi-thread"]
  129    138   
  130    139   
[dev-dependencies.tracing-subscriber]
  131    140   
version = "0.3.16"
  132    141   
features = ["env-filter", "json"]
  133    142   
  134    143   
[features]
  135    144   
behavior-version-latest = []
  136    145   
rustls = ["aws-smithy-runtime/tls-rustls"]
         146  +
default-https-client = ["aws-smithy-runtime/default-https-client"]
  137    147   
test-util = ["aws-credential-types/test-util", "aws-smithy-runtime/test-util"]
  138    148   
rt-tokio = ["aws-smithy-async/rt-tokio", "aws-smithy-types/rt-tokio"]
  139    149   
gated-tests = []
  140         -
default = ["rustls", "rt-tokio"]
         150  +
default = ["rustls", "default-https-client", "rt-tokio"]

tmp-codegen-diff/aws-sdk/sdk/lambda/tests/naughty-strings-client-context.rs

@@ -1,1 +37,37 @@
    1      1   
#![allow(dead_code)]
    2      2   
/*
    3      3   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
    4      4   
 * SPDX-License-Identifier: Apache-2.0
    5      5   
 */
    6      6   
    7         -
// use http::HeaderValue;
           7  +
// use http_1x::HeaderValue;
    8      8   
    9      9   
const NAUGHTY_STRINGS: &str = include_str!("blns/blns.txt");
   10     10   
   11     11   
/// A list of lines to skipped when iterating over the blns. These lines should all fail when
   12     12   
/// entered into the AWS CLI too. In the below test, every one of these lines will produce an
   13     13   
/// `InvalidSignatureException` error with the message:
   14     14   
/// > The request signature we calculated does not match the signature you provided. Check your AWS
   15     15   
/// > Secret Access Key and signing method. Consult the service documentation for details.
   16     16   
const SKIPPED_LINES: &[usize] = &[
   17     17   
    124, // '€‚ƒ„†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ'

tmp-codegen-diff/aws-sdk/sdk/lambda/tests/request_id.rs

@@ -1,1 +65,65 @@
    1      1   
/*
    2      2   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
    3      3   
 * SPDX-License-Identifier: Apache-2.0
    4      4   
 */
    5      5   
    6      6   
use aws_sdk_lambda::config::{Credentials, Region};
    7      7   
use aws_sdk_lambda::operation::list_functions::ListFunctionsError;
    8      8   
use aws_sdk_lambda::operation::RequestId;
    9      9   
use aws_sdk_lambda::{Client, Config};
   10         -
use aws_smithy_runtime::client::http::test_util::infallible_client_fn;
          10  +
use aws_smithy_http_client::test_util::infallible_client_fn;
   11     11   
   12     12   
#[allow(deprecated)]
   13     13   
async fn run_test(
   14         -
    response: impl Fn() -> http::Response<&'static str> + Send + Sync + 'static,
          14  +
    response: impl Fn() -> http_1x::Response<&'static str> + Send + Sync + 'static,
   15     15   
    expect_error: bool,
   16     16   
) {
   17     17   
    let http_client = infallible_client_fn(move |_| response());
   18     18   
    let conf = Config::builder()
   19     19   
        .http_client(http_client)
   20     20   
        .credentials_provider(Credentials::for_tests())
   21     21   
        .region(Region::from_static("us-east-1"))
   22     22   
        .build();
   23     23   
    let client = Client::from_conf(conf);
   24     24   
    let resp = client.list_functions().send().await;
   25     25   
    if expect_error {
   26     26   
        let err = resp.expect_err("should be an error").into_service_error();
   27     27   
        assert!(matches!(err, ListFunctionsError::Unhandled(_)));
   28     28   
        assert_eq!(Some("correct-request-id"), err.request_id());
   29     29   
        assert_eq!(Some("correct-request-id"), err.meta().request_id());
   30     30   
    } else {
   31     31   
        let output = resp.expect("should be successful");
   32     32   
        assert_eq!(Some("correct-request-id"), output.request_id());
   33     33   
    }
   34     34   
}
   35     35   
   36     36   
#[tokio::test]
   37     37   
async fn get_request_id_from_unmodeled_error() {
   38     38   
    run_test(
   39     39   
        || {
   40         -
            http::Response::builder()
          40  +
            http_1x::Response::builder()
   41     41   
                .header("x-amzn-RequestId", "correct-request-id")
   42     42   
                .header("X-Amzn-Errortype", "ListFunctions")
   43     43   
                .status(500)
   44     44   
                .body("{}")
   45     45   
                .unwrap()
   46     46   
        },
   47     47   
        true,
   48     48   
    )
   49     49   
    .await;
   50     50   
}
   51     51   
   52     52   
#[tokio::test]
   53     53   
async fn get_request_id_from_successful_response() {
   54     54   
    run_test(
   55     55   
        || {
   56         -
            http::Response::builder()
          56  +
            http_1x::Response::builder()
   57     57   
                .header("x-amzn-RequestId", "correct-request-id")
   58     58   
                .status(200)
   59     59   
                .body(r#"{"Functions":[],"NextMarker":null}"#)
   60     60   
                .unwrap()
   61     61   
        },
   62     62   
        false,
   63     63   
    )
   64     64   
    .await;
   65     65   
}

tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml

@@ -1,1 +0,149 @@
    9      9   
repository = "https://github.com/awslabs/aws-sdk-rust"
   10     10   
rust-version = "1.81.0"
   11     11   
readme = "README.md"
   12     12   
[package.metadata.smithy]
   13     13   
codegen-version = "ci"
   14     14   
[package.metadata.docs.rs]
   15     15   
all-features = true
   16     16   
targets = ["x86_64-unknown-linux-gnu"]
   17     17   
[dependencies.aws-credential-types]
   18     18   
path = "../aws-credential-types"
   19         -
version = "1.2.1"
          19  +
version = "1.2.2"
   20     20   
   21     21   
[dependencies.aws-runtime]
   22     22   
path = "../aws-runtime"
   23         -
version = "1.5.5"
          23  +
version = "1.5.6"
   24     24   
   25     25   
[dependencies.aws-sigv4]
   26     26   
path = "../aws-sigv4"
   27         -
version = "1.2.9"
          27  +
version = "1.3.0"
   28     28   
   29     29   
[dependencies.aws-smithy-async]
   30     30   
path = "../aws-smithy-async"
   31         -
version = "1.2.4"
          31  +
version = "1.2.5"
   32     32   
   33     33   
[dependencies.aws-smithy-http]
   34     34   
path = "../aws-smithy-http"
   35         -
version = "0.61.1"
          35  +
version = "0.62.0"
   36     36   
   37     37   
[dependencies.aws-smithy-json]
   38     38   
path = "../aws-smithy-json"
   39         -
version = "0.61.2"
          39  +
version = "0.61.3"
   40     40   
   41     41   
[dependencies.aws-smithy-runtime]
   42     42   
path = "../aws-smithy-runtime"
   43     43   
features = ["client"]
   44         -
version = "1.7.8"
          44  +
version = "1.8.0"
   45     45   
   46     46   
[dependencies.aws-smithy-runtime-api]
   47     47   
path = "../aws-smithy-runtime-api"
   48     48   
features = ["client", "http-02x"]
   49         -
version = "1.7.3"
          49  +
version = "1.7.4"
   50     50   
   51     51   
[dependencies.aws-smithy-types]
   52     52   
path = "../aws-smithy-types"
   53         -
version = "1.2.13"
          53  +
version = "1.3.0"
   54     54   
   55     55   
[dependencies.aws-types]
   56     56   
path = "../aws-types"
   57         -
version = "1.3.5"
          57  +
version = "1.3.6"
   58     58   
   59     59   
[dependencies.bytes]
   60     60   
version = "1.4.0"
   61     61   
   62     62   
[dependencies.http]
   63     63   
version = "0.2.9"
   64     64   
   65     65   
[dependencies.http-1x]
   66     66   
version = "1"
   67         -
optional = true
   68     67   
package = "http"
   69     68   
   70     69   
[dependencies.http-body-1x]
   71     70   
version = "1"
   72     71   
optional = true
   73     72   
package = "http-body"
   74     73   
   75     74   
[dependencies.once_cell]
   76     75   
version = "1.16"
   77     76   
   78     77   
[dependencies.regex-lite]
   79     78   
version = "0.1.5"
   80     79   
   81     80   
[dependencies.tracing]
   82     81   
version = "0.1"
   83     82   
[dev-dependencies.aws-config]
   84     83   
path = "../aws-config"
   85         -
version = "1.5.18"
          84  +
version = "1.6.0"
   86     85   
   87     86   
[dev-dependencies.aws-credential-types]
   88     87   
path = "../aws-credential-types"
   89     88   
features = ["test-util"]
   90         -
version = "1.2.1"
          89  +
version = "1.2.2"
   91     90   
   92     91   
[dev-dependencies.aws-runtime]
   93     92   
path = "../aws-runtime"
   94     93   
features = ["test-util"]
   95         -
version = "1.5.5"
          94  +
version = "1.5.6"
   96     95   
   97     96   
[dev-dependencies.aws-smithy-async]
   98     97   
path = "../aws-smithy-async"
   99     98   
features = ["test-util"]
  100         -
version = "1.2.4"
          99  +
version = "1.2.5"
         100  +
         101  +
[dev-dependencies.aws-smithy-http-client]
         102  +
path = "../aws-smithy-http-client"
         103  +
features = ["test-util", "wire-mock"]
         104  +
version = "1.0.0"
  101    105   
  102    106   
[dev-dependencies.aws-smithy-protocol-test]
  103    107   
path = "../aws-smithy-protocol-test"
  104         -
version = "0.63.0"
         108  +
version = "0.63.1"
  105    109   
  106    110   
[dev-dependencies.aws-smithy-runtime]
  107    111   
path = "../aws-smithy-runtime"
  108         -
features = ["test-util", "wire-mock"]
  109         -
version = "1.7.8"
         112  +
features = ["test-util"]
         113  +
version = "1.8.0"
  110    114   
  111    115   
[dev-dependencies.aws-smithy-runtime-api]
  112    116   
path = "../aws-smithy-runtime-api"
  113    117   
features = ["test-util"]
  114         -
version = "1.7.3"
         118  +
version = "1.7.4"
  115    119   
  116    120   
[dev-dependencies.aws-smithy-types]
  117    121   
path = "../aws-smithy-types"
  118    122   
features = ["test-util"]
  119         -
version = "1.2.13"
         123  +
version = "1.3.0"
  120    124   
  121    125   
[dev-dependencies.futures-util]
  122    126   
version = "0.3.25"
  123    127   
features = ["alloc"]
  124    128   
default-features = false
  125    129   
  126    130   
[dev-dependencies.serde_json]
  127    131   
version = "1.0.0"
  128    132   
  129    133   
[dev-dependencies.tokio]
  130    134   
version = "1.23.1"
  131    135   
features = ["macros", "test-util", "rt-multi-thread"]
  132    136   
  133    137   
[dev-dependencies.tracing-subscriber]
  134    138   
version = "0.3.16"
  135    139   
features = ["env-filter", "json"]
  136    140   
  137    141   
[features]
  138         -
http-1x = ["dep:http-1x", "dep:http-body-1x", "aws-smithy-runtime-api/http-1x"]
         142  +
http-1x = ["dep:http-body-1x", "aws-smithy-runtime-api/http-1x"]
  139    143   
behavior-version-latest = []
  140    144   
rustls = ["aws-smithy-runtime/tls-rustls"]
         145  +
default-https-client = ["aws-smithy-runtime/default-https-client"]
  141    146   
test-util = ["aws-credential-types/test-util", "aws-smithy-runtime/test-util"]
  142    147   
rt-tokio = ["aws-smithy-async/rt-tokio", "aws-smithy-types/rt-tokio"]
  143    148   
gated-tests = []
  144         -
default = ["rustls", "rt-tokio"]
         149  +
default = ["rustls", "default-https-client", "rt-tokio"]

tmp-codegen-diff/aws-sdk/sdk/polly/tests/presigning.rs

@@ -5,5 +114,114 @@
   25     25   
        .presigned(
   26     26   
            PresigningConfig::builder()
   27     27   
                .start_time(SystemTime::UNIX_EPOCH + Duration::from_secs(1234567891))
   28     28   
                .expires_in(Duration::from_secs(30))
   29     29   
                .build()
   30     30   
                .unwrap(),
   31     31   
        )
   32     32   
        .await
   33     33   
        .expect("success");
   34     34   
   35         -
    let uri = presigned.uri().parse::<http::Uri>().unwrap();
          35  +
    let uri = presigned.uri().parse::<http_1x::Uri>().unwrap();
   36     36   
    let pq = uri.path_and_query().unwrap();
   37     37   
    let path = pq.path();
   38     38   
    let query = pq.query().unwrap();
   39     39   
    let mut query_params: Vec<&str> = query.split('&').collect();
   40     40   
    query_params.sort();
   41     41   
   42     42   
    assert_eq!("GET", presigned.method());
   43     43   
    assert_eq!("/v1/speech", path);
   44     44   
    assert_eq!(
   45     45   
        &[
   46     46   
            "OutputFormat=mp3",
   47     47   
            "Text=hello%2C%20world",
   48     48   
            "VoiceId=Joanna",
   49     49   
            "X-Amz-Algorithm=AWS4-HMAC-SHA256",
   50     50   
            "X-Amz-Credential=ANOTREAL%2F20090213%2Fus-east-1%2Fpolly%2Faws4_request",
   51     51   
            "X-Amz-Date=20090213T233131Z",
   52     52   
            "X-Amz-Expires=30",
   53     53   
            "X-Amz-Security-Token=notarealsessiontoken",
   54     54   
            "X-Amz-Signature=79fcf765b063aa29d852fa9d7c2a9ccff94d727d743adbff84a0be6afe9a92e8",
   55     55   
            "X-Amz-SignedHeaders=host",
   56     56   
        ][..],
   57     57   
        &query_params
   58     58   
    );
   59     59   
    assert_eq!(presigned.headers().count(), 0);
   60     60   
}
   61     61   
   62     62   
#[tokio::test]
   63     63   
async fn test_presigning_customized() {
   64     64   
    let config = Config::builder()
   65     65   
        .credentials_provider(Credentials::for_tests_with_session_token())
   66     66   
        .region(Region::new("us-east-1"))
   67     67   
        .build();
   68     68   
    let client = polly::Client::from_conf(config);
   69     69   
   70     70   
    let presigned = client
   71     71   
        .synthesize_speech()
   72     72   
        .output_format(OutputFormat::Mp3)
   73     73   
        .text("hello, world")
   74     74   
        .voice_id(VoiceId::Joanna)
   75     75   
        .customize()
   76     76   
        .config_override(Config::builder().region(Region::new("us-west-1")))
   77     77   
        .mutate_request(|req| req.set_uri(req.uri().to_string() + "&test").expect("valid"))
   78     78   
        .presigned(
   79     79   
            PresigningConfig::builder()
   80     80   
                .start_time(SystemTime::UNIX_EPOCH + Duration::from_secs(1234567891))
   81     81   
                .expires_in(Duration::from_secs(30))
   82     82   
                .build()
   83     83   
                .unwrap(),
   84     84   
        )
   85     85   
        .await
   86     86   
        .expect("success");
   87     87   
   88         -
    let uri = presigned.uri().parse::<http::Uri>().unwrap();
          88  +
    let uri = presigned.uri().parse::<http_1x::Uri>().unwrap();
   89     89   
    let pq = uri.path_and_query().unwrap();
   90     90   
    let path = pq.path();
   91     91   
    let query = pq.query().unwrap();
   92     92   
    let mut query_params: Vec<&str> = query.split('&').collect();
   93     93   
    query_params.sort();
   94     94   
   95     95   
    assert_eq!("GET", presigned.method());
   96     96   
    assert_eq!("/v1/speech", path);
   97     97   
    assert_eq!(
   98     98   
        &[

tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml

@@ -1,1 +0,139 @@
    9      9   
repository = "https://github.com/awslabs/aws-sdk-rust"
   10     10   
rust-version = "1.81.0"
   11     11   
readme = "README.md"
   12     12   
[package.metadata.smithy]
   13     13   
codegen-version = "ci"
   14     14   
[package.metadata.docs.rs]
   15     15   
all-features = true
   16     16   
targets = ["x86_64-unknown-linux-gnu"]
   17     17   
[dependencies.aws-credential-types]
   18     18   
path = "../aws-credential-types"
   19         -
version = "1.2.1"
          19  +
version = "1.2.2"
   20     20   
   21     21   
[dependencies.aws-runtime]
   22     22   
path = "../aws-runtime"
   23         -
version = "1.5.5"
          23  +
version = "1.5.6"
   24     24   
   25     25   
[dependencies.aws-smithy-async]
   26     26   
path = "../aws-smithy-async"
   27         -
version = "1.2.4"
          27  +
version = "1.2.5"
   28     28   
   29     29   
[dependencies.aws-smithy-http]
   30     30   
path = "../aws-smithy-http"
   31         -
version = "0.61.1"
          31  +
version = "0.62.0"
   32     32   
   33     33   
[dependencies.aws-smithy-json]
   34     34   
path = "../aws-smithy-json"
   35         -
version = "0.61.2"
          35  +
version = "0.61.3"
   36     36   
   37     37   
[dependencies.aws-smithy-runtime]
   38     38   
path = "../aws-smithy-runtime"
   39     39   
features = ["client"]
   40         -
version = "1.7.8"
          40  +
version = "1.8.0"
   41     41   
   42     42   
[dependencies.aws-smithy-runtime-api]
   43     43   
path = "../aws-smithy-runtime-api"
   44     44   
features = ["client", "http-02x"]
   45         -
version = "1.7.3"
          45  +
version = "1.7.4"
   46     46   
   47     47   
[dependencies.aws-smithy-types]
   48     48   
path = "../aws-smithy-types"
   49         -
version = "1.2.13"
          49  +
version = "1.3.0"
   50     50   
   51     51   
[dependencies.aws-types]
   52     52   
path = "../aws-types"
   53         -
version = "1.3.5"
          53  +
version = "1.3.6"
   54     54   
   55     55   
[dependencies.bytes]
   56     56   
version = "1.4.0"
   57     57   
   58     58   
[dependencies.http]
   59     59   
version = "0.2.9"
   60     60   
   61     61   
[dependencies.once_cell]
   62     62   
version = "1.16"
   63     63   
   64     64   
[dependencies.regex-lite]
   65     65   
version = "0.1.5"
   66     66   
   67     67   
[dependencies.tracing]
   68     68   
version = "0.1"
   69     69   
[dev-dependencies.aws-config]
   70     70   
path = "../aws-config"
   71         -
version = "1.5.18"
          71  +
version = "1.6.0"
   72     72   
   73     73   
[dev-dependencies.aws-credential-types]
   74     74   
path = "../aws-credential-types"
   75     75   
features = ["test-util"]
   76         -
version = "1.2.1"
          76  +
version = "1.2.2"
   77     77   
   78     78   
[dev-dependencies.aws-runtime]
   79     79   
path = "../aws-runtime"
   80     80   
features = ["test-util"]
   81         -
version = "1.5.5"
          81  +
version = "1.5.6"
   82     82   
   83     83   
[dev-dependencies.aws-smithy-async]
   84     84   
path = "../aws-smithy-async"
   85     85   
features = ["test-util"]
   86         -
version = "1.2.4"
          86  +
version = "1.2.5"
          87  +
          88  +
[dev-dependencies.aws-smithy-http-client]
          89  +
path = "../aws-smithy-http-client"
          90  +
features = ["test-util", "wire-mock"]
          91  +
version = "1.0.0"
   87     92   
   88     93   
[dev-dependencies.aws-smithy-protocol-test]
   89     94   
path = "../aws-smithy-protocol-test"
   90         -
version = "0.63.0"
          95  +
version = "0.63.1"
   91     96   
   92     97   
[dev-dependencies.aws-smithy-runtime]
   93     98   
path = "../aws-smithy-runtime"
   94         -
features = ["test-util", "wire-mock"]
   95         -
version = "1.7.8"
          99  +
features = ["test-util"]
         100  +
version = "1.8.0"
   96    101   
   97    102   
[dev-dependencies.aws-smithy-runtime-api]
   98    103   
path = "../aws-smithy-runtime-api"
   99    104   
features = ["test-util"]
  100         -
version = "1.7.3"
         105  +
version = "1.7.4"
  101    106   
  102    107   
[dev-dependencies.aws-smithy-types]
  103    108   
path = "../aws-smithy-types"
  104    109   
features = ["test-util"]
  105         -
version = "1.2.13"
         110  +
version = "1.3.0"
  106    111   
  107    112   
[dev-dependencies.futures-util]
  108    113   
version = "0.3.25"
  109    114   
features = ["alloc"]
  110    115   
default-features = false
  111    116   
         117  +
[dev-dependencies.http-1x]
         118  +
version = "1"
         119  +
package = "http"
         120  +
  112    121   
[dev-dependencies.serde_json]
  113    122   
version = "1.0.0"
  114    123   
  115    124   
[dev-dependencies.tokio]
  116    125   
version = "1.23.1"
  117    126   
features = ["macros", "test-util", "rt-multi-thread"]
  118    127   
  119    128   
[dev-dependencies.tracing-subscriber]
  120    129   
version = "0.3.16"
  121    130   
features = ["env-filter", "json"]
  122    131   
  123    132   
[features]
  124    133   
behavior-version-latest = []
  125    134   
rustls = ["aws-smithy-runtime/tls-rustls"]
         135  +
default-https-client = ["aws-smithy-runtime/default-https-client"]
  126    136   
rt-tokio = ["aws-smithy-async/rt-tokio", "aws-smithy-types/rt-tokio"]
  127    137   
test-util = ["aws-credential-types/test-util", "aws-smithy-runtime/test-util"]
  128    138   
gated-tests = []
  129         -
default = ["rustls", "rt-tokio"]
         139  +
default = ["rustls", "default-https-client", "rt-tokio"]

tmp-codegen-diff/aws-sdk/sdk/qldbsession/tests/integration.rs

@@ -1,1 +59,59 @@
    1      1   
/*
    2      2   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
    3      3   
 * SPDX-License-Identifier: Apache-2.0
    4      4   
 */
    5      5   
    6      6   
#![cfg(feature = "test-util")]
    7      7   
    8      8   
use aws_sdk_qldbsession::config::{Config, Credentials, Region};
    9      9   
use aws_sdk_qldbsession::types::StartSessionRequest;
   10     10   
use aws_sdk_qldbsession::Client;
   11         -
use aws_smithy_runtime::client::http::test_util::{ReplayEvent, StaticReplayClient};
          11  +
use aws_smithy_http_client::test_util::{ReplayEvent, StaticReplayClient};
   12     12   
use aws_smithy_types::body::SdkBody;
   13         -
use http::Uri;
          13  +
use http_1x::Uri;
   14     14   
   15     15   
#[cfg(feature = "test-util")]
   16     16   
#[tokio::test]
   17     17   
async fn signv4_use_correct_service_name() {
   18     18   
    let http_client = StaticReplayClient::new(vec![ReplayEvent::new(
   19         -
        http::Request::builder()
          19  +
        http_1x::Request::builder()
   20     20   
            .header("content-type", "application/x-amz-json-1.0")
   21     21   
            .header("x-amz-target", "QLDBSession.SendCommand")
   22     22   
            .header("content-length", "49")
   23     23   
            .header("authorization", "AWS4-HMAC-SHA256 Credential=ANOTREAL/20090213/us-east-1/qldb/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-date;x-amz-target;x-amz-user-agent, Signature=9a07c60550504d015fb9a2b0f1b175a4d906651f9dd4ee44bebb32a802d03815")
   24     24   
            // qldbsession uses the signing name 'qldb' in signature _________________________^^^^
   25     25   
            .header("x-amz-date", "20090213T233130Z")
   26     26   
            .header("user-agent", "aws-sdk-rust/0.123.test os/windows/XPSP3 lang/rust/1.50.0")
   27     27   
            .uri(Uri::from_static("https://session.qldb.us-east-1.amazonaws.com/"))
   28     28   
            .body(SdkBody::from(r#"{"StartSession":{"LedgerName":"not-real-ledger"}}"#)).unwrap(),
   29         -
        http::Response::builder()
   30         -
            .status(http::StatusCode::from_u16(200).unwrap())
          29  +
        http_1x::Response::builder()
          30  +
            .status(http_1x::StatusCode::from_u16(200).unwrap())
   31     31   
            .body(SdkBody::from(r#"{}"#)).unwrap()),
   32     32   
    ]);
   33     33   
    let conf = Config::builder()
   34     34   
        .http_client(http_client.clone())
   35     35   
        .region(Region::new("us-east-1"))
   36     36   
        .credentials_provider(Credentials::for_tests_with_session_token())
   37     37   
        .with_test_defaults()
   38     38   
        .build();
   39     39   
    let client = Client::from_conf(conf);
   40     40   

tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml

@@ -1,1 +0,102 @@
    9      9   
repository = "https://github.com/awslabs/aws-sdk-rust"
   10     10   
rust-version = "1.81.0"
   11     11   
readme = "README.md"
   12     12   
[package.metadata.smithy]
   13     13   
codegen-version = "ci"
   14     14   
[package.metadata.docs.rs]
   15     15   
all-features = true
   16     16   
targets = ["x86_64-unknown-linux-gnu"]
   17     17   
[dependencies.aws-credential-types]
   18     18   
path = "../aws-credential-types"
   19         -
version = "1.2.1"
          19  +
version = "1.2.2"
   20     20   
   21     21   
[dependencies.aws-runtime]
   22     22   
path = "../aws-runtime"
   23         -
version = "1.5.5"
          23  +
version = "1.5.6"
   24     24   
   25     25   
[dependencies.aws-smithy-async]
   26     26   
path = "../aws-smithy-async"
   27         -
version = "1.2.4"
          27  +
version = "1.2.5"
   28     28   
   29     29   
[dependencies.aws-smithy-http]
   30     30   
path = "../aws-smithy-http"
   31         -
version = "0.61.1"
          31  +
version = "0.62.0"
   32     32   
   33     33   
[dependencies.aws-smithy-json]
   34     34   
path = "../aws-smithy-json"
   35         -
version = "0.61.2"
          35  +
version = "0.61.3"
   36     36   
   37     37   
[dependencies.aws-smithy-runtime]
   38     38   
path = "../aws-smithy-runtime"
   39     39   
features = ["client"]
   40         -
version = "1.7.8"
          40  +
version = "1.8.0"
   41     41   
   42     42   
[dependencies.aws-smithy-runtime-api]
   43     43   
path = "../aws-smithy-runtime-api"
   44     44   
features = ["client", "http-02x"]
   45         -
version = "1.7.3"
          45  +
version = "1.7.4"
   46     46   
   47     47   
[dependencies.aws-smithy-types]
   48     48   
path = "../aws-smithy-types"
   49         -
version = "1.2.13"
          49  +
version = "1.3.0"
   50     50   
   51     51   
[dependencies.aws-smithy-xml]
   52     52   
path = "../aws-smithy-xml"
   53     53   
version = "0.60.9"
   54     54   
   55     55   
[dependencies.aws-types]
   56     56   
path = "../aws-types"
   57         -
version = "1.3.5"
          57  +
version = "1.3.6"
   58     58   
   59     59   
[dependencies.http]
   60     60   
version = "0.2.9"
   61     61   
   62     62   
[dependencies.once_cell]
   63     63   
version = "1.16"
   64     64   
   65     65   
[dependencies.regex-lite]
   66     66   
version = "0.1.5"
   67     67   
   68     68   
[dependencies.tracing]
   69     69   
version = "0.1"
   70     70   
[dev-dependencies.aws-config]
   71     71   
path = "../aws-config"
   72         -
version = "1.5.18"
          72  +
version = "1.6.0"
   73     73   
   74     74   
[dev-dependencies.aws-credential-types]
   75     75   
path = "../aws-credential-types"
   76     76   
features = ["test-util"]
   77         -
version = "1.2.1"
          77  +
version = "1.2.2"
   78     78   
   79         -
[dev-dependencies.aws-smithy-runtime]
   80         -
path = "../aws-smithy-runtime"
   81         -
features = ["client", "test-util"]
   82         -
version = "1.7.8"
          79  +
[dev-dependencies.aws-smithy-http-client]
          80  +
path = "../aws-smithy-http-client"
          81  +
features = ["test-util"]
          82  +
version = "1.0.0"
   83     83   
   84     84   
[dev-dependencies.pretty_assertions]
   85     85   
version = "1.3.0"
   86     86   
   87     87   
[dev-dependencies.tokio]
   88     88   
version = "1.23.1"
   89     89   
features = ["macros", "test-util", "rt-multi-thread"]
   90     90   
   91     91   
[dev-dependencies.tracing-test]
   92     92   
version = "0.2.5"
   93     93   
features = ["no-env-filter"]
   94     94   
   95     95   
[features]
   96     96   
behavior-version-latest = []
   97     97   
rustls = ["aws-smithy-runtime/tls-rustls"]
          98  +
default-https-client = ["aws-smithy-runtime/default-https-client"]
   98     99   
rt-tokio = ["aws-smithy-async/rt-tokio", "aws-smithy-types/rt-tokio"]
   99    100   
test-util = ["aws-credential-types/test-util", "aws-smithy-runtime/test-util"]
  100    101   
gated-tests = []
  101         -
default = ["rustls", "rt-tokio"]
         102  +
default = ["rustls", "default-https-client", "rt-tokio"]

tmp-codegen-diff/aws-sdk/sdk/route53/src/operation/get_change.rs

@@ -225,225 +285,285 @@
  245    245   
  246    246   
#[allow(unreachable_code, unused_variables)]
  247    247   
#[cfg(test)]
  248    248   
mod get_change_test {
  249    249   
  250    250   
    /// This test validates that change id is correctly trimmed
  251    251   
    /// Test ID: GetChangeTrimChangeId
  252    252   
    #[::tokio::test]
  253    253   
    #[::tracing_test::traced_test]
  254    254   
    async fn get_change_trim_change_id_request() {
  255         -
        let (http_client, request_receiver) = ::aws_smithy_runtime::client::http::test_util::capture_request(None);
         255  +
        let (http_client, request_receiver) = ::aws_smithy_http_client::test_util::capture_request(None);
  256    256   
        let config_builder = crate::config::Config::builder().with_test_defaults().endpoint_url("https://example.com");
  257    257   
        let config_builder = config_builder.region(::aws_types::region::Region::new("us-east-1"));
  258    258   
        let mut config_builder = config_builder;
  259    259   
        config_builder.set_region(Some(crate::config::Region::new("us-east-1")));
  260    260   
  261    261   
        let config = config_builder.http_client(http_client).build();
  262    262   
        let client = crate::Client::from_conf(config);
  263    263   
        let result = client
  264    264   
            .get_change()
  265    265   
            .set_id(::std::option::Option::Some("/change/SOMECHANGEID".to_owned()))