diff --git a/aws/rust-runtime/Cargo.lock b/aws/rust-runtime/Cargo.lock index 6706787b34..1fee41626b 100644 --- a/aws/rust-runtime/Cargo.lock +++ b/aws/rust-runtime/Cargo.lock @@ -28,9 +28,9 @@ dependencies = [ [[package]] name = "allocator-api2" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45862d1c77f2228b9e10bc609d5bc203d86ebc9b87ad8d5d5167a6c9abf739d9" +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "anes" @@ -69,7 +69,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -130,7 +130,7 @@ dependencies = [ "hex", "hmac", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "lru", @@ -163,7 +163,7 @@ dependencies = [ "fastrand", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "once_cell", @@ -205,7 +205,7 @@ dependencies = [ "hex-literal", "hmac", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "httparse", "libfuzzer-sys", "once_cell", @@ -271,7 +271,7 @@ dependencies = [ "bytes-utils", "futures-core", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "once_cell", "percent-encoding", @@ -328,7 +328,7 @@ dependencies = [ "bytes", "fastrand", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "httparse", @@ -347,7 +347,7 @@ dependencies = [ "aws-smithy-types", "bytes", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "pin-project-lite", "tokio", "tracing", @@ -363,7 +363,7 @@ dependencies = [ "bytes-utils", "futures-core", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -492,9 +492,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" +checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" [[package]] name = "bytes-utils" @@ -533,9 +533,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd9de9f2205d5ef3fd67e685b0df337994ddd4495e2a28d185500d0e1edfea47" +checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc" dependencies = [ "jobserver", "libc", @@ -586,18 +586,18 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.21" +version = "4.5.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb3b4b9e5a7c7514dfa52869339ee98b3156b0bfb4e8a77c4ff4babb64b1604f" +checksum = "3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84" dependencies = [ "clap_builder", ] [[package]] name = "clap_builder" -version = "4.5.21" +version = "4.5.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b17a95aa67cc7b5ebd32aa5370189aa0d79069ef1c64ce893bd30fb24bff20ec" +checksum = "30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838" dependencies = [ "anstyle", "clap_lex", @@ -605,9 +605,9 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afb84c814227b90d6895e01398aee0d8033c00e7466aca416fb6a8e0eb19d8a7" +checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" [[package]] name = "const-oid" @@ -854,12 +854,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.9" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -1018,7 +1018,7 @@ dependencies = [ "fnv", "futures-core", "futures-sink", - "http 1.1.0", + "http 1.2.0", "indexmap", "slab", "tokio", @@ -1038,21 +1038,15 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" dependencies = [ "allocator-api2", "equivalent", "foldhash", ] -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" - [[package]] name = "hermit-abi" version = "0.4.0" @@ -1093,9 +1087,9 @@ dependencies = [ [[package]] name = "http" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" dependencies = [ "bytes", "fnv", @@ -1120,7 +1114,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.1.0", + "http 1.2.0", ] [[package]] @@ -1131,7 +1125,7 @@ checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" dependencies = [ "bytes", "futures-util", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "pin-project-lite", ] @@ -1201,9 +1195,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", "hashbrown", @@ -1215,7 +1209,7 @@ version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b" dependencies = [ - "hermit-abi 0.4.0", + "hermit-abi", "libc", "windows-sys 0.52.0", ] @@ -1231,9 +1225,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "540654e97a3f4470a492cd30ff187bc95d89557a903a2bbf112e2fae98104ef2" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "jobserver" @@ -1246,10 +1240,11 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.72" +version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" +checksum = "a865e038f7f6ed956f788f0d7d60c541fff74c7bd74272c5d4cf15c63743e705" dependencies = [ + "once_cell", "wasm-bindgen", ] @@ -1261,18 +1256,19 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "libc" -version = "0.2.164" +version = "0.2.167" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "433bfe06b8c75da9b2e3fbea6e5329ff87748f0b144ef75306e674c3f6f7c13f" +checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc" [[package]] name = "libfuzzer-sys" -version = "0.4.8" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b9569d2f74e257076d8c6bfa73fb505b46b851e51ddaecc825944aa3bed17fa" +checksum = "a96cfd5557eb82f2b83fed4955246c988d331975a002961b07c81584d107e7f7" dependencies = [ "arbitrary", "cc", + "once_cell", ] [[package]] @@ -1354,11 +1350,10 @@ dependencies = [ [[package]] name = "mio" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ - "hermit-abi 0.3.9", "libc", "wasi", "windows-sys 0.52.0", @@ -1994,7 +1989,7 @@ checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -2082,9 +2077,9 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "socket2" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" dependencies = [ "libc", "windows-sys 0.52.0", @@ -2125,9 +2120,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.89" +version = "2.0.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" +checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" dependencies = [ "proc-macro2", "quote", @@ -2164,7 +2159,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -2179,9 +2174,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.36" +version = "0.3.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" dependencies = [ "deranged", "num-conv", @@ -2199,9 +2194,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.18" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de" dependencies = [ "num-conv", "time-core", @@ -2234,9 +2229,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.41.1" +version = "1.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cfb5bee7a6a52939ca9224d6ac897bb669134078daa8735560897f69de4d33" +checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" dependencies = [ "backtrace", "bytes", @@ -2258,7 +2253,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -2273,9 +2268,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.12" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" +checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078" dependencies = [ "bytes", "futures-core", @@ -2292,9 +2287,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.40" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ "pin-project-lite", "tracing-attributes", @@ -2303,20 +2298,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] name = "tracing-core" -version = "0.1.32" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" dependencies = [ "once_cell", "valuable", @@ -2335,9 +2330,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.18" +version = "0.3.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" dependencies = [ "matchers", "nu-ansi-term", @@ -2369,7 +2364,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04659ddb06c87d233c566112c1c9c5b9e98256d9af50ec3bc9c8327f873a7568" dependencies = [ "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -2494,9 +2489,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" +checksum = "d15e63b4482863c109d70a7b8706c1e364eb6ea449b201a76c5b89cedcec2d5c" dependencies = [ "cfg-if", "once_cell", @@ -2505,24 +2500,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" +checksum = "8d36ef12e3aaca16ddd3f67922bc63e48e953f126de60bd33ccc0101ef9998cd" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" +checksum = "705440e08b42d3e4b36de7d66c944be628d579796b8090bfa3471478a2260051" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -2530,28 +2525,28 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" +checksum = "98c9ae5a76e46f4deecd0f0255cc223cfa18dc9b261213b8aa0c7b36f61b3f1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" +checksum = "6ee99da9c5ba11bd675621338ef6fa52296b76b83305e9b6e5c77d4c286d6d49" [[package]] name = "web-sys" -version = "0.3.72" +version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" +checksum = "a98bc3c33f0fe7e59ad7cd041b89034fa82a7c2d4365ca538dda6cdaf513863c" dependencies = [ "js-sys", "wasm-bindgen", @@ -2706,7 +2701,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] diff --git a/aws/rust-runtime/aws-config/Cargo.lock b/aws/rust-runtime/aws-config/Cargo.lock index 205599ae2f..d96bff0fff 100644 --- a/aws/rust-runtime/aws-config/Cargo.lock +++ b/aws/rust-runtime/aws-config/Cargo.lock @@ -70,8 +70,8 @@ dependencies = [ "fastrand", "futures-util", "hex", - "http 1.1.0", - "hyper-rustls", + "http 1.2.0", + "proc-macro2", "ring", "serde", "serde_json", @@ -94,6 +94,32 @@ dependencies = [ "zeroize", ] +[[package]] +name = "aws-lc-rs" +version = "1.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f47bb8cc16b669d267eeccf585aea077d0882f4777b1c1f740217885d6e6e5a3" +dependencies = [ + "aws-lc-sys", + "paste", + "zeroize", +] + +[[package]] +name = "aws-lc-sys" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2101df3813227bbaaaa0b04cd61c534c7954b22bd68d399b440be937dc63ff7" +dependencies = [ + "bindgen", + "cc", + "cmake", + "dunce", + "fs_extra", + "libc", + "paste", +] + [[package]] name = "aws-runtime" version = "1.5.0" @@ -191,7 +217,7 @@ dependencies = [ "hex", "hmac", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "percent-encoding", "sha2", @@ -218,7 +244,7 @@ dependencies = [ "bytes-utils", "futures-core", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "once_cell", "percent-encoding", @@ -238,11 +264,13 @@ dependencies = [ "bytes", "h2 0.4.7", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", - "hyper", + "hyper 0.14.31", + "hyper 1.5.1", "hyper-rustls", + "hyper-util", "indexmap", "once_cell", "pin-project-lite", @@ -250,12 +278,13 @@ dependencies = [ "serde", "serde_json", "tokio", + "tower", "tracing", ] [[package]] name = "aws-smithy-json" -version = "0.60.7" +version = "0.61.1" dependencies = [ "aws-smithy-types", ] @@ -297,7 +326,7 @@ dependencies = [ "bytes", "fastrand", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "httparse", @@ -317,7 +346,7 @@ dependencies = [ "aws-smithy-types", "bytes", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "pin-project-lite", "tokio", "tracing", @@ -332,7 +361,7 @@ dependencies = [ "bytes", "bytes-utils", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -379,12 +408,6 @@ dependencies = [ "windows-targets", ] -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - [[package]] name = "base64-simd" version = "0.8.0" @@ -395,6 +418,29 @@ dependencies = [ "vsimd", ] +[[package]] +name = "bindgen" +version = "0.69.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088" +dependencies = [ + "bitflags", + "cexpr", + "clang-sys", + "itertools", + "lazy_static", + "lazycell", + "log", + "prettyplease", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex", + "syn 2.0.90", + "which", +] + [[package]] name = "bitflags" version = "2.6.0" @@ -421,9 +467,9 @@ dependencies = [ [[package]] name = "bytes" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" +checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" [[package]] name = "bytes-utils" @@ -456,13 +502,24 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd9de9f2205d5ef3fd67e685b0df337994ddd4495e2a28d185500d0e1edfea47" +checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc" dependencies = [ + "jobserver", + "libc", "shlex", ] +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom", +] + [[package]] name = "cfg-if" version = "1.0.0" @@ -505,11 +562,31 @@ dependencies = [ "half", ] +[[package]] +name = "clang-sys" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" +dependencies = [ + "glob", + "libc", + "libloading", +] + +[[package]] +name = "cmake" +version = "0.1.52" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c682c223677e0e5b6b7f63a64b9351844c3f1b1678a68b7ee617e30fb082620e" +dependencies = [ + "cc", +] + [[package]] name = "core-foundation" -version = "0.9.4" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +checksum = "b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63" dependencies = [ "core-foundation-sys", "libc", @@ -578,6 +655,12 @@ dependencies = [ "subtle", ] +[[package]] +name = "dunce" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" + [[package]] name = "either" version = "1.13.0" @@ -590,6 +673,16 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +[[package]] +name = "errno" +version = "0.3.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" +dependencies = [ + "libc", + "windows-sys 0.59.0", +] + [[package]] name = "extend" version = "0.1.2" @@ -623,6 +716,12 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "fs_extra" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" + [[package]] name = "futures-channel" version = "0.3.31" @@ -689,6 +788,12 @@ version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + [[package]] name = "h2" version = "0.3.26" @@ -719,7 +824,7 @@ dependencies = [ "fnv", "futures-core", "futures-sink", - "http 1.1.0", + "http 1.2.0", "indexmap", "slab", "tokio", @@ -739,15 +844,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" - -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" [[package]] name = "hex" @@ -764,6 +863,15 @@ dependencies = [ "digest", ] +[[package]] +name = "home" +version = "0.5.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" +dependencies = [ + "windows-sys 0.52.0", +] + [[package]] name = "http" version = "0.2.12" @@ -777,9 +885,9 @@ dependencies = [ [[package]] name = "http" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" dependencies = [ "bytes", "fnv", @@ -804,7 +912,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.1.0", + "http 1.2.0", ] [[package]] @@ -815,7 +923,7 @@ checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" dependencies = [ "bytes", "futures-util", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "pin-project-lite", ] @@ -856,21 +964,61 @@ dependencies = [ "want", ] +[[package]] +name = "hyper" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97818827ef4f364230e16705d4706e2897df2bb60617d6ca15d598025a3c481f" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "h2 0.4.7", + "http 1.2.0", + "http-body 1.0.1", + "httparse", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + [[package]] name = "hyper-rustls" -version = "0.24.2" +version = "0.27.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" dependencies = [ "futures-util", - "http 0.2.12", - "hyper", - "log", + "http 1.2.0", + "hyper 1.5.1", + "hyper-util", "rustls", "rustls-native-certs", + "rustls-pki-types", "tokio", "tokio-rustls", - "webpki-roots", + "tower-service", +] + +[[package]] +name = "hyper-util" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http 1.2.0", + "http-body 1.0.1", + "hyper 1.5.1", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", ] [[package]] @@ -885,20 +1033,38 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", "hashbrown", "serde", ] +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + [[package]] name = "itoa" -version = "1.0.13" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" + +[[package]] +name = "jobserver" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "540654e97a3f4470a492cd30ff187bc95d89557a903a2bbf112e2fae98104ef2" +checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" +dependencies = [ + "libc", +] [[package]] name = "lazy_static" @@ -906,11 +1072,33 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" +[[package]] +name = "lazycell" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" + [[package]] name = "libc" -version = "0.2.164" +version = "0.2.167" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc" + +[[package]] +name = "libloading" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "433bfe06b8c75da9b2e3fbea6e5329ff87748f0b144ef75306e674c3f6f7c13f" +checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" +dependencies = [ + "cfg-if", + "windows-targets", +] + +[[package]] +name = "linux-raw-sys" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "lock_api" @@ -960,11 +1148,10 @@ dependencies = [ [[package]] name = "mio" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ - "hermit-abi", "libc", "wasi", "windows-sys 0.52.0", @@ -1091,6 +1278,12 @@ dependencies = [ "windows-targets", ] +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + [[package]] name = "percent-encoding" version = "2.3.1" @@ -1125,6 +1318,16 @@ dependencies = [ "yansi", ] +[[package]] +name = "prettyplease" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" +dependencies = [ + "proc-macro2", + "syn 2.0.90", +] + [[package]] name = "proc-macro-error" version = "1.0.4" @@ -1256,6 +1459,12 @@ version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + [[package]] name = "rustc_version" version = "0.4.1" @@ -1265,46 +1474,60 @@ dependencies = [ "semver", ] +[[package]] +name = "rustix" +version = "0.38.41" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7f649912bc1495e167a6edee79151c84b1bad49748cb4f1f1167f459f6224f6" +dependencies = [ + "bitflags", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.52.0", +] + [[package]] name = "rustls" -version = "0.21.12" +version = "0.23.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" +checksum = "934b404430bb06b3fae2cba809eb45a1ab1aecd64491213d7c3301b88393f8d1" dependencies = [ - "log", - "ring", + "aws-lc-rs", + "once_cell", + "rustls-pki-types", "rustls-webpki", - "sct", + "subtle", + "zeroize", ] [[package]] name = "rustls-native-certs" -version = "0.6.3" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" +checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3" dependencies = [ "openssl-probe", - "rustls-pemfile", + "rustls-pki-types", "schannel", "security-framework", ] [[package]] -name = "rustls-pemfile" -version = "1.0.4" +name = "rustls-pki-types" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" -dependencies = [ - "base64", -] +checksum = "16f1201b3c9a7ee8039bcadc17b7e605e2945b27eee7631788c1bd2b0643674b" [[package]] name = "rustls-webpki" -version = "0.101.7" +version = "0.102.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" dependencies = [ + "aws-lc-rs", "ring", + "rustls-pki-types", "untrusted", ] @@ -1329,21 +1552,11 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" -[[package]] -name = "sct" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" -dependencies = [ - "ring", - "untrusted", -] - [[package]] name = "security-framework" -version = "2.11.1" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" +checksum = "e1415a607e92bec364ea2cf9264646dcce0f91e6d65281bd6f2819cca3bf39c8" dependencies = [ "bitflags", "core-foundation", @@ -1391,7 +1604,7 @@ checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -1459,9 +1672,9 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "socket2" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" dependencies = [ "libc", "windows-sys 0.52.0", @@ -1492,9 +1705,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.89" +version = "2.0.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" +checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" dependencies = [ "proc-macro2", "quote", @@ -1518,7 +1731,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -1533,9 +1746,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.36" +version = "0.3.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" dependencies = [ "deranged", "num-conv", @@ -1553,9 +1766,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.18" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de" dependencies = [ "num-conv", "time-core", @@ -1578,9 +1791,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.41.1" +version = "1.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cfb5bee7a6a52939ca9224d6ac897bb669134078daa8735560897f69de4d33" +checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" dependencies = [ "backtrace", "bytes", @@ -1602,14 +1815,14 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] name = "tokio-rustls" -version = "0.24.1" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" +checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" dependencies = [ "rustls", "tokio", @@ -1617,9 +1830,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.12" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" +checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078" dependencies = [ "bytes", "futures-core", @@ -1628,6 +1841,22 @@ dependencies = [ "tokio", ] +[[package]] +name = "tower" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2873938d487c3cfb9aed7546dc9f2711d867c9f90c46b889989a2cb84eba6b4f" +dependencies = [ + "tower-layer", + "tower-service", +] + +[[package]] +name = "tower-layer" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" + [[package]] name = "tower-service" version = "0.3.3" @@ -1636,9 +1865,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.40" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ "pin-project-lite", "tracing-attributes", @@ -1647,20 +1876,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] name = "tracing-core" -version = "0.1.32" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" dependencies = [ "once_cell", "valuable", @@ -1679,9 +1908,9 @@ dependencies = [ [[package]] name = "tracing-serde" -version = "0.1.3" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +checksum = "704b1aeb7be0d0a84fc9828cae51dab5970fee5088f83d1dd7ee6f6246fc6ff1" dependencies = [ "serde", "tracing-core", @@ -1689,9 +1918,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.18" +version = "0.3.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" dependencies = [ "matchers", "nu-ansi-term", @@ -1726,7 +1955,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04659ddb06c87d233c566112c1c9c5b9e98256d9af50ec3bc9c8327f873a7568" dependencies = [ "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -1825,10 +2054,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] -name = "webpki-roots" -version = "0.25.4" +name = "which" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" +dependencies = [ + "either", + "home", + "once_cell", + "rustix", +] [[package]] name = "winapi" diff --git a/aws/rust-runtime/aws-config/Cargo.toml b/aws/rust-runtime/aws-config/Cargo.toml index cc4ad3f03d..ba836e54b6 100644 --- a/aws/rust-runtime/aws-config/Cargo.toml +++ b/aws/rust-runtime/aws-config/Cargo.toml @@ -13,11 +13,15 @@ repository = "https://github.com/smithy-lang/smithy-rs" [features] behavior-version-latest = [] -client-hyper = ["aws-smithy-runtime/connector-hyper-0-14-x"] credentials-process = ["tokio/process"] -default = ["client-hyper", "rustls", "rt-tokio", "credentials-process", "sso"] +default = ["default-http-connector", "rt-tokio", "credentials-process", "sso"] rt-tokio = ["aws-smithy-async/rt-tokio", "aws-smithy-runtime/rt-tokio", "tokio/rt"] -rustls = ["aws-smithy-runtime/tls-rustls", "client-hyper"] +# NOTE: `client-hyper` and `rustls` were proxies for enabling the default HTTP client plugin of `aws-smithy-runtime` +# there is no direct usage otherwise on hyper or rustls in this crate. These are superceded by the more appropriately +# named `default-http-connector` feature and `client-hyper` and `rustls` are now synonyms for the same +client-hyper = ["aws-smithy-runtime/default-http-connector"] +rustls = ["client-hyper"] +default-http-connector = ["aws-smithy-runtime/default-http-connector"] sso = ["dep:aws-sdk-sso", "dep:aws-sdk-ssooidc", "dep:ring", "dep:hex", "dep:zeroize", "aws-smithy-runtime-api/http-auth"] # deprecated: this feature does nothing @@ -53,9 +57,12 @@ zeroize = { version = "1", optional = true } # implementation detail of SSO OIDC `CreateToken` for SSO token providers aws-sdk-ssooidc = { path = "../../sdk/build/aws-sdk/sdk/ssooidc", default-features = false, optional = true } +proc-macro2 = {version = "1.0.92", optional = true } + [dev-dependencies] -aws-smithy-runtime = { path = "../../sdk/build/aws-sdk/sdk/aws-smithy-runtime", features = ["client", "connector-hyper-0-14-x", "test-util"] } -aws-smithy-http-client = { path = "../../sdk/build/aws-sdk/sdk/aws-smithy-http-client", features = ["test-util"] } +aws-smithy-async = { path = "../../sdk/build/aws-sdk/sdk/aws-smithy-async", features = ["rt-tokio", "test-util"] } +aws-smithy-runtime = { path = "../../sdk/build/aws-sdk/sdk/aws-smithy-runtime", features = ["client", "test-util"] } +aws-smithy-http-client = { path = "../../sdk/build/aws-sdk/sdk/aws-smithy-http-client", features = ["hyper-1", "test-util"] } aws-smithy-runtime-api = { path = "../../sdk/build/aws-sdk/sdk/aws-smithy-runtime-api", features = ["test-util"] } futures-util = { version = "0.3.29", default-features = false } tracing-test = "0.2.4" @@ -66,11 +73,6 @@ tokio = { version = "1.23.1", features = ["full", "test-util"] } serde = { version = "1", features = ["derive"] } serde_json = "1" -# used for a usage example -hyper-rustls = { version = "0.24", features = ["webpki-tokio", "http2", "http1"] } -aws-smithy-async = { path = "../../sdk/build/aws-sdk/sdk/aws-smithy-async", features = ["rt-tokio", "test-util"] } - - [package.metadata.docs.rs] all-features = true targets = ["x86_64-unknown-linux-gnu"] @@ -83,3 +85,7 @@ rustdoc-args = ["--cfg", "docsrs"] # Crate("aws-config", STABLE_VERSION_PROP_NAME), [package.metadata.smithy-rs-release-tooling] stable = true + +# FIXME - workaround minimal-versions check issue with proc-macro < 1.0.60 +[package.metadata.cargo-udeps.ignore] +normal = ["proc-macro2"] diff --git a/aws/rust-runtime/aws-config/src/default_provider/credentials.rs b/aws/rust-runtime/aws-config/src/default_provider/credentials.rs index 13b1a4438a..81838fc2fa 100644 --- a/aws/rust-runtime/aws-config/src/default_provider/credentials.rs +++ b/aws/rust-runtime/aws-config/src/default_provider/credentials.rs @@ -14,7 +14,7 @@ use crate::meta::credentials::CredentialsProviderChain; use crate::meta::region::ProvideRegion; use crate::provider_config::ProviderConfig; -#[cfg(feature = "rustls")] +#[cfg(any(feature = "default-http-connector", feature = "rustls"))] /// Default Credentials Provider chain /// /// The region from the default region provider will be used @@ -170,7 +170,7 @@ impl Builder { /// Creates a `DefaultCredentialsChain` /// /// ## Panics - /// This function will panic if no connector has been set or the `rustls` + /// This function will panic if no connector has been set or the `default-http-connector` /// feature has been disabled. pub async fn build(self) -> DefaultCredentialsChain { let region = match self.region_override { @@ -347,17 +347,15 @@ mod test { } #[tokio::test] - #[cfg(feature = "client-hyper")] async fn no_providers_configured_err() { use crate::provider_config::ProviderConfig; use aws_credential_types::provider::error::CredentialsError; use aws_smithy_async::rt::sleep::TokioSleep; use aws_smithy_http_client::test_util::NeverTcpConnector; - use aws_smithy_runtime::client::http::hyper_014::HyperClientBuilder; tokio::time::pause(); let conf = ProviderConfig::no_configuration() - .with_http_client(HyperClientBuilder::new().build(NeverTcpConnector::new())) + .with_http_client(NeverTcpConnector::new().into_client()) .with_time_source(StaticTimeSource::new(UNIX_EPOCH)) .with_sleep_impl(TokioSleep::new()); let provider = DefaultCredentialsChain::builder() diff --git a/aws/rust-runtime/aws-config/src/imds/client.rs b/aws/rust-runtime/aws-config/src/imds/client.rs index d93cc124a0..2f61b4699d 100644 --- a/aws/rust-runtime/aws-config/src/imds/client.rs +++ b/aws/rust-runtime/aws-config/src/imds/client.rs @@ -984,7 +984,7 @@ pub(crate) mod test { #[cfg_attr(windows, ignore)] /// Verify that the end-to-end real client has a 1-second connect timeout #[tokio::test] - #[cfg(feature = "rustls")] + #[cfg(feature = "default-http-connector")] async fn one_second_connect_timeout() { use crate::imds::client::ImdsError; use aws_smithy_types::error::display::DisplayErrorContext; diff --git a/aws/rust-runtime/aws-config/src/imds/credentials.rs b/aws/rust-runtime/aws-config/src/imds/credentials.rs index ece49f0398..9e29a9bfa2 100644 --- a/aws/rust-runtime/aws-config/src/imds/credentials.rs +++ b/aws/rust-runtime/aws-config/src/imds/credentials.rs @@ -418,7 +418,7 @@ mod test { } #[tokio::test] - #[cfg(feature = "rustls")] + #[cfg(feature = "default-http-connector")] async fn read_timeout_during_credentials_refresh_should_yield_last_retrieved_credentials() { let client = crate::imds::Client::builder() // 240.* can never be resolved @@ -436,7 +436,7 @@ mod test { } #[tokio::test] - #[cfg(feature = "rustls")] + #[cfg(feature = "default-http-connector")] async fn read_timeout_during_credentials_refresh_should_error_without_last_retrieved_credentials( ) { let client = crate::imds::Client::builder() @@ -458,7 +458,7 @@ mod test { // TODO(https://github.com/awslabs/aws-sdk-rust/issues/1117) This test is ignored on Windows because it uses Unix-style paths #[cfg_attr(windows, ignore)] #[tokio::test] - #[cfg(feature = "rustls")] + #[cfg(feature = "default-http-connector")] async fn external_timeout_during_credentials_refresh_should_yield_last_retrieved_credentials() { use aws_smithy_async::rt::sleep::AsyncSleep; let client = crate::imds::Client::builder() diff --git a/aws/rust-runtime/aws-config/src/lib.rs b/aws/rust-runtime/aws-config/src/lib.rs index e9525d3d00..f892ac72b0 100644 --- a/aws/rust-runtime/aws-config/src/lib.rs +++ b/aws/rust-runtime/aws-config/src/lib.rs @@ -391,31 +391,6 @@ mod loader { /// /// If you wish to use a separate HTTP client for credentials providers when creating clients, /// then override the HTTP client set with this function on the client-specific `Config`s. - /// - /// ## Examples - /// - /// ```no_run - /// # use aws_smithy_async::rt::sleep::SharedAsyncSleep; - /// #[cfg(feature = "client-hyper")] - /// # async fn create_config() { - /// use std::time::Duration; - /// use aws_smithy_runtime::client::http::hyper_014::HyperClientBuilder; - /// - /// let tls_connector = hyper_rustls::HttpsConnectorBuilder::new() - /// .with_webpki_roots() - /// // NOTE: setting `https_only()` will not allow this connector to work with IMDS. - /// .https_only() - /// .enable_http1() - /// .enable_http2() - /// .build(); - /// - /// let hyper_client = HyperClientBuilder::new().build(tls_connector); - /// let sdk_config = aws_config::from_env() - /// .http_client(hyper_client) - /// .load() - /// .await; - /// # } - /// ``` pub fn http_client(mut self, http_client: impl HttpClient + 'static) -> Self { self.http_client = Some(http_client.into_shared()); self @@ -1128,7 +1103,7 @@ mod loader { assert_eq!(Some(&app_name), conf.app_name()); } - #[cfg(feature = "rustls")] + #[cfg(feature = "default-http-connector")] #[tokio::test] async fn disable_default_credentials() { let config = defaults(BehaviorVersion::latest()) @@ -1138,7 +1113,7 @@ mod loader { assert!(config.credentials_provider().is_none()); } - #[cfg(feature = "rustls")] + #[cfg(feature = "default-http-connector")] #[tokio::test] async fn identity_cache_defaulted() { let config = defaults(BehaviorVersion::latest()).load().await; @@ -1146,7 +1121,7 @@ mod loader { assert!(config.identity_cache().is_some()); } - #[cfg(feature = "rustls")] + #[cfg(feature = "default-http-connector")] #[allow(deprecated)] #[tokio::test] async fn identity_cache_old_behavior_version() { diff --git a/aws/rust-runtime/aws-config/src/meta/credentials/chain.rs b/aws/rust-runtime/aws-config/src/meta/credentials/chain.rs index 7d657f7f6c..d0665c05fd 100644 --- a/aws/rust-runtime/aws-config/src/meta/credentials/chain.rs +++ b/aws/rust-runtime/aws-config/src/meta/credentials/chain.rs @@ -73,7 +73,7 @@ impl CredentialsProviderChain { } /// Add a fallback to the default provider chain - #[cfg(feature = "rustls")] + #[cfg(any(feature = "default-http-connector", feature = "rustls"))] pub async fn or_default_provider(self) -> Self { self.or_else( "DefaultProviderChain", @@ -82,7 +82,7 @@ impl CredentialsProviderChain { } /// Creates a credential provider chain that starts with the default provider - #[cfg(feature = "rustls")] + #[cfg(any(feature = "default-http-connector", feature = "rustls"))] pub async fn default_provider() -> Self { Self::first_try( "DefaultProviderChain", diff --git a/aws/rust-runtime/aws-config/src/profile/credentials.rs b/aws/rust-runtime/aws-config/src/profile/credentials.rs index 3e61d2abca..f8ff1f1a71 100644 --- a/aws/rust-runtime/aws-config/src/profile/credentials.rs +++ b/aws/rust-runtime/aws-config/src/profile/credentials.rs @@ -91,7 +91,7 @@ pub(crate) mod repr; /// future::ProvideCredentials::new(self.load_credentials()) /// } /// } -/// # if cfg!(feature = "rustls") { +/// # if cfg!(feature = "default-http-connector") { /// let provider = ProfileFileCredentialsProvider::builder() /// .with_custom_provider("Custom", MyCustomProvider) /// .build(); diff --git a/aws/rust-runtime/aws-config/src/provider_config.rs b/aws/rust-runtime/aws-config/src/provider_config.rs index bf86ae12ec..d2fe13c430 100644 --- a/aws/rust-runtime/aws-config/src/provider_config.rs +++ b/aws/rust-runtime/aws-config/src/provider_config.rs @@ -128,7 +128,7 @@ impl ProviderConfig { /// /// # Examples /// ```no_run - /// # #[cfg(feature = "rustls")] + /// # #[cfg(feature = "default-http-connector")] /// # fn example() { /// use aws_config::provider_config::ProviderConfig; /// use aws_sdk_sts::config::Region; diff --git a/aws/rust-runtime/aws-config/src/test_case.rs b/aws/rust-runtime/aws-config/src/test_case.rs index a5f5807d40..bc340b8150 100644 --- a/aws/rust-runtime/aws-config/src/test_case.rs +++ b/aws/rust-runtime/aws-config/src/test_case.rs @@ -318,8 +318,8 @@ where O: for<'a> Deserialize<'a> + Secrets + PartialEq + Debug, E: Error, { + #[cfg(feature = "default-http-connector")] #[allow(unused)] - #[cfg(all(feature = "client-hyper", feature = "rustls"))] /// Record a test case from live (remote) HTTPS traffic /// /// The `default_connector()` from the crate will be used @@ -327,11 +327,12 @@ where // swap out the connector generated from `http-traffic.json` for a real connector: use std::error::Error; - let live_connector = aws_smithy_runtime::client::http::hyper_014::default_connector( + let live_connector = aws_smithy_http_client::default_connector( &Default::default(), self.provider_config.sleep_impl(), ) .expect("feature gate on this function makes this always return Some"); + let live_client = RecordingClient::new(live_connector); let config = self .provider_config diff --git a/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/AwsFluentClientDecorator.kt b/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/AwsFluentClientDecorator.kt index 7b14bf4414..de68b268ba 100644 --- a/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/AwsFluentClientDecorator.kt +++ b/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/AwsFluentClientDecorator.kt @@ -65,7 +65,7 @@ class AwsFluentClientDecorator : ClientCodegenDecorator { rustCrate.withModule(ClientRustModule.client) { AwsFluentClientExtensions(codegenContext, types).render(this) } - rustCrate.mergeFeature(Feature("rustls", default = true, listOf("aws-smithy-runtime/tls-rustls"))) + rustCrate.mergeFeature(Feature("rustls", default = true, listOf("aws-smithy-runtime/default-http-connector"))) } override fun libRsCustomizations( diff --git a/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/IntegrationTestDependencies.kt b/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/IntegrationTestDependencies.kt index 6bb3e32226..efa643390c 100644 --- a/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/IntegrationTestDependencies.kt +++ b/aws/sdk-codegen/src/main/kotlin/software/amazon/smithy/rustsdk/IntegrationTestDependencies.kt @@ -100,7 +100,7 @@ class IntegrationTestDependencies( addDependency(SerdeJson) addDependency(smithyAsync) addDependency(smithyProtocolTestHelpers(codegenContext.runtimeConfig)) - addDependency(smithyRuntime(runtimeConfig).copy(features = setOf("test-util", "wire-mock"), scope = DependencyScope.Dev)) + addDependency(smithyRuntime(runtimeConfig).copy(features = setOf("test-util"), scope = DependencyScope.Dev)) addDependency(smithyRuntimeApiTestUtil(runtimeConfig)) addDependency(smithyTypes) addDependency(Tokio) diff --git a/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/EndpointBuiltInsDecoratorTest.kt b/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/EndpointBuiltInsDecoratorTest.kt index 61e8317919..838aad0f90 100644 --- a/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/EndpointBuiltInsDecoratorTest.kt +++ b/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/EndpointBuiltInsDecoratorTest.kt @@ -129,11 +129,11 @@ class EndpointBuiltInsDecoratorTest { """, "tokio" to CargoDependency.Tokio.toDevDependency().withFeature("rt").withFeature("macros").toType(), "StaticReplayClient" to - CargoDependency.smithyRuntimeTestUtil(codegenContext.runtimeConfig).toType() - .resolve("client::http::test_util::StaticReplayClient"), + CargoDependency.smithyHttpClientTestUtil(codegenContext.runtimeConfig).toType() + .resolve("test_util::StaticReplayClient"), "ReplayEvent" to - CargoDependency.smithyRuntimeTestUtil(codegenContext.runtimeConfig).toType() - .resolve("client::http::test_util::ReplayEvent"), + CargoDependency.smithyHttpClientTestUtil(codegenContext.runtimeConfig).toType() + .resolve("test_util::ReplayEvent"), "SdkBody" to RuntimeType.sdkBody(codegenContext.runtimeConfig), ) } diff --git a/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/HttpRequestCompressionDecoratorTest.kt b/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/HttpRequestCompressionDecoratorTest.kt index 65f439fe17..52b5215d4d 100644 --- a/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/HttpRequestCompressionDecoratorTest.kt +++ b/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/HttpRequestCompressionDecoratorTest.kt @@ -135,7 +135,7 @@ class HttpRequestCompressionDecoratorTest { ##[#{tokio}::test] async fn test_request_compression_isnt_applied_unless_modeled() { - let (http_client, rx) = ::aws_smithy_runtime::client::http::test_util::capture_request(None); + let (http_client, rx) = #{capture_request}(None); let config = $moduleName::Config::builder() .region(Region::from_static("doesntmatter")) .with_test_defaults() @@ -151,7 +151,7 @@ class HttpRequestCompressionDecoratorTest { .await; let request = rx.expect_request(); // Check that the content-encoding header is not set. - assert_eq!(None, request.headers().get(#{http}::header::CONTENT_ENCODING)); + assert_eq!(None, request.headers().get(#{http_1x}::header::CONTENT_ENCODING)); let compressed_body = ByteStream::from(request.into_body()) .collect() @@ -164,7 +164,7 @@ class HttpRequestCompressionDecoratorTest { ##[#{tokio}::test] async fn test_request_compression_can_be_disabled() { - let (http_client, rx) = ::aws_smithy_runtime::client::http::test_util::capture_request(None); + let (http_client, rx) = #{capture_request}(None); let config = $moduleName::Config::builder() .region(Region::from_static("doesntmatter")) .with_test_defaults() @@ -182,7 +182,7 @@ class HttpRequestCompressionDecoratorTest { // Check that the content-encoding header is not set to "gzip" assert_ne!( Some("gzip"), - request.headers().get(#{http}::header::CONTENT_ENCODING) + request.headers().get(#{http_1x}::header::CONTENT_ENCODING) ); let compressed_body = ByteStream::from(request.into_body()) @@ -196,7 +196,7 @@ class HttpRequestCompressionDecoratorTest { ##[#{tokio}::test] async fn test_request_min_size_body_over_minimum() { - let (http_client, rx) = ::aws_smithy_runtime::client::http::test_util::capture_request(None); + let (http_client, rx) = #{capture_request}(None); let config = $moduleName::Config::builder() .region(Region::from_static("doesntmatter")) .with_test_defaults() @@ -215,7 +215,7 @@ class HttpRequestCompressionDecoratorTest { // Check that the content-encoding header is set to "gzip" assert_eq!( Some("gzip"), - request.headers().get(#{http}::header::CONTENT_ENCODING) + request.headers().get(#{http_1x}::header::CONTENT_ENCODING) ); let compressed_body = ByteStream::from(request.into_body()) @@ -229,7 +229,7 @@ class HttpRequestCompressionDecoratorTest { ##[#{tokio}::test] async fn test_request_min_size_body_under_minimum() { - let (http_client, rx) = ::aws_smithy_runtime::client::http::test_util::capture_request(None); + let (http_client, rx) = #{capture_request}(None); let config = $moduleName::Config::builder() .region(Region::from_static("doesntmatter")) .with_test_defaults() @@ -248,7 +248,7 @@ class HttpRequestCompressionDecoratorTest { // Check that the content-encoding header is not set to "gzip" assert_ne!( Some("gzip"), - request.headers().get(#{http}::header::CONTENT_ENCODING) + request.headers().get(#{http_1x}::header::CONTENT_ENCODING) ); let compressed_body = ByteStream::from(request.into_body()) @@ -262,7 +262,7 @@ class HttpRequestCompressionDecoratorTest { ##[#{tokio}::test] async fn test_request_compression_implicitly_enabled() { - let (http_client, rx) = ::aws_smithy_runtime::client::http::test_util::capture_request(None); + let (http_client, rx) = #{capture_request}(None); let config = $moduleName::Config::builder() .region(Region::from_static("doesntmatter")) .with_test_defaults() @@ -280,7 +280,7 @@ class HttpRequestCompressionDecoratorTest { // Check that the content-encoding header is set to "gzip" assert_eq!( Some("gzip"), - request.headers().get(#{http}::header::CONTENT_ENCODING) + request.headers().get(#{http_1x}::header::CONTENT_ENCODING) ); let compressed_body = ByteStream::from(request.into_body()) @@ -294,7 +294,7 @@ class HttpRequestCompressionDecoratorTest { ##[#{tokio}::test] async fn test_request_compression_min_size_default() { - let (http_client, rx) = ::aws_smithy_runtime::client::http::test_util::capture_request(None); + let (http_client, rx) = #{capture_request}(None); let config = $moduleName::Config::builder() .region(Region::from_static("doesntmatter")) .with_test_defaults() @@ -312,7 +312,7 @@ class HttpRequestCompressionDecoratorTest { // Check that the content-encoding header is not set to "gzip" assert_ne!( Some("gzip"), - request.headers().get(#{http}::header::CONTENT_ENCODING) + request.headers().get(#{http_1x}::header::CONTENT_ENCODING) ); let compressed_body = ByteStream::from(request.into_body()) @@ -326,7 +326,7 @@ class HttpRequestCompressionDecoratorTest { ##[#{tokio}::test] async fn test_request_compression_streaming_body() { - let (http_client, rx) = ::aws_smithy_runtime::client::http::test_util::capture_request(None); + let (http_client, rx) = #{capture_request}(None); let config = $moduleName::Config::builder() .region(Region::from_static("doesntmatter")) .with_test_defaults() @@ -356,7 +356,7 @@ class HttpRequestCompressionDecoratorTest { // Check that the content-encoding header is set to "gzip" assert_eq!( Some("gzip"), - request.headers().get(#{http}::header::CONTENT_ENCODING) + request.headers().get(#{http_1x}::header::CONTENT_ENCODING) ); let compressed_body = ByteStream::from(request.into_body()) @@ -376,7 +376,7 @@ class HttpRequestCompressionDecoratorTest { ##[#{tokio}::test] async fn test_compressed_content_length() { - let (http_client, rx) = ::aws_smithy_runtime::client::http::test_util::capture_request(None); + let (http_client, rx) = #{capture_request}(None); let config = $moduleName::Config::builder() .region(Region::from_static("doesntmatter")) .with_test_defaults() @@ -395,7 +395,7 @@ class HttpRequestCompressionDecoratorTest { // Check that the content-length header is set correctly. if let Some(content_length) = request .headers() - .get(#{http}::header::CONTENT_LENGTH) + .get(#{http_1x}::header::CONTENT_LENGTH) .and_then(|len| len.parse::().ok()) { assert_ne!( @@ -405,7 +405,7 @@ class HttpRequestCompressionDecoratorTest { assert_eq!(COMPRESSED_OUTPUT.len(), content_length); } - let (http_client, rx) = ::aws_smithy_runtime::client::http::test_util::capture_request(None); + let (http_client, rx) = #{capture_request}(None); let config = $moduleName::Config::builder() .region(Region::from_static("doesntmatter")) .with_test_defaults() @@ -435,7 +435,7 @@ class HttpRequestCompressionDecoratorTest { assert!( request .headers() - .get(#{http}::header::CONTENT_LENGTH) + .get(#{http_1x}::header::CONTENT_LENGTH) .is_none(), "expected that no content length header is set because the request is streaming." ); @@ -445,7 +445,7 @@ class HttpRequestCompressionDecoratorTest { "ByteStream" to RuntimeType.smithyTypes(rc).resolve("byte_stream::ByteStream"), "Blob" to RuntimeType.smithyTypes(rc).resolve("Blob"), "Region" to AwsRuntimeType.awsTypes(rc).resolve("region::Region"), - "http" to CargoDependency.Http.toType(), + "http_1x" to CargoDependency.Http1x.toType(), "tokio" to CargoDependency.Tokio.toType(), "capture_request" to RuntimeType.captureRequest(rc), "pretty_assertions" to CargoDependency.PrettyAssertions.toType(), diff --git a/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/SigV4AuthDecoratorTest.kt b/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/SigV4AuthDecoratorTest.kt index 3627b41584..88b17a3954 100644 --- a/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/SigV4AuthDecoratorTest.kt +++ b/aws/sdk-codegen/src/test/kotlin/software/amazon/smithy/rustsdk/SigV4AuthDecoratorTest.kt @@ -6,6 +6,7 @@ package software.amazon.smithy.rustsdk import org.junit.jupiter.api.Test import software.amazon.smithy.rust.codegen.core.rustlang.Attribute +import software.amazon.smithy.rust.codegen.core.rustlang.CargoDependency import software.amazon.smithy.rust.codegen.core.rustlang.rustTemplate import software.amazon.smithy.rust.codegen.core.smithy.RuntimeType import software.amazon.smithy.rust.codegen.core.testutil.asSmithyModel @@ -162,11 +163,11 @@ class SigV4AuthDecoratorTest { "ByteStream" to RuntimeType.byteStream(rc), "Credentials" to AwsRuntimeType.awsCredentialTypesTestUtil(rc).resolve("Credentials"), "Region" to AwsRuntimeType.awsTypes(rc).resolve("region::Region"), - "ReplayEvent" to RuntimeType.smithyRuntimeTestUtil(rc).resolve("ReplayEvent"), + "ReplayEvent" to CargoDependency.smithyHttpClientTestUtil(rc).toType().resolve("test_util::ReplayEvent"), "Request" to RuntimeType.HttpRequest, "Response" to RuntimeType.HttpResponse, "SdkBody" to RuntimeType.sdkBody(rc), - "StaticReplayClient" to RuntimeType.smithyRuntimeTestUtil(rc).resolve("StaticReplayClient"), + "StaticReplayClient" to CargoDependency.smithyHttpClientTestUtil(rc).toType().resolve("test_util::StaticReplayClient"), "tracing_subscriber" to RuntimeType.TracingSubscriber, ) } diff --git a/aws/sdk/Cargo.lock b/aws/sdk/Cargo.lock index b7d91b9e8f..391984fded 100644 --- a/aws/sdk/Cargo.lock +++ b/aws/sdk/Cargo.lock @@ -28,9 +28,9 @@ dependencies = [ [[package]] name = "allocator-api2" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45862d1c77f2228b9e10bc609d5bc203d86ebc9b87ad8d5d5167a6c9abf739d9" +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "anes" @@ -283,7 +283,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -300,7 +300,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -327,7 +327,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", @@ -336,8 +336,8 @@ dependencies = [ "fastrand 2.0.2", "futures-util", "hex", - "http 1.1.0", - "hyper-rustls 0.24.2", + "http 1.2.0", + "proc-macro2", "ring", "serde", "serde_json", @@ -391,9 +391,9 @@ version = "0.60.3" [[package]] name = "aws-lc-fips-sys" -version = "0.12.14" +version = "0.12.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8671005a9c1e80bd3dc9aee84c5bfd594d32a3d645fdb56d5d9d5e26daa4c315" +checksum = "df1e8a8e212a7851ef3d4c28cdfc017072bc684f0e0f57c7943ab60f695c3bfb" dependencies = [ "bindgen", "cc", @@ -406,22 +406,21 @@ dependencies = [ [[package]] name = "aws-lc-rs" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe7c2840b66236045acd2607d5866e274380afd87ef99d6226e961e2cb47df45" +checksum = "f47bb8cc16b669d267eeccf585aea077d0882f4777b1c1f740217885d6e6e5a3" dependencies = [ "aws-lc-fips-sys", "aws-lc-sys", - "mirai-annotations", "paste", "zeroize", ] [[package]] name = "aws-lc-sys" -version = "0.23.0" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad3a619a9de81e1d7de1f1186dcba4506ed661a0e483d84410fdef0ee87b2f96" +checksum = "a2101df3813227bbaaaa0b04cd61c534c7954b22bd68d399b440be937dc63ff7" dependencies = [ "bindgen", "cc", @@ -434,16 +433,16 @@ dependencies = [ [[package]] name = "aws-runtime" -version = "1.4.3" +version = "1.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a10d5c055aa540164d9561a0e2e74ad30f0dcf7393c3a92f6733ddf9c5762468" +checksum = "b5ac934720fbb46206292d2c75b57e67acfc56fe7dfd34fb9a02334af08409ea" dependencies = [ "aws-credential-types 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "aws-sigv4 1.2.5", + "aws-sigv4 1.2.6", "aws-smithy-async 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "aws-smithy-eventstream 0.60.5 (registry+https://github.com/rust-lang/crates.io-index)", "aws-smithy-http 0.60.11", - "aws-smithy-runtime 1.7.3", + "aws-smithy-runtime 1.7.4", "aws-smithy-runtime-api 1.7.3", "aws-smithy-types 1.2.9", "aws-types 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -479,7 +478,7 @@ dependencies = [ "fastrand 2.0.2", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "once_cell", @@ -510,7 +509,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-eventstream 0.60.5", "aws-smithy-http 0.62.0", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", @@ -533,7 +532,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -543,7 +542,7 @@ dependencies = [ "fastrand 2.0.2", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "regex-lite", "serde_json", @@ -561,7 +560,7 @@ dependencies = [ "aws-runtime 1.5.0", "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", @@ -585,7 +584,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -596,7 +595,7 @@ dependencies = [ "fastrand 2.0.2", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "regex-lite", "serde_json", @@ -615,7 +614,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-query", "aws-smithy-runtime 1.8.0", @@ -626,7 +625,7 @@ dependencies = [ "fastrand 2.0.2", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "regex-lite", "serde_json", @@ -644,7 +643,7 @@ dependencies = [ "aws-runtime 1.5.0", "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", @@ -669,7 +668,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -679,7 +678,7 @@ dependencies = [ "futures-util", "hex", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "pretty_assertions", "regex-lite", @@ -701,7 +700,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-query", "aws-smithy-runtime 1.8.0", @@ -711,7 +710,7 @@ dependencies = [ "aws-types 1.3.3", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "regex-lite", "serde_json", @@ -730,7 +729,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -739,7 +738,7 @@ dependencies = [ "bytes", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "regex-lite", "serde_json", @@ -759,7 +758,7 @@ dependencies = [ "aws-smithy-eventstream 0.60.5", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -768,7 +767,7 @@ dependencies = [ "bytes", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "regex-lite", "serde_json", @@ -788,7 +787,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -797,7 +796,7 @@ dependencies = [ "bytes", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "once_cell", "regex-lite", @@ -817,7 +816,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -826,7 +825,7 @@ dependencies = [ "bytes", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "regex-lite", "serde_json", @@ -844,7 +843,7 @@ dependencies = [ "aws-runtime 1.5.0", "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", @@ -873,7 +872,7 @@ dependencies = [ "aws-smithy-eventstream 0.60.5", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -888,7 +887,7 @@ dependencies = [ "hex", "hmac", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "lru", @@ -911,19 +910,19 @@ dependencies = [ [[package]] name = "aws-sdk-s3" -version = "1.62.0" +version = "1.65.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83d3a2854c7490b4c63d2b0e8c3976d628c80afa3045d078a715b2edb2ee4e0a" +checksum = "d3ba2c5c0f2618937ce3d4a5ad574b86775576fa24006bcb3128c6e2cbf3c34e" dependencies = [ "aws-credential-types 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "aws-runtime 1.4.3", - "aws-sigv4 1.2.5", + "aws-runtime 1.4.4", + "aws-sigv4 1.2.6", "aws-smithy-async 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "aws-smithy-checksums 0.60.13", "aws-smithy-eventstream 0.60.5 (registry+https://github.com/rust-lang/crates.io-index)", "aws-smithy-http 0.60.11", - "aws-smithy-json 0.60.7 (registry+https://github.com/rust-lang/crates.io-index)", - "aws-smithy-runtime 1.7.3", + "aws-smithy-json 0.61.1 (registry+https://github.com/rust-lang/crates.io-index)", + "aws-smithy-runtime 1.7.4", "aws-smithy-runtime-api 1.7.3", "aws-smithy-types 1.2.9", "aws-smithy-xml 0.60.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -953,7 +952,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -963,7 +962,7 @@ dependencies = [ "fastrand 2.0.2", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "md-5", "once_cell", "proptest", @@ -983,7 +982,7 @@ dependencies = [ "aws-runtime 1.5.0", "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", @@ -1004,7 +1003,7 @@ dependencies = [ "aws-runtime 1.5.0", "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", @@ -1026,7 +1025,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-query", "aws-smithy-runtime 1.8.0", @@ -1036,7 +1035,7 @@ dependencies = [ "aws-types 1.3.3", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "regex-lite", "serde_json", @@ -1055,7 +1054,7 @@ dependencies = [ "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -1065,7 +1064,7 @@ dependencies = [ "fastrand 2.0.2", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "regex-lite", "serde_json", @@ -1083,7 +1082,7 @@ dependencies = [ "aws-runtime 1.5.0", "aws-smithy-async 1.2.1", "aws-smithy-http 0.62.0", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", @@ -1110,7 +1109,7 @@ dependencies = [ "aws-smithy-eventstream 0.60.5", "aws-smithy-http 0.62.0", "aws-smithy-http-client", - "aws-smithy-json 0.60.7", + "aws-smithy-json 0.61.1", "aws-smithy-protocol-test 0.63.0", "aws-smithy-runtime 1.8.0", "aws-smithy-runtime-api 1.7.4", @@ -1121,7 +1120,7 @@ dependencies = [ "futures-util", "hound", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "hyper 0.14.31", "once_cell", "regex-lite", @@ -1137,9 +1136,9 @@ version = "0.60.3" [[package]] name = "aws-sigv4" -version = "1.2.5" +version = "1.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5619742a0d8f253be760bfbb8e8e8368c69e3587e4637af5754e488a611499b1" +checksum = "7d3820e0c08d0737872ff3c7c1f21ebbb6693d832312d6152bf18ef50a5471c2" dependencies = [ "aws-credential-types 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "aws-smithy-eventstream 0.60.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1152,7 +1151,7 @@ dependencies = [ "hex", "hmac", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "p256", "percent-encoding", @@ -1181,7 +1180,7 @@ dependencies = [ "hex-literal", "hmac", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "httparse", "libfuzzer-sys", "once_cell", @@ -1290,7 +1289,7 @@ dependencies = [ "flate2", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -1361,7 +1360,7 @@ dependencies = [ "futures-core", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "hyper 0.14.31", "once_cell", @@ -1388,7 +1387,7 @@ dependencies = [ "bytes", "h2 0.4.7", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -1401,7 +1400,7 @@ dependencies = [ "once_cell", "pin-project-lite", "rustls 0.21.12", - "rustls 0.23.17", + "rustls 0.23.19", "serde", "serde_json", "tokio", @@ -1415,7 +1414,7 @@ version = "0.60.3" [[package]] name = "aws-smithy-json" -version = "0.60.7" +version = "0.61.1" dependencies = [ "aws-smithy-types 1.3.0", "proptest", @@ -1424,9 +1423,9 @@ dependencies = [ [[package]] name = "aws-smithy-json" -version = "0.60.7" +version = "0.61.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4683df9469ef09468dad3473d129960119a0d3593617542b7d52086c8486f2d6" +checksum = "ee4e69cc50921eb913c6b662f8d909131bb3e6ad6cb6090d3a39b66fc5c52095" dependencies = [ "aws-smithy-types 1.2.9", ] @@ -1435,7 +1434,7 @@ dependencies = [ name = "aws-smithy-mocks-experimental" version = "0.2.1" dependencies = [ - "aws-sdk-s3 1.62.0", + "aws-sdk-s3 1.65.0", "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", "tokio", @@ -1487,9 +1486,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime" -version = "1.7.3" +version = "1.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be28bd063fa91fd871d131fc8b68d7cd4c5fa0869bea68daca50dcb1cbd76be2" +checksum = "9f20685047ca9d6f17b994a07f629c813f08b5bce65523e47124879e60103d45" dependencies = [ "aws-smithy-async 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "aws-smithy-http 0.60.11", @@ -1531,7 +1530,7 @@ dependencies = [ "fastrand 2.0.2", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "httparse", @@ -1556,7 +1555,7 @@ dependencies = [ "aws-smithy-types 1.2.9", "bytes", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "pin-project-lite", "tokio", "tracing", @@ -1571,7 +1570,7 @@ dependencies = [ "aws-smithy-types 1.3.0", "bytes", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "pin-project-lite", "proptest", "tokio", @@ -1590,7 +1589,7 @@ dependencies = [ "bytes-utils", "futures-core", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -1617,7 +1616,7 @@ dependencies = [ "criterion", "futures-core", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -1658,7 +1657,7 @@ dependencies = [ "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", "bytes", - "http 1.1.0", + "http 1.2.0", "tracing", "wasi 0.12.1+wasi-0.2.0", ] @@ -1782,7 +1781,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.89", + "syn 2.0.90", "which", ] @@ -1858,9 +1857,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" +checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" [[package]] name = "bytes-utils" @@ -1899,9 +1898,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd9de9f2205d5ef3fd67e685b0df337994ddd4495e2a28d185500d0e1edfea47" +checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc" dependencies = [ "jobserver", "libc", @@ -1972,18 +1971,18 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.21" +version = "4.5.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb3b4b9e5a7c7514dfa52869339ee98b3156b0bfb4e8a77c4ff4babb64b1604f" +checksum = "3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84" dependencies = [ "clap_builder", ] [[package]] name = "clap_builder" -version = "4.5.21" +version = "4.5.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b17a95aa67cc7b5ebd32aa5370189aa0d79069ef1c64ce893bd30fb24bff20ec" +checksum = "30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838" dependencies = [ "anstyle", "clap_lex", @@ -1991,15 +1990,15 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afb84c814227b90d6895e01398aee0d8033c00e7466aca416fb6a8e0eb19d8a7" +checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" [[package]] name = "cmake" -version = "0.1.51" +version = "0.1.52" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a" +checksum = "c682c223677e0e5b6b7f63a64b9351844c3f1b1678a68b7ee617e30fb082620e" dependencies = [ "cc", ] @@ -2222,7 +2221,7 @@ checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -2294,12 +2293,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.9" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -2332,9 +2331,9 @@ dependencies = [ [[package]] name = "event-listener-strategy" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" +checksum = "3c3e4e0dd3673c1139bf041f3008816d9cf2946bbfac2945c09e523b8d7b05b2" dependencies = [ "event-listener 5.3.1", "pin-project-lite", @@ -2471,7 +2470,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -2586,7 +2585,7 @@ dependencies = [ "fnv", "futures-core", "futures-sink", - "http 1.1.0", + "http 1.2.0", "indexmap", "slab", "tokio", @@ -2606,9 +2605,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" dependencies = [ "allocator-api2", "equivalent", @@ -2690,9 +2689,9 @@ dependencies = [ [[package]] name = "http" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" dependencies = [ "bytes", "fnv", @@ -2717,7 +2716,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.1.0", + "http 1.2.0", ] [[package]] @@ -2728,7 +2727,7 @@ checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" dependencies = [ "bytes", "futures-util", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "pin-project-lite", ] @@ -2762,7 +2761,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2 0.5.7", + "socket2 0.5.8", "tokio", "tower-service", "tracing", @@ -2779,7 +2778,7 @@ dependencies = [ "futures-channel", "futures-util", "h2 0.4.7", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "httparse", "httpdate", @@ -2814,14 +2813,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" dependencies = [ "futures-util", - "http 1.1.0", + "http 1.2.0", "hyper 1.5.1", "hyper-util", - "rustls 0.23.17", + "rustls 0.23.19", "rustls-native-certs 0.8.1", "rustls-pki-types", "tokio", - "tokio-rustls 0.26.0", + "tokio-rustls 0.26.1", "tower-service", ] @@ -2834,11 +2833,11 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "hyper 1.5.1", "pin-project-lite", - "socket2 0.5.7", + "socket2 0.5.8", "tokio", "tower-service", "tracing", @@ -2856,9 +2855,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", "hashbrown", @@ -2916,9 +2915,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "540654e97a3f4470a492cd30ff187bc95d89557a903a2bbf112e2fae98104ef2" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "jobserver" @@ -2931,10 +2930,11 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.72" +version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" +checksum = "a865e038f7f6ed956f788f0d7d60c541fff74c7bd74272c5d4cf15c63743e705" dependencies = [ + "once_cell", "wasm-bindgen", ] @@ -2961,25 +2961,26 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.164" +version = "0.2.167" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "433bfe06b8c75da9b2e3fbea6e5329ff87748f0b144ef75306e674c3f6f7c13f" +checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc" [[package]] name = "libfuzzer-sys" -version = "0.4.8" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b9569d2f74e257076d8c6bfa73fb505b46b851e51ddaecc825944aa3bed17fa" +checksum = "a96cfd5557eb82f2b83fed4955246c988d331975a002961b07c81584d107e7f7" dependencies = [ "arbitrary", "cc", + "once_cell", ] [[package]] name = "libloading" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" +checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" dependencies = [ "cfg-if", "windows-targets 0.52.6", @@ -3074,7 +3075,7 @@ checksum = "bd2209fff77f705b00c737016a48e73733d7fbccb8b007194db148f03561fb70" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -3094,22 +3095,15 @@ dependencies = [ [[package]] name = "mio" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ - "hermit-abi 0.3.9", "libc", "wasi 0.11.0+wasi-snapshot-preview1", "windows-sys 0.52.0", ] -[[package]] -name = "mirai-annotations" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9be0862c1b3f26a88803c4a49de6889c10e608b3ee9344e6ef5b45fb37ad3d1" - [[package]] name = "nom" version = "7.1.3" @@ -3391,7 +3385,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" dependencies = [ "proc-macro2", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -3677,9 +3671,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.17" +version = "0.23.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f1a745511c54ba6d4465e8d5dfbd81b45791756de28d4981af70d6dca128f1e" +checksum = "934b404430bb06b3fae2cba809eb45a1ab1aecd64491213d7c3301b88393f8d1" dependencies = [ "aws-lc-rs", "once_cell", @@ -3882,7 +3876,7 @@ checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -3998,9 +3992,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" dependencies = [ "libc", "windows-sys 0.52.0", @@ -4041,9 +4035,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.89" +version = "2.0.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" +checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" dependencies = [ "proc-macro2", "quote", @@ -4080,7 +4074,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -4095,9 +4089,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.36" +version = "0.3.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" dependencies = [ "deranged", "itoa", @@ -4116,9 +4110,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.18" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de" dependencies = [ "num-conv", "time-core", @@ -4151,9 +4145,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.41.1" +version = "1.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cfb5bee7a6a52939ca9224d6ac897bb669134078daa8735560897f69de4d33" +checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" dependencies = [ "backtrace", "bytes", @@ -4162,7 +4156,7 @@ dependencies = [ "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.5.7", + "socket2 0.5.8", "tokio-macros", "windows-sys 0.52.0", ] @@ -4175,7 +4169,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -4190,20 +4184,19 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" dependencies = [ - "rustls 0.23.17", - "rustls-pki-types", + "rustls 0.23.19", "tokio", ] [[package]] name = "tokio-stream" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" +checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" dependencies = [ "futures-core", "pin-project-lite", @@ -4225,9 +4218,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.12" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" +checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078" dependencies = [ "bytes", "futures-core", @@ -4260,9 +4253,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.40" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ "pin-project-lite", "tracing-attributes", @@ -4283,20 +4276,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] name = "tracing-core" -version = "0.1.32" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" dependencies = [ "once_cell", "valuable", @@ -4315,9 +4308,9 @@ dependencies = [ [[package]] name = "tracing-serde" -version = "0.1.3" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +checksum = "704b1aeb7be0d0a84fc9828cae51dab5970fee5088f83d1dd7ee6f6246fc6ff1" dependencies = [ "serde", "tracing-core", @@ -4325,9 +4318,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.18" +version = "0.3.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" dependencies = [ "matchers", "nu-ansi-term", @@ -4362,7 +4355,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04659ddb06c87d233c566112c1c9c5b9e98256d9af50ec3bc9c8327f873a7568" dependencies = [ "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -4514,9 +4507,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" +checksum = "d15e63b4482863c109d70a7b8706c1e364eb6ea449b201a76c5b89cedcec2d5c" dependencies = [ "cfg-if", "once_cell", @@ -4525,36 +4518,37 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" +checksum = "8d36ef12e3aaca16ddd3f67922bc63e48e953f126de60bd33ccc0101ef9998cd" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.45" +version = "0.4.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" +checksum = "9dfaf8f50e5f293737ee323940c7d8b08a66a95a419223d9f41610ca08b0833d" dependencies = [ "cfg-if", "js-sys", + "once_cell", "wasm-bindgen", "web-sys", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" +checksum = "705440e08b42d3e4b36de7d66c944be628d579796b8090bfa3471478a2260051" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -4562,28 +4556,28 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" +checksum = "98c9ae5a76e46f4deecd0f0255cc223cfa18dc9b261213b8aa0c7b36f61b3f1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" +checksum = "6ee99da9c5ba11bd675621338ef6fa52296b76b83305e9b6e5c77d4c286d6d49" [[package]] name = "web-sys" -version = "0.3.72" +version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" +checksum = "a98bc3c33f0fe7e59ad7cd041b89034fa82a7c2d4365ca538dda6cdaf513863c" dependencies = [ "js-sys", "wasm-bindgen", @@ -4825,7 +4819,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] diff --git a/aws/sdk/integration-tests/ec2/Cargo.toml b/aws/sdk/integration-tests/ec2/Cargo.toml index 5738cbaba0..e7d5c7bb56 100644 --- a/aws/sdk/integration-tests/ec2/Cargo.toml +++ b/aws/sdk/integration-tests/ec2/Cargo.toml @@ -11,7 +11,8 @@ aws-credential-types = { path = "../../build/aws-sdk/sdk/aws-credential-types", aws-runtime = { path = "../../build/aws-sdk/sdk/aws-runtime", features = ["test-util"] } aws-smithy-async = { path = "../../build/aws-sdk/sdk/aws-smithy-async", features = ["test-util"] } aws-smithy-runtime = { path = "../../build/aws-sdk/sdk/aws-smithy-runtime", features = ["client", "test-util"] } -aws-smithy-http-client = { path = "../../build/aws-sdk/sdk/aws-smithy-http-client", features = ["test-util"] } +# TODO(hyper1) - remove legacy-test-util feature by providing an http 1.x answer to take_requests() function +aws-smithy-http-client = { path = "../../build/aws-sdk/sdk/aws-smithy-http-client", features = ["test-util", "legacy-test-util"] } aws-smithy-runtime-api = { path = "../../build/aws-sdk/sdk/aws-smithy-runtime-api", features = ["client", "http-1x"] } aws-smithy-types = { path = "../../build/aws-sdk/sdk/aws-smithy-types" } aws-sdk-ec2 = { path = "../../build/aws-sdk/sdk/ec2", features = ["behavior-version-latest", "test-util"] } diff --git a/aws/sdk/integration-tests/no-default-features/tests/client-construction.rs b/aws/sdk/integration-tests/no-default-features/tests/client-construction.rs index 0d7be1625f..ac163c6070 100644 --- a/aws/sdk/integration-tests/no-default-features/tests/client-construction.rs +++ b/aws/sdk/integration-tests/no-default-features/tests/client-construction.rs @@ -14,7 +14,7 @@ use aws_smithy_http_client::test_util::infallible_client_fn; use aws_sdk_s3::error::DisplayErrorContext; use aws_smithy_async::rt::sleep::AsyncSleep; -use aws_smithy_runtime::client::http::test_util::capture_request; +use aws_smithy_http_client::test_util::capture_request; use aws_smithy_runtime::test_util::capture_test_logs::capture_test_logs; use std::time::Duration; @@ -23,7 +23,7 @@ use std::time::Duration; // the connector being enabled transitively #[tokio::test] #[should_panic( - expected = "Enable the `rustls` crate feature or configure a HTTP client to fix this." + expected = "Enable the `default-http-connector` crate feature or configure an HTTP client to fix this." )] async fn test_clients_from_sdk_config() { aws_config::load_defaults(BehaviorVersion::latest()).await; @@ -58,8 +58,8 @@ async fn test_clients_from_service_config() { .expect_err("it should fail to send a request because there is no HTTP client"); let msg = format!("{}", DisplayErrorContext(err)); assert!( - msg.contains("No HTTP client was available to send this request. Enable the `rustls` crate feature or configure a HTTP client to fix this."), - "expected '{msg}' to contain 'No HTTP client was available to send this request. Enable the `rustls` crate feature or set a HTTP client to fix this.'" + msg.contains("No HTTP client was available to send this request. Enable the `default-http-connector` crate feature or configure an HTTP client to fix this."), + "expected '{msg}' to contain 'No HTTP client was available to send this request. Enable the `default-http-connector` crate feature or set an HTTP client to fix this.'" ); } diff --git a/aws/sdk/integration-tests/s3/tests/business_metrics.rs b/aws/sdk/integration-tests/s3/tests/business_metrics.rs index f044746850..2fc8616d58 100644 --- a/aws/sdk/integration-tests/s3/tests/business_metrics.rs +++ b/aws/sdk/integration-tests/s3/tests/business_metrics.rs @@ -12,7 +12,7 @@ use aws_sdk_s3::{ primitives::ByteStream, Client, Config, }; -use aws_smithy_runtime::client::http::test_util::capture_request; +use aws_smithy_http_client::test_util::capture_request; #[derive(Debug)] struct TransferManagerFeatureInterceptor; diff --git a/aws/sdk/integration-tests/s3/tests/timeouts.rs b/aws/sdk/integration-tests/s3/tests/timeouts.rs index f89a0b7fcb..14e6f0d54b 100644 --- a/aws/sdk/integration-tests/s3/tests/timeouts.rs +++ b/aws/sdk/integration-tests/s3/tests/timeouts.rs @@ -194,7 +194,7 @@ async fn test_connect_timeout() { Err(err) => { let message = format!("{}", DisplayErrorContext(&err)); let expected = - "timeout: error trying to connect: HTTP connect timeout occurred after 300ms"; + "timeout: client error (Connect): HTTP connect timeout occurred after 300ms"; assert!( message.contains(expected), "expected '{message}' to contain '{expected}'" diff --git a/codegen-client/src/main/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/FluentClientDecorator.kt b/codegen-client/src/main/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/FluentClientDecorator.kt index 8a57a5996e..077a60dc7e 100644 --- a/codegen-client/src/main/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/FluentClientDecorator.kt +++ b/codegen-client/src/main/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/FluentClientDecorator.kt @@ -51,7 +51,12 @@ class FluentClientDecorator : ClientCodegenDecorator { customizations = listOf(GenericFluentClient(codegenContext)), ).render(rustCrate) - rustCrate.mergeFeature(Feature("rustls", default = true, listOf("aws-smithy-runtime/tls-rustls"))) + // For backwards compat reasons we have to leave this feature as `rustls` which really historically was + // used to enable the `default_http_client` plugin to work (as rustls feature meant enabling both connector-hyper-0-14 + rustls) + // + // When we moved to hyper-1.x as default we re-purposed this feature flag to still (1) enable a default HTTP + // client and (2) still mean rustls (albeit now with aws-lc instead of ring) + rustCrate.mergeFeature(Feature("rustls", default = true, listOf("aws-smithy-runtime/default-http-connector"))) } override fun libRsCustomizations( diff --git a/codegen-client/src/main/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/protocol/ClientProtocolTestGenerator.kt b/codegen-client/src/main/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/protocol/ClientProtocolTestGenerator.kt index 28a448b3c9..559db906e1 100644 --- a/codegen-client/src/main/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/protocol/ClientProtocolTestGenerator.kt +++ b/codegen-client/src/main/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/protocol/ClientProtocolTestGenerator.kt @@ -199,8 +199,8 @@ class ClientProtocolTestGenerator( """, "capture_request" to - CargoDependency.smithyRuntimeTestUtil(rc).toType() - .resolve("client::http::test_util::capture_request"), + CargoDependency.smithyHttpClientTestUtil(rc).toType() + .resolve("test_util::capture_request"), "config" to ClientRustModule.config, "customParams" to customParams, ) diff --git a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/customizations/SensitiveOutputDecoratorTest.kt b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/customizations/SensitiveOutputDecoratorTest.kt index e78e84e484..fca971abd9 100644 --- a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/customizations/SensitiveOutputDecoratorTest.kt +++ b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/customizations/SensitiveOutputDecoratorTest.kt @@ -23,6 +23,7 @@ class SensitiveOutputDecoratorTest { .resolve("test_util::capture_test_logs::capture_test_logs"), "capture_request" to RuntimeType.captureRequest(runtimeConfig), "SdkBody" to RuntimeType.sdkBody(runtimeConfig), + "http_1x" to CargoDependency.Http1x.toType(), ) private val model = @@ -59,7 +60,7 @@ class SensitiveOutputDecoratorTest { async fn redacting_sensitive_response_body() { let (_logs, logs_rx) = #{capture_test_logs}(); let (http_client, _r) = #{capture_request}(Some( - http::Response::builder() + #{http_1x}::Response::builder() .status(200) .body(#{SdkBody}::from("")) .unwrap(), diff --git a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/endpoint/EndpointsDecoratorTest.kt b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/endpoint/EndpointsDecoratorTest.kt index 08c57cda8b..1e334ec47c 100644 --- a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/endpoint/EndpointsDecoratorTest.kt +++ b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/endpoint/EndpointsDecoratorTest.kt @@ -307,8 +307,8 @@ class EndpointsDecoratorTest { } """, "NeverClient" to - CargoDependency.smithyRuntimeTestUtil(clientCodegenContext.runtimeConfig) - .toType().resolve("client::http::test_util::NeverClient"), + CargoDependency.smithyHttpClientTestUtil(clientCodegenContext.runtimeConfig) + .toType().resolve("test_util::NeverClient"), "TokioSleep" to CargoDependency.smithyAsync(clientCodegenContext.runtimeConfig) .withFeature("rt-tokio").toType().resolve("rt::sleep::TokioSleep"), diff --git a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/ConfigOverrideRuntimePluginGeneratorTest.kt b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/ConfigOverrideRuntimePluginGeneratorTest.kt index fb1130784d..be72207c69 100644 --- a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/ConfigOverrideRuntimePluginGeneratorTest.kt +++ b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/ConfigOverrideRuntimePluginGeneratorTest.kt @@ -135,8 +135,8 @@ internal class ConfigOverrideRuntimePluginGeneratorTest { "AsyncSleep" to RuntimeType.smithyAsync(runtimeConfig).resolve("rt::sleep::AsyncSleep"), "capture_request" to RuntimeType.captureRequest(runtimeConfig), "NeverClient" to - CargoDependency.smithyRuntimeTestUtil(runtimeConfig).toType() - .resolve("client::http::test_util::NeverClient"), + CargoDependency.smithyHttpClientTestUtil(runtimeConfig).toType() + .resolve("test_util::NeverClient"), "Timeout" to RuntimeType.smithyAsync(runtimeConfig).resolve("future::timeout::Timeout"), "TokioSleep" to CargoDependency.smithyAsync(runtimeConfig).withFeature("rt-tokio") diff --git a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/EndpointTraitBindingsTest.kt b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/EndpointTraitBindingsTest.kt index 1b845677ac..2fb08ddd8d 100644 --- a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/EndpointTraitBindingsTest.kt +++ b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/EndpointTraitBindingsTest.kt @@ -205,7 +205,7 @@ internal class EndpointTraitBindingsTest { } let (http_client, _r) = capture_request(Some( - http::Response::builder() + #{http_1x}::Response::builder() .status(200) .body(SdkBody::from("")) .unwrap(), @@ -249,8 +249,9 @@ internal class EndpointTraitBindingsTest { } """, "capture_request" to - CargoDependency.smithyRuntimeTestUtil(clientCodegenContext.runtimeConfig) - .toType().resolve("client::http::test_util::capture_request"), + CargoDependency.smithyHttpClientTestUtil(clientCodegenContext.runtimeConfig) + .toType().resolve("test_util::capture_request"), + "http_1x" to CargoDependency.Http1x.toType(), ) } } diff --git a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/CustomizableOperationGeneratorTest.kt b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/CustomizableOperationGeneratorTest.kt index 30090104f9..867480e07a 100644 --- a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/CustomizableOperationGeneratorTest.kt +++ b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/CustomizableOperationGeneratorTest.kt @@ -53,8 +53,8 @@ class CustomizableOperationGeneratorTest { } """, "NeverClient" to - CargoDependency.smithyRuntimeTestUtil(codegenContext.runtimeConfig).toType() - .resolve("client::http::test_util::NeverClient"), + CargoDependency.smithyHttpClientTestUtil(codegenContext.runtimeConfig).toType() + .resolve("test_util::NeverClient"), ) } } diff --git a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/FluentClientGeneratorTest.kt b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/FluentClientGeneratorTest.kt index b300dfa8c2..1b958727af 100644 --- a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/FluentClientGeneratorTest.kt +++ b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/generators/client/FluentClientGeneratorTest.kt @@ -87,8 +87,8 @@ class FluentClientGeneratorTest { } """, "NeverClient" to - CargoDependency.smithyRuntimeTestUtil(codegenContext.runtimeConfig).toType() - .resolve("client::http::test_util::NeverClient"), + CargoDependency.smithyHttpClientTestUtil(codegenContext.runtimeConfig).toType() + .resolve("test_util::NeverClient"), ) } } @@ -116,8 +116,8 @@ class FluentClientGeneratorTest { } """, "NeverClient" to - CargoDependency.smithyRuntimeTestUtil(codegenContext.runtimeConfig).toType() - .resolve("client::http::test_util::NeverClient"), + CargoDependency.smithyHttpClientTestUtil(codegenContext.runtimeConfig).toType() + .resolve("test_util::NeverClient"), ) } } diff --git a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/protocols/AwsQueryCompatibleTest.kt b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/protocols/AwsQueryCompatibleTest.kt index 7de72b7d8f..2e0643011a 100644 --- a/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/protocols/AwsQueryCompatibleTest.kt +++ b/codegen-client/src/test/kotlin/software/amazon/smithy/rust/codegen/client/smithy/protocols/AwsQueryCompatibleTest.kt @@ -74,11 +74,11 @@ class AwsQueryCompatibleTest { tokioTest("should_parse_code_and_type_fields") { rustTemplate( """ - let response = |_: http::Request<#{SdkBody}>| { - http::Response::builder() + let response = |_: #{http_1x}::Request<#{SdkBody}>| { + #{http_1x}::Response::builder() .header( "x-amzn-query-error", - http::HeaderValue::from_static("AWS.SimpleQueueService.NonExistentQueue;Sender"), + #{http_1x}::HeaderValue::from_static("AWS.SimpleQueueService.NonExistentQueue;Sender"), ) .status(400) .body( @@ -107,8 +107,9 @@ class AwsQueryCompatibleTest { *RuntimeType.preludeScope, "SdkBody" to RuntimeType.sdkBody(context.runtimeConfig), "infallible_client_fn" to - CargoDependency.smithyRuntimeTestUtil(context.runtimeConfig) - .toType().resolve("client::http::test_util::infallible_client_fn"), + CargoDependency.smithyHttpClientTestUtil(context.runtimeConfig) + .toType().resolve("test_util::infallible_client_fn"), + "http_1x" to CargoDependency.Http1x.toType(), ) } } @@ -126,8 +127,8 @@ class AwsQueryCompatibleTest { tokioTest("should_parse_code_from_payload") { rustTemplate( """ - let response = |_: http::Request<#{SdkBody}>| { - http::Response::builder() + let response = |_: #{http_1x}::Request<#{SdkBody}>| { + #{http_1x}::Response::builder() .status(400) .body( #{SdkBody}::from( @@ -152,8 +153,9 @@ class AwsQueryCompatibleTest { *RuntimeType.preludeScope, "SdkBody" to RuntimeType.sdkBody(context.runtimeConfig), "infallible_client_fn" to - CargoDependency.smithyRuntimeTestUtil(context.runtimeConfig) - .toType().resolve("client::http::test_util::infallible_client_fn"), + CargoDependency.smithyHttpClientTestUtil(context.runtimeConfig) + .toType().resolve("test_util::infallible_client_fn"), + "http_1x" to CargoDependency.Http1x.toType(), ) } } diff --git a/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/rustlang/CargoDependency.kt b/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/rustlang/CargoDependency.kt index c32858dde9..a8836bed5b 100644 --- a/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/rustlang/CargoDependency.kt +++ b/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/rustlang/CargoDependency.kt @@ -186,7 +186,7 @@ fun InlineDependency.toType() = RuntimeType(module.fullyQualifiedPath(), this) data class Feature(val name: String, val default: Boolean, val deps: List) -val DEV_ONLY_FEATURES = setOf("test-util") +val DEV_ONLY_FEATURES = setOf("test-util", "legacy-test-util") /** * A dependency on an internal or external Cargo crate @@ -365,6 +365,9 @@ data class CargoDependency( fun smithyHttpClient(runtimeConfig: RuntimeConfig) = runtimeConfig.smithyRuntimeCrate("smithy-http-client") + fun smithyHttpClientTestUtil(runtimeConfig: RuntimeConfig) = + smithyHttpClient(runtimeConfig).toDevDependency().withFeature("test-util") + fun smithyJson(runtimeConfig: RuntimeConfig) = runtimeConfig.smithyRuntimeCrate("smithy-json") fun smithyProtocolTestHelpers(runtimeConfig: RuntimeConfig) = diff --git a/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/smithy/RuntimeType.kt b/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/smithy/RuntimeType.kt index 7ad456b02a..5cd8b56481 100644 --- a/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/smithy/RuntimeType.kt +++ b/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/smithy/RuntimeType.kt @@ -498,11 +498,8 @@ data class RuntimeType(val path: String, val dependency: RustDependency? = null) return smithyTypes(runtimeConfig).resolve("date_time::Format::$timestampFormat") } - fun smithyRuntimeTestUtil(runtimeConfig: RuntimeConfig) = - CargoDependency.smithyRuntimeTestUtil(runtimeConfig).toType().resolve("client::http::test_util") - fun captureRequest(runtimeConfig: RuntimeConfig) = - smithyRuntimeTestUtil(runtimeConfig).resolve("capture_request") + CargoDependency.smithyHttpClientTestUtil(runtimeConfig).toType().resolve("test_util::capture_request") fun forInlineDependency(inlineDependency: InlineDependency) = RuntimeType("crate::${inlineDependency.name}", inlineDependency) diff --git a/design/src/rfcs/rfc0037_http_wrapper.md b/design/src/rfcs/rfc0037_http_wrapper.md index 6c1e1ac14c..e8322a1a5d 100644 --- a/design/src/rfcs/rfc0037_http_wrapper.md +++ b/design/src/rfcs/rfc0037_http_wrapper.md @@ -95,7 +95,7 @@ This also enables supporting request extensions for different downstream provide Proposed Implementation of `request` ```rust,ignore -{{#include ../../../rust-runtime/aws-smithy-runtime-api/src/client/http/request.rs}} +{{#include ../../../rust-runtime/aws-smithy-runtime-api/src/http/request.rs}} ``` diff --git a/design/src/server/instrumentation.md b/design/src/server/instrumentation.md index ac5c2c56a4..7646add98f 100644 --- a/design/src/server/instrumentation.md +++ b/design/src/server/instrumentation.md @@ -19,7 +19,7 @@ RUST_LOG=aws_smithy_http_server=warn,aws_smithy_http_server_python=error and -```rust +```rust,ignore # extern crate tracing_subscriber; # extern crate tracing; # use tracing_subscriber::filter; @@ -88,7 +88,7 @@ let app = PokemonService::builder(config) The Pokémon service example, located at `/examples/pokemon-service`, sets up a `tracing` `Subscriber` as follows: -```rust +```rust,ignore # extern crate tracing_subscriber; use tracing_subscriber::{prelude::*, EnvFilter}; diff --git a/design/src/server/middleware.md b/design/src/server/middleware.md index 67802317bc..2bac52c9e6 100644 --- a/design/src/server/middleware.md +++ b/design/src/server/middleware.md @@ -58,7 +58,7 @@ pub struct NewService { and a complementary -```rust +```rust,ignore # extern crate tower; # pub struct NewService { inner: S } use tower::{Layer, Service}; @@ -137,7 +137,7 @@ where `UpgradeLayer` is the `Layer` converting Smithy model structures to HTTP s The output of the Smithy service builder provides the user with a `Service` implementation. A `Layer` can be applied around the entire `Service`. -```rust,no_run +```rust,ignore # extern crate aws_smithy_http_server; # extern crate pokemon_service_server_sdk; # extern crate tower; @@ -175,7 +175,7 @@ A _single_ layer can be applied to _all_ routes inside the `Router`. This exists as a method on the `PokemonServiceConfig` builder object, which is passed into the service builder. -```rust,no_run +```rust,ignore # extern crate tower; # extern crate pokemon_service_server_sdk; # extern crate aws_smithy_http_server; @@ -209,7 +209,7 @@ Note that requests pass through this middleware immediately _after_ routing succ A "HTTP layer" can be applied to specific operations. -```rust,no_run +```rust,ignore # extern crate tower; # extern crate pokemon_service_server_sdk; # extern crate aws_smithy_http_server; @@ -253,7 +253,7 @@ This middleware transforms the operations HTTP requests and responses. A "model layer" can be applied to specific operations. -```rust,no_run +```rust,ignore # extern crate tower; # extern crate pokemon_service_server_sdk; # extern crate aws_smithy_http_server; @@ -296,7 +296,7 @@ Suppose we want to apply a different `Layer` to every operation. In this case, p Consider the following middleware: -```rust,no_run +```rust,ignore # extern crate aws_smithy_http_server; # extern crate tower; use aws_smithy_http_server::shape_id::ShapeId; diff --git a/examples/pokemon-service-common/Cargo.toml b/examples/pokemon-service-common/Cargo.toml index d7b3f5015e..04cf0e8c1f 100644 --- a/examples/pokemon-service-common/Cargo.toml +++ b/examples/pokemon-service-common/Cargo.toml @@ -16,7 +16,7 @@ tokio = { version = "1", default-features = false, features = ["time"] } tower = "0.4" # Local paths -aws-smithy-runtime = { path = "../../rust-runtime/aws-smithy-runtime", features = ["client", "connector-hyper-0-14-x"] } +aws-smithy-runtime = { path = "../../rust-runtime/aws-smithy-runtime", features = ["client", "connector-hyper-0-14-x", "tls-rustls"] } aws-smithy-runtime-api = { path = "../../rust-runtime/aws-smithy-runtime-api", features = ["client"] } pokemon-service-client = { path = "../pokemon-service-client/", features = [ "behavior-version-latest", diff --git a/rust-runtime/Cargo.lock b/rust-runtime/Cargo.lock index e717457a9d..c0c123d1df 100644 --- a/rust-runtime/Cargo.lock +++ b/rust-runtime/Cargo.lock @@ -28,9 +28,9 @@ dependencies = [ [[package]] name = "allocator-api2" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45862d1c77f2228b9e10bc609d5bc203d86ebc9b87ad8d5d5167a6c9abf739d9" +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "anes" @@ -100,7 +100,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -140,9 +140,9 @@ dependencies = [ [[package]] name = "aws-lc-fips-sys" -version = "0.12.14" +version = "0.12.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8671005a9c1e80bd3dc9aee84c5bfd594d32a3d645fdb56d5d9d5e26daa4c315" +checksum = "df1e8a8e212a7851ef3d4c28cdfc017072bc684f0e0f57c7943ab60f695c3bfb" dependencies = [ "bindgen", "cc", @@ -155,22 +155,21 @@ dependencies = [ [[package]] name = "aws-lc-rs" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe7c2840b66236045acd2607d5866e274380afd87ef99d6226e961e2cb47df45" +checksum = "f47bb8cc16b669d267eeccf585aea077d0882f4777b1c1f740217885d6e6e5a3" dependencies = [ "aws-lc-fips-sys", "aws-lc-sys", - "mirai-annotations", "paste", "zeroize", ] [[package]] name = "aws-lc-sys" -version = "0.23.0" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad3a619a9de81e1d7de1f1186dcba4506ed661a0e483d84410fdef0ee87b2f96" +checksum = "a2101df3813227bbaaaa0b04cd61c534c7954b22bd68d399b440be937dc63ff7" dependencies = [ "bindgen", "cc", @@ -183,16 +182,16 @@ dependencies = [ [[package]] name = "aws-runtime" -version = "1.4.3" +version = "1.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a10d5c055aa540164d9561a0e2e74ad30f0dcf7393c3a92f6733ddf9c5762468" +checksum = "b5ac934720fbb46206292d2c75b57e67acfc56fe7dfd34fb9a02334af08409ea" dependencies = [ "aws-credential-types", "aws-sigv4", "aws-smithy-async 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "aws-smithy-eventstream 0.60.5 (registry+https://github.com/rust-lang/crates.io-index)", "aws-smithy-http 0.60.11", - "aws-smithy-runtime 1.7.3", + "aws-smithy-runtime 1.7.4", "aws-smithy-runtime-api 1.7.3", "aws-smithy-types 1.2.9", "aws-types", @@ -209,9 +208,9 @@ dependencies = [ [[package]] name = "aws-sdk-s3" -version = "1.62.0" +version = "1.65.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83d3a2854c7490b4c63d2b0e8c3976d628c80afa3045d078a715b2edb2ee4e0a" +checksum = "d3ba2c5c0f2618937ce3d4a5ad574b86775576fa24006bcb3128c6e2cbf3c34e" dependencies = [ "aws-credential-types", "aws-runtime", @@ -220,8 +219,8 @@ dependencies = [ "aws-smithy-checksums 0.60.13", "aws-smithy-eventstream 0.60.5 (registry+https://github.com/rust-lang/crates.io-index)", "aws-smithy-http 0.60.11", - "aws-smithy-json 0.60.7", - "aws-smithy-runtime 1.7.3", + "aws-smithy-json 0.61.1 (registry+https://github.com/rust-lang/crates.io-index)", + "aws-smithy-runtime 1.7.4", "aws-smithy-runtime-api 1.7.3", "aws-smithy-types 1.2.9", "aws-smithy-xml 0.60.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -243,9 +242,9 @@ dependencies = [ [[package]] name = "aws-sigv4" -version = "1.2.5" +version = "1.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5619742a0d8f253be760bfbb8e8e8368c69e3587e4637af5754e488a611499b1" +checksum = "7d3820e0c08d0737872ff3c7c1f21ebbb6693d832312d6152bf18ef50a5471c2" dependencies = [ "aws-credential-types", "aws-smithy-eventstream 0.60.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -258,7 +257,7 @@ dependencies = [ "hex", "hmac", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "once_cell", "p256", "percent-encoding", @@ -360,7 +359,7 @@ dependencies = [ "flate2", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -431,7 +430,7 @@ dependencies = [ "futures-core", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "hyper 0.14.31", "once_cell", @@ -458,7 +457,7 @@ dependencies = [ "bytes", "h2 0.4.7", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -467,11 +466,11 @@ dependencies = [ "hyper-rustls 0.24.2", "hyper-rustls 0.27.3", "hyper-util", - "indexmap 2.6.0", + "indexmap 2.7.0", "once_cell", "pin-project-lite", "rustls 0.21.12", - "rustls 0.23.17", + "rustls 0.23.19", "serde", "serde_json", "tokio", @@ -555,20 +554,20 @@ version = "0.60.3" [[package]] name = "aws-smithy-json" -version = "0.60.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4683df9469ef09468dad3473d129960119a0d3593617542b7d52086c8486f2d6" +version = "0.61.1" dependencies = [ - "aws-smithy-types 1.2.9", + "aws-smithy-types 1.3.0", + "proptest", + "serde_json", ] [[package]] name = "aws-smithy-json" version = "0.61.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee4e69cc50921eb913c6b662f8d909131bb3e6ad6cb6090d3a39b66fc5c52095" dependencies = [ - "aws-smithy-types 1.3.0", - "proptest", - "serde_json", + "aws-smithy-types 1.2.9", ] [[package]] @@ -627,9 +626,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime" -version = "1.7.3" +version = "1.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be28bd063fa91fd871d131fc8b68d7cd4c5fa0869bea68daca50dcb1cbd76be2" +checksum = "9f20685047ca9d6f17b994a07f629c813f08b5bce65523e47124879e60103d45" dependencies = [ "aws-smithy-async 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "aws-smithy-http 0.60.11", @@ -645,7 +644,7 @@ dependencies = [ "httparse", "hyper 0.14.31", "hyper-rustls 0.24.2", - "indexmap 2.6.0", + "indexmap 2.7.0", "once_cell", "pin-project-lite", "pin-utils", @@ -671,7 +670,7 @@ dependencies = [ "fastrand", "futures-util", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "httparse", @@ -696,7 +695,7 @@ dependencies = [ "aws-smithy-types 1.2.9", "bytes", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "pin-project-lite", "tokio", "tracing", @@ -711,7 +710,7 @@ dependencies = [ "aws-smithy-types 1.3.0", "bytes", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "pin-project-lite", "proptest", "tokio", @@ -730,7 +729,7 @@ dependencies = [ "bytes-utils", "futures-core", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -757,7 +756,7 @@ dependencies = [ "criterion", "futures-core", "http 0.2.12", - "http 1.1.0", + "http 1.2.0", "http-body 0.4.6", "http-body 1.0.1", "http-body-util", @@ -798,7 +797,7 @@ dependencies = [ "aws-smithy-runtime-api 1.7.4", "aws-smithy-types 1.3.0", "bytes", - "http 1.1.0", + "http 1.2.0", "tracing", "wasi 0.12.1+wasi-0.2.0", ] @@ -926,7 +925,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.89", + "syn 2.0.90", "which", ] @@ -989,9 +988,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" +checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" dependencies = [ "serde", ] @@ -1033,9 +1032,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd9de9f2205d5ef3fd67e685b0df337994ddd4495e2a28d185500d0e1edfea47" +checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc" dependencies = [ "jobserver", "libc", @@ -1121,21 +1120,21 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.21" +version = "4.5.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb3b4b9e5a7c7514dfa52869339ee98b3156b0bfb4e8a77c4ff4babb64b1604f" +checksum = "3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84" dependencies = [ "clap_builder", ] [[package]] name = "clap_builder" -version = "4.5.21" +version = "4.5.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b17a95aa67cc7b5ebd32aa5370189aa0d79069ef1c64ce893bd30fb24bff20ec" +checksum = "30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838" dependencies = [ "anstyle", - "clap_lex 0.7.3", + "clap_lex 0.7.4", ] [[package]] @@ -1149,15 +1148,15 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afb84c814227b90d6895e01398aee0d8033c00e7466aca416fb6a8e0eb19d8a7" +checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" [[package]] name = "cmake" -version = "0.1.51" +version = "0.1.52" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a" +checksum = "c682c223677e0e5b6b7f63a64b9351844c3f1b1678a68b7ee617e30fb082620e" dependencies = [ "cc", ] @@ -1239,7 +1238,7 @@ dependencies = [ "anes", "cast", "ciborium", - "clap 4.5.21", + "clap 4.5.23", "criterion-plot", "is-terminal", "itertools 0.10.5", @@ -1371,7 +1370,7 @@ checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -1452,12 +1451,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.9" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -1587,7 +1586,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -1676,7 +1675,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.6.0", + "indexmap 2.7.0", "slab", "tokio", "tokio-util", @@ -1694,8 +1693,8 @@ dependencies = [ "fnv", "futures-core", "futures-sink", - "http 1.1.0", - "indexmap 2.6.0", + "http 1.2.0", + "indexmap 2.7.0", "slab", "tokio", "tokio-util", @@ -1720,9 +1719,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] name = "hashbrown" -version = "0.15.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" dependencies = [ "allocator-api2", "equivalent", @@ -1787,9 +1786,9 @@ dependencies = [ [[package]] name = "http" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" dependencies = [ "bytes", "fnv", @@ -1814,7 +1813,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.1.0", + "http 1.2.0", ] [[package]] @@ -1825,7 +1824,7 @@ checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" dependencies = [ "bytes", "futures-util", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "pin-project-lite", ] @@ -1892,7 +1891,7 @@ dependencies = [ "futures-channel", "futures-util", "h2 0.4.7", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "httparse", "httpdate", @@ -1926,14 +1925,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" dependencies = [ "futures-util", - "http 1.1.0", + "http 1.2.0", "hyper 1.5.1", "hyper-util", - "rustls 0.23.17", + "rustls 0.23.19", "rustls-native-certs 0.8.1", "rustls-pki-types", "tokio", - "tokio-rustls 0.26.0", + "tokio-rustls 0.26.1", "tower-service", ] @@ -1946,7 +1945,7 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.1.0", + "http 1.2.0", "http-body 1.0.1", "hyper 1.5.1", "pin-project-lite", @@ -1978,12 +1977,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" dependencies = [ "equivalent", - "hashbrown 0.15.1", + "hashbrown 0.15.2", "serde", ] @@ -2058,9 +2057,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "540654e97a3f4470a492cd30ff187bc95d89557a903a2bbf112e2fae98104ef2" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "jobserver" @@ -2073,10 +2072,11 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.72" +version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" +checksum = "a865e038f7f6ed956f788f0d7d60c541fff74c7bd74272c5d4cf15c63743e705" dependencies = [ + "once_cell", "wasm-bindgen", ] @@ -2154,15 +2154,15 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.164" +version = "0.2.167" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "433bfe06b8c75da9b2e3fbea6e5329ff87748f0b144ef75306e674c3f6f7c13f" +checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc" [[package]] name = "libloading" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" +checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" dependencies = [ "cfg-if", "windows-targets", @@ -2202,7 +2202,7 @@ version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" dependencies = [ - "hashbrown 0.15.1", + "hashbrown 0.15.2", ] [[package]] @@ -2263,7 +2263,7 @@ checksum = "bd2209fff77f705b00c737016a48e73733d7fbccb8b007194db148f03561fb70" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -2283,22 +2283,15 @@ dependencies = [ [[package]] name = "mio" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ - "hermit-abi 0.3.9", "libc", "wasi 0.11.0+wasi-snapshot-preview1", "windows-sys 0.52.0", ] -[[package]] -name = "mirai-annotations" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9be0862c1b3f26a88803c4a49de6889c10e608b3ee9344e6ef5b45fb37ad3d1" - [[package]] name = "nom" version = "7.1.3" @@ -2492,7 +2485,7 @@ checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -2577,7 +2570,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" dependencies = [ "proc-macro2", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -2975,9 +2968,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.17" +version = "0.23.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f1a745511c54ba6d4465e8d5dfbd81b45791756de28d4981af70d6dca128f1e" +checksum = "934b404430bb06b3fae2cba809eb45a1ab1aecd64491213d7c3301b88393f8d1" dependencies = [ "aws-lc-rs", "once_cell", @@ -3180,7 +3173,7 @@ checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -3189,7 +3182,7 @@ version = "1.0.133" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377" dependencies = [ - "indexmap 2.6.0", + "indexmap 2.7.0", "itoa", "memchr", "ryu", @@ -3302,9 +3295,9 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "socket2" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" dependencies = [ "libc", "windows-sys 0.52.0", @@ -3357,9 +3350,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.89" +version = "2.0.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" +checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" dependencies = [ "proc-macro2", "quote", @@ -3417,7 +3410,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -3432,9 +3425,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.36" +version = "0.3.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" dependencies = [ "deranged", "itoa", @@ -3453,9 +3446,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.18" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de" dependencies = [ "num-conv", "time-core", @@ -3502,9 +3495,9 @@ dependencies = [ [[package]] name = "tokio" -version = "1.41.1" +version = "1.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cfb5bee7a6a52939ca9224d6ac897bb669134078daa8735560897f69de4d33" +checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" dependencies = [ "backtrace", "bytes", @@ -3526,7 +3519,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -3541,20 +3534,19 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" dependencies = [ - "rustls 0.23.17", - "rustls-pki-types", + "rustls 0.23.19", "tokio", ] [[package]] name = "tokio-stream" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" +checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" dependencies = [ "futures-core", "pin-project-lite", @@ -3576,9 +3568,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.12" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" +checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078" dependencies = [ "bytes", "futures-core", @@ -3659,9 +3651,9 @@ dependencies = [ [[package]] name = "tracing" -version = "0.1.40" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ "log", "pin-project-lite", @@ -3683,20 +3675,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] name = "tracing-core" -version = "0.1.32" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" dependencies = [ "once_cell", "valuable", @@ -3715,9 +3707,9 @@ dependencies = [ [[package]] name = "tracing-serde" -version = "0.1.3" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +checksum = "704b1aeb7be0d0a84fc9828cae51dab5970fee5088f83d1dd7ee6f6246fc6ff1" dependencies = [ "serde", "tracing-core", @@ -3725,9 +3717,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.18" +version = "0.3.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" dependencies = [ "matchers", "nu-ansi-term", @@ -3762,7 +3754,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04659ddb06c87d233c566112c1c9c5b9e98256d9af50ec3bc9c8327f873a7568" dependencies = [ "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] @@ -3912,9 +3904,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" +checksum = "d15e63b4482863c109d70a7b8706c1e364eb6ea449b201a76c5b89cedcec2d5c" dependencies = [ "cfg-if", "once_cell", @@ -3923,24 +3915,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" +checksum = "8d36ef12e3aaca16ddd3f67922bc63e48e953f126de60bd33ccc0101ef9998cd" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" +checksum = "705440e08b42d3e4b36de7d66c944be628d579796b8090bfa3471478a2260051" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3948,28 +3940,28 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" +checksum = "98c9ae5a76e46f4deecd0f0255cc223cfa18dc9b261213b8aa0c7b36f61b3f1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.95" +version = "0.2.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" +checksum = "6ee99da9c5ba11bd675621338ef6fa52296b76b83305e9b6e5c77d4c286d6d49" [[package]] name = "web-sys" -version = "0.3.72" +version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" +checksum = "a98bc3c33f0fe7e59ad7cd041b89034fa82a7c2d4365ca538dda6cdaf513863c" dependencies = [ "js-sys", "wasm-bindgen", @@ -4148,7 +4140,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.90", ] [[package]] diff --git a/rust-runtime/aws-smithy-http-client/Cargo.toml b/rust-runtime/aws-smithy-http-client/Cargo.toml index 13a698db63..8e7ab244bd 100644 --- a/rust-runtime/aws-smithy-http-client/Cargo.toml +++ b/rust-runtime/aws-smithy-http-client/Cargo.toml @@ -27,11 +27,6 @@ hyper-1 = [ "dep:tower", ] -default-tls = [ - "hyper-1", - "rustls-aws-lc" -] - wire-mock = [ "test-util", "hyper-1", diff --git a/rust-runtime/aws-smithy-http-client/src/client.rs b/rust-runtime/aws-smithy-http-client/src/client.rs index 881a3d4c1f..f71367a250 100644 --- a/rust-runtime/aws-smithy-http-client/src/client.rs +++ b/rust-runtime/aws-smithy-http-client/src/client.rs @@ -47,7 +47,7 @@ use std::time::Duration; /// Creates an HTTPS client using the default TLS provider pub fn default_client() -> Option { - #[cfg(feature = "default-tls")] + #[cfg(feature = "rustls-aws-lc")] { tracing::trace!("creating a new default hyper 1.x client using rustls"); Some( @@ -58,13 +58,41 @@ pub fn default_client() -> Option { .build_https(), ) } - #[cfg(not(feature = "default-tls"))] + #[cfg(not(feature = "rustls-aws-lc"))] { tracing::trace!("no default connector available"); None } } +/// Given `HttpConnectorSettings` and an `SharedAsyncSleep`, create a `SharedHttpConnector` from defaults depending on what cargo features are activated. +pub fn default_connector( + settings: &HttpConnectorSettings, + sleep: Option, +) -> Option { + #[cfg(feature = "rustls-aws-lc")] + { + tracing::trace!(settings = ?settings, sleep = ?sleep, "creating a new default connector"); + let mut conn_builder = Connector::builder().connector_settings(settings.clone()); + + if let Some(sleep) = sleep { + conn_builder = conn_builder.sleep_impl(sleep); + } + + let conn = conn_builder + .tls_provider(tls::Provider::Rustls( + tls::rustls_provider::CryptoMode::AwsLc, + )) + .build(); + Some(SharedHttpConnector::new(conn)) + } + #[cfg(not(feature = "rustls-aws-lc"))] + { + tracing::trace!(settings = ?settings, sleep = ?sleep, "no default connector available"); + None + } +} + /// [`HttpConnector`] used to make HTTP requests. /// /// This connector also implements socket connect and read timeouts. diff --git a/rust-runtime/aws-smithy-http-client/src/lib.rs b/rust-runtime/aws-smithy-http-client/src/lib.rs index e573e2f550..bf12bf02a0 100644 --- a/rust-runtime/aws-smithy-http-client/src/lib.rs +++ b/rust-runtime/aws-smithy-http-client/src/lib.rs @@ -39,7 +39,7 @@ pub mod hyper_014 { #[cfg(feature = "hyper-1")] pub(crate) mod client; #[cfg(feature = "hyper-1")] -pub use client::{default_client, tls, Builder, Connector, ConnectorBuilder}; +pub use client::{default_client, default_connector, tls, Builder, Connector, ConnectorBuilder}; #[cfg(feature = "test-util")] pub mod test_util; diff --git a/rust-runtime/aws-smithy-http-client/src/test_util/never.rs b/rust-runtime/aws-smithy-http-client/src/test_util/never.rs index 15416975f0..0d5fc9a5fe 100644 --- a/rust-runtime/aws-smithy-http-client/src/test_util/never.rs +++ b/rust-runtime/aws-smithy-http-client/src/test_util/never.rs @@ -101,6 +101,7 @@ impl hyper_0_14::service::Service for NeverTcpConnector { mod hyper1_support { use super::NeverTcpConnector; use aws_smithy_async::future::never::Never; + use aws_smithy_runtime_api::client::http::SharedHttpClient; use aws_smithy_runtime_api::client::result::ConnectorError; use http_1x::Uri; use hyper_util::rt::TokioIo; @@ -125,6 +126,14 @@ mod hyper1_support { }) } } + + impl NeverTcpConnector { + /// Convert this connector into a usable HTTP client for testing + #[doc(hidden)] + pub fn into_client(self) -> SharedHttpClient { + crate::client::build_with_tcp_conn_fn(None, NeverTcpConnector::new) + } + } } #[cfg(feature = "hyper-014")] @@ -215,7 +224,7 @@ mod test { #[tokio::test] async fn never_tcp_connector_plugs_into_hyper_1() { use super::NeverTcpConnector; - let client = crate::client::build_with_tcp_conn_fn(None, NeverTcpConnector::new); + let client = NeverTcpConnector::new().into_client(); let components = RuntimeComponentsBuilder::for_tests() .with_sleep_impl(Some(TokioSleep::new())) .with_time_source(Some(SystemTimeSource::new())) diff --git a/rust-runtime/aws-smithy-runtime/Cargo.toml b/rust-runtime/aws-smithy-runtime/Cargo.toml index f640168517..e8854e583b 100644 --- a/rust-runtime/aws-smithy-runtime/Cargo.toml +++ b/rust-runtime/aws-smithy-runtime/Cargo.toml @@ -9,24 +9,39 @@ repository = "https://github.com/smithy-lang/smithy-rs" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html -# TODO(hyper1) - deprecate legacy hyper features when available in cargo: https://github.com/rust-lang/cargo/issues/7130 +# TODO(hyper1) - deprecate legacy hyper and http testing features when available in cargo: https://github.com/rust-lang/cargo/issues/7130 [features] client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"] http-auth = ["aws-smithy-runtime-api/http-auth"] +# NOTE: connector-hyper-0-14-x and tls-rustls are "legacy" features related to default HTTP client based on hyper 0.14.x ecosystem connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"] tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"] +default-http-connector = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"] rt-tokio = ["tokio/rt"] # Features for testing +# NOTE: `test-util` originally enabled the HTTP related test utils which have since been relocated to `aws-smithy-http-client` +# and updated to work with the 1.x HTTP/hyper ecosystem. Prefer using the `test-util` and `wire-mock` features from +# `aws-smithy-http-client` directly instead for HTTP test utils. test-util = [ "aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", - "connector-hyper-0-14-x", "aws-smithy-http-client/test-util", + # TODO(hyper1): Feature remains in place for backwards compat but in a future release we will break this flag and disable legacy HTTP test utils + "legacy-test-util", +] + +legacy-test-util = [ + # non HTTP test utils + "aws-smithy-runtime-api/test-util", + "dep:tracing-subscriber", + "aws-smithy-http-client/test-util", + # legacy http test utils + "connector-hyper-0-14-x", "aws-smithy-http-client/legacy-test-util", ] -wire-mock = ["test-util", "aws-smithy-http-client/wire-mock"] +wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"] [dependencies] aws-smithy-async = { path = "../aws-smithy-async" } diff --git a/rust-runtime/aws-smithy-runtime/additional-ci b/rust-runtime/aws-smithy-runtime/additional-ci index b44c6c05be..c79db87291 100755 --- a/rust-runtime/aws-smithy-runtime/additional-ci +++ b/rust-runtime/aws-smithy-runtime/additional-ci @@ -9,4 +9,5 @@ set -e echo "### Testing every combination of features (excluding --all-features)" -cargo hack test --feature-powerset --exclude-all-features +# Skip deprecated features that are re-exported from `aws-smithy-http-client` (and tested there already) +cargo hack test --feature-powerset --exclude-all-features --exclude-features legacy-test-util,wire-mock,connector-hyper-0-14-x,tls-rustls diff --git a/rust-runtime/aws-smithy-runtime/src/client.rs b/rust-runtime/aws-smithy-runtime/src/client.rs index 33ccc1f09f..b509f5327d 100644 --- a/rust-runtime/aws-smithy-runtime/src/client.rs +++ b/rust-runtime/aws-smithy-runtime/src/client.rs @@ -33,7 +33,7 @@ pub mod retries; /// Utilities for testing orchestrators. An orchestrator missing required components will panic when /// run. This module contains stub components that can be used when you only care about testing some /// specific aspect of the orchestrator. -#[cfg(feature = "test-util")] +#[cfg(any(feature = "test-util", feature = "legacy-test-util"))] pub mod test_util; mod timeout; diff --git a/rust-runtime/aws-smithy-runtime/src/client/defaults.rs b/rust-runtime/aws-smithy-runtime/src/client/defaults.rs index eea76ec29e..f4dfd76bd8 100644 --- a/rust-runtime/aws-smithy-runtime/src/client/defaults.rs +++ b/rust-runtime/aws-smithy-runtime/src/client/defaults.rs @@ -57,6 +57,10 @@ pub fn default_http_client_plugin() -> Option { #[cfg(feature = "connector-hyper-0-14-x")] let _default = crate::client::http::hyper_014::default_client(); + // takes precedence over legacy connector if enabled + #[cfg(feature = "default-http-connector")] + let _default = aws_smithy_http_client::default_client(); + _default.map(|default| { default_plugin("default_http_client_plugin", |components| { components.with_http_client(Some(default)) diff --git a/rust-runtime/aws-smithy-runtime/src/client/http/body/content_length_enforcement.rs b/rust-runtime/aws-smithy-runtime/src/client/http/body/content_length_enforcement.rs index 9ee070b0a4..22e7ded68b 100644 --- a/rust-runtime/aws-smithy-runtime/src/client/http/body/content_length_enforcement.rs +++ b/rust-runtime/aws-smithy-runtime/src/client/http/body/content_length_enforcement.rs @@ -206,7 +206,7 @@ impl RuntimePlugin for EnforceContentLengthRuntimePlugin { } } -#[cfg(all(feature = "test-util", test))] +#[cfg(all(test, any(feature = "test-util", feature = "legacy-test-util")))] mod test { use crate::assert_str_contains; use crate::client::http::body::content_length_enforcement::{ diff --git a/rust-runtime/aws-smithy-runtime/src/client/orchestrator.rs b/rust-runtime/aws-smithy-runtime/src/client/orchestrator.rs index 8e1b0818c2..387ff886d1 100644 --- a/rust-runtime/aws-smithy-runtime/src/client/orchestrator.rs +++ b/rust-runtime/aws-smithy-runtime/src/client/orchestrator.rs @@ -379,7 +379,7 @@ async fn try_attempt( trace!(request = ?request, "transmitting request"); let http_client = halt_on_err!([ctx] => runtime_components.http_client().ok_or_else(|| OrchestratorError::other("No HTTP client was available to send this request. \ - Enable the `rustls` crate feature or configure a HTTP client to fix this.") + Enable the `default-http-connector` crate feature or configure an HTTP client to fix this.") )); let timeout_config = cfg.load::().expect("timeout config must be set"); let settings = { @@ -462,16 +462,16 @@ async fn finally_op( }); } -#[cfg(all(test, feature = "test-util"))] +#[cfg(all(test, any(feature = "test-util", feature = "legacy-test-util")))] mod tests { use crate::client::auth::no_auth::{NoAuthRuntimePlugin, NO_AUTH_SCHEME_ID}; - use crate::client::http::test_util::NeverClient; use crate::client::orchestrator::endpoints::StaticUriEndpointResolver; use crate::client::orchestrator::{invoke, invoke_with_stop_point, StopPoint}; use crate::client::retries::strategy::NeverRetryStrategy; use crate::client::test_util::{ deserializer::CannedResponseDeserializer, serializer::CannedRequestSerializer, }; + use aws_smithy_http_client::test_util::NeverClient; use aws_smithy_runtime_api::box_error::BoxError; use aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolver; use aws_smithy_runtime_api::client::auth::{ diff --git a/rust-runtime/aws-smithy-runtime/src/client/orchestrator/auth.rs b/rust-runtime/aws-smithy-runtime/src/client/orchestrator/auth.rs index 5afc34bbaa..487b7c78de 100644 --- a/rust-runtime/aws-smithy-runtime/src/client/orchestrator/auth.rs +++ b/rust-runtime/aws-smithy-runtime/src/client/orchestrator/auth.rs @@ -278,7 +278,7 @@ impl fmt::Debug for ExploredList { } } -#[cfg(all(test, feature = "test-util"))] +#[cfg(all(test, any(feature = "test-util", feature = "legacy-test-util")))] mod tests { use super::*; use aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolver; diff --git a/rust-runtime/aws-smithy-runtime/src/client/orchestrator/operation.rs b/rust-runtime/aws-smithy-runtime/src/client/orchestrator/operation.rs index 756f0b7423..b37aaaeb10 100644 --- a/rust-runtime/aws-smithy-runtime/src/client/orchestrator/operation.rs +++ b/rust-runtime/aws-smithy-runtime/src/client/orchestrator/operation.rs @@ -400,7 +400,7 @@ impl OperationBuilder { assert!( components.http_client().is_some(), - "a http_client is required. Enable the `rustls` crate feature or configure a HTTP client to fix this." + "a http_client is required. Enable the `default-http-connector` crate feature or configure an HTTP client to fix this." ); assert!( components.endpoint_resolver().is_some(), @@ -437,12 +437,12 @@ impl OperationBuilder { } } -#[cfg(all(test, feature = "test-util"))] +#[cfg(all(test, any(feature = "test-util", feature = "legacy-test-util")))] mod tests { use super::*; - use crate::client::http::test_util::{capture_request, ReplayEvent, StaticReplayClient}; use crate::client::retries::classifiers::HttpStatusCodeClassifier; use aws_smithy_async::rt::sleep::{SharedAsyncSleep, TokioSleep}; + use aws_smithy_http_client::test_util::{capture_request, ReplayEvent, StaticReplayClient}; use aws_smithy_runtime_api::client::result::ConnectorError; use aws_smithy_types::body::SdkBody; use std::convert::Infallible; @@ -450,7 +450,7 @@ mod tests { #[tokio::test] async fn operation() { let (connector, request_rx) = capture_request(Some( - http_02x::Response::builder() + http_1x::Response::builder() .status(418) .body(SdkBody::from(&b"I'm a teapot!"[..])) .unwrap(), @@ -487,21 +487,21 @@ mod tests { async fn operation_retries() { let connector = StaticReplayClient::new(vec![ ReplayEvent::new( - http_02x::Request::builder() + http_1x::Request::builder() .uri("http://localhost:1234/") .body(SdkBody::from(&b"what are you?"[..])) .unwrap(), - http_02x::Response::builder() + http_1x::Response::builder() .status(503) .body(SdkBody::from(&b""[..])) .unwrap(), ), ReplayEvent::new( - http_02x::Request::builder() + http_1x::Request::builder() .uri("http://localhost:1234/") .body(SdkBody::from(&b"what are you?"[..])) .unwrap(), - http_02x::Response::builder() + http_1x::Response::builder() .status(418) .body(SdkBody::from(&b"I'm a teapot!"[..])) .unwrap(), diff --git a/rust-runtime/aws-smithy-runtime/src/client/retries/strategy/standard.rs b/rust-runtime/aws-smithy-runtime/src/client/retries/strategy/standard.rs index 344c060771..1fc48dda8e 100644 --- a/rust-runtime/aws-smithy-runtime/src/client/retries/strategy/standard.rs +++ b/rust-runtime/aws-smithy-runtime/src/client/retries/strategy/standard.rs @@ -349,7 +349,7 @@ mod tests { use aws_smithy_types::retry::{ErrorKind, RetryConfig}; use super::{calculate_exponential_backoff, StandardRetryStrategy}; - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] use crate::client::retries::TokenBucket; #[test] @@ -468,7 +468,7 @@ mod tests { retry_actions: Mutex>, } - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] impl PresetReasonRetryClassifier { fn new(mut retry_reasons: Vec) -> Self { // We'll pop the retry_reasons in reverse order, so we reverse the list to fix that. @@ -502,7 +502,7 @@ mod tests { } } - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] fn setup_test( retry_reasons: Vec, retry_config: RetryConfig, @@ -523,7 +523,7 @@ mod tests { (cfg, rc, ctx) } - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] #[test] fn eventual_success() { let (mut cfg, rc, mut ctx) = setup_test( @@ -556,7 +556,7 @@ mod tests { assert_eq!(token_bucket.available_permits(), 495); } - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] #[test] fn no_more_attempts() { let (mut cfg, rc, ctx) = setup_test( @@ -587,7 +587,7 @@ mod tests { assert_eq!(token_bucket.available_permits(), 490); } - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] #[test] fn successful_request_and_deser_should_be_retryable() { #[derive(Clone, Copy, Debug)] @@ -679,7 +679,7 @@ mod tests { assert_eq!(token_bucket.available_permits(), 5); } - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] #[test] fn no_quota() { let (mut cfg, rc, ctx) = setup_test( @@ -704,7 +704,7 @@ mod tests { assert_eq!(token_bucket.available_permits(), 0); } - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] #[test] fn quota_replenishes_on_success() { let (mut cfg, rc, mut ctx) = setup_test( @@ -744,7 +744,7 @@ mod tests { assert_eq!(token_bucket.available_permits(), 100); } - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] #[test] fn quota_replenishes_on_first_try_success() { const PERMIT_COUNT: usize = 20; @@ -798,7 +798,7 @@ mod tests { assert_eq!(token_bucket.available_permits(), PERMIT_COUNT); } - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] #[test] fn backoff_timing() { let (mut cfg, rc, ctx) = setup_test( @@ -841,7 +841,7 @@ mod tests { assert_eq!(token_bucket.available_permits(), 480); } - #[cfg(feature = "test-util")] + #[cfg(any(feature = "test-util", feature = "legacy-test-util"))] #[test] fn max_backoff_time() { let (mut cfg, rc, ctx) = setup_test( diff --git a/rust-runtime/aws-smithy-runtime/src/client/retries/token_bucket.rs b/rust-runtime/aws-smithy-runtime/src/client/retries/token_bucket.rs index c2c8ba8c64..7931adb1b1 100644 --- a/rust-runtime/aws-smithy-runtime/src/client/retries/token_bucket.rs +++ b/rust-runtime/aws-smithy-runtime/src/client/retries/token_bucket.rs @@ -69,7 +69,7 @@ impl TokenBucket { } } - #[cfg(all(test, feature = "test-util"))] + #[cfg(all(test, any(feature = "test-util", feature = "legacy-test-util")))] pub(crate) fn available_permits(&self) -> usize { self.semaphore.available_permits() } diff --git a/rust-runtime/aws-smithy-runtime/src/client/waiters.rs b/rust-runtime/aws-smithy-runtime/src/client/waiters.rs index e9330b2fa4..b5e297c2b5 100644 --- a/rust-runtime/aws-smithy-runtime/src/client/waiters.rs +++ b/rust-runtime/aws-smithy-runtime/src/client/waiters.rs @@ -196,7 +196,7 @@ impl WaiterOrchestratorBuilder self } - #[cfg(all(test, feature = "test-util"))] + #[cfg(all(test, any(feature = "test-util", feature = "legacy-test-util")))] fn random(mut self, random_fn: impl Fn(u64, u64) -> u64 + Send + Sync + 'static) -> Self { self.random_fn = RandomImpl::Override(Box::new(random_fn)); self @@ -281,7 +281,7 @@ pub fn attach_waiter_tracing_span( future.instrument(span) } -#[cfg(all(test, feature = "test-util"))] +#[cfg(all(test, any(feature = "test-util", feature = "legacy-test-util")))] mod tests { use super::*; use crate::test_util::capture_test_logs::show_test_logs; diff --git a/rust-runtime/aws-smithy-runtime/src/lib.rs b/rust-runtime/aws-smithy-runtime/src/lib.rs index dd17c5bc77..c40434e4d1 100644 --- a/rust-runtime/aws-smithy-runtime/src/lib.rs +++ b/rust-runtime/aws-smithy-runtime/src/lib.rs @@ -32,7 +32,7 @@ pub mod expiring_cache; pub mod static_partition_map; /// General testing utilities. -#[cfg(feature = "test-util")] +#[cfg(any(feature = "test-util", feature = "legacy-test-util"))] pub mod test_util; // legacy test-util, re-export of macros diff --git a/rust-runtime/aws-smithy-runtime/tests/reconnect_on_transient_error.rs b/rust-runtime/aws-smithy-runtime/tests/reconnect_on_transient_error.rs index 792861354d..41600db480 100644 --- a/rust-runtime/aws-smithy-runtime/tests/reconnect_on_transient_error.rs +++ b/rust-runtime/aws-smithy-runtime/tests/reconnect_on_transient_error.rs @@ -3,11 +3,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -#![cfg(all( - feature = "client", - feature = "wire-mock", - feature = "connector-hyper-0-14-x", -))] +#![cfg(all(feature = "client", feature = "wire-mock",))] use ::aws_smithy_runtime::client::retries::classifiers::{ HttpStatusCodeClassifier, TransientErrorClassifier, diff --git a/rust-runtime/aws-smithy-runtime/tests/stalled_stream_common.rs b/rust-runtime/aws-smithy-runtime/tests/stalled_stream_common.rs index 6b63a5ce3e..b556397488 100644 --- a/rust-runtime/aws-smithy-runtime/tests/stalled_stream_common.rs +++ b/rust-runtime/aws-smithy-runtime/tests/stalled_stream_common.rs @@ -3,7 +3,10 @@ * SPDX-License-Identifier: Apache-2.0 */ -#![cfg(all(feature = "client", feature = "test-util"))] +#![cfg(all( + feature = "client", + any(feature = "test-util", feature = "legacy-test-util") +))] // Extra imports are used by stalled_stream_download and stalled_stream_upload as conveniences #![allow(unused_imports)] diff --git a/rust-runtime/aws-smithy-runtime/tests/stalled_stream_download.rs b/rust-runtime/aws-smithy-runtime/tests/stalled_stream_download.rs index a60a515b76..05eb8bdc57 100644 --- a/rust-runtime/aws-smithy-runtime/tests/stalled_stream_download.rs +++ b/rust-runtime/aws-smithy-runtime/tests/stalled_stream_download.rs @@ -3,7 +3,10 @@ * SPDX-License-Identifier: Apache-2.0 */ -#![cfg(all(feature = "client", feature = "test-util"))] +#![cfg(all( + feature = "client", + any(feature = "test-util", feature = "legacy-test-util") +))] use std::time::Duration; use tokio::sync::mpsc::channel; diff --git a/rust-runtime/aws-smithy-runtime/tests/stalled_stream_performance.rs b/rust-runtime/aws-smithy-runtime/tests/stalled_stream_performance.rs index b0137f8e2a..34ff0d3ccd 100644 --- a/rust-runtime/aws-smithy-runtime/tests/stalled_stream_performance.rs +++ b/rust-runtime/aws-smithy-runtime/tests/stalled_stream_performance.rs @@ -3,7 +3,10 @@ * SPDX-License-Identifier: Apache-2.0 */ -#![cfg(all(feature = "client", feature = "test-util"))] +#![cfg(all( + feature = "client", + any(feature = "test-util", feature = "legacy-test-util") +))] use aws_smithy_async::rt::sleep::TokioSleep; use aws_smithy_async::time::{SystemTimeSource, TimeSource}; diff --git a/rust-runtime/aws-smithy-runtime/tests/stalled_stream_upload.rs b/rust-runtime/aws-smithy-runtime/tests/stalled_stream_upload.rs index 3cbae755b3..ec253be274 100644 --- a/rust-runtime/aws-smithy-runtime/tests/stalled_stream_upload.rs +++ b/rust-runtime/aws-smithy-runtime/tests/stalled_stream_upload.rs @@ -3,7 +3,10 @@ * SPDX-License-Identifier: Apache-2.0 */ -#![cfg(all(feature = "client", feature = "test-util"))] +#![cfg(all( + feature = "client", + any(feature = "test-util", feature = "legacy-test-util") +))] #[macro_use] mod stalled_stream_common; diff --git a/tools/ci-build/Dockerfile b/tools/ci-build/Dockerfile index 6477146ca6..514c169db9 100644 --- a/tools/ci-build/Dockerfile +++ b/tools/ci-build/Dockerfile @@ -93,7 +93,8 @@ RUN set -eux; \ chmod g+rw -R /opt/cargo/registry FROM install_rust AS cargo_deny -ARG cargo_deny_version=0.16.2 +# FIXME(hyper1) - update to 0.16.2 to fix panic (requires rustc 1.81 though) +ARG cargo_deny_version=0.16.1 RUN cargo install cargo-deny --locked --version ${cargo_deny_version} FROM install_rust AS cargo_udeps diff --git a/tools/ci-scripts/check-aws-config b/tools/ci-scripts/check-aws-config index 49f1439027..d92e374290 100755 --- a/tools/ci-scripts/check-aws-config +++ b/tools/ci-scripts/check-aws-config @@ -42,11 +42,11 @@ cargo hack check --feature-powerset --exclude-all-features --exclude-features al echo "${C_YELLOW}## Testing each feature in isolation${C_RESET}" # these features are missed by the following check because they are grouped -cargo hack test --each-feature --include-features rt-tokio,client-hyper,rustls --exclude-no-default-features +cargo hack test --each-feature --include-features rt-tokio,client-hyper,rustls,default-http-connector --exclude-no-default-features # This check will check other individual features and no-default-features # grouping these features because they don't interact -cargo hack test --feature-powerset --exclude-all-features --exclude-features allow-compilation --group-features rt-tokio,client-hyper,rustls +cargo hack test --feature-powerset --exclude-all-features --exclude-features allow-compilation --group-features rt-tokio,client-hyper,rustls,default-http-connector echo "${C_YELLOW}## Checking the wasm32-unknown-unknown and wasm32-wasi targets${C_RESET}" cargo check --target wasm32-unknown-unknown --no-default-features