diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index 169d3b203..d42216edc 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -50,7 +50,7 @@ jobs: - name: Install cargo-llvm-cov uses: taiki-e/install-action@cargo-llvm-cov - name: Generate code coverage - run: cargo llvm-cov nextest --all-features --workspace --lcov --output-path lcov.info + run: cargo llvm-cov nextest --all-features --workspace --codecov --output-path codecov.json env: DATABASE_URL: "postgres://postgres:postgres@localhost/test_db" MINIO_URL: "http://127.0.0.1:9000" @@ -58,6 +58,6 @@ jobs: - name: Upload coverage to Codecov uses: codecov/codecov-action@v4 with: - files: lcov.info + files: codecov.json fail_ci_if_error: true token: ${{ secrets.CODECOV_TOKEN }} diff --git a/.vscode/settings.json b/.vscode/settings.json index 07d787b02..cc6731666 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -3,9 +3,6 @@ "rust-analyzer.cargo.buildScripts.enable": true, "editor.formatOnSave": true, "rust-analyzer.showUnlinkedFileNotification": false, - "rust-analyzer.cargo.features": [ - "oidc" - ], "search.exclude": { // Avoid polluting search results with lockfile content diff --git a/Cargo.lock b/Cargo.lock index 7a81f224c..7a772962e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -81,7 +81,7 @@ checksum = "d1eb7c4fcde1858a6796c18a729b661346d38e05a207e2d9028bce822fc20283" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -167,11 +167,12 @@ dependencies = [ [[package]] name = "anstyle-wincon" -version = "3.0.6" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125" +checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" dependencies = [ "anstyle", + "once_cell", "windows-sys 0.59.0", ] @@ -213,7 +214,7 @@ dependencies = [ "argh_shared", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -269,7 +270,7 @@ dependencies = [ [[package]] name = "async-graphql" version = "7.0.13" -source = "git+https://github.com/aumetra/async-graphql.git?branch=axum-0.8#3132cd08367466f9ebff58c8edb77a60842f339d" +source = "git+https://github.com/aumetra/async-graphql.git?branch=axum-0.8#690ece7cd408e28bfaf0c434fdd4c46ef1a78ef2" dependencies = [ "async-graphql-derive", "async-graphql-parser", @@ -289,6 +290,7 @@ dependencies = [ "num-traits", "pin-project-lite", "regex", + "schemars 0.8.21", "serde", "serde_json", "serde_urlencoded", @@ -304,7 +306,7 @@ dependencies = [ [[package]] name = "async-graphql-axum" version = "7.0.13" -source = "git+https://github.com/aumetra/async-graphql.git?branch=axum-0.8#3132cd08367466f9ebff58c8edb77a60842f339d" +source = "git+https://github.com/aumetra/async-graphql.git?branch=axum-0.8#690ece7cd408e28bfaf0c434fdd4c46ef1a78ef2" dependencies = [ "async-graphql", "axum 0.8.1", @@ -320,7 +322,7 @@ dependencies = [ [[package]] name = "async-graphql-derive" version = "7.0.13" -source = "git+https://github.com/aumetra/async-graphql.git?branch=axum-0.8#3132cd08367466f9ebff58c8edb77a60842f339d" +source = "git+https://github.com/aumetra/async-graphql.git?branch=axum-0.8#690ece7cd408e28bfaf0c434fdd4c46ef1a78ef2" dependencies = [ "Inflector", "async-graphql-parser", @@ -329,14 +331,14 @@ dependencies = [ "proc-macro2", "quote", "strum", - "syn 2.0.94", + "syn 2.0.96", "thiserror 1.0.69", ] [[package]] name = "async-graphql-parser" version = "7.0.13" -source = "git+https://github.com/aumetra/async-graphql.git?branch=axum-0.8#3132cd08367466f9ebff58c8edb77a60842f339d" +source = "git+https://github.com/aumetra/async-graphql.git?branch=axum-0.8#690ece7cd408e28bfaf0c434fdd4c46ef1a78ef2" dependencies = [ "async-graphql-value", "pest", @@ -347,7 +349,7 @@ dependencies = [ [[package]] name = "async-graphql-value" version = "7.0.13" -source = "git+https://github.com/aumetra/async-graphql.git?branch=axum-0.8#3132cd08367466f9ebff58c8edb77a60842f339d" +source = "git+https://github.com/aumetra/async-graphql.git?branch=axum-0.8#690ece7cd408e28bfaf0c434fdd4c46ef1a78ef2" dependencies = [ "bytes", "indexmap 2.7.0", @@ -363,7 +365,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -385,18 +387,18 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] name = "async-trait" -version = "0.1.84" +version = "0.1.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1244b10dcd56c92219da4e14caa97e312079e185f04ba3eea25061561dc0a0" +checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -427,7 +429,7 @@ dependencies = [ "smol_str", "sonic-rs", "speedy-uuid", - "thiserror 2.0.9", + "thiserror 2.0.11", "tokio", "tokio-util", "tracing", @@ -463,7 +465,7 @@ dependencies = [ "http", "http-body", "http-body-util", - "itoa 1.0.14", + "itoa", "matchit 0.7.3", "memchr", "mime", @@ -494,7 +496,7 @@ dependencies = [ "http-body-util", "hyper", "hyper-util", - "itoa 1.0.14", + "itoa", "matchit 0.8.4", "memchr", "mime", @@ -590,7 +592,7 @@ checksum = "604fde5e028fea851ce1d8570bbdc034bec850d157f7569d10f347d06808c05c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -692,9 +694,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.6.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36" [[package]] name = "bitflags_serde_shim" @@ -714,17 +716,6 @@ dependencies = [ "digest", ] -[[package]] -name = "blake2b_simd" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23285ad32269793932e830392f2fe2f83e26488fd3ec778883a93c8323735780" -dependencies = [ - "arrayref", - "arrayvec", - "constant_time_eq", -] - [[package]] name = "blake3" version = "1.5.5" @@ -752,16 +743,16 @@ name = "blowocking" version = "0.0.1-pre.6" dependencies = [ "rayon", - "thiserror 2.0.9", + "thiserror 2.0.11", "tokio", "tracing", ] [[package]] name = "borsh" -version = "1.5.3" +version = "1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2506947f73ad44e344215ccd6403ac2ae18cd8e046e581a441bf8d199f257f03" +checksum = "9fb65153674e51d3a42c8f27b05b9508cea85edfaade8aa46bc8fc18cecdfef3" dependencies = [ "cfg_aliases", ] @@ -808,7 +799,7 @@ dependencies = [ "lol_html", "once_cell", "slab", - "thiserror 2.0.9", + "thiserror 2.0.11", ] [[package]] @@ -939,9 +930,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.7" +version = "1.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a012a0df96dd6d06ba9a1b29d6402d1a5d77c6befd2566afdc26e10603dc93d7" +checksum = "c8293772165d9345bdaaa39b45b2109591e63fe5e6fbc23c6ff930a048aa310b" dependencies = [ "shlex", ] @@ -985,9 +976,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.23" +version = "4.5.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84" +checksum = "a8eb5e908ef3a6efbe1ed62520fb7287959888c88485abe072543190ecc66783" dependencies = [ "clap_builder", "clap_derive", @@ -995,9 +986,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.23" +version = "4.5.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838" +checksum = "96b01801b5fc6a0a232407abc821660c9c6d25a1cafc0d4f85f29fb8d9afc121" dependencies = [ "anstream", "anstyle", @@ -1008,14 +999,14 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.18" +version = "4.5.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" +checksum = "54b755194d6389280185988721fffba69495eed5ee9feeee9a599b53db80318c" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1027,17 +1018,16 @@ checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" [[package]] name = "client-sdk" version = "0.1.0" -source = "git+https://github.com/Lantern-chat/client-sdk-rs.git?rev=efb4288d9b107b48609802193d57b29f7ae395a1#efb4288d9b107b48609802193d57b29f7ae395a1" +source = "git+https://github.com/Lantern-chat/client-sdk-rs.git?rev=547922fb657f924ff595b78d38b17094fd25be21#547922fb657f924ff595b78d38b17094fd25be21" dependencies = [ "arrayvec", - "bitflags 2.6.0", + "bitflags 2.8.0", "bitflags_serde_shim", "byteorder", "const-random", "enum-primitive-derive", - "hashbrown 0.14.5", "iso8601-timestamp", - "itoa 1.0.14", + "itoa", "num-traits", "paste", "rustc-hash", @@ -1109,7 +1099,7 @@ checksum = "3b79c4069c6cad78e2e0cdfcbd26275770669fb39fd308a752dc110e83b9af32" dependencies = [ "castaway", "cfg-if", - "itoa 1.0.14", + "itoa", "rustversion", "ryu", "serde", @@ -1227,6 +1217,14 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" +[[package]] +name = "cowstr" +version = "0.0.1-pre.6" +dependencies = [ + "compact_str", + "serde", +] + [[package]] name = "cpufeatures" version = "0.2.16" @@ -1238,18 +1236,18 @@ dependencies = [ [[package]] name = "cranelift-bforest" -version = "0.115.0" +version = "0.115.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac89549be94911dd0e839b4a7db99e9ed29c17517e1c026f61066884c168aa3c" +checksum = "88c1d02b72b6c411c0a2e92b25ed791ad5d071184193c08a34aa0fdcdf000b72" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-bitset" -version = "0.115.0" +version = "0.115.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9bd49369f76c77e34e641af85d0956869237832c118964d08bf5f51f210875a" +checksum = "720b93bd86ebbb23ebfb2db1ed44d54b2ecbdbb2d034d485bc64aa605ee787ab" dependencies = [ "serde", "serde_derive", @@ -1257,9 +1255,9 @@ dependencies = [ [[package]] name = "cranelift-codegen" -version = "0.115.0" +version = "0.115.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd96ce9cf8efebd7f5ab8ced5a0ce44250280bbae9f593d74a6d7effc3582a35" +checksum = "aed3d2d9914d30b460eedd7fd507720203023997bef71452ce84873f9c93537c" dependencies = [ "bumpalo", "cranelift-bforest", @@ -1281,33 +1279,33 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.115.0" +version = "0.115.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a68e358827afe4bfb6239fcbf6fbd5ac56206ece8a99c8f5f9bbd518773281a" +checksum = "888c188d32263ec9e048873ff0b68c700933600d553f4412417916828be25f8e" dependencies = [ "cranelift-codegen-shared", ] [[package]] name = "cranelift-codegen-shared" -version = "0.115.0" +version = "0.115.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e184c9767afbe73d50c55ec29abcf4c32f9baf0d9d22b86d58c4d55e06dee181" +checksum = "4ddd5f4114d04ce7e073dd74e2ad16541fc61970726fcc8b2d5644a154ee4127" [[package]] name = "cranelift-control" -version = "0.115.0" +version = "0.115.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cc7664f2a66f053e33f149e952bb5971d138e3af637f5097727ed6dc0ed95dd" +checksum = "92cc4c98d6a4256a1600d93ccd3536f3e77da9b4ca2c279de786ac22876e67d6" dependencies = [ "arbitrary", ] [[package]] name = "cranelift-entity" -version = "0.115.0" +version = "0.115.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "118597e3a9cf86c3556fa579a7a23b955fa18231651a52a77a2475d305a9cf84" +checksum = "760af4b5e051b5f82097a27274b917e3751736369fa73660513488248d27f23d" dependencies = [ "cranelift-bitset", "serde", @@ -1316,9 +1314,9 @@ dependencies = [ [[package]] name = "cranelift-frontend" -version = "0.115.0" +version = "0.115.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7638ea1efb069a0aa18d8ee67401b6b0d19f6bfe5de5e9ede348bfc80bb0d8c7" +checksum = "c0bf77ec0f470621655ec7539860b5c620d4f91326654ab21b075b83900f8831" dependencies = [ "cranelift-codegen", "log", @@ -1328,15 +1326,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.115.0" +version = "0.115.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c53e1152a0b01c4ed2b1e0535602b8e86458777dd9d18b28732b16325c7dc0" +checksum = "4b665d0a6932c421620be184f9fc7f7adaf1b0bc2fa77bb7ac5177c49abf645b" [[package]] name = "cranelift-native" -version = "0.115.0" +version = "0.115.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b7d8f895444fa52dd7bdd0bed11bf007a7fb43af65a6deac8fcc4094c6372f7" +checksum = "bb2e75d1bd43dfec10924798f15e6474f1dbf63b0024506551aa19394dbe72ab" dependencies = [ "cranelift-codegen", "libc", @@ -1422,15 +1420,15 @@ dependencies = [ [[package]] name = "cssparser" -version = "0.27.2" +version = "0.29.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "754b69d351cdc2d8ee09ae203db831e005560fc6030da058f86ad60c92a9cb0a" +checksum = "f93d03419cb5950ccfd3daf3ff1c7a36ace64609a1a8746d493df1ca0afde0fa" dependencies = [ "cssparser-macros", "dtoa-short", - "itoa 0.4.8", + "itoa", "matches", - "phf 0.8.0", + "phf 0.10.1", "proc-macro2", "quote", "smallvec", @@ -1444,7 +1442,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" dependencies = [ "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1489,7 +1487,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1513,7 +1511,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1524,14 +1522,14 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] name = "data-encoding" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" +checksum = "0e60eed09d8c01d3cee5b7d30acb059b76614c918fa0f992e0dd6eeb10daad6f" [[package]] name = "der" @@ -1554,7 +1552,7 @@ checksum = "8034092389675178f570469e6c3b0465d3d30b4505c294a6550db47f3c17ad18" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1585,7 +1583,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1595,7 +1593,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1608,7 +1606,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1628,7 +1626,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1637,10 +1635,10 @@ version = "2.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ccf1bedf64cdb9643204a36dd15b19a6ce8e7aa7f7b105868e9f1fad5ffa7d12" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "byteorder", "diesel_derives", - "itoa 1.0.14", + "itoa", "time", "uuid", ] @@ -1670,7 +1668,7 @@ dependencies = [ "dsl_auto_type", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1699,7 +1697,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "209c735641a413bc68c4923a9d6ad4bcb3ca306b794edaa7eb0b3228a99ffb25" dependencies = [ - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1728,7 +1726,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1753,7 +1751,7 @@ checksum = "8dc51d98e636f5e3b0759a39257458b22619cac7e96d932da6eeb052891bb67c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1773,7 +1771,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1911,7 +1909,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1922,7 +1920,7 @@ checksum = "ba7795da175654fe16979af73f81f26a8ea27638d8d9823d317016888a63dc4c" dependencies = [ "num-traits", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -1934,7 +1932,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -2126,7 +2124,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c" dependencies = [ "crc32fast", - "miniz_oxide 0.8.2", + "miniz_oxide 0.8.3", ] [[package]] @@ -2199,7 +2197,7 @@ checksum = "1458c6e22d36d61507034d5afecc64f105c1d39712b7ac6ec3b352c423f715cc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -2278,7 +2276,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -2344,9 +2342,9 @@ dependencies = [ [[package]] name = "garde" -version = "0.21.0" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dbf10452e3dbf51033a5035a05762b2653c43bf84d46e96f15bc93beedd426d" +checksum = "f4bd1d7843e437a4caf1d6a9112ba1ee9635b09d909af22aa4e6ec01fe971e22" dependencies = [ "compact_str", "garde_derive", @@ -2359,14 +2357,14 @@ dependencies = [ [[package]] name = "garde_derive" -version = "0.21.0" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccfdbc9c39fad7991686e229c55cf71565eafe73dcb2cf38ddf1d4aa3ca7e176" +checksum = "a0636cbdc03994db48fc89a0ce7765bd68d08bd8a7a68cb9a36bcde96790f413" dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -2395,9 +2393,9 @@ dependencies = [ [[package]] name = "generic-array" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cb8bc4c28d15ade99c7e90b219f30da4be5c88e586277e8cbe886beeb868ab2" +checksum = "e8c8444bc9d71b935156cc0ccab7f622180808af7867b1daae6547d773591703" dependencies = [ "typenum", ] @@ -2414,7 +2412,7 @@ dependencies = [ "serde", "simdutf8", "sonic-rs", - "thiserror 2.0.9", + "thiserror 2.0.11", "tokio", "tracing", "triomphe", @@ -2480,7 +2478,7 @@ checksum = "53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -2560,7 +2558,6 @@ checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ "ahash", "allocator-api2", - "serde", ] [[package]] @@ -2647,7 +2644,7 @@ dependencies = [ "rand 0.8.5", "rustls", "rustls-native-certs", - "thiserror 2.0.9", + "thiserror 2.0.11", "tinyvec", "tokio", "tokio-rustls", @@ -2671,7 +2668,7 @@ dependencies = [ "rustls", "rustls-native-certs", "smallvec", - "thiserror 2.0.9", + "thiserror 2.0.11", "tokio", "tokio-rustls", "tracing", @@ -2723,7 +2720,7 @@ checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" dependencies = [ "bytes", "fnv", - "itoa 1.0.14", + "itoa", ] [[package]] @@ -2762,6 +2759,16 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9171a2ea8a68358193d15dd5d70c1c10a2afc3e7e4c5bc92bc9f025cebd7359c" +[[package]] +name = "http-serde" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f056c8559e3757392c8d091e796416e4649d8e49e88b8d76df6c002f05027fd" +dependencies = [ + "http", + "serde", +] + [[package]] name = "http-signatures" version = "0.0.1-pre.6" @@ -2780,7 +2787,7 @@ dependencies = [ "pkcs8", "ring", "scoped-futures", - "thiserror 2.0.9", + "thiserror 2.0.11", "tick-tock-mock", "tokio", "tracing", @@ -2831,7 +2838,7 @@ dependencies = [ "http-body", "httparse", "httpdate", - "itoa 1.0.14", + "itoa", "pin-project-lite", "smallvec", "tokio", @@ -3027,7 +3034,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -3065,13 +3072,13 @@ dependencies = [ [[package]] name = "img-parts" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfded0de32cc78ecad0061b3c6a263cec6bce298fc1e670a4926b6723664ed87" +checksum = "6b4e24cfdc6f897b582508e3c382eaf5378076898f80500a80d10d761ae85e90" dependencies = [ "bytes", "crc32fast", - "miniz_oxide 0.8.2", + "miniz_oxide 0.8.3", ] [[package]] @@ -3104,11 +3111,11 @@ dependencies = [ [[package]] name = "inotify" -version = "0.10.2" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdd168d97690d0b8c412d6b6c10360277f4d7ee495c5d0d5d5fe0854923255cc" +checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.8.0", "inotify-sys", "libc", ] @@ -3124,13 +3131,13 @@ dependencies = [ [[package]] name = "insta" -version = "1.41.1" +version = "1.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e9ffc4d4892617c50a928c52b2961cb5174b6fc6ebf252b2fac9d21955c48b8" +checksum = "6513e4067e16e69ed1db5ab56048ed65db32d10ba5fc1217f5393f8f17d8b5a5" dependencies = [ "globset", - "lazy_static", "linked-hash-map", + "once_cell", "serde", "similar", "walkdir", @@ -3138,9 +3145,9 @@ dependencies = [ [[package]] name = "inventory" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5d80fade88dd420ce0d9ab6f7c58ef2272dde38db874657950f827d4982c817" +checksum = "3b31349d02fe60f80bbbab1a9402364cad7460626d6030494b08ac4a2075bf81" dependencies = [ "rustversion", ] @@ -3216,7 +3223,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b43b2015ede53eeef1c023e27f540a39841d139044483641d038a975abd6603d" dependencies = [ "diesel", - "generic-array 1.1.1", + "generic-array 1.2.0", "serde", "time", ] @@ -3227,7 +3234,7 @@ version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fe50d48c77760c55188549098b9a7f6e37ae980c586a24693d6b01c3b2010c3c" dependencies = [ - "phf 0.11.2", + "phf 0.11.3", "serde", ] @@ -3267,12 +3274,6 @@ dependencies = [ "either", ] -[[package]] -name = "itoa" -version = "0.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" - [[package]] name = "itoa" version = "1.0.14" @@ -3287,9 +3288,9 @@ checksum = "9028f49264629065d057f340a86acb84867925865f73bbf8d47b4d149a7e88b8" [[package]] name = "js-sys" -version = "0.3.76" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6717b6b5b077764fb5966237269cb3c64edddde4b14ce42647430a78ced9e7b7" +checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" dependencies = [ "once_cell", "wasm-bindgen", @@ -3313,6 +3314,7 @@ name = "just-retry" version = "0.0.1-pre.6" dependencies = [ "retry-policies", + "tick-tock-mock", "tokio", "tracing", ] @@ -3325,13 +3327,11 @@ dependencies = [ "argon2", "async-graphql", "async-graphql-axum", - "async-trait", "athena", "axum 0.8.1", "axum-extra", "blowocking", "bytes", - "chrono", "clap", "color-eyre", "cursiv", @@ -3374,14 +3374,12 @@ dependencies = [ "kitsune-util", "kitsune-wasm-mrf", "kitsune-webfinger", + "komainu", "mimalloc", "mime", "mime_guess", "minijinja", "notify-debouncer-full", - "oxide-auth", - "oxide-auth-async", - "oxide-auth-axum", "rust-embed", "scoped-futures", "serde", @@ -3578,7 +3576,7 @@ version = "0.0.1-pre.6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -3812,7 +3810,7 @@ dependencies = [ "serde", "sonic-rs", "speedy-uuid", - "thiserror 2.0.9", + "thiserror 2.0.11", "tokio", "url", ] @@ -4061,6 +4059,39 @@ dependencies = [ "urlencoding", ] +[[package]] +name = "komainu" +version = "0.0.1-pre.6" +dependencies = [ + "base64-simd", + "bytes", + "compact_str", + "divan", + "fastrand", + "futures-test", + "headers", + "http", + "http-body", + "http-body-util", + "http-serde", + "indexmap 2.7.0", + "insta", + "itertools 0.14.0", + "memchr", + "rstest", + "serde", + "serde_test", + "serde_urlencoded", + "sha2", + "simdutf8", + "sonic-rs", + "strum", + "subtle", + "thiserror 2.0.11", + "tracing", + "url", +] + [[package]] name = "kqueue" version = "1.0.8" @@ -4090,12 +4121,6 @@ dependencies = [ "spin", ] -[[package]] -name = "lazycell" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" - [[package]] name = "leb128" version = "0.2.5" @@ -4181,7 +4206,7 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "libc", "redox_syscall", ] @@ -4194,9 +4219,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" [[package]] name = "linux-raw-sys" -version = "0.4.14" +version = "0.4.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" +checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "litemap" @@ -4216,9 +4241,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.22" +version = "0.4.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" +checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f" [[package]] name = "logos" @@ -4242,7 +4267,7 @@ dependencies = [ "quote", "regex-syntax 0.8.5", "rustc_version", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -4256,21 +4281,19 @@ dependencies = [ [[package]] name = "lol_html" -version = "2.1.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2872b88213f3cd4b04f719ec8f2e0b37c98882a7c4aa6fc13ba2f19f5eba1bd2" +checksum = "3b1058123f6262982b891dccc395cff0144d9439de366460b47fab719258b96e" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "cfg-if", "cssparser", "encoding_rs", "hashbrown 0.15.2", - "lazy_static", - "lazycell", "memchr", "mime", "selectors", - "thiserror 1.0.69", + "thiserror 2.0.11", ] [[package]] @@ -4358,7 +4381,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -4434,7 +4457,7 @@ checksum = "23c9b935fbe1d6cbd1dac857b54a688145e2d93f48db36010514d0f612d0ad67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -4485,9 +4508,9 @@ dependencies = [ [[package]] name = "minijinja" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c37e1b517d1dcd0e51dc36c4567b9d5a29262b3ec8da6cb5d35e27a8fb529b5" +checksum = "212b4cab3aad057bc6e611814472905546c533295723b9e26a31c7feb19a8e65" dependencies = [ "memo-map", "self_cell", @@ -4511,9 +4534,9 @@ dependencies = [ [[package]] name = "miniz_oxide" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ffbe83022cedc1d264172192511ae958937694cd57ce297164951b8b3568394" +checksum = "b8402cab7aefae129c6977bb0ff1b8fd9a04eb5b51efc50a70bea51cda0c7924" dependencies = [ "adler2", ] @@ -4532,16 +4555,16 @@ dependencies = [ [[package]] name = "moka" -version = "0.12.9" +version = "0.12.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23db87a7f248211f6a7c8644a1b750541f8a4c68ae7de0f908860e44c0c201f6" +checksum = "a9321642ca94a4282428e6ea4af8cc2ca4eac48ac7a6a4ea8f33f76d0ce70926" dependencies = [ "crossbeam-channel", "crossbeam-epoch", "crossbeam-utils", "loom", "parking_lot", - "quanta", + "portable-atomic", "rustc_version", "smallvec", "tagptr", @@ -4556,13 +4579,13 @@ dependencies = [ "fast-cjson", "insta", "leb128", - "schemars", + "schemars 1.0.0-alpha.17", "semver", "serde", "sonic-rs", - "thiserror 2.0.9", - "wasm-encoder 0.222.0", - "wasmparser 0.222.0", + "thiserror 2.0.11", + "wasm-encoder 0.223.0", + "wasmparser 0.223.0", "wat", ] @@ -4575,7 +4598,7 @@ dependencies = [ "colored_json", "mrf-manifest", "sonic-rs", - "wasmparser 0.222.0", + "wasmparser 0.223.0", "wat", ] @@ -4627,7 +4650,7 @@ checksum = "1bb5c1d8184f13f7d0ccbeeca0def2f9a181bce2624302793005f5ca8aa62e5e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -4648,11 +4671,11 @@ dependencies = [ [[package]] name = "notify" -version = "7.0.0" +version = "8.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c533b4c39709f9ba5005d8002048266593c1cfaf3c5f0739d5b8ab0c6c504009" +checksum = "2fee8403b3d66ac7b26aee6e40a897d85dc5ce26f44da36b8b73e987cc52e943" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "filetime", "fsevent-sys", "inotify", @@ -4662,14 +4685,14 @@ dependencies = [ "mio", "notify-types", "walkdir", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] name = "notify-debouncer-full" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dcf855483228259b2353f89e99df35fc639b2b2510d1166e4858e3f67ec1afb" +checksum = "d2d88b1a7538054351c8258338df7c931a590513fb3745e8c15eb9ff4199b8d1" dependencies = [ "file-id", "log", @@ -4680,11 +4703,9 @@ dependencies = [ [[package]] name = "notify-types" -version = "1.0.0" -source = "git+https://github.com/notify-rs/notify.git?rev=aacd41642345cb66b327d4eb2cdc15ba4016daaa#aacd41642345cb66b327d4eb2cdc15ba4016daaa" -dependencies = [ - "web-time", -] +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e0826a989adedc2a244799e823aece04662b66609d96af8dff7ac6df9a8925d" [[package]] name = "nu-ansi-term" @@ -4727,7 +4748,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -4944,9 +4965,9 @@ dependencies = [ [[package]] name = "outref" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a" +checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" [[package]] name = "overload" @@ -4970,48 +4991,6 @@ dependencies = [ "supports-color 3.0.2", ] -[[package]] -name = "oxide-auth" -version = "0.6.1" -source = "git+https://github.com/aumetra/oxide-auth.git?branch=axum-0.8#88b02a676dc36dc0c77bf828a952a9e368558268" -dependencies = [ - "base64 0.21.7", - "chrono", - "hmac", - "once_cell", - "rand 0.8.5", - "rmp-serde", - "rust-argon2", - "serde", - "serde_derive", - "serde_json", - "sha2", - "subtle", - "url", -] - -[[package]] -name = "oxide-auth-async" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5979faf468f3386b8dc0e60acbaffdbb1ad387d9fd58dd9c71d05514e4a940d1" -dependencies = [ - "async-trait", - "base64 0.21.7", - "chrono", - "oxide-auth", - "url", -] - -[[package]] -name = "oxide-auth-axum" -version = "0.5.0" -source = "git+https://github.com/aumetra/oxide-auth.git?branch=axum-0.8#88b02a676dc36dc0c77bf828a952a9e368558268" -dependencies = [ - "axum 0.8.1", - "oxide-auth", -] - [[package]] name = "p256" version = "0.13.2" @@ -5098,7 +5077,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" dependencies = [ "memchr", - "thiserror 2.0.9", + "thiserror 2.0.11", "ucd-trie", ] @@ -5122,7 +5101,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -5142,18 +5121,27 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12" dependencies = [ - "phf_macros", "phf_shared 0.8.0", +] + +[[package]] +name = "phf" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259" +dependencies = [ + "phf_macros", + "phf_shared 0.10.0", "proc-macro-hack", ] [[package]] name = "phf" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" +checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" dependencies = [ - "phf_shared 0.11.2", + "phf_shared 0.11.3", ] [[package]] @@ -5162,7 +5150,7 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815" dependencies = [ - "phf_generator", + "phf_generator 0.8.0", "phf_shared 0.8.0", ] @@ -5176,14 +5164,24 @@ dependencies = [ "rand 0.7.3", ] +[[package]] +name = "phf_generator" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6" +dependencies = [ + "phf_shared 0.10.0", + "rand 0.8.5", +] + [[package]] name = "phf_macros" -version = "0.8.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f6fde18ff429ffc8fe78e2bf7f8b7a5a5a6e2a8b58bc5a9ac69198bbda9189c" +checksum = "58fdf3184dd560f160dd73922bea2d5cd6e8f064bf4b13110abd81b03697b4e0" dependencies = [ - "phf_generator", - "phf_shared 0.8.0", + "phf_generator 0.10.0", + "phf_shared 0.10.0", "proc-macro-hack", "proc-macro2", "quote", @@ -5196,43 +5194,52 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7" dependencies = [ - "siphasher", + "siphasher 0.3.11", ] [[package]] name = "phf_shared" -version = "0.11.2" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" +checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" dependencies = [ - "siphasher", + "siphasher 0.3.11", +] + +[[package]] +name = "phf_shared" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" +dependencies = [ + "siphasher 1.0.1", ] [[package]] name = "pin-project" -version = "1.1.7" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95" +checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.7" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" +checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] name = "pin-project-lite" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" +checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" [[package]] name = "pin-utils" @@ -5261,6 +5268,12 @@ dependencies = [ "spki", ] +[[package]] +name = "portable-atomic" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" + [[package]] name = "post-process" version = "0.0.1-pre.6" @@ -5346,12 +5359,12 @@ dependencies = [ [[package]] name = "prettyplease" -version = "0.2.25" +version = "0.2.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" +checksum = "6924ced06e1f7dfe3fa48d57b9f74f55d8915f5036121bef647ef4b204895fac" dependencies = [ "proc-macro2", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -5380,9 +5393,9 @@ checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro2" -version = "1.0.92" +version = "1.0.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" +checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" dependencies = [ "unicode-ident", ] @@ -5407,7 +5420,7 @@ dependencies = [ "itertools 0.13.0", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -5436,7 +5449,7 @@ checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -5445,7 +5458,7 @@ version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f86ba2052aebccc42cbbb3ed234b8b13ce76f75c3551a303cb2bcffcff12bb14" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "memchr", "pulldown-cmark-escape", "unicase", @@ -5459,30 +5472,15 @@ checksum = "007d8adb5ddab6f8e3f491ac63566a7d5002cc7ed73901f72057943fa71ae1ae" [[package]] name = "pulley-interpreter" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "403a1a95f4c18a45c86c7bff13df00347afd0abcbf2e54af273c837339ffcf77" +checksum = "8324e531de91a3c25021a30fb7862d39cc516b61fbb801176acb5ff279ea887b" dependencies = [ "cranelift-bitset", "log", "sptr", ] -[[package]] -name = "quanta" -version = "0.12.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bd1fe6824cea6538803de3ff1bc0cf3949024db3d43c9643024bfb33a807c0e" -dependencies = [ - "crossbeam-utils", - "libc", - "once_cell", - "raw-cpuid", - "wasi 0.11.0+wasi-snapshot-preview1", - "web-sys", - "winapi", -] - [[package]] name = "quick-xml" version = "0.37.2" @@ -5607,15 +5605,6 @@ dependencies = [ "rand_core 0.6.4", ] -[[package]] -name = "raw-cpuid" -version = "11.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ab240315c661615f2ee9f0f2cd32d5a7343a84d5ebcccb99d46e6637565e7b0" -dependencies = [ - "bitflags 2.6.0", -] - [[package]] name = "rayon" version = "1.10.0" @@ -5666,7 +5655,7 @@ version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", ] [[package]] @@ -5686,7 +5675,7 @@ checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -5825,29 +5814,7 @@ checksum = "beb382a4d9f53bd5c0be86b10d8179c3f8a14c30bf774ff77096ed6581e35981" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", -] - -[[package]] -name = "rmp" -version = "0.8.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4" -dependencies = [ - "byteorder", - "num-traits", - "paste", -] - -[[package]] -name = "rmp-serde" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db" -dependencies = [ - "byteorder", - "rmp", - "serde", + "syn 2.0.96", ] [[package]] @@ -5893,21 +5860,10 @@ dependencies = [ "regex", "relative-path", "rustc_version", - "syn 2.0.94", + "syn 2.0.96", "unicode-ident", ] -[[package]] -name = "rust-argon2" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d9848531d60c9cbbcf9d166c885316c24bc0e2a9d3eba0956bb6cbbd79bc6e8" -dependencies = [ - "base64 0.21.7", - "blake2b_simd", - "constant_time_eq", -] - [[package]] name = "rust-embed" version = "8.5.0" @@ -5928,7 +5884,7 @@ dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.94", + "syn 2.0.96", "walkdir", ] @@ -5972,13 +5928,13 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.42" +version = "0.38.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85" +checksum = "a78891ee6bf2340288408954ac787aa063d8e8817e9f53abb37c695c6d834ef6" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "errno", - "itoa 1.0.14", + "itoa", "libc", "linux-raw-sys", "once_cell", @@ -5987,9 +5943,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.20" +version = "0.23.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5065c3f250cbd332cd894be57c40fa52387247659b14a2d6041d121547903b1b" +checksum = "8f287924602bf649d949c63dc8ac8b235fa5387d394020705b80c4eb597ce5b8" dependencies = [ "log", "once_cell", @@ -6092,7 +6048,7 @@ dependencies = [ "memchr", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -6119,7 +6075,7 @@ name = "schaber" version = "0.0.1-pre.6" dependencies = [ "lol_html", - "thiserror 2.0.9", + "thiserror 2.0.11", ] [[package]] @@ -6131,6 +6087,18 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "schemars" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" +dependencies = [ + "dyn-clone", + "schemars_derive 0.8.21", + "serde", + "serde_json", +] + [[package]] name = "schemars" version = "1.0.0-alpha.17" @@ -6139,12 +6107,24 @@ checksum = "88ef2a6523400a2228db974a8ddc9e1d3deaa04f51bddd7832ef8d7e531bafcc" dependencies = [ "dyn-clone", "ref-cast", - "schemars_derive", + "schemars_derive 1.0.0-alpha.17", "semver", "serde", "serde_json", ] +[[package]] +name = "schemars_derive" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn 2.0.96", +] + [[package]] name = "schemars_derive" version = "1.0.0-alpha.17" @@ -6154,7 +6134,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -6194,11 +6174,11 @@ dependencies = [ [[package]] name = "security-framework" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81d3f8c9bfcc3cbb6b0179eb57042d75b1582bdc65c3cb95f3fa999509c03cbc" +checksum = "271720403f46ca04f7ba6f55d438f8bd878d6b8ca0a1046e8228c4145bcbb316" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "core-foundation", "core-foundation-sys", "libc", @@ -6207,9 +6187,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.13.0" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1863fd3768cd83c56a7f60faa4dc0d403f1b6df0a38c3c25f44b7894e45370d5" +checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" dependencies = [ "core-foundation-sys", "libc", @@ -6217,22 +6197,20 @@ dependencies = [ [[package]] name = "selectors" -version = "0.22.0" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe" +checksum = "0c37578180969d00692904465fb7f6b3d50b9a2b952b87c23d0e2e5cb5013416" dependencies = [ "bitflags 1.3.2", "cssparser", "derive_more 0.99.18", "fxhash", "log", - "matches", "phf 0.8.0", "phf_codegen", "precomputed-hash", "servo_arc", "smallvec", - "thin-slice", ] [[package]] @@ -6277,7 +6255,7 @@ checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -6288,7 +6266,7 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -6299,18 +6277,18 @@ checksum = "9d2de91cf02bbc07cde38891769ccd5d4f073d22a40683aa4bc7a95781aaa2c4" dependencies = [ "form_urlencoded", "indexmap 2.7.0", - "itoa 1.0.14", + "itoa", "ryu", "serde", ] [[package]] name = "serde_json" -version = "1.0.134" +version = "1.0.135" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d00f4175c42ee48b15416f6193a959ba3a0d67fc699a0db9ad12df9f83991c7d" +checksum = "2b0d7ba2887406110130a978386c4e1befb98c674b4fba677954e4db976630d9" dependencies = [ - "itoa 1.0.14", + "itoa", "memchr", "ryu", "serde", @@ -6322,7 +6300,7 @@ version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" dependencies = [ - "itoa 1.0.14", + "itoa", "serde", ] @@ -6343,7 +6321,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -6371,7 +6349,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" dependencies = [ "form_urlencoded", - "itoa 1.0.14", + "itoa", "ryu", "serde", ] @@ -6403,14 +6381,14 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] name = "servo_arc" -version = "0.1.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d98238b800e0d1576d8b6e3de32827c2d74bee68bb97748dcf5071fb53965432" +checksum = "d52aa42f8fdf0fed91e5ce7f23d8138441002fa31dca008acf47e6fd4721f741" dependencies = [ "nodrop", "stable_deref_trait", @@ -6501,6 +6479,12 @@ version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" +[[package]] +name = "siphasher" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" + [[package]] name = "slab" version = "0.4.9" @@ -6536,7 +6520,7 @@ source = "git+https://github.com/Lantern-chat/snowflake#28d05c604cadca0c1f843244 dependencies = [ "crossbeam-utils", "iso8601-timestamp", - "itoa 1.0.14", + "itoa", "serde", ] @@ -6550,22 +6534,42 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "sonic-number" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8a74044c092f4f43ca7a6cfd62854cf9fb5ac8502b131347c990bf22bef1dfe" +dependencies = [ + "cfg-if", +] + [[package]] name = "sonic-rs" -version = "0.3.14" -source = "git+https://github.com/aumetra/sonic-rs.git?rev=12df930a57ff9f07eb16111a3da1feff3dc8e5ad#12df930a57ff9f07eb16111a3da1feff3dc8e5ad" +version = "0.4.0-rc3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "792914c75229f3f97664a64f8e2d189eb29cadfa26c098f881004f0882a2b53c" dependencies = [ "bumpalo", "bytes", "cfg-if", "faststr", - "itoa 1.0.14", - "parking_lot", + "itoa", + "ref-cast", "ryu", "serde", "simdutf8", - "smallvec", - "thiserror 1.0.69", + "sonic-number", + "sonic-simd", + "thiserror 2.0.11", +] + +[[package]] +name = "sonic-simd" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "940a24e82c9a97483ef66cef06b92160a8fa5cd74042c57c10b24d99d169d2fc" +dependencies = [ + "cfg-if", ] [[package]] @@ -6586,7 +6590,7 @@ dependencies = [ "fred", "serde", "serde_test", - "thiserror 2.0.9", + "thiserror 2.0.11", "uuid", "uuid-simd", ] @@ -6670,7 +6674,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta-derive", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -6681,7 +6685,7 @@ checksum = "152a0b65a590ff6c3da95cabe2353ee04e6167c896b28e3b14478c2636c922fc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -6703,7 +6707,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -6756,9 +6760,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.94" +version = "2.0.96" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "987bc0be1cdea8b10216bd06e2ca407d40b9543468fafd3ddfb02f36e77f71f3" +checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80" dependencies = [ "proc-macro2", "quote", @@ -6779,7 +6783,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -6788,7 +6792,7 @@ version = "0.27.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc4592f674ce18521c2a81483873a49596655b179f71c5e05d10c1fe66c78745" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "cap-fs-ext", "cap-std", "fd-lock", @@ -6853,12 +6857,6 @@ dependencies = [ "unicode-width 0.1.14", ] -[[package]] -name = "thin-slice" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c" - [[package]] name = "thin-vec" version = "0.2.13" @@ -6879,11 +6877,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.9" +version = "2.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f072643fd0190df67a8bab670c20ef5d8737177d6ac6b2e9a236cb096206b2cc" +checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc" dependencies = [ - "thiserror-impl 2.0.9", + "thiserror-impl 2.0.11", ] [[package]] @@ -6894,18 +6892,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] name = "thiserror-impl" -version = "2.0.9" +version = "2.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b50fa271071aae2e6ee85f842e2e28ba8cd2c5fb67f11fcb1fd70b276f9e7d4" +checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -6932,7 +6930,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" dependencies = [ "deranged", - "itoa 1.0.14", + "itoa", "num-conv", "powerfmt", "serde", @@ -7008,14 +7006,14 @@ checksum = "8d9ef545650e79f30233c0003bcc2504d7efac6dad25fca40744de773fe2049c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] name = "tokio" -version = "1.42.0" +version = "1.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" +checksum = "3d61fa4ffa3de412bfea335c6ecff681de2b609ba3c77ef3e00e521813a9ed9e" dependencies = [ "backtrace", "bytes", @@ -7031,13 +7029,13 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" +checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -7055,7 +7053,7 @@ dependencies = [ "log", "parking_lot", "percent-encoding", - "phf 0.11.2", + "phf 0.11.3", "pin-project-lite", "postgres-protocol", "postgres-types", @@ -7240,7 +7238,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "403fa3b783d4b626a8ad51d766ab03cb6d2dbfc46b1c5d4448395e6628dc9697" dependencies = [ "async-compression", - "bitflags 2.6.0", + "bitflags 2.8.0", "bytes", "futures-core", "futures-util", @@ -7337,7 +7335,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -7456,7 +7454,7 @@ dependencies = [ "log", "rand 0.8.5", "sha1", - "thiserror 2.0.9", + "thiserror 2.0.11", "utf-8", ] @@ -7477,7 +7475,7 @@ checksum = "560b82d656506509d43abe30e0ba64c56b1953ab3d4fe7ba5902747a7a3cedd5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -7513,7 +7511,7 @@ checksum = "d9d30226ac9cbd2d1ff775f74e8febdab985dab14fb14aa2582c29a92d5555dc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -7660,9 +7658,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.11.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" +checksum = "744018581f9a3454a9e15beb8a33b017183f1e7c0cd170232a2d1453b23a51c4" dependencies = [ "getrandom 0.2.15", "rand 0.8.5", @@ -7738,34 +7736,35 @@ checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" [[package]] name = "wasm-bindgen" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a474f6281d1d70c17ae7aa6a613c87fce69a127e2624002df63dcb39d6cf6396" +checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" dependencies = [ "cfg-if", "once_cell", + "rustversion", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79" +checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" dependencies = [ "bumpalo", "log", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.49" +version = "0.4.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38176d9b44ea84e9184eff0bc34cc167ed044f816accfe5922e54d84cf48eca2" +checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" dependencies = [ "cfg-if", "js-sys", @@ -7776,9 +7775,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cc6181fd9a7492eef6fef1f33961e3695e4579b9872a6f7c83aee556666d4fe" +checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7786,31 +7785,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2" +checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6" - -[[package]] -name = "wasm-encoder" -version = "0.220.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebf48234b389415b226a4daef6562933d38c7b28a8b8f64c5c4130dad1561ab7" +checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" dependencies = [ - "leb128", - "wasmparser 0.220.0", + "unicode-ident", ] [[package]] @@ -7825,19 +7817,19 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.222.0" +version = "0.223.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3432682105d7e994565ef928ccf5856cf6af4ba3dddebedb737f61caed70f956" +checksum = "7e636076193fa68103e937ac951b5f2f587624097017d764b8984d9c0f149464" dependencies = [ "leb128", - "wasmparser 0.222.0", + "wasmparser 0.223.0", ] [[package]] name = "wasm-metadata" -version = "0.220.0" +version = "0.223.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f3e5f5920c5abfc45573c89b07b38efdaae1515ef86f83dad12d60e50ecd62b" +checksum = "5c730c3379d3d20e5a0245b0724b924483e853588ca8fba547c1e21f19e7d735" dependencies = [ "anyhow", "indexmap 2.7.0", @@ -7845,21 +7837,9 @@ dependencies = [ "serde_derive", "serde_json", "spdx", - "wasm-encoder 0.220.0", - "wasmparser 0.220.0", -] - -[[package]] -name = "wasmparser" -version = "0.220.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e246c2772ce3ebc83f89a2d4487ac5794cad6c309b2071818a88c7db7c36d87b" -dependencies = [ - "ahash", - "bitflags 2.6.0", - "hashbrown 0.14.5", - "indexmap 2.7.0", - "semver", + "url", + "wasm-encoder 0.223.0", + "wasmparser 0.223.0", ] [[package]] @@ -7868,7 +7848,7 @@ version = "0.221.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9845c470a2e10b61dd42c385839cdd6496363ed63b5c9e420b5488b77bd22083" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "hashbrown 0.15.2", "indexmap 2.7.0", "semver", @@ -7877,11 +7857,11 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.222.0" +version = "0.223.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4adf50fde1b1a49c1add6a80d47aea500c88db70551805853aa8b88f3ea27ab5" +checksum = "d5a99faceb1a5a84dd6084ec4bfa4b2ab153b5793b43fd8f58b89232634afc35" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "hashbrown 0.15.2", "indexmap 2.7.0", "semver", @@ -7901,14 +7881,14 @@ dependencies = [ [[package]] name = "wasmtime" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f639ecae347b9a2227e453a7b7671e84370a0b61f47a15e0390fe9b7725e47b3" +checksum = "edd30973c65eceb0f37dfcc430d83abd5eb24015fdfcab6912f52949287e04f0" dependencies = [ "addr2line 0.24.2", "anyhow", "async-trait", - "bitflags 2.6.0", + "bitflags 2.8.0", "bumpalo", "cc", "cfg-if", @@ -7951,23 +7931,23 @@ dependencies = [ [[package]] name = "wasmtime-asm-macros" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "882a18800471cfc063c8b3ccf75723784acc3fd534009ac09421f2fac2fcdcec" +checksum = "c6c21dd30d1f3f93ee390ac1a7ec304ecdbfdab6390e1add41a1f52727b0992b" dependencies = [ "cfg-if", ] [[package]] name = "wasmtime-component-macro" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb5c0a77c9e1927c3d471f53cc13767c3d3438e5d5ffd394e3eb31c86445fd60" +checksum = "9f948a6ef3119d52c9f12936970de28ddf3f9bea04bc65571f4a92d2e5ab38f4" dependencies = [ "anyhow", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", "wasmtime-component-util", "wasmtime-wit-bindgen", "wit-parser 0.221.2", @@ -7975,15 +7955,15 @@ dependencies = [ [[package]] name = "wasmtime-component-util" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43702ca98bf5162eca0573db691ed9ecd36d716f8c6688410fe26ec16b6f9bcb" +checksum = "b9275aa01ceaaa2fa6c0ecaa5267518d80b9d6e9ae7c7ea42f4c6e073e6a69ef" [[package]] name = "wasmtime-cranelift" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20070aa5b75080a8932ec328419faf841df2bc6ceb16b55b0df2b952098392a2" +checksum = "0701a44a323267aae4499672dae422b266cee3135a23b640972ec8c0e10a44a2" dependencies = [ "anyhow", "cfg-if", @@ -8006,9 +7986,9 @@ dependencies = [ [[package]] name = "wasmtime-environ" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2604ddb24879d4dc1dedcb7081d7a8e017259bce916fdae097a97db52cbaab80" +checksum = "264c968c1b81d340355ece2be0bc31a10f567ccb6ce08512c3b7d10e26f3cbe5" dependencies = [ "anyhow", "cranelift-bitset", @@ -8031,9 +8011,9 @@ dependencies = [ [[package]] name = "wasmtime-fiber" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98593412d2b167ebe2b59d4a17a184978a72f976b53b3a0ec05629451079ac1d" +checksum = "78505221fd5bd7b07b4e1fa2804edea49dc231e626ad6861adc8f531812973e6" dependencies = [ "anyhow", "cc", @@ -8046,9 +8026,9 @@ dependencies = [ [[package]] name = "wasmtime-jit-icache-coherence" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d40d7722b9e1fbeae135715710a8a2570b1e6cf72b74dd653962d89831c6c70d" +checksum = "9bedb677ca1b549d98f95e9e1f9251b460090d99a2c196a0614228c064bf2e59" dependencies = [ "anyhow", "cfg-if", @@ -8058,30 +8038,30 @@ dependencies = [ [[package]] name = "wasmtime-slab" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8579c335220b4ece9aa490a0e8b46de78cd342b195ab21ff981d095e14b52383" +checksum = "564905638c132c275d365c1fa074f0b499790568f43148d29de84ccecfb5cb31" [[package]] name = "wasmtime-versioned-export-macros" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7de0a56fb0a69b185968f2d7a9ba54750920a806470dff7ad8de91ac06d277e" +checksum = "1e91092e6cf77390eeccee273846a9327f3e8f91c3c6280f60f37809f0e62d29" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] name = "wasmtime-wasi" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d557dc5783b9ee7e8db1c6b0d4a9103b676f1ab7fcbb30c7e86f307a8cae04a" +checksum = "1a8e04b9a4c68ad018b330a4f4914b82b01dc3582d715ce21a93564c7f26b19f" dependencies = [ "anyhow", "async-trait", - "bitflags 2.6.0", + "bitflags 2.8.0", "bytes", "cap-fs-ext", "cap-net-ext", @@ -8104,9 +8084,9 @@ dependencies = [ [[package]] name = "wasmtime-winch" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abd309943c443f5590d12f9aba9ba63c481091c955a0a14de0c2a9e0e3aaeca9" +checksum = "b111d909dc604c741bd8ac2f4af373eaa5c68c34b5717271bcb687688212cef8" dependencies = [ "anyhow", "cranelift-codegen", @@ -8121,9 +8101,9 @@ dependencies = [ [[package]] name = "wasmtime-wit-bindgen" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "969f83022dac3435d6469edb582ceed04cfe32aa44dc3ef16e5cb55574633df8" +checksum = "5f38f7a5eb2f06f53fe943e7fb8bf4197f7cf279f1bc52c0ce56e9d3ffd750a4" dependencies = [ "anyhow", "heck", @@ -8133,31 +8113,31 @@ dependencies = [ [[package]] name = "wast" -version = "222.0.0" +version = "223.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ce7191f4b7da0dd300cc32476abae6457154e4625d9b1bc26890828a9a26f6e" +checksum = "d59b2ba8a2ff9f06194b7be9524f92e45e70149f4dacc0d0c7ad92b59ac875e4" dependencies = [ "bumpalo", "leb128", "memchr", "unicode-width 0.2.0", - "wasm-encoder 0.222.0", + "wasm-encoder 0.223.0", ] [[package]] name = "wat" -version = "1.222.0" +version = "1.223.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fde61b4b52f9a84ae31b5e8902a2cd3162ea45d8bf564c729c3288fe52f4334" +checksum = "662786915c427e4918ff01eabb3c4756d4d947cd8f635761526b4cc9da2eaaad" dependencies = [ "wast", ] [[package]] name = "web-sys" -version = "0.3.76" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04dd7223427d52553d3702c004d3b2fe07c148165faa56313cb00211e31c12bc" +checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" dependencies = [ "js-sys", "wasm-bindgen", @@ -8242,9 +8222,9 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "winch-codegen" -version = "28.0.0" +version = "28.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9110decc2983ed94de904804dcd979ba59cbabc78a94fec6b1d8468ec513d0f6" +checksum = "6232f40a795be2ce10fc761ed3b403825126a60d12491ac556ea104a932fd18a" dependencies = [ "anyhow", "cranelift-codegen", @@ -8307,7 +8287,7 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -8318,7 +8298,7 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -8424,9 +8404,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.6.22" +version = "0.6.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39281189af81c07ec09db316b302a3e67bf9bd7cbf6c820b50e35fee9c2fa980" +checksum = "c8d71a593cc5c42ad7876e2c1fda56f314f3754c084128833e64f1345ff8a03a" dependencies = [ "memchr", ] @@ -8437,15 +8417,15 @@ version = "0.36.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f3fd376f71958b862e7afb20cfe5a22830e1963462f3a17f49d82a6c1d1f42d" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "windows-sys 0.59.0", ] [[package]] name = "wit-bindgen" -version = "0.36.0" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a2b3e15cd6068f233926e7d8c7c588b2ec4fb7cc7bf3824115e7c7e2a8485a3" +checksum = "9219694564701fa935754f1552ce299154fc74948d6d148134ce55f3504c8bf1" dependencies = [ "wit-bindgen-rt", "wit-bindgen-rust-macro", @@ -8453,35 +8433,37 @@ dependencies = [ [[package]] name = "wit-bindgen-core" -version = "0.36.0" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b632a5a0fa2409489bd49c9e6d99fcc61bb3d4ce9d1907d44662e75a28c71172" +checksum = "8ba105733ba146c94e067793fb46505265ea8720eb14ceae65b10797c7728a65" dependencies = [ "anyhow", "heck", - "wit-parser 0.220.0", + "wit-parser 0.223.0", ] [[package]] name = "wit-bindgen-rt" -version = "0.36.0" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7947d0131c7c9da3f01dfde0ab8bd4c4cf3c5bd49b6dba0ae640f1fa752572ea" +checksum = "fc801b991c56492f87ab3086e786468f75c285a4d73017ab0ebc2fa1aed5d82c" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", + "futures", + "once_cell", ] [[package]] name = "wit-bindgen-rust" -version = "0.36.0" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4329de4186ee30e2ef30a0533f9b3c123c019a237a7c82d692807bf1b3ee2697" +checksum = "257e0d217bc06635837d751447c39e77b9901752e052288ff6fe0fdb17850bc5" dependencies = [ "anyhow", "heck", "indexmap 2.7.0", "prettyplease", - "syn 2.0.94", + "syn 2.0.96", "wasm-metadata", "wit-bindgen-core", "wit-component", @@ -8489,43 +8471,43 @@ dependencies = [ [[package]] name = "wit-bindgen-rust-macro" -version = "0.36.0" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "177fb7ee1484d113b4792cc480b1ba57664bbc951b42a4beebe573502135b1fc" +checksum = "8ac98caa9302234687b8e67ce7dfcf31ae5238523f166b93c23988fd0d4e0594" dependencies = [ "anyhow", "prettyplease", "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", "wit-bindgen-core", "wit-bindgen-rust", ] [[package]] name = "wit-component" -version = "0.220.0" +version = "0.223.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73ccedf54cc65f287da268d64d2bf4f7530d2cfb2296ffbe3ad5f65567e4cf53" +checksum = "c10ed2aeee4c8ec5715875f62f4a3de3608d6987165c116810d8c2908aa9d93b" dependencies = [ "anyhow", - "bitflags 2.6.0", + "bitflags 2.8.0", "indexmap 2.7.0", "log", "serde", "serde_derive", "serde_json", - "wasm-encoder 0.220.0", + "wasm-encoder 0.223.0", "wasm-metadata", - "wasmparser 0.220.0", - "wit-parser 0.220.0", + "wasmparser 0.223.0", + "wit-parser 0.223.0", ] [[package]] name = "wit-parser" -version = "0.220.0" +version = "0.221.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b7117ce3adc0b4354b46dc1cf3190b00b333e65243d244c613ffcc58bdec84d" +checksum = "fbe1538eea6ea5ddbe5defd0dc82539ad7ba751e1631e9185d24a931f0a5adc8" dependencies = [ "anyhow", "id-arena", @@ -8536,14 +8518,14 @@ dependencies = [ "serde_derive", "serde_json", "unicode-xid", - "wasmparser 0.220.0", + "wasmparser 0.221.2", ] [[package]] name = "wit-parser" -version = "0.221.2" +version = "0.223.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbe1538eea6ea5ddbe5defd0dc82539ad7ba751e1631e9185d24a931f0a5adc8" +checksum = "92772f4dcacb804b275981eea1d920b12b377993b53307f1e33d87404e080281" dependencies = [ "anyhow", "id-arena", @@ -8554,7 +8536,7 @@ dependencies = [ "serde_derive", "serde_json", "unicode-xid", - "wasmparser 0.221.2", + "wasmparser 0.223.0", ] [[package]] @@ -8636,7 +8618,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", "synstructure", ] @@ -8658,7 +8640,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -8678,7 +8660,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", "synstructure", ] @@ -8699,7 +8681,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] @@ -8721,7 +8703,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.94", + "syn 2.0.96", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 5d8d584cd..3cb595e3a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -56,6 +56,7 @@ members = [ "lib/athena", "lib/blowocking", + "lib/cowstr", "lib/cursiv", "lib/fast-cjson", "lib/flashy", @@ -63,6 +64,7 @@ members = [ "lib/http-signatures", "lib/http-signatures-cli", "lib/just-retry", + "lib/komainu", "lib/masto-id-convert", "lib/mrf-manifest", "lib/mrf-tool", @@ -86,14 +88,14 @@ arc-swap = "1.7.1" argh = "0.1.13" argon2 = { version = "0.5.3", features = ["std"] } async-graphql = { version = "7.0.13", default-features = false, features = [ - "graphiql", + "altair", "tempfile", "time", "tracing", "uuid", ] } async-graphql-axum = "7.0.13" -async-trait = "0.1.84" +async-trait = "0.1.85" asynk-strim = "0.1.2" axum = { version = "0.8.1", features = ["macros", "multipart"] } axum-core = "0.5.0" @@ -107,10 +109,10 @@ base64-simd = "0.8.0" blake3 = "1.5.5" bubble-bath = "0.2.1" bytes = "1.9.0" -chrono = { version = "0.4.39", default-features = false } -clap = { version = "4.5.23", features = ["derive", "wrap_help"] } +clap = { version = "4.5.26", features = ["derive", "wrap_help"] } color-eyre = "0.6.3" colored_json = "5.0.0" +compact_str = { version = "0.8.1", features = ["serde"] } const_format = "0.2.34" const-oid = { version = "0.9.6", features = ["db"] } cookie = { version = "0.18.1", features = ["percent-encode"] } @@ -136,6 +138,7 @@ either = { version = "1.13.0", default-features = false } enum_dispatch = "0.3.13" envy = "0.4.2" eyre = "0.6.12" +fastrand = "2.3.0" fred = { version = "10.0.3", features = [ "enable-rustls-ring", "full-tracing", @@ -148,7 +151,7 @@ futures-test = "0.3.31" futures-util = { version = "0.3.31", default-features = false, features = [ "alloc", ] } -garde = { version = "0.21.0", features = [ +garde = { version = "0.21.1", features = [ "derive", "email", "email-idna", @@ -167,6 +170,7 @@ hickory-resolver = { version = "0.25.0-alpha.4", default-features = false, featu http = "1.2.0" http-body = "1.0.1" http-body-util = "0.1.2" +http-serde = "2.1.1" httpdate = "1.0.3" human-size = { version = "0.4.3", features = ["serde"] } hyper = "1.5.2" @@ -185,8 +189,9 @@ hyper-rustls = { version = "0.27.5", default-features = false, features = [ "tls12", ] } icu_normalizer = "1.5.0" -img-parts = "0.3.2" -insta = { version = "1.41.1", default-features = false, features = [ +img-parts = "0.3.3" +indexmap = { version = "2.7.0", features = ["serde"] } +insta = { version = "1.42.0", default-features = false, features = [ "glob", "json", ] } @@ -197,7 +202,7 @@ isolang = { version = "2.4.0", features = [ "serde", ] } itertools = { version = "0.14.0", default-features = false } -lantern-client-sdk = { package = "client-sdk", git = "https://github.com/Lantern-chat/client-sdk-rs.git", rev = "efb4288d9b107b48609802193d57b29f7ae395a1", default-features = false } +lantern-client-sdk = { package = "client-sdk", git = "https://github.com/Lantern-chat/client-sdk-rs.git", rev = "547922fb657f924ff595b78d38b17094fd25be21", default-features = false } leb128 = "0.2.5" lettre = { version = "0.11.11", default-features = false, features = [ "builder", @@ -210,20 +215,20 @@ lettre = { version = "0.11.11", default-features = false, features = [ ] } lexical-parse-integer = { version = "1.0.5", default-features = false } logos = "0.15.0" -lol_html = "2.1.0" +lol_html = "2.2.0" meilisearch-sdk = { version = "0.27.1", default-features = false } memchr = "2.7.4" miette = { version = "7.4.0", features = ["fancy"] } mimalloc = "0.1.43" mime = "0.3.17" mime_guess = { version = "2.0.5", default-features = false } -minijinja = { version = "2.5.0", features = ["loader"] } -moka = { version = "0.12.9", features = ["sync"] } +minijinja = { version = "2.6.0", features = ["loader"] } +moka = { version = "0.12.10", features = ["sync"] } mrml = { version = "4.0.1", default-features = false, features = [ "parse", "render", ] } -notify-debouncer-full = "0.4.0" +notify-debouncer-full = "0.5.0" num-derive = "0.4.2" num-traits = "0.2.19" oauth2 = { version = "5.0.0-rc.1", default-features = false } @@ -250,16 +255,13 @@ opentelemetry_sdk = { version = "0.27.1", default-features = false, features = [ "rt-tokio", ] } owo-colors = { version = "4.1.0", features = ["supports-colors"] } -oxide-auth = "0.6.1" -oxide-auth-async = "0.2.1" -oxide-auth-axum = "0.5.0" password-hash = { version = "0.5.0", features = ["std"] } paste = "1.0.15" -pin-project-lite = "0.2.15" +pin-project-lite = "0.2.16" pkcs8 = { version = "0.10.2", features = ["pem", "std"] } postcard = { version = "1.1.1", default-features = false, features = ["alloc"] } pretty_assertions = "1.4.1" -proc-macro2 = "1.0.92" +proc-macro2 = "1.0.93" pulldown-cmark = { version = "0.12.2", default-features = false, features = [ "html", "simd", @@ -277,7 +279,7 @@ rsa = "0.9.7" rstest = { version = "0.24.0", default-features = false } rust-embed = { version = "8.5.0", features = ["include-exclude"] } rustc-hash = "2.1.0" -rustls = { version = "0.23.20", default-features = false, features = [ +rustls = { version = "0.23.21", default-features = false, features = [ "logging", "ring", "std", @@ -293,7 +295,7 @@ schemars = { version = "1.0.0-alpha.17", features = ["semver1"] } scoped-futures = { version = "0.1.4", default-features = false } semver = { version = "1.0.24", features = ["serde"] } serde = { version = "1.0.217", features = ["derive"] } -serde_json = "1.0.134" +serde_json = "1.0.135" serde_test = "1.0.177" serde_urlencoded = "0.7.1" serde_with = { version = "3.12.0", default-features = false, features = [ @@ -304,15 +306,15 @@ sha2 = "0.10.8" simdutf8 = { version = "0.1.5", features = ["aarch64_neon"] } slab = "0.4.9" smol_str = { version = "0.3.2", features = ["serde"] } -sonic-rs = "=0.3.14" +sonic-rs = "0.4.0-rc3" strum = { version = "0.26.3", features = ["derive"] } subtle = "2.6.1" -syn = { version = "2.0.94", features = ["full"] } +syn = { version = "2.0.96", features = ["full"] } sync_wrapper = "1.0.2" tempfile = "3.15.0" -thiserror = "2.0.9" +thiserror = "2.0.11" time = "0.3.37" -tokio = { version = "1.42.0", features = ["full"] } +tokio = { version = "1.43.0", features = ["full"] } tokio-postgres = "0.7.12" tokio-postgres-rustls = "0.13.0" tokio-util = { version = "0.7.13", features = ["io", "rt"] } @@ -349,12 +351,12 @@ unsize = "1.1.0" ureq = "2.12.1" url = "2.5.4" urlencoding = "2.1.3" -uuid = { version = "1.11.0", features = ["fast-rng", "v7"] } +uuid = { version = "1.12.0", features = ["fast-rng", "v7"] } uuid-simd = { version = "0.8.0", features = ["uuid"] } walkdir = "2.5.0" -wasm-encoder = "0.222.0" -wasmparser = "0.222.0" -wasmtime = { version = "28.0.0", default-features = false, features = [ +wasm-encoder = "0.223.0" +wasmparser = "0.223.0" +wasmtime = { version = "28.0.1", default-features = false, features = [ "addr2line", "async", "component-model", @@ -363,11 +365,11 @@ wasmtime = { version = "28.0.0", default-features = false, features = [ "pooling-allocator", "runtime", ] } -wasmtime-wasi = { version = "28.0.0", default-features = false } -wat = "1.222.0" +wasmtime-wasi = { version = "28.0.1", default-features = false } +wat = "1.223.0" whatlang = "0.16.4" whichlang = "0.1.0" -wit-bindgen = "0.36.0" +wit-bindgen = "0.37.0" zeroize = { version = "1.8.1", features = ["derive"] } zxcvbn = { version = "3.1.0", default-features = false } @@ -405,11 +407,13 @@ kitsune-job-runner = { path = "kitsune-job-runner" } # Local workspace dependences (lib directory) athena = { path = "lib/athena", features = ["redis"] } blowocking = { path = "lib/blowocking" } +cowstr = { path = "lib/cowstr" } cursiv = { path = "lib/cursiv", features = ["axum"] } fast-cjson = { path = "lib/fast-cjson" } flashy = { path = "lib/flashy", features = ["axum"] } http-signatures = { path = "lib/http-signatures" } just-retry = { path = "lib/just-retry" } +komainu = { path = "lib/komainu" } mrf-manifest = { path = "lib/mrf-manifest", features = [ "decode", "encode", @@ -445,6 +449,7 @@ no_effect_underscore_binding = "allow" [workspace.lints.rust] forbidden_lint_groups = "allow" rust_2018_idioms = { level = "forbid", priority = -1 } +unexpected_cfgs = { level = "warn", check-cfg = ['cfg(coverage)'] } unsafe_code = "deny" [workspace.package] @@ -457,10 +462,3 @@ license = "AGPL-3.0-or-later" # axum upgrade async-graphql = { git = "https://github.com/aumetra/async-graphql.git", branch = "axum-0.8" } async-graphql-axum = { git = "https://github.com/aumetra/async-graphql.git", branch = "axum-0.8" } -oxide-auth = { git = "https://github.com/aumetra/oxide-auth.git", branch = "axum-0.8" } -oxide-auth-axum = { git = "https://github.com/aumetra/oxide-auth.git", branch = "axum-0.8" } - -# Fix unmaintained advisory -notify-types = { git = "https://github.com/notify-rs/notify.git", rev = "aacd41642345cb66b327d4eb2cdc15ba4016daaa" } -# SIMD runtime detection and generic I/O wrapper -sonic-rs = { git = "https://github.com/aumetra/sonic-rs.git", rev = "12df930a57ff9f07eb16111a3da1feff3dc8e5ad" } diff --git a/README.md b/README.md index 61a76e247..394cb49b7 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,10 @@
-
- # kitsune -
- ![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/kitsune-soc/kitsune/rust.yml?style=for-the-badge) -[![dependency status](https://deps.rs/repo/github/kitsune-soc/kitsune/status.svg?style=for-the-badge)](https://deps.rs/repo/github/kitsune-soc/kitsune) [![Maintenance: Experimental](https://img.shields.io/badge/maintainance-experimental-blue?style=for-the-badge)](https://gist.github.com/taiki-e/ad73eaea17e2e0372efb76ef6b38f17b) +[![built with nix](https://img.shields.io/badge/builtwith-nix-7d81f7?logo=nixos&logoColor=white&style=for-the-badge)](https://builtwithnix.org)
diff --git a/crates/kitsune-activitypub/src/deliverer/mod.rs b/crates/kitsune-activitypub/src/deliverer/mod.rs index e62ddc39d..af377c92f 100644 --- a/crates/kitsune-activitypub/src/deliverer/mod.rs +++ b/crates/kitsune-activitypub/src/deliverer/mod.rs @@ -403,6 +403,5 @@ impl DelivererTrait for Deliverer { Action::UpdateAccount(account) => self.update_account(account).await, Action::UpdatePost(post) => self.update_post(post).await, } - .map_err(Into::into) } } diff --git a/crates/kitsune-core/src/consts.rs b/crates/kitsune-core/src/consts.rs index a57595df2..c4151e7e6 100644 --- a/crates/kitsune-core/src/consts.rs +++ b/crates/kitsune-core/src/consts.rs @@ -8,7 +8,7 @@ pub const MAX_MEDIA_DESCRIPTION_LENGTH: usize = 5000; pub const PROJECT_IDENTIFIER: &str = const { const FALLBACK_NAME: &str = "kitsune"; - if let Some(package_name) = option_env!("CARGO_PRIMARY_PACKAGE") { + if let Some(package_name) = option_env!("CARGO_BIN_NAME") { package_name } else { FALLBACK_NAME diff --git a/crates/kitsune-db/src/model/oauth2/authorization_code.rs b/crates/kitsune-db/src/model/oauth2/authorization_code.rs index 4b360df34..1e540c913 100644 --- a/crates/kitsune-db/src/model/oauth2/authorization_code.rs +++ b/crates/kitsune-db/src/model/oauth2/authorization_code.rs @@ -1,11 +1,11 @@ use super::{super::user::User, application::Application}; use crate::schema::oauth2_authorization_codes; -use diesel::{Associations, Identifiable, Insertable, Queryable}; +use diesel::{Associations, Identifiable, Insertable, Queryable, Selectable}; use iso8601_timestamp::Timestamp; use serde::{Deserialize, Serialize}; use speedy_uuid::Uuid; -#[derive(Associations, Clone, Deserialize, Identifiable, Serialize, Queryable)] +#[derive(Associations, Clone, Deserialize, Identifiable, Selectable, Serialize, Queryable)] #[diesel( belongs_to(Application), belongs_to(User), diff --git a/crates/kitsune-embed/src/lib.rs b/crates/kitsune-embed/src/lib.rs index e484f0d24..590c59cd9 100644 --- a/crates/kitsune-embed/src/lib.rs +++ b/crates/kitsune-embed/src/lib.rs @@ -11,12 +11,12 @@ use kitsune_db::{ use kitsune_derive::kitsune_service; use kitsune_error::Result; use kitsune_http_client::Client as HttpClient; -use lantern_client_sdk::models::EmbedWithExpire; +use lantern_client_sdk::models::embed::EmbedWithExpire; use schaber::Scraper; use smol_str::SmolStr; use std::{ops::ControlFlow, sync::LazyLock}; -pub use lantern_client_sdk::models::{Embed, EmbedType}; +pub use lantern_client_sdk::models::embed::{Embed, EmbedType}; static LINK_SCRAPER: LazyLock = LazyLock::new(|| { Scraper::new("a:not(.mention, .hashtag)").expect("[Bug] Failed to parse link HTML selector") diff --git a/crates/kitsune-mastodon/src/sealed.rs b/crates/kitsune-mastodon/src/sealed.rs index f00a37e4a..15ec30085 100644 --- a/crates/kitsune-mastodon/src/sealed.rs +++ b/crates/kitsune-mastodon/src/sealed.rs @@ -479,7 +479,12 @@ impl IntoMastodon for LinkPreview { }; let image = embed_data.thumb.map(|thumb| thumb.url.as_str().into()); - let (html, width, height, embed_url) = match (embed_data.img, embed_data.video) { + let (html, width, height, embed_url) = match ( + // otherwise the `diesel::RunQueryDsl` import will clash. + // and i would dislike the `.get(0)` even more. + <[_]>::first(&embed_data.imgs), + embed_data.video, + ) { (.., Some(vid)) => { let width = vid.width.unwrap_or_default(); let height = vid.height.unwrap_or_default(); diff --git a/crates/kitsune-service/src/custom_emoji.rs b/crates/kitsune-service/src/custom_emoji.rs index 0c15610e0..ba58ffd84 100644 --- a/crates/kitsune-service/src/custom_emoji.rs +++ b/crates/kitsune-service/src/custom_emoji.rs @@ -1,5 +1,3 @@ -#![allow(unexpected_cfgs)] // garde expansion issue - use super::attachment::{AttachmentService, Upload}; use bytes::Bytes; use diesel::{ diff --git a/crates/kitsune-service/src/user.rs b/crates/kitsune-service/src/user.rs index a8dc80293..a94fc37e4 100644 --- a/crates/kitsune-service/src/user.rs +++ b/crates/kitsune-service/src/user.rs @@ -1,5 +1,3 @@ -#![allow(unexpected_cfgs)] // garde expansion issue - use super::{ captcha::CaptchaService, job::{Enqueue, JobService}, diff --git a/crates/kitsune-wasm-mrf/example-mrf/src/lib.rs b/crates/kitsune-wasm-mrf/example-mrf/src/lib.rs index cd8f9e2b1..ae3fe68db 100644 --- a/crates/kitsune-wasm-mrf/example-mrf/src/lib.rs +++ b/crates/kitsune-wasm-mrf/example-mrf/src/lib.rs @@ -1,4 +1,4 @@ -#![allow(clippy::missing_safety_doc, clippy::transmute_int_to_bool, unsafe_code)] +#![allow(unsafe_code)] use self::{ fep::mrf::keyvalue::Bucket, diff --git a/flake.lock b/flake.lock index e1cff5a8c..b9b1fb87e 100644 --- a/flake.lock +++ b/flake.lock @@ -30,11 +30,11 @@ }, "crane": { "locked": { - "lastModified": 1733016477, - "narHash": "sha256-Hh0khbqBeCtiNS0SJgqdWrQDem9WlPEc2KF5pAY+st0=", + "lastModified": 1736566337, + "narHash": "sha256-SC0eDcZPqISVt6R0UfGPyQLrI0+BppjjtQ3wcSlk0oI=", "owner": "ipetkov", "repo": "crane", - "rev": "76d64e779e2fbaf172110038492343a8c4e29b55", + "rev": "9172acc1ee6c7e1cbafc3044ff850c568c75a5a3", "type": "github" }, "original": { @@ -70,11 +70,11 @@ ] }, "locked": { - "lastModified": 1732896163, - "narHash": "sha256-eS0vSZT0ZUguR6Jf6CyupvDn4m+r/mgN6Vtg61ECYC0=", + "lastModified": 1736426010, + "narHash": "sha256-d0rE+u8/rQjXLvDobz1StGTfqvRKvq+8kVsHnIGVD1o=", "owner": "cachix", "repo": "devenv", - "rev": "2c928a199d56191d7a53f29ccafa56238c8ce4e5", + "rev": "1c384bc4be3ee571511fbbc6fdc94fe47d60f6cf", "type": "github" }, "original": { @@ -272,11 +272,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1733015953, - "narHash": "sha256-t4BBVpwG9B4hLgc6GUBuj3cjU7lP/PJfpTHuSqE+crk=", + "lastModified": 1736344531, + "narHash": "sha256-8YVQ9ZbSfuUk2bUf2KRj60NRraLPKPS0Q4QFTbc+c2c=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ac35b104800bff9028425fec3b6e8a41de2bbfff", + "rev": "bffc22eb12172e6db3c5dde9e3e5628f8e3e7912", "type": "github" }, "original": { @@ -327,11 +327,11 @@ ] }, "locked": { - "lastModified": 1733106880, - "narHash": "sha256-aJmAIjZfWfPSWSExwrYBLRgXVvgF5LP1vaeUGOOIQ98=", + "lastModified": 1736632357, + "narHash": "sha256-o+XYHMxGi8oiJlQ7UkDv0lzUuED6iaxZwPzD3kY7R38=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "e66c0d43abf5bdefb664c3583ca8994983c332ae", + "rev": "09f2869b164f8b6d5e30f0bd7ed30d6eb8237058", "type": "github" }, "original": { diff --git a/kitsune-fe/package.json b/kitsune-fe/package.json index f8af3cee5..9bd188621 100644 --- a/kitsune-fe/package.json +++ b/kitsune-fe/package.json @@ -18,30 +18,31 @@ "devDependencies": { "@iconify-json/eos-icons": "^1.2.2", "@sveltejs/adapter-static": "^3.0.8", - "@sveltejs/kit": "^2.15.1", + "@sveltejs/kit": "^2.15.2", "@sveltejs/vite-plugin-svelte": "5.0.3", - "@tailwindcss/forms": "^0.5.9", - "@tailwindcss/typography": "^0.5.15", - "@trivago/prettier-plugin-sort-imports": "^5.2.0", + "@tailwindcss/forms": "^0.5.10", + "@tailwindcss/typography": "^0.5.16", + "@trivago/prettier-plugin-sort-imports": "^5.2.1", "@types/eslint": "^9.6.1", "autoprefixer": "^10.4.20", - "eslint": "^9.17.0", + "eslint": "^9.18.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-svelte": "^2.46.1", "globals": "^15.14.0", + "graphql-ws": "^5.16.2", "houdini": "1.4.0", "houdini-svelte": "2.1.0", "prettier": "^3.4.2", "prettier-plugin-css-order": "^2.1.2", "prettier-plugin-svelte": "^3.3.2", "prettier-plugin-tailwindcss": "^0.6.9", - "svelte": "^5.16.0", - "svelte-check": "^4.1.1", + "svelte": "^5.17.3", + "svelte-check": "^4.1.3", "tailwindcss": "^3.4.17", - "typescript": "^5.7.2", - "typescript-eslint": "^8.19.0", - "unplugin-icons": "^0.22.0", - "vite": "^6.0.6", + "typescript": "^5.7.3", + "typescript-eslint": "^8.19.1", + "unplugin-icons": "^22.0.0", + "vite": "^6.0.7", "vitest": "^2.1.8", "zod": "^3.24.1" } diff --git a/kitsune-fe/src/client.ts b/kitsune-fe/src/client.ts index f202efb04..f39d2b7a2 100644 --- a/kitsune-fe/src/client.ts +++ b/kitsune-fe/src/client.ts @@ -1,9 +1,18 @@ -import { HoudiniClient } from '$houdini'; +import { HoudiniClient, subscription } from '$houdini'; import { houdiniPlugin as authPlugin } from '$lib/oauth/auth.svelte'; +import { createClient } from 'graphql-ws'; + export default new HoudiniClient({ url: `/graphql`, - plugins: [authPlugin], + plugins: [ + authPlugin, + subscription(() => + createClient({ + url: `/graphql/ws` + }) + ) + ], fetchParams() { //const session = getClientSession(); return { diff --git a/kitsune-fe/src/routes/+page.svelte b/kitsune-fe/src/routes/+page.svelte index a8cd2da7a..412e7a667 100644 --- a/kitsune-fe/src/routes/+page.svelte +++ b/kitsune-fe/src/routes/+page.svelte @@ -5,7 +5,7 @@ import type { PageData } from './$houdini'; import { _registerSchema } from './+page'; - import IconThreeDotsLoading from '~icons/eos-icons/three-dots-loading?raw&width=2em&height=2em'; + import IconThreeDotsLoading from '~icons/eos-icons/three-dots-loading'; const { data }: { data: PageData } = $props(); @@ -153,9 +153,7 @@