diff --git a/Cargo.lock b/Cargo.lock index 64abf7e..2ce6ba7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -70,6 +70,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f" dependencies = [ "cfg-if 1.0.0", + "getrandom", "once_cell", "version_check", ] @@ -372,9 +373,9 @@ dependencies = [ [[package]] name = "atoi" -version = "1.0.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7c57d12312ff59c811c0643f4d80830505833c9ffaebd193d819392b265be8e" +checksum = "f28d99ec8bfea296261ca1af174f24225171fea9664ba9003cbebee704810528" dependencies = [ "num-traits", ] @@ -473,6 +474,7 @@ dependencies = [ "axum", "axum-core", "bytes", + "cookie", "futures-util", "http", "http-body", @@ -499,9 +501,9 @@ dependencies = [ [[package]] name = "axum-sessions" -version = "0.5.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "714cad544cd87d8da821cda715bb9aaa5d4d1adbdb64c549b18138e3cbf93c44" +checksum = "c84930174d586fdc66a8c317cdf48b8bb487a1d079c38efc67d81a80c11c664f" dependencies = [ "async-session", "axum", @@ -567,7 +569,7 @@ version = "0.1.0" dependencies = [ "anyhow", "axum", - "clap 4.4.6", + "clap 4.4.7", "nefarious-login", "tokio", "tracing-subscriber", @@ -593,6 +595,9 @@ name = "bitflags" version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" +dependencies = [ + "serde", +] [[package]] name = "blake3" @@ -713,7 +718,7 @@ version = "0.1.0" dependencies = [ "anyhow", "axum", - "clap 4.4.6", + "clap 4.4.7", "nefarious-login", "tokio", "tracing-subscriber", @@ -721,9 +726,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.4.6" +version = "4.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d04704f56c2cde07f43e8e2c154b43f216dc5c92fc98ada720177362f953b956" +checksum = "ac495e00dcec98c83465d5ad66c5c4fabd652fd6686e7c6269b117e729a6f17b" dependencies = [ "clap_builder", "clap_derive", @@ -731,9 +736,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.4.6" +version = "4.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e231faeaca65ebd1ea3c737966bf858971cd38c3849107aa3ea7de90a804e45" +checksum = "c77ed9a32a62e6ca27175d00d29d05ca32e396ea1eb5fb01d8256b669cec7663" dependencies = [ "anstream", "anstyle", @@ -743,9 +748,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.4.2" +version = "4.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0862016ff20d69b84ef8247369fabf5c008a7417002411897d40ee1f4532b873" +checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" dependencies = [ "heck", "proc-macro2", @@ -755,9 +760,9 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.5.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961" +checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" [[package]] name = "colorchoice" @@ -1126,6 +1131,9 @@ name = "either" version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" +dependencies = [ + "serde", +] [[package]] name = "elliptic-curve" @@ -1173,6 +1181,17 @@ dependencies = [ "windows-sys", ] +[[package]] +name = "etcetera" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "136d1b5283a1ab77bd9257427ffd09d8667ced0570b6f938942bc7568ed5b943" +dependencies = [ + "cfg-if 1.0.0", + "home", + "windows-sys", +] + [[package]] name = "event-listener" version = "2.5.3" @@ -1227,6 +1246,17 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8fcfdc7a0362c9f4444381a9e697c79d435fe65b52a37466fc2c1184cee9edc6" +[[package]] +name = "flume" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181" +dependencies = [ + "futures-core", + "futures-sink", + "spin 0.9.8", +] + [[package]] name = "fnv" version = "1.0.7" @@ -1316,6 +1346,17 @@ dependencies = [ "parking_lot 0.11.2", ] +[[package]] +name = "futures-intrusive" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d930c203dd0b6ff06e0201a4a2fe9149b43c684fd4420555b26d21b1a02956f" +dependencies = [ + "futures-core", + "lock_api", + "parking_lot 0.12.1", +] + [[package]] name = "futures-io" version = "0.3.28" @@ -1576,6 +1617,15 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "home" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb" +dependencies = [ + "windows-sys", +] + [[package]] name = "http" version = "0.2.9" @@ -1649,9 +1699,9 @@ dependencies = [ "futures-util", "http", "hyper", - "rustls 0.21.7", + "rustls", "tokio", - "tokio-rustls 0.24.1", + "tokio-rustls", ] [[package]] @@ -1827,6 +1877,17 @@ version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" +[[package]] +name = "libsqlite3-sys" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afc22eff61b133b115c6e8c74e818c628d6d5e7a502afea6f64dee076dd94326" +dependencies = [ + "cc", + "pkg-config", + "vcpkg", +] + [[package]] name = "linux-raw-sys" version = "0.3.8" @@ -1947,16 +2008,16 @@ dependencies = [ "async-sqlx-session", "async-trait", "axum", - "axum-extra 0.7.7", + "axum-extra 0.8.0", "axum-sessions", - "clap 4.4.6", + "clap 4.4.7", "oauth2", "openidconnect", "pretty_assertions", "sealed_test", "serde", "serde_json", - "sqlx 0.6.3", + "sqlx 0.7.2", "tokio", "tower", "tower-http", @@ -2589,14 +2650,14 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls 0.21.7", + "rustls", "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", "system-configuration", "tokio", - "tokio-rustls 0.24.1", + "tokio-rustls", "tower-service", "url", "wasm-bindgen", @@ -2709,18 +2770,6 @@ dependencies = [ "windows-sys", ] -[[package]] -name = "rustls" -version = "0.20.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b80e3dec595989ea8510028f30c408a4630db12c9cbb8de34203b89d6577e99" -dependencies = [ - "log", - "ring 0.16.20", - "sct", - "webpki", -] - [[package]] name = "rustls" version = "0.21.7" @@ -2898,9 +2947,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.107" +version = "1.0.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" +checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b" dependencies = [ "itoa", "ryu", @@ -3099,6 +3148,9 @@ name = "spin" version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +dependencies = [ + "lock_api", +] [[package]] name = "spki" @@ -3144,12 +3196,15 @@ dependencies = [ [[package]] name = "sqlx" -version = "0.6.3" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8de3b03a925878ed54a954f621e64bf55a3c1bd29652d0d1a17830405350188" +checksum = "0e50c216e3624ec8e7ecd14c6a6a6370aad6ee5d8cfc3ab30b5162eeeef2ed33" dependencies = [ - "sqlx-core 0.6.3", - "sqlx-macros 0.6.3", + "sqlx-core 0.7.2", + "sqlx-macros 0.7.2", + "sqlx-mysql", + "sqlx-postgres", + "sqlx-sqlite", ] [[package]] @@ -3172,7 +3227,7 @@ dependencies = [ "event-listener 2.5.3", "futures-channel", "futures-core", - "futures-intrusive", + "futures-intrusive 0.4.2", "futures-util", "hashlink 0.7.0", "hex", @@ -3194,7 +3249,7 @@ dependencies = [ "sha2 0.10.8", "smallvec", "sqlformat 0.1.8", - "sqlx-rt 0.5.13", + "sqlx-rt", "stringprep", "thiserror", "url", @@ -3203,55 +3258,45 @@ dependencies = [ [[package]] name = "sqlx-core" -version = "0.6.3" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa8241483a83a3f33aa5fff7e7d9def398ff9990b2752b6c6112b83c6d246029" +checksum = "8d6753e460c998bbd4cd8c6f0ed9a64346fcca0723d6e75e52fdc351c5d2169d" dependencies = [ - "ahash 0.7.6", - "atoi 1.0.0", - "base64 0.13.1", - "bitflags 1.3.2", + "ahash 0.8.3", + "atoi 2.0.0", "byteorder", "bytes", "crc 3.0.1", "crossbeam-queue", - "dirs", "dotenvy", "either", "event-listener 2.5.3", "futures-channel", "futures-core", - "futures-intrusive", + "futures-intrusive 0.5.0", + "futures-io", "futures-util", "hashlink 0.8.4", "hex", - "hkdf", - "hmac 0.12.1", - "indexmap 1.9.3", - "itoa", - "libc", + "indexmap 2.0.2", "log", - "md-5", "memchr", "once_cell", "paste", "percent-encoding", - "rand", - "rustls 0.20.9", + "rustls", "rustls-pemfile", "serde", "serde_json", - "sha1", "sha2 0.10.8", "smallvec", "sqlformat 0.2.2", - "sqlx-rt 0.6.3", - "stringprep", "thiserror", + "tokio", "tokio-stream", + "tracing", "url", - "webpki-roots 0.22.6", - "whoami", + "webpki-roots 0.24.0", ] [[package]] @@ -3269,30 +3314,131 @@ dependencies = [ "serde_json", "sha2 0.10.8", "sqlx-core 0.5.13", - "sqlx-rt 0.5.13", + "sqlx-rt", "syn 1.0.109", "url", ] [[package]] name = "sqlx-macros" -version = "0.6.3" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9966e64ae989e7e575b19d7265cb79d7fc3cbbdf179835cb0d716f294c2049c9" +checksum = "9a793bb3ba331ec8359c1853bd39eed32cdd7baaf22c35ccf5c92a7e8d1189ec" +dependencies = [ + "proc-macro2", + "quote", + "sqlx-core 0.7.2", + "sqlx-macros-core", + "syn 1.0.109", +] + +[[package]] +name = "sqlx-macros-core" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a4ee1e104e00dedb6aa5ffdd1343107b0a4702e862a84320ee7cc74782d96fc" dependencies = [ "dotenvy", "either", "heck", + "hex", "once_cell", "proc-macro2", "quote", + "serde", + "serde_json", "sha2 0.10.8", - "sqlx-core 0.6.3", - "sqlx-rt 0.6.3", + "sqlx-core 0.7.2", + "sqlx-mysql", + "sqlx-postgres", + "sqlx-sqlite", "syn 1.0.109", + "tempfile", + "tokio", "url", ] +[[package]] +name = "sqlx-mysql" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "864b869fdf56263f4c95c45483191ea0af340f9f3e3e7b4d57a61c7c87a970db" +dependencies = [ + "atoi 2.0.0", + "base64 0.21.4", + "bitflags 2.4.1", + "byteorder", + "bytes", + "crc 3.0.1", + "digest 0.10.7", + "dotenvy", + "either", + "futures-channel", + "futures-core", + "futures-io", + "futures-util", + "generic-array", + "hex", + "hkdf", + "hmac 0.12.1", + "itoa", + "log", + "md-5", + "memchr", + "once_cell", + "percent-encoding", + "rand", + "rsa", + "serde", + "sha1", + "sha2 0.10.8", + "smallvec", + "sqlx-core 0.7.2", + "stringprep", + "thiserror", + "tracing", + "whoami", +] + +[[package]] +name = "sqlx-postgres" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb7ae0e6a97fb3ba33b23ac2671a5ce6e3cabe003f451abd5a56e7951d975624" +dependencies = [ + "atoi 2.0.0", + "base64 0.21.4", + "bitflags 2.4.1", + "byteorder", + "crc 3.0.1", + "dotenvy", + "etcetera", + "futures-channel", + "futures-core", + "futures-io", + "futures-util", + "hex", + "hkdf", + "hmac 0.12.1", + "home", + "itoa", + "log", + "md-5", + "memchr", + "once_cell", + "rand", + "serde", + "serde_json", + "sha1", + "sha2 0.10.8", + "smallvec", + "sqlx-core 0.7.2", + "stringprep", + "thiserror", + "tracing", + "whoami", +] + [[package]] name = "sqlx-rt" version = "0.5.13" @@ -3305,14 +3451,25 @@ dependencies = [ ] [[package]] -name = "sqlx-rt" -version = "0.6.3" +name = "sqlx-sqlite" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "804d3f245f894e61b1e6263c84b23ca675d96753b5abfd5cc8597d86806e8024" +checksum = "d59dc83cf45d89c555a577694534fcd1b55c545a816c816ce51f20bbe56a4f3f" dependencies = [ - "once_cell", - "tokio", - "tokio-rustls 0.23.4", + "atoi 2.0.0", + "flume", + "futures-channel", + "futures-core", + "futures-executor", + "futures-intrusive 0.5.0", + "futures-util", + "libsqlite3-sys", + "log", + "percent-encoding", + "serde", + "sqlx-core 0.7.2", + "tracing", + "url", ] [[package]] @@ -3504,24 +3661,13 @@ dependencies = [ "syn 2.0.38", ] -[[package]] -name = "tokio-rustls" -version = "0.23.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" -dependencies = [ - "rustls 0.20.9", - "tokio", - "webpki", -] - [[package]] name = "tokio-rustls" version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" dependencies = [ - "rustls 0.21.7", + "rustls", "tokio", ] @@ -3880,23 +4026,13 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "webpki" -version = "0.22.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed63aea5ce73d0ff405984102c42de94fc55a6b75765d621c65262469b3c9b53" -dependencies = [ - "ring 0.17.5", - "untrusted 0.9.0", -] - [[package]] name = "webpki-roots" -version = "0.22.6" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" +checksum = "b291546d5d9d1eab74f069c77749f2cb8504a12caa20f0f2de93ddbf6f411888" dependencies = [ - "webpki", + "rustls-webpki", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index d841733..102dd69 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,34 +5,34 @@ resolver = "2" [workspace.dependencies] nefarious-login = { path = "crates/nefarious-login" } -anyhow = { version = "1.0.71" } +anyhow = { version = "1.0.75" } tokio = { version = "1", features = ["full"] } tracing = { version = "0.1", features = ["log"] } tracing-subscriber = { version = "0.3.17", features = ["env-filter"] } -clap = {version = "4.3.0", features = ["derive", "env"]} -async-trait = {version = "0.1.68", features = []} +clap = {version = "4.4.7", features = ["derive", "env"]} +async-trait = {version = "0.1.74", features = []} -axum = {version = "0.6.18", features = []} -axum-extra = {version = "0.7.4", features = ["cookie", "cookie-private"]} -axum-sessions = {version = "0.5.0", features = []} +axum = {version = "0.6.20", features = []} +axum-extra = {version = "0.8.0", features = ["cookie", "cookie-private"]} +axum-sessions = {version = "0.6.1", features = []} async-sqlx-session = {version = "0.4.0", features = ["pg"]} serde = {version = "1.0", features = ["derive"]} -serde_json = {version = "1.0.107"} +serde_json = {version = "1.0.108"} -uuid = {version = "1.3.3", features = []} -sqlx = { version = "0.6.2", features = [ +uuid = {version = "1.5.0", features = []} +sqlx = { version = "0.7.2", features = [ "runtime-tokio-rustls", "postgres", "migrate", ] } -zitadel = { version = "3.3.1", features = ["axum"] } +zitadel = { version = "3.4.29", features = ["axum"] } tower = "0.4.13" -tower-http = { version = "0.4.0", features = ["cors", "trace"] } -oauth2 = "4.4.0" -openidconnect = "3.0.0" +tower-http = { version = "0.4.4", features = ["cors", "trace"] } +oauth2 = "4.4.2" +openidconnect = "3.4.0" pretty_assertions = "1.4.0" sealed_test = "1.0.0"