diff --git a/Cargo.lock b/Cargo.lock index 279a38c..d8cb551 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -52,13 +52,19 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" dependencies = [ "memchr", ] +[[package]] +name = "aligned-vec" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4aa90d7ce82d4be67b64039a3d588d38dbcc6736577de4a847025ce5b0c468d1" + [[package]] name = "alloc-no-stdlib" version = "2.0.4" @@ -103,9 +109,9 @@ checksum = "ea50b14b7a4b9343f8c627a7a53c52076482bd4bdad0a24fd3ec533ed616cc2c" [[package]] name = "anyhow" -version = "1.0.80" +version = "1.0.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1" +checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247" [[package]] name = "approx" @@ -116,12 +122,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "arbitrary" -version = "0.4.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db55d72333851e17d572bec876e390cd3b11eb1ef53ae821dd9f3b653d2b4569" - [[package]] name = "arbitrary" version = "1.3.2" @@ -136,7 +136,7 @@ checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -156,9 +156,6 @@ name = "arrayvec" version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" -dependencies = [ - "serde", -] [[package]] name = "artifact" @@ -240,13 +237,13 @@ dependencies = [ [[package]] name = "async-recursion" -version = "1.0.5" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0" +checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -257,13 +254,13 @@ checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799" [[package]] name = "async-trait" -version = "0.1.77" +version = "0.1.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" +checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -301,7 +298,7 @@ dependencies = [ "attribute-derive-macro", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -317,7 +314,7 @@ dependencies = [ "proc-macro2", "quote", "quote-use", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -357,7 +354,6 @@ dependencies = [ "log", "nom", "num-rational", - "serde", "v_frame", ] @@ -372,9 +368,9 @@ dependencies = [ [[package]] name = "axum" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1236b4b292f6c4d6dc34604bb5120d85c3fe1d1aa596bd5cc52ca054d13e7b9e" +checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf" dependencies = [ "async-trait", "axum-core", @@ -398,7 +394,7 @@ dependencies = [ "serde_json", "serde_path_to_error", "serde_urlencoded", - "sync_wrapper", + "sync_wrapper 1.0.0", "tokio", "tower", "tower-layer", @@ -421,7 +417,7 @@ dependencies = [ "mime", "pin-project-lite", "rustversion", - "sync_wrapper", + "sync_wrapper 0.1.2", "tower-layer", "tower-service", "tracing", @@ -453,17 +449,17 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "00c055ee2d014ae5981ce1016374e8213682aa14d9bf40e48ab48b5f3ef20eaa" dependencies = [ - "heck", + "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] name = "backtrace" -version = "0.3.69" +version = "0.3.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" +checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d" dependencies = [ "addr2line", "cc", @@ -480,6 +476,12 @@ version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +[[package]] +name = "base64" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51" + [[package]] name = "base64ct" version = "1.6.0" @@ -488,11 +490,11 @@ checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" [[package]] name = "bcrypt" -version = "0.15.0" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d1c9c15093eb224f0baa400f38fcd713fc1391a6f1c389d886beef146d60a3" +checksum = "e65938ed058ef47d92cf8b346cc76ef48984572ade631927e9937b5ffc7662c7" dependencies = [ - "base64", + "base64 0.22.0", "blowfish", "getrandom", "subtle", @@ -537,15 +539,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" - -[[package]] -name = "bitstream-io" -version = "1.10.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e445576659fd04a57b44cbd00aa37aaa815ebefa0aa3cb677a6b5e63d883074f" +checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" [[package]] name = "bitstream-io" @@ -570,7 +566,7 @@ name = "bl" version = "0.1.0" dependencies = [ "artifact", - "base64", + "base64 0.21.7", "bytes", "chrono", "clients", @@ -639,15 +635,15 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", "syn_derive", ] [[package]] name = "brotli" -version = "3.4.0" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f" +checksum = "d640d25bc63c50fb1f0b545ffd80207d2e10a4c965530809b40ba3386825c391" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -664,15 +660,6 @@ dependencies = [ "alloc-stdlib", ] -[[package]] -name = "built" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b9c056b9ed43aee5e064b683aa1ec783e19c6acec7559e3ae931b7490472fbe" -dependencies = [ - "cargo-lock", -] - [[package]] name = "built" version = "0.7.1" @@ -710,9 +697,9 @@ dependencies = [ [[package]] name = "bytemuck" -version = "1.14.3" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2ef034f05691a48569bd920a96c81b9d91bbad1ab5ac7c4616c1f6ef36cb79f" +checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15" [[package]] name = "byteorder" @@ -722,9 +709,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" +checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" [[package]] name = "cached" @@ -764,18 +751,6 @@ version = "1.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" -[[package]] -name = "cargo-lock" -version = "8.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "031718ddb8f78aa5def78a09e90defe30151d1f6c672f937af4dd916429ed996" -dependencies = [ - "semver", - "serde", - "toml 0.5.11", - "url", -] - [[package]] name = "cc" version = "1.0.90" @@ -933,9 +908,9 @@ checksum = "186dce98367766de751c42c4f03970fc60fc012296e706ccbb9d5df9b6c1e271" [[package]] name = "color-eyre" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a667583cca8c4f8436db8de46ea8233c42a7d9ae424a82d338f2e4675229204" +checksum = "55146f5e46f237f7423d74111267d4597b59b0dad0ffaf7303bce9945d843ad5" dependencies = [ "backtrace", "color-spantrace", @@ -993,7 +968,7 @@ dependencies = [ "nom", "pathdiff", "serde", - "toml 0.8.10", + "toml", ] [[package]] @@ -1053,9 +1028,9 @@ dependencies = [ [[package]] name = "cookie" -version = "0.18.0" +version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cd91cf61412820176e137621345ee43b3f4423e589e7ae4e50d601d93e35ef8" +checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747" dependencies = [ "percent-encoding", "time", @@ -1200,7 +1175,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -1222,7 +1197,7 @@ checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f" dependencies = [ "darling_core 0.20.8", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -1273,7 +1248,7 @@ checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -1437,9 +1412,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.0.1" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" +checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984" [[package]] name = "fdeflate" @@ -1538,9 +1513,9 @@ dependencies = [ [[package]] name = "futures-concurrency" -version = "7.4.3" +version = "7.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef6712e11cdeed5c8cf21ea0b90fec40fbe64afc9bbf2339356197eeca829fc3" +checksum = "9b590a729e1cbaf9ae3ec294143ea034d93cbb1de01c884d04bcd0af8b613d02" dependencies = [ "bitvec", "futures-core", @@ -1574,9 +1549,9 @@ checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" [[package]] name = "futures-lite" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445ba825b27408685aaecefd65178908c36c6e96aaf6d8599419d46e624192ba" +checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5" dependencies = [ "fastrand", "futures-core", @@ -1593,7 +1568,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -1687,7 +1662,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ff16065e5720f376fbced200a5ae0f47ace85fd70b7e54269790281353b6d61" dependencies = [ "approx", - "arbitrary 1.3.2", + "arbitrary", "num-traits", "rstar", "serde", @@ -1823,9 +1798,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.24" +version = "0.3.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9" +checksum = "4fbd2820c5e49886948654ab546d0688ff24530286bdcf8fca3cefb16d4618eb" dependencies = [ "bytes", "fnv", @@ -1833,26 +1808,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.2.5", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "h2" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31d030e59af851932b72ceebadf4a2b5986dba4c3b99dd2493f8273a0f151943" -dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http 1.1.0", - "indexmap 2.2.5", + "indexmap 2.2.6", "slab", "tokio", "tokio-util", @@ -1932,6 +1888,12 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + [[package]] name = "hermit-abi" version = "0.3.9" @@ -2007,12 +1969,12 @@ dependencies = [ [[package]] name = "http-body-util" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41cb79eb393015dadd30fc252023adb0b2400a0caee0fa2a077e6e21a551e840" +checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d" dependencies = [ "bytes", - "futures-util", + "futures-core", "http 1.1.0", "http-body 1.0.0", "pin-project-lite", @@ -2052,7 +2014,7 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "h2 0.3.24", + "h2", "http 0.2.12", "http-body 0.4.6", "httparse", @@ -2075,7 +2037,6 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.2", "http 1.1.0", "http-body 1.0.0", "httparse", @@ -2200,9 +2161,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.2.5" +version = "2.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4" +checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" dependencies = [ "equivalent", "hashbrown 0.14.3", @@ -2235,7 +2196,7 @@ checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -2353,7 +2314,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -2469,7 +2430,7 @@ dependencies = [ "futures", "getrandom", "html-escape", - "indexmap 2.2.5", + "indexmap 2.2.6", "itertools 0.12.1", "js-sys", "leptos_reactive", @@ -2494,13 +2455,13 @@ source = "git+https://github.com/leptos-rs/leptos.git?rev=c06f6be#c06f6bede2c9e8 dependencies = [ "anyhow", "camino", - "indexmap 2.2.5", + "indexmap 2.2.6", "parking_lot", "proc-macro2", "quote", "rstml", "serde", - "syn 2.0.52", + "syn 2.0.55", "walkdir", ] @@ -2534,7 +2495,7 @@ dependencies = [ "quote", "rstml", "server_fn_macro 0.6.9 (git+https://github.com/leptos-rs/leptos.git?rev=c06f6be)", - "syn 2.0.52", + "syn 2.0.55", "tracing", "uuid", ] @@ -2545,7 +2506,7 @@ version = "0.6.9" source = "git+https://github.com/leptos-rs/leptos.git?rev=c06f6be#c06f6bede2c9e8ab8094728add98b9d0dc725057" dependencies = [ "cfg-if", - "indexmap 2.2.5", + "indexmap 2.2.6", "leptos", "tracing", "wasm-bindgen", @@ -2557,10 +2518,10 @@ name = "leptos_reactive" version = "0.6.9" source = "git+https://github.com/leptos-rs/leptos.git?rev=c06f6be#c06f6bede2c9e8ab8094728add98b9d0dc725057" dependencies = [ - "base64", + "base64 0.21.7", "cfg-if", "futures", - "indexmap 2.2.5", + "indexmap 2.2.6", "js-sys", "paste", "pin-project", @@ -2640,23 +2601,13 @@ version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" -[[package]] -name = "libfuzzer-sys" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf184a4b6b274f82a5df6b357da6055d3e82272327bba281c28bbba6f1664ef" -dependencies = [ - "arbitrary 0.4.7", - "cc", -] - [[package]] name = "libfuzzer-sys" version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a96cfd5557eb82f2b83fed4955246c988d331975a002961b07c81584d107e7f7" dependencies = [ - "arbitrary 1.3.2", + "arbitrary", "cc", "once_cell", ] @@ -2673,7 +2624,7 @@ version = "0.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" dependencies = [ - "bitflags 2.4.2", + "bitflags 2.5.0", "libc", "redox_syscall", ] @@ -2732,7 +2683,7 @@ dependencies = [ "manyhow-macros", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -2807,7 +2758,7 @@ checksum = "49e7bc1560b95a3c4a25d03de42fe76ca718ab92d1a22a55b9b4cf67b3ae635c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -2906,9 +2857,9 @@ dependencies = [ [[package]] name = "new_debug_unreachable" -version = "1.0.4" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" +checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" [[package]] name = "nibble_vec" @@ -2979,17 +2930,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" -[[package]] -name = "num-derive" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "num-derive" version = "0.4.2" @@ -2998,7 +2938,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -3081,7 +3021,7 @@ dependencies = [ "kinded", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -3121,7 +3061,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b8718f8b65fdf67a45108d1548347d4af7d71fb81ce727bbf9e3b2535e079db3" dependencies = [ "async-trait", - "base64", + "base64 0.21.7", "bytes", "chrono", "futures", @@ -3250,7 +3190,7 @@ version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b13fe415cdf3c8e44518e18a7c95a13431d9bdf6d15367d82b23c377fdd441a" dependencies = [ - "base64", + "base64 0.21.7", "serde", ] @@ -3276,7 +3216,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" dependencies = [ "fixedbitset", - "indexmap 2.2.5", + "indexmap 2.2.6", ] [[package]] @@ -3321,7 +3261,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -3396,12 +3336,12 @@ checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" [[package]] name = "prettyplease" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5" +checksum = "8d3928fb5db768cb86f891ff014f0144589297e3c6a1aba6ed7cecfdace270c7" dependencies = [ "proc-macro2", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -3450,9 +3390,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.78" +version = "1.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" +checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e" dependencies = [ "unicode-ident", ] @@ -3465,7 +3405,7 @@ checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", "version_check", "yansi", ] @@ -3486,7 +3426,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8021cf59c8ec9c432cfc2526ac6b8aa508ecaf29cd415f271b8406c1b851c3fd" dependencies = [ "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -3560,9 +3500,9 @@ dependencies = [ [[package]] name = "quick_cache" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58c20af3800cee5134b79a3bd4a3d4b583c16ccfa5f53338f46400851a5b3819" +checksum = "b1380629287ed1247c1e0fcc6d43efdcec508b65382c9ab775cc8f3df7ca07b0" dependencies = [ "ahash 0.8.11", "equivalent", @@ -3587,7 +3527,7 @@ checksum = "a7b5abe3fe82fdeeb93f44d66a7b444dedf2e4827defb0a8e69c437b2de2ef94" dependencies = [ "quote", "quote-use-macros", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -3599,7 +3539,7 @@ dependencies = [ "derive-where", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -3649,68 +3589,30 @@ dependencies = [ "getrandom", ] -[[package]] -name = "rav1e" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16c383692a5e7abd9f6d1eddb1a5e0269f859392387883361bb09e5555852ec1" -dependencies = [ - "arbitrary 0.4.7", - "arg_enum_proc_macro", - "arrayvec", - "av1-grain", - "bitstream-io 1.10.0", - "built 0.5.2", - "cc", - "cfg-if", - "interpolate_name", - "itertools 0.10.5", - "libc", - "libfuzzer-sys 0.3.5", - "log", - "maybe-rayon", - "nasm-rs", - "new_debug_unreachable", - "noop_proc_macro", - "num-derive 0.3.3", - "num-traits", - "once_cell", - "paste", - "rand", - "rand_chacha", - "rust_hawktracer", - "rustc_version", - "simd_helpers", - "system-deps", - "thiserror", - "v_frame", - "wasm-bindgen", -] - [[package]] name = "rav1e" version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd87ce80a7665b1cce111f8a16c1f3929f6547ce91ade6addf4ec86a8dda5ce9" dependencies = [ - "arbitrary 1.3.2", + "arbitrary", "arg_enum_proc_macro", "arrayvec", "av1-grain", - "bitstream-io 2.2.0", - "built 0.7.1", + "bitstream-io", + "built", "cc", "cfg-if", "interpolate_name", "itertools 0.12.1", "libc", - "libfuzzer-sys 0.4.7", + "libfuzzer-sys", "log", "maybe-rayon", "nasm-rs", "new_debug_unreachable", "noop_proc_macro", - "num-derive 0.4.2", + "num-derive", "num-traits", "once_cell", "paste", @@ -3721,29 +3623,29 @@ dependencies = [ "system-deps", "thiserror", "v_frame", + "wasm-bindgen", ] [[package]] name = "ravif" -version = "0.11.4" +version = "0.11.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d44feba0b8a381a5efa2c0baf8dace8418904403260233f4a614503b018fc288" +checksum = "bc13288f5ab39e6d7c9d501759712e6969fcc9734220846fc9ed26cae2cc4234" dependencies = [ "avif-serialize", "imgref", "loop9", "quick-error", - "rav1e 0.6.6", - "rav1e 0.7.1", + "rav1e", "rayon", "rgb", ] [[package]] name = "rayon" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4963ed1bc86e4f3ee217022bd855b297cef07fb9eac5dfa1f788b220b49b3bd" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" dependencies = [ "either", "rayon-core", @@ -3761,9 +3663,9 @@ dependencies = [ [[package]] name = "redact" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbcc931183921ce8ec7abb78e335d8e0dbdd86ee237bd991bc022f7b79251168" +checksum = "b7301863b5e5486c9f18320ccc1aedce9a5fdf3056ae89fa021933d6f054430f" dependencies = [ "serde", ] @@ -3805,14 +3707,14 @@ checksum = "5fddb4f8d99b0a2ebafc65a87a69a7b9875e4b1ae1f00db265d300ef7f28bccc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] name = "regex" -version = "1.10.3" +version = "1.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15" +checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" dependencies = [ "aho-corasick", "memchr", @@ -3863,16 +3765,16 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.11.25" +version = "0.11.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eea5a9eb898d3783f17c6407670e3592fd174cb81a10e51d4c37f49450b9946" +checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" dependencies = [ - "base64", + "base64 0.21.7", "bytes", "encoding_rs", "futures-core", "futures-util", - "h2 0.3.24", + "h2", "http 0.2.12", "http-body 0.4.6", "hyper 0.14.28", @@ -3891,7 +3793,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", + "sync_wrapper 0.1.2", "system-configuration", "tokio", "tokio-rustls", @@ -3934,7 +3836,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -4084,7 +3986,7 @@ dependencies = [ "proc-macro2", "proc-macro2-diagnostics", "quote", - "syn 2.0.52", + "syn 2.0.55", "syn_derive", "thiserror", ] @@ -4115,28 +4017,6 @@ dependencies = [ "serde_json", ] -[[package]] -name = "rust_hawktracer" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3480a29b927f66c6e06527be7f49ef4d291a01d694ec1fe85b0de71d6b02ac1" -dependencies = [ - "rust_hawktracer_normal_macro", - "rust_hawktracer_proc_macro", -] - -[[package]] -name = "rust_hawktracer_normal_macro" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a570059949e1dcdc6f35228fa389f54c2c84dfe0c94c05022baacd56eacd2e9" - -[[package]] -name = "rust_hawktracer_proc_macro" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb626abdbed5e93f031baae60d72032f56bc964e11ac2ff65f2ba3ed98d6d3e1" - [[package]] name = "rustc-demangle" version = "0.1.23" @@ -4197,7 +4077,7 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" dependencies = [ - "base64", + "base64 0.21.7", ] [[package]] @@ -4358,7 +4238,7 @@ checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -4367,7 +4247,7 @@ version = "1.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0" dependencies = [ - "indexmap 2.2.5", + "indexmap 2.2.6", "itoa", "ryu", "serde", @@ -4375,9 +4255,9 @@ dependencies = [ [[package]] name = "serde_path_to_error" -version = "0.1.15" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebd154a240de39fdebcf5775d2675c204d7c13cf39a4c697be6493c8e734337c" +checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" dependencies = [ "itoa", "serde", @@ -4426,15 +4306,15 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.6.1" +version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15d167997bd841ec232f5b2b8e0e26606df2e7caa4c31b95ea9ca52b200bd270" +checksum = "ee80b0e361bbf88fd2f6e242ccd19cfda072cb0faa6ae694ecee08199938569a" dependencies = [ - "base64", + "base64 0.21.7", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.2.5", + "indexmap 2.2.6", "serde", "serde_derive", "serde_json", @@ -4444,14 +4324,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.6.1" +version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "865f9743393e638991566a8b7a479043c2c8da94a33e0a31f18214c9cae0a64d" +checksum = "6561dc161a9224638a31d876ccdfefbc1df91d3f3a8342eddb35f055d48c7655" dependencies = [ "darling 0.20.8", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -4527,7 +4407,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", "xxhash-rust", ] @@ -4540,7 +4420,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", "xxhash-rust", ] @@ -4551,7 +4431,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "060af1def72353a779fcc184c53e1965d3055a38b9e827f2259b2bff2d9c371e" dependencies = [ "server_fn_macro 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -4560,7 +4440,7 @@ version = "0.6.9" source = "git+https://github.com/leptos-rs/leptos.git?rev=c06f6be#c06f6bede2c9e8ab8094728add98b9d0dc725057" dependencies = [ "server_fn_macro 0.6.9 (git+https://github.com/leptos-rs/leptos.git?rev=c06f6be)", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -4747,9 +4627,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.1" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "smol_str" @@ -4776,7 +4656,7 @@ version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "990079665f075b699031e9c08fd3ab99be5029b96f3b78dc0709e8f77e4efebf" dependencies = [ - "heck", + "heck 0.4.1", "proc-macro2", "quote", "syn 1.0.109", @@ -4896,15 +4776,15 @@ dependencies = [ [[package]] name = "strum_macros" -version = "0.26.1" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a3417fc93d76740d974a01654a09777cb500428cc874ca9f45edfe0c4d4cd18" +checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946" dependencies = [ - "heck", + "heck 0.4.1", "proc-macro2", "quote", "rustversion", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -4915,9 +4795,9 @@ checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" [[package]] name = "surrealdb" -version = "1.2.2" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eeda932a753a5a9c78481e20c3ecd7a60cb705b0e519cb7a9b91fe1391dff7d1" +checksum = "763696a1b2da764f1bbc0db79115f08a01a0eae87817f238395e668043be3b21" dependencies = [ "async-channel", "bincode", @@ -4927,7 +4807,7 @@ dependencies = [ "futures", "futures-concurrency", "geo 0.27.0", - "indexmap 2.2.5", + "indexmap 2.2.6", "once_cell", "path-clean", "pharos", @@ -4954,9 +4834,9 @@ dependencies = [ [[package]] name = "surrealdb-core" -version = "1.2.2" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ba01ca3f11b036bfcbebaa0b43747a76708d9064042e412cecd54079735e77b" +checksum = "0fcec4e37f6a316d8b872595a2c983c6b520b03bd1c0ff6185633a08f0e7e1a3" dependencies = [ "addr", "any_ascii", @@ -4964,7 +4844,7 @@ dependencies = [ "async-channel", "async-executor", "async-recursion", - "base64", + "base64 0.21.7", "bcrypt", "bincode", "bytes", @@ -5036,7 +4916,7 @@ version = "8.3.0-surreal.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "02d4f759c65df8a8cf2d83c99db7fdd3ae5b8fff05fa7fe69a8612f29dd5f99b" dependencies = [ - "base64", + "base64 0.21.7", "getrandom", "hmac", "pem", @@ -5062,9 +4942,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.52" +version = "2.0.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07" +checksum = "002a1b3dbf967edfafc32655d0f377ab0bb7b994aa1d32c8cc7e9b8bf3ebb8f0" dependencies = [ "proc-macro2", "quote", @@ -5080,7 +4960,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -5089,22 +4969,28 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" +[[package]] +name = "sync_wrapper" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "384595c11a4e2969895cad5a8c4029115f5ab956a9e5ef4de79d11a426e5f20c" + [[package]] name = "system-configuration" -version = "0.6.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "658bc6ee10a9b4fcf576e9b0819d95ec16f4d2c02d39fd83ac1c8789785c4a42" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ - "bitflags 2.4.2", + "bitflags 1.3.2", "core-foundation", "system-configuration-sys", ] [[package]] name = "system-configuration-sys" -version = "0.6.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" dependencies = [ "core-foundation-sys", "libc", @@ -5112,14 +4998,14 @@ dependencies = [ [[package]] name = "system-deps" -version = "6.2.0" +version = "6.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331" +checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349" dependencies = [ "cfg-expr", - "heck", + "heck 0.5.0", "pkg-config", - "toml 0.8.10", + "toml", "version-compare", ] @@ -5163,7 +5049,7 @@ checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -5280,7 +5166,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -5326,23 +5212,14 @@ dependencies = [ [[package]] name = "toml" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" -dependencies = [ - "serde", -] - -[[package]] -name = "toml" -version = "0.8.10" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290" +checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.6", + "toml_edit 0.22.9", ] [[package]] @@ -5360,18 +5237,18 @@ version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" dependencies = [ - "indexmap 2.2.5", + "indexmap 2.2.6", "toml_datetime", "winnow 0.5.40", ] [[package]] name = "toml_edit" -version = "0.22.6" +version = "0.22.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6" +checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4" dependencies = [ - "indexmap 2.2.5", + "indexmap 2.2.6", "serde", "serde_spanned", "toml_datetime", @@ -5423,8 +5300,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" dependencies = [ "async-compression", - "base64", - "bitflags 2.4.2", + "base64 0.21.7", + "bitflags 2.5.0", "bytes", "futures-core", "futures-util", @@ -5485,7 +5362,7 @@ checksum = "bc792f6a4179356f9093447edebe14bb73dbc99be636886281313cb98b47201b" dependencies = [ "async-trait", "axum-core", - "base64", + "base64 0.21.7", "futures", "http 1.1.0", "parking_lot", @@ -5545,14 +5422,14 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] name = "tracing-chrome" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "496b3cd5447f7ff527bbbf19b071ad542a000adf297d4127078b4dfdb931f41a" +checksum = "bf0a738ed5d6450a9fb96e86a23ad808de2b727fd1394585da5cdd6788ffe724" dependencies = [ "serde_json", "tracing-core", @@ -5662,7 +5539,7 @@ checksum = "563b3b88238ec95680aef36bdece66896eaa7ce3c0f1b4f39d38fb2435261352" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] @@ -5790,9 +5667,9 @@ checksum = "86bd8d4e895da8537e5315b8254664e6b769c4ff3db18321b297a1e7004392e3" [[package]] name = "uuid" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a" +checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" dependencies = [ "atomic", "getrandom", @@ -5802,15 +5679,13 @@ dependencies = [ [[package]] name = "v_frame" -version = "0.3.7" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c372e4e6fad129795fb86fda6021b258948560b39883b80ed00510a7d19846b0" +checksum = "d6f32aaa24bacd11e488aa9ba66369c7cd514885742c9fe08cfe85884db3e92b" dependencies = [ - "cfg-if", - "noop_proc_macro", - "num-derive 0.4.2", + "aligned-vec", "num-traits", - "profiling", + "wasm-bindgen", ] [[package]] @@ -5829,9 +5704,9 @@ checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" [[package]] name = "version-compare" -version = "0.1.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29" +checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b" [[package]] name = "version_check" @@ -5885,15 +5760,15 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.39" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac36a15a220124ac510204aec1c3e5db8a22ab06fd6706d881dc6149f8ed9a12" +checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" dependencies = [ "cfg-if", "js-sys", @@ -5919,7 +5794,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -6224,9 +6099,9 @@ checksum = "927da81e25be1e1a2901d59b81b37dd2efd1fc9c9345a55007f09bf5a2d3ee03" [[package]] name = "yansi" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c2861d76f58ec8fc95708b9b1e417f7b12fd72ad33c01fa6886707092dea0d3" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" [[package]] name = "zerocopy" @@ -6245,7 +6120,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.52", + "syn 2.0.55", ] [[package]] diff --git a/crates/artifact/src/methods.rs b/crates/artifact/src/methods.rs index 204b61f..4136662 100644 --- a/crates/artifact/src/methods.rs +++ b/crates/artifact/src/methods.rs @@ -18,16 +18,36 @@ pub fn object_store_from_env( Ok(Box::new(object_store)) } -fn cache_dir() -> std::path::PathBuf { std::env::temp_dir() } -fn cache_path(id: &str) -> std::path::PathBuf { cache_dir().join(id) } +/// Get the cache directory for artifacts. +/// +/// By default, this is the system's temporary directory. It can be overridden +/// by setting the `TMPDIR` environment variable. If the directory does not +/// exist, it will be created. +fn get_cache_dir() -> Result { + let cache_dir = std::env::temp_dir(); + if !cache_dir.exists() { + tracing::debug!("creating cache directory"); + std::fs::create_dir_all(&cache_dir) + .wrap_err("Failed to create cache directory")?; + } + Ok(cache_dir) +} +/// Get the path to the cached artifact. +/// +/// The parent directory will be created in [`get_cache_dir`] if it does not +/// exist. +fn cache_path(id: &str) -> Result { + get_cache_dir().map(|d| d.join(id)) +} #[instrument(skip(object_store))] pub async fn download_artifact( object_store: ObjectStoreGenerator, id: &str, ) -> Result { - let cache_path = cache_path(id); + let cache_path = cache_path(id)?; if cache_path.exists() { + tracing::debug!("using cached artifact instead of downloading"); let contents = tokio::fs::read(cache_path) .await .wrap_err("Failed to read cached artifact")?; @@ -35,13 +55,9 @@ pub async fn download_artifact( } let object_store = object_store()?; + tracing::debug!("downloading uncached artifact"); let contents = inner_download_artifact(&*object_store, id).await?; - if !cache_dir().exists() { - tokio::fs::create_dir_all(cache_dir()) - .await - .wrap_err("Failed to create cache directory")?; - } tokio::fs::write(&cache_path, &contents) .await .wrap_err("Failed to write cached artifact")?; @@ -73,7 +89,7 @@ pub async fn upload_artifact( id: &str, contents: bytes::Bytes, ) -> Result<()> { - let cache_path = cache_path(id); + let cache_path = cache_path(id)?; tokio::fs::write(&cache_path, &contents) .await .wrap_err("Failed to write cached artifact")?; diff --git a/crates/bl/Cargo.toml b/crates/bl/Cargo.toml index 2208c11..79b394f 100644 --- a/crates/bl/Cargo.toml +++ b/crates/bl/Cargo.toml @@ -8,7 +8,6 @@ edition = "2021" [dependencies] core_types = { path = "../core_types" } leptos.workspace = true -bytes.workspace = true serde.workspace = true thiserror.workspace = true http.workspace = true @@ -19,6 +18,7 @@ artifact = { path = "../artifact", optional = true } rmp-serde = "1.1.2" base64 = { workspace = true, optional = true } +bytes = { workspace = true, optional = true } chrono = { workspace = true, optional = true } color-eyre = { workspace = true, optional = true } image = { workspace = true, optional = true } @@ -37,5 +37,5 @@ hydrate = [ "leptos/hydrate" ] ssr = [ "core_types/ssr", "leptos/ssr", "dep:clients", "dep:artifact", "dep:base64", "dep:color-eyre", "dep:image", "dep:qrcode", "dep:rayon", "dep:surrealdb", - "dep:tokio", "dep:tracing", "dep:kamadak-exif", "dep:chrono", + "dep:tokio", "dep:tracing", "dep:kamadak-exif", "dep:chrono", "dep:bytes", ] diff --git a/crates/site-app/Cargo.toml b/crates/site-app/Cargo.toml index d4ed85a..90cb1c7 100644 --- a/crates/site-app/Cargo.toml +++ b/crates/site-app/Cargo.toml @@ -19,7 +19,7 @@ serde.workspace = true bytes = { workspace = true, optional = true } time = { workspace = true, optional = true } chrono = { workspace = true } -timeago = { workspace = true } +timeago = { workspace = true, optional = true } tower-sessions = { workspace = true, optional = true } tracing = { workspace = true, optional = true } @@ -39,6 +39,6 @@ hydrate = ["bl/hydrate", "leptos/hydrate", "leptos_meta/hydrate", "leptos_router ssr = [ "bl/ssr", "leptos/ssr", "leptos/tracing", "leptos_meta/ssr", "leptos_router/ssr", "dep:leptos_axum", "dep:auth", "dep:bytes", "dep:tracing", "dep:tower-sessions", - "dep:time", + "dep:time", "dep:timeago", ] diff --git a/crates/site-app/src/components/mod.rs b/crates/site-app/src/components/mod.rs index cf09308..53c2334 100644 --- a/crates/site-app/src/components/mod.rs +++ b/crates/site-app/src/components/mod.rs @@ -38,11 +38,27 @@ pub mod basic { #[component] pub fn TimeAgo(time: chrono::DateTime) -> impl IntoView { - let formatter = timeago::Formatter::new(); - let formatted = formatter.convert_chrono(time, chrono::Utc::now()); + let formatted_time = create_blocking_resource(move || time, format_timeago); view! { - { formatted } + + { move || match formatted_time() { + Some(Ok(time)) => view! { + { time } + }.into_view(), + _ => view! { + ... + }.into_view() + }} + } } + + #[server] + async fn format_timeago( + date: chrono::DateTime, + ) -> Result { + let formatter = timeago::Formatter::new(); + Ok(formatter.convert_chrono(date, chrono::Utc::now())) + } } diff --git a/crates/site-app/src/components/photo_deck.rs b/crates/site-app/src/components/photo_deck.rs index 97ebcec..f54684c 100644 --- a/crates/site-app/src/components/photo_deck.rs +++ b/crates/site-app/src/components/photo_deck.rs @@ -1,11 +1,16 @@ use leptos::*; +use crate::components::photo::PhotoSize; + #[component] -pub fn PhotoDeck(ids: Vec) -> impl IntoView { +pub fn PhotoDeck( + ids: Vec, + #[prop(default = PhotoSize::Regular)] size: PhotoSize, +) -> impl IntoView { view! { { ids.into_iter().map(|photo_id| { view! { - + } .into_view() }).collect::>() } diff --git a/crates/site-app/src/components/photo_upload.rs b/crates/site-app/src/components/photo_upload.rs index eddad54..0b24694 100644 --- a/crates/site-app/src/components/photo_upload.rs +++ b/crates/site-app/src/components/photo_upload.rs @@ -12,7 +12,6 @@ fn round_with_scale(input: f32, scale: f32) -> f32 { } /// Converts a price to a reasonable multiple. -#[allow(illegal_floating_point_literal_pattern)] fn sensible_price(input: f32) -> f32 { match input { 0.0..=1.0 => round_with_scale(input, 0.05), @@ -72,47 +71,44 @@ pub fn PhotoUpload() -> impl IntoView { }); view! { -
-
-

"Upload Photo"

- - // price input -
- - ().unwrap()); - } - value={DEFAULT_PRICE.log10()} - prop:value=logarithmic_price - /> -

{move || format!("${:.2}", price())}

-
- - // file input +
+

"Upload Photo"

+ + // price input +
+ ().unwrap(); - set_files(target.files()); + type="range" class="d-range" id="price" name="price" + min={MIN_PRICE.log10()} max={MAX_PRICE.log10()} step=0.01 + on:input=move |e: Event| { + set_logarithmic_price(event_target_value(&e).parse::().unwrap()); } + value={DEFAULT_PRICE.log10()} + prop:value=logarithmic_price /> +

{move || format!("${:.2}", price())}

+
- // upload button -
- -
- + // file input + ().unwrap(); + set_files(target.files()); + } + /> + + // upload button +
+
} diff --git a/crates/site-app/src/lib.rs b/crates/site-app/src/lib.rs index c46426b..2ddadac 100644 --- a/crates/site-app/src/lib.rs +++ b/crates/site-app/src/lib.rs @@ -22,9 +22,9 @@ pub fn App() -> impl IntoView { view! { - + - + // set the metadata @@ -59,21 +59,17 @@ pub fn App() -> impl IntoView { #[component] pub fn Navbar() -> impl IntoView { let current_user = authenticated_user(); - let home_url = if current_user.is_some() { - "/dashboard" - } else { - "/" - }; + let button_class = "d-btn d-btn-neutral d-btn-sm"; let user_area = match current_user { Some(_user) => view! { - <a class="d-btn d-btn-neutral d-btn-sm" href="/dashboard">Dashboard</a> - <LogoutButton class={Some("d-btn d-btn-neutral d-btn-sm".into())} /> + <a class={button_class} href="/dashboard">Dashboard</a> + <LogoutButton class={Some(button_class.into())} /> } .into_view(), None => view! { - <a class="d-btn d-btn-neutral d-btn-sm" href="/login">Login</a> - <a class="d-btn d-btn-neutral d-btn-sm" href="/signup">Sign Up</a> + <a class={button_class} href="/login">Login</a> + <a class={button_class} href="/signup">Sign Up</a> } .into_view(), }; @@ -82,7 +78,7 @@ pub fn Navbar() -> impl IntoView { <div class="bg-base-100 w-full shadow"> <div class="d-navbar md:container md:mx-auto"> <div class="flex-1"> - <a class="d-btn d-btn-ghost text-xl d-btn-sm" href={home_url}>PicturePro</a> + <a class="d-btn d-btn-ghost text-xl d-btn-sm" href="/">PicturePro</a> </div> <div class="flex-none flex flex-row items-center gap-2"> {user_area} diff --git a/crates/site-app/src/pages/home_page.rs b/crates/site-app/src/pages/home_page.rs index 9d89199..bdd32c2 100644 --- a/crates/site-app/src/pages/home_page.rs +++ b/crates/site-app/src/pages/home_page.rs @@ -4,28 +4,108 @@ use crate::components::basic::Link; #[component] pub fn HomePage() -> impl IntoView { - let user = crate::utils::authenticated_user(); + match crate::utils::authenticated_user() { + Some(_) => AuthenticatedHomePage().into_view(), + None => UnauthenticatedHomePage().into_view(), + } +} + +#[component] +fn ColoredBox( + border_color: &'static str, + bg_color: &'static str, + text_color: &'static str, + title: &'static str, + description: &'static str, + #[prop(optional)] href: Option<&'static str>, +) -> impl IntoView { + let container_class = format!( + "flex flex-col gap-2 px-4 py-2 border-2 {border_color} {bg_color} \ + rounded-box {text_color} min-h-32", + ); + + let title_element = view! { + <p class="text-2xl font-semibold tracking-tight leading-tight">{title}</p> + }; + let description_element = view! { + <p class="text-sm">{description}</p> + }; + + match href { + Some(href) => view! { + <a href={href} class={container_class}> + {title_element} + {description_element} + </a> + } + .into_view(), + None => view! { + <div class={container_class}> + {title_element} + {description_element} + </div> + } + .into_view(), + } +} + +#[component] +pub fn AuthenticatedHomePage() -> impl IntoView { + view! { + <super::PageWrapper backed=false> + <p class="font-semibold tracking-tight text-4xl"> + "Share / Sell Photos with Anyone!" + </p> + <div class="grid gap-4 grid-cols-2 grid-rows-2 w-full"> + <ColoredBox + border_color="border-orange-700" + bg_color="bg-orange-500/20" + text_color="text-orange-200/80" + title="Private Session" + description="Separate subjects, separate customers." + href="/dashboard" + /> + <ColoredBox + border_color="border-green-700" + bg_color="bg-green-500/20" + text_color="text-green-200/80" + title="Public Session" + description="Share with everyone, sell to everyone." + /> + <ColoredBox + border_color="border-blue-700" + bg_color="bg-blue-500/20" + text_color="text-blue-200/80" + title="Discover" + description="Discover photos from around the world." + /> + <ColoredBox + border_color="border-purple-700" + bg_color="bg-purple-500/20" + text_color="text-purple-200/80" + title="School Event" + description="Share photos from school events." + /> + </div> + </super::PageWrapper> + } +} +#[component] +pub fn UnauthenticatedHomePage() -> impl IntoView { view! { <super::SmallPageWrapper> - <div class="d-card-body gap-4"> + <div class="flex flex-col p-8 gap-4"> <p class="text-2xl font-semibold tracking-tight">"Welcome to PicturePro!"</p> - { match user { - Some(user) => view! { - <p>{format!("You are logged in as {} ({})", user.name, user.email)}</p> - }.into_view(), - None => view! { - <p> - "You are not logged in." - </p> - <p>"Please " - <Link href="/login".to_string()>login</Link> - " or " - <Link href="/signup".to_string()>"sign up"</Link> - "." - </p> - }.into_view() - }} + <p> + "You are not logged in." + </p> + <p>"Please " + <Link href="/login".to_string()>login</Link> + " or " + <Link href="/signup".to_string()>"sign up"</Link> + "." + </p> </div> </super::SmallPageWrapper> } diff --git a/crates/site-app/src/pages/purchase/error.rs b/crates/site-app/src/pages/purchase/error.rs index 36cc830..190e2b8 100644 --- a/crates/site-app/src/pages/purchase/error.rs +++ b/crates/site-app/src/pages/purchase/error.rs @@ -1,4 +1,4 @@ -use leptos::{logging, *}; +use leptos::*; use crate::pages::PageWrapper; diff --git a/crates/site-app/src/pages/qr_code.rs b/crates/site-app/src/pages/qr_code.rs index b64d6b0..d629e36 100644 --- a/crates/site-app/src/pages/qr_code.rs +++ b/crates/site-app/src/pages/qr_code.rs @@ -6,14 +6,15 @@ use crate::pages::SmallPageWrapper; #[component] pub fn QrCodePage() -> impl IntoView { view! { - <InnerQrCodePage class="md:hidden" theme_override=Some("black") /> - <InnerQrCodePage class="max-md:hidden" /> + <InnerQrCodePage wrapper_class="md:hidden" inner_class="border rounded-box" theme_override=Some("black") /> + <InnerQrCodePage wrapper_class="max-md:hidden" /> } } #[component] pub fn InnerQrCodePage( - #[prop(default = "")] class: &'static str, + #[prop(default = "")] wrapper_class: &'static str, + #[prop(default = "")] inner_class: &'static str, #[prop(default = None)] theme_override: Option<&'static str>, ) -> impl IntoView { let params = use_params_map(); @@ -26,8 +27,7 @@ pub fn InnerQrCodePage( std::env::var("APP_BASE_URL").expect("APP_BASE_URL not set"), ); - // we will display the qr code regardless, but if we can map it to a photo - // group, we will also display the photo deck + // attempt to locate the photo group let photo_deck_element = match id.parse::<core_types::Ulid>() { Ok(ulid) => view! { <PhotoDeckWrapper group_id={core_types::PhotoGroupRecordId(ulid)} /> @@ -37,11 +37,11 @@ pub fn InnerQrCodePage( }; view! { - <SmallPageWrapper extra_class=class theme_override=theme_override> - <div class="d-card-body gap-4"> + <SmallPageWrapper extra_class=wrapper_class theme_override=theme_override> + <div class={format!("d-card-body gap-4 {}", inner_class)}> <p class="text-2xl font-semibold tracking-tight">"QR Code"</p> - <QrCode data=url class="rounded-box border shadow" /> {photo_deck_element} + <QrCode data=url class="rounded-box border shadow size-24 self-end" /> <div class="flex flex-row items-center gap-4"> <a href="/dashboard" class="d-btn d-btn-primary d-btn-sm">"Back to Dashboard"</a> <div class="flex-1" /> @@ -92,7 +92,7 @@ pub fn PhotoDeckWrapper( match r { Ok(Some(photo_group)) => view! { <div class="flex flex-row justify-center"> - <crate::components::photo_deck::PhotoDeck ids={photo_group.photos.clone()} /> + <crate::components::photo_deck::PhotoDeck ids={photo_group.photos.clone()} size={crate::components::photo::PhotoSize::FitsWithinSquare(320)} /> </div> }.into_view(), Ok(None) => view! { diff --git a/crates/site-app/style/tailwind/tailwind.config.js b/crates/site-app/style/tailwind/tailwind.config.js index b78c764..80b5ce0 100644 --- a/crates/site-app/style/tailwind/tailwind.config.js +++ b/crates/site-app/style/tailwind/tailwind.config.js @@ -4,7 +4,10 @@ module.exports = { }, theme: { fontFamily: { - 'sans': ['inter', 'ui-sans-serif', 'system-ui', 'sans-serif', "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"], + 'sans': [ + 'inter', 'ui-sans-serif', 'system-ui', 'sans-serif', "Apple Color Emoji", + "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" + ], }, screens: { 'xs': '480px', @@ -13,7 +16,9 @@ module.exports = { 'lg': '1024px', }, }, - plugins: [require("daisyui")], + plugins: [ + require("daisyui"), + ], daisyui: { themes: [ { diff --git a/deny.toml b/deny.toml index d730aae..df738ca 100644 --- a/deny.toml +++ b/deny.toml @@ -112,6 +112,7 @@ allow = [ "Zlib", # for surrealdb :( "BSL-1.0", + "BUSL-1.1", ] # List of explicitly disallowed licenses # See https://spdx.org/licenses/ for list of possible licenses diff --git a/flake.lock b/flake.lock index 24f9b37..fcb8f33 100644 --- a/flake.lock +++ b/flake.lock @@ -18,7 +18,9 @@ }, "crane": { "inputs": { - "nixpkgs": "nixpkgs" + "nixpkgs": [ + "nixpkgs" + ] }, "locked": { "lastModified": 1706473297, @@ -85,46 +87,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1705566941, - "narHash": "sha256-CLNtVRDA8eUPk+bxsCCZtRO0Cp+SpHdn1nNOLoFypLs=", + "lastModified": 1711163522, + "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b06ff4bf8f4ad900fe0c2a61fc2946edc3a84be7", + "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1709884566, - "narHash": "sha256-NSYJg2sfdO/XS3L8XN/59Zhzn0dqWm7XtVnKI2mHq3w=", - "rev": "2be119add7b37dc535da2dd4cba68e2cf8d1517e", - "revCount": 556557, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2311.556557%2Brev-2be119add7b37dc535da2dd4cba68e2cf8d1517e/018e2117-9198-79f3-9df4-4997fc00989b/source.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://flakehub.com/f/NixOS/nixpkgs/0.2311.556557.tar.gz" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1681358109, - "narHash": "sha256-eKyxW4OohHQx9Urxi7TQlFBTDWII+F+x2hklDOQPB50=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "96ba1c52e54e74c3197f4d43026b3f3d92e83ff9", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } @@ -135,26 +107,28 @@ "crane": "crane", "flake-utils": "flake-utils", "nix-filter": "nix-filter", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs", "rust-overlay": "rust-overlay" } }, "rust-overlay": { "inputs": { "flake-utils": "flake-utils_2", - "nixpkgs": "nixpkgs_3" + "nixpkgs": [ + "nixpkgs" + ] }, "locked": { - "lastModified": 1706494265, - "narHash": "sha256-4ilEUJEwNaY9r/8BpL3VmZiaGber0j09lvvx0e/bosA=", - "rev": "246ba7102553851af60e0382f558f6bc5f63fa13", - "revCount": 1271, + "lastModified": 1711332768, + "narHash": "sha256-SFnlIwnrwJxEawLcrH7+zGb8spePcYyai5asMZnm0BM=", + "rev": "8a8e3ea9a9a4b2225cb5e33e07c3a337f820168c", + "revCount": 1330, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/oxalica/rust-overlay/0.1.1271%2Brev-246ba7102553851af60e0382f558f6bc5f63fa13/018d52fe-6bca-77e3-baa9-9ec2d7ebc03a/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/oxalica/rust-overlay/0.1.1330%2Brev-8a8e3ea9a9a4b2225cb5e33e07c3a337f820168c/018e7364-3101-78ae-beb3-ae589dd4294f/source.tar.gz" }, "original": { "type": "tarball", - "url": "https://flakehub.com/f/oxalica/rust-overlay/0.1.1271.tar.gz" + "url": "https://flakehub.com/f/oxalica/rust-overlay/0.1.1330.tar.gz" } }, "systems": { diff --git a/flake.nix b/flake.nix index dfa0401..bd03670 100644 --- a/flake.nix +++ b/flake.nix @@ -1,8 +1,14 @@ { inputs = { - nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.2311.556557.tar.gz"; - rust-overlay.url = "https://flakehub.com/f/oxalica/rust-overlay/0.1.1271.tar.gz"; - crane.url = "https://flakehub.com/f/ipetkov/crane/0.16.1.tar.gz"; + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + rust-overlay = { + url = "https://flakehub.com/f/oxalica/rust-overlay/0.1.1330.tar.gz"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + crane = { + url = "https://flakehub.com/f/ipetkov/crane/0.16.1.tar.gz"; + inputs.nixpkgs.follows = "nixpkgs"; + }; cargo-leptos-src = { url = "github:leptos-rs/cargo-leptos"; flake = false; }; nix-filter.url = "github:numtide/nix-filter"; }; @@ -129,6 +135,14 @@ in { checks = { + app-hydrate-clippy = craneLib.cargoClippy (common_args // { + cargoArtifacts = site-server-deps; + cargoClippyExtraArgs = "-p site-app --features hydrate -- --deny warnings"; + }); + app-ssr-clippy = craneLib.cargoClippy (common_args // { + cargoArtifacts = site-server-deps; + cargoClippyExtraArgs = "-p site-app --features ssr -- --deny warnings"; + }); site-server-clippy = craneLib.cargoClippy (common_args // { cargoArtifacts = site-server-deps; cargoClippyExtraArgs = "-p site-server -- --deny warnings";