diff options
-rw-r--r-- | Cargo.lock | 321 | ||||
-rw-r--r-- | Cargo.toml | 6 | ||||
-rw-r--r-- | Dockerfile | 2 | ||||
-rw-r--r-- | src/main.rs | 4 | ||||
-rw-r--r-- | src/routes.rs | 1 | ||||
-rw-r--r-- | src/routes/devices.rs | 24 | ||||
-rw-r--r-- | src/storage.rs | 25 |
7 files changed, 227 insertions, 156 deletions
@@ -52,13 +52,13 @@ dependencies = [ | |||
52 | 52 | ||
53 | [[package]] | 53 | [[package]] |
54 | name = "async-trait" | 54 | name = "async-trait" |
55 | version = "0.1.80" | 55 | version = "0.1.81" |
56 | source = "registry+https://github.com/rust-lang/crates.io-index" | 56 | source = "registry+https://github.com/rust-lang/crates.io-index" |
57 | checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" | 57 | checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107" |
58 | dependencies = [ | 58 | dependencies = [ |
59 | "proc-macro2", | 59 | "proc-macro2", |
60 | "quote", | 60 | "quote", |
61 | "syn 2.0.68", | 61 | "syn 2.0.74", |
62 | ] | 62 | ] |
63 | 63 | ||
64 | [[package]] | 64 | [[package]] |
@@ -134,7 +134,7 @@ dependencies = [ | |||
134 | "heck", | 134 | "heck", |
135 | "proc-macro2", | 135 | "proc-macro2", |
136 | "quote", | 136 | "quote", |
137 | "syn 2.0.68", | 137 | "syn 2.0.74", |
138 | ] | 138 | ] |
139 | 139 | ||
140 | [[package]] | 140 | [[package]] |
@@ -196,15 +196,15 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" | |||
196 | 196 | ||
197 | [[package]] | 197 | [[package]] |
198 | name = "bytes" | 198 | name = "bytes" |
199 | version = "1.6.0" | 199 | version = "1.7.1" |
200 | source = "registry+https://github.com/rust-lang/crates.io-index" | 200 | source = "registry+https://github.com/rust-lang/crates.io-index" |
201 | checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" | 201 | checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50" |
202 | 202 | ||
203 | [[package]] | 203 | [[package]] |
204 | name = "cc" | 204 | name = "cc" |
205 | version = "1.0.104" | 205 | version = "1.1.10" |
206 | source = "registry+https://github.com/rust-lang/crates.io-index" | 206 | source = "registry+https://github.com/rust-lang/crates.io-index" |
207 | checksum = "74b6a57f98764a267ff415d50a25e6e166f3831a5071af4995296ea97d210490" | 207 | checksum = "e9e8aabfac534be767c909e0690571677d49f41bd8465ae876fe043d52ba5292" |
208 | 208 | ||
209 | [[package]] | 209 | [[package]] |
210 | name = "cfg-if" | 210 | name = "cfg-if" |
@@ -227,7 +227,7 @@ dependencies = [ | |||
227 | "android-tzdata", | 227 | "android-tzdata", |
228 | "iana-time-zone", | 228 | "iana-time-zone", |
229 | "num-traits", | 229 | "num-traits", |
230 | "windows-targets 0.52.5", | 230 | "windows-targets 0.52.6", |
231 | ] | 231 | ] |
232 | 232 | ||
233 | [[package]] | 233 | [[package]] |
@@ -308,9 +308,9 @@ dependencies = [ | |||
308 | 308 | ||
309 | [[package]] | 309 | [[package]] |
310 | name = "core-foundation-sys" | 310 | name = "core-foundation-sys" |
311 | version = "0.8.6" | 311 | version = "0.8.7" |
312 | source = "registry+https://github.com/rust-lang/crates.io-index" | 312 | source = "registry+https://github.com/rust-lang/crates.io-index" |
313 | checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" | 313 | checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" |
314 | 314 | ||
315 | [[package]] | 315 | [[package]] |
316 | name = "cpufeatures" | 316 | name = "cpufeatures" |
@@ -398,7 +398,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" | |||
398 | dependencies = [ | 398 | dependencies = [ |
399 | "proc-macro2", | 399 | "proc-macro2", |
400 | "quote", | 400 | "quote", |
401 | "syn 2.0.68", | 401 | "syn 2.0.74", |
402 | ] | 402 | ] |
403 | 403 | ||
404 | [[package]] | 404 | [[package]] |
@@ -419,7 +419,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" | |||
419 | dependencies = [ | 419 | dependencies = [ |
420 | "proc-macro2", | 420 | "proc-macro2", |
421 | "quote", | 421 | "quote", |
422 | "syn 2.0.68", | 422 | "syn 2.0.74", |
423 | ] | 423 | ] |
424 | 424 | ||
425 | [[package]] | 425 | [[package]] |
@@ -449,9 +449,9 @@ dependencies = [ | |||
449 | 449 | ||
450 | [[package]] | 450 | [[package]] |
451 | name = "flate2" | 451 | name = "flate2" |
452 | version = "1.0.30" | 452 | version = "1.0.31" |
453 | source = "registry+https://github.com/rust-lang/crates.io-index" | 453 | source = "registry+https://github.com/rust-lang/crates.io-index" |
454 | checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae" | 454 | checksum = "7f211bbe8e69bbd0cfdea405084f128ae8b4aaa6b0b522fc8f2b009084797920" |
455 | dependencies = [ | 455 | dependencies = [ |
456 | "crc32fast", | 456 | "crc32fast", |
457 | "miniz_oxide", | 457 | "miniz_oxide", |
@@ -598,9 +598,9 @@ dependencies = [ | |||
598 | 598 | ||
599 | [[package]] | 599 | [[package]] |
600 | name = "http-body" | 600 | name = "http-body" |
601 | version = "1.0.0" | 601 | version = "1.0.1" |
602 | source = "registry+https://github.com/rust-lang/crates.io-index" | 602 | source = "registry+https://github.com/rust-lang/crates.io-index" |
603 | checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643" | 603 | checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" |
604 | dependencies = [ | 604 | dependencies = [ |
605 | "bytes", | 605 | "bytes", |
606 | "http", | 606 | "http", |
@@ -633,9 +633,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" | |||
633 | 633 | ||
634 | [[package]] | 634 | [[package]] |
635 | name = "hyper" | 635 | name = "hyper" |
636 | version = "1.4.0" | 636 | version = "1.4.1" |
637 | source = "registry+https://github.com/rust-lang/crates.io-index" | 637 | source = "registry+https://github.com/rust-lang/crates.io-index" |
638 | checksum = "c4fe55fb7a772d59a5ff1dfbff4fe0258d19b89fec4b233e75d35d5d2316badc" | 638 | checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" |
639 | dependencies = [ | 639 | dependencies = [ |
640 | "bytes", | 640 | "bytes", |
641 | "futures-channel", | 641 | "futures-channel", |
@@ -671,9 +671,9 @@ dependencies = [ | |||
671 | 671 | ||
672 | [[package]] | 672 | [[package]] |
673 | name = "hyper-util" | 673 | name = "hyper-util" |
674 | version = "0.1.6" | 674 | version = "0.1.7" |
675 | source = "registry+https://github.com/rust-lang/crates.io-index" | 675 | source = "registry+https://github.com/rust-lang/crates.io-index" |
676 | checksum = "3ab92f4f49ee4fb4f997c784b7a2e0fa70050211e0b6a287f898c3c9785ca956" | 676 | checksum = "cde7055719c54e36e95e8719f95883f22072a48ede39db7fc17a4e1d5281e9b9" |
677 | dependencies = [ | 677 | dependencies = [ |
678 | "bytes", | 678 | "bytes", |
679 | "futures-channel", | 679 | "futures-channel", |
@@ -730,9 +730,9 @@ checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" | |||
730 | 730 | ||
731 | [[package]] | 731 | [[package]] |
732 | name = "indexmap" | 732 | name = "indexmap" |
733 | version = "2.2.6" | 733 | version = "2.3.0" |
734 | source = "registry+https://github.com/rust-lang/crates.io-index" | 734 | source = "registry+https://github.com/rust-lang/crates.io-index" |
735 | checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" | 735 | checksum = "de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0" |
736 | dependencies = [ | 736 | dependencies = [ |
737 | "equivalent", | 737 | "equivalent", |
738 | "hashbrown 0.14.5", | 738 | "hashbrown 0.14.5", |
@@ -888,13 +888,14 @@ dependencies = [ | |||
888 | 888 | ||
889 | [[package]] | 889 | [[package]] |
890 | name = "mio" | 890 | name = "mio" |
891 | version = "0.8.11" | 891 | version = "1.0.2" |
892 | source = "registry+https://github.com/rust-lang/crates.io-index" | 892 | source = "registry+https://github.com/rust-lang/crates.io-index" |
893 | checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" | 893 | checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" |
894 | dependencies = [ | 894 | dependencies = [ |
895 | "hermit-abi", | ||
895 | "libc", | 896 | "libc", |
896 | "wasi", | 897 | "wasi", |
897 | "windows-sys 0.48.0", | 898 | "windows-sys 0.52.0", |
898 | ] | 899 | ] |
899 | 900 | ||
900 | [[package]] | 901 | [[package]] |
@@ -952,34 +953,24 @@ dependencies = [ | |||
952 | ] | 953 | ] |
953 | 954 | ||
954 | [[package]] | 955 | [[package]] |
955 | name = "num_cpus" | ||
956 | version = "1.16.0" | ||
957 | source = "registry+https://github.com/rust-lang/crates.io-index" | ||
958 | checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" | ||
959 | dependencies = [ | ||
960 | "hermit-abi", | ||
961 | "libc", | ||
962 | ] | ||
963 | |||
964 | [[package]] | ||
965 | name = "num_enum" | 956 | name = "num_enum" |
966 | version = "0.7.2" | 957 | version = "0.7.3" |
967 | source = "registry+https://github.com/rust-lang/crates.io-index" | 958 | source = "registry+https://github.com/rust-lang/crates.io-index" |
968 | checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845" | 959 | checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" |
969 | dependencies = [ | 960 | dependencies = [ |
970 | "num_enum_derive", | 961 | "num_enum_derive", |
971 | ] | 962 | ] |
972 | 963 | ||
973 | [[package]] | 964 | [[package]] |
974 | name = "num_enum_derive" | 965 | name = "num_enum_derive" |
975 | version = "0.7.2" | 966 | version = "0.7.3" |
976 | source = "registry+https://github.com/rust-lang/crates.io-index" | 967 | source = "registry+https://github.com/rust-lang/crates.io-index" |
977 | checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" | 968 | checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" |
978 | dependencies = [ | 969 | dependencies = [ |
979 | "proc-macro-crate", | 970 | "proc-macro-crate", |
980 | "proc-macro2", | 971 | "proc-macro2", |
981 | "quote", | 972 | "quote", |
982 | "syn 2.0.68", | 973 | "syn 2.0.74", |
983 | ] | 974 | ] |
984 | 975 | ||
985 | [[package]] | 976 | [[package]] |
@@ -1048,7 +1039,7 @@ dependencies = [ | |||
1048 | "libc", | 1039 | "libc", |
1049 | "redox_syscall", | 1040 | "redox_syscall", |
1050 | "smallvec", | 1041 | "smallvec", |
1051 | "windows-targets 0.52.5", | 1042 | "windows-targets 0.52.6", |
1052 | ] | 1043 | ] |
1053 | 1044 | ||
1054 | [[package]] | 1045 | [[package]] |
@@ -1094,7 +1085,7 @@ dependencies = [ | |||
1094 | "pest_meta", | 1085 | "pest_meta", |
1095 | "proc-macro2", | 1086 | "proc-macro2", |
1096 | "quote", | 1087 | "quote", |
1097 | "syn 2.0.68", | 1088 | "syn 2.0.74", |
1098 | ] | 1089 | ] |
1099 | 1090 | ||
1100 | [[package]] | 1091 | [[package]] |
@@ -1125,7 +1116,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" | |||
1125 | dependencies = [ | 1116 | dependencies = [ |
1126 | "proc-macro2", | 1117 | "proc-macro2", |
1127 | "quote", | 1118 | "quote", |
1128 | "syn 2.0.68", | 1119 | "syn 2.0.74", |
1129 | ] | 1120 | ] |
1130 | 1121 | ||
1131 | [[package]] | 1122 | [[package]] |
@@ -1158,7 +1149,7 @@ dependencies = [ | |||
1158 | "proc-macro2", | 1149 | "proc-macro2", |
1159 | "quote", | 1150 | "quote", |
1160 | "regex", | 1151 | "regex", |
1161 | "syn 2.0.68", | 1152 | "syn 2.0.74", |
1162 | ] | 1153 | ] |
1163 | 1154 | ||
1164 | [[package]] | 1155 | [[package]] |
@@ -1190,9 +1181,12 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" | |||
1190 | 1181 | ||
1191 | [[package]] | 1182 | [[package]] |
1192 | name = "ppv-lite86" | 1183 | name = "ppv-lite86" |
1193 | version = "0.2.17" | 1184 | version = "0.2.20" |
1194 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1185 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1195 | checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" | 1186 | checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" |
1187 | dependencies = [ | ||
1188 | "zerocopy", | ||
1189 | ] | ||
1196 | 1190 | ||
1197 | [[package]] | 1191 | [[package]] |
1198 | name = "proc-macro-crate" | 1192 | name = "proc-macro-crate" |
@@ -1238,9 +1232,9 @@ dependencies = [ | |||
1238 | 1232 | ||
1239 | [[package]] | 1233 | [[package]] |
1240 | name = "quinn" | 1234 | name = "quinn" |
1241 | version = "0.11.2" | 1235 | version = "0.11.3" |
1242 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1236 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1243 | checksum = "e4ceeeeabace7857413798eb1ffa1e9c905a9946a57d81fb69b4b71c4d8eb3ad" | 1237 | checksum = "b22d8e7369034b9a7132bc2008cac12f2013c8132b45e0554e6e20e2617f2156" |
1244 | dependencies = [ | 1238 | dependencies = [ |
1245 | "bytes", | 1239 | "bytes", |
1246 | "pin-project-lite", | 1240 | "pin-project-lite", |
@@ -1248,6 +1242,7 @@ dependencies = [ | |||
1248 | "quinn-udp", | 1242 | "quinn-udp", |
1249 | "rustc-hash", | 1243 | "rustc-hash", |
1250 | "rustls", | 1244 | "rustls", |
1245 | "socket2", | ||
1251 | "thiserror", | 1246 | "thiserror", |
1252 | "tokio", | 1247 | "tokio", |
1253 | "tracing", | 1248 | "tracing", |
@@ -1255,9 +1250,9 @@ dependencies = [ | |||
1255 | 1250 | ||
1256 | [[package]] | 1251 | [[package]] |
1257 | name = "quinn-proto" | 1252 | name = "quinn-proto" |
1258 | version = "0.11.3" | 1253 | version = "0.11.6" |
1259 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1254 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1260 | checksum = "ddf517c03a109db8100448a4be38d498df8a210a99fe0e1b9eaf39e78c640efe" | 1255 | checksum = "ba92fb39ec7ad06ca2582c0ca834dfeadcaf06ddfc8e635c80aa7e1c05315fdd" |
1261 | dependencies = [ | 1256 | dependencies = [ |
1262 | "bytes", | 1257 | "bytes", |
1263 | "rand", | 1258 | "rand", |
@@ -1272,9 +1267,9 @@ dependencies = [ | |||
1272 | 1267 | ||
1273 | [[package]] | 1268 | [[package]] |
1274 | name = "quinn-udp" | 1269 | name = "quinn-udp" |
1275 | version = "0.5.2" | 1270 | version = "0.5.4" |
1276 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1271 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1277 | checksum = "9096629c45860fc7fb143e125eb826b5e721e10be3263160c7d60ca832cf8c46" | 1272 | checksum = "8bffec3605b73c6f1754535084a85229fa8a30f86014e6c81aeec4abb68b0285" |
1278 | dependencies = [ | 1273 | dependencies = [ |
1279 | "libc", | 1274 | "libc", |
1280 | "once_cell", | 1275 | "once_cell", |
@@ -1324,18 +1319,18 @@ dependencies = [ | |||
1324 | 1319 | ||
1325 | [[package]] | 1320 | [[package]] |
1326 | name = "redox_syscall" | 1321 | name = "redox_syscall" |
1327 | version = "0.5.2" | 1322 | version = "0.5.3" |
1328 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1323 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1329 | checksum = "c82cf8cff14456045f55ec4241383baeff27af886adb72ffb2162f99911de0fd" | 1324 | checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4" |
1330 | dependencies = [ | 1325 | dependencies = [ |
1331 | "bitflags", | 1326 | "bitflags", |
1332 | ] | 1327 | ] |
1333 | 1328 | ||
1334 | [[package]] | 1329 | [[package]] |
1335 | name = "regex" | 1330 | name = "regex" |
1336 | version = "1.10.5" | 1331 | version = "1.10.6" |
1337 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1332 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1338 | checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f" | 1333 | checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619" |
1339 | dependencies = [ | 1334 | dependencies = [ |
1340 | "aho-corasick", | 1335 | "aho-corasick", |
1341 | "memchr", | 1336 | "memchr", |
@@ -1447,9 +1442,9 @@ dependencies = [ | |||
1447 | 1442 | ||
1448 | [[package]] | 1443 | [[package]] |
1449 | name = "rust-embed" | 1444 | name = "rust-embed" |
1450 | version = "8.4.0" | 1445 | version = "8.5.0" |
1451 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1446 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1452 | checksum = "19549741604902eb99a7ed0ee177a0663ee1eda51a29f71401f166e47e77806a" | 1447 | checksum = "fa66af4a4fdd5e7ebc276f115e895611a34739a9c1c01028383d612d550953c0" |
1453 | dependencies = [ | 1448 | dependencies = [ |
1454 | "rust-embed-impl", | 1449 | "rust-embed-impl", |
1455 | "rust-embed-utils", | 1450 | "rust-embed-utils", |
@@ -1458,22 +1453,22 @@ dependencies = [ | |||
1458 | 1453 | ||
1459 | [[package]] | 1454 | [[package]] |
1460 | name = "rust-embed-impl" | 1455 | name = "rust-embed-impl" |
1461 | version = "8.4.0" | 1456 | version = "8.5.0" |
1462 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1457 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1463 | checksum = "cb9f96e283ec64401f30d3df8ee2aaeb2561f34c824381efa24a35f79bf40ee4" | 1458 | checksum = "6125dbc8867951125eec87294137f4e9c2c96566e61bf72c45095a7c77761478" |
1464 | dependencies = [ | 1459 | dependencies = [ |
1465 | "proc-macro2", | 1460 | "proc-macro2", |
1466 | "quote", | 1461 | "quote", |
1467 | "rust-embed-utils", | 1462 | "rust-embed-utils", |
1468 | "syn 2.0.68", | 1463 | "syn 2.0.74", |
1469 | "walkdir", | 1464 | "walkdir", |
1470 | ] | 1465 | ] |
1471 | 1466 | ||
1472 | [[package]] | 1467 | [[package]] |
1473 | name = "rust-embed-utils" | 1468 | name = "rust-embed-utils" |
1474 | version = "8.4.0" | 1469 | version = "8.5.0" |
1475 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1470 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1476 | checksum = "38c74a686185620830701348de757fd36bef4aa9680fd23c49fc539ddcc1af32" | 1471 | checksum = "2e5347777e9aacb56039b0e1f28785929a8a3b709e87482e7442c72e7c12529d" |
1477 | dependencies = [ | 1472 | dependencies = [ |
1478 | "sha2", | 1473 | "sha2", |
1479 | "walkdir", | 1474 | "walkdir", |
@@ -1497,15 +1492,15 @@ checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" | |||
1497 | 1492 | ||
1498 | [[package]] | 1493 | [[package]] |
1499 | name = "rustc-hash" | 1494 | name = "rustc-hash" |
1500 | version = "1.1.0" | 1495 | version = "2.0.0" |
1501 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1496 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1502 | checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" | 1497 | checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" |
1503 | 1498 | ||
1504 | [[package]] | 1499 | [[package]] |
1505 | name = "rustls" | 1500 | name = "rustls" |
1506 | version = "0.23.10" | 1501 | version = "0.23.12" |
1507 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1502 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1508 | checksum = "05cff451f60db80f490f3c182b77c35260baace73209e9cdbbe526bfe3a4d402" | 1503 | checksum = "c58f8c84392efc0a126acce10fa59ff7b3d2ac06ab451a33f2741989b806b044" |
1509 | dependencies = [ | 1504 | dependencies = [ |
1510 | "once_cell", | 1505 | "once_cell", |
1511 | "ring", | 1506 | "ring", |
@@ -1517,9 +1512,9 @@ dependencies = [ | |||
1517 | 1512 | ||
1518 | [[package]] | 1513 | [[package]] |
1519 | name = "rustls-pemfile" | 1514 | name = "rustls-pemfile" |
1520 | version = "2.1.2" | 1515 | version = "2.1.3" |
1521 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1516 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1522 | checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d" | 1517 | checksum = "196fe16b00e106300d3e45ecfcb764fa292a535d7326a29a5875c579c7417425" |
1523 | dependencies = [ | 1518 | dependencies = [ |
1524 | "base64 0.22.1", | 1519 | "base64 0.22.1", |
1525 | "rustls-pki-types", | 1520 | "rustls-pki-types", |
@@ -1527,15 +1522,15 @@ dependencies = [ | |||
1527 | 1522 | ||
1528 | [[package]] | 1523 | [[package]] |
1529 | name = "rustls-pki-types" | 1524 | name = "rustls-pki-types" |
1530 | version = "1.7.0" | 1525 | version = "1.8.0" |
1531 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1526 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1532 | checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" | 1527 | checksum = "fc0a2ce646f8655401bb81e7927b812614bd5d91dbc968696be50603510fcaf0" |
1533 | 1528 | ||
1534 | [[package]] | 1529 | [[package]] |
1535 | name = "rustls-webpki" | 1530 | name = "rustls-webpki" |
1536 | version = "0.102.4" | 1531 | version = "0.102.6" |
1537 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1532 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1538 | checksum = "ff448f7e92e913c4b7d4c6d8e4540a1724b319b4152b8aef6d4cf8339712b33e" | 1533 | checksum = "8e6b52d4fda176fd835fdc55a835d4a89b8499cad995885a21149d5ad62f852e" |
1539 | dependencies = [ | 1534 | dependencies = [ |
1540 | "ring", | 1535 | "ring", |
1541 | "rustls-pki-types", | 1536 | "rustls-pki-types", |
@@ -1571,31 +1566,32 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" | |||
1571 | 1566 | ||
1572 | [[package]] | 1567 | [[package]] |
1573 | name = "serde" | 1568 | name = "serde" |
1574 | version = "1.0.203" | 1569 | version = "1.0.206" |
1575 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1570 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1576 | checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" | 1571 | checksum = "5b3e4cd94123dd520a128bcd11e34d9e9e423e7e3e50425cb1b4b1e3549d0284" |
1577 | dependencies = [ | 1572 | dependencies = [ |
1578 | "serde_derive", | 1573 | "serde_derive", |
1579 | ] | 1574 | ] |
1580 | 1575 | ||
1581 | [[package]] | 1576 | [[package]] |
1582 | name = "serde_derive" | 1577 | name = "serde_derive" |
1583 | version = "1.0.203" | 1578 | version = "1.0.206" |
1584 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1579 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1585 | checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" | 1580 | checksum = "fabfb6138d2383ea8208cf98ccf69cdfb1aff4088460681d84189aa259762f97" |
1586 | dependencies = [ | 1581 | dependencies = [ |
1587 | "proc-macro2", | 1582 | "proc-macro2", |
1588 | "quote", | 1583 | "quote", |
1589 | "syn 2.0.68", | 1584 | "syn 2.0.74", |
1590 | ] | 1585 | ] |
1591 | 1586 | ||
1592 | [[package]] | 1587 | [[package]] |
1593 | name = "serde_json" | 1588 | name = "serde_json" |
1594 | version = "1.0.120" | 1589 | version = "1.0.124" |
1595 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1590 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1596 | checksum = "4e0d21c9a8cae1235ad58a00c11cb40d4b1e5c784f1ef2c537876ed6ffd8b7c5" | 1591 | checksum = "66ad62847a56b3dba58cc891acd13884b9c61138d330c0d7b6181713d4fce38d" |
1597 | dependencies = [ | 1592 | dependencies = [ |
1598 | "itoa", | 1593 | "itoa", |
1594 | "memchr", | ||
1599 | "ryu", | 1595 | "ryu", |
1600 | "serde", | 1596 | "serde", |
1601 | ] | 1597 | ] |
@@ -1612,9 +1608,9 @@ dependencies = [ | |||
1612 | 1608 | ||
1613 | [[package]] | 1609 | [[package]] |
1614 | name = "serde_spanned" | 1610 | name = "serde_spanned" |
1615 | version = "0.6.6" | 1611 | version = "0.6.7" |
1616 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1612 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1617 | checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0" | 1613 | checksum = "eb5b1b31579f3811bf615c144393417496f152e12ac8b7663bf664f4a815306d" |
1618 | dependencies = [ | 1614 | dependencies = [ |
1619 | "serde", | 1615 | "serde", |
1620 | ] | 1616 | ] |
@@ -1727,9 +1723,9 @@ dependencies = [ | |||
1727 | 1723 | ||
1728 | [[package]] | 1724 | [[package]] |
1729 | name = "syn" | 1725 | name = "syn" |
1730 | version = "2.0.68" | 1726 | version = "2.0.74" |
1731 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1727 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1732 | checksum = "901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9" | 1728 | checksum = "1fceb41e3d546d0bd83421d3409b1460cc7444cd389341a4c880fe7a042cb3d7" |
1733 | dependencies = [ | 1729 | dependencies = [ |
1734 | "proc-macro2", | 1730 | "proc-macro2", |
1735 | "quote", | 1731 | "quote", |
@@ -1750,22 +1746,22 @@ checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" | |||
1750 | 1746 | ||
1751 | [[package]] | 1747 | [[package]] |
1752 | name = "thiserror" | 1748 | name = "thiserror" |
1753 | version = "1.0.61" | 1749 | version = "1.0.63" |
1754 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1750 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1755 | checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" | 1751 | checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" |
1756 | dependencies = [ | 1752 | dependencies = [ |
1757 | "thiserror-impl", | 1753 | "thiserror-impl", |
1758 | ] | 1754 | ] |
1759 | 1755 | ||
1760 | [[package]] | 1756 | [[package]] |
1761 | name = "thiserror-impl" | 1757 | name = "thiserror-impl" |
1762 | version = "1.0.61" | 1758 | version = "1.0.63" |
1763 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1759 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1764 | checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" | 1760 | checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" |
1765 | dependencies = [ | 1761 | dependencies = [ |
1766 | "proc-macro2", | 1762 | "proc-macro2", |
1767 | "quote", | 1763 | "quote", |
1768 | "syn 2.0.68", | 1764 | "syn 2.0.74", |
1769 | ] | 1765 | ] |
1770 | 1766 | ||
1771 | [[package]] | 1767 | [[package]] |
@@ -1822,9 +1818,9 @@ dependencies = [ | |||
1822 | 1818 | ||
1823 | [[package]] | 1819 | [[package]] |
1824 | name = "tinyvec" | 1820 | name = "tinyvec" |
1825 | version = "1.6.1" | 1821 | version = "1.8.0" |
1826 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1822 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1827 | checksum = "c55115c6fbe2d2bef26eb09ad74bde02d8255476fc0c7b515ef09fbb35742d82" | 1823 | checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" |
1828 | dependencies = [ | 1824 | dependencies = [ |
1829 | "tinyvec_macros", | 1825 | "tinyvec_macros", |
1830 | ] | 1826 | ] |
@@ -1837,30 +1833,29 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" | |||
1837 | 1833 | ||
1838 | [[package]] | 1834 | [[package]] |
1839 | name = "tokio" | 1835 | name = "tokio" |
1840 | version = "1.38.0" | 1836 | version = "1.39.2" |
1841 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1837 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1842 | checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a" | 1838 | checksum = "daa4fb1bc778bd6f04cbfc4bb2d06a7396a8f299dc33ea1900cedaa316f467b1" |
1843 | dependencies = [ | 1839 | dependencies = [ |
1844 | "backtrace", | 1840 | "backtrace", |
1845 | "bytes", | 1841 | "bytes", |
1846 | "libc", | 1842 | "libc", |
1847 | "mio", | 1843 | "mio", |
1848 | "num_cpus", | ||
1849 | "pin-project-lite", | 1844 | "pin-project-lite", |
1850 | "socket2", | 1845 | "socket2", |
1851 | "tokio-macros", | 1846 | "tokio-macros", |
1852 | "windows-sys 0.48.0", | 1847 | "windows-sys 0.52.0", |
1853 | ] | 1848 | ] |
1854 | 1849 | ||
1855 | [[package]] | 1850 | [[package]] |
1856 | name = "tokio-macros" | 1851 | name = "tokio-macros" |
1857 | version = "2.3.0" | 1852 | version = "2.4.0" |
1858 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1853 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1859 | checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" | 1854 | checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" |
1860 | dependencies = [ | 1855 | dependencies = [ |
1861 | "proc-macro2", | 1856 | "proc-macro2", |
1862 | "quote", | 1857 | "quote", |
1863 | "syn 2.0.68", | 1858 | "syn 2.0.74", |
1864 | ] | 1859 | ] |
1865 | 1860 | ||
1866 | [[package]] | 1861 | [[package]] |
@@ -1888,21 +1883,21 @@ dependencies = [ | |||
1888 | 1883 | ||
1889 | [[package]] | 1884 | [[package]] |
1890 | name = "toml" | 1885 | name = "toml" |
1891 | version = "0.8.14" | 1886 | version = "0.8.19" |
1892 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1887 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1893 | checksum = "6f49eb2ab21d2f26bd6db7bf383edc527a7ebaee412d17af4d40fdccd442f335" | 1888 | checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" |
1894 | dependencies = [ | 1889 | dependencies = [ |
1895 | "serde", | 1890 | "serde", |
1896 | "serde_spanned", | 1891 | "serde_spanned", |
1897 | "toml_datetime", | 1892 | "toml_datetime", |
1898 | "toml_edit 0.22.14", | 1893 | "toml_edit 0.22.20", |
1899 | ] | 1894 | ] |
1900 | 1895 | ||
1901 | [[package]] | 1896 | [[package]] |
1902 | name = "toml_datetime" | 1897 | name = "toml_datetime" |
1903 | version = "0.6.6" | 1898 | version = "0.6.8" |
1904 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1899 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1905 | checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" | 1900 | checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" |
1906 | dependencies = [ | 1901 | dependencies = [ |
1907 | "serde", | 1902 | "serde", |
1908 | ] | 1903 | ] |
@@ -1920,15 +1915,15 @@ dependencies = [ | |||
1920 | 1915 | ||
1921 | [[package]] | 1916 | [[package]] |
1922 | name = "toml_edit" | 1917 | name = "toml_edit" |
1923 | version = "0.22.14" | 1918 | version = "0.22.20" |
1924 | source = "registry+https://github.com/rust-lang/crates.io-index" | 1919 | source = "registry+https://github.com/rust-lang/crates.io-index" |
1925 | checksum = "f21c7aaf97f1bd9ca9d4f9e73b0a6c74bd5afef56f2bc931943a6e1c37e04e38" | 1920 | checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" |
1926 | dependencies = [ | 1921 | dependencies = [ |
1927 | "indexmap", | 1922 | "indexmap", |
1928 | "serde", | 1923 | "serde", |
1929 | "serde_spanned", | 1924 | "serde_spanned", |
1930 | "toml_datetime", | 1925 | "toml_datetime", |
1931 | "winnow 0.6.13", | 1926 | "winnow 0.6.18", |
1932 | ] | 1927 | ] |
1933 | 1928 | ||
1934 | [[package]] | 1929 | [[package]] |
@@ -1991,7 +1986,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" | |||
1991 | dependencies = [ | 1986 | dependencies = [ |
1992 | "proc-macro2", | 1987 | "proc-macro2", |
1993 | "quote", | 1988 | "quote", |
1994 | "syn 2.0.68", | 1989 | "syn 2.0.74", |
1995 | ] | 1990 | ] |
1996 | 1991 | ||
1997 | [[package]] | 1992 | [[package]] |
@@ -2163,7 +2158,7 @@ dependencies = [ | |||
2163 | "proc-macro2", | 2158 | "proc-macro2", |
2164 | "quote", | 2159 | "quote", |
2165 | "regex", | 2160 | "regex", |
2166 | "syn 2.0.68", | 2161 | "syn 2.0.74", |
2167 | ] | 2162 | ] |
2168 | 2163 | ||
2169 | [[package]] | 2164 | [[package]] |
@@ -2186,9 +2181,9 @@ dependencies = [ | |||
2186 | 2181 | ||
2187 | [[package]] | 2182 | [[package]] |
2188 | name = "uuid" | 2183 | name = "uuid" |
2189 | version = "1.9.1" | 2184 | version = "1.10.0" |
2190 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2185 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2191 | checksum = "5de17fd2f7da591098415cff336e12965a28061ddace43b59cb3c430179c9439" | 2186 | checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" |
2192 | dependencies = [ | 2187 | dependencies = [ |
2193 | "getrandom", | 2188 | "getrandom", |
2194 | "rand", | 2189 | "rand", |
@@ -2202,9 +2197,9 @@ checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" | |||
2202 | 2197 | ||
2203 | [[package]] | 2198 | [[package]] |
2204 | name = "version_check" | 2199 | name = "version_check" |
2205 | version = "0.9.4" | 2200 | version = "0.9.5" |
2206 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2201 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2207 | checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" | 2202 | checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" |
2208 | 2203 | ||
2209 | [[package]] | 2204 | [[package]] |
2210 | name = "walkdir" | 2205 | name = "walkdir" |
@@ -2252,7 +2247,7 @@ dependencies = [ | |||
2252 | "once_cell", | 2247 | "once_cell", |
2253 | "proc-macro2", | 2248 | "proc-macro2", |
2254 | "quote", | 2249 | "quote", |
2255 | "syn 2.0.68", | 2250 | "syn 2.0.74", |
2256 | "wasm-bindgen-shared", | 2251 | "wasm-bindgen-shared", |
2257 | ] | 2252 | ] |
2258 | 2253 | ||
@@ -2286,7 +2281,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" | |||
2286 | dependencies = [ | 2281 | dependencies = [ |
2287 | "proc-macro2", | 2282 | "proc-macro2", |
2288 | "quote", | 2283 | "quote", |
2289 | "syn 2.0.68", | 2284 | "syn 2.0.74", |
2290 | "wasm-bindgen-backend", | 2285 | "wasm-bindgen-backend", |
2291 | "wasm-bindgen-shared", | 2286 | "wasm-bindgen-shared", |
2292 | ] | 2287 | ] |
@@ -2309,7 +2304,7 @@ dependencies = [ | |||
2309 | 2304 | ||
2310 | [[package]] | 2305 | [[package]] |
2311 | name = "webol" | 2306 | name = "webol" |
2312 | version = "0.4.3" | 2307 | version = "0.5.0" |
2313 | dependencies = [ | 2308 | dependencies = [ |
2314 | "axum", | 2309 | "axum", |
2315 | "axum-macros", | 2310 | "axum-macros", |
@@ -2359,11 +2354,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" | |||
2359 | 2354 | ||
2360 | [[package]] | 2355 | [[package]] |
2361 | name = "winapi-util" | 2356 | name = "winapi-util" |
2362 | version = "0.1.8" | 2357 | version = "0.1.9" |
2363 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2358 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2364 | checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" | 2359 | checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" |
2365 | dependencies = [ | 2360 | dependencies = [ |
2366 | "windows-sys 0.52.0", | 2361 | "windows-sys 0.59.0", |
2367 | ] | 2362 | ] |
2368 | 2363 | ||
2369 | [[package]] | 2364 | [[package]] |
@@ -2378,7 +2373,7 @@ version = "0.52.0" | |||
2378 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2373 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2379 | checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" | 2374 | checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" |
2380 | dependencies = [ | 2375 | dependencies = [ |
2381 | "windows-targets 0.52.5", | 2376 | "windows-targets 0.52.6", |
2382 | ] | 2377 | ] |
2383 | 2378 | ||
2384 | [[package]] | 2379 | [[package]] |
@@ -2396,7 +2391,16 @@ version = "0.52.0" | |||
2396 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2391 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2397 | checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" | 2392 | checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" |
2398 | dependencies = [ | 2393 | dependencies = [ |
2399 | "windows-targets 0.52.5", | 2394 | "windows-targets 0.52.6", |
2395 | ] | ||
2396 | |||
2397 | [[package]] | ||
2398 | name = "windows-sys" | ||
2399 | version = "0.59.0" | ||
2400 | source = "registry+https://github.com/rust-lang/crates.io-index" | ||
2401 | checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" | ||
2402 | dependencies = [ | ||
2403 | "windows-targets 0.52.6", | ||
2400 | ] | 2404 | ] |
2401 | 2405 | ||
2402 | [[package]] | 2406 | [[package]] |
@@ -2416,18 +2420,18 @@ dependencies = [ | |||
2416 | 2420 | ||
2417 | [[package]] | 2421 | [[package]] |
2418 | name = "windows-targets" | 2422 | name = "windows-targets" |
2419 | version = "0.52.5" | 2423 | version = "0.52.6" |
2420 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2424 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2421 | checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" | 2425 | checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" |
2422 | dependencies = [ | 2426 | dependencies = [ |
2423 | "windows_aarch64_gnullvm 0.52.5", | 2427 | "windows_aarch64_gnullvm 0.52.6", |
2424 | "windows_aarch64_msvc 0.52.5", | 2428 | "windows_aarch64_msvc 0.52.6", |
2425 | "windows_i686_gnu 0.52.5", | 2429 | "windows_i686_gnu 0.52.6", |
2426 | "windows_i686_gnullvm", | 2430 | "windows_i686_gnullvm", |
2427 | "windows_i686_msvc 0.52.5", | 2431 | "windows_i686_msvc 0.52.6", |
2428 | "windows_x86_64_gnu 0.52.5", | 2432 | "windows_x86_64_gnu 0.52.6", |
2429 | "windows_x86_64_gnullvm 0.52.5", | 2433 | "windows_x86_64_gnullvm 0.52.6", |
2430 | "windows_x86_64_msvc 0.52.5", | 2434 | "windows_x86_64_msvc 0.52.6", |
2431 | ] | 2435 | ] |
2432 | 2436 | ||
2433 | [[package]] | 2437 | [[package]] |
@@ -2438,9 +2442,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" | |||
2438 | 2442 | ||
2439 | [[package]] | 2443 | [[package]] |
2440 | name = "windows_aarch64_gnullvm" | 2444 | name = "windows_aarch64_gnullvm" |
2441 | version = "0.52.5" | 2445 | version = "0.52.6" |
2442 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2446 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2443 | checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" | 2447 | checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" |
2444 | 2448 | ||
2445 | [[package]] | 2449 | [[package]] |
2446 | name = "windows_aarch64_msvc" | 2450 | name = "windows_aarch64_msvc" |
@@ -2450,9 +2454,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" | |||
2450 | 2454 | ||
2451 | [[package]] | 2455 | [[package]] |
2452 | name = "windows_aarch64_msvc" | 2456 | name = "windows_aarch64_msvc" |
2453 | version = "0.52.5" | 2457 | version = "0.52.6" |
2454 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2458 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2455 | checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" | 2459 | checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" |
2456 | 2460 | ||
2457 | [[package]] | 2461 | [[package]] |
2458 | name = "windows_i686_gnu" | 2462 | name = "windows_i686_gnu" |
@@ -2462,15 +2466,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" | |||
2462 | 2466 | ||
2463 | [[package]] | 2467 | [[package]] |
2464 | name = "windows_i686_gnu" | 2468 | name = "windows_i686_gnu" |
2465 | version = "0.52.5" | 2469 | version = "0.52.6" |
2466 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2470 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2467 | checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" | 2471 | checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" |
2468 | 2472 | ||
2469 | [[package]] | 2473 | [[package]] |
2470 | name = "windows_i686_gnullvm" | 2474 | name = "windows_i686_gnullvm" |
2471 | version = "0.52.5" | 2475 | version = "0.52.6" |
2472 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2476 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2473 | checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" | 2477 | checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" |
2474 | 2478 | ||
2475 | [[package]] | 2479 | [[package]] |
2476 | name = "windows_i686_msvc" | 2480 | name = "windows_i686_msvc" |
@@ -2480,9 +2484,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" | |||
2480 | 2484 | ||
2481 | [[package]] | 2485 | [[package]] |
2482 | name = "windows_i686_msvc" | 2486 | name = "windows_i686_msvc" |
2483 | version = "0.52.5" | 2487 | version = "0.52.6" |
2484 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2488 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2485 | checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" | 2489 | checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" |
2486 | 2490 | ||
2487 | [[package]] | 2491 | [[package]] |
2488 | name = "windows_x86_64_gnu" | 2492 | name = "windows_x86_64_gnu" |
@@ -2492,9 +2496,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" | |||
2492 | 2496 | ||
2493 | [[package]] | 2497 | [[package]] |
2494 | name = "windows_x86_64_gnu" | 2498 | name = "windows_x86_64_gnu" |
2495 | version = "0.52.5" | 2499 | version = "0.52.6" |
2496 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2500 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2497 | checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" | 2501 | checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" |
2498 | 2502 | ||
2499 | [[package]] | 2503 | [[package]] |
2500 | name = "windows_x86_64_gnullvm" | 2504 | name = "windows_x86_64_gnullvm" |
@@ -2504,9 +2508,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" | |||
2504 | 2508 | ||
2505 | [[package]] | 2509 | [[package]] |
2506 | name = "windows_x86_64_gnullvm" | 2510 | name = "windows_x86_64_gnullvm" |
2507 | version = "0.52.5" | 2511 | version = "0.52.6" |
2508 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2512 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2509 | checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" | 2513 | checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" |
2510 | 2514 | ||
2511 | [[package]] | 2515 | [[package]] |
2512 | name = "windows_x86_64_msvc" | 2516 | name = "windows_x86_64_msvc" |
@@ -2516,9 +2520,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" | |||
2516 | 2520 | ||
2517 | [[package]] | 2521 | [[package]] |
2518 | name = "windows_x86_64_msvc" | 2522 | name = "windows_x86_64_msvc" |
2519 | version = "0.52.5" | 2523 | version = "0.52.6" |
2520 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2524 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2521 | checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" | 2525 | checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" |
2522 | 2526 | ||
2523 | [[package]] | 2527 | [[package]] |
2524 | name = "winnow" | 2528 | name = "winnow" |
@@ -2531,9 +2535,9 @@ dependencies = [ | |||
2531 | 2535 | ||
2532 | [[package]] | 2536 | [[package]] |
2533 | name = "winnow" | 2537 | name = "winnow" |
2534 | version = "0.6.13" | 2538 | version = "0.6.18" |
2535 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2539 | source = "registry+https://github.com/rust-lang/crates.io-index" |
2536 | checksum = "59b5e5f6c299a3c7890b876a2a587f3115162487e704907d9b6cd29473052ba1" | 2540 | checksum = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f" |
2537 | dependencies = [ | 2541 | dependencies = [ |
2538 | "memchr", | 2542 | "memchr", |
2539 | ] | 2543 | ] |
@@ -2558,6 +2562,27 @@ dependencies = [ | |||
2558 | ] | 2562 | ] |
2559 | 2563 | ||
2560 | [[package]] | 2564 | [[package]] |
2565 | name = "zerocopy" | ||
2566 | version = "0.7.35" | ||
2567 | source = "registry+https://github.com/rust-lang/crates.io-index" | ||
2568 | checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" | ||
2569 | dependencies = [ | ||
2570 | "byteorder", | ||
2571 | "zerocopy-derive", | ||
2572 | ] | ||
2573 | |||
2574 | [[package]] | ||
2575 | name = "zerocopy-derive" | ||
2576 | version = "0.7.35" | ||
2577 | source = "registry+https://github.com/rust-lang/crates.io-index" | ||
2578 | checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" | ||
2579 | dependencies = [ | ||
2580 | "proc-macro2", | ||
2581 | "quote", | ||
2582 | "syn 2.0.74", | ||
2583 | ] | ||
2584 | |||
2585 | [[package]] | ||
2561 | name = "zeroize" | 2586 | name = "zeroize" |
2562 | version = "1.8.1" | 2587 | version = "1.8.1" |
2563 | source = "registry+https://github.com/rust-lang/crates.io-index" | 2588 | source = "registry+https://github.com/rust-lang/crates.io-index" |
@@ -1,13 +1,13 @@ | |||
1 | [package] | 1 | [package] |
2 | name = "webol" | 2 | name = "webol" |
3 | version = "0.4.3" | 3 | version = "0.5.0" |
4 | edition = "2021" | 4 | edition = "2021" |
5 | 5 | ||
6 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html | 6 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html |
7 | 7 | ||
8 | [dependencies] | 8 | [dependencies] |
9 | axum = { version = "0.7", features = ["ws"] } | 9 | axum = { version = "0.7", features = ["ws"] } |
10 | tokio = { version = "1.38", features = ["macros", "rt-multi-thread"] } | 10 | tokio = { version = "1.39", features = ["macros", "rt-multi-thread"] } |
11 | tracing = "0.1" | 11 | tracing = "0.1" |
12 | tracing-subscriber = { version = "0.3", features = ["env-filter", "local-time", "chrono"] } | 12 | tracing-subscriber = { version = "0.3", features = ["env-filter", "local-time", "chrono"] } |
13 | time = { version = "0.3", features = ["macros"] } | 13 | time = { version = "0.3", features = ["macros"] } |
@@ -16,7 +16,7 @@ serde_json = "1.0" | |||
16 | config = "0.14" | 16 | config = "0.14" |
17 | surge-ping = "0.8" | 17 | surge-ping = "0.8" |
18 | axum-macros = "0.4" | 18 | axum-macros = "0.4" |
19 | uuid = { version = "1.8", features = ["v4", "fast-rng"] } | 19 | uuid = { version = "1.10", features = ["v4", "fast-rng"] } |
20 | dashmap = "6.0" | 20 | dashmap = "6.0" |
21 | color-eyre = "0.6" | 21 | color-eyre = "0.6" |
22 | thiserror = "1.0" | 22 | thiserror = "1.0" |
@@ -5,7 +5,7 @@ RUN cd /tmp && \ | |||
5 | mkdir /dpkg && \ | 5 | mkdir /dpkg && \ |
6 | for deb in *.deb; do dpkg --extract $deb /dpkg || exit 10; done | 6 | for deb in *.deb; do dpkg --extract $deb /dpkg || exit 10; done |
7 | 7 | ||
8 | FROM rust:1.77 as builder | 8 | FROM rust:1.80 as builder |
9 | WORKDIR /app | 9 | WORKDIR /app |
10 | COPY . . | 10 | COPY . . |
11 | RUN cargo install --path . | 11 | RUN cargo install --path . |
diff --git a/src/main.rs b/src/main.rs index 352023b..7878669 100644 --- a/src/main.rs +++ b/src/main.rs | |||
@@ -1,6 +1,6 @@ | |||
1 | use crate::{ | 1 | use crate::{ |
2 | config::Config, | 2 | config::Config, |
3 | routes::{device, start, status}, | 3 | routes::{device, devices, start, status}, |
4 | services::ping::{BroadcastCommand, StatusMap}, | 4 | services::ping::{BroadcastCommand, StatusMap}, |
5 | storage::Device, | 5 | storage::Device, |
6 | }; | 6 | }; |
@@ -36,6 +36,7 @@ mod wol; | |||
36 | device::get, | 36 | device::get, |
37 | device::post, | 37 | device::post, |
38 | device::put, | 38 | device::put, |
39 | devices::get, | ||
39 | ), | 40 | ), |
40 | components( | 41 | components( |
41 | schemas( | 42 | schemas( |
@@ -113,6 +114,7 @@ async fn main() -> color_eyre::eyre::Result<()> { | |||
113 | .route("/start/:id", post(start::post).get(start::get)) | 114 | .route("/start/:id", post(start::post).get(start::get)) |
114 | .route("/device", post(device::post).put(device::put)) | 115 | .route("/device", post(device::post).put(device::put)) |
115 | .route("/device/:id", get(device::get)) | 116 | .route("/device/:id", get(device::get)) |
117 | .route("/devices", get(devices::get)) | ||
116 | .route("/status", get(status::status)) | 118 | .route("/status", get(status::status)) |
117 | .route_layer(from_fn_with_state(shared_state.clone(), auth::auth)) | 119 | .route_layer(from_fn_with_state(shared_state.clone(), auth::auth)) |
118 | .merge(SwaggerUi::new("/swagger-ui").url("/api-docs/openapi.json", ApiDoc::openapi())) | 120 | .merge(SwaggerUi::new("/swagger-ui").url("/api-docs/openapi.json", ApiDoc::openapi())) |
diff --git a/src/routes.rs b/src/routes.rs index a72f27b..b6ad590 100644 --- a/src/routes.rs +++ b/src/routes.rs | |||
@@ -1,3 +1,4 @@ | |||
1 | pub mod start; | 1 | pub mod start; |
2 | pub mod device; | 2 | pub mod device; |
3 | pub mod devices; | ||
3 | pub mod status; | 4 | pub mod status; |
diff --git a/src/routes/devices.rs b/src/routes/devices.rs new file mode 100644 index 0000000..616441c --- /dev/null +++ b/src/routes/devices.rs | |||
@@ -0,0 +1,24 @@ | |||
1 | use crate::error::Error; | ||
2 | use crate::storage::Device; | ||
3 | use axum::Json; | ||
4 | use serde_json::{json, Value}; | ||
5 | use tracing::{debug, info}; | ||
6 | |||
7 | #[utoipa::path( | ||
8 | get, | ||
9 | path = "/devices", | ||
10 | responses( | ||
11 | (status = 200, description = "Get an array of all `Device`s", body = [Vec<Device>]) | ||
12 | ), | ||
13 | security((), ("api_key" = [])) | ||
14 | )] | ||
15 | pub async fn get( | ||
16 | ) -> Result<Json<Value>, Error> { | ||
17 | info!("get all devices"); | ||
18 | |||
19 | let devices = Device::read_all()?; | ||
20 | |||
21 | debug!("got devices"); | ||
22 | |||
23 | Ok(Json(json!(devices))) | ||
24 | } | ||
diff --git a/src/storage.rs b/src/storage.rs index 90ff1b4..e069875 100644 --- a/src/storage.rs +++ b/src/storage.rs | |||
@@ -1,5 +1,6 @@ | |||
1 | use std::{ | 1 | use std::{ |
2 | fs::{create_dir_all, File}, | 2 | ffi::OsStr, |
3 | fs::{create_dir_all, File, read_dir}, | ||
3 | io::{Read, Write}, | 4 | io::{Read, Write}, |
4 | path::Path, | 5 | path::Path, |
5 | }; | 6 | }; |
@@ -26,14 +27,14 @@ impl Device { | |||
26 | const STORAGE_PATH: &'static str = "devices"; | 27 | const STORAGE_PATH: &'static str = "devices"; |
27 | 28 | ||
28 | pub fn setup() -> Result<String, Error> { | 29 | pub fn setup() -> Result<String, Error> { |
29 | trace!("check for storage at {}", Self::STORAGE_PATH); | 30 | trace!("check for storage STORAGE_PATH=\"{}\"", Self::STORAGE_PATH); |
30 | let sp = Path::new(Self::STORAGE_PATH); | 31 | let sp = Path::new(Self::STORAGE_PATH); |
31 | if !sp.exists() { | 32 | if !sp.exists() { |
32 | warn!("device storage path doesn't exist, creating it"); | 33 | warn!("device storage path doesn't exist, creating it"); |
33 | create_dir_all(Self::STORAGE_PATH)?; | 34 | create_dir_all(Self::STORAGE_PATH)?; |
34 | }; | 35 | }; |
35 | 36 | ||
36 | debug!("device storage at '{}'", Self::STORAGE_PATH); | 37 | debug!("device storage STORAGE_PATH=\"{}\"", Self::STORAGE_PATH); |
37 | 38 | ||
38 | Ok(Self::STORAGE_PATH.to_string()) | 39 | Ok(Self::STORAGE_PATH.to_string()) |
39 | } | 40 | } |
@@ -49,6 +50,24 @@ impl Device { | |||
49 | Ok(dev) | 50 | Ok(dev) |
50 | } | 51 | } |
51 | 52 | ||
53 | pub fn read_all() -> Result<Vec<Self>, Error> { | ||
54 | trace!("attempt to read all files"); | ||
55 | let st_path = read_dir(Self::STORAGE_PATH)?; | ||
56 | |||
57 | let mut devices = vec![]; | ||
58 | for file_path in st_path { | ||
59 | let file_path = file_path?; | ||
60 | if file_path.path().extension() != Some(OsStr::new("json")) { continue; }; | ||
61 | let mut file = File::open(file_path.path())?; | ||
62 | let mut buf = String::new(); | ||
63 | file.read_to_string(&mut buf)?; | ||
64 | trace!(?file, ?buf, "read successfully from file"); | ||
65 | devices.push(serde_json::from_str(&buf)?); | ||
66 | } | ||
67 | |||
68 | Ok(devices) | ||
69 | } | ||
70 | |||
52 | pub fn write(&self) -> Result<(), Error> { | 71 | pub fn write(&self) -> Result<(), Error> { |
53 | trace!(?self.id, ?self, "attempt to write to file"); | 72 | trace!(?self.id, ?self, "attempt to write to file"); |
54 | let mut file = File::create(format!("{}/{}.json", Self::STORAGE_PATH, self.id))?; | 73 | let mut file = File::create(format!("{}/{}.json", Self::STORAGE_PATH, self.id))?; |