diff --git a/Cargo.lock b/Cargo.lock index bff5379..736dda1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -284,7 +284,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -295,13 +295,13 @@ checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" [[package]] name = "async-trait" -version = "0.1.83" +version = "0.1.84" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" +checksum = "1b1244b10dcd56c92219da4e14caa97e312079e185f04ba3eea25061561dc0a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -327,14 +327,14 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "axum" -version = "0.7.9" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f" +checksum = "6d6fd624c75e18b3b4c6b9caf42b1afe24437daaee904069137d8bab077be8b8" dependencies = [ - "async-trait", "axum-core", "axum-macros", "bytes", + "form_urlencoded", "futures-util", "http", "http-body", @@ -362,11 +362,10 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.4.5" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199" +checksum = "df1362f362fd16024ae199c1970ce98f9661bf5ef94b9808fee734bc3698b733" dependencies = [ - "async-trait", "bytes", "futures-util", "http", @@ -383,13 +382,13 @@ dependencies = [ [[package]] name = "axum-macros" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57d123550fa8d071b7255cb0cc04dc302baa6c8c4a79f55701552684d8399bce" +checksum = "604fde5e028fea851ce1d8570bbdc034bec850d157f7569d10f347d06808c05c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -522,7 +521,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -567,9 +566,9 @@ checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" [[package]] name = "cc" -version = "1.2.6" +version = "1.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d6dbb628b8f8555f86d0323c2eb39e3ec81901f4b83e091db8a6a76d316a333" +checksum = "a012a0df96dd6d06ba9a1b29d6402d1a5d77c6befd2566afdc26e10603dc93d7" dependencies = [ "shlex", ] @@ -640,7 +639,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -792,7 +791,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -803,7 +802,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -835,7 +834,7 @@ checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -858,7 +857,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -1041,6 +1040,12 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f" + [[package]] name = "foreign-types" version = "0.3.2" @@ -1151,7 +1156,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -1184,6 +1189,19 @@ dependencies = [ "slab", ] +[[package]] +name = "generator" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc6bd114ceda131d3b1d665eba35788690ad37f5916457286b32ab6fd3c438dd" +dependencies = [ + "cfg-if", + "libc", + "log", + "rustversion", + "windows 0.58.0", +] + [[package]] name = "generic-array" version = "0.14.7" @@ -1274,14 +1292,19 @@ name = "hashbrown" version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash", +] [[package]] name = "hashlink" -version = "0.9.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" +checksum = "7382cf6263419f2d8df38c55d7da83da5c18aef87fc7a7fc1fb1e344edfe14c1" dependencies = [ - "hashbrown 0.14.5", + "hashbrown 0.15.2", ] [[package]] @@ -1343,7 +1366,7 @@ checksum = "f9c7c7c8ac16c798734b8a24560c1362120597c40d5e1459f09498f8f6c8f2ba" dependencies = [ "cfg-if", "libc", - "windows", + "windows 0.52.0", ] [[package]] @@ -1476,7 +1499,7 @@ dependencies = [ "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows-core", + "windows-core 0.52.0", ] [[package]] @@ -1603,7 +1626,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -1663,7 +1686,7 @@ checksum = "0122b7114117e64a63ac49f752a5ca4624d534c7b1c7de796ac196381cd2d947" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -1849,6 +1872,19 @@ dependencies = [ "value-bag", ] +[[package]] +name = "loom" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "419e0dc8046cb947daa77eb95ae174acfbddb7673b4151f56d1eed8e93fbfaca" +dependencies = [ + "cfg-if", + "generator", + "scoped-tls", + "tracing", + "tracing-subscriber", +] + [[package]] name = "matchers" version = "0.1.0" @@ -1860,9 +1896,9 @@ dependencies = [ [[package]] name = "matchit" -version = "0.7.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" +checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3" [[package]] name = "md-5" @@ -1937,25 +1973,23 @@ dependencies = [ [[package]] name = "moka" -version = "0.12.8" +version = "0.12.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32cf62eb4dd975d2dde76432fb1075c49e3ee2331cf36f1f8fd4b66550d32b6f" +checksum = "23db87a7f248211f6a7c8644a1b750541f8a4c68ae7de0f908860e44c0c201f6" dependencies = [ "async-lock", - "async-trait", "crossbeam-channel", "crossbeam-epoch", "crossbeam-utils", "event-listener 5.3.1", "futures-util", - "once_cell", + "loom", "parking_lot 0.12.3", "quanta", "rustc_version", "smallvec", "tagptr", "thiserror 1.0.69", - "triomphe", "uuid", ] @@ -2026,7 +2060,6 @@ dependencies = [ "tracing-subscriber", "url", "utoipa", - "utoipa-redoc", "utoipa-swagger-ui", "uuid", ] @@ -2423,7 +2456,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -2486,7 +2519,7 @@ dependencies = [ "proc-macro2", "proc-macro2-diagnostics", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -2549,12 +2582,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "paste" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" - [[package]] name = "pem" version = "3.0.4" @@ -2611,7 +2638,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -2733,7 +2760,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -2753,7 +2780,7 @@ checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", "version_check", "yansi", ] @@ -2789,9 +2816,9 @@ dependencies = [ [[package]] name = "quanta" -version = "0.12.4" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773ce68d0bb9bc7ef20be3536ffe94e223e1f365bd374108b2659fac0c65cfe6" +checksum = "3bd1fe6824cea6538803de3ff1bc0cf3949024db3d43c9643024bfb33a807c0e" dependencies = [ "crossbeam-utils", "libc", @@ -2937,9 +2964,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.11" +version = "0.12.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe060fe50f524be480214aba758c71f99f90ee8c83c5a36b5e9e1d568eb4eb3" +checksum = "43e734407157c3c2034e0258f5e4473ddb361b1e85f95a66690d67264d7cd1da" dependencies = [ "base64 0.22.1", "bytes", @@ -3075,7 +3102,7 @@ dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.93", + "syn 2.0.94", "walkdir", ] @@ -3203,6 +3230,12 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "scoped-tls" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" + [[package]] name = "scopeguard" version = "1.2.0" @@ -3219,7 +3252,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -3277,7 +3310,7 @@ dependencies = [ "proc-macro2", "quote", "sea-bae", - "syn 2.0.93", + "syn 2.0.94", "unicode-ident", ] @@ -3341,7 +3374,7 @@ dependencies = [ "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", "thiserror 1.0.69", ] @@ -3365,7 +3398,7 @@ dependencies = [ "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -3437,7 +3470,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -3457,7 +3490,7 @@ checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -3491,7 +3524,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -3542,7 +3575,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -3672,21 +3705,11 @@ dependencies = [ "der", ] -[[package]] -name = "sqlformat" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bba3a93db0cc4f7bdece8bb09e77e2e785c20bfebf79eb8340ed80708048790" -dependencies = [ - "nom", - "unicode_categories", -] - [[package]] name = "sqlx" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93334716a037193fac19df402f8571269c84a00852f6a7066b5d2616dcd64d3e" +checksum = "4410e73b3c0d8442c5f99b425d7a435b5ee0ae4167b3196771dd3f7a01be745f" dependencies = [ "sqlx-core", "sqlx-macros", @@ -3697,41 +3720,35 @@ dependencies = [ [[package]] name = "sqlx-core" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4d8060b456358185f7d50c55d9b5066ad956956fddec42ee2e8567134a8936e" +checksum = "6a007b6936676aa9ab40207cde35daab0a04b823be8ae004368c0793b96a61e0" dependencies = [ - "atoi", "bigdecimal", - "byteorder", "bytes", "chrono", "crc", "crossbeam-queue", "either", "event-listener 5.3.1", - "futures-channel", "futures-core", "futures-intrusive", "futures-io", "futures-util", - "hashbrown 0.14.5", + "hashbrown 0.15.2", "hashlink", - "hex", "indexmap 2.7.0", "log", "memchr", "native-tls", "once_cell", - "paste", "percent-encoding", "rust_decimal", "serde", "serde_json", "sha2", "smallvec", - "sqlformat", - "thiserror 1.0.69", + "thiserror 2.0.9", "time", "tokio", "tokio-stream", @@ -3742,22 +3759,22 @@ dependencies = [ [[package]] name = "sqlx-macros" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cac0692bcc9de3b073e8d747391827297e075c7710ff6276d9f7a1f3d58c6657" +checksum = "3112e2ad78643fef903618d78cf0aec1cb3134b019730edb039b69eaf531f310" dependencies = [ "proc-macro2", "quote", "sqlx-core", "sqlx-macros-core", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] name = "sqlx-macros-core" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1804e8a7c7865599c9c79be146dc8a9fd8cc86935fa641d3ea58e5f0688abaa5" +checksum = "4e9f90acc5ab146a99bf5061a7eb4976b573f560bc898ef3bf8435448dd5e7ad" dependencies = [ "dotenvy", "either", @@ -3773,7 +3790,7 @@ dependencies = [ "sqlx-mysql", "sqlx-postgres", "sqlx-sqlite", - "syn 2.0.93", + "syn 2.0.94", "tempfile", "tokio", "url", @@ -3781,9 +3798,9 @@ dependencies = [ [[package]] name = "sqlx-mysql" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64bb4714269afa44aef2755150a0fc19d756fb580a67db8885608cf02f47d06a" +checksum = "4560278f0e00ce64938540546f59f590d60beee33fffbd3b9cd47851e5fff233" dependencies = [ "atoi", "base64 0.22.1", @@ -3819,7 +3836,7 @@ dependencies = [ "smallvec", "sqlx-core", "stringprep", - "thiserror 1.0.69", + "thiserror 2.0.9", "time", "tracing", "uuid", @@ -3828,9 +3845,9 @@ dependencies = [ [[package]] name = "sqlx-postgres" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fa91a732d854c5d7726349bb4bb879bb9478993ceb764247660aee25f67c2f8" +checksum = "c5b98a57f363ed6764d5b3a12bfedf62f07aa16e1856a7ddc2a0bb190a959613" dependencies = [ "atoi", "base64 0.22.1", @@ -3843,7 +3860,6 @@ dependencies = [ "etcetera", "futures-channel", "futures-core", - "futures-io", "futures-util", "hex", "hkdf", @@ -3863,7 +3879,7 @@ dependencies = [ "smallvec", "sqlx-core", "stringprep", - "thiserror 1.0.69", + "thiserror 2.0.9", "time", "tracing", "uuid", @@ -3872,9 +3888,9 @@ dependencies = [ [[package]] name = "sqlx-sqlite" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5b2cf34a45953bfd3daaf3db0f7a7878ab9b7a6b91b422d24a7a9e4c857b680" +checksum = "f85ca71d3a5b24e64e1d08dd8fe36c6c95c339a896cc33068148906784620540" dependencies = [ "atoi", "chrono", @@ -3963,9 +3979,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.93" +version = "2.0.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c786062daee0d6db1132800e623df74274a0a87322d8e183338e01b3d98d058" +checksum = "987bc0be1cdea8b10216bd06e2ca407d40b9543468fafd3ddfb02f36e77f71f3" dependencies = [ "proc-macro2", "quote", @@ -3989,7 +4005,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -4006,12 +4022,13 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.14.0" +version = "3.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c" +checksum = "9a8a559c81686f576e8cd0290cd2a24a2a9ad80c98b3478856500fcbd7acd704" dependencies = [ "cfg-if", "fastrand", + "getrandom", "once_cell", "rustix", "windows-sys 0.59.0", @@ -4043,7 +4060,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -4054,7 +4071,7 @@ checksum = "7b50fa271071aae2e6ee85f842e2e28ba8cd2c5fb67f11fcb1fd70b276f9e7d4" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -4148,7 +4165,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -4295,7 +4312,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -4337,12 +4354,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "triomphe" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859eb650cfee7434994602c3a68b25d77ad9e68c8a6cd491616ef86661382eb3" - [[package]] name = "try-lock" version = "0.2.5" @@ -4400,12 +4411,6 @@ version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" -[[package]] -name = "unicode_categories" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" - [[package]] name = "untrusted" version = "0.9.0" @@ -4445,8 +4450,7 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "utoipa" version = "5.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68e76d357bc95c7d0939c92c04c9269871a8470eea39cb1f0231eeadb0c47d0f" +source = "git+https://github.com/juhaku/utoipa.git#3ffad4bed73e5caeddc311bab70f810d1d772079" dependencies = [ "indexmap 2.7.0", "serde", @@ -4457,33 +4461,19 @@ dependencies = [ [[package]] name = "utoipa-gen" version = "5.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "564b03f8044ad6806bdc0d635e88be24967e785eef096df6b2636d2cc1e05d4b" +source = "git+https://github.com/juhaku/utoipa.git#3ffad4bed73e5caeddc311bab70f810d1d772079" dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.93", + "syn 2.0.94", "uuid", ] -[[package]] -name = "utoipa-redoc" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9218304bba9a0ea5e92085b0a427ccce5fd56eaaf6436d245b7578e6a95787e1" -dependencies = [ - "axum", - "serde", - "serde_json", - "utoipa", -] - [[package]] name = "utoipa-swagger-ui" version = "8.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db4b5ac679cc6dfc5ea3f2823b0291c777750ffd5e13b21137e0f7ac0e8f9617" +source = "git+https://github.com/juhaku/utoipa.git#3ffad4bed73e5caeddc311bab70f810d1d772079" dependencies = [ "axum", "base64 0.22.1", @@ -4501,8 +4491,7 @@ dependencies = [ [[package]] name = "utoipa-swagger-ui-vendored" version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2eebbbfe4093922c2b6734d7c679ebfebd704a0d7e56dfcb0d05818ce28977d" +source = "git+https://github.com/juhaku/utoipa.git#3ffad4bed73e5caeddc311bab70f810d1d772079" [[package]] name = "uuid" @@ -4596,7 +4585,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", "wasm-bindgen-shared", ] @@ -4631,7 +4620,7 @@ checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -4712,7 +4701,17 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" dependencies = [ - "windows-core", + "windows-core 0.52.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6" +dependencies = [ + "windows-core 0.58.0", "windows-targets 0.52.6", ] @@ -4725,6 +4724,41 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-core" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-result", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-implement" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.94", +] + +[[package]] +name = "windows-interface" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.94", +] + [[package]] name = "windows-registry" version = "0.2.0" @@ -4905,9 +4939,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.6.20" +version = "0.6.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" +checksum = "39281189af81c07ec09db316b302a3e67bf9bd7cbf6c820b50e35fee9c2fa980" dependencies = [ "memchr", ] @@ -4959,7 +4993,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", "synstructure", ] @@ -4981,7 +5015,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] @@ -5001,7 +5035,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", "synstructure", ] @@ -5030,7 +5064,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.93", + "syn 2.0.94", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index f498c86..95175b9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -29,15 +29,17 @@ members = [ ] [workspace.dependencies] -sea-orm = { version = "1.1.2", features = ["sqlx-sqlite", "sqlx-postgres", "sqlx-mysql", "runtime-tokio-native-tls", "macros"] } -reqwest = { version = "0.12.9", default-features = false, features = ["json", "native-tls", "native-tls-alpn", "charset", "http2", "multipart", "stream"] } -axum = { version = "0.7.9", features = ["macros"] } +sea-orm = { version = "1.1.3", features = ["sqlx-sqlite", "sqlx-postgres", "sqlx-mysql", "runtime-tokio-native-tls", "macros"] } +reqwest = { version = "0.12.12", default-features = false, features = ["json", "native-tls", "native-tls-alpn", "charset", "http2", "multipart", "stream"] } +axum = { version = "0.8.1", features = ["macros"] } clap = { version = "4.5.23", features = ["derive", "color", "usage", "env"] } url = { version = "2.5.4", features = ["serde"] } +utoipa = { git = "https://github.com/juhaku/utoipa.git", features = ["axum_extras", "uuid"] } +utoipa-swagger-ui = { git = "https://github.com/juhaku/utoipa.git", features = ["axum", "vendored"] } uuid = { version = "1.11.0", features = ["serde", "v7"] } [workspace.dependencies.sea-orm-migration] -version = "1.1.2" +version = "1.1.3" features = [ # Enable at least one `ASYNC_RUNTIME` and `DATABASE_DRIVER` feature if you want to run migration via CLI. # View the list of supported features at https://www.sea-ql.org/SeaORM/docs/install-and-config/database-and-async-runtime. diff --git a/notifico-app/Cargo.toml b/notifico-app/Cargo.toml index 45cb65f..069f8f1 100644 --- a/notifico-app/Cargo.toml +++ b/notifico-app/Cargo.toml @@ -13,8 +13,8 @@ notifico-dbpipeline = { path = "../notifico-dbpipeline" } notifico-project = { path = "../notifico-project" } notifico-attachment = { path = "../notifico-attachment" } -anyhow = "1.0.94" -async-trait = "0.1.83" +anyhow = "1.0.95" +async-trait = "0.1.84" axum = { workspace = true } backoff = { version = "0.4.0", features = ["tokio"] } clap = { workspace = true } @@ -25,14 +25,13 @@ jsonwebtoken = "9.3.0" log = "0.4.22" rust-embed = { version = "8.5.0", features = ["mime-guess"] } sea-orm = { workspace = true } -serde = { version = "1.0.215", features = ["derive"] } -serde_json = "1.0.133" +serde = { version = "1.0.217", features = ["derive"] } +serde_json = "1.0.134" tokio = { version = "1.42", features = ["macros", "rt", "sync", "rt-multi-thread", "signal"] } tower-http = { version = "0.6.2", features = ["cors"] } tracing = "0.1" tracing-subscriber = { version = "0.3.19", features = ["env-filter", "fmt"] } url = { workspace = true } -utoipa = { version = "5.2.0", features = ["axum_extras"] } -utoipa-redoc = { version = "5.0.0", features = ["axum"] } -utoipa-swagger-ui = { version = "8", features = ["axum", "vendored"] } +utoipa = { workspace = true } +utoipa-swagger-ui = { workspace = true } uuid = { workspace = true } diff --git a/notifico-app/src/ingest/http.rs b/notifico-app/src/ingest/http.rs index 77ad79a..cdcedab 100644 --- a/notifico-app/src/ingest/http.rs +++ b/notifico-app/src/ingest/http.rs @@ -10,8 +10,6 @@ use std::net::SocketAddr; use std::sync::Arc; use tokio::net::TcpListener; use utoipa::{IntoParams, OpenApi}; -use utoipa_redoc::Redoc; -use utoipa_redoc::Servable; use utoipa_swagger_ui::SwaggerUi; use uuid::Uuid; @@ -36,7 +34,6 @@ pub async fn start(serviceapi_bind: SocketAddr, ext: HttpIngestExtensions) { let app = app.merge(SwaggerUi::new("/swagger-ui").url("/api-docs/openapi.json", ApiDoc::openapi())); - let app = app.merge(Redoc::with_url("/redoc", ApiDoc::openapi())); tokio::spawn(async { axum::serve(listener, app).await.unwrap() }); } diff --git a/notifico-app/src/public/http/mod.rs b/notifico-app/src/public/http/mod.rs index fc3bd01..da2c437 100644 --- a/notifico-app/src/public/http/mod.rs +++ b/notifico-app/src/public/http/mod.rs @@ -8,8 +8,6 @@ use std::net::SocketAddr; use std::sync::Arc; use tokio::net::TcpListener; use utoipa::OpenApi; -use utoipa_redoc::Redoc; -use utoipa_redoc::Servable; use utoipa_swagger_ui::SwaggerUi; #[derive(Clone)] @@ -31,7 +29,6 @@ pub(crate) async fn start(bind: SocketAddr, ext: HttpPublicExtensions) { let app = app.merge(SwaggerUi::new("/swagger-ui").url("/api-docs/openapi.json", ApiDoc::openapi())); - let app = app.merge(Redoc::with_url("/redoc", ApiDoc::openapi())); tokio::spawn(async { axum::serve(listener, app).await.unwrap() }); } diff --git a/notifico-app/src/public/http/recipient.rs b/notifico-app/src/public/http/recipient.rs index 0a4130d..daf169c 100644 --- a/notifico-app/src/public/http/recipient.rs +++ b/notifico-app/src/public/http/recipient.rs @@ -4,9 +4,6 @@ use axum::{Extension, Router}; pub(crate) fn get_router(ext: HttpPublicExtensions) -> Router { Router::new() - .nest( - "/", - subscription_get_router(ext.subscription_controller.clone()), - ) + .merge(subscription_get_router(ext.subscription_controller.clone())) .layer(Extension(ext.subscription_controller.clone())) } diff --git a/notifico-app/src/ui/http/admin/mod.rs b/notifico-app/src/ui/http/admin/mod.rs index 3bf65bc..9c717da 100644 --- a/notifico-app/src/ui/http/admin/mod.rs +++ b/notifico-app/src/ui/http/admin/mod.rs @@ -16,14 +16,14 @@ pub(crate) fn get_router(ext: HttpUiExtensions) -> Router { Router::new() // Subscriptions .route("/v1/subscriptions", get(subscription::list)) - .route("/v1/subscriptions/:id", get(subscription::get)) + .route("/v1/subscriptions/{id}", get(subscription::get)) // Recipients .route( "/v1/recipients", get(recipients::list).post(recipients::create), ) .route( - "/v1/recipients/:id", + "/v1/recipients/{id}", get(recipients::get) .put(recipients::update) .delete(recipients::delete), @@ -31,7 +31,7 @@ pub(crate) fn get_router(ext: HttpUiExtensions) -> Router { // Contacts .route("/v1/contacts", get(contacts::list).post(contacts::create)) .route( - "/v1/contacts/:id", + "/v1/contacts/{id}", get(contacts::get) .delete(contacts::delete) .put(contacts::update), @@ -39,13 +39,13 @@ pub(crate) fn get_router(ext: HttpUiExtensions) -> Router { // Contacts .route("/v1/groups", get(group::list).post(group::create)) .route( - "/v1/groups/:id", + "/v1/groups/{id}", get(group::get).delete(group::delete).put(group::update), ) // Pipelines .route("/v1/pipelines", get(pipeline::list).post(pipeline::create)) .route( - "/v1/pipelines/:id", + "/v1/pipelines/{id}", get(pipeline::get) .put(pipeline::update) .delete(pipeline::delete), @@ -53,20 +53,20 @@ pub(crate) fn get_router(ext: HttpUiExtensions) -> Router { // Events .route("/v1/events", get(event::list).post(event::create)) .route( - "/v1/events/:id", + "/v1/events/{id}", get(event::get).put(event::update).delete(event::delete), ) // Projects .route("/v1/projects", get(project::list).post(project::create)) .route( - "/v1/projects/:id", + "/v1/projects/{id}", get(project::get) .put(project::update) .delete(project::delete), ) .route("/v1/templates", get(template::list).post(template::create)) .route( - "/v1/templates/:id", + "/v1/templates/{id}", get(template::get) .put(template::update) .delete(template::delete), diff --git a/notifico-attachment/Cargo.toml b/notifico-attachment/Cargo.toml index 1f2dd3d..89f2262 100644 --- a/notifico-attachment/Cargo.toml +++ b/notifico-attachment/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] notifico-core = { path = "../notifico-core" } -serde = { version = "1.0.216", features = ["derive"] } -async-trait = "0.1.83" +serde = { version = "1.0.217", features = ["derive"] } +async-trait = "0.1.84" tokio = { version = "1.42.0", features = ["fs", "sync"] } mime_guess = "2.0.5" diff --git a/notifico-core/Cargo.toml b/notifico-core/Cargo.toml index b9ee593..5b5fe60 100644 --- a/notifico-core/Cargo.toml +++ b/notifico-core/Cargo.toml @@ -4,19 +4,19 @@ version = "0.1.0" edition = "2021" [dependencies] -async-trait = "0.1.83" -serde = { version = "1.0.215", features = ["derive"] } -serde_json = "1.0.133" +async-trait = "0.1.84" +serde = { version = "1.0.217", features = ["derive"] } +serde_json = "1.0.134" uuid = { workspace = true } tracing = "0.1.41" tokio = "1.42.0" axum = { workspace = true } url = { workspace = true } sea-orm = { workspace = true } -anyhow = "1.0.94" -utoipa = { version = "5", features = ["uuid"] } +anyhow = "1.0.95" +utoipa = { workspace = true } flume = "0.11.1" -thiserror = "2.0.6" +thiserror = "2.0.9" regex = "1.11.1" -serde_with = "3.11.0" +serde_with = "3.12.0" futures = "0.3.31" diff --git a/notifico-dbpipeline/Cargo.toml b/notifico-dbpipeline/Cargo.toml index 1cbd238..9ceb73c 100644 --- a/notifico-dbpipeline/Cargo.toml +++ b/notifico-dbpipeline/Cargo.toml @@ -8,7 +8,7 @@ notifico-core = { path = "../notifico-core" } notifico-dbpipeline-migration = { path = "migration" } sea-orm = { workspace = true } -async-trait = "0.1.83" -serde = "1.0.215" -serde_json = "1.0.133" -anyhow = "1.0.94" +async-trait = "0.1.84" +serde = "1.0.217" +serde_json = "1.0.134" +anyhow = "1.0.95" diff --git a/notifico-project/Cargo.toml b/notifico-project/Cargo.toml index 3aa9c0a..43fbb58 100644 --- a/notifico-project/Cargo.toml +++ b/notifico-project/Cargo.toml @@ -9,5 +9,5 @@ notifico-core = { path = "../notifico-core" } sea-orm = { workspace = true } uuid = { workspace = true } -serde = { version = "1.0.215", features = ["derive"] } -async-trait = "0.1.83" +serde = { version = "1.0.217", features = ["derive"] } +async-trait = "0.1.84" diff --git a/notifico-subscription/Cargo.toml b/notifico-subscription/Cargo.toml index 696498c..14dc0c0 100644 --- a/notifico-subscription/Cargo.toml +++ b/notifico-subscription/Cargo.toml @@ -9,11 +9,11 @@ notifico-subcription-migration = { path = "migration" } url = { workspace = true } uuid = { workspace = true } -serde_json = "1.0.133" +serde_json = "1.0.134" sea-orm = { workspace = true } tracing = "0.1.41" -serde = { version = "1.0.215", features = ["derive"] } +serde = { version = "1.0.217", features = ["derive"] } jsonwebtoken = "9.3.0" -anyhow = "1.0.94" -async-trait = "0.1.83" +anyhow = "1.0.95" +async-trait = "0.1.84" futures = "0.3.31" diff --git a/notifico-template/Cargo.toml b/notifico-template/Cargo.toml index cebdfab..3772b4b 100644 --- a/notifico-template/Cargo.toml +++ b/notifico-template/Cargo.toml @@ -6,14 +6,14 @@ edition = "2021" [dependencies] notifico-core = { path = "../notifico-core" } minijinja = { version = "2.5.0", default-features = false, features = ["builtins", "unicode", "serde", "debug", "urlencode", "speedups"] } -serde = { version = "1.0.215", features = ["derive"] } -serde_json = "1.0.133" -async-trait = "0.1.83" +serde = { version = "1.0.217", features = ["derive"] } +serde_json = "1.0.134" +async-trait = "0.1.84" tracing = "0.1.41" notifico-template-migration = { path = "migration" } sea-orm = { workspace = true } uuid = { workspace = true } -anyhow = "1.0.94" -thiserror = "2.0.6" +anyhow = "1.0.95" +thiserror = "2.0.9" tokio = { version = "1.42.0", features = ["fs"] } toml = "0.8.19" diff --git a/notificox/Cargo.toml b/notificox/Cargo.toml index 703cf49..134f258 100644 --- a/notificox/Cargo.toml +++ b/notificox/Cargo.toml @@ -9,8 +9,8 @@ notifico-template = { path = "../notifico-template" } notifico-transports = { path = "../notifico-transports" } notifico-attachment = { path = "../notifico-attachment" } # Other deps -serde = { version = "1.0.215", features = ["derive"] } -serde_json = { version = "1.0.133", features = ["preserve_order"] } +serde = { version = "1.0.217", features = ["derive"] } +serde_json = { version = "1.0.134", features = ["preserve_order"] } tokio = { version = "1.42.0", features = ["rt"] } clap = { workspace = true } json5 = "0.4.1" diff --git a/transports/notifico-gotify/Cargo.toml b/transports/notifico-gotify/Cargo.toml index d62c1eb..225e208 100644 --- a/transports/notifico-gotify/Cargo.toml +++ b/transports/notifico-gotify/Cargo.toml @@ -7,6 +7,6 @@ edition = "2021" notifico-core = { path = "../../notifico-core" } reqwest = { workspace = true } url = { workspace = true } -serde_json = "1.0.133" -serde = { version = "1.0.215", features = ["derive"] } -async-trait = "0.1.83" +serde_json = "1.0.134" +serde = { version = "1.0.217", features = ["derive"] } +async-trait = "0.1.84" diff --git a/transports/notifico-ntfy/Cargo.toml b/transports/notifico-ntfy/Cargo.toml index 21f0bf5..e2fe995 100644 --- a/transports/notifico-ntfy/Cargo.toml +++ b/transports/notifico-ntfy/Cargo.toml @@ -8,7 +8,7 @@ notifico-core = { path = "../../notifico-core" } notifico-attachment = { path = "../../notifico-attachment" } reqwest = { workspace = true } url = { workspace = true } -serde = { version = "1.0.158", features = ["derive"] } -serde_json = "1.0.93" -async-trait = "0.1.83" +serde = { version = "1.0.217", features = ["derive"] } +serde_json = "1.0.134" +async-trait = "0.1.84" base64 = "0.22.1" diff --git a/transports/notifico-pushover/Cargo.toml b/transports/notifico-pushover/Cargo.toml index 21bbf7b..e4a285e 100644 --- a/transports/notifico-pushover/Cargo.toml +++ b/transports/notifico-pushover/Cargo.toml @@ -8,6 +8,6 @@ notifico-core = { path = "../../notifico-core" } notifico-attachment = { path = "../../notifico-attachment" } reqwest = { workspace = true } -async-trait = "0.1.83" -serde = "1.0.215" +async-trait = "0.1.84" +serde = "1.0.217" url = "2.5.4" diff --git a/transports/notifico-slack/Cargo.toml b/transports/notifico-slack/Cargo.toml index 2b74314..8d046b0 100644 --- a/transports/notifico-slack/Cargo.toml +++ b/transports/notifico-slack/Cargo.toml @@ -8,9 +8,9 @@ notifico-core = { path = "../../notifico-core" } notifico-attachment = { path = "../../notifico-attachment" } reqwest = { workspace = true } -serde = "1.0.215" -async-trait = "0.1.83" -thiserror = "2.0.6" +serde = "1.0.217" +async-trait = "0.1.84" +thiserror = "2.0.9" tokio = { version = "1.42.0", features = ["fs"] } tokio-util = "0.7.13" url = { workspace = true } diff --git a/transports/notifico-smpp/Cargo.toml b/transports/notifico-smpp/Cargo.toml index 64c6b57..3d994a5 100644 --- a/transports/notifico-smpp/Cargo.toml +++ b/transports/notifico-smpp/Cargo.toml @@ -10,8 +10,8 @@ tokio-util = { version = "0.7.13", features = ["full"] } tracing = "0.1.41" notifico-core = { path = "../../notifico-core" } -serde = { version = "1.0.215", features = ["derive"] } -serde_json = "1.0.133" -async-trait = "0.1.83" +serde = { version = "1.0.217", features = ["derive"] } +serde_json = "1.0.134" +async-trait = "0.1.84" futures-util = "0.3.31" url = "2.5.4" diff --git a/transports/notifico-smtp/Cargo.toml b/transports/notifico-smtp/Cargo.toml index 7d400c3..e57c5f2 100644 --- a/transports/notifico-smtp/Cargo.toml +++ b/transports/notifico-smtp/Cargo.toml @@ -4,17 +4,17 @@ version = "0.1.0" edition = "2021" [dependencies] -async-trait = "0.1.83" -serde_json = "1.0.133" +async-trait = "0.1.84" +serde_json = "1.0.134" tracing = "0.1.41" lettre = { version = "0.11.11", default-features = false, features = [ "smtp-transport", "pool", "hostname", "builder", "serde", "tokio1-native-tls", "tracing" ] } -serde = { version = "1.0.215", features = ["derive"] } +serde = { version = "1.0.217", features = ["derive"] } uuid = { workspace = true } url = "2.5.4" -moka = { version = "0.12.8", features = ["future"] } +moka = { version = "0.12.9", features = ["future"] } mime = "0.3.17" notifico-core = { path = "../../notifico-core" } diff --git a/transports/notifico-telegram/Cargo.toml b/transports/notifico-telegram/Cargo.toml index 9967b68..f91ad11 100644 --- a/transports/notifico-telegram/Cargo.toml +++ b/transports/notifico-telegram/Cargo.toml @@ -4,9 +4,9 @@ version = "0.1.0" edition = "2021" [dependencies] -async-trait = "0.1.83" -serde = { version = "1.0.215", features = ["derive"] } -serde_json = "1.0.133" +async-trait = "0.1.84" +serde = { version = "1.0.217", features = ["derive"] } +serde_json = "1.0.134" reqwest = { workspace = true } notifico-core = { path = "../../notifico-core" } diff --git a/transports/notifico-whatsapp/Cargo.toml b/transports/notifico-whatsapp/Cargo.toml index f4b9275..bab2afc 100644 --- a/transports/notifico-whatsapp/Cargo.toml +++ b/transports/notifico-whatsapp/Cargo.toml @@ -4,10 +4,10 @@ version = "0.1.0" edition = "2021" [dependencies] -serde = { version = "1.0.215", features = ["derive"] } +serde = { version = "1.0.217", features = ["derive"] } uuid = { workspace = true } -serde_json = "1.0.133" -async-trait = "0.1.83" +serde_json = "1.0.134" +async-trait = "0.1.84" reqwest = { workspace = true } tracing = "0.1.41" regex = "1.11.1"