From df97ce2244d267efbc371377ce9ac9bf158a0a44 Mon Sep 17 00:00:00 2001 From: Matt Mastracci Date: Thu, 20 Feb 2025 12:44:38 -0700 Subject: [PATCH] Bump deps to use newly published ones --- Cargo.lock | 1004 +++++++++++++++++--------- Cargo.toml | 11 +- src/options.rs | 4 +- src/portable/instance/link.rs | 67 +- tests/shared-client-tests/Cargo.toml | 4 +- 5 files changed, 705 insertions(+), 385 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5c377c4a..82a44fa8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -43,7 +43,7 @@ dependencies = [ "cfg-if", "once_cell", "version_check", - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -140,9 +140,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.95" +version = "1.0.96" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" +checksum = "6b964d184e89d9b6b67dd2715bc8e74cf3107fb2b529990c90cf517326150bf4" [[package]] name = "append-only-vec" @@ -340,13 +340,13 @@ checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" [[package]] name = "async-trait" -version = "0.1.85" +version = "0.1.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056" +checksum = "644dd749086bf3771a2fbc5f256fdb982d53f011c7d5d560304eafeecebce79d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -440,9 +440,9 @@ dependencies = [ [[package]] name = "blake2b_simd" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23285ad32269793932e830392f2fe2f83e26488fd3ec778883a93c8323735780" +checksum = "06e903a20b159e944f91ec8499fe1e55651480c541ea0a584f5d967c49ad9d99" dependencies = [ "arrayref", "arrayvec", @@ -451,15 +451,16 @@ dependencies = [ [[package]] name = "blake3" -version = "1.5.5" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8ee0c1824c4dea5b5f81736aff91bae041d2c07ee1192bec91054e10e3e601e" +checksum = "1230237285e3e10cde447185e8975408ae24deaa67205ce684805c25bc0c7937" dependencies = [ "arrayref", "arrayvec", "cc", "cfg-if", "constant_time_eq", + "memmap2", ] [[package]] @@ -522,6 +523,12 @@ version = "3.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" +[[package]] +name = "bytemuck" +version = "1.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" + [[package]] name = "byteorder" version = "1.5.0" @@ -530,9 +537,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" +checksum = "f61dac84819c6588b558454b194026eb1f09c293b9036ae9b159e74e73ab6cf9" [[package]] name = "bzip2" @@ -546,19 +553,18 @@ dependencies = [ [[package]] name = "bzip2" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bafdbf26611df8c14810e268ddceda071c297570a5fb360ceddf617fe417ef58" +checksum = "75b89e7c29231c673a61a46e722602bcd138298f6b9e81e71119693534585f5c" dependencies = [ "bzip2-sys", - "libc", ] [[package]] name = "bzip2-sys" -version = "0.1.11+1.0.8" +version = "0.1.12+1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" +checksum = "72ebc2f1a417f01e1da30ef264ee86ae31d2dcd2d603ea283d3c244a883ca2a9" dependencies = [ "cc", "libc", @@ -567,15 +573,21 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.10" +version = "1.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13208fcbb66eaeffe09b99fffbe1af420f00a7b35aa99ad683dfc1aa76145229" +checksum = "c736e259eea577f443d5c86c304f9f4ae0295c43f3ba05c21f1d66b5f06001af" dependencies = [ "jobserver", "libc", "shlex", ] +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + [[package]] name = "cfg-if" version = "1.0.0" @@ -615,9 +627,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.27" +version = "4.5.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "769b0145982b4b48713e01ec42d61614425f27b7058bda7180a3a41f30104796" +checksum = "92b7b18d71fad5313a1e320fa9897994228ce274b60faa4d694fe0ea89cd9e6d" dependencies = [ "clap_builder", "clap_derive", @@ -625,9 +637,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.27" +version = "4.5.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b26884eb4b57140e4d2d93652abfa49498b938b3c9179f9fc487b0acc3edad7" +checksum = "a35db2071778a7344791a4fb4f95308b5673d219dee3ae348b86642574ecc90c" dependencies = [ "anstream", "anstyle", @@ -638,23 +650,23 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.5.44" +version = "4.5.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "375f9d8255adeeedd51053574fd8d4ba875ea5fa558e86617b07f09f1680c8b6" +checksum = "1e3040c8291884ddf39445dc033c70abc2bc44a42f0a3a00571a0f483a83f0cd" dependencies = [ "clap", ] [[package]] name = "clap_derive" -version = "4.5.24" +version = "4.5.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54b755194d6389280185988721fffba69495eed5ee9feeee9a599b53db80318c" +checksum = "bf4ced95c6f4a675af3da73304b9ac4ed991640c36374e4b46795c49e17cf1ed" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -700,7 +712,7 @@ dependencies = [ "nom", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -809,6 +821,15 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" +[[package]] +name = "convert_case" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7" +dependencies = [ + "unicode-segmentation", +] + [[package]] name = "coolor" version = "1.0.0" @@ -1015,6 +1036,12 @@ version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04d2cd9c18b9f454ed67da600630b021a8a80bf33f8c95896ab33aaf1c26b728" +[[package]] +name = "data-encoding" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "575f75dfd25738df5b91b8e43e14d44bda14637a58fae779fd2b064f8bf3e010" + [[package]] name = "deflate64" version = "0.1.9" @@ -1038,7 +1065,29 @@ checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", +] + +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl", +] + +[[package]] +name = "derive_more-impl" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "syn 2.0.98", + "unicode-xid", ] [[package]] @@ -1114,7 +1163,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1135,135 +1184,6 @@ version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ea8a8b81cacc08888170eef4d13b775126db426d0b348bee9d18c2c1eaf123cf" -[[package]] -name = "gel-cli" -version = "6.2.0-dev" -dependencies = [ - "anes", - "ansi-escapes", - "anyhow", - "arc-swap", - "assert_cmd", - "async-listen", - "backtrace", - "base32", - "base64 0.22.1", - "bigdecimal", - "bitflags 2.8.0", - "bitvec", - "blake2b_simd", - "blake3", - "bytes", - "bzip2 0.5.0", - "chrono", - "clap", - "clap_complete", - "codespan-reporting", - "color-print", - "colorful", - "combine", - "concolor", - "const_format", - "crossbeam-utils", - "ctrlc", - "dirs", - "dissimilar", - "downcast-rs", - "edgedb-cli-derive", - "edgeql-parser", - "env_logger", - "fd-lock", - "fn-error-context", - "fs-err", - "fs_extra", - "futures-util", - "gel-derive", - "gel-errors", - "gel-protocol", - "gel-tokio", - "geozero", - "gethostname", - "globset", - "hex", - "humantime", - "humantime-serde", - "immutable-chunkmap", - "indexmap", - "indicatif", - "is-terminal", - "libc", - "libflate", - "log", - "minimad", - "nix 0.29.0", - "nom", - "notify", - "num-bigint", - "once_cell", - "open", - "openssl", - "openssl-sys", - "os-release", - "pem", - "predicates", - "pretty_assertions", - "prettytable-rs", - "rand", - "regex", - "renamore", - "reqwest", - "reqwest-middleware", - "reqwest-retry", - "rexpect", - "ring", - "rpassword", - "rustls 0.23.22", - "rustyline", - "scram", - "semver", - "serde", - "serde_json", - "serde_millis", - "serde_path_to_error", - "serde_str", - "sha1", - "sha2", - "shell-escape", - "shutdown_hooks", - "signal-hook", - "snafu", - "strsim", - "tar", - "tempfile", - "term 1.0.1", - "termcolor", - "termimad", - "terminal-light", - "terminal_size", - "test-case", - "test-utils", - "textwrap", - "thiserror 2.0.11", - "tokio", - "tokio-stream", - "toml", - "tracing", - "unicode-segmentation", - "unicode-width 0.1.14", - "url", - "urlencoding", - "uuid", - "wait-timeout", - "warp", - "which", - "whoami", - "winapi", - "winreg", - "wslapi", - "zip", - "zstd", -] - [[package]] name = "edgedb-cli-derive" version = "0.4.0" @@ -1274,7 +1194,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "termimad", "trybuild", ] @@ -1326,6 +1246,18 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" +[[package]] +name = "enum-as-inner" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.98", +] + [[package]] name = "env_filter" version = "0.1.3" @@ -1351,9 +1283,9 @@ dependencies = [ [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" @@ -1454,7 +1386,7 @@ checksum = "2cd66269887534af4b0c3e3337404591daa8dc8b9b2b3db71f9523beb4bafb41" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1586,7 +1518,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1619,29 +1551,180 @@ dependencies = [ "slab", ] +[[package]] +name = "gel-auth" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dd0d18b7a38096ec70d954de1182efe4beffadb204db20a26945a1692a23af5" +dependencies = [ + "base64 0.22.1", + "constant_time_eq", + "derive_more", + "hmac", + "md5", + "rand 0.8.5", + "roaring", + "sha2", + "thiserror 2.0.11", + "tracing", + "unicode-normalization", +] + +[[package]] +name = "gel-cli" +version = "6.2.0-dev" +dependencies = [ + "anes", + "ansi-escapes", + "anyhow", + "arc-swap", + "assert_cmd", + "async-listen", + "backtrace", + "base32", + "base64 0.22.1", + "bigdecimal", + "bitflags 2.8.0", + "bitvec", + "blake2b_simd", + "blake3", + "bytes", + "bzip2 0.5.1", + "chrono", + "clap", + "clap_complete", + "codespan-reporting", + "color-print", + "colorful", + "combine", + "concolor", + "const_format", + "crossbeam-utils", + "ctrlc", + "dirs", + "dissimilar", + "downcast-rs", + "edgedb-cli-derive", + "edgeql-parser", + "env_logger", + "fd-lock", + "fn-error-context", + "fs-err", + "fs_extra", + "futures-util", + "gel-derive", + "gel-errors", + "gel-protocol", + "gel-tokio", + "geozero", + "gethostname", + "globset", + "hex", + "humantime", + "humantime-serde", + "immutable-chunkmap", + "indexmap", + "indicatif", + "is-terminal", + "libc", + "libflate", + "log", + "minimad", + "nix 0.29.0", + "nom", + "notify", + "num-bigint", + "once_cell", + "open", + "openssl", + "openssl-sys", + "os-release", + "pem", + "predicates", + "pretty_assertions", + "prettytable-rs", + "rand 0.8.5", + "regex", + "renamore", + "reqwest", + "reqwest-middleware", + "reqwest-retry", + "rexpect", + "ring", + "rpassword", + "rustls 0.23.23", + "rustyline", + "scram", + "semver", + "serde", + "serde_json", + "serde_millis", + "serde_path_to_error", + "serde_str", + "sha1", + "sha2", + "shell-escape", + "shutdown_hooks", + "signal-hook", + "snafu", + "strsim", + "tar", + "tempfile", + "term 1.0.1", + "termcolor", + "termimad", + "terminal-light", + "terminal_size", + "test-case", + "test-utils", + "textwrap", + "thiserror 2.0.11", + "tokio", + "tokio-stream", + "toml", + "tracing", + "unicode-segmentation", + "unicode-width 0.1.14", + "url", + "urlencoding", + "uuid", + "wait-timeout", + "warp", + "which", + "whoami", + "winapi", + "winreg 0.52.0", + "wslapi", + "zip", + "zstd", +] + [[package]] name = "gel-derive" -version = "0.6.0" -source = "git+https://github.com/edgedb/edgedb-rust/#2bd49ca0ead6c90fb469c1713f7569d195533304" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39c136cc723c84c27f1c294c9ecb3fbd59287b7845b02c8c3c264d7a43653cd6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "trybuild", ] [[package]] name = "gel-errors" version = "0.5.0" -source = "git+https://github.com/edgedb/edgedb-rust/#2bd49ca0ead6c90fb469c1713f7569d195533304" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a34c9305d1e0dd0180d802ce457476dc1dea8a7aeab98bd803ae57e8d84be51" dependencies = [ "bytes", ] [[package]] name = "gel-protocol" -version = "0.7.0" -source = "git+https://github.com/edgedb/edgedb-rust/#2bd49ca0ead6c90fb469c1713f7569d195533304" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e85ee2aeaf483be7f4fa95fee42bcfe96dab254456189d14af30ddfe3d0e04b7" dependencies = [ "bigdecimal", "bitflags 2.8.0", @@ -1656,10 +1739,31 @@ dependencies = [ "uuid", ] +[[package]] +name = "gel-stream" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0be15b92af666ec067a3dd68cf500f10f1d349a80945d0cb4c0877e36decb185" +dependencies = [ + "derive_more", + "futures", + "hickory-resolver", + "rustls 0.23.23", + "rustls-pki-types", + "rustls-platform-verifier", + "rustls-tokio-stream", + "socket2", + "thiserror 2.0.11", + "tokio", + "webpki", + "webpki-roots", +] + [[package]] name = "gel-tokio" -version = "0.6.0" -source = "git+https://github.com/edgedb/edgedb-rust/#2bd49ca0ead6c90fb469c1713f7569d195533304" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63e227869d4a6b7536e796a6a75fb017dfffe0a0e6b34baddf263ce23c91616c" dependencies = [ "anyhow", "arc-swap", @@ -1669,28 +1773,21 @@ dependencies = [ "bytes", "crc16", "dirs", + "futures-util", + "gel-auth", "gel-derive", "gel-errors", "gel-protocol", + "gel-stream", "log", "once_cell", - "rand", - "rustls 0.23.22", - "rustls-native-certs", + "rand 0.9.0", "rustls-pemfile", - "rustls-webpki", - "scram-2", "serde", "serde_json", "sha1", - "socket2", - "tls-api", - "tls-api-not-tls", - "tls-api-rustls", "tokio", - "tokio-stream", "url", - "webpki-roots", ] [[package]] @@ -1834,9 +1931,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e" +checksum = "5017294ff4bb30944501348f6f8e42e6ad28f42c8bbef7a74029aff064a4e3c2" dependencies = [ "atomic-waker", "bytes", @@ -1912,6 +2009,51 @@ dependencies = [ "serde", ] +[[package]] +name = "hickory-proto" +version = "0.24.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92652067c9ce6f66ce53cc38d1169daa36e6e7eb7dd3b63b5103bd9d97117248" +dependencies = [ + "async-trait", + "cfg-if", + "data-encoding", + "enum-as-inner", + "futures-channel", + "futures-io", + "futures-util", + "idna", + "ipnet", + "once_cell", + "rand 0.8.5", + "thiserror 1.0.69", + "tinyvec", + "tokio", + "tracing", + "url", +] + +[[package]] +name = "hickory-resolver" +version = "0.24.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbb117a1ca520e111743ab2f6688eddee69db4e0ea242545a604dce8a66fd22e" +dependencies = [ + "cfg-if", + "futures-util", + "hickory-proto", + "ipconfig", + "lru-cache", + "once_cell", + "parking_lot 0.12.3", + "rand 0.8.5", + "resolv-conf", + "smallvec", + "thiserror 1.0.69", + "tokio", + "tracing", +] + [[package]] name = "hmac" version = "0.12.1" @@ -1930,6 +2072,17 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "hostname" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" +dependencies = [ + "libc", + "match_cfg", + "winapi", +] + [[package]] name = "http" version = "0.2.12" @@ -2047,7 +2200,7 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.7", + "h2 0.4.8", "http 1.2.0", "http-body 1.0.1", "httparse", @@ -2068,7 +2221,7 @@ dependencies = [ "http 1.2.0", "hyper 1.6.0", "hyper-util", - "rustls 0.23.22", + "rustls 0.23.23", "rustls-native-certs", "rustls-pki-types", "tokio", @@ -2210,7 +2363,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2289,9 +2442,9 @@ dependencies = [ [[package]] name = "inout" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" dependencies = [ "generic-array", ] @@ -2308,6 +2461,18 @@ dependencies = [ "web-sys", ] +[[package]] +name = "ipconfig" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" +dependencies = [ + "socket2", + "widestring", + "windows-sys 0.48.0", + "winreg 0.50.0", +] + [[package]] name = "ipnet" version = "2.11.0" @@ -2356,6 +2521,28 @@ version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" +[[package]] +name = "jni" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +dependencies = [ + "cesu8", + "cfg-if", + "combine", + "jni-sys", + "log", + "thiserror 1.0.69", + "walkdir", + "windows-sys 0.45.0", +] + +[[package]] +name = "jni-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" + [[package]] name = "jobserver" version = "0.1.32" @@ -2424,7 +2611,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2480,6 +2667,12 @@ dependencies = [ "redox_syscall 0.5.8", ] +[[package]] +name = "linked-hash-map" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" + [[package]] name = "linux-raw-sys" version = "0.4.15" @@ -2510,13 +2703,22 @@ checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e" [[package]] name = "log" -version = "0.4.25" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f" +checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e" dependencies = [ "value-bag", ] +[[package]] +name = "lru-cache" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" +dependencies = [ + "linked-hash-map", +] + [[package]] name = "lzma-rs" version = "0.3.0" @@ -2527,12 +2729,33 @@ dependencies = [ "crc", ] +[[package]] +name = "match_cfg" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" + +[[package]] +name = "md5" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771" + [[package]] name = "memchr" version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +[[package]] +name = "memmap2" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f" +dependencies = [ + "libc", +] + [[package]] name = "memoffset" version = "0.7.1" @@ -2581,9 +2804,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8402cab7aefae129c6977bb0ff1b8fd9a04eb5b51efc50a70bea51cda0c7924" +checksum = "b3b1c9bd4fe1f0f8b387f6eb9eb3b4a1aa26185e5750efb9140301703f62cd1b" dependencies = [ "adler2", ] @@ -2751,9 +2974,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.2" +version = "1.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e" [[package]] name = "open" @@ -2768,9 +2991,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.69" +version = "0.10.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5e534d133a060a3c19daec1eb3e98ec6f4685978834f2dbadfe2ec215bab64e" +checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd" dependencies = [ "bitflags 2.8.0", "cfg-if", @@ -2789,7 +3012,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2800,18 +3023,18 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] name = "openssl-src" -version = "300.4.1+3.4.0" +version = "300.4.2+3.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "faa4eac4138c62414b5622d1b31c5c304f34b406b013c079c2bbc652fdd6678c" +checksum = "168ce4e058f975fe43e89d9ccf78ca668601887ae736090aacc23ae353c298e2" dependencies = [ "cc", ] [[package]] name = "openssl-sys" -version = "0.9.104" +version = "0.9.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" +checksum = "8bb61ea9811cc39e3c2069f40b8b8e2e70d8569b361f879786cc7ed48b777cdd" dependencies = [ "cc", "libc", @@ -2938,7 +3161,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" dependencies = [ "phf_shared", - "rand", + "rand 0.8.5", ] [[package]] @@ -2951,7 +3174,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2965,22 +3188,22 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916" +checksum = "dfe2e71e1471fe07709406bf725f710b02927c9c54b2b5b2ec0e8087d97c327d" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb" +checksum = "f6e859e6e5bd50440ab63c47e3ebabc90f26251f7c73c3d3e837b74a1cc3fa67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3045,7 +3268,7 @@ version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -3139,6 +3362,12 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "quick-error" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" + [[package]] name = "quinn" version = "0.11.6" @@ -3150,7 +3379,7 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash", - "rustls 0.23.22", + "rustls 0.23.23", "socket2", "thiserror 2.0.11", "tokio", @@ -3165,10 +3394,10 @@ checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" dependencies = [ "bytes", "getrandom 0.2.15", - "rand", + "rand 0.8.5", "ring", "rustc-hash", - "rustls 0.23.22", + "rustls 0.23.23", "rustls-pki-types", "slab", "thiserror 2.0.11", @@ -3179,9 +3408,9 @@ dependencies = [ [[package]] name = "quinn-udp" -version = "0.5.9" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c40286217b4ba3a71d644d752e6a0b71f13f1b6a2c5311acfcbe0c2418ed904" +checksum = "e46f3055866785f6b92bc6164b76be02ca8f2eb4b002c0354b28cf4c119e5944" dependencies = [ "cfg_aliases 0.2.1", "libc", @@ -3223,8 +3452,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha", - "rand_core", + "rand_chacha 0.3.1", + "rand_core 0.6.4", +] + +[[package]] +name = "rand" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3779b94aeb87e8bd4e834cee3650289ee9e0d5677f976ecdb6d219e5f4f6cd94" +dependencies = [ + "rand_chacha 0.9.0", + "rand_core 0.9.1", + "zerocopy 0.8.20", ] [[package]] @@ -3234,7 +3474,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core 0.9.1", ] [[package]] @@ -3246,6 +3496,16 @@ dependencies = [ "getrandom 0.2.15", ] +[[package]] +name = "rand_core" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a88e0da7a2c97baa202165137c158d0a2e824ac465d13d81046727b34cb247d3" +dependencies = [ + "getrandom 0.3.1", + "zerocopy 0.8.20", +] + [[package]] name = "redox_syscall" version = "0.2.16" @@ -3337,7 +3597,7 @@ dependencies = [ "encoding_rs", "futures-core", "futures-util", - "h2 0.4.7", + "h2 0.4.8", "http 1.2.0", "http-body 1.0.1", "http-body-util", @@ -3352,7 +3612,7 @@ dependencies = [ "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.22", + "rustls 0.23.23", "rustls-native-certs", "rustls-pemfile", "rustls-pki-types", @@ -3408,13 +3668,23 @@ dependencies = [ "wasm-timer", ] +[[package]] +name = "resolv-conf" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" +dependencies = [ + "hostname", + "quick-error", +] + [[package]] name = "retry-policies" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5875471e6cab2871bc150ecb8c727db5113c9338cc3354dc5ee3425b6aa40a1c" dependencies = [ - "rand", + "rand 0.8.5", ] [[package]] @@ -3431,15 +3701,14 @@ dependencies = [ [[package]] name = "ring" -version = "0.17.8" +version = "0.17.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +checksum = "e75ec5e92c4d8aede845126adc388046234541629e76029599ed35a003c7ed24" dependencies = [ "cc", "cfg-if", "getrandom 0.2.15", "libc", - "spin", "untrusted", "windows-sys 0.52.0", ] @@ -3450,6 +3719,16 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3582f63211428f83597b51b2ddb88e2a91a9d52d12831f9d08f5e624e8977422" +[[package]] +name = "roaring" +version = "0.10.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a652edd001c53df0b3f96a36a8dc93fce6866988efc16808235653c6bcac8bf2" +dependencies = [ + "bytemuck", + "byteorder", +] + [[package]] name = "rpassword" version = "7.3.1" @@ -3479,9 +3758,9 @@ checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustc-hash" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" [[package]] name = "rustix" @@ -3512,10 +3791,11 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.22" +version = "0.23.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb9263ab4eb695e42321db096e3b8fbd715a59b154d5c88d82db2175b681ba7" +checksum = "47796c98c480fce5406ef69d1c76378375492c3b0a0de587be0c1d9feb12f395" dependencies = [ + "log", "once_cell", "ring", "rustls-pki-types", @@ -3554,6 +3834,45 @@ dependencies = [ "web-time", ] +[[package]] +name = "rustls-platform-verifier" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e012c45844a1790332c9386ed4ca3a06def221092eda277e6f079728f8ea99da" +dependencies = [ + "core-foundation", + "core-foundation-sys", + "jni", + "log", + "once_cell", + "rustls 0.23.23", + "rustls-native-certs", + "rustls-platform-verifier-android", + "rustls-webpki", + "security-framework", + "security-framework-sys", + "webpki-root-certs", + "windows-sys 0.52.0", +] + +[[package]] +name = "rustls-platform-verifier-android" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" + +[[package]] +name = "rustls-tokio-stream" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "faa7dc7c991d9164e55bbf1558029eb5b84d32cc4d61a7df5b8641b2deedc4b3" +dependencies = [ + "futures", + "rustls 0.23.23", + "socket2", + "tokio", +] + [[package]] name = "rustls-webpki" version = "0.102.8" @@ -3635,18 +3954,7 @@ version = "0.7.0" source = "git+https://github.com/elprans/scram#b1f594638f1022ed7e6550a63ad94bb95256a097" dependencies = [ "base64 0.21.7", - "rand", - "ring", -] - -[[package]] -name = "scram-2" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d746fe0e755a1825a7ae6504e40de96f6b5001b45e32b05441fc1cfbf5ff7359" -dependencies = [ - "base64 0.22.1", - "rand", + "rand 0.8.5", "ring", ] @@ -3690,29 +3998,29 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" +checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" +checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "serde_json" -version = "1.0.138" +version = "1.0.139" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949" +checksum = "44f86c3acccc9c65b153fe1b85a3be07fe5515274ec9f0653b4a0875731c72a6" dependencies = [ "indexmap", "itoa", @@ -3876,9 +4184,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.2" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd" [[package]] name = "smawk" @@ -3905,7 +4213,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3918,12 +4226,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "spin" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" - [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -3961,9 +4263,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.96" +version = "2.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80" +checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" dependencies = [ "proc-macro2", "quote", @@ -3987,7 +4289,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4009,15 +4311,15 @@ dependencies = [ [[package]] name = "target-triple" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42a4d50cdb458045afc8131fd91b64904da29548bcb63c7236e0844936c13078" +checksum = "1ac9aa371f599d22256307c24a9d748c041e548cbf599f35d890f9d365361790" [[package]] name = "tempfile" -version = "3.16.0" +version = "3.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38c246215d7d24f48ae091a2902398798e05d978b24315d6efbc00ede9a8bb91" +checksum = "22e5a0acb1f3f55f65cc4a866c361b2fb2a0ff6366785ae6fbb5f85df07ba230" dependencies = [ "cfg-if", "fastrand", @@ -4119,7 +4421,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4130,7 +4432,7 @@ checksum = "5c89e72a01ed4c579669add59014b9a524d609c0c88c6a585ce37485879f6ffb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "test-case-core", ] @@ -4186,7 +4488,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4197,7 +4499,7 @@ checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4244,46 +4546,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" -[[package]] -name = "tls-api" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8eb75b7304e6c157a435fff36a9ddc111ad410015d5260b306f10a18cffad72" -dependencies = [ - "anyhow", - "pem", - "tempfile", - "thiserror 2.0.11", - "tokio", -] - -[[package]] -name = "tls-api-not-tls" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e499a14f1a4d2552a77a7db66dc011f2ab0b6addc23d1f0b65bd757e91f5fd33" -dependencies = [ - "anyhow", - "thiserror 2.0.11", - "tls-api", - "tokio", -] - -[[package]] -name = "tls-api-rustls" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69788bbcd8237aa8bed3709aae340d884c3013b2e69d7df34d35d877de3f545b" -dependencies = [ - "anyhow", - "rustls 0.23.22", - "thiserror 2.0.11", - "tls-api", - "tokio", - "webpki", - "webpki-roots", -] - [[package]] name = "tokio" version = "1.43.0" @@ -4309,7 +4571,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4329,7 +4591,7 @@ version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" dependencies = [ - "rustls 0.23.22", + "rustls 0.23.23", "tokio", ] @@ -4359,9 +4621,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" +checksum = "cd87a5cdd6ffab733b2f74bc4fd7ee5fff6634124999ac278c35fc78c6120148" dependencies = [ "serde", "serde_spanned", @@ -4380,9 +4642,9 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.23" +version = "0.22.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02a8b472d1a3d7c18e2d61a489aee3453fd9031c33e4f55bd533f4a7adca1bee" +checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474" dependencies = [ "indexmap", "serde", @@ -4438,7 +4700,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4473,9 +4735,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "unicase" @@ -4485,9 +4747,9 @@ checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" [[package]] name = "unicode-ident" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034" +checksum = "00e2473a93778eb0bad35909dff6a10d28e63f792f16ed15e404fca9d5eeedbe" [[package]] name = "unicode-linebreak" @@ -4495,6 +4757,15 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f" +[[package]] +name = "unicode-normalization" +version = "0.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" +dependencies = [ + "tinyvec", +] + [[package]] name = "unicode-segmentation" version = "1.12.0" @@ -4563,12 +4834,12 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.12.1" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3758f5e68192bb96cc8f9b7e2c2cfdabb435499a28499a42f8f984092adad4b" +checksum = "93d59ca99a559661b96bf898d8fce28ed87935fd2bea9f05983c1464dd6c71b1" dependencies = [ - "getrandom 0.2.15", - "rand", + "getrandom 0.3.1", + "rand 0.9.0", "serde", ] @@ -4592,9 +4863,9 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "wait-timeout" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11" dependencies = [ "libc", ] @@ -4689,7 +4960,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "wasm-bindgen-shared", ] @@ -4724,7 +4995,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -4805,6 +5076,15 @@ dependencies = [ "untrusted", ] +[[package]] +name = "webpki-root-certs" +version = "0.26.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09aed61f5e8d2c18344b3faa33a4c837855fe56642757754775548fee21386c4" +dependencies = [ + "rustls-pki-types", +] + [[package]] name = "webpki-roots" version = "0.26.8" @@ -4837,6 +5117,12 @@ dependencies = [ "web-sys", ] +[[package]] +name = "widestring" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311" + [[package]] name = "winapi" version = "0.3.9" @@ -5114,13 +5400,23 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.7.0" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e49d2d35d3fad69b39b94139037ecfb4f359f08958b9c11e7315ce770462419" +checksum = "0e7f4ea97f6f78012141bcdb6a216b2609f0979ada50b20ca5b52dde2eac2bb1" dependencies = [ "memchr", ] +[[package]] +name = "winreg" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +dependencies = [ + "cfg-if", + "windows-sys 0.48.0", +] + [[package]] name = "winreg" version = "0.52.0" @@ -5237,7 +5533,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "synstructure", ] @@ -5248,7 +5544,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ "byteorder", - "zerocopy-derive", + "zerocopy-derive 0.7.35", +] + +[[package]] +name = "zerocopy" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dde3bb8c68a8f3f1ed4ac9221aad6b10cece3e60a8e2ea54a6a2dec806d0084c" +dependencies = [ + "zerocopy-derive 0.8.20", ] [[package]] @@ -5259,7 +5564,18 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eea57037071898bf96a6da35fd626f4f27e9cee3ead2a6c703cf09d472b2e700" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.98", ] [[package]] @@ -5279,7 +5595,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "synstructure", ] @@ -5300,7 +5616,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5322,7 +5638,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5345,7 +5661,7 @@ dependencies = [ "lzma-rs", "memchr", "pbkdf2", - "rand", + "rand 0.8.5", "sha1", "thiserror 2.0.11", "time", @@ -5370,27 +5686,27 @@ dependencies = [ [[package]] name = "zstd" -version = "0.13.2" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" +checksum = "e91ee311a569c327171651566e07972200e76fcfe2242a4fa446149a3881c08a" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "7.2.1" +version = "7.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" +checksum = "f3051792fbdc2e1e143244dc28c60f73d8470e93f3f9cbd0ead44da5ed802722" dependencies = [ "zstd-sys", ] [[package]] name = "zstd-sys" -version = "2.0.13+zstd.1.5.6" +version = "2.0.14+zstd.1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" +checksum = "8fb060d4926e4ac3a3ad15d864e99ceb5f343c6b34f5bd6d81ae6ed417311be5" dependencies = [ "cc", "pkg-config", diff --git a/Cargo.toml b/Cargo.toml index c6985099..e43f0e97 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -34,10 +34,13 @@ heck = "0.5.0" [dependencies] edgeql-parser = {git = "https://github.com/edgedb/edgeql"} -gel-protocol = {git = "https://github.com/edgedb/edgedb-rust/", features=["all-types"]} -gel-derive = {git = "https://github.com/edgedb/edgedb-rust/"} -gel-errors = {git = "https://github.com/edgedb/edgedb-rust/"} -gel-tokio = {git = "https://github.com/edgedb/edgedb-rust/", features=["admin_socket", "unstable"]} + +# Use cargo update for these +gel-protocol = { version = "0", features = ["all-types"] } +gel-derive = { version = "0" } +gel-errors = { version = "0" } +gel-tokio = { version = "0", features=["admin_socket", "unstable"] } + snafu = "0.8.4" ansi-escapes = "0.2" anyhow = "1.0.23" diff --git a/src/options.rs b/src/options.rs index fbc40f8a..0e6bd380 100644 --- a/src/options.rs +++ b/src/options.rs @@ -199,7 +199,7 @@ pub struct ConnectionOptions { #[arg(long, hide=true, help_heading=Some(CONN_OPTIONS_GROUP))] #[arg(value_name = "insecure | no_host_verification | strict | default")] #[arg(global = true)] - tls_security: Option, + pub tls_security: Option, /// Override server name used for TLS connections and certificate /// verification. @@ -878,7 +878,7 @@ impl Options { ); } let sock = runstate_dir(name)?.join(format!(".s.EDGEDB.admin.{port}")); - cfg = cfg.with_unix_path(&sock); + cfg = cfg.with_unix_path(&sock)?; } (true, Some(_), None) => { anyhow::bail!( diff --git a/src/portable/instance/link.rs b/src/portable/instance/link.rs index 28655844..93e1ab09 100644 --- a/src/portable/instance/link.rs +++ b/src/portable/instance/link.rs @@ -1,6 +1,7 @@ use std::fmt; use std::sync::{Arc, Mutex}; +use gel_tokio::builder::CertCheck; use ring::digest; use rustls::client::danger::HandshakeSignatureValid; @@ -11,7 +12,7 @@ use rustls::{DigitallySignedStruct, SignatureScheme}; use gel_errors::{ClientNoCredentialsError, Error, PasswordRequired}; use gel_tokio::credentials::TlsSecurity; -use gel_tokio::{tls, Client}; +use gel_tokio::Client; use gel_tokio::{Builder, Config}; use rustyline::error::ReadlineError; @@ -44,22 +45,23 @@ pub async fn run_async(cmd: &Link, opts: &Options) -> anyhow::Result<()> { } let mut has_branch: bool = false; - let config: Config = conn_params(cmd, opts, &mut has_branch).await?; + let mut config: Config = conn_params(cmd, opts, &mut has_branch).await?; let mut creds = config.as_credentials()?; - let root_cert_store = config.root_cert_store()?; - let inner = WebPkiServerVerifier::builder(Arc::new(root_cert_store)).build()?; - let verifier = Arc::new(InteractiveCertVerifier { - inner, - cert_out: Mutex::new(None), - tls_security: creds.tls_security, - system_ca_only: creds.tls_ca.is_none(), - non_interactive: cmd.non_interactive, - quiet: cmd.quiet, - trust_tls_cert: cmd.trust_tls_cert, - }); - let mut config = config.with_cert_verifier(verifier.clone()); + // let root_cert_store = config.root_cert_store()?; + // let inner = WebPkiServerVerifier::builder(Arc::new(root_cert_store)).build()?; + // let verifier = Arc::new(InteractiveCertVerifier { + // inner, + // cert_out: Mutex::new(None), + // tls_security: creds.tls_security, + // system_ca_only: creds.tls_ca.is_none(), + // non_interactive: cmd.non_interactive, + // quiet: cmd.quiet, + // trust_tls_cert: cmd.trust_tls_cert, + // }); + // let mut config = config.with_cert_verifier(verifier.clone()); let mut connect_result = connect(&config).await; if let Err(e) = connect_result { + eprintln!("Connection error: {e:?}"); if e.is::() { let password; @@ -77,19 +79,16 @@ pub async fn run_async(cmd: &Link, opts: &Options) -> anyhow::Result<()> { config = config.with_password(&password); creds.password = Some(password); - if let Some(cert) = &*verifier.cert_out.lock().unwrap() { - let pem = pem::encode(&pem::Pem::new("CERTIFICATE", cert.to_vec())); - config = config.with_pem_certificates(&pem)?; - } + // if let Some(cert) = &*verifier.cert_out.lock().unwrap() { + // let pem = pem::encode(&pem::Pem::new("CERTIFICATE", cert.to_vec())); + // config = config.with_pem_certificates(&pem)?; + // } connect_result = Ok(connect(&config).await?); } else { - return Err(e.into()); } } - let mut connection: Client = connect_result.unwrap(); let ver = get_server_version(&mut connection).await?; - if !has_branch && opts.conn_options.branch.is_none() && opts.conn_options.database.is_none() { config = config.with_database(&get_current_branch(&mut connection).await?)?; @@ -112,9 +111,9 @@ pub async fn run_async(cmd: &Link, opts: &Options) -> anyhow::Result<()> { } } - if let Some(cert) = &*verifier.cert_out.lock().unwrap() { - creds.tls_ca = Some(pem::encode(&pem::Pem::new("CERTIFICATE", cert.to_vec()))); - } + // if let Some(cert) = &*verifier.cert_out.lock().unwrap() { + // creds.tls_ca = Some(pem::encode(&pem::Pem::new("CERTIFICATE", cert.to_vec()))); + // } let (cred_path, instance_name) = match &cmd.name { Some(InstanceName::Local(name)) => (credentials::path(name)?, name.clone()), @@ -257,13 +256,13 @@ impl ServerCertVerifier for InteractiveCertVerifier { let mut root_store = rustls::RootCertStore::empty(); root_store.add(end_entity.clone())?; - tls::NoHostnameVerifier::new(Arc::new(root_store)).verify_server_cert( - end_entity, - intermediates, - server_name, - ocsp_response, - now, - )?; + // tls::NoHostnameVerifier::new(Arc::new(root_store)).verify_server_cert( + // end_entity, + // intermediates, + // server_name, + // ocsp_response, + // now, + // )?; // Acquire consensus to trust the root of presented_certs chain let fingerprint = digest::digest(&digest::SHA1_FOR_LEGACY_USE_ONLY, end_entity); @@ -350,6 +349,10 @@ async fn connect(cfg: &gel_tokio::Config) -> Result { async fn conn_params(cmd: &Link, opts: &Options, has_branch: &mut bool) -> anyhow::Result { let mut builder = options::prepare_conn_params(opts)?; + // If the user doesn't specify a TLS CA, we need to accept all certs + if cmd.conn.tls_ca_file.is_none() { + builder.tls_security(TlsSecurity::Insecure); + } prompt_conn_params(&opts.conn_options, &mut builder, cmd, has_branch).await } @@ -415,7 +418,7 @@ async fn prompt_conn_params( if options.host.is_none() { builder.host( &question::String::new("Specify server host") - .default(config.host().unwrap_or("localhost")) + .default(config.host().as_deref().unwrap_or("localhost")) .ask()?, )?; }; diff --git a/tests/shared-client-tests/Cargo.toml b/tests/shared-client-tests/Cargo.toml index b24e6681..8d855742 100644 --- a/tests/shared-client-tests/Cargo.toml +++ b/tests/shared-client-tests/Cargo.toml @@ -18,9 +18,7 @@ tempfile = "3.1.0" assert_cmd = "2.0.8" predicates = "3.1.2" serde_json = "1.0" -gel-protocol = { git = "https://github.com/edgedb/edgedb-rust/", features = [ - "all-types", -] } +gel-protocol = { version = "0", features = ["all-types"] } sha1 = "0.10.1" indexmap = { workspace = true } hex = { version = "0.4.3", features = ["serde"] }