AWS SDK

AWS SDK

rev. fca5226853a0af3daf5733035f087130d7e7b318 (ignoring whitespace)

Files changed:

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

@@ -10,10 +135,135 @@
   30     30   
path = "../aws-smithy-http"
   31     31   
version = "0.62.1"
   32     32   
   33     33   
[dependencies.aws-smithy-json]
   34     34   
path = "../aws-smithy-json"
   35     35   
version = "0.61.4"
   36     36   
   37     37   
[dependencies.aws-smithy-runtime]
   38     38   
path = "../aws-smithy-runtime"
   39     39   
features = ["client", "http-auth"]
   40         -
version = "1.8.4"
          40  +
version = "1.8.5"
   41     41   
   42     42   
[dependencies.aws-smithy-runtime-api]
   43     43   
path = "../aws-smithy-runtime-api"
   44     44   
features = ["client", "http-02x", "http-auth"]
   45         -
version = "1.8.3"
          45  +
version = "1.8.4"
   46     46   
   47     47   
[dependencies.aws-smithy-types]
   48     48   
path = "../aws-smithy-types"
   49     49   
version = "1.3.2"
   50     50   
   51     51   
[dependencies.aws-types]
   52     52   
path = "../aws-types"
   53         -
version = "1.3.7"
          53  +
version = "1.3.8"
   54     54   
   55     55   
[dependencies.bytes]
   56     56   
version = "1.4.0"
   57     57   
   58     58   
[dependencies.fastrand]
   59     59   
version = "2.0.0"
   60     60   
   61     61   
[dependencies.http]
   62     62   
version = "0.2.9"
   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.8.2"
          71  +
version = "1.8.3"
   72     72   
   73     73   
[dev-dependencies.aws-credential-types]
   74     74   
path = "../aws-credential-types"
   75     75   
features = ["test-util"]
   76     76   
version = "1.2.3"
   77     77   
   78     78   
[dev-dependencies.aws-runtime]
   79     79   
path = "../aws-runtime"
   80     80   
features = ["test-util"]
   81     81   
version = "1.5.9"
   82     82   
   83     83   
[dev-dependencies.aws-smithy-async]
   84     84   
path = "../aws-smithy-async"
   85     85   
features = ["test-util"]
   86     86   
version = "1.2.5"
   87     87   
   88     88   
[dev-dependencies.aws-smithy-http-client]
   89     89   
path = "../aws-smithy-http-client"
   90     90   
features = ["test-util", "wire-mock"]
   91     91   
version = "1.0.6"
   92     92   
   93     93   
[dev-dependencies.aws-smithy-protocol-test]
   94     94   
path = "../aws-smithy-protocol-test"
   95     95   
version = "0.63.4"
   96     96   
   97     97   
[dev-dependencies.aws-smithy-runtime]
   98     98   
path = "../aws-smithy-runtime"
   99     99   
features = ["test-util"]
  100         -
version = "1.8.4"
         100  +
version = "1.8.5"
  101    101   
  102    102   
[dev-dependencies.aws-smithy-runtime-api]
  103    103   
path = "../aws-smithy-runtime-api"
  104    104   
features = ["test-util"]
  105         -
version = "1.8.3"
         105  +
version = "1.8.4"
  106    106   
  107    107   
[dev-dependencies.aws-smithy-types]
  108    108   
path = "../aws-smithy-types"
  109    109   
features = ["test-util"]
  110    110   
version = "1.3.2"
  111    111   
  112    112   
[dev-dependencies.futures-util]
  113    113   
version = "0.3.25"
  114    114   
features = ["alloc"]
  115    115   
default-features = false

tmp-codegen-diff/aws-sdk/sdk/codecatalyst/src/config.rs

@@ -36,36 +95,99 @@
   56     56   
    }
   57     57   
    /// Return the auth schemes configured on this service config
   58     58   
    pub fn auth_schemes(&self) -> impl Iterator<Item = ::aws_smithy_runtime_api::client::auth::SharedAuthScheme> + '_ {
   59     59   
        self.runtime_components.auth_schemes()
   60     60   
    }
   61     61   
   62     62   
    /// Return the auth scheme resolver configured on this service config
   63     63   
    pub fn auth_scheme_resolver(&self) -> ::std::option::Option<::aws_smithy_runtime_api::client::auth::SharedAuthSchemeOptionResolver> {
   64     64   
        self.runtime_components.auth_scheme_option_resolver()
   65     65   
    }
          66  +
    /// Returns the configured auth scheme preference
          67  +
    pub fn auth_scheme_preference(&self) -> ::std::option::Option<&::aws_smithy_runtime_api::client::auth::AuthSchemePreference> {
          68  +
        self.config.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>()
          69  +
    }
   66     70   
    /// Returns the endpoint resolver.
   67     71   
    pub fn endpoint_resolver(&self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver {
   68     72   
        self.runtime_components.endpoint_resolver().expect("resolver defaulted if not set")
   69     73   
    }
   70     74   
    /// Return a reference to the retry configuration contained in this config, if any.
   71     75   
    pub fn retry_config(&self) -> ::std::option::Option<&::aws_smithy_types::retry::RetryConfig> {
   72     76   
        self.config.load::<::aws_smithy_types::retry::RetryConfig>()
   73     77   
    }
   74     78   
   75     79   
    /// Return a cloned shared async sleep implementation from this config, if any.
@@ -135,139 +194,199 @@
  155    159   
    ///
  156    160   
    pub fn new() -> Self {
  157    161   
        Self::default()
  158    162   
    }
  159    163   
    /// Constructs a config builder from the given `config_bag`, setting only fields stored in the config bag,
  160    164   
    /// but not those in runtime components.
  161    165   
    #[allow(unused)]
  162    166   
    pub(crate) fn from_config_bag(config_bag: &::aws_smithy_types::config_bag::ConfigBag) -> Self {
  163    167   
        let mut builder = Self::new();
  164    168   
        builder.set_stalled_stream_protection(config_bag.load::<crate::config::StalledStreamProtectionConfig>().cloned());
         169  +
        builder.set_auth_scheme_preference(config_bag.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>().cloned());
  165    170   
        builder.set_retry_config(config_bag.load::<::aws_smithy_types::retry::RetryConfig>().cloned());
  166    171   
        builder.set_timeout_config(config_bag.load::<::aws_smithy_types::timeout::TimeoutConfig>().cloned());
  167    172   
        builder.set_retry_partition(config_bag.load::<::aws_smithy_runtime::client::retries::RetryPartition>().cloned());
  168    173   
        builder.set_app_name(config_bag.load::<::aws_types::app_name::AppName>().cloned());
  169    174   
        builder.set_endpoint_url(config_bag.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()));
  170    175   
        builder.set_use_fips(config_bag.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0));
  171    176   
        builder.set_region(config_bag.load::<crate::config::Region>().cloned());
  172    177   
        builder
  173    178   
    }
  174    179   
    /// Set the [`StalledStreamProtectionConfig`](crate::config::StalledStreamProtectionConfig)
@@ -414,419 +473,535 @@
  434    439   
  435    440   
    /// Set the auth scheme resolver for the builder
  436    441   
    ///
  437    442   
    /// # Examples
  438    443   
    /// See an example for [`Self::auth_scheme_resolver`].
  439    444   
    pub fn set_auth_scheme_resolver(&mut self, auth_scheme_resolver: impl crate::config::auth::ResolveAuthScheme + 'static) -> &mut Self {
  440    445   
        self.runtime_components
  441    446   
            .set_auth_scheme_option_resolver(::std::option::Option::Some(auth_scheme_resolver.into_shared_resolver()));
  442    447   
        self
  443    448   
    }
         449  +
    /// Set the auth scheme preference for an auth scheme resolver
         450  +
    /// (typically the default auth scheme resolver).
         451  +
    ///
         452  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         453  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         454  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         455  +
    ///
         456  +
    /// The preference list is intended as a hint rather than a strict override.
         457  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         458  +
    ///
         459  +
    /// # Examples
         460  +
    ///
         461  +
    /// ```no_run
         462  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         463  +
    /// let config = aws_sdk_codecatalyst::Config::builder()
         464  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         465  +
    ///     // ...
         466  +
    ///     .build();
         467  +
    /// let client = aws_sdk_codecatalyst::Client::from_conf(config);
         468  +
    /// ```
         469  +
         470  +
    pub fn auth_scheme_preference(
         471  +
        mut self,
         472  +
        preference: impl ::std::convert::Into<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         473  +
    ) -> Self {
         474  +
        self.set_auth_scheme_preference(::std::option::Option::Some(preference.into()));
         475  +
        self
         476  +
    }
         477  +
         478  +
    /// Set the auth scheme preference for an auth scheme resolver
         479  +
    /// (typically the default auth scheme resolver).
         480  +
    ///
         481  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         482  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         483  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         484  +
    ///
         485  +
    /// The preference list is intended as a hint rather than a strict override.
         486  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         487  +
    ///
         488  +
    /// # Examples
         489  +
    ///
         490  +
    /// ```no_run
         491  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         492  +
    /// let config = aws_sdk_codecatalyst::Config::builder()
         493  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         494  +
    ///     // ...
         495  +
    ///     .build();
         496  +
    /// let client = aws_sdk_codecatalyst::Client::from_conf(config);
         497  +
    /// ```
         498  +
         499  +
    pub fn set_auth_scheme_preference(
         500  +
        &mut self,
         501  +
        preference: ::std::option::Option<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         502  +
    ) -> &mut Self {
         503  +
        self.config.store_or_unset(preference);
         504  +
        self
         505  +
    }
  444    506   
    /// Sets the endpoint resolver to use when making requests.
  445    507   
    ///
  446    508   
    ///
  447    509   
    /// When unset, the client will used a generated endpoint resolver based on the endpoint resolution
  448    510   
    /// rules for `aws_sdk_codecatalyst`.
  449    511   
    ///
  450    512   
    ///
  451    513   
    /// Note: setting an endpoint resolver will replace any endpoint URL that has been set.
  452    514   
    /// This method accepts an endpoint resolver [specific to this service](crate::config::endpoint::ResolveEndpoint). If you want to
  453    515   
    /// provide a shared endpoint resolver, use [`Self::set_endpoint_resolver`].
@@ -1395,1457 +1454,1517 @@
 1415   1477   
            );
 1416   1478   
        }
 1417   1479   
        // resiliency
 1418   1480   
        builder.set_retry_config(input.retry_config().cloned());
 1419   1481   
        builder.set_timeout_config(input.timeout_config().cloned());
 1420   1482   
        builder.set_sleep_impl(input.sleep_impl());
 1421   1483   
 1422   1484   
        builder.set_http_client(input.http_client());
 1423   1485   
        builder.set_time_source(input.time_source());
 1424   1486   
        builder.set_behavior_version(input.behavior_version());
        1487  +
        builder.set_auth_scheme_preference(input.auth_scheme_preference().cloned());
 1425   1488   
        // setting `None` here removes the default
 1426   1489   
        if let Some(config) = input.stalled_stream_protection() {
 1427   1490   
            builder.set_stalled_stream_protection(Some(config));
 1428   1491   
        }
 1429   1492   
 1430   1493   
        if let Some(cache) = input.identity_cache() {
 1431   1494   
            builder.set_identity_cache(cache);
 1432   1495   
        }
 1433   1496   
        builder.set_token_provider(input.token_provider());
 1434   1497   
        builder.set_app_name(input.app_name().cloned());

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

@@ -10,10 +89,89 @@
   30     30   
path = "../aws-smithy-http"
   31     31   
version = "0.62.1"
   32     32   
   33     33   
[dependencies.aws-smithy-json]
   34     34   
path = "../aws-smithy-json"
   35     35   
version = "0.61.4"
   36     36   
   37     37   
[dependencies.aws-smithy-runtime]
   38     38   
path = "../aws-smithy-runtime"
   39     39   
features = ["client"]
   40         -
version = "1.8.4"
          40  +
version = "1.8.5"
   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.8.3"
          45  +
version = "1.8.4"
   46     46   
   47     47   
[dependencies.aws-smithy-types]
   48     48   
path = "../aws-smithy-types"
   49     49   
version = "1.3.2"
   50     50   
   51     51   
[dependencies.aws-types]
   52     52   
path = "../aws-types"
   53         -
version = "1.3.7"
          53  +
version = "1.3.8"
   54     54   
   55     55   
[dependencies.bytes]
   56     56   
version = "1.4.0"
   57     57   
   58     58   
[dependencies.fastrand]
   59     59   
version = "2.0.0"
   60     60   
   61     61   
[dependencies.http]
   62     62   
version = "0.2.9"
   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.8.2"
          71  +
version = "1.8.3"
   72     72   
   73     73   
[dev-dependencies.aws-credential-types]
   74     74   
path = "../aws-credential-types"
   75     75   
features = ["test-util"]
   76     76   
version = "1.2.3"
   77     77   
   78     78   
[dev-dependencies.tokio]
   79     79   
version = "1.23.1"
   80     80   
features = ["macros", "test-util", "rt-multi-thread"]
   81     81   

tmp-codegen-diff/aws-sdk/sdk/config/src/config.rs

@@ -36,36 +95,99 @@
   56     56   
    }
   57     57   
    /// Return the auth schemes configured on this service config
   58     58   
    pub fn auth_schemes(&self) -> impl Iterator<Item = ::aws_smithy_runtime_api::client::auth::SharedAuthScheme> + '_ {
   59     59   
        self.runtime_components.auth_schemes()
   60     60   
    }
   61     61   
   62     62   
    /// Return the auth scheme resolver configured on this service config
   63     63   
    pub fn auth_scheme_resolver(&self) -> ::std::option::Option<::aws_smithy_runtime_api::client::auth::SharedAuthSchemeOptionResolver> {
   64     64   
        self.runtime_components.auth_scheme_option_resolver()
   65     65   
    }
          66  +
    /// Returns the configured auth scheme preference
          67  +
    pub fn auth_scheme_preference(&self) -> ::std::option::Option<&::aws_smithy_runtime_api::client::auth::AuthSchemePreference> {
          68  +
        self.config.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>()
          69  +
    }
   66     70   
    /// Returns the endpoint resolver.
   67     71   
    pub fn endpoint_resolver(&self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver {
   68     72   
        self.runtime_components.endpoint_resolver().expect("resolver defaulted if not set")
   69     73   
    }
   70     74   
    /// Return a reference to the retry configuration contained in this config, if any.
   71     75   
    pub fn retry_config(&self) -> ::std::option::Option<&::aws_smithy_types::retry::RetryConfig> {
   72     76   
        self.config.load::<::aws_smithy_types::retry::RetryConfig>()
   73     77   
    }
   74     78   
   75     79   
    /// Return a cloned shared async sleep implementation from this config, if any.
@@ -149,153 +208,213 @@
  169    173   
    ///
  170    174   
    pub fn new() -> Self {
  171    175   
        Self::default()
  172    176   
    }
  173    177   
    /// Constructs a config builder from the given `config_bag`, setting only fields stored in the config bag,
  174    178   
    /// but not those in runtime components.
  175    179   
    #[allow(unused)]
  176    180   
    pub(crate) fn from_config_bag(config_bag: &::aws_smithy_types::config_bag::ConfigBag) -> Self {
  177    181   
        let mut builder = Self::new();
  178    182   
        builder.set_stalled_stream_protection(config_bag.load::<crate::config::StalledStreamProtectionConfig>().cloned());
         183  +
        builder.set_auth_scheme_preference(config_bag.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>().cloned());
  179    184   
        builder.set_retry_config(config_bag.load::<::aws_smithy_types::retry::RetryConfig>().cloned());
  180    185   
        builder.set_timeout_config(config_bag.load::<::aws_smithy_types::timeout::TimeoutConfig>().cloned());
  181    186   
        builder.set_retry_partition(config_bag.load::<::aws_smithy_runtime::client::retries::RetryPartition>().cloned());
  182    187   
        builder.set_app_name(config_bag.load::<::aws_types::app_name::AppName>().cloned());
  183    188   
        builder.set_endpoint_url(config_bag.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()));
  184    189   
        builder.set_use_dual_stack(config_bag.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0));
  185    190   
        builder.set_use_fips(config_bag.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0));
  186    191   
        builder.set_region(config_bag.load::<crate::config::Region>().cloned());
  187    192   
        builder
  188    193   
    }
@@ -398,403 +457,519 @@
  418    423   
  419    424   
    /// Set the auth scheme resolver for the builder
  420    425   
    ///
  421    426   
    /// # Examples
  422    427   
    /// See an example for [`Self::auth_scheme_resolver`].
  423    428   
    pub fn set_auth_scheme_resolver(&mut self, auth_scheme_resolver: impl crate::config::auth::ResolveAuthScheme + 'static) -> &mut Self {
  424    429   
        self.runtime_components
  425    430   
            .set_auth_scheme_option_resolver(::std::option::Option::Some(auth_scheme_resolver.into_shared_resolver()));
  426    431   
        self
  427    432   
    }
         433  +
    /// Set the auth scheme preference for an auth scheme resolver
         434  +
    /// (typically the default auth scheme resolver).
         435  +
    ///
         436  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         437  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         438  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         439  +
    ///
         440  +
    /// The preference list is intended as a hint rather than a strict override.
         441  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         442  +
    ///
         443  +
    /// # Examples
         444  +
    ///
         445  +
    /// ```no_run
         446  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         447  +
    /// let config = aws_sdk_config::Config::builder()
         448  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         449  +
    ///     // ...
         450  +
    ///     .build();
         451  +
    /// let client = aws_sdk_config::Client::from_conf(config);
         452  +
    /// ```
         453  +
         454  +
    pub fn auth_scheme_preference(
         455  +
        mut self,
         456  +
        preference: impl ::std::convert::Into<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         457  +
    ) -> Self {
         458  +
        self.set_auth_scheme_preference(::std::option::Option::Some(preference.into()));
         459  +
        self
         460  +
    }
         461  +
         462  +
    /// Set the auth scheme preference for an auth scheme resolver
         463  +
    /// (typically the default auth scheme resolver).
         464  +
    ///
         465  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         466  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         467  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         468  +
    ///
         469  +
    /// The preference list is intended as a hint rather than a strict override.
         470  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         471  +
    ///
         472  +
    /// # Examples
         473  +
    ///
         474  +
    /// ```no_run
         475  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         476  +
    /// let config = aws_sdk_config::Config::builder()
         477  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         478  +
    ///     // ...
         479  +
    ///     .build();
         480  +
    /// let client = aws_sdk_config::Client::from_conf(config);
         481  +
    /// ```
         482  +
         483  +
    pub fn set_auth_scheme_preference(
         484  +
        &mut self,
         485  +
        preference: ::std::option::Option<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         486  +
    ) -> &mut Self {
         487  +
        self.config.store_or_unset(preference);
         488  +
        self
         489  +
    }
  428    490   
    /// Sets the endpoint resolver to use when making requests.
  429    491   
    ///
  430    492   
    ///
  431    493   
    /// When unset, the client will used a generated endpoint resolver based on the endpoint resolution
  432    494   
    /// rules for `aws_sdk_config`.
  433    495   
    ///
  434    496   
    ///
  435    497   
    /// Note: setting an endpoint resolver will replace any endpoint URL that has been set.
  436    498   
    /// This method accepts an endpoint resolver [specific to this service](crate::config::endpoint::ResolveEndpoint). If you want to
  437    499   
    /// provide a shared endpoint resolver, use [`Self::set_endpoint_resolver`].
@@ -1389,1451 +1448,1511 @@
 1409   1471   
            );
 1410   1472   
        }
 1411   1473   
        // resiliency
 1412   1474   
        builder.set_retry_config(input.retry_config().cloned());
 1413   1475   
        builder.set_timeout_config(input.timeout_config().cloned());
 1414   1476   
        builder.set_sleep_impl(input.sleep_impl());
 1415   1477   
 1416   1478   
        builder.set_http_client(input.http_client());
 1417   1479   
        builder.set_time_source(input.time_source());
 1418   1480   
        builder.set_behavior_version(input.behavior_version());
        1481  +
        builder.set_auth_scheme_preference(input.auth_scheme_preference().cloned());
 1419   1482   
        // setting `None` here removes the default
 1420   1483   
        if let Some(config) = input.stalled_stream_protection() {
 1421   1484   
            builder.set_stalled_stream_protection(Some(config));
 1422   1485   
        }
 1423   1486   
 1424   1487   
        if let Some(cache) = input.identity_cache() {
 1425   1488   
            builder.set_identity_cache(cache);
 1426   1489   
        }
 1427   1490   
        builder.set_app_name(input.app_name().cloned());
 1428   1491   

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

@@ -10,10 +138,138 @@
   30     30   
path = "../aws-smithy-http"
   31     31   
version = "0.62.1"
   32     32   
   33     33   
[dependencies.aws-smithy-json]
   34     34   
path = "../aws-smithy-json"
   35     35   
version = "0.61.4"
   36     36   
   37     37   
[dependencies.aws-smithy-runtime]
   38     38   
path = "../aws-smithy-runtime"
   39     39   
features = ["client"]
   40         -
version = "1.8.4"
          40  +
version = "1.8.5"
   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.8.3"
          45  +
version = "1.8.4"
   46     46   
   47     47   
[dependencies.aws-smithy-types]
   48     48   
path = "../aws-smithy-types"
   49     49   
version = "1.3.2"
   50     50   
   51     51   
[dependencies.aws-types]
   52     52   
path = "../aws-types"
   53         -
version = "1.3.7"
          53  +
version = "1.3.8"
   54     54   
   55     55   
[dependencies.bytes]
   56     56   
version = "1.4.0"
   57     57   
   58     58   
[dependencies.fastrand]
   59     59   
version = "2.0.0"
   60     60   
   61     61   
[dependencies.http]
   62     62   
version = "0.2.9"
   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.approx]
   70     70   
version = "0.5.1"
   71     71   
   72     72   
[dev-dependencies.aws-config]
   73     73   
path = "../aws-config"
   74         -
version = "1.8.2"
          74  +
version = "1.8.3"
   75     75   
   76     76   
[dev-dependencies.aws-credential-types]
   77     77   
path = "../aws-credential-types"
   78     78   
features = ["test-util"]
   79     79   
version = "1.2.3"
   80     80   
   81     81   
[dev-dependencies.aws-runtime]
   82     82   
path = "../aws-runtime"
   83     83   
features = ["test-util"]
   84     84   
version = "1.5.9"
   85     85   
   86     86   
[dev-dependencies.aws-smithy-async]
   87     87   
path = "../aws-smithy-async"
   88     88   
features = ["test-util"]
   89     89   
version = "1.2.5"
   90     90   
   91     91   
[dev-dependencies.aws-smithy-http-client]
   92     92   
path = "../aws-smithy-http-client"
   93     93   
features = ["test-util", "wire-mock"]
   94     94   
version = "1.0.6"
   95     95   
   96     96   
[dev-dependencies.aws-smithy-protocol-test]
   97     97   
path = "../aws-smithy-protocol-test"
   98     98   
version = "0.63.4"
   99     99   
  100    100   
[dev-dependencies.aws-smithy-runtime]
  101    101   
path = "../aws-smithy-runtime"
  102    102   
features = ["test-util"]
  103         -
version = "1.8.4"
         103  +
version = "1.8.5"
  104    104   
  105    105   
[dev-dependencies.aws-smithy-runtime-api]
  106    106   
path = "../aws-smithy-runtime-api"
  107    107   
features = ["test-util"]
  108         -
version = "1.8.3"
         108  +
version = "1.8.4"
  109    109   
  110    110   
[dev-dependencies.aws-smithy-types]
  111    111   
path = "../aws-smithy-types"
  112    112   
features = ["test-util"]
  113    113   
version = "1.3.2"
  114    114   
  115    115   
[dev-dependencies.criterion]
  116    116   
version = "0.5.0"
  117    117   
  118    118   
[dev-dependencies.futures-util]

tmp-codegen-diff/aws-sdk/sdk/dynamodb/src/config.rs

@@ -36,36 +95,99 @@
   56     56   
    }
   57     57   
    /// Return the auth schemes configured on this service config
   58     58   
    pub fn auth_schemes(&self) -> impl Iterator<Item = ::aws_smithy_runtime_api::client::auth::SharedAuthScheme> + '_ {
   59     59   
        self.runtime_components.auth_schemes()
   60     60   
    }
   61     61   
   62     62   
    /// Return the auth scheme resolver configured on this service config
   63     63   
    pub fn auth_scheme_resolver(&self) -> ::std::option::Option<::aws_smithy_runtime_api::client::auth::SharedAuthSchemeOptionResolver> {
   64     64   
        self.runtime_components.auth_scheme_option_resolver()
   65     65   
    }
          66  +
    /// Returns the configured auth scheme preference
          67  +
    pub fn auth_scheme_preference(&self) -> ::std::option::Option<&::aws_smithy_runtime_api::client::auth::AuthSchemePreference> {
          68  +
        self.config.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>()
          69  +
    }
   66     70   
    /// Returns the endpoint resolver.
   67     71   
    pub fn endpoint_resolver(&self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver {
   68     72   
        self.runtime_components.endpoint_resolver().expect("resolver defaulted if not set")
   69     73   
    }
   70     74   
    /// Return a reference to the retry configuration contained in this config, if any.
   71     75   
    pub fn retry_config(&self) -> ::std::option::Option<&::aws_smithy_types::retry::RetryConfig> {
   72     76   
        self.config.load::<::aws_smithy_types::retry::RetryConfig>()
   73     77   
    }
   74     78   
   75     79   
    /// Return a cloned shared async sleep implementation from this config, if any.
@@ -149,153 +208,213 @@
  169    173   
    ///
  170    174   
    pub fn new() -> Self {
  171    175   
        Self::default()
  172    176   
    }
  173    177   
    /// Constructs a config builder from the given `config_bag`, setting only fields stored in the config bag,
  174    178   
    /// but not those in runtime components.
  175    179   
    #[allow(unused)]
  176    180   
    pub(crate) fn from_config_bag(config_bag: &::aws_smithy_types::config_bag::ConfigBag) -> Self {
  177    181   
        let mut builder = Self::new();
  178    182   
        builder.set_stalled_stream_protection(config_bag.load::<crate::config::StalledStreamProtectionConfig>().cloned());
         183  +
        builder.set_auth_scheme_preference(config_bag.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>().cloned());
  179    184   
        builder.set_retry_config(config_bag.load::<::aws_smithy_types::retry::RetryConfig>().cloned());
  180    185   
        builder.set_timeout_config(config_bag.load::<::aws_smithy_types::timeout::TimeoutConfig>().cloned());
  181    186   
        builder.set_retry_partition(config_bag.load::<::aws_smithy_runtime::client::retries::RetryPartition>().cloned());
  182    187   
        builder.set_app_name(config_bag.load::<::aws_types::app_name::AppName>().cloned());
  183    188   
        builder.set_account_id_endpoint_mode(config_bag.load::<::aws_types::endpoint_config::AccountIdEndpointMode>().cloned());
  184    189   
        builder.set_endpoint_url(config_bag.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()));
  185    190   
        builder.set_use_dual_stack(config_bag.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0));
  186    191   
        builder.set_use_fips(config_bag.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0));
  187    192   
        builder.set_region(config_bag.load::<crate::config::Region>().cloned());
  188    193   
        builder
@@ -415,420 +474,536 @@
  435    440   
  436    441   
    /// Set the auth scheme resolver for the builder
  437    442   
    ///
  438    443   
    /// # Examples
  439    444   
    /// See an example for [`Self::auth_scheme_resolver`].
  440    445   
    pub fn set_auth_scheme_resolver(&mut self, auth_scheme_resolver: impl crate::config::auth::ResolveAuthScheme + 'static) -> &mut Self {
  441    446   
        self.runtime_components
  442    447   
            .set_auth_scheme_option_resolver(::std::option::Option::Some(auth_scheme_resolver.into_shared_resolver()));
  443    448   
        self
  444    449   
    }
         450  +
    /// Set the auth scheme preference for an auth scheme resolver
         451  +
    /// (typically the default auth scheme resolver).
         452  +
    ///
         453  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         454  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         455  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         456  +
    ///
         457  +
    /// The preference list is intended as a hint rather than a strict override.
         458  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         459  +
    ///
         460  +
    /// # Examples
         461  +
    ///
         462  +
    /// ```no_run
         463  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         464  +
    /// let config = aws_sdk_dynamodb::Config::builder()
         465  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         466  +
    ///     // ...
         467  +
    ///     .build();
         468  +
    /// let client = aws_sdk_dynamodb::Client::from_conf(config);
         469  +
    /// ```
         470  +
         471  +
    pub fn auth_scheme_preference(
         472  +
        mut self,
         473  +
        preference: impl ::std::convert::Into<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         474  +
    ) -> Self {
         475  +
        self.set_auth_scheme_preference(::std::option::Option::Some(preference.into()));
         476  +
        self
         477  +
    }
         478  +
         479  +
    /// Set the auth scheme preference for an auth scheme resolver
         480  +
    /// (typically the default auth scheme resolver).
         481  +
    ///
         482  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         483  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         484  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         485  +
    ///
         486  +
    /// The preference list is intended as a hint rather than a strict override.
         487  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         488  +
    ///
         489  +
    /// # Examples
         490  +
    ///
         491  +
    /// ```no_run
         492  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         493  +
    /// let config = aws_sdk_dynamodb::Config::builder()
         494  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         495  +
    ///     // ...
         496  +
    ///     .build();
         497  +
    /// let client = aws_sdk_dynamodb::Client::from_conf(config);
         498  +
    /// ```
         499  +
         500  +
    pub fn set_auth_scheme_preference(
         501  +
        &mut self,
         502  +
        preference: ::std::option::Option<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         503  +
    ) -> &mut Self {
         504  +
        self.config.store_or_unset(preference);
         505  +
        self
         506  +
    }
  445    507   
    /// Sets the endpoint resolver to use when making requests.
  446    508   
    ///
  447    509   
    ///
  448    510   
    /// When unset, the client will used a generated endpoint resolver based on the endpoint resolution
  449    511   
    /// rules for `aws_sdk_dynamodb`.
  450    512   
    ///
  451    513   
    ///
  452    514   
    /// Note: setting an endpoint resolver will replace any endpoint URL that has been set.
  453    515   
    /// This method accepts an endpoint resolver [specific to this service](crate::config::endpoint::ResolveEndpoint). If you want to
  454    516   
    /// provide a shared endpoint resolver, use [`Self::set_endpoint_resolver`].
@@ -1422,1484 +1481,1544 @@
 1442   1504   
        }
 1443   1505   
        builder.set_account_id_endpoint_mode(input.account_id_endpoint_mode().cloned());
 1444   1506   
        // resiliency
 1445   1507   
        builder.set_retry_config(input.retry_config().cloned());
 1446   1508   
        builder.set_timeout_config(input.timeout_config().cloned());
 1447   1509   
        builder.set_sleep_impl(input.sleep_impl());
 1448   1510   
 1449   1511   
        builder.set_http_client(input.http_client());
 1450   1512   
        builder.set_time_source(input.time_source());
 1451   1513   
        builder.set_behavior_version(input.behavior_version());
        1514  +
        builder.set_auth_scheme_preference(input.auth_scheme_preference().cloned());
 1452   1515   
        // setting `None` here removes the default
 1453   1516   
        if let Some(config) = input.stalled_stream_protection() {
 1454   1517   
            builder.set_stalled_stream_protection(Some(config));
 1455   1518   
        }
 1456   1519   
 1457   1520   
        if let Some(cache) = input.identity_cache() {
 1458   1521   
            builder.set_identity_cache(cache);
 1459   1522   
        }
 1460   1523   
        builder.set_app_name(input.app_name().cloned());
 1461   1524   

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

@@ -14,14 +140,140 @@
   34     34   
path = "../aws-smithy-json"
   35     35   
version = "0.61.4"
   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.8.4"
          44  +
version = "1.8.5"
   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.8.3"
          49  +
version = "1.8.4"
   50     50   
   51     51   
[dependencies.aws-smithy-types]
   52     52   
path = "../aws-smithy-types"
   53     53   
version = "1.3.2"
   54     54   
   55     55   
[dependencies.aws-smithy-xml]
   56     56   
path = "../aws-smithy-xml"
   57     57   
version = "0.60.10"
   58     58   
   59     59   
[dependencies.aws-types]
   60     60   
path = "../aws-types"
   61         -
version = "1.3.7"
          61  +
version = "1.3.8"
   62     62   
   63     63   
[dependencies.fastrand]
   64     64   
version = "2.0.0"
   65     65   
   66     66   
[dependencies.http]
   67     67   
version = "0.2.9"
   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.8.2"
          76  +
version = "1.8.3"
   77     77   
   78     78   
[dev-dependencies.aws-credential-types]
   79     79   
path = "../aws-credential-types"
   80     80   
features = ["test-util"]
   81     81   
version = "1.2.3"
   82     82   
   83     83   
[dev-dependencies.aws-runtime]
   84     84   
path = "../aws-runtime"
   85     85   
features = ["test-util"]
   86     86   
version = "1.5.9"
   87     87   
   88     88   
[dev-dependencies.aws-smithy-async]
   89     89   
path = "../aws-smithy-async"
   90     90   
features = ["test-util"]
   91     91   
version = "1.2.5"
   92     92   
   93     93   
[dev-dependencies.aws-smithy-http-client]
   94     94   
path = "../aws-smithy-http-client"
   95     95   
features = ["test-util", "wire-mock"]
   96     96   
version = "1.0.6"
   97     97   
   98     98   
[dev-dependencies.aws-smithy-protocol-test]
   99     99   
path = "../aws-smithy-protocol-test"
  100    100   
version = "0.63.4"
  101    101   
  102    102   
[dev-dependencies.aws-smithy-runtime]
  103    103   
path = "../aws-smithy-runtime"
  104    104   
features = ["test-util"]
  105         -
version = "1.8.4"
         105  +
version = "1.8.5"
  106    106   
  107    107   
[dev-dependencies.aws-smithy-runtime-api]
  108    108   
path = "../aws-smithy-runtime-api"
  109    109   
features = ["test-util"]
  110         -
version = "1.8.3"
         110  +
version = "1.8.4"
  111    111   
  112    112   
[dev-dependencies.aws-smithy-types]
  113    113   
path = "../aws-smithy-types"
  114    114   
features = ["test-util"]
  115    115   
version = "1.3.2"
  116    116   
  117    117   
[dev-dependencies.futures-util]
  118    118   
version = "0.3.25"
  119    119   
features = ["alloc"]
  120    120   
default-features = false

tmp-codegen-diff/aws-sdk/sdk/ec2/src/config.rs

@@ -36,36 +95,99 @@
   56     56   
    }
   57     57   
    /// Return the auth schemes configured on this service config
   58     58   
    pub fn auth_schemes(&self) -> impl Iterator<Item = ::aws_smithy_runtime_api::client::auth::SharedAuthScheme> + '_ {
   59     59   
        self.runtime_components.auth_schemes()
   60     60   
    }
   61     61   
   62     62   
    /// Return the auth scheme resolver configured on this service config
   63     63   
    pub fn auth_scheme_resolver(&self) -> ::std::option::Option<::aws_smithy_runtime_api::client::auth::SharedAuthSchemeOptionResolver> {
   64     64   
        self.runtime_components.auth_scheme_option_resolver()
   65     65   
    }
          66  +
    /// Returns the configured auth scheme preference
          67  +
    pub fn auth_scheme_preference(&self) -> ::std::option::Option<&::aws_smithy_runtime_api::client::auth::AuthSchemePreference> {
          68  +
        self.config.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>()
          69  +
    }
   66     70   
    /// Returns the endpoint resolver.
   67     71   
    pub fn endpoint_resolver(&self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver {
   68     72   
        self.runtime_components.endpoint_resolver().expect("resolver defaulted if not set")
   69     73   
    }
   70     74   
    /// Return a reference to the retry configuration contained in this config, if any.
   71     75   
    pub fn retry_config(&self) -> ::std::option::Option<&::aws_smithy_types::retry::RetryConfig> {
   72     76   
        self.config.load::<::aws_smithy_types::retry::RetryConfig>()
   73     77   
    }
   74     78   
   75     79   
    /// Return a cloned shared async sleep implementation from this config, if any.
@@ -149,153 +208,213 @@
  169    173   
    ///
  170    174   
    pub fn new() -> Self {
  171    175   
        Self::default()
  172    176   
    }
  173    177   
    /// Constructs a config builder from the given `config_bag`, setting only fields stored in the config bag,
  174    178   
    /// but not those in runtime components.
  175    179   
    #[allow(unused)]
  176    180   
    pub(crate) fn from_config_bag(config_bag: &::aws_smithy_types::config_bag::ConfigBag) -> Self {
  177    181   
        let mut builder = Self::new();
  178    182   
        builder.set_stalled_stream_protection(config_bag.load::<crate::config::StalledStreamProtectionConfig>().cloned());
         183  +
        builder.set_auth_scheme_preference(config_bag.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>().cloned());
  179    184   
        builder.set_retry_config(config_bag.load::<::aws_smithy_types::retry::RetryConfig>().cloned());
  180    185   
        builder.set_timeout_config(config_bag.load::<::aws_smithy_types::timeout::TimeoutConfig>().cloned());
  181    186   
        builder.set_retry_partition(config_bag.load::<::aws_smithy_runtime::client::retries::RetryPartition>().cloned());
  182    187   
        builder.set_app_name(config_bag.load::<::aws_types::app_name::AppName>().cloned());
  183    188   
        builder.set_endpoint_url(config_bag.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()));
  184    189   
        builder.set_use_dual_stack(config_bag.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0));
  185    190   
        builder.set_use_fips(config_bag.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0));
  186    191   
        builder.set_region(config_bag.load::<crate::config::Region>().cloned());
  187    192   
        builder
  188    193   
    }
@@ -414,419 +473,535 @@
  434    439   
  435    440   
    /// Set the auth scheme resolver for the builder
  436    441   
    ///
  437    442   
    /// # Examples
  438    443   
    /// See an example for [`Self::auth_scheme_resolver`].
  439    444   
    pub fn set_auth_scheme_resolver(&mut self, auth_scheme_resolver: impl crate::config::auth::ResolveAuthScheme + 'static) -> &mut Self {
  440    445   
        self.runtime_components
  441    446   
            .set_auth_scheme_option_resolver(::std::option::Option::Some(auth_scheme_resolver.into_shared_resolver()));
  442    447   
        self
  443    448   
    }
         449  +
    /// Set the auth scheme preference for an auth scheme resolver
         450  +
    /// (typically the default auth scheme resolver).
         451  +
    ///
         452  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         453  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         454  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         455  +
    ///
         456  +
    /// The preference list is intended as a hint rather than a strict override.
         457  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         458  +
    ///
         459  +
    /// # Examples
         460  +
    ///
         461  +
    /// ```no_run
         462  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         463  +
    /// let config = aws_sdk_ec2::Config::builder()
         464  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         465  +
    ///     // ...
         466  +
    ///     .build();
         467  +
    /// let client = aws_sdk_ec2::Client::from_conf(config);
         468  +
    /// ```
         469  +
         470  +
    pub fn auth_scheme_preference(
         471  +
        mut self,
         472  +
        preference: impl ::std::convert::Into<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         473  +
    ) -> Self {
         474  +
        self.set_auth_scheme_preference(::std::option::Option::Some(preference.into()));
         475  +
        self
         476  +
    }
         477  +
         478  +
    /// Set the auth scheme preference for an auth scheme resolver
         479  +
    /// (typically the default auth scheme resolver).
         480  +
    ///
         481  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         482  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         483  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         484  +
    ///
         485  +
    /// The preference list is intended as a hint rather than a strict override.
         486  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         487  +
    ///
         488  +
    /// # Examples
         489  +
    ///
         490  +
    /// ```no_run
         491  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         492  +
    /// let config = aws_sdk_ec2::Config::builder()
         493  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         494  +
    ///     // ...
         495  +
    ///     .build();
         496  +
    /// let client = aws_sdk_ec2::Client::from_conf(config);
         497  +
    /// ```
         498  +
         499  +
    pub fn set_auth_scheme_preference(
         500  +
        &mut self,
         501  +
        preference: ::std::option::Option<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         502  +
    ) -> &mut Self {
         503  +
        self.config.store_or_unset(preference);
         504  +
        self
         505  +
    }
  444    506   
    /// Sets the endpoint resolver to use when making requests.
  445    507   
    ///
  446    508   
    ///
  447    509   
    /// When unset, the client will used a generated endpoint resolver based on the endpoint resolution
  448    510   
    /// rules for `aws_sdk_ec2`.
  449    511   
    ///
  450    512   
    ///
  451    513   
    /// Note: setting an endpoint resolver will replace any endpoint URL that has been set.
  452    514   
    /// This method accepts an endpoint resolver [specific to this service](crate::config::endpoint::ResolveEndpoint). If you want to
  453    515   
    /// provide a shared endpoint resolver, use [`Self::set_endpoint_resolver`].
@@ -1407,1469 +1466,1529 @@
 1427   1489   
            );
 1428   1490   
        }
 1429   1491   
        // resiliency
 1430   1492   
        builder.set_retry_config(input.retry_config().cloned());
 1431   1493   
        builder.set_timeout_config(input.timeout_config().cloned());
 1432   1494   
        builder.set_sleep_impl(input.sleep_impl());
 1433   1495   
 1434   1496   
        builder.set_http_client(input.http_client());
 1435   1497   
        builder.set_time_source(input.time_source());
 1436   1498   
        builder.set_behavior_version(input.behavior_version());
        1499  +
        builder.set_auth_scheme_preference(input.auth_scheme_preference().cloned());
 1437   1500   
        // setting `None` here removes the default
 1438   1501   
        if let Some(config) = input.stalled_stream_protection() {
 1439   1502   
            builder.set_stalled_stream_protection(Some(config));
 1440   1503   
        }
 1441   1504   
 1442   1505   
        if let Some(cache) = input.identity_cache() {
 1443   1506   
            builder.set_identity_cache(cache);
 1444   1507   
        }
 1445   1508   
        builder.set_app_name(input.app_name().cloned());
 1446   1509   

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

@@ -10,10 +89,89 @@
   30     30   
path = "../aws-smithy-http"
   31     31   
version = "0.62.1"
   32     32   
   33     33   
[dependencies.aws-smithy-json]
   34     34   
path = "../aws-smithy-json"
   35     35   
version = "0.61.4"
   36     36   
   37     37   
[dependencies.aws-smithy-runtime]
   38     38   
path = "../aws-smithy-runtime"
   39     39   
features = ["client"]
   40         -
version = "1.8.4"
          40  +
version = "1.8.5"
   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.8.3"
          45  +
version = "1.8.4"
   46     46   
   47     47   
[dependencies.aws-smithy-types]
   48     48   
path = "../aws-smithy-types"
   49     49   
version = "1.3.2"
   50     50   
   51     51   
[dependencies.aws-types]
   52     52   
path = "../aws-types"
   53         -
version = "1.3.7"
          53  +
version = "1.3.8"
   54     54   
   55     55   
[dependencies.bytes]
   56     56   
version = "1.4.0"
   57     57   
   58     58   
[dependencies.fastrand]
   59     59   
version = "2.0.0"
   60     60   
   61     61   
[dependencies.http]
   62     62   
version = "0.2.9"
   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.8.2"
          71  +
version = "1.8.3"
   72     72   
   73     73   
[dev-dependencies.aws-credential-types]
   74     74   
path = "../aws-credential-types"
   75     75   
features = ["test-util"]
   76     76   
version = "1.2.3"
   77     77   
   78     78   
[dev-dependencies.tokio]
   79     79   
version = "1.23.1"
   80     80   
features = ["macros", "test-util", "rt-multi-thread"]
   81     81   

tmp-codegen-diff/aws-sdk/sdk/ecs/src/config.rs

@@ -36,36 +95,99 @@
   56     56   
    }
   57     57   
    /// Return the auth schemes configured on this service config
   58     58   
    pub fn auth_schemes(&self) -> impl Iterator<Item = ::aws_smithy_runtime_api::client::auth::SharedAuthScheme> + '_ {
   59     59   
        self.runtime_components.auth_schemes()
   60     60   
    }
   61     61   
   62     62   
    /// Return the auth scheme resolver configured on this service config
   63     63   
    pub fn auth_scheme_resolver(&self) -> ::std::option::Option<::aws_smithy_runtime_api::client::auth::SharedAuthSchemeOptionResolver> {
   64     64   
        self.runtime_components.auth_scheme_option_resolver()
   65     65   
    }
          66  +
    /// Returns the configured auth scheme preference
          67  +
    pub fn auth_scheme_preference(&self) -> ::std::option::Option<&::aws_smithy_runtime_api::client::auth::AuthSchemePreference> {
          68  +
        self.config.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>()
          69  +
    }
   66     70   
    /// Returns the endpoint resolver.
   67     71   
    pub fn endpoint_resolver(&self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver {
   68     72   
        self.runtime_components.endpoint_resolver().expect("resolver defaulted if not set")
   69     73   
    }
   70     74   
    /// Return a reference to the retry configuration contained in this config, if any.
   71     75   
    pub fn retry_config(&self) -> ::std::option::Option<&::aws_smithy_types::retry::RetryConfig> {
   72     76   
        self.config.load::<::aws_smithy_types::retry::RetryConfig>()
   73     77   
    }
   74     78   
   75     79   
    /// Return a cloned shared async sleep implementation from this config, if any.
@@ -149,153 +208,213 @@
  169    173   
    ///
  170    174   
    pub fn new() -> Self {
  171    175   
        Self::default()
  172    176   
    }
  173    177   
    /// Constructs a config builder from the given `config_bag`, setting only fields stored in the config bag,
  174    178   
    /// but not those in runtime components.
  175    179   
    #[allow(unused)]
  176    180   
    pub(crate) fn from_config_bag(config_bag: &::aws_smithy_types::config_bag::ConfigBag) -> Self {
  177    181   
        let mut builder = Self::new();
  178    182   
        builder.set_stalled_stream_protection(config_bag.load::<crate::config::StalledStreamProtectionConfig>().cloned());
         183  +
        builder.set_auth_scheme_preference(config_bag.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>().cloned());
  179    184   
        builder.set_retry_config(config_bag.load::<::aws_smithy_types::retry::RetryConfig>().cloned());
  180    185   
        builder.set_timeout_config(config_bag.load::<::aws_smithy_types::timeout::TimeoutConfig>().cloned());
  181    186   
        builder.set_retry_partition(config_bag.load::<::aws_smithy_runtime::client::retries::RetryPartition>().cloned());
  182    187   
        builder.set_app_name(config_bag.load::<::aws_types::app_name::AppName>().cloned());
  183    188   
        builder.set_endpoint_url(config_bag.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()));
  184    189   
        builder.set_use_dual_stack(config_bag.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0));
  185    190   
        builder.set_use_fips(config_bag.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0));
  186    191   
        builder.set_region(config_bag.load::<crate::config::Region>().cloned());
  187    192   
        builder
  188    193   
    }
@@ -414,419 +473,535 @@
  434    439   
  435    440   
    /// Set the auth scheme resolver for the builder
  436    441   
    ///
  437    442   
    /// # Examples
  438    443   
    /// See an example for [`Self::auth_scheme_resolver`].
  439    444   
    pub fn set_auth_scheme_resolver(&mut self, auth_scheme_resolver: impl crate::config::auth::ResolveAuthScheme + 'static) -> &mut Self {
  440    445   
        self.runtime_components
  441    446   
            .set_auth_scheme_option_resolver(::std::option::Option::Some(auth_scheme_resolver.into_shared_resolver()));
  442    447   
        self
  443    448   
    }
         449  +
    /// Set the auth scheme preference for an auth scheme resolver
         450  +
    /// (typically the default auth scheme resolver).
         451  +
    ///
         452  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         453  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         454  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         455  +
    ///
         456  +
    /// The preference list is intended as a hint rather than a strict override.
         457  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         458  +
    ///
         459  +
    /// # Examples
         460  +
    ///
         461  +
    /// ```no_run
         462  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         463  +
    /// let config = aws_sdk_ecs::Config::builder()
         464  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         465  +
    ///     // ...
         466  +
    ///     .build();
         467  +
    /// let client = aws_sdk_ecs::Client::from_conf(config);
         468  +
    /// ```
         469  +
         470  +
    pub fn auth_scheme_preference(
         471  +
        mut self,
         472  +
        preference: impl ::std::convert::Into<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         473  +
    ) -> Self {
         474  +
        self.set_auth_scheme_preference(::std::option::Option::Some(preference.into()));
         475  +
        self
         476  +
    }
         477  +
         478  +
    /// Set the auth scheme preference for an auth scheme resolver
         479  +
    /// (typically the default auth scheme resolver).
         480  +
    ///
         481  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         482  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         483  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         484  +
    ///
         485  +
    /// The preference list is intended as a hint rather than a strict override.
         486  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         487  +
    ///
         488  +
    /// # Examples
         489  +
    ///
         490  +
    /// ```no_run
         491  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         492  +
    /// let config = aws_sdk_ecs::Config::builder()
         493  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         494  +
    ///     // ...
         495  +
    ///     .build();
         496  +
    /// let client = aws_sdk_ecs::Client::from_conf(config);
         497  +
    /// ```
         498  +
         499  +
    pub fn set_auth_scheme_preference(
         500  +
        &mut self,
         501  +
        preference: ::std::option::Option<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         502  +
    ) -> &mut Self {
         503  +
        self.config.store_or_unset(preference);
         504  +
        self
         505  +
    }
  444    506   
    /// Sets the endpoint resolver to use when making requests.
  445    507   
    ///
  446    508   
    ///
  447    509   
    /// When unset, the client will used a generated endpoint resolver based on the endpoint resolution
  448    510   
    /// rules for `aws_sdk_ecs`.
  449    511   
    ///
  450    512   
    ///
  451    513   
    /// Note: setting an endpoint resolver will replace any endpoint URL that has been set.
  452    514   
    /// This method accepts an endpoint resolver [specific to this service](crate::config::endpoint::ResolveEndpoint). If you want to
  453    515   
    /// provide a shared endpoint resolver, use [`Self::set_endpoint_resolver`].
@@ -1407,1469 +1466,1529 @@
 1427   1489   
            );
 1428   1490   
        }
 1429   1491   
        // resiliency
 1430   1492   
        builder.set_retry_config(input.retry_config().cloned());
 1431   1493   
        builder.set_timeout_config(input.timeout_config().cloned());
 1432   1494   
        builder.set_sleep_impl(input.sleep_impl());
 1433   1495   
 1434   1496   
        builder.set_http_client(input.http_client());
 1435   1497   
        builder.set_time_source(input.time_source());
 1436   1498   
        builder.set_behavior_version(input.behavior_version());
        1499  +
        builder.set_auth_scheme_preference(input.auth_scheme_preference().cloned());
 1437   1500   
        // setting `None` here removes the default
 1438   1501   
        if let Some(config) = input.stalled_stream_protection() {
 1439   1502   
            builder.set_stalled_stream_protection(Some(config));
 1440   1503   
        }
 1441   1504   
 1442   1505   
        if let Some(cache) = input.identity_cache() {
 1443   1506   
            builder.set_identity_cache(cache);
 1444   1507   
        }
 1445   1508   
        builder.set_app_name(input.app_name().cloned());
 1446   1509   

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

@@ -14,14 +149,149 @@
   34     34   
path = "../aws-smithy-http"
   35     35   
version = "0.62.1"
   36     36   
   37     37   
[dependencies.aws-smithy-json]
   38     38   
path = "../aws-smithy-json"
   39     39   
version = "0.61.4"
   40     40   
   41     41   
[dependencies.aws-smithy-runtime]
   42     42   
path = "../aws-smithy-runtime"
   43     43   
features = ["client"]
   44         -
version = "1.8.4"
          44  +
version = "1.8.5"
   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.8.3"
          49  +
version = "1.8.4"
   50     50   
   51     51   
[dependencies.aws-smithy-types]
   52     52   
path = "../aws-smithy-types"
   53     53   
version = "1.3.2"
   54     54   
   55     55   
[dependencies.aws-types]
   56     56   
path = "../aws-types"
   57         -
version = "1.3.7"
          57  +
version = "1.3.8"
   58     58   
   59     59   
[dependencies.bytes]
   60     60   
version = "1.4.0"
   61     61   
   62     62   
[dependencies.fastrand]
   63     63   
version = "2.0.0"
   64     64   
   65     65   
[dependencies.hex]
   66     66   
version = "0.4.3"
   67     67   
   68     68   
[dependencies.http]
   69     69   
version = "0.2.9"
   70     70   
   71     71   
[dependencies.http-1x]
   72     72   
version = "1"
   73     73   
package = "http"
   74     74   
   75     75   
[dependencies.regex-lite]
   76     76   
version = "0.1.5"
   77     77   
   78     78   
[dependencies.ring]
   79     79   
version = "0.17.5"
   80     80   
   81     81   
[dependencies.tracing]
   82     82   
version = "0.1"
   83     83   
[dev-dependencies.aws-config]
   84     84   
path = "../aws-config"
   85         -
version = "1.8.2"
          85  +
version = "1.8.3"
   86     86   
   87     87   
[dev-dependencies.aws-credential-types]
   88     88   
path = "../aws-credential-types"
   89     89   
features = ["test-util"]
   90     90   
version = "1.2.3"
   91     91   
   92     92   
[dev-dependencies.aws-runtime]
   93     93   
path = "../aws-runtime"
   94     94   
features = ["test-util"]
   95     95   
version = "1.5.9"
   96     96   
   97     97   
[dev-dependencies.aws-smithy-async]
   98     98   
path = "../aws-smithy-async"
   99     99   
features = ["test-util"]
  100    100   
version = "1.2.5"
  101    101   
  102    102   
[dev-dependencies.aws-smithy-http-client]
  103    103   
path = "../aws-smithy-http-client"
  104    104   
features = ["test-util", "wire-mock"]
  105    105   
version = "1.0.6"
  106    106   
  107    107   
[dev-dependencies.aws-smithy-protocol-test]
  108    108   
path = "../aws-smithy-protocol-test"
  109    109   
version = "0.63.4"
  110    110   
  111    111   
[dev-dependencies.aws-smithy-runtime]
  112    112   
path = "../aws-smithy-runtime"
  113    113   
features = ["test-util"]
  114         -
version = "1.8.4"
         114  +
version = "1.8.5"
  115    115   
  116    116   
[dev-dependencies.aws-smithy-runtime-api]
  117    117   
path = "../aws-smithy-runtime-api"
  118    118   
features = ["test-util"]
  119         -
version = "1.8.3"
         119  +
version = "1.8.4"
  120    120   
  121    121   
[dev-dependencies.aws-smithy-types]
  122    122   
path = "../aws-smithy-types"
  123    123   
features = ["test-util"]
  124    124   
version = "1.3.2"
  125    125   
  126    126   
[dev-dependencies.futures-util]
  127    127   
version = "0.3.25"
  128    128   
features = ["alloc"]
  129    129   
default-features = false

tmp-codegen-diff/aws-sdk/sdk/glacier/src/config.rs

@@ -36,36 +95,99 @@
   56     56   
    }
   57     57   
    /// Return the auth schemes configured on this service config
   58     58   
    pub fn auth_schemes(&self) -> impl Iterator<Item = ::aws_smithy_runtime_api::client::auth::SharedAuthScheme> + '_ {
   59     59   
        self.runtime_components.auth_schemes()
   60     60   
    }
   61     61   
   62     62   
    /// Return the auth scheme resolver configured on this service config
   63     63   
    pub fn auth_scheme_resolver(&self) -> ::std::option::Option<::aws_smithy_runtime_api::client::auth::SharedAuthSchemeOptionResolver> {
   64     64   
        self.runtime_components.auth_scheme_option_resolver()
   65     65   
    }
          66  +
    /// Returns the configured auth scheme preference
          67  +
    pub fn auth_scheme_preference(&self) -> ::std::option::Option<&::aws_smithy_runtime_api::client::auth::AuthSchemePreference> {
          68  +
        self.config.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>()
          69  +
    }
   66     70   
    /// Returns the endpoint resolver.
   67     71   
    pub fn endpoint_resolver(&self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver {
   68     72   
        self.runtime_components.endpoint_resolver().expect("resolver defaulted if not set")
   69     73   
    }
   70     74   
    /// Return a reference to the retry configuration contained in this config, if any.
   71     75   
    pub fn retry_config(&self) -> ::std::option::Option<&::aws_smithy_types::retry::RetryConfig> {
   72     76   
        self.config.load::<::aws_smithy_types::retry::RetryConfig>()
   73     77   
    }
   74     78   
   75     79   
    /// Return a cloned shared async sleep implementation from this config, if any.
@@ -149,153 +208,213 @@
  169    173   
    ///
  170    174   
    pub fn new() -> Self {
  171    175   
        Self::default()
  172    176   
    }
  173    177   
    /// Constructs a config builder from the given `config_bag`, setting only fields stored in the config bag,
  174    178   
    /// but not those in runtime components.
  175    179   
    #[allow(unused)]
  176    180   
    pub(crate) fn from_config_bag(config_bag: &::aws_smithy_types::config_bag::ConfigBag) -> Self {
  177    181   
        let mut builder = Self::new();
  178    182   
        builder.set_stalled_stream_protection(config_bag.load::<crate::config::StalledStreamProtectionConfig>().cloned());
         183  +
        builder.set_auth_scheme_preference(config_bag.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>().cloned());
  179    184   
        builder.set_retry_config(config_bag.load::<::aws_smithy_types::retry::RetryConfig>().cloned());
  180    185   
        builder.set_timeout_config(config_bag.load::<::aws_smithy_types::timeout::TimeoutConfig>().cloned());
  181    186   
        builder.set_retry_partition(config_bag.load::<::aws_smithy_runtime::client::retries::RetryPartition>().cloned());
  182    187   
        builder.set_app_name(config_bag.load::<::aws_types::app_name::AppName>().cloned());
  183    188   
        builder.set_endpoint_url(config_bag.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()));
  184    189   
        builder.set_use_dual_stack(config_bag.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0));
  185    190   
        builder.set_use_fips(config_bag.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0));
  186    191   
        builder.set_region(config_bag.load::<crate::config::Region>().cloned());
  187    192   
        builder
  188    193   
    }
@@ -398,403 +457,519 @@
  418    423   
  419    424   
    /// Set the auth scheme resolver for the builder
  420    425   
    ///
  421    426   
    /// # Examples
  422    427   
    /// See an example for [`Self::auth_scheme_resolver`].
  423    428   
    pub fn set_auth_scheme_resolver(&mut self, auth_scheme_resolver: impl crate::config::auth::ResolveAuthScheme + 'static) -> &mut Self {
  424    429   
        self.runtime_components
  425    430   
            .set_auth_scheme_option_resolver(::std::option::Option::Some(auth_scheme_resolver.into_shared_resolver()));
  426    431   
        self
  427    432   
    }
         433  +
    /// Set the auth scheme preference for an auth scheme resolver
         434  +
    /// (typically the default auth scheme resolver).
         435  +
    ///
         436  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         437  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         438  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         439  +
    ///
         440  +
    /// The preference list is intended as a hint rather than a strict override.
         441  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         442  +
    ///
         443  +
    /// # Examples
         444  +
    ///
         445  +
    /// ```no_run
         446  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         447  +
    /// let config = aws_sdk_glacier::Config::builder()
         448  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         449  +
    ///     // ...
         450  +
    ///     .build();
         451  +
    /// let client = aws_sdk_glacier::Client::from_conf(config);
         452  +
    /// ```
         453  +
         454  +
    pub fn auth_scheme_preference(
         455  +
        mut self,
         456  +
        preference: impl ::std::convert::Into<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         457  +
    ) -> Self {
         458  +
        self.set_auth_scheme_preference(::std::option::Option::Some(preference.into()));
         459  +
        self
         460  +
    }
         461  +
         462  +
    /// Set the auth scheme preference for an auth scheme resolver
         463  +
    /// (typically the default auth scheme resolver).
         464  +
    ///
         465  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         466  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         467  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         468  +
    ///
         469  +
    /// The preference list is intended as a hint rather than a strict override.
         470  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         471  +
    ///
         472  +
    /// # Examples
         473  +
    ///
         474  +
    /// ```no_run
         475  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         476  +
    /// let config = aws_sdk_glacier::Config::builder()
         477  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         478  +
    ///     // ...
         479  +
    ///     .build();
         480  +
    /// let client = aws_sdk_glacier::Client::from_conf(config);
         481  +
    /// ```
         482  +
         483  +
    pub fn set_auth_scheme_preference(
         484  +
        &mut self,
         485  +
        preference: ::std::option::Option<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         486  +
    ) -> &mut Self {
         487  +
        self.config.store_or_unset(preference);
         488  +
        self
         489  +
    }
  428    490   
    /// Sets the endpoint resolver to use when making requests.
  429    491   
    ///
  430    492   
    ///
  431    493   
    /// When unset, the client will used a generated endpoint resolver based on the endpoint resolution
  432    494   
    /// rules for `aws_sdk_glacier`.
  433    495   
    ///
  434    496   
    ///
  435    497   
    /// Note: setting an endpoint resolver will replace any endpoint URL that has been set.
  436    498   
    /// This method accepts an endpoint resolver [specific to this service](crate::config::endpoint::ResolveEndpoint). If you want to
  437    499   
    /// provide a shared endpoint resolver, use [`Self::set_endpoint_resolver`].
@@ -1390,1452 +1449,1512 @@
 1410   1472   
            );
 1411   1473   
        }
 1412   1474   
        // resiliency
 1413   1475   
        builder.set_retry_config(input.retry_config().cloned());
 1414   1476   
        builder.set_timeout_config(input.timeout_config().cloned());
 1415   1477   
        builder.set_sleep_impl(input.sleep_impl());
 1416   1478   
 1417   1479   
        builder.set_http_client(input.http_client());
 1418   1480   
        builder.set_time_source(input.time_source());
 1419   1481   
        builder.set_behavior_version(input.behavior_version());
        1482  +
        builder.set_auth_scheme_preference(input.auth_scheme_preference().cloned());
 1420   1483   
        // setting `None` here removes the default
 1421   1484   
        if let Some(config) = input.stalled_stream_protection() {
 1422   1485   
            builder.set_stalled_stream_protection(Some(config));
 1423   1486   
        }
 1424   1487   
 1425   1488   
        if let Some(cache) = input.identity_cache() {
 1426   1489   
            builder.set_identity_cache(cache);
 1427   1490   
        }
 1428   1491   
        builder.set_app_name(input.app_name().cloned());
 1429   1492   

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

@@ -14,14 +140,140 @@
   34     34   
path = "../aws-smithy-json"
   35     35   
version = "0.61.4"
   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.8.4"
          44  +
version = "1.8.5"
   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.8.3"
          49  +
version = "1.8.4"
   50     50   
   51     51   
[dependencies.aws-smithy-types]
   52     52   
path = "../aws-smithy-types"
   53     53   
version = "1.3.2"
   54     54   
   55     55   
[dependencies.aws-smithy-xml]
   56     56   
path = "../aws-smithy-xml"
   57     57   
version = "0.60.10"
   58     58   
   59     59   
[dependencies.aws-types]
   60     60   
path = "../aws-types"
   61         -
version = "1.3.7"
          61  +
version = "1.3.8"
   62     62   
   63     63   
[dependencies.fastrand]
   64     64   
version = "2.0.0"
   65     65   
   66     66   
[dependencies.http]
   67     67   
version = "0.2.9"
   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.8.2"
          76  +
version = "1.8.3"
   77     77   
   78     78   
[dev-dependencies.aws-credential-types]
   79     79   
path = "../aws-credential-types"
   80     80   
features = ["test-util"]
   81     81   
version = "1.2.3"
   82     82   
   83     83   
[dev-dependencies.aws-runtime]
   84     84   
path = "../aws-runtime"
   85     85   
features = ["test-util"]
   86     86   
version = "1.5.9"
   87     87   
   88     88   
[dev-dependencies.aws-smithy-async]
   89     89   
path = "../aws-smithy-async"
   90     90   
features = ["test-util"]
   91     91   
version = "1.2.5"
   92     92   
   93     93   
[dev-dependencies.aws-smithy-http-client]
   94     94   
path = "../aws-smithy-http-client"
   95     95   
features = ["test-util", "wire-mock"]
   96     96   
version = "1.0.6"
   97     97   
   98     98   
[dev-dependencies.aws-smithy-protocol-test]
   99     99   
path = "../aws-smithy-protocol-test"
  100    100   
version = "0.63.4"
  101    101   
  102    102   
[dev-dependencies.aws-smithy-runtime]
  103    103   
path = "../aws-smithy-runtime"
  104    104   
features = ["test-util"]
  105         -
version = "1.8.4"
         105  +
version = "1.8.5"
  106    106   
  107    107   
[dev-dependencies.aws-smithy-runtime-api]
  108    108   
path = "../aws-smithy-runtime-api"
  109    109   
features = ["test-util"]
  110         -
version = "1.8.3"
         110  +
version = "1.8.4"
  111    111   
  112    112   
[dev-dependencies.aws-smithy-types]
  113    113   
path = "../aws-smithy-types"
  114    114   
features = ["test-util"]
  115    115   
version = "1.3.2"
  116    116   
  117    117   
[dev-dependencies.futures-util]
  118    118   
version = "0.3.25"
  119    119   
features = ["alloc"]
  120    120   
default-features = false

tmp-codegen-diff/aws-sdk/sdk/iam/src/config.rs

@@ -36,36 +95,99 @@
   56     56   
    }
   57     57   
    /// Return the auth schemes configured on this service config
   58     58   
    pub fn auth_schemes(&self) -> impl Iterator<Item = ::aws_smithy_runtime_api::client::auth::SharedAuthScheme> + '_ {
   59     59   
        self.runtime_components.auth_schemes()
   60     60   
    }
   61     61   
   62     62   
    /// Return the auth scheme resolver configured on this service config
   63     63   
    pub fn auth_scheme_resolver(&self) -> ::std::option::Option<::aws_smithy_runtime_api::client::auth::SharedAuthSchemeOptionResolver> {
   64     64   
        self.runtime_components.auth_scheme_option_resolver()
   65     65   
    }
          66  +
    /// Returns the configured auth scheme preference
          67  +
    pub fn auth_scheme_preference(&self) -> ::std::option::Option<&::aws_smithy_runtime_api::client::auth::AuthSchemePreference> {
          68  +
        self.config.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>()
          69  +
    }
   66     70   
    /// Returns the endpoint resolver.
   67     71   
    pub fn endpoint_resolver(&self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver {
   68     72   
        self.runtime_components.endpoint_resolver().expect("resolver defaulted if not set")
   69     73   
    }
   70     74   
    /// Return a reference to the retry configuration contained in this config, if any.
   71     75   
    pub fn retry_config(&self) -> ::std::option::Option<&::aws_smithy_types::retry::RetryConfig> {
   72     76   
        self.config.load::<::aws_smithy_types::retry::RetryConfig>()
   73     77   
    }
   74     78   
   75     79   
    /// Return a cloned shared async sleep implementation from this config, if any.
@@ -149,153 +208,213 @@
  169    173   
    ///
  170    174   
    pub fn new() -> Self {
  171    175   
        Self::default()
  172    176   
    }
  173    177   
    /// Constructs a config builder from the given `config_bag`, setting only fields stored in the config bag,
  174    178   
    /// but not those in runtime components.
  175    179   
    #[allow(unused)]
  176    180   
    pub(crate) fn from_config_bag(config_bag: &::aws_smithy_types::config_bag::ConfigBag) -> Self {
  177    181   
        let mut builder = Self::new();
  178    182   
        builder.set_stalled_stream_protection(config_bag.load::<crate::config::StalledStreamProtectionConfig>().cloned());
         183  +
        builder.set_auth_scheme_preference(config_bag.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>().cloned());
  179    184   
        builder.set_retry_config(config_bag.load::<::aws_smithy_types::retry::RetryConfig>().cloned());
  180    185   
        builder.set_timeout_config(config_bag.load::<::aws_smithy_types::timeout::TimeoutConfig>().cloned());
  181    186   
        builder.set_retry_partition(config_bag.load::<::aws_smithy_runtime::client::retries::RetryPartition>().cloned());
  182    187   
        builder.set_app_name(config_bag.load::<::aws_types::app_name::AppName>().cloned());
  183    188   
        builder.set_endpoint_url(config_bag.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()));
  184    189   
        builder.set_use_dual_stack(config_bag.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0));
  185    190   
        builder.set_use_fips(config_bag.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0));
  186    191   
        builder.set_region(config_bag.load::<crate::config::Region>().cloned());
  187    192   
        builder
  188    193   
    }
@@ -398,403 +457,519 @@
  418    423   
  419    424   
    /// Set the auth scheme resolver for the builder
  420    425   
    ///
  421    426   
    /// # Examples
  422    427   
    /// See an example for [`Self::auth_scheme_resolver`].
  423    428   
    pub fn set_auth_scheme_resolver(&mut self, auth_scheme_resolver: impl crate::config::auth::ResolveAuthScheme + 'static) -> &mut Self {
  424    429   
        self.runtime_components
  425    430   
            .set_auth_scheme_option_resolver(::std::option::Option::Some(auth_scheme_resolver.into_shared_resolver()));
  426    431   
        self
  427    432   
    }
         433  +
    /// Set the auth scheme preference for an auth scheme resolver
         434  +
    /// (typically the default auth scheme resolver).
         435  +
    ///
         436  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         437  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         438  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         439  +
    ///
         440  +
    /// The preference list is intended as a hint rather than a strict override.
         441  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         442  +
    ///
         443  +
    /// # Examples
         444  +
    ///
         445  +
    /// ```no_run
         446  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         447  +
    /// let config = aws_sdk_iam::Config::builder()
         448  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         449  +
    ///     // ...
         450  +
    ///     .build();
         451  +
    /// let client = aws_sdk_iam::Client::from_conf(config);
         452  +
    /// ```
         453  +
         454  +
    pub fn auth_scheme_preference(
         455  +
        mut self,
         456  +
        preference: impl ::std::convert::Into<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         457  +
    ) -> Self {
         458  +
        self.set_auth_scheme_preference(::std::option::Option::Some(preference.into()));
         459  +
        self
         460  +
    }
         461  +
         462  +
    /// Set the auth scheme preference for an auth scheme resolver
         463  +
    /// (typically the default auth scheme resolver).
         464  +
    ///
         465  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         466  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         467  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         468  +
    ///
         469  +
    /// The preference list is intended as a hint rather than a strict override.
         470  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         471  +
    ///
         472  +
    /// # Examples
         473  +
    ///
         474  +
    /// ```no_run
         475  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         476  +
    /// let config = aws_sdk_iam::Config::builder()
         477  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         478  +
    ///     // ...
         479  +
    ///     .build();
         480  +
    /// let client = aws_sdk_iam::Client::from_conf(config);
         481  +
    /// ```
         482  +
         483  +
    pub fn set_auth_scheme_preference(
         484  +
        &mut self,
         485  +
        preference: ::std::option::Option<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         486  +
    ) -> &mut Self {
         487  +
        self.config.store_or_unset(preference);
         488  +
        self
         489  +
    }
  428    490   
    /// Sets the endpoint resolver to use when making requests.
  429    491   
    ///
  430    492   
    ///
  431    493   
    /// When unset, the client will used a generated endpoint resolver based on the endpoint resolution
  432    494   
    /// rules for `aws_sdk_iam`.
  433    495   
    ///
  434    496   
    ///
  435    497   
    /// Note: setting an endpoint resolver will replace any endpoint URL that has been set.
  436    498   
    /// This method accepts an endpoint resolver [specific to this service](crate::config::endpoint::ResolveEndpoint). If you want to
  437    499   
    /// provide a shared endpoint resolver, use [`Self::set_endpoint_resolver`].
@@ -1389,1451 +1448,1511 @@
 1409   1471   
            );
 1410   1472   
        }
 1411   1473   
        // resiliency
 1412   1474   
        builder.set_retry_config(input.retry_config().cloned());
 1413   1475   
        builder.set_timeout_config(input.timeout_config().cloned());
 1414   1476   
        builder.set_sleep_impl(input.sleep_impl());
 1415   1477   
 1416   1478   
        builder.set_http_client(input.http_client());
 1417   1479   
        builder.set_time_source(input.time_source());
 1418   1480   
        builder.set_behavior_version(input.behavior_version());
        1481  +
        builder.set_auth_scheme_preference(input.auth_scheme_preference().cloned());
 1419   1482   
        // setting `None` here removes the default
 1420   1483   
        if let Some(config) = input.stalled_stream_protection() {
 1421   1484   
            builder.set_stalled_stream_protection(Some(config));
 1422   1485   
        }
 1423   1486   
 1424   1487   
        if let Some(cache) = input.identity_cache() {
 1425   1488   
            builder.set_identity_cache(cache);
 1426   1489   
        }
 1427   1490   
        builder.set_app_name(input.app_name().cloned());
 1428   1491   

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

@@ -10,10 +135,135 @@
   30     30   
path = "../aws-smithy-http"
   31     31   
version = "0.62.1"
   32     32   
   33     33   
[dependencies.aws-smithy-json]
   34     34   
path = "../aws-smithy-json"
   35     35   
version = "0.61.4"
   36     36   
   37     37   
[dependencies.aws-smithy-runtime]
   38     38   
path = "../aws-smithy-runtime"
   39     39   
features = ["client"]
   40         -
version = "1.8.4"
          40  +
version = "1.8.5"
   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.8.3"
          45  +
version = "1.8.4"
   46     46   
   47     47   
[dependencies.aws-smithy-types]
   48     48   
path = "../aws-smithy-types"
   49     49   
version = "1.3.2"
   50     50   
   51     51   
[dependencies.aws-types]
   52     52   
path = "../aws-types"
   53         -
version = "1.3.7"
          53  +
version = "1.3.8"
   54     54   
   55     55   
[dependencies.bytes]
   56     56   
version = "1.4.0"
   57     57   
   58     58   
[dependencies.fastrand]
   59     59   
version = "2.0.0"
   60     60   
   61     61   
[dependencies.http]
   62     62   
version = "0.2.9"
   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.8.2"
          71  +
version = "1.8.3"
   72     72   
   73     73   
[dev-dependencies.aws-credential-types]
   74     74   
path = "../aws-credential-types"
   75     75   
features = ["test-util"]
   76     76   
version = "1.2.3"
   77     77   
   78     78   
[dev-dependencies.aws-runtime]
   79     79   
path = "../aws-runtime"
   80     80   
features = ["test-util"]
   81     81   
version = "1.5.9"
   82     82   
   83     83   
[dev-dependencies.aws-smithy-async]
   84     84   
path = "../aws-smithy-async"
   85     85   
features = ["test-util"]
   86     86   
version = "1.2.5"
   87     87   
   88     88   
[dev-dependencies.aws-smithy-http-client]
   89     89   
path = "../aws-smithy-http-client"
   90     90   
features = ["test-util", "wire-mock"]
   91     91   
version = "1.0.6"
   92     92   
   93     93   
[dev-dependencies.aws-smithy-protocol-test]
   94     94   
path = "../aws-smithy-protocol-test"
   95     95   
version = "0.63.4"
   96     96   
   97     97   
[dev-dependencies.aws-smithy-runtime]
   98     98   
path = "../aws-smithy-runtime"
   99     99   
features = ["test-util"]
  100         -
version = "1.8.4"
         100  +
version = "1.8.5"
  101    101   
  102    102   
[dev-dependencies.aws-smithy-runtime-api]
  103    103   
path = "../aws-smithy-runtime-api"
  104    104   
features = ["test-util"]
  105         -
version = "1.8.3"
         105  +
version = "1.8.4"
  106    106   
  107    107   
[dev-dependencies.aws-smithy-types]
  108    108   
path = "../aws-smithy-types"
  109    109   
features = ["test-util"]
  110    110   
version = "1.3.2"
  111    111   
  112    112   
[dev-dependencies.futures-util]
  113    113   
version = "0.3.25"
  114    114   
features = ["alloc"]
  115    115   
default-features = false

tmp-codegen-diff/aws-sdk/sdk/kms/src/config.rs

@@ -36,36 +95,99 @@
   56     56   
    }
   57     57   
    /// Return the auth schemes configured on this service config
   58     58   
    pub fn auth_schemes(&self) -> impl Iterator<Item = ::aws_smithy_runtime_api::client::auth::SharedAuthScheme> + '_ {
   59     59   
        self.runtime_components.auth_schemes()
   60     60   
    }
   61     61   
   62     62   
    /// Return the auth scheme resolver configured on this service config
   63     63   
    pub fn auth_scheme_resolver(&self) -> ::std::option::Option<::aws_smithy_runtime_api::client::auth::SharedAuthSchemeOptionResolver> {
   64     64   
        self.runtime_components.auth_scheme_option_resolver()
   65     65   
    }
          66  +
    /// Returns the configured auth scheme preference
          67  +
    pub fn auth_scheme_preference(&self) -> ::std::option::Option<&::aws_smithy_runtime_api::client::auth::AuthSchemePreference> {
          68  +
        self.config.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>()
          69  +
    }
   66     70   
    /// Returns the endpoint resolver.
   67     71   
    pub fn endpoint_resolver(&self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver {
   68     72   
        self.runtime_components.endpoint_resolver().expect("resolver defaulted if not set")
   69     73   
    }
   70     74   
    /// Return a reference to the retry configuration contained in this config, if any.
   71     75   
    pub fn retry_config(&self) -> ::std::option::Option<&::aws_smithy_types::retry::RetryConfig> {
   72     76   
        self.config.load::<::aws_smithy_types::retry::RetryConfig>()
   73     77   
    }
   74     78   
   75     79   
    /// Return a cloned shared async sleep implementation from this config, if any.
@@ -149,153 +208,213 @@
  169    173   
    ///
  170    174   
    pub fn new() -> Self {
  171    175   
        Self::default()
  172    176   
    }
  173    177   
    /// Constructs a config builder from the given `config_bag`, setting only fields stored in the config bag,
  174    178   
    /// but not those in runtime components.
  175    179   
    #[allow(unused)]
  176    180   
    pub(crate) fn from_config_bag(config_bag: &::aws_smithy_types::config_bag::ConfigBag) -> Self {
  177    181   
        let mut builder = Self::new();
  178    182   
        builder.set_stalled_stream_protection(config_bag.load::<crate::config::StalledStreamProtectionConfig>().cloned());
         183  +
        builder.set_auth_scheme_preference(config_bag.load::<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>().cloned());
  179    184   
        builder.set_retry_config(config_bag.load::<::aws_smithy_types::retry::RetryConfig>().cloned());
  180    185   
        builder.set_timeout_config(config_bag.load::<::aws_smithy_types::timeout::TimeoutConfig>().cloned());
  181    186   
        builder.set_retry_partition(config_bag.load::<::aws_smithy_runtime::client::retries::RetryPartition>().cloned());
  182    187   
        builder.set_app_name(config_bag.load::<::aws_types::app_name::AppName>().cloned());
  183    188   
        builder.set_endpoint_url(config_bag.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()));
  184    189   
        builder.set_use_dual_stack(config_bag.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0));
  185    190   
        builder.set_use_fips(config_bag.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0));
  186    191   
        builder.set_region(config_bag.load::<crate::config::Region>().cloned());
  187    192   
        builder
  188    193   
    }
@@ -398,403 +457,519 @@
  418    423   
  419    424   
    /// Set the auth scheme resolver for the builder
  420    425   
    ///
  421    426   
    /// # Examples
  422    427   
    /// See an example for [`Self::auth_scheme_resolver`].
  423    428   
    pub fn set_auth_scheme_resolver(&mut self, auth_scheme_resolver: impl crate::config::auth::ResolveAuthScheme + 'static) -> &mut Self {
  424    429   
        self.runtime_components
  425    430   
            .set_auth_scheme_option_resolver(::std::option::Option::Some(auth_scheme_resolver.into_shared_resolver()));
  426    431   
        self
  427    432   
    }
         433  +
    /// Set the auth scheme preference for an auth scheme resolver
         434  +
    /// (typically the default auth scheme resolver).
         435  +
    ///
         436  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         437  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         438  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         439  +
    ///
         440  +
    /// The preference list is intended as a hint rather than a strict override.
         441  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         442  +
    ///
         443  +
    /// # Examples
         444  +
    ///
         445  +
    /// ```no_run
         446  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         447  +
    /// let config = aws_sdk_kms::Config::builder()
         448  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         449  +
    ///     // ...
         450  +
    ///     .build();
         451  +
    /// let client = aws_sdk_kms::Client::from_conf(config);
         452  +
    /// ```
         453  +
         454  +
    pub fn auth_scheme_preference(
         455  +
        mut self,
         456  +
        preference: impl ::std::convert::Into<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         457  +
    ) -> Self {
         458  +
        self.set_auth_scheme_preference(::std::option::Option::Some(preference.into()));
         459  +
        self
         460  +
    }
         461  +
         462  +
    /// Set the auth scheme preference for an auth scheme resolver
         463  +
    /// (typically the default auth scheme resolver).
         464  +
    ///
         465  +
    /// Each operation has a predefined order of auth schemes, as determined by the service,
         466  +
    /// for auth scheme resolution. By using the auth scheme preference, customers
         467  +
    /// can reorder the schemes resolved by the auth scheme resolver.
         468  +
    ///
         469  +
    /// The preference list is intended as a hint rather than a strict override.
         470  +
    /// Any schemes not present in the originally resolved auth schemes will be ignored.
         471  +
    ///
         472  +
    /// # Examples
         473  +
    ///
         474  +
    /// ```no_run
         475  +
    /// # use aws_smithy_runtime_api::client::auth::AuthSchemeId;
         476  +
    /// let config = aws_sdk_kms::Config::builder()
         477  +
    ///     .auth_scheme_preference([AuthSchemeId::from("scheme1"), AuthSchemeId::from("scheme2")])
         478  +
    ///     // ...
         479  +
    ///     .build();
         480  +
    /// let client = aws_sdk_kms::Client::from_conf(config);
         481  +
    /// ```
         482  +
         483  +
    pub fn set_auth_scheme_preference(
         484  +
        &mut self,
         485  +
        preference: ::std::option::Option<::aws_smithy_runtime_api::client::auth::AuthSchemePreference>,
         486  +
    ) -> &mut Self {
         487  +
        self.config.store_or_unset(preference);
         488  +
        self
         489  +
    }
  428    490   
    /// Sets the endpoint resolver to use when making requests.
  429    491   
    ///
  430    492   
    ///
  431    493   
    /// When unset, the client will used a generated endpoint resolver based on the endpoint resolution
  432    494   
    /// rules for `aws_sdk_kms`.
  433    495   
    ///
  434    496   
    ///
  435    497   
    /// Note: setting an endpoint resolver will replace any endpoint URL that has been set.
  436    498   
    /// This method accepts an endpoint resolver [specific to this service](crate::config::endpoint::ResolveEndpoint). If you want to
  437    499   
    /// provide a shared endpoint resolver, use [`Self::set_endpoint_resolver`].
@@ -1389,1451 +1448,1511 @@
 1409   1471   
            );
 1410   1472   
        }
 1411   1473   
        // resiliency
 1412   1474   
        builder.set_retry_config(input.retry_config().cloned());
 1413   1475   
        builder.set_timeout_config(input.timeout_config().cloned());
 1414   1476   
        builder.set_sleep_impl(input.sleep_impl());
 1415   1477   
 1416   1478   
        builder.set_http_client(input.http_client());
 1417   1479   
        builder.set_time_source(input.time_source());
 1418   1480   
        builder.set_behavior_version(input.behavior_version());
        1481  +
        builder.set_auth_scheme_preference(input.auth_scheme_preference().cloned());
 1419   1482   
        // setting `None` here removes the default
 1420   1483   
        if let Some(config) = input.stalled_stream_protection() {
 1421   1484   
            builder.set_stalled_stream_protection(Some(config));
 1422   1485   
        }
 1423   1486   
 1424   1487   
        if let Some(cache) = input.identity_cache() {
 1425   1488   
            builder.set_identity_cache(cache);
 1426   1489   
        }
 1427   1490   
        builder.set_app_name(input.app_name().cloned());
 1428   1491