Mirror of https://git.olaren.dev/Olaren/shitsky

Firehose events

Olaren 25fc0cd9 69b16c9f

Changed files
+1204 -6
src
+1138 -1
Cargo.lock
··· 99 99 ] 100 100 101 101 [[package]] 102 + name = "base64" 103 + version = "0.22.1" 104 + source = "registry+https://github.com/rust-lang/crates.io-index" 105 + checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" 106 + 107 + [[package]] 102 108 name = "bitflags" 103 109 version = "2.9.4" 104 110 source = "registry+https://github.com/rust-lang/crates.io-index" 105 111 checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" 106 112 107 113 [[package]] 114 + name = "block-buffer" 115 + version = "0.10.4" 116 + source = "registry+https://github.com/rust-lang/crates.io-index" 117 + checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" 118 + dependencies = [ 119 + "generic-array", 120 + ] 121 + 122 + [[package]] 108 123 name = "bumpalo" 109 124 version = "3.19.0" 110 125 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 117 132 checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" 118 133 119 134 [[package]] 135 + name = "cc" 136 + version = "1.2.39" 137 + source = "registry+https://github.com/rust-lang/crates.io-index" 138 + checksum = "e1354349954c6fc9cb0deab020f27f783cf0b604e8bb754dc4658ecf0d29c35f" 139 + dependencies = [ 140 + "find-msvc-tools", 141 + "shlex", 142 + ] 143 + 144 + [[package]] 120 145 name = "cfg-if" 121 146 version = "1.0.3" 122 147 source = "registry+https://github.com/rust-lang/crates.io-index" 123 148 checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" 124 149 125 150 [[package]] 151 + name = "core-foundation" 152 + version = "0.9.4" 153 + source = "registry+https://github.com/rust-lang/crates.io-index" 154 + checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" 155 + dependencies = [ 156 + "core-foundation-sys", 157 + "libc", 158 + ] 159 + 160 + [[package]] 161 + name = "core-foundation-sys" 162 + version = "0.8.7" 163 + source = "registry+https://github.com/rust-lang/crates.io-index" 164 + checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" 165 + 166 + [[package]] 167 + name = "cpufeatures" 168 + version = "0.2.17" 169 + source = "registry+https://github.com/rust-lang/crates.io-index" 170 + checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" 171 + dependencies = [ 172 + "libc", 173 + ] 174 + 175 + [[package]] 176 + name = "crypto-common" 177 + version = "0.1.6" 178 + source = "registry+https://github.com/rust-lang/crates.io-index" 179 + checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" 180 + dependencies = [ 181 + "generic-array", 182 + "typenum", 183 + ] 184 + 185 + [[package]] 186 + name = "data-encoding" 187 + version = "2.9.0" 188 + source = "registry+https://github.com/rust-lang/crates.io-index" 189 + checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" 190 + 191 + [[package]] 192 + name = "digest" 193 + version = "0.10.7" 194 + source = "registry+https://github.com/rust-lang/crates.io-index" 195 + checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" 196 + dependencies = [ 197 + "block-buffer", 198 + "crypto-common", 199 + ] 200 + 201 + [[package]] 202 + name = "displaydoc" 203 + version = "0.2.5" 204 + source = "registry+https://github.com/rust-lang/crates.io-index" 205 + checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" 206 + dependencies = [ 207 + "proc-macro2", 208 + "quote", 209 + "syn", 210 + ] 211 + 212 + [[package]] 213 + name = "encoding_rs" 214 + version = "0.8.35" 215 + source = "registry+https://github.com/rust-lang/crates.io-index" 216 + checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" 217 + dependencies = [ 218 + "cfg-if", 219 + ] 220 + 221 + [[package]] 222 + name = "equivalent" 223 + version = "1.0.2" 224 + source = "registry+https://github.com/rust-lang/crates.io-index" 225 + checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" 226 + 227 + [[package]] 228 + name = "errno" 229 + version = "0.3.14" 230 + source = "registry+https://github.com/rust-lang/crates.io-index" 231 + checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" 232 + dependencies = [ 233 + "libc", 234 + "windows-sys 0.61.1", 235 + ] 236 + 237 + [[package]] 238 + name = "fastrand" 239 + version = "2.3.0" 240 + source = "registry+https://github.com/rust-lang/crates.io-index" 241 + checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" 242 + 243 + [[package]] 244 + name = "find-msvc-tools" 245 + version = "0.1.2" 246 + source = "registry+https://github.com/rust-lang/crates.io-index" 247 + checksum = "1ced73b1dacfc750a6db6c0a0c3a3853c8b41997e2e2c563dc90804ae6867959" 248 + 249 + [[package]] 126 250 name = "fnv" 127 251 version = "1.0.7" 128 252 source = "registry+https://github.com/rust-lang/crates.io-index" 129 253 checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 130 254 131 255 [[package]] 256 + name = "foreign-types" 257 + version = "0.3.2" 258 + source = "registry+https://github.com/rust-lang/crates.io-index" 259 + checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" 260 + dependencies = [ 261 + "foreign-types-shared", 262 + ] 263 + 264 + [[package]] 265 + name = "foreign-types-shared" 266 + version = "0.1.1" 267 + source = "registry+https://github.com/rust-lang/crates.io-index" 268 + checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" 269 + 270 + [[package]] 132 271 name = "form_urlencoded" 133 272 version = "1.2.2" 134 273 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 138 277 ] 139 278 140 279 [[package]] 280 + name = "futures" 281 + version = "0.3.31" 282 + source = "registry+https://github.com/rust-lang/crates.io-index" 283 + checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" 284 + dependencies = [ 285 + "futures-channel", 286 + "futures-core", 287 + "futures-executor", 288 + "futures-io", 289 + "futures-sink", 290 + "futures-task", 291 + "futures-util", 292 + ] 293 + 294 + [[package]] 141 295 name = "futures-channel" 142 296 version = "0.3.31" 143 297 source = "registry+https://github.com/rust-lang/crates.io-index" 144 298 checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" 145 299 dependencies = [ 146 300 "futures-core", 301 + "futures-sink", 147 302 ] 148 303 149 304 [[package]] ··· 153 308 checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" 154 309 155 310 [[package]] 311 + name = "futures-executor" 312 + version = "0.3.31" 313 + source = "registry+https://github.com/rust-lang/crates.io-index" 314 + checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" 315 + dependencies = [ 316 + "futures-core", 317 + "futures-task", 318 + "futures-util", 319 + ] 320 + 321 + [[package]] 322 + name = "futures-io" 323 + version = "0.3.31" 324 + source = "registry+https://github.com/rust-lang/crates.io-index" 325 + checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" 326 + 327 + [[package]] 328 + name = "futures-macro" 329 + version = "0.3.31" 330 + source = "registry+https://github.com/rust-lang/crates.io-index" 331 + checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" 332 + dependencies = [ 333 + "proc-macro2", 334 + "quote", 335 + "syn", 336 + ] 337 + 338 + [[package]] 339 + name = "futures-sink" 340 + version = "0.3.31" 341 + source = "registry+https://github.com/rust-lang/crates.io-index" 342 + checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" 343 + 344 + [[package]] 156 345 name = "futures-task" 157 346 version = "0.3.31" 158 347 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 164 353 source = "registry+https://github.com/rust-lang/crates.io-index" 165 354 checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" 166 355 dependencies = [ 356 + "futures-channel", 167 357 "futures-core", 358 + "futures-io", 359 + "futures-macro", 360 + "futures-sink", 168 361 "futures-task", 362 + "memchr", 169 363 "pin-project-lite", 170 364 "pin-utils", 365 + "slab", 366 + ] 367 + 368 + [[package]] 369 + name = "generic-array" 370 + version = "0.14.7" 371 + source = "registry+https://github.com/rust-lang/crates.io-index" 372 + checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" 373 + dependencies = [ 374 + "typenum", 375 + "version_check", 376 + ] 377 + 378 + [[package]] 379 + name = "getrandom" 380 + version = "0.2.16" 381 + source = "registry+https://github.com/rust-lang/crates.io-index" 382 + checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" 383 + dependencies = [ 384 + "cfg-if", 385 + "libc", 386 + "wasi 0.11.1+wasi-snapshot-preview1", 387 + ] 388 + 389 + [[package]] 390 + name = "getrandom" 391 + version = "0.3.3" 392 + source = "registry+https://github.com/rust-lang/crates.io-index" 393 + checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" 394 + dependencies = [ 395 + "cfg-if", 396 + "libc", 397 + "r-efi", 398 + "wasi 0.14.7+wasi-0.2.4", 171 399 ] 172 400 173 401 [[package]] ··· 177 405 checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" 178 406 179 407 [[package]] 408 + name = "h2" 409 + version = "0.4.12" 410 + source = "registry+https://github.com/rust-lang/crates.io-index" 411 + checksum = "f3c0b69cfcb4e1b9f1bf2f53f95f766e4661169728ec61cd3fe5a0166f2d1386" 412 + dependencies = [ 413 + "atomic-waker", 414 + "bytes", 415 + "fnv", 416 + "futures-core", 417 + "futures-sink", 418 + "http", 419 + "indexmap", 420 + "slab", 421 + "tokio", 422 + "tokio-util", 423 + "tracing", 424 + ] 425 + 426 + [[package]] 427 + name = "hashbrown" 428 + version = "0.16.0" 429 + source = "registry+https://github.com/rust-lang/crates.io-index" 430 + checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" 431 + 432 + [[package]] 180 433 name = "http" 181 434 version = "1.3.1" 182 435 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 232 485 "bytes", 233 486 "futures-channel", 234 487 "futures-core", 488 + "h2", 235 489 "http", 236 490 "http-body", 237 491 "httparse", ··· 241 495 "pin-utils", 242 496 "smallvec", 243 497 "tokio", 498 + "want", 499 + ] 500 + 501 + [[package]] 502 + name = "hyper-rustls" 503 + version = "0.27.7" 504 + source = "registry+https://github.com/rust-lang/crates.io-index" 505 + checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" 506 + dependencies = [ 507 + "http", 508 + "hyper", 509 + "hyper-util", 510 + "rustls", 511 + "rustls-pki-types", 512 + "tokio", 513 + "tokio-rustls", 514 + "tower-service", 515 + ] 516 + 517 + [[package]] 518 + name = "hyper-tls" 519 + version = "0.6.0" 520 + source = "registry+https://github.com/rust-lang/crates.io-index" 521 + checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" 522 + dependencies = [ 523 + "bytes", 524 + "http-body-util", 525 + "hyper", 526 + "hyper-util", 527 + "native-tls", 528 + "tokio", 529 + "tokio-native-tls", 530 + "tower-service", 244 531 ] 245 532 246 533 [[package]] ··· 249 536 source = "registry+https://github.com/rust-lang/crates.io-index" 250 537 checksum = "8d9b05277c7e8da2c93a568989bb6207bef0112e8d17df7a6eda4a3cf143bc5e" 251 538 dependencies = [ 539 + "base64", 252 540 "bytes", 541 + "futures-channel", 253 542 "futures-core", 543 + "futures-util", 254 544 "http", 255 545 "http-body", 256 546 "hyper", 547 + "ipnet", 548 + "libc", 549 + "percent-encoding", 257 550 "pin-project-lite", 551 + "socket2", 552 + "system-configuration", 258 553 "tokio", 259 554 "tower-service", 555 + "tracing", 556 + "windows-registry", 557 + ] 558 + 559 + [[package]] 560 + name = "icu_collections" 561 + version = "2.0.0" 562 + source = "registry+https://github.com/rust-lang/crates.io-index" 563 + checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" 564 + dependencies = [ 565 + "displaydoc", 566 + "potential_utf", 567 + "yoke", 568 + "zerofrom", 569 + "zerovec", 570 + ] 571 + 572 + [[package]] 573 + name = "icu_locale_core" 574 + version = "2.0.0" 575 + source = "registry+https://github.com/rust-lang/crates.io-index" 576 + checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" 577 + dependencies = [ 578 + "displaydoc", 579 + "litemap", 580 + "tinystr", 581 + "writeable", 582 + "zerovec", 583 + ] 584 + 585 + [[package]] 586 + name = "icu_normalizer" 587 + version = "2.0.0" 588 + source = "registry+https://github.com/rust-lang/crates.io-index" 589 + checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" 590 + dependencies = [ 591 + "displaydoc", 592 + "icu_collections", 593 + "icu_normalizer_data", 594 + "icu_properties", 595 + "icu_provider", 596 + "smallvec", 597 + "zerovec", 598 + ] 599 + 600 + [[package]] 601 + name = "icu_normalizer_data" 602 + version = "2.0.0" 603 + source = "registry+https://github.com/rust-lang/crates.io-index" 604 + checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" 605 + 606 + [[package]] 607 + name = "icu_properties" 608 + version = "2.0.1" 609 + source = "registry+https://github.com/rust-lang/crates.io-index" 610 + checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b" 611 + dependencies = [ 612 + "displaydoc", 613 + "icu_collections", 614 + "icu_locale_core", 615 + "icu_properties_data", 616 + "icu_provider", 617 + "potential_utf", 618 + "zerotrie", 619 + "zerovec", 620 + ] 621 + 622 + [[package]] 623 + name = "icu_properties_data" 624 + version = "2.0.1" 625 + source = "registry+https://github.com/rust-lang/crates.io-index" 626 + checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632" 627 + 628 + [[package]] 629 + name = "icu_provider" 630 + version = "2.0.0" 631 + source = "registry+https://github.com/rust-lang/crates.io-index" 632 + checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" 633 + dependencies = [ 634 + "displaydoc", 635 + "icu_locale_core", 636 + "stable_deref_trait", 637 + "tinystr", 638 + "writeable", 639 + "yoke", 640 + "zerofrom", 641 + "zerotrie", 642 + "zerovec", 643 + ] 644 + 645 + [[package]] 646 + name = "idna" 647 + version = "1.1.0" 648 + source = "registry+https://github.com/rust-lang/crates.io-index" 649 + checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" 650 + dependencies = [ 651 + "idna_adapter", 652 + "smallvec", 653 + "utf8_iter", 654 + ] 655 + 656 + [[package]] 657 + name = "idna_adapter" 658 + version = "1.2.1" 659 + source = "registry+https://github.com/rust-lang/crates.io-index" 660 + checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" 661 + dependencies = [ 662 + "icu_normalizer", 663 + "icu_properties", 664 + ] 665 + 666 + [[package]] 667 + name = "indexmap" 668 + version = "2.11.4" 669 + source = "registry+https://github.com/rust-lang/crates.io-index" 670 + checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" 671 + dependencies = [ 672 + "equivalent", 673 + "hashbrown", 260 674 ] 261 675 262 676 [[package]] ··· 271 685 ] 272 686 273 687 [[package]] 688 + name = "ipnet" 689 + version = "2.11.0" 690 + source = "registry+https://github.com/rust-lang/crates.io-index" 691 + checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" 692 + 693 + [[package]] 694 + name = "iri-string" 695 + version = "0.7.8" 696 + source = "registry+https://github.com/rust-lang/crates.io-index" 697 + checksum = "dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2" 698 + dependencies = [ 699 + "memchr", 700 + "serde", 701 + ] 702 + 703 + [[package]] 274 704 name = "itoa" 275 705 version = "1.0.15" 276 706 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 299 729 checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" 300 730 301 731 [[package]] 732 + name = "linux-raw-sys" 733 + version = "0.11.0" 734 + source = "registry+https://github.com/rust-lang/crates.io-index" 735 + checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" 736 + 737 + [[package]] 302 738 name = "listenfd" 303 739 version = "1.0.2" 304 740 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 308 744 "uuid", 309 745 "winapi", 310 746 ] 747 + 748 + [[package]] 749 + name = "litemap" 750 + version = "0.8.0" 751 + source = "registry+https://github.com/rust-lang/crates.io-index" 752 + checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" 311 753 312 754 [[package]] 313 755 name = "lock_api" ··· 383 825 checksum = "78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c" 384 826 dependencies = [ 385 827 "libc", 386 - "wasi", 828 + "wasi 0.11.1+wasi-snapshot-preview1", 387 829 "windows-sys 0.59.0", 388 830 ] 389 831 390 832 [[package]] 833 + name = "native-tls" 834 + version = "0.2.14" 835 + source = "registry+https://github.com/rust-lang/crates.io-index" 836 + checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" 837 + dependencies = [ 838 + "libc", 839 + "log", 840 + "openssl", 841 + "openssl-probe", 842 + "openssl-sys", 843 + "schannel", 844 + "security-framework", 845 + "security-framework-sys", 846 + "tempfile", 847 + ] 848 + 849 + [[package]] 391 850 name = "nu-ansi-term" 392 851 version = "0.50.1" 393 852 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 412 871 checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" 413 872 414 873 [[package]] 874 + name = "openssl" 875 + version = "0.10.73" 876 + source = "registry+https://github.com/rust-lang/crates.io-index" 877 + checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8" 878 + dependencies = [ 879 + "bitflags", 880 + "cfg-if", 881 + "foreign-types", 882 + "libc", 883 + "once_cell", 884 + "openssl-macros", 885 + "openssl-sys", 886 + ] 887 + 888 + [[package]] 889 + name = "openssl-macros" 890 + version = "0.1.1" 891 + source = "registry+https://github.com/rust-lang/crates.io-index" 892 + checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" 893 + dependencies = [ 894 + "proc-macro2", 895 + "quote", 896 + "syn", 897 + ] 898 + 899 + [[package]] 900 + name = "openssl-probe" 901 + version = "0.1.6" 902 + source = "registry+https://github.com/rust-lang/crates.io-index" 903 + checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" 904 + 905 + [[package]] 906 + name = "openssl-sys" 907 + version = "0.9.109" 908 + source = "registry+https://github.com/rust-lang/crates.io-index" 909 + checksum = "90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571" 910 + dependencies = [ 911 + "cc", 912 + "libc", 913 + "pkg-config", 914 + "vcpkg", 915 + ] 916 + 917 + [[package]] 415 918 name = "parking_lot" 416 919 version = "0.12.4" 417 920 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 453 956 checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 454 957 455 958 [[package]] 959 + name = "pkg-config" 960 + version = "0.3.32" 961 + source = "registry+https://github.com/rust-lang/crates.io-index" 962 + checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" 963 + 964 + [[package]] 965 + name = "potential_utf" 966 + version = "0.1.3" 967 + source = "registry+https://github.com/rust-lang/crates.io-index" 968 + checksum = "84df19adbe5b5a0782edcab45899906947ab039ccf4573713735ee7de1e6b08a" 969 + dependencies = [ 970 + "zerovec", 971 + ] 972 + 973 + [[package]] 974 + name = "ppv-lite86" 975 + version = "0.2.21" 976 + source = "registry+https://github.com/rust-lang/crates.io-index" 977 + checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" 978 + dependencies = [ 979 + "zerocopy", 980 + ] 981 + 982 + [[package]] 456 983 name = "proc-macro2" 457 984 version = "1.0.101" 458 985 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 483 1010 ] 484 1011 485 1012 [[package]] 1013 + name = "r-efi" 1014 + version = "5.3.0" 1015 + source = "registry+https://github.com/rust-lang/crates.io-index" 1016 + checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" 1017 + 1018 + [[package]] 1019 + name = "rand" 1020 + version = "0.9.2" 1021 + source = "registry+https://github.com/rust-lang/crates.io-index" 1022 + checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" 1023 + dependencies = [ 1024 + "rand_chacha", 1025 + "rand_core", 1026 + ] 1027 + 1028 + [[package]] 1029 + name = "rand_chacha" 1030 + version = "0.9.0" 1031 + source = "registry+https://github.com/rust-lang/crates.io-index" 1032 + checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" 1033 + dependencies = [ 1034 + "ppv-lite86", 1035 + "rand_core", 1036 + ] 1037 + 1038 + [[package]] 1039 + name = "rand_core" 1040 + version = "0.9.3" 1041 + source = "registry+https://github.com/rust-lang/crates.io-index" 1042 + checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" 1043 + dependencies = [ 1044 + "getrandom 0.3.3", 1045 + ] 1046 + 1047 + [[package]] 486 1048 name = "redox_syscall" 487 1049 version = "0.5.17" 488 1050 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 492 1054 ] 493 1055 494 1056 [[package]] 1057 + name = "reqwest" 1058 + version = "0.12.23" 1059 + source = "registry+https://github.com/rust-lang/crates.io-index" 1060 + checksum = "d429f34c8092b2d42c7c93cec323bb4adeb7c67698f70839adec842ec10c7ceb" 1061 + dependencies = [ 1062 + "base64", 1063 + "bytes", 1064 + "encoding_rs", 1065 + "futures-core", 1066 + "h2", 1067 + "http", 1068 + "http-body", 1069 + "http-body-util", 1070 + "hyper", 1071 + "hyper-rustls", 1072 + "hyper-tls", 1073 + "hyper-util", 1074 + "js-sys", 1075 + "log", 1076 + "mime", 1077 + "native-tls", 1078 + "percent-encoding", 1079 + "pin-project-lite", 1080 + "rustls-pki-types", 1081 + "serde", 1082 + "serde_json", 1083 + "serde_urlencoded", 1084 + "sync_wrapper", 1085 + "tokio", 1086 + "tokio-native-tls", 1087 + "tower", 1088 + "tower-http", 1089 + "tower-service", 1090 + "url", 1091 + "wasm-bindgen", 1092 + "wasm-bindgen-futures", 1093 + "web-sys", 1094 + ] 1095 + 1096 + [[package]] 1097 + name = "ring" 1098 + version = "0.17.14" 1099 + source = "registry+https://github.com/rust-lang/crates.io-index" 1100 + checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" 1101 + dependencies = [ 1102 + "cc", 1103 + "cfg-if", 1104 + "getrandom 0.2.16", 1105 + "libc", 1106 + "untrusted", 1107 + "windows-sys 0.52.0", 1108 + ] 1109 + 1110 + [[package]] 495 1111 name = "rustc-demangle" 496 1112 version = "0.1.26" 497 1113 source = "registry+https://github.com/rust-lang/crates.io-index" 498 1114 checksum = "56f7d92ca342cea22a06f2121d944b4fd82af56988c270852495420f961d4ace" 499 1115 500 1116 [[package]] 1117 + name = "rustix" 1118 + version = "1.1.2" 1119 + source = "registry+https://github.com/rust-lang/crates.io-index" 1120 + checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" 1121 + dependencies = [ 1122 + "bitflags", 1123 + "errno", 1124 + "libc", 1125 + "linux-raw-sys", 1126 + "windows-sys 0.61.1", 1127 + ] 1128 + 1129 + [[package]] 1130 + name = "rustls" 1131 + version = "0.23.32" 1132 + source = "registry+https://github.com/rust-lang/crates.io-index" 1133 + checksum = "cd3c25631629d034ce7cd9940adc9d45762d46de2b0f57193c4443b92c6d4d40" 1134 + dependencies = [ 1135 + "once_cell", 1136 + "rustls-pki-types", 1137 + "rustls-webpki", 1138 + "subtle", 1139 + "zeroize", 1140 + ] 1141 + 1142 + [[package]] 1143 + name = "rustls-pki-types" 1144 + version = "1.12.0" 1145 + source = "registry+https://github.com/rust-lang/crates.io-index" 1146 + checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" 1147 + dependencies = [ 1148 + "zeroize", 1149 + ] 1150 + 1151 + [[package]] 1152 + name = "rustls-webpki" 1153 + version = "0.103.6" 1154 + source = "registry+https://github.com/rust-lang/crates.io-index" 1155 + checksum = "8572f3c2cb9934231157b45499fc41e1f58c589fdfb81a844ba873265e80f8eb" 1156 + dependencies = [ 1157 + "ring", 1158 + "rustls-pki-types", 1159 + "untrusted", 1160 + ] 1161 + 1162 + [[package]] 501 1163 name = "rustversion" 502 1164 version = "1.0.22" 503 1165 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 510 1172 checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" 511 1173 512 1174 [[package]] 1175 + name = "schannel" 1176 + version = "0.1.28" 1177 + source = "registry+https://github.com/rust-lang/crates.io-index" 1178 + checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1" 1179 + dependencies = [ 1180 + "windows-sys 0.61.1", 1181 + ] 1182 + 1183 + [[package]] 513 1184 name = "scopeguard" 514 1185 version = "1.2.0" 515 1186 source = "registry+https://github.com/rust-lang/crates.io-index" 516 1187 checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 517 1188 518 1189 [[package]] 1190 + name = "security-framework" 1191 + version = "2.11.1" 1192 + source = "registry+https://github.com/rust-lang/crates.io-index" 1193 + checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" 1194 + dependencies = [ 1195 + "bitflags", 1196 + "core-foundation", 1197 + "core-foundation-sys", 1198 + "libc", 1199 + "security-framework-sys", 1200 + ] 1201 + 1202 + [[package]] 1203 + name = "security-framework-sys" 1204 + version = "2.15.0" 1205 + source = "registry+https://github.com/rust-lang/crates.io-index" 1206 + checksum = "cc1f0cbffaac4852523ce30d8bd3c5cdc873501d96ff467ca09b6767bb8cd5c0" 1207 + dependencies = [ 1208 + "core-foundation-sys", 1209 + "libc", 1210 + ] 1211 + 1212 + [[package]] 519 1213 name = "serde" 520 1214 version = "1.0.219" 521 1215 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 570 1264 ] 571 1265 572 1266 [[package]] 1267 + name = "sha1" 1268 + version = "0.10.6" 1269 + source = "registry+https://github.com/rust-lang/crates.io-index" 1270 + checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" 1271 + dependencies = [ 1272 + "cfg-if", 1273 + "cpufeatures", 1274 + "digest", 1275 + ] 1276 + 1277 + [[package]] 573 1278 name = "sharded-slab" 574 1279 version = "0.1.7" 575 1280 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 583 1288 version = "0.1.0" 584 1289 dependencies = [ 585 1290 "axum", 1291 + "base64", 1292 + "futures", 586 1293 "listenfd", 587 1294 "maud", 1295 + "reqwest", 588 1296 "tokio", 1297 + "tokio-tungstenite", 589 1298 "tower-http", 590 1299 "tracing", 591 1300 "tracing-subscriber", 592 1301 ] 593 1302 594 1303 [[package]] 1304 + name = "shlex" 1305 + version = "1.3.0" 1306 + source = "registry+https://github.com/rust-lang/crates.io-index" 1307 + checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" 1308 + 1309 + [[package]] 595 1310 name = "signal-hook-registry" 596 1311 version = "1.4.6" 597 1312 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 623 1338 ] 624 1339 625 1340 [[package]] 1341 + name = "stable_deref_trait" 1342 + version = "1.2.0" 1343 + source = "registry+https://github.com/rust-lang/crates.io-index" 1344 + checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" 1345 + 1346 + [[package]] 1347 + name = "subtle" 1348 + version = "2.6.1" 1349 + source = "registry+https://github.com/rust-lang/crates.io-index" 1350 + checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" 1351 + 1352 + [[package]] 626 1353 name = "syn" 627 1354 version = "2.0.106" 628 1355 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 638 1365 version = "1.0.2" 639 1366 source = "registry+https://github.com/rust-lang/crates.io-index" 640 1367 checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" 1368 + dependencies = [ 1369 + "futures-core", 1370 + ] 1371 + 1372 + [[package]] 1373 + name = "synstructure" 1374 + version = "0.13.2" 1375 + source = "registry+https://github.com/rust-lang/crates.io-index" 1376 + checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" 1377 + dependencies = [ 1378 + "proc-macro2", 1379 + "quote", 1380 + "syn", 1381 + ] 1382 + 1383 + [[package]] 1384 + name = "system-configuration" 1385 + version = "0.6.1" 1386 + source = "registry+https://github.com/rust-lang/crates.io-index" 1387 + checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" 1388 + dependencies = [ 1389 + "bitflags", 1390 + "core-foundation", 1391 + "system-configuration-sys", 1392 + ] 1393 + 1394 + [[package]] 1395 + name = "system-configuration-sys" 1396 + version = "0.6.0" 1397 + source = "registry+https://github.com/rust-lang/crates.io-index" 1398 + checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" 1399 + dependencies = [ 1400 + "core-foundation-sys", 1401 + "libc", 1402 + ] 1403 + 1404 + [[package]] 1405 + name = "tempfile" 1406 + version = "3.23.0" 1407 + source = "registry+https://github.com/rust-lang/crates.io-index" 1408 + checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16" 1409 + dependencies = [ 1410 + "fastrand", 1411 + "getrandom 0.3.3", 1412 + "once_cell", 1413 + "rustix", 1414 + "windows-sys 0.61.1", 1415 + ] 1416 + 1417 + [[package]] 1418 + name = "thiserror" 1419 + version = "2.0.16" 1420 + source = "registry+https://github.com/rust-lang/crates.io-index" 1421 + checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0" 1422 + dependencies = [ 1423 + "thiserror-impl", 1424 + ] 1425 + 1426 + [[package]] 1427 + name = "thiserror-impl" 1428 + version = "2.0.16" 1429 + source = "registry+https://github.com/rust-lang/crates.io-index" 1430 + checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960" 1431 + dependencies = [ 1432 + "proc-macro2", 1433 + "quote", 1434 + "syn", 1435 + ] 641 1436 642 1437 [[package]] 643 1438 name = "thread_local" ··· 649 1444 ] 650 1445 651 1446 [[package]] 1447 + name = "tinystr" 1448 + version = "0.8.1" 1449 + source = "registry+https://github.com/rust-lang/crates.io-index" 1450 + checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" 1451 + dependencies = [ 1452 + "displaydoc", 1453 + "zerovec", 1454 + ] 1455 + 1456 + [[package]] 652 1457 name = "tokio" 653 1458 version = "1.47.1" 654 1459 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 680 1485 ] 681 1486 682 1487 [[package]] 1488 + name = "tokio-native-tls" 1489 + version = "0.3.1" 1490 + source = "registry+https://github.com/rust-lang/crates.io-index" 1491 + checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" 1492 + dependencies = [ 1493 + "native-tls", 1494 + "tokio", 1495 + ] 1496 + 1497 + [[package]] 1498 + name = "tokio-rustls" 1499 + version = "0.26.4" 1500 + source = "registry+https://github.com/rust-lang/crates.io-index" 1501 + checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" 1502 + dependencies = [ 1503 + "rustls", 1504 + "tokio", 1505 + ] 1506 + 1507 + [[package]] 1508 + name = "tokio-tungstenite" 1509 + version = "0.28.0" 1510 + source = "registry+https://github.com/rust-lang/crates.io-index" 1511 + checksum = "d25a406cddcc431a75d3d9afc6a7c0f7428d4891dd973e4d54c56b46127bf857" 1512 + dependencies = [ 1513 + "futures-util", 1514 + "log", 1515 + "native-tls", 1516 + "tokio", 1517 + "tokio-native-tls", 1518 + "tungstenite", 1519 + ] 1520 + 1521 + [[package]] 1522 + name = "tokio-util" 1523 + version = "0.7.16" 1524 + source = "registry+https://github.com/rust-lang/crates.io-index" 1525 + checksum = "14307c986784f72ef81c89db7d9e28d6ac26d16213b109ea501696195e6e3ce5" 1526 + dependencies = [ 1527 + "bytes", 1528 + "futures-core", 1529 + "futures-sink", 1530 + "pin-project-lite", 1531 + "tokio", 1532 + ] 1533 + 1534 + [[package]] 683 1535 name = "tower" 684 1536 version = "0.5.2" 685 1537 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 703 1555 dependencies = [ 704 1556 "bitflags", 705 1557 "bytes", 1558 + "futures-util", 706 1559 "http", 707 1560 "http-body", 1561 + "iri-string", 708 1562 "pin-project-lite", 1563 + "tower", 709 1564 "tower-layer", 710 1565 "tower-service", 711 1566 "tracing", ··· 782 1637 ] 783 1638 784 1639 [[package]] 1640 + name = "try-lock" 1641 + version = "0.2.5" 1642 + source = "registry+https://github.com/rust-lang/crates.io-index" 1643 + checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" 1644 + 1645 + [[package]] 1646 + name = "tungstenite" 1647 + version = "0.28.0" 1648 + source = "registry+https://github.com/rust-lang/crates.io-index" 1649 + checksum = "8628dcc84e5a09eb3d8423d6cb682965dea9133204e8fb3efee74c2a0c259442" 1650 + dependencies = [ 1651 + "bytes", 1652 + "data-encoding", 1653 + "http", 1654 + "httparse", 1655 + "log", 1656 + "native-tls", 1657 + "rand", 1658 + "sha1", 1659 + "thiserror", 1660 + "utf-8", 1661 + ] 1662 + 1663 + [[package]] 1664 + name = "typenum" 1665 + version = "1.18.0" 1666 + source = "registry+https://github.com/rust-lang/crates.io-index" 1667 + checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" 1668 + 1669 + [[package]] 785 1670 name = "unicode-ident" 786 1671 version = "1.0.19" 787 1672 source = "registry+https://github.com/rust-lang/crates.io-index" 788 1673 checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" 789 1674 790 1675 [[package]] 1676 + name = "untrusted" 1677 + version = "0.9.0" 1678 + source = "registry+https://github.com/rust-lang/crates.io-index" 1679 + checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" 1680 + 1681 + [[package]] 1682 + name = "url" 1683 + version = "2.5.7" 1684 + source = "registry+https://github.com/rust-lang/crates.io-index" 1685 + checksum = "08bc136a29a3d1758e07a9cca267be308aeebf5cfd5a10f3f67ab2097683ef5b" 1686 + dependencies = [ 1687 + "form_urlencoded", 1688 + "idna", 1689 + "percent-encoding", 1690 + "serde", 1691 + ] 1692 + 1693 + [[package]] 1694 + name = "utf-8" 1695 + version = "0.7.6" 1696 + source = "registry+https://github.com/rust-lang/crates.io-index" 1697 + checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" 1698 + 1699 + [[package]] 1700 + name = "utf8_iter" 1701 + version = "1.0.4" 1702 + source = "registry+https://github.com/rust-lang/crates.io-index" 1703 + checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" 1704 + 1705 + [[package]] 791 1706 name = "uuid" 792 1707 version = "1.18.1" 793 1708 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 804 1719 checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" 805 1720 806 1721 [[package]] 1722 + name = "vcpkg" 1723 + version = "0.2.15" 1724 + source = "registry+https://github.com/rust-lang/crates.io-index" 1725 + checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" 1726 + 1727 + [[package]] 807 1728 name = "version_check" 808 1729 version = "0.9.5" 809 1730 source = "registry+https://github.com/rust-lang/crates.io-index" 810 1731 checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" 811 1732 812 1733 [[package]] 1734 + name = "want" 1735 + version = "0.3.1" 1736 + source = "registry+https://github.com/rust-lang/crates.io-index" 1737 + checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" 1738 + dependencies = [ 1739 + "try-lock", 1740 + ] 1741 + 1742 + [[package]] 813 1743 name = "wasi" 814 1744 version = "0.11.1+wasi-snapshot-preview1" 815 1745 source = "registry+https://github.com/rust-lang/crates.io-index" 816 1746 checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" 817 1747 818 1748 [[package]] 1749 + name = "wasi" 1750 + version = "0.14.7+wasi-0.2.4" 1751 + source = "registry+https://github.com/rust-lang/crates.io-index" 1752 + checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c" 1753 + dependencies = [ 1754 + "wasip2", 1755 + ] 1756 + 1757 + [[package]] 1758 + name = "wasip2" 1759 + version = "1.0.1+wasi-0.2.4" 1760 + source = "registry+https://github.com/rust-lang/crates.io-index" 1761 + checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" 1762 + dependencies = [ 1763 + "wit-bindgen", 1764 + ] 1765 + 1766 + [[package]] 819 1767 name = "wasm-bindgen" 820 1768 version = "0.2.101" 821 1769 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 843 1791 ] 844 1792 845 1793 [[package]] 1794 + name = "wasm-bindgen-futures" 1795 + version = "0.4.51" 1796 + source = "registry+https://github.com/rust-lang/crates.io-index" 1797 + checksum = "0ca85039a9b469b38336411d6d6ced91f3fc87109a2a27b0c197663f5144dffe" 1798 + dependencies = [ 1799 + "cfg-if", 1800 + "js-sys", 1801 + "once_cell", 1802 + "wasm-bindgen", 1803 + "web-sys", 1804 + ] 1805 + 1806 + [[package]] 846 1807 name = "wasm-bindgen-macro" 847 1808 version = "0.2.101" 848 1809 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 875 1836 ] 876 1837 877 1838 [[package]] 1839 + name = "web-sys" 1840 + version = "0.3.78" 1841 + source = "registry+https://github.com/rust-lang/crates.io-index" 1842 + checksum = "77e4b637749ff0d92b8fad63aa1f7cff3cbe125fd49c175cd6345e7272638b12" 1843 + dependencies = [ 1844 + "js-sys", 1845 + "wasm-bindgen", 1846 + ] 1847 + 1848 + [[package]] 878 1849 name = "winapi" 879 1850 version = "0.3.9" 880 1851 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 897 1868 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 898 1869 899 1870 [[package]] 1871 + name = "windows-link" 1872 + version = "0.1.3" 1873 + source = "registry+https://github.com/rust-lang/crates.io-index" 1874 + checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" 1875 + 1876 + [[package]] 1877 + name = "windows-link" 1878 + version = "0.2.0" 1879 + source = "registry+https://github.com/rust-lang/crates.io-index" 1880 + checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" 1881 + 1882 + [[package]] 1883 + name = "windows-registry" 1884 + version = "0.5.3" 1885 + source = "registry+https://github.com/rust-lang/crates.io-index" 1886 + checksum = "5b8a9ed28765efc97bbc954883f4e6796c33a06546ebafacbabee9696967499e" 1887 + dependencies = [ 1888 + "windows-link 0.1.3", 1889 + "windows-result", 1890 + "windows-strings", 1891 + ] 1892 + 1893 + [[package]] 1894 + name = "windows-result" 1895 + version = "0.3.4" 1896 + source = "registry+https://github.com/rust-lang/crates.io-index" 1897 + checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" 1898 + dependencies = [ 1899 + "windows-link 0.1.3", 1900 + ] 1901 + 1902 + [[package]] 1903 + name = "windows-strings" 1904 + version = "0.4.2" 1905 + source = "registry+https://github.com/rust-lang/crates.io-index" 1906 + checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" 1907 + dependencies = [ 1908 + "windows-link 0.1.3", 1909 + ] 1910 + 1911 + [[package]] 900 1912 name = "windows-sys" 901 1913 version = "0.52.0" 902 1914 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 912 1924 checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" 913 1925 dependencies = [ 914 1926 "windows-targets", 1927 + ] 1928 + 1929 + [[package]] 1930 + name = "windows-sys" 1931 + version = "0.61.1" 1932 + source = "registry+https://github.com/rust-lang/crates.io-index" 1933 + checksum = "6f109e41dd4a3c848907eb83d5a42ea98b3769495597450cf6d153507b166f0f" 1934 + dependencies = [ 1935 + "windows-link 0.2.0", 915 1936 ] 916 1937 917 1938 [[package]] ··· 977 1998 version = "0.52.6" 978 1999 source = "registry+https://github.com/rust-lang/crates.io-index" 979 2000 checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 2001 + 2002 + [[package]] 2003 + name = "wit-bindgen" 2004 + version = "0.46.0" 2005 + source = "registry+https://github.com/rust-lang/crates.io-index" 2006 + checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" 2007 + 2008 + [[package]] 2009 + name = "writeable" 2010 + version = "0.6.1" 2011 + source = "registry+https://github.com/rust-lang/crates.io-index" 2012 + checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" 2013 + 2014 + [[package]] 2015 + name = "yoke" 2016 + version = "0.8.0" 2017 + source = "registry+https://github.com/rust-lang/crates.io-index" 2018 + checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" 2019 + dependencies = [ 2020 + "serde", 2021 + "stable_deref_trait", 2022 + "yoke-derive", 2023 + "zerofrom", 2024 + ] 2025 + 2026 + [[package]] 2027 + name = "yoke-derive" 2028 + version = "0.8.0" 2029 + source = "registry+https://github.com/rust-lang/crates.io-index" 2030 + checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" 2031 + dependencies = [ 2032 + "proc-macro2", 2033 + "quote", 2034 + "syn", 2035 + "synstructure", 2036 + ] 2037 + 2038 + [[package]] 2039 + name = "zerocopy" 2040 + version = "0.8.27" 2041 + source = "registry+https://github.com/rust-lang/crates.io-index" 2042 + checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c" 2043 + dependencies = [ 2044 + "zerocopy-derive", 2045 + ] 2046 + 2047 + [[package]] 2048 + name = "zerocopy-derive" 2049 + version = "0.8.27" 2050 + source = "registry+https://github.com/rust-lang/crates.io-index" 2051 + checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" 2052 + dependencies = [ 2053 + "proc-macro2", 2054 + "quote", 2055 + "syn", 2056 + ] 2057 + 2058 + [[package]] 2059 + name = "zerofrom" 2060 + version = "0.1.6" 2061 + source = "registry+https://github.com/rust-lang/crates.io-index" 2062 + checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" 2063 + dependencies = [ 2064 + "zerofrom-derive", 2065 + ] 2066 + 2067 + [[package]] 2068 + name = "zerofrom-derive" 2069 + version = "0.1.6" 2070 + source = "registry+https://github.com/rust-lang/crates.io-index" 2071 + checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" 2072 + dependencies = [ 2073 + "proc-macro2", 2074 + "quote", 2075 + "syn", 2076 + "synstructure", 2077 + ] 2078 + 2079 + [[package]] 2080 + name = "zeroize" 2081 + version = "1.8.1" 2082 + source = "registry+https://github.com/rust-lang/crates.io-index" 2083 + checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" 2084 + 2085 + [[package]] 2086 + name = "zerotrie" 2087 + version = "0.2.2" 2088 + source = "registry+https://github.com/rust-lang/crates.io-index" 2089 + checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" 2090 + dependencies = [ 2091 + "displaydoc", 2092 + "yoke", 2093 + "zerofrom", 2094 + ] 2095 + 2096 + [[package]] 2097 + name = "zerovec" 2098 + version = "0.11.4" 2099 + source = "registry+https://github.com/rust-lang/crates.io-index" 2100 + checksum = "e7aa2bd55086f1ab526693ecbe444205da57e25f4489879da80635a46d90e73b" 2101 + dependencies = [ 2102 + "yoke", 2103 + "zerofrom", 2104 + "zerovec-derive", 2105 + ] 2106 + 2107 + [[package]] 2108 + name = "zerovec-derive" 2109 + version = "0.11.1" 2110 + source = "registry+https://github.com/rust-lang/crates.io-index" 2111 + checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" 2112 + dependencies = [ 2113 + "proc-macro2", 2114 + "quote", 2115 + "syn", 2116 + ]
+4
Cargo.toml
··· 5 5 6 6 [dependencies] 7 7 axum = "0.8" 8 + base64 = "0.22.1" 9 + futures = "0.3.31" 8 10 listenfd = "1.0.2" 9 11 maud = { version = "0.27", features = ["axum"] } 12 + reqwest = "0.12.23" 10 13 tokio = { version = "1.0", features = ["full"] } 14 + tokio-tungstenite = { version = "0.28.0", features = ["native-tls"] } 11 15 tower-http = { version = "0.6", features = ["trace"] } 12 16 tracing = "0.1" 13 17 tracing-subscriber = "0.3"
+1 -1
justfile
··· 1 1 dev: 2 - RUST_LOG=trace systemfd --no-pid -s http::6969 -- watchexec -r -- cargo run 2 + systemfd --no-pid -s http::6969 -- watchexec -r -- cargo run
+61 -4
src/main.rs
··· 1 - use axum::{Router, routing::get}; 1 + use std::sync::Arc; 2 + 3 + use axum::{Extension, Router, routing::get}; 4 + use base64::{Engine, prelude::BASE64_STANDARD}; 5 + use futures::{StreamExt as _, lock::Mutex}; 2 6 use listenfd::ListenFd; 3 7 use maud::{DOCTYPE, Markup, html}; 8 + use reqwest::Url; 4 9 use tokio::net::TcpListener; 10 + use tokio_tungstenite::tungstenite::Message; 5 11 use tower_http::trace::TraceLayer; 6 12 13 + type Db = Arc<Mutex<Vec<String>>>; 14 + 7 15 #[tokio::main] 8 16 async fn main() { 9 17 tracing_subscriber::fmt::init(); 10 18 19 + let db = Arc::new(Mutex::new(Vec::new())); 20 + 21 + let web_server_db = db.clone(); 22 + tokio::spawn(async move { web_server(web_server_db).await }); 23 + 24 + let jetstream_db = db.clone(); 25 + firehose_subscriber(jetstream_db).await 26 + } 27 + 28 + async fn firehose_subscriber(db: Db) { 29 + tracing::info!("Connecting to firehose..."); 30 + 31 + let (mut socket, response) = tokio_tungstenite::connect_async( 32 + // Url::parse("wss://relay.upcloud.world/xrpc/com.atproto.sync.subscribeRepos") 33 + Url::parse("wss://bsky.network/xrpc/com.atproto.sync.subscribeRepos") 34 + .unwrap() 35 + .as_str(), 36 + ) 37 + .await 38 + .unwrap(); 39 + 40 + tracing::info!("{:?}", response); 41 + 42 + tracing::info!("Connected to firehose!"); 43 + 44 + loop { 45 + while let Some(Ok(Message::Binary(message))) = socket.next().await { 46 + let msg = BASE64_STANDARD.encode(message); 47 + let mut database = db.lock().await; 48 + database.push(msg); 49 + } 50 + } 51 + } 52 + 53 + async fn web_server(db: Db) { 54 + tracing::info!("Spinning up web server..."); 55 + 11 56 let app = Router::new() 12 57 .route("/", get(index)) 58 + .layer(Extension(db)) 13 59 .layer(TraceLayer::new_for_http()); 14 60 15 61 let mut listenfd = ListenFd::from_env(); ··· 23 69 None => TcpListener::bind("127.0.0.1:3000").await.unwrap(), 24 70 }; 25 71 26 - axum::serve(listener, app).await.unwrap() 72 + let server = axum::serve(listener, app); 73 + tracing::info!("Web server started!"); 74 + 75 + server.await.unwrap(); 27 76 } 28 77 29 - async fn index() -> Markup { 78 + async fn index(Extension(db): Extension<Db>) -> Markup { 79 + let borrowed_db = db.lock().await; 80 + let items = borrowed_db.iter().rev().take(100).collect::<Vec<&String>>(); 81 + 30 82 page( 31 83 "ShitSky", 32 84 html! { 33 - p { "Hello from shitsky" } 85 + p { "Hello from ShitSky" } 86 + @for item in &items { 87 + pre { 88 + (item) 89 + } 90 + } 34 91 }, 35 92 ) 36 93 }