A multiplayer VR framework w/voice chat

first commit

phaz.uk 8827f067

+1
.gitignore
··· 1 + target/
+5613
Cargo.lock
··· 1 + # This file is automatically @generated by Cargo. 2 + # It is not intended for manual editing. 3 + version = 4 4 + 5 + [[package]] 6 + name = "ab_glyph" 7 + version = "0.2.32" 8 + source = "registry+https://github.com/rust-lang/crates.io-index" 9 + checksum = "01c0457472c38ea5bd1c3b5ada5e368271cb550be7a4ca4a0b4634e9913f6cc2" 10 + dependencies = [ 11 + "ab_glyph_rasterizer", 12 + "owned_ttf_parser", 13 + ] 14 + 15 + [[package]] 16 + name = "ab_glyph_rasterizer" 17 + version = "0.1.10" 18 + source = "registry+https://github.com/rust-lang/crates.io-index" 19 + checksum = "366ffbaa4442f4684d91e2cd7c5ea7c4ed8add41959a31447066e279e432b618" 20 + 21 + [[package]] 22 + name = "accesskit" 23 + version = "0.21.1" 24 + source = "registry+https://github.com/rust-lang/crates.io-index" 25 + checksum = "cf203f9d3bd8f29f98833d1fbef628df18f759248a547e7e01cfbf63cda36a99" 26 + 27 + [[package]] 28 + name = "accesskit_consumer" 29 + version = "0.31.0" 30 + source = "registry+https://github.com/rust-lang/crates.io-index" 31 + checksum = "db81010a6895d8707f9072e6ce98070579b43b717193d2614014abd5cb17dd43" 32 + dependencies = [ 33 + "accesskit", 34 + "hashbrown 0.15.5", 35 + ] 36 + 37 + [[package]] 38 + name = "accesskit_macos" 39 + version = "0.22.2" 40 + source = "registry+https://github.com/rust-lang/crates.io-index" 41 + checksum = "a0089e5c0ac0ca281e13ea374773898d9354cc28d15af9f0f7394d44a495b575" 42 + dependencies = [ 43 + "accesskit", 44 + "accesskit_consumer", 45 + "hashbrown 0.15.5", 46 + "objc2 0.5.2", 47 + "objc2-app-kit", 48 + "objc2-foundation", 49 + ] 50 + 51 + [[package]] 52 + name = "accesskit_windows" 53 + version = "0.29.2" 54 + source = "registry+https://github.com/rust-lang/crates.io-index" 55 + checksum = "d2d63dd5041e49c363d83f5419a896ecb074d309c414036f616dc0b04faca971" 56 + dependencies = [ 57 + "accesskit", 58 + "accesskit_consumer", 59 + "hashbrown 0.15.5", 60 + "static_assertions", 61 + "windows 0.61.3", 62 + "windows-core 0.61.2", 63 + ] 64 + 65 + [[package]] 66 + name = "accesskit_winit" 67 + version = "0.29.2" 68 + source = "registry+https://github.com/rust-lang/crates.io-index" 69 + checksum = "c8cfabe59d0eaca7412bfb1f70198dd31e3b0496fee7e15b066f9c36a1a140a0" 70 + dependencies = [ 71 + "accesskit", 72 + "accesskit_macos", 73 + "accesskit_windows", 74 + "raw-window-handle", 75 + "winit", 76 + ] 77 + 78 + [[package]] 79 + name = "adler2" 80 + version = "2.0.1" 81 + source = "registry+https://github.com/rust-lang/crates.io-index" 82 + checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" 83 + 84 + [[package]] 85 + name = "ahash" 86 + version = "0.8.12" 87 + source = "registry+https://github.com/rust-lang/crates.io-index" 88 + checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" 89 + dependencies = [ 90 + "cfg-if", 91 + "getrandom 0.3.4", 92 + "once_cell", 93 + "version_check", 94 + "zerocopy", 95 + ] 96 + 97 + [[package]] 98 + name = "aho-corasick" 99 + version = "1.1.4" 100 + source = "registry+https://github.com/rust-lang/crates.io-index" 101 + checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" 102 + dependencies = [ 103 + "memchr", 104 + ] 105 + 106 + [[package]] 107 + name = "alsa" 108 + version = "0.9.1" 109 + source = "registry+https://github.com/rust-lang/crates.io-index" 110 + checksum = "ed7572b7ba83a31e20d1b48970ee402d2e3e0537dcfe0a3ff4d6eb7508617d43" 111 + dependencies = [ 112 + "alsa-sys", 113 + "bitflags 2.10.0", 114 + "cfg-if", 115 + "libc", 116 + ] 117 + 118 + [[package]] 119 + name = "alsa-sys" 120 + version = "0.3.1" 121 + source = "registry+https://github.com/rust-lang/crates.io-index" 122 + checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527" 123 + dependencies = [ 124 + "libc", 125 + "pkg-config", 126 + ] 127 + 128 + [[package]] 129 + name = "android-activity" 130 + version = "0.6.0" 131 + source = "registry+https://github.com/rust-lang/crates.io-index" 132 + checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" 133 + dependencies = [ 134 + "android-properties", 135 + "bitflags 2.10.0", 136 + "cc", 137 + "cesu8", 138 + "jni", 139 + "jni-sys", 140 + "libc", 141 + "log", 142 + "ndk 0.9.0", 143 + "ndk-context", 144 + "ndk-sys 0.6.0+11769913", 145 + "num_enum", 146 + "thiserror 1.0.69", 147 + ] 148 + 149 + [[package]] 150 + name = "android-properties" 151 + version = "0.2.2" 152 + source = "registry+https://github.com/rust-lang/crates.io-index" 153 + checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" 154 + 155 + [[package]] 156 + name = "android_log-sys" 157 + version = "0.3.2" 158 + source = "registry+https://github.com/rust-lang/crates.io-index" 159 + checksum = "84521a3cf562bc62942e294181d9eef17eb38ceb8c68677bc49f144e4c3d4f8d" 160 + 161 + [[package]] 162 + name = "android_system_properties" 163 + version = "0.1.5" 164 + source = "registry+https://github.com/rust-lang/crates.io-index" 165 + checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" 166 + dependencies = [ 167 + "libc", 168 + ] 169 + 170 + [[package]] 171 + name = "anyhow" 172 + version = "1.0.100" 173 + source = "registry+https://github.com/rust-lang/crates.io-index" 174 + checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" 175 + 176 + [[package]] 177 + name = "approx" 178 + version = "0.5.1" 179 + source = "registry+https://github.com/rust-lang/crates.io-index" 180 + checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" 181 + dependencies = [ 182 + "num-traits", 183 + ] 184 + 185 + [[package]] 186 + name = "arrayref" 187 + version = "0.3.9" 188 + source = "registry+https://github.com/rust-lang/crates.io-index" 189 + checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" 190 + 191 + [[package]] 192 + name = "arrayvec" 193 + version = "0.7.6" 194 + source = "registry+https://github.com/rust-lang/crates.io-index" 195 + checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" 196 + 197 + [[package]] 198 + name = "as-raw-xcb-connection" 199 + version = "1.0.1" 200 + source = "registry+https://github.com/rust-lang/crates.io-index" 201 + checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b" 202 + 203 + [[package]] 204 + name = "ash" 205 + version = "0.38.0+1.3.281" 206 + source = "registry+https://github.com/rust-lang/crates.io-index" 207 + checksum = "0bb44936d800fea8f016d7f2311c6a4f97aebd5dc86f09906139ec848cf3a46f" 208 + dependencies = [ 209 + "libloading", 210 + ] 211 + 212 + [[package]] 213 + name = "assert_type_match" 214 + version = "0.1.1" 215 + source = "registry+https://github.com/rust-lang/crates.io-index" 216 + checksum = "f548ad2c4031f2902e3edc1f29c29e835829437de49562d8eb5dc5584d3a1043" 217 + dependencies = [ 218 + "proc-macro2", 219 + "quote", 220 + "syn", 221 + ] 222 + 223 + [[package]] 224 + name = "async-broadcast" 225 + version = "0.7.2" 226 + source = "registry+https://github.com/rust-lang/crates.io-index" 227 + checksum = "435a87a52755b8f27fcf321ac4f04b2802e337c8c4872923137471ec39c37532" 228 + dependencies = [ 229 + "event-listener", 230 + "event-listener-strategy", 231 + "futures-core", 232 + "pin-project-lite", 233 + ] 234 + 235 + [[package]] 236 + name = "async-channel" 237 + version = "2.5.0" 238 + source = "registry+https://github.com/rust-lang/crates.io-index" 239 + checksum = "924ed96dd52d1b75e9c1a3e6275715fd320f5f9439fb5a4a11fa51f4221158d2" 240 + dependencies = [ 241 + "concurrent-queue", 242 + "event-listener-strategy", 243 + "futures-core", 244 + "pin-project-lite", 245 + ] 246 + 247 + [[package]] 248 + name = "async-executor" 249 + version = "1.13.3" 250 + source = "registry+https://github.com/rust-lang/crates.io-index" 251 + checksum = "497c00e0fd83a72a79a39fcbd8e3e2f055d6f6c7e025f3b3d91f4f8e76527fb8" 252 + dependencies = [ 253 + "async-task", 254 + "concurrent-queue", 255 + "fastrand", 256 + "futures-lite", 257 + "pin-project-lite", 258 + "slab", 259 + ] 260 + 261 + [[package]] 262 + name = "async-fs" 263 + version = "2.2.0" 264 + source = "registry+https://github.com/rust-lang/crates.io-index" 265 + checksum = "8034a681df4aed8b8edbd7fbe472401ecf009251c8b40556b304567052e294c5" 266 + dependencies = [ 267 + "async-lock", 268 + "blocking", 269 + "futures-lite", 270 + ] 271 + 272 + [[package]] 273 + name = "async-lock" 274 + version = "3.4.1" 275 + source = "registry+https://github.com/rust-lang/crates.io-index" 276 + checksum = "5fd03604047cee9b6ce9de9f70c6cd540a0520c813cbd49bae61f33ab80ed1dc" 277 + dependencies = [ 278 + "event-listener", 279 + "event-listener-strategy", 280 + "pin-project-lite", 281 + ] 282 + 283 + [[package]] 284 + name = "async-task" 285 + version = "4.7.1" 286 + source = "registry+https://github.com/rust-lang/crates.io-index" 287 + checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" 288 + dependencies = [ 289 + "portable-atomic", 290 + ] 291 + 292 + [[package]] 293 + name = "atomic-waker" 294 + version = "1.1.2" 295 + source = "registry+https://github.com/rust-lang/crates.io-index" 296 + checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" 297 + dependencies = [ 298 + "portable-atomic", 299 + ] 300 + 301 + [[package]] 302 + name = "atomicow" 303 + version = "1.1.0" 304 + source = "registry+https://github.com/rust-lang/crates.io-index" 305 + checksum = "f52e8890bb9844440d0c412fa74b67fd2f14e85248b6e00708059b6da9e5f8bf" 306 + dependencies = [ 307 + "portable-atomic", 308 + "portable-atomic-util", 309 + ] 310 + 311 + [[package]] 312 + name = "autocfg" 313 + version = "1.5.0" 314 + source = "registry+https://github.com/rust-lang/crates.io-index" 315 + checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" 316 + 317 + [[package]] 318 + name = "base64" 319 + version = "0.22.1" 320 + source = "registry+https://github.com/rust-lang/crates.io-index" 321 + checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" 322 + 323 + [[package]] 324 + name = "bevy" 325 + version = "0.17.3" 326 + source = "registry+https://github.com/rust-lang/crates.io-index" 327 + checksum = "76d3ee8652fe0577fd8a99054e147740850140d530be8e044a9be4e23a3e8a24" 328 + dependencies = [ 329 + "bevy_internal", 330 + ] 331 + 332 + [[package]] 333 + name = "bevy_a11y" 334 + version = "0.17.3" 335 + source = "registry+https://github.com/rust-lang/crates.io-index" 336 + checksum = "6702a82db1b383641fc7c503451847cdafb57076c203cd3bfe549d3eeef474c3" 337 + dependencies = [ 338 + "accesskit", 339 + "bevy_app", 340 + "bevy_derive", 341 + "bevy_ecs", 342 + "bevy_reflect", 343 + ] 344 + 345 + [[package]] 346 + name = "bevy_android" 347 + version = "0.17.3" 348 + source = "registry+https://github.com/rust-lang/crates.io-index" 349 + checksum = "42b2d9435e9fe8d7107bb795a6140277872ad5b992cb3934f8d28cfd11040f6f" 350 + dependencies = [ 351 + "android-activity", 352 + ] 353 + 354 + [[package]] 355 + name = "bevy_animation" 356 + version = "0.17.3" 357 + source = "registry+https://github.com/rust-lang/crates.io-index" 358 + checksum = "bfaf3ea6d435f4736b3deb60958270443501f5795c7964b1b504abd3be970b4f" 359 + dependencies = [ 360 + "bevy_animation_macros", 361 + "bevy_app", 362 + "bevy_asset", 363 + "bevy_color", 364 + "bevy_derive", 365 + "bevy_ecs", 366 + "bevy_math", 367 + "bevy_mesh", 368 + "bevy_platform", 369 + "bevy_reflect", 370 + "bevy_time", 371 + "bevy_transform", 372 + "bevy_utils", 373 + "blake3", 374 + "derive_more", 375 + "downcast-rs 2.0.2", 376 + "either", 377 + "petgraph", 378 + "ron", 379 + "serde", 380 + "smallvec", 381 + "thiserror 2.0.17", 382 + "thread_local", 383 + "tracing", 384 + "uuid", 385 + ] 386 + 387 + [[package]] 388 + name = "bevy_animation_macros" 389 + version = "0.17.3" 390 + source = "registry+https://github.com/rust-lang/crates.io-index" 391 + checksum = "d577eae7246a1cda461df1b63188619fc6a3c619adba2a8e5a79e9aa51f64671" 392 + dependencies = [ 393 + "bevy_macro_utils", 394 + "quote", 395 + "syn", 396 + ] 397 + 398 + [[package]] 399 + name = "bevy_anti_alias" 400 + version = "0.17.3" 401 + source = "registry+https://github.com/rust-lang/crates.io-index" 402 + checksum = "15820535cc88bc280f55635eb3ea58df2703a434a0cc2343472eaa7e607fb27b" 403 + dependencies = [ 404 + "bevy_app", 405 + "bevy_asset", 406 + "bevy_camera", 407 + "bevy_core_pipeline", 408 + "bevy_derive", 409 + "bevy_diagnostic", 410 + "bevy_ecs", 411 + "bevy_image", 412 + "bevy_math", 413 + "bevy_reflect", 414 + "bevy_render", 415 + "bevy_shader", 416 + "bevy_utils", 417 + "tracing", 418 + ] 419 + 420 + [[package]] 421 + name = "bevy_app" 422 + version = "0.17.3" 423 + source = "registry+https://github.com/rust-lang/crates.io-index" 424 + checksum = "8e4fc5dfe9d1d9b8233e1878353b5e66a3f5910c2131d3abf68f9a4116b2d433" 425 + dependencies = [ 426 + "bevy_derive", 427 + "bevy_ecs", 428 + "bevy_platform", 429 + "bevy_reflect", 430 + "bevy_tasks", 431 + "bevy_utils", 432 + "cfg-if", 433 + "console_error_panic_hook", 434 + "ctrlc", 435 + "downcast-rs 2.0.2", 436 + "log", 437 + "thiserror 2.0.17", 438 + "variadics_please", 439 + "wasm-bindgen", 440 + "web-sys", 441 + ] 442 + 443 + [[package]] 444 + name = "bevy_asset" 445 + version = "0.17.3" 446 + source = "registry+https://github.com/rust-lang/crates.io-index" 447 + checksum = "357787dbfaba3f73fd185e15d6df70605bddaa774f2ebbcab1aaa031f21fb6c2" 448 + dependencies = [ 449 + "async-broadcast", 450 + "async-fs", 451 + "async-lock", 452 + "atomicow", 453 + "bevy_android", 454 + "bevy_app", 455 + "bevy_asset_macros", 456 + "bevy_ecs", 457 + "bevy_platform", 458 + "bevy_reflect", 459 + "bevy_tasks", 460 + "bevy_utils", 461 + "bitflags 2.10.0", 462 + "blake3", 463 + "crossbeam-channel", 464 + "derive_more", 465 + "disqualified", 466 + "downcast-rs 2.0.2", 467 + "either", 468 + "futures-io", 469 + "futures-lite", 470 + "js-sys", 471 + "parking_lot", 472 + "ron", 473 + "serde", 474 + "stackfuture", 475 + "thiserror 2.0.17", 476 + "tracing", 477 + "uuid", 478 + "wasm-bindgen", 479 + "wasm-bindgen-futures", 480 + "web-sys", 481 + ] 482 + 483 + [[package]] 484 + name = "bevy_asset_macros" 485 + version = "0.17.3" 486 + source = "registry+https://github.com/rust-lang/crates.io-index" 487 + checksum = "afa09271d4ca0bf31fda3a9ad57273775d448a05c4046d9367f71d29968d85b4" 488 + dependencies = [ 489 + "bevy_macro_utils", 490 + "proc-macro2", 491 + "quote", 492 + "syn", 493 + ] 494 + 495 + [[package]] 496 + name = "bevy_audio" 497 + version = "0.17.3" 498 + source = "registry+https://github.com/rust-lang/crates.io-index" 499 + checksum = "d79e56e072001524100b00e38cfdea302d9fdabbff48109fc67b528b27a237bb" 500 + dependencies = [ 501 + "bevy_app", 502 + "bevy_asset", 503 + "bevy_ecs", 504 + "bevy_math", 505 + "bevy_reflect", 506 + "bevy_transform", 507 + "coreaudio-sys", 508 + "cpal", 509 + "rodio", 510 + "tracing", 511 + ] 512 + 513 + [[package]] 514 + name = "bevy_camera" 515 + version = "0.17.3" 516 + source = "registry+https://github.com/rust-lang/crates.io-index" 517 + checksum = "8af1d5a57fde6e577e7b1db58996afb381618294be75a37b3070a20d309678b0" 518 + dependencies = [ 519 + "bevy_app", 520 + "bevy_asset", 521 + "bevy_color", 522 + "bevy_derive", 523 + "bevy_ecs", 524 + "bevy_image", 525 + "bevy_math", 526 + "bevy_mesh", 527 + "bevy_reflect", 528 + "bevy_transform", 529 + "bevy_utils", 530 + "bevy_window", 531 + "derive_more", 532 + "downcast-rs 2.0.2", 533 + "serde", 534 + "smallvec", 535 + "thiserror 2.0.17", 536 + "wgpu-types", 537 + ] 538 + 539 + [[package]] 540 + name = "bevy_color" 541 + version = "0.17.3" 542 + source = "registry+https://github.com/rust-lang/crates.io-index" 543 + checksum = "49504fac6b9897f03b4bdc0189c04ef1ba0a9b37926343aa520a71619e90e116" 544 + dependencies = [ 545 + "bevy_math", 546 + "bevy_reflect", 547 + "bytemuck", 548 + "derive_more", 549 + "encase", 550 + "serde", 551 + "thiserror 2.0.17", 552 + "wgpu-types", 553 + ] 554 + 555 + [[package]] 556 + name = "bevy_core_pipeline" 557 + version = "0.17.3" 558 + source = "registry+https://github.com/rust-lang/crates.io-index" 559 + checksum = "6af7e735685a652a8dba41b886f1330faeb57d4c61398917b7e49b09a7a1c3c1" 560 + dependencies = [ 561 + "bevy_app", 562 + "bevy_asset", 563 + "bevy_camera", 564 + "bevy_color", 565 + "bevy_derive", 566 + "bevy_ecs", 567 + "bevy_image", 568 + "bevy_math", 569 + "bevy_platform", 570 + "bevy_reflect", 571 + "bevy_render", 572 + "bevy_shader", 573 + "bevy_transform", 574 + "bevy_utils", 575 + "bevy_window", 576 + "bitflags 2.10.0", 577 + "nonmax", 578 + "radsort", 579 + "smallvec", 580 + "thiserror 2.0.17", 581 + "tracing", 582 + ] 583 + 584 + [[package]] 585 + name = "bevy_derive" 586 + version = "0.17.3" 587 + source = "registry+https://github.com/rust-lang/crates.io-index" 588 + checksum = "f9396b256b366a43d7f61d1f230cdab0a512fb4712cbf7d688f3d6fce4c5ea8a" 589 + dependencies = [ 590 + "bevy_macro_utils", 591 + "quote", 592 + "syn", 593 + ] 594 + 595 + [[package]] 596 + name = "bevy_diagnostic" 597 + version = "0.17.3" 598 + source = "registry+https://github.com/rust-lang/crates.io-index" 599 + checksum = "d1cdb0ed0c8423570fbbb7c4fc2719a203dd40928fefff45f76ef0889685a446" 600 + dependencies = [ 601 + "atomic-waker", 602 + "bevy_app", 603 + "bevy_ecs", 604 + "bevy_platform", 605 + "bevy_tasks", 606 + "bevy_time", 607 + "const-fnv1a-hash", 608 + "log", 609 + "serde", 610 + "sysinfo", 611 + ] 612 + 613 + [[package]] 614 + name = "bevy_ecs" 615 + version = "0.17.3" 616 + source = "registry+https://github.com/rust-lang/crates.io-index" 617 + checksum = "a7dd5229dd00d00e70ac6b2fc0a139961252f6ce07d3d268cfcac0da86d5bde4" 618 + dependencies = [ 619 + "arrayvec", 620 + "bevy_ecs_macros", 621 + "bevy_platform", 622 + "bevy_ptr", 623 + "bevy_reflect", 624 + "bevy_tasks", 625 + "bevy_utils", 626 + "bitflags 2.10.0", 627 + "bumpalo", 628 + "concurrent-queue", 629 + "derive_more", 630 + "fixedbitset", 631 + "indexmap", 632 + "log", 633 + "nonmax", 634 + "serde", 635 + "slotmap", 636 + "smallvec", 637 + "thiserror 2.0.17", 638 + "variadics_please", 639 + ] 640 + 641 + [[package]] 642 + name = "bevy_ecs_macros" 643 + version = "0.17.3" 644 + source = "registry+https://github.com/rust-lang/crates.io-index" 645 + checksum = "c4d83bdd2285af4867e76c691406e0a4b55611b583d0c45b6ac7bcec1b45fd48" 646 + dependencies = [ 647 + "bevy_macro_utils", 648 + "proc-macro2", 649 + "quote", 650 + "syn", 651 + ] 652 + 653 + [[package]] 654 + name = "bevy_encase_derive" 655 + version = "0.17.3" 656 + source = "registry+https://github.com/rust-lang/crates.io-index" 657 + checksum = "7179e985f3f1b99265cb87fe194db3b00aee8e2914888d621ff9826e1417ee19" 658 + dependencies = [ 659 + "bevy_macro_utils", 660 + "encase_derive_impl", 661 + ] 662 + 663 + [[package]] 664 + name = "bevy_gilrs" 665 + version = "0.17.3" 666 + source = "registry+https://github.com/rust-lang/crates.io-index" 667 + checksum = "a39dd8fdfe93314d47355ab3c58da40b648908a368bc536872f75fad4e8f3755" 668 + dependencies = [ 669 + "bevy_app", 670 + "bevy_ecs", 671 + "bevy_input", 672 + "bevy_platform", 673 + "bevy_time", 674 + "gilrs", 675 + "thiserror 2.0.17", 676 + "tracing", 677 + ] 678 + 679 + [[package]] 680 + name = "bevy_gizmos" 681 + version = "0.17.3" 682 + source = "registry+https://github.com/rust-lang/crates.io-index" 683 + checksum = "7ebb9e3ca4938b48e5111151ce4b08f0e6fc207b854db08fa2d8de15ecabe8f8" 684 + dependencies = [ 685 + "bevy_app", 686 + "bevy_asset", 687 + "bevy_camera", 688 + "bevy_color", 689 + "bevy_core_pipeline", 690 + "bevy_ecs", 691 + "bevy_gizmos_macros", 692 + "bevy_image", 693 + "bevy_light", 694 + "bevy_math", 695 + "bevy_mesh", 696 + "bevy_pbr", 697 + "bevy_reflect", 698 + "bevy_render", 699 + "bevy_shader", 700 + "bevy_sprite_render", 701 + "bevy_time", 702 + "bevy_transform", 703 + "bevy_utils", 704 + "bytemuck", 705 + "tracing", 706 + ] 707 + 708 + [[package]] 709 + name = "bevy_gizmos_macros" 710 + version = "0.17.3" 711 + source = "registry+https://github.com/rust-lang/crates.io-index" 712 + checksum = "92c4b3c3aac86f0db85d4f708883ebdc735c3f88ac5b84c033874fcdd3540a9d" 713 + dependencies = [ 714 + "bevy_macro_utils", 715 + "quote", 716 + "syn", 717 + ] 718 + 719 + [[package]] 720 + name = "bevy_gltf" 721 + version = "0.17.3" 722 + source = "registry+https://github.com/rust-lang/crates.io-index" 723 + checksum = "3479fbaf897320a3ee30c1626b4a1bee0be874ca27699c3b2f3494891d103d9b" 724 + dependencies = [ 725 + "base64", 726 + "bevy_animation", 727 + "bevy_app", 728 + "bevy_asset", 729 + "bevy_camera", 730 + "bevy_color", 731 + "bevy_ecs", 732 + "bevy_image", 733 + "bevy_light", 734 + "bevy_math", 735 + "bevy_mesh", 736 + "bevy_pbr", 737 + "bevy_platform", 738 + "bevy_reflect", 739 + "bevy_render", 740 + "bevy_scene", 741 + "bevy_tasks", 742 + "bevy_transform", 743 + "fixedbitset", 744 + "gltf", 745 + "itertools 0.14.0", 746 + "percent-encoding", 747 + "serde", 748 + "serde_json", 749 + "smallvec", 750 + "thiserror 2.0.17", 751 + "tracing", 752 + ] 753 + 754 + [[package]] 755 + name = "bevy_image" 756 + version = "0.17.3" 757 + source = "registry+https://github.com/rust-lang/crates.io-index" 758 + checksum = "d546bbe2486bfa14971517e7ef427a9384749817c201d3afc60de0325cf52f11" 759 + dependencies = [ 760 + "bevy_app", 761 + "bevy_asset", 762 + "bevy_color", 763 + "bevy_ecs", 764 + "bevy_math", 765 + "bevy_platform", 766 + "bevy_reflect", 767 + "bevy_utils", 768 + "bitflags 2.10.0", 769 + "bytemuck", 770 + "futures-lite", 771 + "guillotiere", 772 + "half", 773 + "image", 774 + "ktx2", 775 + "rectangle-pack", 776 + "ruzstd", 777 + "serde", 778 + "thiserror 2.0.17", 779 + "tracing", 780 + "wgpu-types", 781 + ] 782 + 783 + [[package]] 784 + name = "bevy_input" 785 + version = "0.17.3" 786 + source = "registry+https://github.com/rust-lang/crates.io-index" 787 + checksum = "8ca955b99f4dc2059e9c8574f8d95a5dd5002809fda80d062a94a553c571a467" 788 + dependencies = [ 789 + "bevy_app", 790 + "bevy_ecs", 791 + "bevy_math", 792 + "bevy_platform", 793 + "bevy_reflect", 794 + "derive_more", 795 + "log", 796 + "smol_str", 797 + "thiserror 2.0.17", 798 + ] 799 + 800 + [[package]] 801 + name = "bevy_input_focus" 802 + version = "0.17.3" 803 + source = "registry+https://github.com/rust-lang/crates.io-index" 804 + checksum = "de4d1d0e833e31beba1f28a77152b35f946e8c45df364ec4969d58788ab9de7f" 805 + dependencies = [ 806 + "bevy_app", 807 + "bevy_ecs", 808 + "bevy_input", 809 + "bevy_math", 810 + "bevy_picking", 811 + "bevy_reflect", 812 + "bevy_window", 813 + "log", 814 + "thiserror 2.0.17", 815 + ] 816 + 817 + [[package]] 818 + name = "bevy_internal" 819 + version = "0.17.3" 820 + source = "registry+https://github.com/rust-lang/crates.io-index" 821 + checksum = "8f5e645f9e1a24c9667c768b6233beaf4e241739d8ca4fbba59435cc27aabad5" 822 + dependencies = [ 823 + "bevy_a11y", 824 + "bevy_android", 825 + "bevy_animation", 826 + "bevy_anti_alias", 827 + "bevy_app", 828 + "bevy_asset", 829 + "bevy_audio", 830 + "bevy_camera", 831 + "bevy_color", 832 + "bevy_core_pipeline", 833 + "bevy_derive", 834 + "bevy_diagnostic", 835 + "bevy_ecs", 836 + "bevy_gilrs", 837 + "bevy_gizmos", 838 + "bevy_gltf", 839 + "bevy_image", 840 + "bevy_input", 841 + "bevy_input_focus", 842 + "bevy_light", 843 + "bevy_log", 844 + "bevy_math", 845 + "bevy_mesh", 846 + "bevy_pbr", 847 + "bevy_picking", 848 + "bevy_platform", 849 + "bevy_post_process", 850 + "bevy_ptr", 851 + "bevy_reflect", 852 + "bevy_render", 853 + "bevy_scene", 854 + "bevy_shader", 855 + "bevy_sprite", 856 + "bevy_sprite_render", 857 + "bevy_state", 858 + "bevy_tasks", 859 + "bevy_text", 860 + "bevy_time", 861 + "bevy_transform", 862 + "bevy_ui", 863 + "bevy_ui_render", 864 + "bevy_utils", 865 + "bevy_window", 866 + "bevy_winit", 867 + ] 868 + 869 + [[package]] 870 + name = "bevy_light" 871 + version = "0.17.3" 872 + source = "registry+https://github.com/rust-lang/crates.io-index" 873 + checksum = "47093733280976ebd595f6e25f76603d5067ca4eb7544e59ecb0dd2fc5147810" 874 + dependencies = [ 875 + "bevy_app", 876 + "bevy_asset", 877 + "bevy_camera", 878 + "bevy_color", 879 + "bevy_ecs", 880 + "bevy_image", 881 + "bevy_math", 882 + "bevy_mesh", 883 + "bevy_platform", 884 + "bevy_reflect", 885 + "bevy_transform", 886 + "bevy_utils", 887 + "tracing", 888 + ] 889 + 890 + [[package]] 891 + name = "bevy_log" 892 + version = "0.17.3" 893 + source = "registry+https://github.com/rust-lang/crates.io-index" 894 + checksum = "b1a2d4ea086ac4663ab9dfb056c7b85eee39e18f7e3e9a4ae6e39897eaa155c5" 895 + dependencies = [ 896 + "android_log-sys", 897 + "bevy_app", 898 + "bevy_ecs", 899 + "bevy_platform", 900 + "bevy_utils", 901 + "tracing", 902 + "tracing-log", 903 + "tracing-oslog", 904 + "tracing-subscriber", 905 + "tracing-wasm", 906 + ] 907 + 908 + [[package]] 909 + name = "bevy_macro_utils" 910 + version = "0.17.3" 911 + source = "registry+https://github.com/rust-lang/crates.io-index" 912 + checksum = "62d984f9f8bd0f0d9fb020492a955e641e30e7a425f3588bf346cb3e61fec3c3" 913 + dependencies = [ 914 + "parking_lot", 915 + "proc-macro2", 916 + "quote", 917 + "syn", 918 + "toml_edit", 919 + ] 920 + 921 + [[package]] 922 + name = "bevy_math" 923 + version = "0.17.3" 924 + source = "registry+https://github.com/rust-lang/crates.io-index" 925 + checksum = "5fa74ae5d968749cc073da991757d3c7e3504ac6dbaac5f8c2a54b9d19b0b7ed" 926 + dependencies = [ 927 + "approx", 928 + "bevy_reflect", 929 + "derive_more", 930 + "glam", 931 + "itertools 0.14.0", 932 + "libm", 933 + "rand 0.9.2", 934 + "rand_distr", 935 + "serde", 936 + "smallvec", 937 + "thiserror 2.0.17", 938 + "variadics_please", 939 + ] 940 + 941 + [[package]] 942 + name = "bevy_mesh" 943 + version = "0.17.3" 944 + source = "registry+https://github.com/rust-lang/crates.io-index" 945 + checksum = "cd9a0ea86abbd17655bc6f9f8d94461dfcd0322431f752fc03748df8b335eff2" 946 + dependencies = [ 947 + "bevy_app", 948 + "bevy_asset", 949 + "bevy_derive", 950 + "bevy_ecs", 951 + "bevy_image", 952 + "bevy_math", 953 + "bevy_mikktspace", 954 + "bevy_platform", 955 + "bevy_reflect", 956 + "bevy_transform", 957 + "bitflags 2.10.0", 958 + "bytemuck", 959 + "derive_more", 960 + "hexasphere", 961 + "thiserror 2.0.17", 962 + "tracing", 963 + "wgpu-types", 964 + ] 965 + 966 + [[package]] 967 + name = "bevy_mikktspace" 968 + version = "0.17.0-dev" 969 + source = "registry+https://github.com/rust-lang/crates.io-index" 970 + checksum = "7ef8e4b7e61dfe7719bb03c884dc270cd46a82efb40f93e9933b990c5c190c59" 971 + 972 + [[package]] 973 + name = "bevy_pbr" 974 + version = "0.17.3" 975 + source = "registry+https://github.com/rust-lang/crates.io-index" 976 + checksum = "4c514b950cda849aa64e9b076a235913577370275125a34a478758505a19d776" 977 + dependencies = [ 978 + "bevy_app", 979 + "bevy_asset", 980 + "bevy_camera", 981 + "bevy_color", 982 + "bevy_core_pipeline", 983 + "bevy_derive", 984 + "bevy_diagnostic", 985 + "bevy_ecs", 986 + "bevy_image", 987 + "bevy_light", 988 + "bevy_math", 989 + "bevy_mesh", 990 + "bevy_platform", 991 + "bevy_reflect", 992 + "bevy_render", 993 + "bevy_shader", 994 + "bevy_transform", 995 + "bevy_utils", 996 + "bitflags 2.10.0", 997 + "bytemuck", 998 + "derive_more", 999 + "fixedbitset", 1000 + "nonmax", 1001 + "offset-allocator", 1002 + "smallvec", 1003 + "static_assertions", 1004 + "thiserror 2.0.17", 1005 + "tracing", 1006 + ] 1007 + 1008 + [[package]] 1009 + name = "bevy_picking" 1010 + version = "0.17.3" 1011 + source = "registry+https://github.com/rust-lang/crates.io-index" 1012 + checksum = "b371779713b40dea83b24cdb95054fe999fe8372351a317c4fb768859ac5f010" 1013 + dependencies = [ 1014 + "bevy_app", 1015 + "bevy_asset", 1016 + "bevy_camera", 1017 + "bevy_derive", 1018 + "bevy_ecs", 1019 + "bevy_input", 1020 + "bevy_math", 1021 + "bevy_mesh", 1022 + "bevy_platform", 1023 + "bevy_reflect", 1024 + "bevy_time", 1025 + "bevy_transform", 1026 + "bevy_window", 1027 + "crossbeam-channel", 1028 + "tracing", 1029 + "uuid", 1030 + ] 1031 + 1032 + [[package]] 1033 + name = "bevy_platform" 1034 + version = "0.17.3" 1035 + source = "registry+https://github.com/rust-lang/crates.io-index" 1036 + checksum = "4691af6d7cfd1b5deb2fc926a43a180a546cdc3fe1e5a013fcee60db9bb2c81f" 1037 + dependencies = [ 1038 + "critical-section", 1039 + "foldhash 0.2.0", 1040 + "futures-channel", 1041 + "getrandom 0.3.4", 1042 + "hashbrown 0.16.1", 1043 + "js-sys", 1044 + "portable-atomic", 1045 + "portable-atomic-util", 1046 + "serde", 1047 + "spin", 1048 + "wasm-bindgen", 1049 + "wasm-bindgen-futures", 1050 + "web-time", 1051 + ] 1052 + 1053 + [[package]] 1054 + name = "bevy_post_process" 1055 + version = "0.17.3" 1056 + source = "registry+https://github.com/rust-lang/crates.io-index" 1057 + checksum = "6b857972f5d56b43b0dce2c843b75b64d5fbbd0f6177f6ecccd75e7e41f72deb" 1058 + dependencies = [ 1059 + "bevy_app", 1060 + "bevy_asset", 1061 + "bevy_camera", 1062 + "bevy_color", 1063 + "bevy_core_pipeline", 1064 + "bevy_derive", 1065 + "bevy_ecs", 1066 + "bevy_image", 1067 + "bevy_math", 1068 + "bevy_platform", 1069 + "bevy_reflect", 1070 + "bevy_render", 1071 + "bevy_shader", 1072 + "bevy_transform", 1073 + "bevy_utils", 1074 + "bevy_window", 1075 + "bitflags 2.10.0", 1076 + "nonmax", 1077 + "radsort", 1078 + "smallvec", 1079 + "thiserror 2.0.17", 1080 + "tracing", 1081 + ] 1082 + 1083 + [[package]] 1084 + name = "bevy_ptr" 1085 + version = "0.17.3" 1086 + source = "registry+https://github.com/rust-lang/crates.io-index" 1087 + checksum = "17d24d7906c7de556033168b3485de36c59049fbaef0c2c44c715a23e0329b10" 1088 + 1089 + [[package]] 1090 + name = "bevy_reflect" 1091 + version = "0.17.3" 1092 + source = "registry+https://github.com/rust-lang/crates.io-index" 1093 + checksum = "b5472b91928c0f3e4e3988c0d036b00719f19520f53a0c3f8c2af72f00e693c5" 1094 + dependencies = [ 1095 + "assert_type_match", 1096 + "bevy_platform", 1097 + "bevy_ptr", 1098 + "bevy_reflect_derive", 1099 + "bevy_utils", 1100 + "derive_more", 1101 + "disqualified", 1102 + "downcast-rs 2.0.2", 1103 + "erased-serde", 1104 + "foldhash 0.2.0", 1105 + "glam", 1106 + "inventory", 1107 + "petgraph", 1108 + "serde", 1109 + "smallvec", 1110 + "smol_str", 1111 + "thiserror 2.0.17", 1112 + "uuid", 1113 + "variadics_please", 1114 + "wgpu-types", 1115 + ] 1116 + 1117 + [[package]] 1118 + name = "bevy_reflect_derive" 1119 + version = "0.17.3" 1120 + source = "registry+https://github.com/rust-lang/crates.io-index" 1121 + checksum = "083784255162fa39960aa3cf3c23af0e515db2daa7f2e796ae34df993f4d3f6c" 1122 + dependencies = [ 1123 + "bevy_macro_utils", 1124 + "indexmap", 1125 + "proc-macro2", 1126 + "quote", 1127 + "syn", 1128 + "uuid", 1129 + ] 1130 + 1131 + [[package]] 1132 + name = "bevy_render" 1133 + version = "0.17.3" 1134 + source = "registry+https://github.com/rust-lang/crates.io-index" 1135 + checksum = "44117cbc9448b5a3118eb9c65bd9ec4c574be996148793be2443257daae6eb05" 1136 + dependencies = [ 1137 + "async-channel", 1138 + "bevy_app", 1139 + "bevy_asset", 1140 + "bevy_camera", 1141 + "bevy_color", 1142 + "bevy_derive", 1143 + "bevy_diagnostic", 1144 + "bevy_ecs", 1145 + "bevy_encase_derive", 1146 + "bevy_image", 1147 + "bevy_math", 1148 + "bevy_mesh", 1149 + "bevy_platform", 1150 + "bevy_reflect", 1151 + "bevy_render_macros", 1152 + "bevy_shader", 1153 + "bevy_tasks", 1154 + "bevy_time", 1155 + "bevy_transform", 1156 + "bevy_utils", 1157 + "bevy_window", 1158 + "bitflags 2.10.0", 1159 + "bytemuck", 1160 + "derive_more", 1161 + "downcast-rs 2.0.2", 1162 + "encase", 1163 + "fixedbitset", 1164 + "image", 1165 + "indexmap", 1166 + "js-sys", 1167 + "naga", 1168 + "nonmax", 1169 + "offset-allocator", 1170 + "send_wrapper", 1171 + "smallvec", 1172 + "thiserror 2.0.17", 1173 + "tracing", 1174 + "variadics_please", 1175 + "wasm-bindgen", 1176 + "web-sys", 1177 + "wgpu", 1178 + ] 1179 + 1180 + [[package]] 1181 + name = "bevy_render_macros" 1182 + version = "0.17.3" 1183 + source = "registry+https://github.com/rust-lang/crates.io-index" 1184 + checksum = "f9557b7b6b06b1b70c147581f4f410c2de73b6f6f0e82915887020f953bacb5a" 1185 + dependencies = [ 1186 + "bevy_macro_utils", 1187 + "proc-macro2", 1188 + "quote", 1189 + "syn", 1190 + ] 1191 + 1192 + [[package]] 1193 + name = "bevy_scene" 1194 + version = "0.17.3" 1195 + source = "registry+https://github.com/rust-lang/crates.io-index" 1196 + checksum = "7fcf6efd31fdd1e05724c95900bb1055716c8e3633b05fa731ee75db4241c17d" 1197 + dependencies = [ 1198 + "bevy_app", 1199 + "bevy_asset", 1200 + "bevy_camera", 1201 + "bevy_derive", 1202 + "bevy_ecs", 1203 + "bevy_platform", 1204 + "bevy_reflect", 1205 + "bevy_transform", 1206 + "bevy_utils", 1207 + "derive_more", 1208 + "serde", 1209 + "thiserror 2.0.17", 1210 + "uuid", 1211 + ] 1212 + 1213 + [[package]] 1214 + name = "bevy_shader" 1215 + version = "0.17.3" 1216 + source = "registry+https://github.com/rust-lang/crates.io-index" 1217 + checksum = "a655de9f64e113a6e37be76401fb0d6cb84ed7cc4f891e70af4e39d26e9080c3" 1218 + dependencies = [ 1219 + "bevy_asset", 1220 + "bevy_platform", 1221 + "bevy_reflect", 1222 + "naga", 1223 + "naga_oil", 1224 + "serde", 1225 + "thiserror 2.0.17", 1226 + "tracing", 1227 + "wgpu-types", 1228 + ] 1229 + 1230 + [[package]] 1231 + name = "bevy_sprite" 1232 + version = "0.17.3" 1233 + source = "registry+https://github.com/rust-lang/crates.io-index" 1234 + checksum = "52b9a80aadf102ef0b012ceba5326253638c891994c303479e9973092e4e1c8b" 1235 + dependencies = [ 1236 + "bevy_app", 1237 + "bevy_asset", 1238 + "bevy_camera", 1239 + "bevy_color", 1240 + "bevy_derive", 1241 + "bevy_ecs", 1242 + "bevy_image", 1243 + "bevy_math", 1244 + "bevy_mesh", 1245 + "bevy_picking", 1246 + "bevy_reflect", 1247 + "bevy_text", 1248 + "bevy_transform", 1249 + "bevy_window", 1250 + "radsort", 1251 + "tracing", 1252 + "wgpu-types", 1253 + ] 1254 + 1255 + [[package]] 1256 + name = "bevy_sprite_render" 1257 + version = "0.17.3" 1258 + source = "registry+https://github.com/rust-lang/crates.io-index" 1259 + checksum = "5eec49a2a9185526f9828559a40b6f66d4c2dbae2df8ea2936d88ba449a5e86a" 1260 + dependencies = [ 1261 + "bevy_app", 1262 + "bevy_asset", 1263 + "bevy_camera", 1264 + "bevy_color", 1265 + "bevy_core_pipeline", 1266 + "bevy_derive", 1267 + "bevy_ecs", 1268 + "bevy_image", 1269 + "bevy_math", 1270 + "bevy_mesh", 1271 + "bevy_platform", 1272 + "bevy_reflect", 1273 + "bevy_render", 1274 + "bevy_shader", 1275 + "bevy_sprite", 1276 + "bevy_text", 1277 + "bevy_transform", 1278 + "bevy_utils", 1279 + "bitflags 2.10.0", 1280 + "bytemuck", 1281 + "derive_more", 1282 + "fixedbitset", 1283 + "nonmax", 1284 + "tracing", 1285 + ] 1286 + 1287 + [[package]] 1288 + name = "bevy_state" 1289 + version = "0.17.3" 1290 + source = "registry+https://github.com/rust-lang/crates.io-index" 1291 + checksum = "05e8556a55d548844fc067fac6657b62f8073c94bd7e13c86aa7573f4c2a67b3" 1292 + dependencies = [ 1293 + "bevy_app", 1294 + "bevy_ecs", 1295 + "bevy_platform", 1296 + "bevy_reflect", 1297 + "bevy_state_macros", 1298 + "bevy_utils", 1299 + "log", 1300 + "variadics_please", 1301 + ] 1302 + 1303 + [[package]] 1304 + name = "bevy_state_macros" 1305 + version = "0.17.3" 1306 + source = "registry+https://github.com/rust-lang/crates.io-index" 1307 + checksum = "bcda45913b1d6470c6b751656e72fb3f25ca6b5b7b2ee055b294aaed1eb7e5ba" 1308 + dependencies = [ 1309 + "bevy_macro_utils", 1310 + "quote", 1311 + "syn", 1312 + ] 1313 + 1314 + [[package]] 1315 + name = "bevy_tasks" 1316 + version = "0.17.3" 1317 + source = "registry+https://github.com/rust-lang/crates.io-index" 1318 + checksum = "bcbbfa5a58a16c4228434d3018c23fde3d78dcd76ec5f5b2b482a21f4b158dd3" 1319 + dependencies = [ 1320 + "async-channel", 1321 + "async-executor", 1322 + "async-task", 1323 + "atomic-waker", 1324 + "bevy_platform", 1325 + "concurrent-queue", 1326 + "crossbeam-queue", 1327 + "derive_more", 1328 + "futures-lite", 1329 + "heapless", 1330 + "pin-project", 1331 + ] 1332 + 1333 + [[package]] 1334 + name = "bevy_text" 1335 + version = "0.17.3" 1336 + source = "registry+https://github.com/rust-lang/crates.io-index" 1337 + checksum = "fc144cc6a30ed44a88e342c22d9e3a66a0993a74f792ae07ba79318efb41a86d" 1338 + dependencies = [ 1339 + "bevy_app", 1340 + "bevy_asset", 1341 + "bevy_color", 1342 + "bevy_derive", 1343 + "bevy_ecs", 1344 + "bevy_image", 1345 + "bevy_log", 1346 + "bevy_math", 1347 + "bevy_platform", 1348 + "bevy_reflect", 1349 + "bevy_utils", 1350 + "cosmic-text", 1351 + "serde", 1352 + "smallvec", 1353 + "sys-locale", 1354 + "thiserror 2.0.17", 1355 + "tracing", 1356 + "wgpu-types", 1357 + ] 1358 + 1359 + [[package]] 1360 + name = "bevy_time" 1361 + version = "0.17.3" 1362 + source = "registry+https://github.com/rust-lang/crates.io-index" 1363 + checksum = "32835c3dbe082fbbe7d4f2f37f655073421f2882d4320ac2d59f922474260de4" 1364 + dependencies = [ 1365 + "bevy_app", 1366 + "bevy_ecs", 1367 + "bevy_platform", 1368 + "bevy_reflect", 1369 + "crossbeam-channel", 1370 + "log", 1371 + "serde", 1372 + ] 1373 + 1374 + [[package]] 1375 + name = "bevy_transform" 1376 + version = "0.17.3" 1377 + source = "registry+https://github.com/rust-lang/crates.io-index" 1378 + checksum = "b41fabfeaa53f51ff5ccf4d87e66836293159d50d21f6d3e16c93efb7c30f969" 1379 + dependencies = [ 1380 + "bevy_app", 1381 + "bevy_ecs", 1382 + "bevy_log", 1383 + "bevy_math", 1384 + "bevy_reflect", 1385 + "bevy_tasks", 1386 + "bevy_utils", 1387 + "derive_more", 1388 + "serde", 1389 + "thiserror 2.0.17", 1390 + ] 1391 + 1392 + [[package]] 1393 + name = "bevy_ui" 1394 + version = "0.17.3" 1395 + source = "registry+https://github.com/rust-lang/crates.io-index" 1396 + checksum = "aa0fe27b8c641c2537480774dfd9198d56779371b04dd76618db39da4e7c7483" 1397 + dependencies = [ 1398 + "accesskit", 1399 + "bevy_a11y", 1400 + "bevy_app", 1401 + "bevy_asset", 1402 + "bevy_camera", 1403 + "bevy_color", 1404 + "bevy_derive", 1405 + "bevy_ecs", 1406 + "bevy_image", 1407 + "bevy_input", 1408 + "bevy_math", 1409 + "bevy_picking", 1410 + "bevy_platform", 1411 + "bevy_reflect", 1412 + "bevy_sprite", 1413 + "bevy_text", 1414 + "bevy_transform", 1415 + "bevy_utils", 1416 + "bevy_window", 1417 + "derive_more", 1418 + "smallvec", 1419 + "taffy", 1420 + "thiserror 2.0.17", 1421 + "tracing", 1422 + "uuid", 1423 + ] 1424 + 1425 + [[package]] 1426 + name = "bevy_ui_render" 1427 + version = "0.17.3" 1428 + source = "registry+https://github.com/rust-lang/crates.io-index" 1429 + checksum = "d1d2e783bb5f0b748e6360a0055421d5c934b43830b205a84996a75e54330cd7" 1430 + dependencies = [ 1431 + "bevy_app", 1432 + "bevy_asset", 1433 + "bevy_camera", 1434 + "bevy_color", 1435 + "bevy_core_pipeline", 1436 + "bevy_derive", 1437 + "bevy_ecs", 1438 + "bevy_image", 1439 + "bevy_math", 1440 + "bevy_mesh", 1441 + "bevy_platform", 1442 + "bevy_reflect", 1443 + "bevy_render", 1444 + "bevy_shader", 1445 + "bevy_sprite", 1446 + "bevy_sprite_render", 1447 + "bevy_text", 1448 + "bevy_transform", 1449 + "bevy_ui", 1450 + "bevy_utils", 1451 + "bytemuck", 1452 + "derive_more", 1453 + "tracing", 1454 + ] 1455 + 1456 + [[package]] 1457 + name = "bevy_utils" 1458 + version = "0.17.3" 1459 + source = "registry+https://github.com/rust-lang/crates.io-index" 1460 + checksum = "789d04f88c764877a4552e07745b402dbc45f5d0545e6d102558f2f1752a1d89" 1461 + dependencies = [ 1462 + "bevy_platform", 1463 + "disqualified", 1464 + "thread_local", 1465 + ] 1466 + 1467 + [[package]] 1468 + name = "bevy_window" 1469 + version = "0.17.3" 1470 + source = "registry+https://github.com/rust-lang/crates.io-index" 1471 + checksum = "8ae54ec7a0fc344278592a688a01b57b32182abc3ca7d47040773c4cbc2e15e0" 1472 + dependencies = [ 1473 + "bevy_app", 1474 + "bevy_asset", 1475 + "bevy_ecs", 1476 + "bevy_image", 1477 + "bevy_input", 1478 + "bevy_math", 1479 + "bevy_platform", 1480 + "bevy_reflect", 1481 + "log", 1482 + "raw-window-handle", 1483 + "serde", 1484 + ] 1485 + 1486 + [[package]] 1487 + name = "bevy_winit" 1488 + version = "0.17.3" 1489 + source = "registry+https://github.com/rust-lang/crates.io-index" 1490 + checksum = "feeaa46d3c4480323e690de8a4ca7f914c074af1f5f70ee3246392992dbf4a0c" 1491 + dependencies = [ 1492 + "accesskit", 1493 + "accesskit_winit", 1494 + "approx", 1495 + "bevy_a11y", 1496 + "bevy_android", 1497 + "bevy_app", 1498 + "bevy_asset", 1499 + "bevy_derive", 1500 + "bevy_ecs", 1501 + "bevy_image", 1502 + "bevy_input", 1503 + "bevy_input_focus", 1504 + "bevy_log", 1505 + "bevy_math", 1506 + "bevy_platform", 1507 + "bevy_reflect", 1508 + "bevy_tasks", 1509 + "bevy_window", 1510 + "bytemuck", 1511 + "cfg-if", 1512 + "js-sys", 1513 + "tracing", 1514 + "wasm-bindgen", 1515 + "web-sys", 1516 + "wgpu-types", 1517 + "winit", 1518 + ] 1519 + 1520 + [[package]] 1521 + name = "bindgen" 1522 + version = "0.72.1" 1523 + source = "registry+https://github.com/rust-lang/crates.io-index" 1524 + checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895" 1525 + dependencies = [ 1526 + "bitflags 2.10.0", 1527 + "cexpr", 1528 + "clang-sys", 1529 + "itertools 0.13.0", 1530 + "proc-macro2", 1531 + "quote", 1532 + "regex", 1533 + "rustc-hash 2.1.1", 1534 + "shlex", 1535 + "syn", 1536 + ] 1537 + 1538 + [[package]] 1539 + name = "bit-set" 1540 + version = "0.8.0" 1541 + source = "registry+https://github.com/rust-lang/crates.io-index" 1542 + checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" 1543 + dependencies = [ 1544 + "bit-vec", 1545 + ] 1546 + 1547 + [[package]] 1548 + name = "bit-vec" 1549 + version = "0.8.0" 1550 + source = "registry+https://github.com/rust-lang/crates.io-index" 1551 + checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" 1552 + 1553 + [[package]] 1554 + name = "bitflags" 1555 + version = "1.3.2" 1556 + source = "registry+https://github.com/rust-lang/crates.io-index" 1557 + checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 1558 + 1559 + [[package]] 1560 + name = "bitflags" 1561 + version = "2.10.0" 1562 + source = "registry+https://github.com/rust-lang/crates.io-index" 1563 + checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" 1564 + dependencies = [ 1565 + "bytemuck", 1566 + "serde_core", 1567 + ] 1568 + 1569 + [[package]] 1570 + name = "blake3" 1571 + version = "1.8.2" 1572 + source = "registry+https://github.com/rust-lang/crates.io-index" 1573 + checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" 1574 + dependencies = [ 1575 + "arrayref", 1576 + "arrayvec", 1577 + "cc", 1578 + "cfg-if", 1579 + "constant_time_eq", 1580 + ] 1581 + 1582 + [[package]] 1583 + name = "block" 1584 + version = "0.1.6" 1585 + source = "registry+https://github.com/rust-lang/crates.io-index" 1586 + checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" 1587 + 1588 + [[package]] 1589 + name = "block2" 1590 + version = "0.5.1" 1591 + source = "registry+https://github.com/rust-lang/crates.io-index" 1592 + checksum = "2c132eebf10f5cad5289222520a4a058514204aed6d791f1cf4fe8088b82d15f" 1593 + dependencies = [ 1594 + "objc2 0.5.2", 1595 + ] 1596 + 1597 + [[package]] 1598 + name = "block2" 1599 + version = "0.6.2" 1600 + source = "registry+https://github.com/rust-lang/crates.io-index" 1601 + checksum = "cdeb9d870516001442e364c5220d3574d2da8dc765554b4a617230d33fa58ef5" 1602 + dependencies = [ 1603 + "objc2 0.6.3", 1604 + ] 1605 + 1606 + [[package]] 1607 + name = "blocking" 1608 + version = "1.6.2" 1609 + source = "registry+https://github.com/rust-lang/crates.io-index" 1610 + checksum = "e83f8d02be6967315521be875afa792a316e28d57b5a2d401897e2a7921b7f21" 1611 + dependencies = [ 1612 + "async-channel", 1613 + "async-task", 1614 + "futures-io", 1615 + "futures-lite", 1616 + "piper", 1617 + ] 1618 + 1619 + [[package]] 1620 + name = "bumpalo" 1621 + version = "3.19.0" 1622 + source = "registry+https://github.com/rust-lang/crates.io-index" 1623 + checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" 1624 + 1625 + [[package]] 1626 + name = "bytemuck" 1627 + version = "1.24.0" 1628 + source = "registry+https://github.com/rust-lang/crates.io-index" 1629 + checksum = "1fbdf580320f38b612e485521afda1ee26d10cc9884efaaa750d383e13e3c5f4" 1630 + dependencies = [ 1631 + "bytemuck_derive", 1632 + ] 1633 + 1634 + [[package]] 1635 + name = "bytemuck_derive" 1636 + version = "1.10.2" 1637 + source = "registry+https://github.com/rust-lang/crates.io-index" 1638 + checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" 1639 + dependencies = [ 1640 + "proc-macro2", 1641 + "quote", 1642 + "syn", 1643 + ] 1644 + 1645 + [[package]] 1646 + name = "byteorder" 1647 + version = "1.5.0" 1648 + source = "registry+https://github.com/rust-lang/crates.io-index" 1649 + checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" 1650 + 1651 + [[package]] 1652 + name = "byteorder-lite" 1653 + version = "0.1.0" 1654 + source = "registry+https://github.com/rust-lang/crates.io-index" 1655 + checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495" 1656 + 1657 + [[package]] 1658 + name = "bytes" 1659 + version = "1.11.0" 1660 + source = "registry+https://github.com/rust-lang/crates.io-index" 1661 + checksum = "b35204fbdc0b3f4446b89fc1ac2cf84a8a68971995d0bf2e925ec7cd960f9cb3" 1662 + 1663 + [[package]] 1664 + name = "calloop" 1665 + version = "0.13.0" 1666 + source = "registry+https://github.com/rust-lang/crates.io-index" 1667 + checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec" 1668 + dependencies = [ 1669 + "bitflags 2.10.0", 1670 + "log", 1671 + "polling", 1672 + "rustix 0.38.44", 1673 + "slab", 1674 + "thiserror 1.0.69", 1675 + ] 1676 + 1677 + [[package]] 1678 + name = "calloop-wayland-source" 1679 + version = "0.3.0" 1680 + source = "registry+https://github.com/rust-lang/crates.io-index" 1681 + checksum = "95a66a987056935f7efce4ab5668920b5d0dac4a7c99991a67395f13702ddd20" 1682 + dependencies = [ 1683 + "calloop", 1684 + "rustix 0.38.44", 1685 + "wayland-backend", 1686 + "wayland-client", 1687 + ] 1688 + 1689 + [[package]] 1690 + name = "cc" 1691 + version = "1.2.47" 1692 + source = "registry+https://github.com/rust-lang/crates.io-index" 1693 + checksum = "cd405d82c84ff7f35739f175f67d8b9fb7687a0e84ccdc78bd3568839827cf07" 1694 + dependencies = [ 1695 + "find-msvc-tools", 1696 + "jobserver", 1697 + "libc", 1698 + "shlex", 1699 + ] 1700 + 1701 + [[package]] 1702 + name = "cesu8" 1703 + version = "1.1.0" 1704 + source = "registry+https://github.com/rust-lang/crates.io-index" 1705 + checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" 1706 + 1707 + [[package]] 1708 + name = "cexpr" 1709 + version = "0.6.0" 1710 + source = "registry+https://github.com/rust-lang/crates.io-index" 1711 + checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" 1712 + dependencies = [ 1713 + "nom", 1714 + ] 1715 + 1716 + [[package]] 1717 + name = "cfg-if" 1718 + version = "1.0.4" 1719 + source = "registry+https://github.com/rust-lang/crates.io-index" 1720 + checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" 1721 + 1722 + [[package]] 1723 + name = "cfg_aliases" 1724 + version = "0.2.1" 1725 + source = "registry+https://github.com/rust-lang/crates.io-index" 1726 + checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" 1727 + 1728 + [[package]] 1729 + name = "clang-sys" 1730 + version = "1.8.1" 1731 + source = "registry+https://github.com/rust-lang/crates.io-index" 1732 + checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" 1733 + dependencies = [ 1734 + "glob", 1735 + "libc", 1736 + "libloading", 1737 + ] 1738 + 1739 + [[package]] 1740 + name = "codespan-reporting" 1741 + version = "0.12.0" 1742 + source = "registry+https://github.com/rust-lang/crates.io-index" 1743 + checksum = "fe6d2e5af09e8c8ad56c969f2157a3d4238cebc7c55f0a517728c38f7b200f81" 1744 + dependencies = [ 1745 + "serde", 1746 + "termcolor", 1747 + "unicode-width", 1748 + ] 1749 + 1750 + [[package]] 1751 + name = "combine" 1752 + version = "4.6.7" 1753 + source = "registry+https://github.com/rust-lang/crates.io-index" 1754 + checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" 1755 + dependencies = [ 1756 + "bytes", 1757 + "memchr", 1758 + ] 1759 + 1760 + [[package]] 1761 + name = "concurrent-queue" 1762 + version = "2.5.0" 1763 + source = "registry+https://github.com/rust-lang/crates.io-index" 1764 + checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" 1765 + dependencies = [ 1766 + "crossbeam-utils", 1767 + "portable-atomic", 1768 + ] 1769 + 1770 + [[package]] 1771 + name = "console_error_panic_hook" 1772 + version = "0.1.7" 1773 + source = "registry+https://github.com/rust-lang/crates.io-index" 1774 + checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" 1775 + dependencies = [ 1776 + "cfg-if", 1777 + "wasm-bindgen", 1778 + ] 1779 + 1780 + [[package]] 1781 + name = "const-fnv1a-hash" 1782 + version = "1.1.0" 1783 + source = "registry+https://github.com/rust-lang/crates.io-index" 1784 + checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" 1785 + 1786 + [[package]] 1787 + name = "const_panic" 1788 + version = "0.2.15" 1789 + source = "registry+https://github.com/rust-lang/crates.io-index" 1790 + checksum = "e262cdaac42494e3ae34c43969f9cdeb7da178bdb4b66fa6a1ea2edb4c8ae652" 1791 + dependencies = [ 1792 + "typewit", 1793 + ] 1794 + 1795 + [[package]] 1796 + name = "const_soft_float" 1797 + version = "0.1.4" 1798 + source = "registry+https://github.com/rust-lang/crates.io-index" 1799 + checksum = "87ca1caa64ef4ed453e68bb3db612e51cf1b2f5b871337f0fcab1c8f87cc3dff" 1800 + 1801 + [[package]] 1802 + name = "constant_time_eq" 1803 + version = "0.3.1" 1804 + source = "registry+https://github.com/rust-lang/crates.io-index" 1805 + checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" 1806 + 1807 + [[package]] 1808 + name = "constgebra" 1809 + version = "0.1.4" 1810 + source = "registry+https://github.com/rust-lang/crates.io-index" 1811 + checksum = "e1aaf9b65849a68662ac6c0810c8893a765c960b907dd7cfab9c4a50bf764fbc" 1812 + dependencies = [ 1813 + "const_soft_float", 1814 + ] 1815 + 1816 + [[package]] 1817 + name = "core-foundation" 1818 + version = "0.9.4" 1819 + source = "registry+https://github.com/rust-lang/crates.io-index" 1820 + checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" 1821 + dependencies = [ 1822 + "core-foundation-sys", 1823 + "libc", 1824 + ] 1825 + 1826 + [[package]] 1827 + name = "core-foundation" 1828 + version = "0.10.1" 1829 + source = "registry+https://github.com/rust-lang/crates.io-index" 1830 + checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" 1831 + dependencies = [ 1832 + "core-foundation-sys", 1833 + "libc", 1834 + ] 1835 + 1836 + [[package]] 1837 + name = "core-foundation-sys" 1838 + version = "0.8.7" 1839 + source = "registry+https://github.com/rust-lang/crates.io-index" 1840 + checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" 1841 + 1842 + [[package]] 1843 + name = "core-graphics" 1844 + version = "0.23.2" 1845 + source = "registry+https://github.com/rust-lang/crates.io-index" 1846 + checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081" 1847 + dependencies = [ 1848 + "bitflags 1.3.2", 1849 + "core-foundation 0.9.4", 1850 + "core-graphics-types 0.1.3", 1851 + "foreign-types", 1852 + "libc", 1853 + ] 1854 + 1855 + [[package]] 1856 + name = "core-graphics-types" 1857 + version = "0.1.3" 1858 + source = "registry+https://github.com/rust-lang/crates.io-index" 1859 + checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" 1860 + dependencies = [ 1861 + "bitflags 1.3.2", 1862 + "core-foundation 0.9.4", 1863 + "libc", 1864 + ] 1865 + 1866 + [[package]] 1867 + name = "core-graphics-types" 1868 + version = "0.2.0" 1869 + source = "registry+https://github.com/rust-lang/crates.io-index" 1870 + checksum = "3d44a101f213f6c4cdc1853d4b78aef6db6bdfa3468798cc1d9912f4735013eb" 1871 + dependencies = [ 1872 + "bitflags 2.10.0", 1873 + "core-foundation 0.10.1", 1874 + "libc", 1875 + ] 1876 + 1877 + [[package]] 1878 + name = "coreaudio-rs" 1879 + version = "0.11.3" 1880 + source = "registry+https://github.com/rust-lang/crates.io-index" 1881 + checksum = "321077172d79c662f64f5071a03120748d5bb652f5231570141be24cfcd2bace" 1882 + dependencies = [ 1883 + "bitflags 1.3.2", 1884 + "core-foundation-sys", 1885 + "coreaudio-sys", 1886 + ] 1887 + 1888 + [[package]] 1889 + name = "coreaudio-sys" 1890 + version = "0.2.17" 1891 + source = "registry+https://github.com/rust-lang/crates.io-index" 1892 + checksum = "ceec7a6067e62d6f931a2baf6f3a751f4a892595bcec1461a3c94ef9949864b6" 1893 + dependencies = [ 1894 + "bindgen", 1895 + ] 1896 + 1897 + [[package]] 1898 + name = "cosmic-text" 1899 + version = "0.14.2" 1900 + source = "registry+https://github.com/rust-lang/crates.io-index" 1901 + checksum = "da46a9d5a8905cc538a4a5bceb6a4510de7a51049c5588c0114efce102bcbbe8" 1902 + dependencies = [ 1903 + "bitflags 2.10.0", 1904 + "fontdb", 1905 + "log", 1906 + "rangemap", 1907 + "rustc-hash 1.1.0", 1908 + "rustybuzz", 1909 + "self_cell", 1910 + "smol_str", 1911 + "swash", 1912 + "sys-locale", 1913 + "ttf-parser 0.21.1", 1914 + "unicode-bidi", 1915 + "unicode-linebreak", 1916 + "unicode-script", 1917 + "unicode-segmentation", 1918 + ] 1919 + 1920 + [[package]] 1921 + name = "cpal" 1922 + version = "0.15.3" 1923 + source = "registry+https://github.com/rust-lang/crates.io-index" 1924 + checksum = "873dab07c8f743075e57f524c583985fbaf745602acbe916a01539364369a779" 1925 + dependencies = [ 1926 + "alsa", 1927 + "core-foundation-sys", 1928 + "coreaudio-rs", 1929 + "dasp_sample", 1930 + "jni", 1931 + "js-sys", 1932 + "libc", 1933 + "mach2", 1934 + "ndk 0.8.0", 1935 + "ndk-context", 1936 + "oboe", 1937 + "wasm-bindgen", 1938 + "wasm-bindgen-futures", 1939 + "web-sys", 1940 + "windows 0.54.0", 1941 + ] 1942 + 1943 + [[package]] 1944 + name = "crc32fast" 1945 + version = "1.5.0" 1946 + source = "registry+https://github.com/rust-lang/crates.io-index" 1947 + checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" 1948 + dependencies = [ 1949 + "cfg-if", 1950 + ] 1951 + 1952 + [[package]] 1953 + name = "critical-section" 1954 + version = "1.2.0" 1955 + source = "registry+https://github.com/rust-lang/crates.io-index" 1956 + checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b" 1957 + 1958 + [[package]] 1959 + name = "crossbeam-channel" 1960 + version = "0.5.15" 1961 + source = "registry+https://github.com/rust-lang/crates.io-index" 1962 + checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" 1963 + dependencies = [ 1964 + "crossbeam-utils", 1965 + ] 1966 + 1967 + [[package]] 1968 + name = "crossbeam-queue" 1969 + version = "0.3.12" 1970 + source = "registry+https://github.com/rust-lang/crates.io-index" 1971 + checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115" 1972 + dependencies = [ 1973 + "crossbeam-utils", 1974 + ] 1975 + 1976 + [[package]] 1977 + name = "crossbeam-utils" 1978 + version = "0.8.21" 1979 + source = "registry+https://github.com/rust-lang/crates.io-index" 1980 + checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" 1981 + 1982 + [[package]] 1983 + name = "crunchy" 1984 + version = "0.2.4" 1985 + source = "registry+https://github.com/rust-lang/crates.io-index" 1986 + checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" 1987 + 1988 + [[package]] 1989 + name = "ctrlc" 1990 + version = "3.5.1" 1991 + source = "registry+https://github.com/rust-lang/crates.io-index" 1992 + checksum = "73736a89c4aff73035ba2ed2e565061954da00d4970fc9ac25dcc85a2a20d790" 1993 + dependencies = [ 1994 + "dispatch2", 1995 + "nix", 1996 + "windows-sys 0.61.2", 1997 + ] 1998 + 1999 + [[package]] 2000 + name = "cursor-icon" 2001 + version = "1.2.0" 2002 + source = "registry+https://github.com/rust-lang/crates.io-index" 2003 + checksum = "f27ae1dd37df86211c42e150270f82743308803d90a6f6e6651cd730d5e1732f" 2004 + 2005 + [[package]] 2006 + name = "dasp_sample" 2007 + version = "0.11.0" 2008 + source = "registry+https://github.com/rust-lang/crates.io-index" 2009 + checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f" 2010 + 2011 + [[package]] 2012 + name = "data-encoding" 2013 + version = "2.9.0" 2014 + source = "registry+https://github.com/rust-lang/crates.io-index" 2015 + checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" 2016 + 2017 + [[package]] 2018 + name = "derive_more" 2019 + version = "2.0.1" 2020 + source = "registry+https://github.com/rust-lang/crates.io-index" 2021 + checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" 2022 + dependencies = [ 2023 + "derive_more-impl", 2024 + ] 2025 + 2026 + [[package]] 2027 + name = "derive_more-impl" 2028 + version = "2.0.1" 2029 + source = "registry+https://github.com/rust-lang/crates.io-index" 2030 + checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" 2031 + dependencies = [ 2032 + "proc-macro2", 2033 + "quote", 2034 + "syn", 2035 + "unicode-xid", 2036 + ] 2037 + 2038 + [[package]] 2039 + name = "dispatch" 2040 + version = "0.2.0" 2041 + source = "registry+https://github.com/rust-lang/crates.io-index" 2042 + checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" 2043 + 2044 + [[package]] 2045 + name = "dispatch2" 2046 + version = "0.3.0" 2047 + source = "registry+https://github.com/rust-lang/crates.io-index" 2048 + checksum = "89a09f22a6c6069a18470eb92d2298acf25463f14256d24778e1230d789a2aec" 2049 + dependencies = [ 2050 + "bitflags 2.10.0", 2051 + "block2 0.6.2", 2052 + "libc", 2053 + "objc2 0.6.3", 2054 + ] 2055 + 2056 + [[package]] 2057 + name = "disqualified" 2058 + version = "1.0.0" 2059 + source = "registry+https://github.com/rust-lang/crates.io-index" 2060 + checksum = "c9c272297e804878a2a4b707cfcfc6d2328b5bb936944613b4fdf2b9269afdfd" 2061 + 2062 + [[package]] 2063 + name = "dlib" 2064 + version = "0.5.2" 2065 + source = "registry+https://github.com/rust-lang/crates.io-index" 2066 + checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" 2067 + dependencies = [ 2068 + "libloading", 2069 + ] 2070 + 2071 + [[package]] 2072 + name = "document-features" 2073 + version = "0.2.12" 2074 + source = "registry+https://github.com/rust-lang/crates.io-index" 2075 + checksum = "d4b8a88685455ed29a21542a33abd9cb6510b6b129abadabdcef0f4c55bc8f61" 2076 + dependencies = [ 2077 + "litrs", 2078 + ] 2079 + 2080 + [[package]] 2081 + name = "downcast-rs" 2082 + version = "1.2.1" 2083 + source = "registry+https://github.com/rust-lang/crates.io-index" 2084 + checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" 2085 + 2086 + [[package]] 2087 + name = "downcast-rs" 2088 + version = "2.0.2" 2089 + source = "registry+https://github.com/rust-lang/crates.io-index" 2090 + checksum = "117240f60069e65410b3ae1bb213295bd828f707b5bec6596a1afc8793ce0cbc" 2091 + 2092 + [[package]] 2093 + name = "dpi" 2094 + version = "0.1.2" 2095 + source = "registry+https://github.com/rust-lang/crates.io-index" 2096 + checksum = "d8b14ccef22fc6f5a8f4d7d768562a182c04ce9a3b3157b91390b52ddfdf1a76" 2097 + 2098 + [[package]] 2099 + name = "either" 2100 + version = "1.15.0" 2101 + source = "registry+https://github.com/rust-lang/crates.io-index" 2102 + checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" 2103 + 2104 + [[package]] 2105 + name = "encase" 2106 + version = "0.11.2" 2107 + source = "registry+https://github.com/rust-lang/crates.io-index" 2108 + checksum = "02ba239319a4f60905966390f5e52799d868103a533bb7e27822792332504ddd" 2109 + dependencies = [ 2110 + "const_panic", 2111 + "encase_derive", 2112 + "glam", 2113 + "thiserror 2.0.17", 2114 + ] 2115 + 2116 + [[package]] 2117 + name = "encase_derive" 2118 + version = "0.11.2" 2119 + source = "registry+https://github.com/rust-lang/crates.io-index" 2120 + checksum = "5223d6c647f09870553224f6e37261fe5567bc5a4f4cf13ed337476e79990f2f" 2121 + dependencies = [ 2122 + "encase_derive_impl", 2123 + ] 2124 + 2125 + [[package]] 2126 + name = "encase_derive_impl" 2127 + version = "0.11.2" 2128 + source = "registry+https://github.com/rust-lang/crates.io-index" 2129 + checksum = "1796db3d892515842ca2dfb11124c4bb4a9e58d9f2c5c1072e5bca1b2334507b" 2130 + dependencies = [ 2131 + "proc-macro2", 2132 + "quote", 2133 + "syn", 2134 + ] 2135 + 2136 + [[package]] 2137 + name = "equivalent" 2138 + version = "1.0.2" 2139 + source = "registry+https://github.com/rust-lang/crates.io-index" 2140 + checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" 2141 + 2142 + [[package]] 2143 + name = "erased-serde" 2144 + version = "0.4.9" 2145 + source = "registry+https://github.com/rust-lang/crates.io-index" 2146 + checksum = "89e8918065695684b2b0702da20382d5ae6065cf3327bc2d6436bd49a71ce9f3" 2147 + dependencies = [ 2148 + "serde", 2149 + "serde_core", 2150 + "typeid", 2151 + ] 2152 + 2153 + [[package]] 2154 + name = "errno" 2155 + version = "0.3.14" 2156 + source = "registry+https://github.com/rust-lang/crates.io-index" 2157 + checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" 2158 + dependencies = [ 2159 + "libc", 2160 + "windows-sys 0.61.2", 2161 + ] 2162 + 2163 + [[package]] 2164 + name = "euclid" 2165 + version = "0.22.11" 2166 + source = "registry+https://github.com/rust-lang/crates.io-index" 2167 + checksum = "ad9cdb4b747e485a12abb0e6566612956c7a1bafa3bdb8d682c5b6d403589e48" 2168 + dependencies = [ 2169 + "num-traits", 2170 + ] 2171 + 2172 + [[package]] 2173 + name = "event-listener" 2174 + version = "5.4.1" 2175 + source = "registry+https://github.com/rust-lang/crates.io-index" 2176 + checksum = "e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab" 2177 + dependencies = [ 2178 + "concurrent-queue", 2179 + "parking", 2180 + "pin-project-lite", 2181 + ] 2182 + 2183 + [[package]] 2184 + name = "event-listener-strategy" 2185 + version = "0.5.4" 2186 + source = "registry+https://github.com/rust-lang/crates.io-index" 2187 + checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" 2188 + dependencies = [ 2189 + "event-listener", 2190 + "pin-project-lite", 2191 + ] 2192 + 2193 + [[package]] 2194 + name = "fastrand" 2195 + version = "2.3.0" 2196 + source = "registry+https://github.com/rust-lang/crates.io-index" 2197 + checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" 2198 + 2199 + [[package]] 2200 + name = "fdeflate" 2201 + version = "0.3.7" 2202 + source = "registry+https://github.com/rust-lang/crates.io-index" 2203 + checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c" 2204 + dependencies = [ 2205 + "simd-adler32", 2206 + ] 2207 + 2208 + [[package]] 2209 + name = "felix" 2210 + version = "0.1.0" 2211 + dependencies = [ 2212 + "anyhow", 2213 + "bevy", 2214 + "nanoid", 2215 + ] 2216 + 2217 + [[package]] 2218 + name = "find-msvc-tools" 2219 + version = "0.1.5" 2220 + source = "registry+https://github.com/rust-lang/crates.io-index" 2221 + checksum = "3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844" 2222 + 2223 + [[package]] 2224 + name = "fixedbitset" 2225 + version = "0.5.7" 2226 + source = "registry+https://github.com/rust-lang/crates.io-index" 2227 + checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" 2228 + 2229 + [[package]] 2230 + name = "flate2" 2231 + version = "1.1.5" 2232 + source = "registry+https://github.com/rust-lang/crates.io-index" 2233 + checksum = "bfe33edd8e85a12a67454e37f8c75e730830d83e313556ab9ebf9ee7fbeb3bfb" 2234 + dependencies = [ 2235 + "crc32fast", 2236 + "miniz_oxide", 2237 + ] 2238 + 2239 + [[package]] 2240 + name = "fnv" 2241 + version = "1.0.7" 2242 + source = "registry+https://github.com/rust-lang/crates.io-index" 2243 + checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 2244 + 2245 + [[package]] 2246 + name = "foldhash" 2247 + version = "0.1.5" 2248 + source = "registry+https://github.com/rust-lang/crates.io-index" 2249 + checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" 2250 + 2251 + [[package]] 2252 + name = "foldhash" 2253 + version = "0.2.0" 2254 + source = "registry+https://github.com/rust-lang/crates.io-index" 2255 + checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" 2256 + 2257 + [[package]] 2258 + name = "font-types" 2259 + version = "0.10.1" 2260 + source = "registry+https://github.com/rust-lang/crates.io-index" 2261 + checksum = "39a654f404bbcbd48ea58c617c2993ee91d1cb63727a37bf2323a4edeed1b8c5" 2262 + dependencies = [ 2263 + "bytemuck", 2264 + ] 2265 + 2266 + [[package]] 2267 + name = "fontconfig-parser" 2268 + version = "0.5.8" 2269 + source = "registry+https://github.com/rust-lang/crates.io-index" 2270 + checksum = "bbc773e24e02d4ddd8395fd30dc147524273a83e54e0f312d986ea30de5f5646" 2271 + dependencies = [ 2272 + "roxmltree", 2273 + ] 2274 + 2275 + [[package]] 2276 + name = "fontdb" 2277 + version = "0.16.2" 2278 + source = "registry+https://github.com/rust-lang/crates.io-index" 2279 + checksum = "b0299020c3ef3f60f526a4f64ab4a3d4ce116b1acbf24cdd22da0068e5d81dc3" 2280 + dependencies = [ 2281 + "fontconfig-parser", 2282 + "log", 2283 + "memmap2", 2284 + "slotmap", 2285 + "tinyvec", 2286 + "ttf-parser 0.20.0", 2287 + ] 2288 + 2289 + [[package]] 2290 + name = "foreign-types" 2291 + version = "0.5.0" 2292 + source = "registry+https://github.com/rust-lang/crates.io-index" 2293 + checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" 2294 + dependencies = [ 2295 + "foreign-types-macros", 2296 + "foreign-types-shared", 2297 + ] 2298 + 2299 + [[package]] 2300 + name = "foreign-types-macros" 2301 + version = "0.2.3" 2302 + source = "registry+https://github.com/rust-lang/crates.io-index" 2303 + checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" 2304 + dependencies = [ 2305 + "proc-macro2", 2306 + "quote", 2307 + "syn", 2308 + ] 2309 + 2310 + [[package]] 2311 + name = "foreign-types-shared" 2312 + version = "0.3.1" 2313 + source = "registry+https://github.com/rust-lang/crates.io-index" 2314 + checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" 2315 + 2316 + [[package]] 2317 + name = "futures-channel" 2318 + version = "0.3.31" 2319 + source = "registry+https://github.com/rust-lang/crates.io-index" 2320 + checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" 2321 + dependencies = [ 2322 + "futures-core", 2323 + ] 2324 + 2325 + [[package]] 2326 + name = "futures-core" 2327 + version = "0.3.31" 2328 + source = "registry+https://github.com/rust-lang/crates.io-index" 2329 + checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" 2330 + 2331 + [[package]] 2332 + name = "futures-io" 2333 + version = "0.3.31" 2334 + source = "registry+https://github.com/rust-lang/crates.io-index" 2335 + checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" 2336 + 2337 + [[package]] 2338 + name = "futures-lite" 2339 + version = "2.6.1" 2340 + source = "registry+https://github.com/rust-lang/crates.io-index" 2341 + checksum = "f78e10609fe0e0b3f4157ffab1876319b5b0db102a2c60dc4626306dc46b44ad" 2342 + dependencies = [ 2343 + "fastrand", 2344 + "futures-core", 2345 + "futures-io", 2346 + "parking", 2347 + "pin-project-lite", 2348 + ] 2349 + 2350 + [[package]] 2351 + name = "gethostname" 2352 + version = "1.1.0" 2353 + source = "registry+https://github.com/rust-lang/crates.io-index" 2354 + checksum = "1bd49230192a3797a9a4d6abe9b3eed6f7fa4c8a8a4947977c6f80025f92cbd8" 2355 + dependencies = [ 2356 + "rustix 1.1.2", 2357 + "windows-link 0.2.1", 2358 + ] 2359 + 2360 + [[package]] 2361 + name = "getrandom" 2362 + version = "0.2.16" 2363 + source = "registry+https://github.com/rust-lang/crates.io-index" 2364 + checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" 2365 + dependencies = [ 2366 + "cfg-if", 2367 + "libc", 2368 + "wasi", 2369 + ] 2370 + 2371 + [[package]] 2372 + name = "getrandom" 2373 + version = "0.3.4" 2374 + source = "registry+https://github.com/rust-lang/crates.io-index" 2375 + checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" 2376 + dependencies = [ 2377 + "cfg-if", 2378 + "js-sys", 2379 + "libc", 2380 + "r-efi", 2381 + "wasip2", 2382 + "wasm-bindgen", 2383 + ] 2384 + 2385 + [[package]] 2386 + name = "gilrs" 2387 + version = "0.11.0" 2388 + source = "registry+https://github.com/rust-lang/crates.io-index" 2389 + checksum = "bbb2c998745a3c1ac90f64f4f7b3a54219fd3612d7705e7798212935641ed18f" 2390 + dependencies = [ 2391 + "fnv", 2392 + "gilrs-core", 2393 + "log", 2394 + "uuid", 2395 + "vec_map", 2396 + ] 2397 + 2398 + [[package]] 2399 + name = "gilrs-core" 2400 + version = "0.6.6" 2401 + source = "registry+https://github.com/rust-lang/crates.io-index" 2402 + checksum = "be11a71ac3564f6965839e2ed275bf4fcf5ce16d80d396e1dfdb7b2d80bd587e" 2403 + dependencies = [ 2404 + "core-foundation 0.10.1", 2405 + "inotify", 2406 + "io-kit-sys", 2407 + "js-sys", 2408 + "libc", 2409 + "libudev-sys", 2410 + "log", 2411 + "nix", 2412 + "uuid", 2413 + "vec_map", 2414 + "wasm-bindgen", 2415 + "web-sys", 2416 + "windows 0.62.2", 2417 + ] 2418 + 2419 + [[package]] 2420 + name = "gl_generator" 2421 + version = "0.14.0" 2422 + source = "registry+https://github.com/rust-lang/crates.io-index" 2423 + checksum = "1a95dfc23a2b4a9a2f5ab41d194f8bfda3cabec42af4e39f08c339eb2a0c124d" 2424 + dependencies = [ 2425 + "khronos_api", 2426 + "log", 2427 + "xml-rs", 2428 + ] 2429 + 2430 + [[package]] 2431 + name = "glam" 2432 + version = "0.30.9" 2433 + source = "registry+https://github.com/rust-lang/crates.io-index" 2434 + checksum = "bd47b05dddf0005d850e5644cae7f2b14ac3df487979dbfff3b56f20b1a6ae46" 2435 + dependencies = [ 2436 + "bytemuck", 2437 + "libm", 2438 + "rand 0.9.2", 2439 + "serde_core", 2440 + ] 2441 + 2442 + [[package]] 2443 + name = "glob" 2444 + version = "0.3.3" 2445 + source = "registry+https://github.com/rust-lang/crates.io-index" 2446 + checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" 2447 + 2448 + [[package]] 2449 + name = "glow" 2450 + version = "0.16.0" 2451 + source = "registry+https://github.com/rust-lang/crates.io-index" 2452 + checksum = "c5e5ea60d70410161c8bf5da3fdfeaa1c72ed2c15f8bbb9d19fe3a4fad085f08" 2453 + dependencies = [ 2454 + "js-sys", 2455 + "slotmap", 2456 + "wasm-bindgen", 2457 + "web-sys", 2458 + ] 2459 + 2460 + [[package]] 2461 + name = "gltf" 2462 + version = "1.4.1" 2463 + source = "registry+https://github.com/rust-lang/crates.io-index" 2464 + checksum = "e3ce1918195723ce6ac74e80542c5a96a40c2b26162c1957a5cd70799b8cacf7" 2465 + dependencies = [ 2466 + "byteorder", 2467 + "gltf-json", 2468 + "lazy_static", 2469 + "serde_json", 2470 + ] 2471 + 2472 + [[package]] 2473 + name = "gltf-derive" 2474 + version = "1.4.1" 2475 + source = "registry+https://github.com/rust-lang/crates.io-index" 2476 + checksum = "14070e711538afba5d6c807edb74bcb84e5dbb9211a3bf5dea0dfab5b24f4c51" 2477 + dependencies = [ 2478 + "inflections", 2479 + "proc-macro2", 2480 + "quote", 2481 + "syn", 2482 + ] 2483 + 2484 + [[package]] 2485 + name = "gltf-json" 2486 + version = "1.4.1" 2487 + source = "registry+https://github.com/rust-lang/crates.io-index" 2488 + checksum = "e6176f9d60a7eab0a877e8e96548605dedbde9190a7ae1e80bbcc1c9af03ab14" 2489 + dependencies = [ 2490 + "gltf-derive", 2491 + "serde", 2492 + "serde_derive", 2493 + "serde_json", 2494 + ] 2495 + 2496 + [[package]] 2497 + name = "glutin_wgl_sys" 2498 + version = "0.6.1" 2499 + source = "registry+https://github.com/rust-lang/crates.io-index" 2500 + checksum = "2c4ee00b289aba7a9e5306d57c2d05499b2e5dc427f84ac708bd2c090212cf3e" 2501 + dependencies = [ 2502 + "gl_generator", 2503 + ] 2504 + 2505 + [[package]] 2506 + name = "gpu-alloc" 2507 + version = "0.6.0" 2508 + source = "registry+https://github.com/rust-lang/crates.io-index" 2509 + checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171" 2510 + dependencies = [ 2511 + "bitflags 2.10.0", 2512 + "gpu-alloc-types", 2513 + ] 2514 + 2515 + [[package]] 2516 + name = "gpu-alloc-types" 2517 + version = "0.3.0" 2518 + source = "registry+https://github.com/rust-lang/crates.io-index" 2519 + checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4" 2520 + dependencies = [ 2521 + "bitflags 2.10.0", 2522 + ] 2523 + 2524 + [[package]] 2525 + name = "gpu-allocator" 2526 + version = "0.27.0" 2527 + source = "registry+https://github.com/rust-lang/crates.io-index" 2528 + checksum = "c151a2a5ef800297b4e79efa4f4bec035c5f51d5ae587287c9b952bdf734cacd" 2529 + dependencies = [ 2530 + "log", 2531 + "presser", 2532 + "thiserror 1.0.69", 2533 + "windows 0.58.0", 2534 + ] 2535 + 2536 + [[package]] 2537 + name = "gpu-descriptor" 2538 + version = "0.3.2" 2539 + source = "registry+https://github.com/rust-lang/crates.io-index" 2540 + checksum = "b89c83349105e3732062a895becfc71a8f921bb71ecbbdd8ff99263e3b53a0ca" 2541 + dependencies = [ 2542 + "bitflags 2.10.0", 2543 + "gpu-descriptor-types", 2544 + "hashbrown 0.15.5", 2545 + ] 2546 + 2547 + [[package]] 2548 + name = "gpu-descriptor-types" 2549 + version = "0.2.0" 2550 + source = "registry+https://github.com/rust-lang/crates.io-index" 2551 + checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91" 2552 + dependencies = [ 2553 + "bitflags 2.10.0", 2554 + ] 2555 + 2556 + [[package]] 2557 + name = "grid" 2558 + version = "0.15.0" 2559 + source = "registry+https://github.com/rust-lang/crates.io-index" 2560 + checksum = "36119f3a540b086b4e436bb2b588cf98a68863470e0e880f4d0842f112a3183a" 2561 + 2562 + [[package]] 2563 + name = "guillotiere" 2564 + version = "0.6.2" 2565 + source = "registry+https://github.com/rust-lang/crates.io-index" 2566 + checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782" 2567 + dependencies = [ 2568 + "euclid", 2569 + "svg_fmt", 2570 + ] 2571 + 2572 + [[package]] 2573 + name = "half" 2574 + version = "2.7.1" 2575 + source = "registry+https://github.com/rust-lang/crates.io-index" 2576 + checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" 2577 + dependencies = [ 2578 + "cfg-if", 2579 + "crunchy", 2580 + "num-traits", 2581 + "zerocopy", 2582 + ] 2583 + 2584 + [[package]] 2585 + name = "hash32" 2586 + version = "0.3.1" 2587 + source = "registry+https://github.com/rust-lang/crates.io-index" 2588 + checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606" 2589 + dependencies = [ 2590 + "byteorder", 2591 + ] 2592 + 2593 + [[package]] 2594 + name = "hashbrown" 2595 + version = "0.15.5" 2596 + source = "registry+https://github.com/rust-lang/crates.io-index" 2597 + checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" 2598 + dependencies = [ 2599 + "foldhash 0.1.5", 2600 + ] 2601 + 2602 + [[package]] 2603 + name = "hashbrown" 2604 + version = "0.16.1" 2605 + source = "registry+https://github.com/rust-lang/crates.io-index" 2606 + checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" 2607 + dependencies = [ 2608 + "equivalent", 2609 + "serde", 2610 + "serde_core", 2611 + ] 2612 + 2613 + [[package]] 2614 + name = "heapless" 2615 + version = "0.8.0" 2616 + source = "registry+https://github.com/rust-lang/crates.io-index" 2617 + checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad" 2618 + dependencies = [ 2619 + "hash32", 2620 + "portable-atomic", 2621 + "stable_deref_trait", 2622 + ] 2623 + 2624 + [[package]] 2625 + name = "hermit-abi" 2626 + version = "0.5.2" 2627 + source = "registry+https://github.com/rust-lang/crates.io-index" 2628 + checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" 2629 + 2630 + [[package]] 2631 + name = "hexasphere" 2632 + version = "16.0.0" 2633 + source = "registry+https://github.com/rust-lang/crates.io-index" 2634 + checksum = "29a164ceff4500f2a72b1d21beaa8aa8ad83aec2b641844c659b190cb3ea2e0b" 2635 + dependencies = [ 2636 + "constgebra", 2637 + "glam", 2638 + "tinyvec", 2639 + ] 2640 + 2641 + [[package]] 2642 + name = "hexf-parse" 2643 + version = "0.2.1" 2644 + source = "registry+https://github.com/rust-lang/crates.io-index" 2645 + checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" 2646 + 2647 + [[package]] 2648 + name = "image" 2649 + version = "0.25.9" 2650 + source = "registry+https://github.com/rust-lang/crates.io-index" 2651 + checksum = "e6506c6c10786659413faa717ceebcb8f70731c0a60cbae39795fdf114519c1a" 2652 + dependencies = [ 2653 + "bytemuck", 2654 + "byteorder-lite", 2655 + "moxcms", 2656 + "num-traits", 2657 + "png", 2658 + ] 2659 + 2660 + [[package]] 2661 + name = "indexmap" 2662 + version = "2.12.1" 2663 + source = "registry+https://github.com/rust-lang/crates.io-index" 2664 + checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2" 2665 + dependencies = [ 2666 + "equivalent", 2667 + "hashbrown 0.16.1", 2668 + "serde", 2669 + "serde_core", 2670 + ] 2671 + 2672 + [[package]] 2673 + name = "inflections" 2674 + version = "1.1.1" 2675 + source = "registry+https://github.com/rust-lang/crates.io-index" 2676 + checksum = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a" 2677 + 2678 + [[package]] 2679 + name = "inotify" 2680 + version = "0.11.0" 2681 + source = "registry+https://github.com/rust-lang/crates.io-index" 2682 + checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" 2683 + dependencies = [ 2684 + "bitflags 2.10.0", 2685 + "inotify-sys", 2686 + "libc", 2687 + ] 2688 + 2689 + [[package]] 2690 + name = "inotify-sys" 2691 + version = "0.1.5" 2692 + source = "registry+https://github.com/rust-lang/crates.io-index" 2693 + checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" 2694 + dependencies = [ 2695 + "libc", 2696 + ] 2697 + 2698 + [[package]] 2699 + name = "inventory" 2700 + version = "0.3.21" 2701 + source = "registry+https://github.com/rust-lang/crates.io-index" 2702 + checksum = "bc61209c082fbeb19919bee74b176221b27223e27b65d781eb91af24eb1fb46e" 2703 + dependencies = [ 2704 + "rustversion", 2705 + ] 2706 + 2707 + [[package]] 2708 + name = "io-kit-sys" 2709 + version = "0.4.1" 2710 + source = "registry+https://github.com/rust-lang/crates.io-index" 2711 + checksum = "617ee6cf8e3f66f3b4ea67a4058564628cde41901316e19f559e14c7c72c5e7b" 2712 + dependencies = [ 2713 + "core-foundation-sys", 2714 + "mach2", 2715 + ] 2716 + 2717 + [[package]] 2718 + name = "itertools" 2719 + version = "0.13.0" 2720 + source = "registry+https://github.com/rust-lang/crates.io-index" 2721 + checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" 2722 + dependencies = [ 2723 + "either", 2724 + ] 2725 + 2726 + [[package]] 2727 + name = "itertools" 2728 + version = "0.14.0" 2729 + source = "registry+https://github.com/rust-lang/crates.io-index" 2730 + checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" 2731 + dependencies = [ 2732 + "either", 2733 + ] 2734 + 2735 + [[package]] 2736 + name = "itoa" 2737 + version = "1.0.15" 2738 + source = "registry+https://github.com/rust-lang/crates.io-index" 2739 + checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" 2740 + 2741 + [[package]] 2742 + name = "jni" 2743 + version = "0.21.1" 2744 + source = "registry+https://github.com/rust-lang/crates.io-index" 2745 + checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" 2746 + dependencies = [ 2747 + "cesu8", 2748 + "cfg-if", 2749 + "combine", 2750 + "jni-sys", 2751 + "log", 2752 + "thiserror 1.0.69", 2753 + "walkdir", 2754 + "windows-sys 0.45.0", 2755 + ] 2756 + 2757 + [[package]] 2758 + name = "jni-sys" 2759 + version = "0.3.0" 2760 + source = "registry+https://github.com/rust-lang/crates.io-index" 2761 + checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" 2762 + 2763 + [[package]] 2764 + name = "jobserver" 2765 + version = "0.1.34" 2766 + source = "registry+https://github.com/rust-lang/crates.io-index" 2767 + checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" 2768 + dependencies = [ 2769 + "getrandom 0.3.4", 2770 + "libc", 2771 + ] 2772 + 2773 + [[package]] 2774 + name = "js-sys" 2775 + version = "0.3.82" 2776 + source = "registry+https://github.com/rust-lang/crates.io-index" 2777 + checksum = "b011eec8cc36da2aab2d5cff675ec18454fad408585853910a202391cf9f8e65" 2778 + dependencies = [ 2779 + "once_cell", 2780 + "wasm-bindgen", 2781 + ] 2782 + 2783 + [[package]] 2784 + name = "khronos-egl" 2785 + version = "6.0.0" 2786 + source = "registry+https://github.com/rust-lang/crates.io-index" 2787 + checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76" 2788 + dependencies = [ 2789 + "libc", 2790 + "libloading", 2791 + "pkg-config", 2792 + ] 2793 + 2794 + [[package]] 2795 + name = "khronos_api" 2796 + version = "3.1.0" 2797 + source = "registry+https://github.com/rust-lang/crates.io-index" 2798 + checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" 2799 + 2800 + [[package]] 2801 + name = "ktx2" 2802 + version = "0.4.0" 2803 + source = "registry+https://github.com/rust-lang/crates.io-index" 2804 + checksum = "ff7f53bdf698e7aa7ec916411bbdc8078135da11b66db5182675b2227f6c0d07" 2805 + dependencies = [ 2806 + "bitflags 2.10.0", 2807 + ] 2808 + 2809 + [[package]] 2810 + name = "lazy_static" 2811 + version = "1.5.0" 2812 + source = "registry+https://github.com/rust-lang/crates.io-index" 2813 + checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" 2814 + 2815 + [[package]] 2816 + name = "lewton" 2817 + version = "0.10.2" 2818 + source = "registry+https://github.com/rust-lang/crates.io-index" 2819 + checksum = "777b48df9aaab155475a83a7df3070395ea1ac6902f5cd062b8f2b028075c030" 2820 + dependencies = [ 2821 + "byteorder", 2822 + "ogg", 2823 + "tinyvec", 2824 + ] 2825 + 2826 + [[package]] 2827 + name = "libc" 2828 + version = "0.2.177" 2829 + source = "registry+https://github.com/rust-lang/crates.io-index" 2830 + checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" 2831 + 2832 + [[package]] 2833 + name = "libloading" 2834 + version = "0.8.9" 2835 + source = "registry+https://github.com/rust-lang/crates.io-index" 2836 + checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" 2837 + dependencies = [ 2838 + "cfg-if", 2839 + "windows-link 0.2.1", 2840 + ] 2841 + 2842 + [[package]] 2843 + name = "libm" 2844 + version = "0.2.15" 2845 + source = "registry+https://github.com/rust-lang/crates.io-index" 2846 + checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" 2847 + 2848 + [[package]] 2849 + name = "libredox" 2850 + version = "0.1.10" 2851 + source = "registry+https://github.com/rust-lang/crates.io-index" 2852 + checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" 2853 + dependencies = [ 2854 + "bitflags 2.10.0", 2855 + "libc", 2856 + "redox_syscall 0.5.18", 2857 + ] 2858 + 2859 + [[package]] 2860 + name = "libudev-sys" 2861 + version = "0.1.4" 2862 + source = "registry+https://github.com/rust-lang/crates.io-index" 2863 + checksum = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324" 2864 + dependencies = [ 2865 + "libc", 2866 + "pkg-config", 2867 + ] 2868 + 2869 + [[package]] 2870 + name = "linux-raw-sys" 2871 + version = "0.4.15" 2872 + source = "registry+https://github.com/rust-lang/crates.io-index" 2873 + checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" 2874 + 2875 + [[package]] 2876 + name = "linux-raw-sys" 2877 + version = "0.11.0" 2878 + source = "registry+https://github.com/rust-lang/crates.io-index" 2879 + checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" 2880 + 2881 + [[package]] 2882 + name = "litrs" 2883 + version = "1.0.0" 2884 + source = "registry+https://github.com/rust-lang/crates.io-index" 2885 + checksum = "11d3d7f243d5c5a8b9bb5d6dd2b1602c0cb0b9db1621bafc7ed66e35ff9fe092" 2886 + 2887 + [[package]] 2888 + name = "lock_api" 2889 + version = "0.4.14" 2890 + source = "registry+https://github.com/rust-lang/crates.io-index" 2891 + checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" 2892 + dependencies = [ 2893 + "scopeguard", 2894 + ] 2895 + 2896 + [[package]] 2897 + name = "log" 2898 + version = "0.4.28" 2899 + source = "registry+https://github.com/rust-lang/crates.io-index" 2900 + checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" 2901 + 2902 + [[package]] 2903 + name = "mach2" 2904 + version = "0.4.3" 2905 + source = "registry+https://github.com/rust-lang/crates.io-index" 2906 + checksum = "d640282b302c0bb0a2a8e0233ead9035e3bed871f0b7e81fe4a1ec829765db44" 2907 + dependencies = [ 2908 + "libc", 2909 + ] 2910 + 2911 + [[package]] 2912 + name = "malloc_buf" 2913 + version = "0.0.6" 2914 + source = "registry+https://github.com/rust-lang/crates.io-index" 2915 + checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" 2916 + dependencies = [ 2917 + "libc", 2918 + ] 2919 + 2920 + [[package]] 2921 + name = "matchers" 2922 + version = "0.2.0" 2923 + source = "registry+https://github.com/rust-lang/crates.io-index" 2924 + checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9" 2925 + dependencies = [ 2926 + "regex-automata", 2927 + ] 2928 + 2929 + [[package]] 2930 + name = "memchr" 2931 + version = "2.7.6" 2932 + source = "registry+https://github.com/rust-lang/crates.io-index" 2933 + checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" 2934 + 2935 + [[package]] 2936 + name = "memmap2" 2937 + version = "0.9.9" 2938 + source = "registry+https://github.com/rust-lang/crates.io-index" 2939 + checksum = "744133e4a0e0a658e1374cf3bf8e415c4052a15a111acd372764c55b4177d490" 2940 + dependencies = [ 2941 + "libc", 2942 + ] 2943 + 2944 + [[package]] 2945 + name = "metal" 2946 + version = "0.32.0" 2947 + source = "registry+https://github.com/rust-lang/crates.io-index" 2948 + checksum = "00c15a6f673ff72ddcc22394663290f870fb224c1bfce55734a75c414150e605" 2949 + dependencies = [ 2950 + "bitflags 2.10.0", 2951 + "block", 2952 + "core-graphics-types 0.2.0", 2953 + "foreign-types", 2954 + "log", 2955 + "objc", 2956 + "paste", 2957 + ] 2958 + 2959 + [[package]] 2960 + name = "minimal-lexical" 2961 + version = "0.2.1" 2962 + source = "registry+https://github.com/rust-lang/crates.io-index" 2963 + checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" 2964 + 2965 + [[package]] 2966 + name = "miniz_oxide" 2967 + version = "0.8.9" 2968 + source = "registry+https://github.com/rust-lang/crates.io-index" 2969 + checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" 2970 + dependencies = [ 2971 + "adler2", 2972 + "simd-adler32", 2973 + ] 2974 + 2975 + [[package]] 2976 + name = "moxcms" 2977 + version = "0.7.9" 2978 + source = "registry+https://github.com/rust-lang/crates.io-index" 2979 + checksum = "0fbdd3d7436f8b5e892b8b7ea114271ff0fa00bc5acae845d53b07d498616ef6" 2980 + dependencies = [ 2981 + "num-traits", 2982 + "pxfm", 2983 + ] 2984 + 2985 + [[package]] 2986 + name = "naga" 2987 + version = "26.0.0" 2988 + source = "registry+https://github.com/rust-lang/crates.io-index" 2989 + checksum = "916cbc7cb27db60be930a4e2da243cf4bc39569195f22fd8ee419cd31d5b662c" 2990 + dependencies = [ 2991 + "arrayvec", 2992 + "bit-set", 2993 + "bitflags 2.10.0", 2994 + "cfg-if", 2995 + "cfg_aliases", 2996 + "codespan-reporting", 2997 + "half", 2998 + "hashbrown 0.15.5", 2999 + "hexf-parse", 3000 + "indexmap", 3001 + "libm", 3002 + "log", 3003 + "num-traits", 3004 + "once_cell", 3005 + "pp-rs", 3006 + "rustc-hash 1.1.0", 3007 + "spirv", 3008 + "thiserror 2.0.17", 3009 + "unicode-ident", 3010 + ] 3011 + 3012 + [[package]] 3013 + name = "naga_oil" 3014 + version = "0.19.1" 3015 + source = "registry+https://github.com/rust-lang/crates.io-index" 3016 + checksum = "1b586d3cf5c9b7e13fe2af6e114406ff70773fd80881960378933b63e76f37dd" 3017 + dependencies = [ 3018 + "codespan-reporting", 3019 + "data-encoding", 3020 + "indexmap", 3021 + "naga", 3022 + "regex", 3023 + "rustc-hash 1.1.0", 3024 + "thiserror 2.0.17", 3025 + "tracing", 3026 + "unicode-ident", 3027 + ] 3028 + 3029 + [[package]] 3030 + name = "nanoid" 3031 + version = "0.4.0" 3032 + source = "registry+https://github.com/rust-lang/crates.io-index" 3033 + checksum = "3ffa00dec017b5b1a8b7cf5e2c008bfda1aa7e0697ac1508b491fdf2622fb4d8" 3034 + dependencies = [ 3035 + "rand 0.8.5", 3036 + ] 3037 + 3038 + [[package]] 3039 + name = "ndk" 3040 + version = "0.8.0" 3041 + source = "registry+https://github.com/rust-lang/crates.io-index" 3042 + checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7" 3043 + dependencies = [ 3044 + "bitflags 2.10.0", 3045 + "jni-sys", 3046 + "log", 3047 + "ndk-sys 0.5.0+25.2.9519653", 3048 + "num_enum", 3049 + "thiserror 1.0.69", 3050 + ] 3051 + 3052 + [[package]] 3053 + name = "ndk" 3054 + version = "0.9.0" 3055 + source = "registry+https://github.com/rust-lang/crates.io-index" 3056 + checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" 3057 + dependencies = [ 3058 + "bitflags 2.10.0", 3059 + "jni-sys", 3060 + "log", 3061 + "ndk-sys 0.6.0+11769913", 3062 + "num_enum", 3063 + "raw-window-handle", 3064 + "thiserror 1.0.69", 3065 + ] 3066 + 3067 + [[package]] 3068 + name = "ndk-context" 3069 + version = "0.1.1" 3070 + source = "registry+https://github.com/rust-lang/crates.io-index" 3071 + checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" 3072 + 3073 + [[package]] 3074 + name = "ndk-sys" 3075 + version = "0.5.0+25.2.9519653" 3076 + source = "registry+https://github.com/rust-lang/crates.io-index" 3077 + checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691" 3078 + dependencies = [ 3079 + "jni-sys", 3080 + ] 3081 + 3082 + [[package]] 3083 + name = "ndk-sys" 3084 + version = "0.6.0+11769913" 3085 + source = "registry+https://github.com/rust-lang/crates.io-index" 3086 + checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" 3087 + dependencies = [ 3088 + "jni-sys", 3089 + ] 3090 + 3091 + [[package]] 3092 + name = "nix" 3093 + version = "0.30.1" 3094 + source = "registry+https://github.com/rust-lang/crates.io-index" 3095 + checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" 3096 + dependencies = [ 3097 + "bitflags 2.10.0", 3098 + "cfg-if", 3099 + "cfg_aliases", 3100 + "libc", 3101 + ] 3102 + 3103 + [[package]] 3104 + name = "nom" 3105 + version = "7.1.3" 3106 + source = "registry+https://github.com/rust-lang/crates.io-index" 3107 + checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" 3108 + dependencies = [ 3109 + "memchr", 3110 + "minimal-lexical", 3111 + ] 3112 + 3113 + [[package]] 3114 + name = "nonmax" 3115 + version = "0.5.5" 3116 + source = "registry+https://github.com/rust-lang/crates.io-index" 3117 + checksum = "610a5acd306ec67f907abe5567859a3c693fb9886eb1f012ab8f2a47bef3db51" 3118 + 3119 + [[package]] 3120 + name = "ntapi" 3121 + version = "0.4.1" 3122 + source = "registry+https://github.com/rust-lang/crates.io-index" 3123 + checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" 3124 + dependencies = [ 3125 + "winapi", 3126 + ] 3127 + 3128 + [[package]] 3129 + name = "nu-ansi-term" 3130 + version = "0.50.3" 3131 + source = "registry+https://github.com/rust-lang/crates.io-index" 3132 + checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" 3133 + dependencies = [ 3134 + "windows-sys 0.61.2", 3135 + ] 3136 + 3137 + [[package]] 3138 + name = "num-derive" 3139 + version = "0.4.2" 3140 + source = "registry+https://github.com/rust-lang/crates.io-index" 3141 + checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" 3142 + dependencies = [ 3143 + "proc-macro2", 3144 + "quote", 3145 + "syn", 3146 + ] 3147 + 3148 + [[package]] 3149 + name = "num-traits" 3150 + version = "0.2.19" 3151 + source = "registry+https://github.com/rust-lang/crates.io-index" 3152 + checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" 3153 + dependencies = [ 3154 + "autocfg", 3155 + "libm", 3156 + ] 3157 + 3158 + [[package]] 3159 + name = "num_enum" 3160 + version = "0.7.5" 3161 + source = "registry+https://github.com/rust-lang/crates.io-index" 3162 + checksum = "b1207a7e20ad57b847bbddc6776b968420d38292bbfe2089accff5e19e82454c" 3163 + dependencies = [ 3164 + "num_enum_derive", 3165 + "rustversion", 3166 + ] 3167 + 3168 + [[package]] 3169 + name = "num_enum_derive" 3170 + version = "0.7.5" 3171 + source = "registry+https://github.com/rust-lang/crates.io-index" 3172 + checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" 3173 + dependencies = [ 3174 + "proc-macro-crate", 3175 + "proc-macro2", 3176 + "quote", 3177 + "syn", 3178 + ] 3179 + 3180 + [[package]] 3181 + name = "objc" 3182 + version = "0.2.7" 3183 + source = "registry+https://github.com/rust-lang/crates.io-index" 3184 + checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" 3185 + dependencies = [ 3186 + "malloc_buf", 3187 + ] 3188 + 3189 + [[package]] 3190 + name = "objc-sys" 3191 + version = "0.3.5" 3192 + source = "registry+https://github.com/rust-lang/crates.io-index" 3193 + checksum = "cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310" 3194 + 3195 + [[package]] 3196 + name = "objc2" 3197 + version = "0.5.2" 3198 + source = "registry+https://github.com/rust-lang/crates.io-index" 3199 + checksum = "46a785d4eeff09c14c487497c162e92766fbb3e4059a71840cecc03d9a50b804" 3200 + dependencies = [ 3201 + "objc-sys", 3202 + "objc2-encode", 3203 + ] 3204 + 3205 + [[package]] 3206 + name = "objc2" 3207 + version = "0.6.3" 3208 + source = "registry+https://github.com/rust-lang/crates.io-index" 3209 + checksum = "b7c2599ce0ec54857b29ce62166b0ed9b4f6f1a70ccc9a71165b6154caca8c05" 3210 + dependencies = [ 3211 + "objc2-encode", 3212 + ] 3213 + 3214 + [[package]] 3215 + name = "objc2-app-kit" 3216 + version = "0.2.2" 3217 + source = "registry+https://github.com/rust-lang/crates.io-index" 3218 + checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff" 3219 + dependencies = [ 3220 + "bitflags 2.10.0", 3221 + "block2 0.5.1", 3222 + "libc", 3223 + "objc2 0.5.2", 3224 + "objc2-core-data", 3225 + "objc2-core-image", 3226 + "objc2-foundation", 3227 + "objc2-quartz-core", 3228 + ] 3229 + 3230 + [[package]] 3231 + name = "objc2-cloud-kit" 3232 + version = "0.2.2" 3233 + source = "registry+https://github.com/rust-lang/crates.io-index" 3234 + checksum = "74dd3b56391c7a0596a295029734d3c1c5e7e510a4cb30245f8221ccea96b009" 3235 + dependencies = [ 3236 + "bitflags 2.10.0", 3237 + "block2 0.5.1", 3238 + "objc2 0.5.2", 3239 + "objc2-core-location", 3240 + "objc2-foundation", 3241 + ] 3242 + 3243 + [[package]] 3244 + name = "objc2-contacts" 3245 + version = "0.2.2" 3246 + source = "registry+https://github.com/rust-lang/crates.io-index" 3247 + checksum = "a5ff520e9c33812fd374d8deecef01d4a840e7b41862d849513de77e44aa4889" 3248 + dependencies = [ 3249 + "block2 0.5.1", 3250 + "objc2 0.5.2", 3251 + "objc2-foundation", 3252 + ] 3253 + 3254 + [[package]] 3255 + name = "objc2-core-data" 3256 + version = "0.2.2" 3257 + source = "registry+https://github.com/rust-lang/crates.io-index" 3258 + checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef" 3259 + dependencies = [ 3260 + "bitflags 2.10.0", 3261 + "block2 0.5.1", 3262 + "objc2 0.5.2", 3263 + "objc2-foundation", 3264 + ] 3265 + 3266 + [[package]] 3267 + name = "objc2-core-foundation" 3268 + version = "0.3.2" 3269 + source = "registry+https://github.com/rust-lang/crates.io-index" 3270 + checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" 3271 + dependencies = [ 3272 + "bitflags 2.10.0", 3273 + ] 3274 + 3275 + [[package]] 3276 + name = "objc2-core-image" 3277 + version = "0.2.2" 3278 + source = "registry+https://github.com/rust-lang/crates.io-index" 3279 + checksum = "55260963a527c99f1819c4f8e3b47fe04f9650694ef348ffd2227e8196d34c80" 3280 + dependencies = [ 3281 + "block2 0.5.1", 3282 + "objc2 0.5.2", 3283 + "objc2-foundation", 3284 + "objc2-metal", 3285 + ] 3286 + 3287 + [[package]] 3288 + name = "objc2-core-location" 3289 + version = "0.2.2" 3290 + source = "registry+https://github.com/rust-lang/crates.io-index" 3291 + checksum = "000cfee34e683244f284252ee206a27953279d370e309649dc3ee317b37e5781" 3292 + dependencies = [ 3293 + "block2 0.5.1", 3294 + "objc2 0.5.2", 3295 + "objc2-contacts", 3296 + "objc2-foundation", 3297 + ] 3298 + 3299 + [[package]] 3300 + name = "objc2-encode" 3301 + version = "4.1.0" 3302 + source = "registry+https://github.com/rust-lang/crates.io-index" 3303 + checksum = "ef25abbcd74fb2609453eb695bd2f860d389e457f67dc17cafc8b8cbc89d0c33" 3304 + 3305 + [[package]] 3306 + name = "objc2-foundation" 3307 + version = "0.2.2" 3308 + source = "registry+https://github.com/rust-lang/crates.io-index" 3309 + checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8" 3310 + dependencies = [ 3311 + "bitflags 2.10.0", 3312 + "block2 0.5.1", 3313 + "dispatch", 3314 + "libc", 3315 + "objc2 0.5.2", 3316 + ] 3317 + 3318 + [[package]] 3319 + name = "objc2-io-kit" 3320 + version = "0.3.2" 3321 + source = "registry+https://github.com/rust-lang/crates.io-index" 3322 + checksum = "33fafba39597d6dc1fb709123dfa8289d39406734be322956a69f0931c73bb15" 3323 + dependencies = [ 3324 + "libc", 3325 + "objc2-core-foundation", 3326 + ] 3327 + 3328 + [[package]] 3329 + name = "objc2-link-presentation" 3330 + version = "0.2.2" 3331 + source = "registry+https://github.com/rust-lang/crates.io-index" 3332 + checksum = "a1a1ae721c5e35be65f01a03b6d2ac13a54cb4fa70d8a5da293d7b0020261398" 3333 + dependencies = [ 3334 + "block2 0.5.1", 3335 + "objc2 0.5.2", 3336 + "objc2-app-kit", 3337 + "objc2-foundation", 3338 + ] 3339 + 3340 + [[package]] 3341 + name = "objc2-metal" 3342 + version = "0.2.2" 3343 + source = "registry+https://github.com/rust-lang/crates.io-index" 3344 + checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6" 3345 + dependencies = [ 3346 + "bitflags 2.10.0", 3347 + "block2 0.5.1", 3348 + "objc2 0.5.2", 3349 + "objc2-foundation", 3350 + ] 3351 + 3352 + [[package]] 3353 + name = "objc2-quartz-core" 3354 + version = "0.2.2" 3355 + source = "registry+https://github.com/rust-lang/crates.io-index" 3356 + checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a" 3357 + dependencies = [ 3358 + "bitflags 2.10.0", 3359 + "block2 0.5.1", 3360 + "objc2 0.5.2", 3361 + "objc2-foundation", 3362 + "objc2-metal", 3363 + ] 3364 + 3365 + [[package]] 3366 + name = "objc2-symbols" 3367 + version = "0.2.2" 3368 + source = "registry+https://github.com/rust-lang/crates.io-index" 3369 + checksum = "0a684efe3dec1b305badae1a28f6555f6ddd3bb2c2267896782858d5a78404dc" 3370 + dependencies = [ 3371 + "objc2 0.5.2", 3372 + "objc2-foundation", 3373 + ] 3374 + 3375 + [[package]] 3376 + name = "objc2-ui-kit" 3377 + version = "0.2.2" 3378 + source = "registry+https://github.com/rust-lang/crates.io-index" 3379 + checksum = "b8bb46798b20cd6b91cbd113524c490f1686f4c4e8f49502431415f3512e2b6f" 3380 + dependencies = [ 3381 + "bitflags 2.10.0", 3382 + "block2 0.5.1", 3383 + "objc2 0.5.2", 3384 + "objc2-cloud-kit", 3385 + "objc2-core-data", 3386 + "objc2-core-image", 3387 + "objc2-core-location", 3388 + "objc2-foundation", 3389 + "objc2-link-presentation", 3390 + "objc2-quartz-core", 3391 + "objc2-symbols", 3392 + "objc2-uniform-type-identifiers", 3393 + "objc2-user-notifications", 3394 + ] 3395 + 3396 + [[package]] 3397 + name = "objc2-uniform-type-identifiers" 3398 + version = "0.2.2" 3399 + source = "registry+https://github.com/rust-lang/crates.io-index" 3400 + checksum = "44fa5f9748dbfe1ca6c0b79ad20725a11eca7c2218bceb4b005cb1be26273bfe" 3401 + dependencies = [ 3402 + "block2 0.5.1", 3403 + "objc2 0.5.2", 3404 + "objc2-foundation", 3405 + ] 3406 + 3407 + [[package]] 3408 + name = "objc2-user-notifications" 3409 + version = "0.2.2" 3410 + source = "registry+https://github.com/rust-lang/crates.io-index" 3411 + checksum = "76cfcbf642358e8689af64cee815d139339f3ed8ad05103ed5eaf73db8d84cb3" 3412 + dependencies = [ 3413 + "bitflags 2.10.0", 3414 + "block2 0.5.1", 3415 + "objc2 0.5.2", 3416 + "objc2-core-location", 3417 + "objc2-foundation", 3418 + ] 3419 + 3420 + [[package]] 3421 + name = "oboe" 3422 + version = "0.6.1" 3423 + source = "registry+https://github.com/rust-lang/crates.io-index" 3424 + checksum = "e8b61bebd49e5d43f5f8cc7ee2891c16e0f41ec7954d36bcb6c14c5e0de867fb" 3425 + dependencies = [ 3426 + "jni", 3427 + "ndk 0.8.0", 3428 + "ndk-context", 3429 + "num-derive", 3430 + "num-traits", 3431 + "oboe-sys", 3432 + ] 3433 + 3434 + [[package]] 3435 + name = "oboe-sys" 3436 + version = "0.6.1" 3437 + source = "registry+https://github.com/rust-lang/crates.io-index" 3438 + checksum = "6c8bb09a4a2b1d668170cfe0a7d5bc103f8999fb316c98099b6a9939c9f2e79d" 3439 + dependencies = [ 3440 + "cc", 3441 + ] 3442 + 3443 + [[package]] 3444 + name = "offset-allocator" 3445 + version = "0.2.0" 3446 + source = "registry+https://github.com/rust-lang/crates.io-index" 3447 + checksum = "e234d535da3521eb95106f40f0b73483d80bfb3aacf27c40d7e2b72f1a3e00a2" 3448 + dependencies = [ 3449 + "log", 3450 + "nonmax", 3451 + ] 3452 + 3453 + [[package]] 3454 + name = "ogg" 3455 + version = "0.8.0" 3456 + source = "registry+https://github.com/rust-lang/crates.io-index" 3457 + checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e" 3458 + dependencies = [ 3459 + "byteorder", 3460 + ] 3461 + 3462 + [[package]] 3463 + name = "once_cell" 3464 + version = "1.21.3" 3465 + source = "registry+https://github.com/rust-lang/crates.io-index" 3466 + checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" 3467 + 3468 + [[package]] 3469 + name = "orbclient" 3470 + version = "0.3.49" 3471 + source = "registry+https://github.com/rust-lang/crates.io-index" 3472 + checksum = "247ad146e19b9437f8604c21f8652423595cf710ad108af40e77d3ae6e96b827" 3473 + dependencies = [ 3474 + "libredox", 3475 + ] 3476 + 3477 + [[package]] 3478 + name = "ordered-float" 3479 + version = "5.0.0" 3480 + source = "registry+https://github.com/rust-lang/crates.io-index" 3481 + checksum = "e2c1f9f56e534ac6a9b8a4600bdf0f530fb393b5f393e7b4d03489c3cf0c3f01" 3482 + dependencies = [ 3483 + "num-traits", 3484 + ] 3485 + 3486 + [[package]] 3487 + name = "owned_ttf_parser" 3488 + version = "0.25.1" 3489 + source = "registry+https://github.com/rust-lang/crates.io-index" 3490 + checksum = "36820e9051aca1014ddc75770aab4d68bc1e9e632f0f5627c4086bc216fb583b" 3491 + dependencies = [ 3492 + "ttf-parser 0.25.1", 3493 + ] 3494 + 3495 + [[package]] 3496 + name = "parking" 3497 + version = "2.2.1" 3498 + source = "registry+https://github.com/rust-lang/crates.io-index" 3499 + checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" 3500 + 3501 + [[package]] 3502 + name = "parking_lot" 3503 + version = "0.12.5" 3504 + source = "registry+https://github.com/rust-lang/crates.io-index" 3505 + checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" 3506 + dependencies = [ 3507 + "lock_api", 3508 + "parking_lot_core", 3509 + ] 3510 + 3511 + [[package]] 3512 + name = "parking_lot_core" 3513 + version = "0.9.12" 3514 + source = "registry+https://github.com/rust-lang/crates.io-index" 3515 + checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" 3516 + dependencies = [ 3517 + "cfg-if", 3518 + "libc", 3519 + "redox_syscall 0.5.18", 3520 + "smallvec", 3521 + "windows-link 0.2.1", 3522 + ] 3523 + 3524 + [[package]] 3525 + name = "paste" 3526 + version = "1.0.15" 3527 + source = "registry+https://github.com/rust-lang/crates.io-index" 3528 + checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" 3529 + 3530 + [[package]] 3531 + name = "percent-encoding" 3532 + version = "2.3.2" 3533 + source = "registry+https://github.com/rust-lang/crates.io-index" 3534 + checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" 3535 + 3536 + [[package]] 3537 + name = "petgraph" 3538 + version = "0.8.3" 3539 + source = "registry+https://github.com/rust-lang/crates.io-index" 3540 + checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455" 3541 + dependencies = [ 3542 + "fixedbitset", 3543 + "hashbrown 0.15.5", 3544 + "indexmap", 3545 + "serde", 3546 + "serde_derive", 3547 + ] 3548 + 3549 + [[package]] 3550 + name = "pin-project" 3551 + version = "1.1.10" 3552 + source = "registry+https://github.com/rust-lang/crates.io-index" 3553 + checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" 3554 + dependencies = [ 3555 + "pin-project-internal", 3556 + ] 3557 + 3558 + [[package]] 3559 + name = "pin-project-internal" 3560 + version = "1.1.10" 3561 + source = "registry+https://github.com/rust-lang/crates.io-index" 3562 + checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" 3563 + dependencies = [ 3564 + "proc-macro2", 3565 + "quote", 3566 + "syn", 3567 + ] 3568 + 3569 + [[package]] 3570 + name = "pin-project-lite" 3571 + version = "0.2.16" 3572 + source = "registry+https://github.com/rust-lang/crates.io-index" 3573 + checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" 3574 + 3575 + [[package]] 3576 + name = "piper" 3577 + version = "0.2.4" 3578 + source = "registry+https://github.com/rust-lang/crates.io-index" 3579 + checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066" 3580 + dependencies = [ 3581 + "atomic-waker", 3582 + "fastrand", 3583 + "futures-io", 3584 + ] 3585 + 3586 + [[package]] 3587 + name = "pkg-config" 3588 + version = "0.3.32" 3589 + source = "registry+https://github.com/rust-lang/crates.io-index" 3590 + checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" 3591 + 3592 + [[package]] 3593 + name = "png" 3594 + version = "0.18.0" 3595 + source = "registry+https://github.com/rust-lang/crates.io-index" 3596 + checksum = "97baced388464909d42d89643fe4361939af9b7ce7a31ee32a168f832a70f2a0" 3597 + dependencies = [ 3598 + "bitflags 2.10.0", 3599 + "crc32fast", 3600 + "fdeflate", 3601 + "flate2", 3602 + "miniz_oxide", 3603 + ] 3604 + 3605 + [[package]] 3606 + name = "polling" 3607 + version = "3.11.0" 3608 + source = "registry+https://github.com/rust-lang/crates.io-index" 3609 + checksum = "5d0e4f59085d47d8241c88ead0f274e8a0cb551f3625263c05eb8dd897c34218" 3610 + dependencies = [ 3611 + "cfg-if", 3612 + "concurrent-queue", 3613 + "hermit-abi", 3614 + "pin-project-lite", 3615 + "rustix 1.1.2", 3616 + "windows-sys 0.61.2", 3617 + ] 3618 + 3619 + [[package]] 3620 + name = "portable-atomic" 3621 + version = "1.11.1" 3622 + source = "registry+https://github.com/rust-lang/crates.io-index" 3623 + checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" 3624 + 3625 + [[package]] 3626 + name = "portable-atomic-util" 3627 + version = "0.2.4" 3628 + source = "registry+https://github.com/rust-lang/crates.io-index" 3629 + checksum = "d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507" 3630 + dependencies = [ 3631 + "portable-atomic", 3632 + ] 3633 + 3634 + [[package]] 3635 + name = "pp-rs" 3636 + version = "0.2.1" 3637 + source = "registry+https://github.com/rust-lang/crates.io-index" 3638 + checksum = "bb458bb7f6e250e6eb79d5026badc10a3ebb8f9a15d1fff0f13d17c71f4d6dee" 3639 + dependencies = [ 3640 + "unicode-xid", 3641 + ] 3642 + 3643 + [[package]] 3644 + name = "ppv-lite86" 3645 + version = "0.2.21" 3646 + source = "registry+https://github.com/rust-lang/crates.io-index" 3647 + checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" 3648 + dependencies = [ 3649 + "zerocopy", 3650 + ] 3651 + 3652 + [[package]] 3653 + name = "presser" 3654 + version = "0.3.1" 3655 + source = "registry+https://github.com/rust-lang/crates.io-index" 3656 + checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa" 3657 + 3658 + [[package]] 3659 + name = "proc-macro-crate" 3660 + version = "3.4.0" 3661 + source = "registry+https://github.com/rust-lang/crates.io-index" 3662 + checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" 3663 + dependencies = [ 3664 + "toml_edit", 3665 + ] 3666 + 3667 + [[package]] 3668 + name = "proc-macro2" 3669 + version = "1.0.103" 3670 + source = "registry+https://github.com/rust-lang/crates.io-index" 3671 + checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" 3672 + dependencies = [ 3673 + "unicode-ident", 3674 + ] 3675 + 3676 + [[package]] 3677 + name = "profiling" 3678 + version = "1.0.17" 3679 + source = "registry+https://github.com/rust-lang/crates.io-index" 3680 + checksum = "3eb8486b569e12e2c32ad3e204dbaba5e4b5b216e9367044f25f1dba42341773" 3681 + 3682 + [[package]] 3683 + name = "pxfm" 3684 + version = "0.1.25" 3685 + source = "registry+https://github.com/rust-lang/crates.io-index" 3686 + checksum = "a3cbdf373972bf78df4d3b518d07003938e2c7d1fb5891e55f9cb6df57009d84" 3687 + dependencies = [ 3688 + "num-traits", 3689 + ] 3690 + 3691 + [[package]] 3692 + name = "quick-xml" 3693 + version = "0.37.5" 3694 + source = "registry+https://github.com/rust-lang/crates.io-index" 3695 + checksum = "331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb" 3696 + dependencies = [ 3697 + "memchr", 3698 + ] 3699 + 3700 + [[package]] 3701 + name = "quote" 3702 + version = "1.0.42" 3703 + source = "registry+https://github.com/rust-lang/crates.io-index" 3704 + checksum = "a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f" 3705 + dependencies = [ 3706 + "proc-macro2", 3707 + ] 3708 + 3709 + [[package]] 3710 + name = "r-efi" 3711 + version = "5.3.0" 3712 + source = "registry+https://github.com/rust-lang/crates.io-index" 3713 + checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" 3714 + 3715 + [[package]] 3716 + name = "radsort" 3717 + version = "0.1.1" 3718 + source = "registry+https://github.com/rust-lang/crates.io-index" 3719 + checksum = "019b4b213425016d7d84a153c4c73afb0946fbb4840e4eece7ba8848b9d6da22" 3720 + 3721 + [[package]] 3722 + name = "rand" 3723 + version = "0.8.5" 3724 + source = "registry+https://github.com/rust-lang/crates.io-index" 3725 + checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 3726 + dependencies = [ 3727 + "libc", 3728 + "rand_chacha 0.3.1", 3729 + "rand_core 0.6.4", 3730 + ] 3731 + 3732 + [[package]] 3733 + name = "rand" 3734 + version = "0.9.2" 3735 + source = "registry+https://github.com/rust-lang/crates.io-index" 3736 + checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" 3737 + dependencies = [ 3738 + "rand_chacha 0.9.0", 3739 + "rand_core 0.9.3", 3740 + ] 3741 + 3742 + [[package]] 3743 + name = "rand_chacha" 3744 + version = "0.3.1" 3745 + source = "registry+https://github.com/rust-lang/crates.io-index" 3746 + checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 3747 + dependencies = [ 3748 + "ppv-lite86", 3749 + "rand_core 0.6.4", 3750 + ] 3751 + 3752 + [[package]] 3753 + name = "rand_chacha" 3754 + version = "0.9.0" 3755 + source = "registry+https://github.com/rust-lang/crates.io-index" 3756 + checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" 3757 + dependencies = [ 3758 + "ppv-lite86", 3759 + "rand_core 0.9.3", 3760 + ] 3761 + 3762 + [[package]] 3763 + name = "rand_core" 3764 + version = "0.6.4" 3765 + source = "registry+https://github.com/rust-lang/crates.io-index" 3766 + checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 3767 + dependencies = [ 3768 + "getrandom 0.2.16", 3769 + ] 3770 + 3771 + [[package]] 3772 + name = "rand_core" 3773 + version = "0.9.3" 3774 + source = "registry+https://github.com/rust-lang/crates.io-index" 3775 + checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" 3776 + dependencies = [ 3777 + "getrandom 0.3.4", 3778 + ] 3779 + 3780 + [[package]] 3781 + name = "rand_distr" 3782 + version = "0.5.1" 3783 + source = "registry+https://github.com/rust-lang/crates.io-index" 3784 + checksum = "6a8615d50dcf34fa31f7ab52692afec947c4dd0ab803cc87cb3b0b4570ff7463" 3785 + dependencies = [ 3786 + "num-traits", 3787 + "rand 0.9.2", 3788 + ] 3789 + 3790 + [[package]] 3791 + name = "range-alloc" 3792 + version = "0.1.4" 3793 + source = "registry+https://github.com/rust-lang/crates.io-index" 3794 + checksum = "c3d6831663a5098ea164f89cff59c6284e95f4e3c76ce9848d4529f5ccca9bde" 3795 + 3796 + [[package]] 3797 + name = "rangemap" 3798 + version = "1.7.0" 3799 + source = "registry+https://github.com/rust-lang/crates.io-index" 3800 + checksum = "acbbbbea733ec66275512d0b9694f34102e7d5406fdbe2ad8d21b28dce92887c" 3801 + 3802 + [[package]] 3803 + name = "raw-window-handle" 3804 + version = "0.6.2" 3805 + source = "registry+https://github.com/rust-lang/crates.io-index" 3806 + checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" 3807 + 3808 + [[package]] 3809 + name = "read-fonts" 3810 + version = "0.35.0" 3811 + source = "registry+https://github.com/rust-lang/crates.io-index" 3812 + checksum = "6717cf23b488adf64b9d711329542ba34de147df262370221940dfabc2c91358" 3813 + dependencies = [ 3814 + "bytemuck", 3815 + "font-types", 3816 + ] 3817 + 3818 + [[package]] 3819 + name = "rectangle-pack" 3820 + version = "0.4.2" 3821 + source = "registry+https://github.com/rust-lang/crates.io-index" 3822 + checksum = "a0d463f2884048e7153449a55166f91028d5b0ea53c79377099ce4e8cf0cf9bb" 3823 + 3824 + [[package]] 3825 + name = "redox_syscall" 3826 + version = "0.4.1" 3827 + source = "registry+https://github.com/rust-lang/crates.io-index" 3828 + checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" 3829 + dependencies = [ 3830 + "bitflags 1.3.2", 3831 + ] 3832 + 3833 + [[package]] 3834 + name = "redox_syscall" 3835 + version = "0.5.18" 3836 + source = "registry+https://github.com/rust-lang/crates.io-index" 3837 + checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" 3838 + dependencies = [ 3839 + "bitflags 2.10.0", 3840 + ] 3841 + 3842 + [[package]] 3843 + name = "regex" 3844 + version = "1.12.2" 3845 + source = "registry+https://github.com/rust-lang/crates.io-index" 3846 + checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4" 3847 + dependencies = [ 3848 + "aho-corasick", 3849 + "memchr", 3850 + "regex-automata", 3851 + "regex-syntax", 3852 + ] 3853 + 3854 + [[package]] 3855 + name = "regex-automata" 3856 + version = "0.4.13" 3857 + source = "registry+https://github.com/rust-lang/crates.io-index" 3858 + checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" 3859 + dependencies = [ 3860 + "aho-corasick", 3861 + "memchr", 3862 + "regex-syntax", 3863 + ] 3864 + 3865 + [[package]] 3866 + name = "regex-syntax" 3867 + version = "0.8.8" 3868 + source = "registry+https://github.com/rust-lang/crates.io-index" 3869 + checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58" 3870 + 3871 + [[package]] 3872 + name = "renderdoc-sys" 3873 + version = "1.1.0" 3874 + source = "registry+https://github.com/rust-lang/crates.io-index" 3875 + checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832" 3876 + 3877 + [[package]] 3878 + name = "rodio" 3879 + version = "0.20.1" 3880 + source = "registry+https://github.com/rust-lang/crates.io-index" 3881 + checksum = "e7ceb6607dd738c99bc8cb28eff249b7cd5c8ec88b9db96c0608c1480d140fb1" 3882 + dependencies = [ 3883 + "cpal", 3884 + "lewton", 3885 + ] 3886 + 3887 + [[package]] 3888 + name = "ron" 3889 + version = "0.10.1" 3890 + source = "registry+https://github.com/rust-lang/crates.io-index" 3891 + checksum = "beceb6f7bf81c73e73aeef6dd1356d9a1b2b4909e1f0fc3e59b034f9572d7b7f" 3892 + dependencies = [ 3893 + "base64", 3894 + "bitflags 2.10.0", 3895 + "serde", 3896 + "serde_derive", 3897 + "unicode-ident", 3898 + ] 3899 + 3900 + [[package]] 3901 + name = "roxmltree" 3902 + version = "0.20.0" 3903 + source = "registry+https://github.com/rust-lang/crates.io-index" 3904 + checksum = "6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97" 3905 + 3906 + [[package]] 3907 + name = "rustc-hash" 3908 + version = "1.1.0" 3909 + source = "registry+https://github.com/rust-lang/crates.io-index" 3910 + checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" 3911 + 3912 + [[package]] 3913 + name = "rustc-hash" 3914 + version = "2.1.1" 3915 + source = "registry+https://github.com/rust-lang/crates.io-index" 3916 + checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" 3917 + 3918 + [[package]] 3919 + name = "rustix" 3920 + version = "0.38.44" 3921 + source = "registry+https://github.com/rust-lang/crates.io-index" 3922 + checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" 3923 + dependencies = [ 3924 + "bitflags 2.10.0", 3925 + "errno", 3926 + "libc", 3927 + "linux-raw-sys 0.4.15", 3928 + "windows-sys 0.59.0", 3929 + ] 3930 + 3931 + [[package]] 3932 + name = "rustix" 3933 + version = "1.1.2" 3934 + source = "registry+https://github.com/rust-lang/crates.io-index" 3935 + checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" 3936 + dependencies = [ 3937 + "bitflags 2.10.0", 3938 + "errno", 3939 + "libc", 3940 + "linux-raw-sys 0.11.0", 3941 + "windows-sys 0.61.2", 3942 + ] 3943 + 3944 + [[package]] 3945 + name = "rustversion" 3946 + version = "1.0.22" 3947 + source = "registry+https://github.com/rust-lang/crates.io-index" 3948 + checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" 3949 + 3950 + [[package]] 3951 + name = "rustybuzz" 3952 + version = "0.14.1" 3953 + source = "registry+https://github.com/rust-lang/crates.io-index" 3954 + checksum = "cfb9cf8877777222e4a3bc7eb247e398b56baba500c38c1c46842431adc8b55c" 3955 + dependencies = [ 3956 + "bitflags 2.10.0", 3957 + "bytemuck", 3958 + "libm", 3959 + "smallvec", 3960 + "ttf-parser 0.21.1", 3961 + "unicode-bidi-mirroring", 3962 + "unicode-ccc", 3963 + "unicode-properties", 3964 + "unicode-script", 3965 + ] 3966 + 3967 + [[package]] 3968 + name = "ruzstd" 3969 + version = "0.8.2" 3970 + source = "registry+https://github.com/rust-lang/crates.io-index" 3971 + checksum = "e5ff0cc5e135c8870a775d3320910cd9b564ec036b4dc0b8741629020be63f01" 3972 + dependencies = [ 3973 + "twox-hash", 3974 + ] 3975 + 3976 + [[package]] 3977 + name = "ryu" 3978 + version = "1.0.20" 3979 + source = "registry+https://github.com/rust-lang/crates.io-index" 3980 + checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" 3981 + 3982 + [[package]] 3983 + name = "same-file" 3984 + version = "1.0.6" 3985 + source = "registry+https://github.com/rust-lang/crates.io-index" 3986 + checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 3987 + dependencies = [ 3988 + "winapi-util", 3989 + ] 3990 + 3991 + [[package]] 3992 + name = "scoped-tls" 3993 + version = "1.0.1" 3994 + source = "registry+https://github.com/rust-lang/crates.io-index" 3995 + checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" 3996 + 3997 + [[package]] 3998 + name = "scopeguard" 3999 + version = "1.2.0" 4000 + source = "registry+https://github.com/rust-lang/crates.io-index" 4001 + checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 4002 + 4003 + [[package]] 4004 + name = "sctk-adwaita" 4005 + version = "0.10.1" 4006 + source = "registry+https://github.com/rust-lang/crates.io-index" 4007 + checksum = "b6277f0217056f77f1d8f49f2950ac6c278c0d607c45f5ee99328d792ede24ec" 4008 + dependencies = [ 4009 + "ab_glyph", 4010 + "log", 4011 + "memmap2", 4012 + "smithay-client-toolkit", 4013 + "tiny-skia", 4014 + ] 4015 + 4016 + [[package]] 4017 + name = "self_cell" 4018 + version = "1.2.1" 4019 + source = "registry+https://github.com/rust-lang/crates.io-index" 4020 + checksum = "16c2f82143577edb4921b71ede051dac62ca3c16084e918bf7b40c96ae10eb33" 4021 + 4022 + [[package]] 4023 + name = "send_wrapper" 4024 + version = "0.6.0" 4025 + source = "registry+https://github.com/rust-lang/crates.io-index" 4026 + checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" 4027 + 4028 + [[package]] 4029 + name = "serde" 4030 + version = "1.0.228" 4031 + source = "registry+https://github.com/rust-lang/crates.io-index" 4032 + checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" 4033 + dependencies = [ 4034 + "serde_core", 4035 + "serde_derive", 4036 + ] 4037 + 4038 + [[package]] 4039 + name = "serde_core" 4040 + version = "1.0.228" 4041 + source = "registry+https://github.com/rust-lang/crates.io-index" 4042 + checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" 4043 + dependencies = [ 4044 + "serde_derive", 4045 + ] 4046 + 4047 + [[package]] 4048 + name = "serde_derive" 4049 + version = "1.0.228" 4050 + source = "registry+https://github.com/rust-lang/crates.io-index" 4051 + checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" 4052 + dependencies = [ 4053 + "proc-macro2", 4054 + "quote", 4055 + "syn", 4056 + ] 4057 + 4058 + [[package]] 4059 + name = "serde_json" 4060 + version = "1.0.145" 4061 + source = "registry+https://github.com/rust-lang/crates.io-index" 4062 + checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" 4063 + dependencies = [ 4064 + "itoa", 4065 + "memchr", 4066 + "ryu", 4067 + "serde", 4068 + "serde_core", 4069 + ] 4070 + 4071 + [[package]] 4072 + name = "sharded-slab" 4073 + version = "0.1.7" 4074 + source = "registry+https://github.com/rust-lang/crates.io-index" 4075 + checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" 4076 + dependencies = [ 4077 + "lazy_static", 4078 + ] 4079 + 4080 + [[package]] 4081 + name = "shlex" 4082 + version = "1.3.0" 4083 + source = "registry+https://github.com/rust-lang/crates.io-index" 4084 + checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" 4085 + 4086 + [[package]] 4087 + name = "simd-adler32" 4088 + version = "0.3.7" 4089 + source = "registry+https://github.com/rust-lang/crates.io-index" 4090 + checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" 4091 + 4092 + [[package]] 4093 + name = "skrifa" 4094 + version = "0.37.0" 4095 + source = "registry+https://github.com/rust-lang/crates.io-index" 4096 + checksum = "8c31071dedf532758ecf3fed987cdb4bd9509f900e026ab684b4ecb81ea49841" 4097 + dependencies = [ 4098 + "bytemuck", 4099 + "read-fonts", 4100 + ] 4101 + 4102 + [[package]] 4103 + name = "slab" 4104 + version = "0.4.11" 4105 + source = "registry+https://github.com/rust-lang/crates.io-index" 4106 + checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" 4107 + 4108 + [[package]] 4109 + name = "slotmap" 4110 + version = "1.0.7" 4111 + source = "registry+https://github.com/rust-lang/crates.io-index" 4112 + checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a" 4113 + dependencies = [ 4114 + "version_check", 4115 + ] 4116 + 4117 + [[package]] 4118 + name = "smallvec" 4119 + version = "1.15.1" 4120 + source = "registry+https://github.com/rust-lang/crates.io-index" 4121 + checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" 4122 + 4123 + [[package]] 4124 + name = "smithay-client-toolkit" 4125 + version = "0.19.2" 4126 + source = "registry+https://github.com/rust-lang/crates.io-index" 4127 + checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016" 4128 + dependencies = [ 4129 + "bitflags 2.10.0", 4130 + "calloop", 4131 + "calloop-wayland-source", 4132 + "cursor-icon", 4133 + "libc", 4134 + "log", 4135 + "memmap2", 4136 + "rustix 0.38.44", 4137 + "thiserror 1.0.69", 4138 + "wayland-backend", 4139 + "wayland-client", 4140 + "wayland-csd-frame", 4141 + "wayland-cursor", 4142 + "wayland-protocols", 4143 + "wayland-protocols-wlr", 4144 + "wayland-scanner", 4145 + "xkeysym", 4146 + ] 4147 + 4148 + [[package]] 4149 + name = "smol_str" 4150 + version = "0.2.2" 4151 + source = "registry+https://github.com/rust-lang/crates.io-index" 4152 + checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead" 4153 + dependencies = [ 4154 + "serde", 4155 + ] 4156 + 4157 + [[package]] 4158 + name = "spin" 4159 + version = "0.10.0" 4160 + source = "registry+https://github.com/rust-lang/crates.io-index" 4161 + checksum = "d5fe4ccb98d9c292d56fec89a5e07da7fc4cf0dc11e156b41793132775d3e591" 4162 + dependencies = [ 4163 + "portable-atomic", 4164 + ] 4165 + 4166 + [[package]] 4167 + name = "spirv" 4168 + version = "0.3.0+sdk-1.3.268.0" 4169 + source = "registry+https://github.com/rust-lang/crates.io-index" 4170 + checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844" 4171 + dependencies = [ 4172 + "bitflags 2.10.0", 4173 + ] 4174 + 4175 + [[package]] 4176 + name = "stable_deref_trait" 4177 + version = "1.2.1" 4178 + source = "registry+https://github.com/rust-lang/crates.io-index" 4179 + checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" 4180 + 4181 + [[package]] 4182 + name = "stackfuture" 4183 + version = "0.3.1" 4184 + source = "registry+https://github.com/rust-lang/crates.io-index" 4185 + checksum = "115beb9c69db2393ff10b75a1b8587a51716e5551d015001e55320ed279d32f9" 4186 + dependencies = [ 4187 + "const_panic", 4188 + ] 4189 + 4190 + [[package]] 4191 + name = "static_assertions" 4192 + version = "1.1.0" 4193 + source = "registry+https://github.com/rust-lang/crates.io-index" 4194 + checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 4195 + 4196 + [[package]] 4197 + name = "strict-num" 4198 + version = "0.1.1" 4199 + source = "registry+https://github.com/rust-lang/crates.io-index" 4200 + checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731" 4201 + 4202 + [[package]] 4203 + name = "svg_fmt" 4204 + version = "0.4.5" 4205 + source = "registry+https://github.com/rust-lang/crates.io-index" 4206 + checksum = "0193cc4331cfd2f3d2011ef287590868599a2f33c3e69bc22c1a3d3acf9e02fb" 4207 + 4208 + [[package]] 4209 + name = "swash" 4210 + version = "0.2.6" 4211 + source = "registry+https://github.com/rust-lang/crates.io-index" 4212 + checksum = "47846491253e976bdd07d0f9cc24b7daf24720d11309302ccbbc6e6b6e53550a" 4213 + dependencies = [ 4214 + "skrifa", 4215 + "yazi", 4216 + "zeno", 4217 + ] 4218 + 4219 + [[package]] 4220 + name = "syn" 4221 + version = "2.0.111" 4222 + source = "registry+https://github.com/rust-lang/crates.io-index" 4223 + checksum = "390cc9a294ab71bdb1aa2e99d13be9c753cd2d7bd6560c77118597410c4d2e87" 4224 + dependencies = [ 4225 + "proc-macro2", 4226 + "quote", 4227 + "unicode-ident", 4228 + ] 4229 + 4230 + [[package]] 4231 + name = "sys-locale" 4232 + version = "0.3.2" 4233 + source = "registry+https://github.com/rust-lang/crates.io-index" 4234 + checksum = "8eab9a99a024a169fe8a903cf9d4a3b3601109bcc13bd9e3c6fff259138626c4" 4235 + dependencies = [ 4236 + "libc", 4237 + ] 4238 + 4239 + [[package]] 4240 + name = "sysinfo" 4241 + version = "0.37.2" 4242 + source = "registry+https://github.com/rust-lang/crates.io-index" 4243 + checksum = "16607d5caffd1c07ce073528f9ed972d88db15dd44023fa57142963be3feb11f" 4244 + dependencies = [ 4245 + "libc", 4246 + "memchr", 4247 + "ntapi", 4248 + "objc2-core-foundation", 4249 + "objc2-io-kit", 4250 + "windows 0.61.3", 4251 + ] 4252 + 4253 + [[package]] 4254 + name = "taffy" 4255 + version = "0.7.7" 4256 + source = "registry+https://github.com/rust-lang/crates.io-index" 4257 + checksum = "ab4f4d046dd956a47a7e1a2947083d7ac3e6aa3cfaaead36173ceaa5ab11878c" 4258 + dependencies = [ 4259 + "arrayvec", 4260 + "grid", 4261 + "serde", 4262 + "slotmap", 4263 + ] 4264 + 4265 + [[package]] 4266 + name = "termcolor" 4267 + version = "1.4.1" 4268 + source = "registry+https://github.com/rust-lang/crates.io-index" 4269 + checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" 4270 + dependencies = [ 4271 + "winapi-util", 4272 + ] 4273 + 4274 + [[package]] 4275 + name = "thiserror" 4276 + version = "1.0.69" 4277 + source = "registry+https://github.com/rust-lang/crates.io-index" 4278 + checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" 4279 + dependencies = [ 4280 + "thiserror-impl 1.0.69", 4281 + ] 4282 + 4283 + [[package]] 4284 + name = "thiserror" 4285 + version = "2.0.17" 4286 + source = "registry+https://github.com/rust-lang/crates.io-index" 4287 + checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" 4288 + dependencies = [ 4289 + "thiserror-impl 2.0.17", 4290 + ] 4291 + 4292 + [[package]] 4293 + name = "thiserror-impl" 4294 + version = "1.0.69" 4295 + source = "registry+https://github.com/rust-lang/crates.io-index" 4296 + checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" 4297 + dependencies = [ 4298 + "proc-macro2", 4299 + "quote", 4300 + "syn", 4301 + ] 4302 + 4303 + [[package]] 4304 + name = "thiserror-impl" 4305 + version = "2.0.17" 4306 + source = "registry+https://github.com/rust-lang/crates.io-index" 4307 + checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" 4308 + dependencies = [ 4309 + "proc-macro2", 4310 + "quote", 4311 + "syn", 4312 + ] 4313 + 4314 + [[package]] 4315 + name = "thread_local" 4316 + version = "1.1.9" 4317 + source = "registry+https://github.com/rust-lang/crates.io-index" 4318 + checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" 4319 + dependencies = [ 4320 + "cfg-if", 4321 + ] 4322 + 4323 + [[package]] 4324 + name = "tiny-skia" 4325 + version = "0.11.4" 4326 + source = "registry+https://github.com/rust-lang/crates.io-index" 4327 + checksum = "83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab" 4328 + dependencies = [ 4329 + "arrayref", 4330 + "arrayvec", 4331 + "bytemuck", 4332 + "cfg-if", 4333 + "log", 4334 + "tiny-skia-path", 4335 + ] 4336 + 4337 + [[package]] 4338 + name = "tiny-skia-path" 4339 + version = "0.11.4" 4340 + source = "registry+https://github.com/rust-lang/crates.io-index" 4341 + checksum = "9c9e7fc0c2e86a30b117d0462aa261b72b7a99b7ebd7deb3a14ceda95c5bdc93" 4342 + dependencies = [ 4343 + "arrayref", 4344 + "bytemuck", 4345 + "strict-num", 4346 + ] 4347 + 4348 + [[package]] 4349 + name = "tinyvec" 4350 + version = "1.10.0" 4351 + source = "registry+https://github.com/rust-lang/crates.io-index" 4352 + checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa" 4353 + dependencies = [ 4354 + "tinyvec_macros", 4355 + ] 4356 + 4357 + [[package]] 4358 + name = "tinyvec_macros" 4359 + version = "0.1.1" 4360 + source = "registry+https://github.com/rust-lang/crates.io-index" 4361 + checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" 4362 + 4363 + [[package]] 4364 + name = "toml_datetime" 4365 + version = "0.7.3" 4366 + source = "registry+https://github.com/rust-lang/crates.io-index" 4367 + checksum = "f2cdb639ebbc97961c51720f858597f7f24c4fc295327923af55b74c3c724533" 4368 + dependencies = [ 4369 + "serde_core", 4370 + ] 4371 + 4372 + [[package]] 4373 + name = "toml_edit" 4374 + version = "0.23.7" 4375 + source = "registry+https://github.com/rust-lang/crates.io-index" 4376 + checksum = "6485ef6d0d9b5d0ec17244ff7eb05310113c3f316f2d14200d4de56b3cb98f8d" 4377 + dependencies = [ 4378 + "indexmap", 4379 + "toml_datetime", 4380 + "toml_parser", 4381 + "winnow", 4382 + ] 4383 + 4384 + [[package]] 4385 + name = "toml_parser" 4386 + version = "1.0.4" 4387 + source = "registry+https://github.com/rust-lang/crates.io-index" 4388 + checksum = "c0cbe268d35bdb4bb5a56a2de88d0ad0eb70af5384a99d648cd4b3d04039800e" 4389 + dependencies = [ 4390 + "winnow", 4391 + ] 4392 + 4393 + [[package]] 4394 + name = "tracing" 4395 + version = "0.1.41" 4396 + source = "registry+https://github.com/rust-lang/crates.io-index" 4397 + checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" 4398 + dependencies = [ 4399 + "pin-project-lite", 4400 + "tracing-attributes", 4401 + "tracing-core", 4402 + ] 4403 + 4404 + [[package]] 4405 + name = "tracing-attributes" 4406 + version = "0.1.30" 4407 + source = "registry+https://github.com/rust-lang/crates.io-index" 4408 + checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" 4409 + dependencies = [ 4410 + "proc-macro2", 4411 + "quote", 4412 + "syn", 4413 + ] 4414 + 4415 + [[package]] 4416 + name = "tracing-core" 4417 + version = "0.1.34" 4418 + source = "registry+https://github.com/rust-lang/crates.io-index" 4419 + checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678" 4420 + dependencies = [ 4421 + "once_cell", 4422 + "valuable", 4423 + ] 4424 + 4425 + [[package]] 4426 + name = "tracing-log" 4427 + version = "0.2.0" 4428 + source = "registry+https://github.com/rust-lang/crates.io-index" 4429 + checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" 4430 + dependencies = [ 4431 + "log", 4432 + "once_cell", 4433 + "tracing-core", 4434 + ] 4435 + 4436 + [[package]] 4437 + name = "tracing-oslog" 4438 + version = "0.3.0" 4439 + source = "registry+https://github.com/rust-lang/crates.io-index" 4440 + checksum = "d76902d2a8d5f9f55a81155c08971734071968c90f2d9bfe645fe700579b2950" 4441 + dependencies = [ 4442 + "cc", 4443 + "cfg-if", 4444 + "tracing-core", 4445 + "tracing-subscriber", 4446 + ] 4447 + 4448 + [[package]] 4449 + name = "tracing-subscriber" 4450 + version = "0.3.20" 4451 + source = "registry+https://github.com/rust-lang/crates.io-index" 4452 + checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5" 4453 + dependencies = [ 4454 + "matchers", 4455 + "nu-ansi-term", 4456 + "once_cell", 4457 + "regex-automata", 4458 + "sharded-slab", 4459 + "smallvec", 4460 + "thread_local", 4461 + "tracing", 4462 + "tracing-core", 4463 + "tracing-log", 4464 + ] 4465 + 4466 + [[package]] 4467 + name = "tracing-wasm" 4468 + version = "0.2.1" 4469 + source = "registry+https://github.com/rust-lang/crates.io-index" 4470 + checksum = "4575c663a174420fa2d78f4108ff68f65bf2fbb7dd89f33749b6e826b3626e07" 4471 + dependencies = [ 4472 + "tracing", 4473 + "tracing-subscriber", 4474 + "wasm-bindgen", 4475 + ] 4476 + 4477 + [[package]] 4478 + name = "ttf-parser" 4479 + version = "0.20.0" 4480 + source = "registry+https://github.com/rust-lang/crates.io-index" 4481 + checksum = "17f77d76d837a7830fe1d4f12b7b4ba4192c1888001c7164257e4bc6d21d96b4" 4482 + 4483 + [[package]] 4484 + name = "ttf-parser" 4485 + version = "0.21.1" 4486 + source = "registry+https://github.com/rust-lang/crates.io-index" 4487 + checksum = "2c591d83f69777866b9126b24c6dd9a18351f177e49d625920d19f989fd31cf8" 4488 + 4489 + [[package]] 4490 + name = "ttf-parser" 4491 + version = "0.25.1" 4492 + source = "registry+https://github.com/rust-lang/crates.io-index" 4493 + checksum = "d2df906b07856748fa3f6e0ad0cbaa047052d4a7dd609e231c4f72cee8c36f31" 4494 + 4495 + [[package]] 4496 + name = "twox-hash" 4497 + version = "2.1.2" 4498 + source = "registry+https://github.com/rust-lang/crates.io-index" 4499 + checksum = "9ea3136b675547379c4bd395ca6b938e5ad3c3d20fad76e7fe85f9e0d011419c" 4500 + 4501 + [[package]] 4502 + name = "typeid" 4503 + version = "1.0.3" 4504 + source = "registry+https://github.com/rust-lang/crates.io-index" 4505 + checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" 4506 + 4507 + [[package]] 4508 + name = "typewit" 4509 + version = "1.14.2" 4510 + source = "registry+https://github.com/rust-lang/crates.io-index" 4511 + checksum = "f8c1ae7cc0fdb8b842d65d127cb981574b0d2b249b74d1c7a2986863dc134f71" 4512 + 4513 + [[package]] 4514 + name = "unicode-bidi" 4515 + version = "0.3.18" 4516 + source = "registry+https://github.com/rust-lang/crates.io-index" 4517 + checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5" 4518 + 4519 + [[package]] 4520 + name = "unicode-bidi-mirroring" 4521 + version = "0.2.0" 4522 + source = "registry+https://github.com/rust-lang/crates.io-index" 4523 + checksum = "23cb788ffebc92c5948d0e997106233eeb1d8b9512f93f41651f52b6c5f5af86" 4524 + 4525 + [[package]] 4526 + name = "unicode-ccc" 4527 + version = "0.2.0" 4528 + source = "registry+https://github.com/rust-lang/crates.io-index" 4529 + checksum = "1df77b101bcc4ea3d78dafc5ad7e4f58ceffe0b2b16bf446aeb50b6cb4157656" 4530 + 4531 + [[package]] 4532 + name = "unicode-ident" 4533 + version = "1.0.22" 4534 + source = "registry+https://github.com/rust-lang/crates.io-index" 4535 + checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5" 4536 + 4537 + [[package]] 4538 + name = "unicode-linebreak" 4539 + version = "0.1.5" 4540 + source = "registry+https://github.com/rust-lang/crates.io-index" 4541 + checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f" 4542 + 4543 + [[package]] 4544 + name = "unicode-properties" 4545 + version = "0.1.4" 4546 + source = "registry+https://github.com/rust-lang/crates.io-index" 4547 + checksum = "7df058c713841ad818f1dc5d3fd88063241cc61f49f5fbea4b951e8cf5a8d71d" 4548 + 4549 + [[package]] 4550 + name = "unicode-script" 4551 + version = "0.5.7" 4552 + source = "registry+https://github.com/rust-lang/crates.io-index" 4553 + checksum = "9fb421b350c9aff471779e262955939f565ec18b86c15364e6bdf0d662ca7c1f" 4554 + 4555 + [[package]] 4556 + name = "unicode-segmentation" 4557 + version = "1.12.0" 4558 + source = "registry+https://github.com/rust-lang/crates.io-index" 4559 + checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" 4560 + 4561 + [[package]] 4562 + name = "unicode-width" 4563 + version = "0.2.2" 4564 + source = "registry+https://github.com/rust-lang/crates.io-index" 4565 + checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" 4566 + 4567 + [[package]] 4568 + name = "unicode-xid" 4569 + version = "0.2.6" 4570 + source = "registry+https://github.com/rust-lang/crates.io-index" 4571 + checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" 4572 + 4573 + [[package]] 4574 + name = "uuid" 4575 + version = "1.18.1" 4576 + source = "registry+https://github.com/rust-lang/crates.io-index" 4577 + checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" 4578 + dependencies = [ 4579 + "getrandom 0.3.4", 4580 + "js-sys", 4581 + "serde", 4582 + "wasm-bindgen", 4583 + ] 4584 + 4585 + [[package]] 4586 + name = "valuable" 4587 + version = "0.1.1" 4588 + source = "registry+https://github.com/rust-lang/crates.io-index" 4589 + checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" 4590 + 4591 + [[package]] 4592 + name = "variadics_please" 4593 + version = "1.1.0" 4594 + source = "registry+https://github.com/rust-lang/crates.io-index" 4595 + checksum = "41b6d82be61465f97d42bd1d15bf20f3b0a3a0905018f38f9d6f6962055b0b5c" 4596 + dependencies = [ 4597 + "proc-macro2", 4598 + "quote", 4599 + "syn", 4600 + ] 4601 + 4602 + [[package]] 4603 + name = "vec_map" 4604 + version = "0.8.2" 4605 + source = "registry+https://github.com/rust-lang/crates.io-index" 4606 + checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" 4607 + 4608 + [[package]] 4609 + name = "version_check" 4610 + version = "0.9.5" 4611 + source = "registry+https://github.com/rust-lang/crates.io-index" 4612 + checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" 4613 + 4614 + [[package]] 4615 + name = "walkdir" 4616 + version = "2.5.0" 4617 + source = "registry+https://github.com/rust-lang/crates.io-index" 4618 + checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" 4619 + dependencies = [ 4620 + "same-file", 4621 + "winapi-util", 4622 + ] 4623 + 4624 + [[package]] 4625 + name = "wasi" 4626 + version = "0.11.1+wasi-snapshot-preview1" 4627 + source = "registry+https://github.com/rust-lang/crates.io-index" 4628 + checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" 4629 + 4630 + [[package]] 4631 + name = "wasip2" 4632 + version = "1.0.1+wasi-0.2.4" 4633 + source = "registry+https://github.com/rust-lang/crates.io-index" 4634 + checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" 4635 + dependencies = [ 4636 + "wit-bindgen", 4637 + ] 4638 + 4639 + [[package]] 4640 + name = "wasm-bindgen" 4641 + version = "0.2.105" 4642 + source = "registry+https://github.com/rust-lang/crates.io-index" 4643 + checksum = "da95793dfc411fbbd93f5be7715b0578ec61fe87cb1a42b12eb625caa5c5ea60" 4644 + dependencies = [ 4645 + "cfg-if", 4646 + "once_cell", 4647 + "rustversion", 4648 + "wasm-bindgen-macro", 4649 + "wasm-bindgen-shared", 4650 + ] 4651 + 4652 + [[package]] 4653 + name = "wasm-bindgen-futures" 4654 + version = "0.4.55" 4655 + source = "registry+https://github.com/rust-lang/crates.io-index" 4656 + checksum = "551f88106c6d5e7ccc7cd9a16f312dd3b5d36ea8b4954304657d5dfba115d4a0" 4657 + dependencies = [ 4658 + "cfg-if", 4659 + "js-sys", 4660 + "once_cell", 4661 + "wasm-bindgen", 4662 + "web-sys", 4663 + ] 4664 + 4665 + [[package]] 4666 + name = "wasm-bindgen-macro" 4667 + version = "0.2.105" 4668 + source = "registry+https://github.com/rust-lang/crates.io-index" 4669 + checksum = "04264334509e04a7bf8690f2384ef5265f05143a4bff3889ab7a3269adab59c2" 4670 + dependencies = [ 4671 + "quote", 4672 + "wasm-bindgen-macro-support", 4673 + ] 4674 + 4675 + [[package]] 4676 + name = "wasm-bindgen-macro-support" 4677 + version = "0.2.105" 4678 + source = "registry+https://github.com/rust-lang/crates.io-index" 4679 + checksum = "420bc339d9f322e562942d52e115d57e950d12d88983a14c79b86859ee6c7ebc" 4680 + dependencies = [ 4681 + "bumpalo", 4682 + "proc-macro2", 4683 + "quote", 4684 + "syn", 4685 + "wasm-bindgen-shared", 4686 + ] 4687 + 4688 + [[package]] 4689 + name = "wasm-bindgen-shared" 4690 + version = "0.2.105" 4691 + source = "registry+https://github.com/rust-lang/crates.io-index" 4692 + checksum = "76f218a38c84bcb33c25ec7059b07847d465ce0e0a76b995e134a45adcb6af76" 4693 + dependencies = [ 4694 + "unicode-ident", 4695 + ] 4696 + 4697 + [[package]] 4698 + name = "wayland-backend" 4699 + version = "0.3.11" 4700 + source = "registry+https://github.com/rust-lang/crates.io-index" 4701 + checksum = "673a33c33048a5ade91a6b139580fa174e19fb0d23f396dca9fa15f2e1e49b35" 4702 + dependencies = [ 4703 + "cc", 4704 + "downcast-rs 1.2.1", 4705 + "rustix 1.1.2", 4706 + "scoped-tls", 4707 + "smallvec", 4708 + "wayland-sys", 4709 + ] 4710 + 4711 + [[package]] 4712 + name = "wayland-client" 4713 + version = "0.31.11" 4714 + source = "registry+https://github.com/rust-lang/crates.io-index" 4715 + checksum = "c66a47e840dc20793f2264eb4b3e4ecb4b75d91c0dd4af04b456128e0bdd449d" 4716 + dependencies = [ 4717 + "bitflags 2.10.0", 4718 + "rustix 1.1.2", 4719 + "wayland-backend", 4720 + "wayland-scanner", 4721 + ] 4722 + 4723 + [[package]] 4724 + name = "wayland-csd-frame" 4725 + version = "0.3.0" 4726 + source = "registry+https://github.com/rust-lang/crates.io-index" 4727 + checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e" 4728 + dependencies = [ 4729 + "bitflags 2.10.0", 4730 + "cursor-icon", 4731 + "wayland-backend", 4732 + ] 4733 + 4734 + [[package]] 4735 + name = "wayland-cursor" 4736 + version = "0.31.11" 4737 + source = "registry+https://github.com/rust-lang/crates.io-index" 4738 + checksum = "447ccc440a881271b19e9989f75726d60faa09b95b0200a9b7eb5cc47c3eeb29" 4739 + dependencies = [ 4740 + "rustix 1.1.2", 4741 + "wayland-client", 4742 + "xcursor", 4743 + ] 4744 + 4745 + [[package]] 4746 + name = "wayland-protocols" 4747 + version = "0.32.9" 4748 + source = "registry+https://github.com/rust-lang/crates.io-index" 4749 + checksum = "efa790ed75fbfd71283bd2521a1cfdc022aabcc28bdcff00851f9e4ae88d9901" 4750 + dependencies = [ 4751 + "bitflags 2.10.0", 4752 + "wayland-backend", 4753 + "wayland-client", 4754 + "wayland-scanner", 4755 + ] 4756 + 4757 + [[package]] 4758 + name = "wayland-protocols-plasma" 4759 + version = "0.3.9" 4760 + source = "registry+https://github.com/rust-lang/crates.io-index" 4761 + checksum = "a07a14257c077ab3279987c4f8bb987851bf57081b93710381daea94f2c2c032" 4762 + dependencies = [ 4763 + "bitflags 2.10.0", 4764 + "wayland-backend", 4765 + "wayland-client", 4766 + "wayland-protocols", 4767 + "wayland-scanner", 4768 + ] 4769 + 4770 + [[package]] 4771 + name = "wayland-protocols-wlr" 4772 + version = "0.3.9" 4773 + source = "registry+https://github.com/rust-lang/crates.io-index" 4774 + checksum = "efd94963ed43cf9938a090ca4f7da58eb55325ec8200c3848963e98dc25b78ec" 4775 + dependencies = [ 4776 + "bitflags 2.10.0", 4777 + "wayland-backend", 4778 + "wayland-client", 4779 + "wayland-protocols", 4780 + "wayland-scanner", 4781 + ] 4782 + 4783 + [[package]] 4784 + name = "wayland-scanner" 4785 + version = "0.31.7" 4786 + source = "registry+https://github.com/rust-lang/crates.io-index" 4787 + checksum = "54cb1e9dc49da91950bdfd8b848c49330536d9d1fb03d4bfec8cae50caa50ae3" 4788 + dependencies = [ 4789 + "proc-macro2", 4790 + "quick-xml", 4791 + "quote", 4792 + ] 4793 + 4794 + [[package]] 4795 + name = "wayland-sys" 4796 + version = "0.31.7" 4797 + source = "registry+https://github.com/rust-lang/crates.io-index" 4798 + checksum = "34949b42822155826b41db8e5d0c1be3a2bd296c747577a43a3e6daefc296142" 4799 + dependencies = [ 4800 + "dlib", 4801 + "log", 4802 + "pkg-config", 4803 + ] 4804 + 4805 + [[package]] 4806 + name = "web-sys" 4807 + version = "0.3.82" 4808 + source = "registry+https://github.com/rust-lang/crates.io-index" 4809 + checksum = "3a1f95c0d03a47f4ae1f7a64643a6bb97465d9b740f0fa8f90ea33915c99a9a1" 4810 + dependencies = [ 4811 + "js-sys", 4812 + "wasm-bindgen", 4813 + ] 4814 + 4815 + [[package]] 4816 + name = "web-time" 4817 + version = "1.1.0" 4818 + source = "registry+https://github.com/rust-lang/crates.io-index" 4819 + checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" 4820 + dependencies = [ 4821 + "js-sys", 4822 + "wasm-bindgen", 4823 + ] 4824 + 4825 + [[package]] 4826 + name = "wgpu" 4827 + version = "26.0.1" 4828 + source = "registry+https://github.com/rust-lang/crates.io-index" 4829 + checksum = "70b6ff82bbf6e9206828e1a3178e851f8c20f1c9028e74dd3a8090741ccd5798" 4830 + dependencies = [ 4831 + "arrayvec", 4832 + "bitflags 2.10.0", 4833 + "cfg-if", 4834 + "cfg_aliases", 4835 + "document-features", 4836 + "hashbrown 0.15.5", 4837 + "js-sys", 4838 + "log", 4839 + "naga", 4840 + "portable-atomic", 4841 + "profiling", 4842 + "raw-window-handle", 4843 + "smallvec", 4844 + "static_assertions", 4845 + "wasm-bindgen", 4846 + "web-sys", 4847 + "wgpu-core", 4848 + "wgpu-hal", 4849 + "wgpu-types", 4850 + ] 4851 + 4852 + [[package]] 4853 + name = "wgpu-core" 4854 + version = "26.0.1" 4855 + source = "registry+https://github.com/rust-lang/crates.io-index" 4856 + checksum = "d5f62f1053bd28c2268f42916f31588f81f64796e2ff91b81293515017ca8bd9" 4857 + dependencies = [ 4858 + "arrayvec", 4859 + "bit-set", 4860 + "bit-vec", 4861 + "bitflags 2.10.0", 4862 + "cfg_aliases", 4863 + "document-features", 4864 + "hashbrown 0.15.5", 4865 + "indexmap", 4866 + "log", 4867 + "naga", 4868 + "once_cell", 4869 + "parking_lot", 4870 + "portable-atomic", 4871 + "profiling", 4872 + "raw-window-handle", 4873 + "rustc-hash 1.1.0", 4874 + "smallvec", 4875 + "thiserror 2.0.17", 4876 + "wgpu-core-deps-apple", 4877 + "wgpu-core-deps-wasm", 4878 + "wgpu-core-deps-windows-linux-android", 4879 + "wgpu-hal", 4880 + "wgpu-types", 4881 + ] 4882 + 4883 + [[package]] 4884 + name = "wgpu-core-deps-apple" 4885 + version = "26.0.0" 4886 + source = "registry+https://github.com/rust-lang/crates.io-index" 4887 + checksum = "18ae5fbde6a4cbebae38358aa73fcd6e0f15c6144b67ef5dc91ded0db125dbdf" 4888 + dependencies = [ 4889 + "wgpu-hal", 4890 + ] 4891 + 4892 + [[package]] 4893 + name = "wgpu-core-deps-wasm" 4894 + version = "26.0.0" 4895 + source = "registry+https://github.com/rust-lang/crates.io-index" 4896 + checksum = "c03b9f9e1a50686d315fc6debe4980cc45cd37b0e919351917df494e8fdc8885" 4897 + dependencies = [ 4898 + "wgpu-hal", 4899 + ] 4900 + 4901 + [[package]] 4902 + name = "wgpu-core-deps-windows-linux-android" 4903 + version = "26.0.0" 4904 + source = "registry+https://github.com/rust-lang/crates.io-index" 4905 + checksum = "720a5cb9d12b3d337c15ff0e24d3e97ed11490ff3f7506e7f3d98c68fa5d6f14" 4906 + dependencies = [ 4907 + "wgpu-hal", 4908 + ] 4909 + 4910 + [[package]] 4911 + name = "wgpu-hal" 4912 + version = "26.0.6" 4913 + source = "registry+https://github.com/rust-lang/crates.io-index" 4914 + checksum = "a8d0e67224cc7305b3b4eb2cc57ca4c4c3afc665c1d1bee162ea806e19c47bdd" 4915 + dependencies = [ 4916 + "android_system_properties", 4917 + "arrayvec", 4918 + "ash", 4919 + "bit-set", 4920 + "bitflags 2.10.0", 4921 + "block", 4922 + "bytemuck", 4923 + "cfg-if", 4924 + "cfg_aliases", 4925 + "core-graphics-types 0.2.0", 4926 + "glow", 4927 + "glutin_wgl_sys", 4928 + "gpu-alloc", 4929 + "gpu-allocator", 4930 + "gpu-descriptor", 4931 + "hashbrown 0.15.5", 4932 + "js-sys", 4933 + "khronos-egl", 4934 + "libc", 4935 + "libloading", 4936 + "log", 4937 + "metal", 4938 + "naga", 4939 + "ndk-sys 0.6.0+11769913", 4940 + "objc", 4941 + "ordered-float", 4942 + "parking_lot", 4943 + "portable-atomic", 4944 + "portable-atomic-util", 4945 + "profiling", 4946 + "range-alloc", 4947 + "raw-window-handle", 4948 + "renderdoc-sys", 4949 + "smallvec", 4950 + "thiserror 2.0.17", 4951 + "wasm-bindgen", 4952 + "web-sys", 4953 + "wgpu-types", 4954 + "windows 0.58.0", 4955 + "windows-core 0.58.0", 4956 + ] 4957 + 4958 + [[package]] 4959 + name = "wgpu-types" 4960 + version = "26.0.0" 4961 + source = "registry+https://github.com/rust-lang/crates.io-index" 4962 + checksum = "eca7a8d8af57c18f57d393601a1fb159ace8b2328f1b6b5f80893f7d672c9ae2" 4963 + dependencies = [ 4964 + "bitflags 2.10.0", 4965 + "bytemuck", 4966 + "js-sys", 4967 + "log", 4968 + "serde", 4969 + "thiserror 2.0.17", 4970 + "web-sys", 4971 + ] 4972 + 4973 + [[package]] 4974 + name = "winapi" 4975 + version = "0.3.9" 4976 + source = "registry+https://github.com/rust-lang/crates.io-index" 4977 + checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 4978 + dependencies = [ 4979 + "winapi-i686-pc-windows-gnu", 4980 + "winapi-x86_64-pc-windows-gnu", 4981 + ] 4982 + 4983 + [[package]] 4984 + name = "winapi-i686-pc-windows-gnu" 4985 + version = "0.4.0" 4986 + source = "registry+https://github.com/rust-lang/crates.io-index" 4987 + checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 4988 + 4989 + [[package]] 4990 + name = "winapi-util" 4991 + version = "0.1.11" 4992 + source = "registry+https://github.com/rust-lang/crates.io-index" 4993 + checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" 4994 + dependencies = [ 4995 + "windows-sys 0.61.2", 4996 + ] 4997 + 4998 + [[package]] 4999 + name = "winapi-x86_64-pc-windows-gnu" 5000 + version = "0.4.0" 5001 + source = "registry+https://github.com/rust-lang/crates.io-index" 5002 + checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 5003 + 5004 + [[package]] 5005 + name = "windows" 5006 + version = "0.54.0" 5007 + source = "registry+https://github.com/rust-lang/crates.io-index" 5008 + checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49" 5009 + dependencies = [ 5010 + "windows-core 0.54.0", 5011 + "windows-targets 0.52.6", 5012 + ] 5013 + 5014 + [[package]] 5015 + name = "windows" 5016 + version = "0.58.0" 5017 + source = "registry+https://github.com/rust-lang/crates.io-index" 5018 + checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6" 5019 + dependencies = [ 5020 + "windows-core 0.58.0", 5021 + "windows-targets 0.52.6", 5022 + ] 5023 + 5024 + [[package]] 5025 + name = "windows" 5026 + version = "0.61.3" 5027 + source = "registry+https://github.com/rust-lang/crates.io-index" 5028 + checksum = "9babd3a767a4c1aef6900409f85f5d53ce2544ccdfaa86dad48c91782c6d6893" 5029 + dependencies = [ 5030 + "windows-collections 0.2.0", 5031 + "windows-core 0.61.2", 5032 + "windows-future 0.2.1", 5033 + "windows-link 0.1.3", 5034 + "windows-numerics 0.2.0", 5035 + ] 5036 + 5037 + [[package]] 5038 + name = "windows" 5039 + version = "0.62.2" 5040 + source = "registry+https://github.com/rust-lang/crates.io-index" 5041 + checksum = "527fadee13e0c05939a6a05d5bd6eec6cd2e3dbd648b9f8e447c6518133d8580" 5042 + dependencies = [ 5043 + "windows-collections 0.3.2", 5044 + "windows-core 0.62.2", 5045 + "windows-future 0.3.2", 5046 + "windows-numerics 0.3.1", 5047 + ] 5048 + 5049 + [[package]] 5050 + name = "windows-collections" 5051 + version = "0.2.0" 5052 + source = "registry+https://github.com/rust-lang/crates.io-index" 5053 + checksum = "3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8" 5054 + dependencies = [ 5055 + "windows-core 0.61.2", 5056 + ] 5057 + 5058 + [[package]] 5059 + name = "windows-collections" 5060 + version = "0.3.2" 5061 + source = "registry+https://github.com/rust-lang/crates.io-index" 5062 + checksum = "23b2d95af1a8a14a3c7367e1ed4fc9c20e0a26e79551b1454d72583c97cc6610" 5063 + dependencies = [ 5064 + "windows-core 0.62.2", 5065 + ] 5066 + 5067 + [[package]] 5068 + name = "windows-core" 5069 + version = "0.54.0" 5070 + source = "registry+https://github.com/rust-lang/crates.io-index" 5071 + checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65" 5072 + dependencies = [ 5073 + "windows-result 0.1.2", 5074 + "windows-targets 0.52.6", 5075 + ] 5076 + 5077 + [[package]] 5078 + name = "windows-core" 5079 + version = "0.58.0" 5080 + source = "registry+https://github.com/rust-lang/crates.io-index" 5081 + checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" 5082 + dependencies = [ 5083 + "windows-implement 0.58.0", 5084 + "windows-interface 0.58.0", 5085 + "windows-result 0.2.0", 5086 + "windows-strings 0.1.0", 5087 + "windows-targets 0.52.6", 5088 + ] 5089 + 5090 + [[package]] 5091 + name = "windows-core" 5092 + version = "0.61.2" 5093 + source = "registry+https://github.com/rust-lang/crates.io-index" 5094 + checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" 5095 + dependencies = [ 5096 + "windows-implement 0.60.2", 5097 + "windows-interface 0.59.3", 5098 + "windows-link 0.1.3", 5099 + "windows-result 0.3.4", 5100 + "windows-strings 0.4.2", 5101 + ] 5102 + 5103 + [[package]] 5104 + name = "windows-core" 5105 + version = "0.62.2" 5106 + source = "registry+https://github.com/rust-lang/crates.io-index" 5107 + checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" 5108 + dependencies = [ 5109 + "windows-implement 0.60.2", 5110 + "windows-interface 0.59.3", 5111 + "windows-link 0.2.1", 5112 + "windows-result 0.4.1", 5113 + "windows-strings 0.5.1", 5114 + ] 5115 + 5116 + [[package]] 5117 + name = "windows-future" 5118 + version = "0.2.1" 5119 + source = "registry+https://github.com/rust-lang/crates.io-index" 5120 + checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e" 5121 + dependencies = [ 5122 + "windows-core 0.61.2", 5123 + "windows-link 0.1.3", 5124 + "windows-threading 0.1.0", 5125 + ] 5126 + 5127 + [[package]] 5128 + name = "windows-future" 5129 + version = "0.3.2" 5130 + source = "registry+https://github.com/rust-lang/crates.io-index" 5131 + checksum = "e1d6f90251fe18a279739e78025bd6ddc52a7e22f921070ccdc67dde84c605cb" 5132 + dependencies = [ 5133 + "windows-core 0.62.2", 5134 + "windows-link 0.2.1", 5135 + "windows-threading 0.2.1", 5136 + ] 5137 + 5138 + [[package]] 5139 + name = "windows-implement" 5140 + version = "0.58.0" 5141 + source = "registry+https://github.com/rust-lang/crates.io-index" 5142 + checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" 5143 + dependencies = [ 5144 + "proc-macro2", 5145 + "quote", 5146 + "syn", 5147 + ] 5148 + 5149 + [[package]] 5150 + name = "windows-implement" 5151 + version = "0.60.2" 5152 + source = "registry+https://github.com/rust-lang/crates.io-index" 5153 + checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" 5154 + dependencies = [ 5155 + "proc-macro2", 5156 + "quote", 5157 + "syn", 5158 + ] 5159 + 5160 + [[package]] 5161 + name = "windows-interface" 5162 + version = "0.58.0" 5163 + source = "registry+https://github.com/rust-lang/crates.io-index" 5164 + checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" 5165 + dependencies = [ 5166 + "proc-macro2", 5167 + "quote", 5168 + "syn", 5169 + ] 5170 + 5171 + [[package]] 5172 + name = "windows-interface" 5173 + version = "0.59.3" 5174 + source = "registry+https://github.com/rust-lang/crates.io-index" 5175 + checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" 5176 + dependencies = [ 5177 + "proc-macro2", 5178 + "quote", 5179 + "syn", 5180 + ] 5181 + 5182 + [[package]] 5183 + name = "windows-link" 5184 + version = "0.1.3" 5185 + source = "registry+https://github.com/rust-lang/crates.io-index" 5186 + checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" 5187 + 5188 + [[package]] 5189 + name = "windows-link" 5190 + version = "0.2.1" 5191 + source = "registry+https://github.com/rust-lang/crates.io-index" 5192 + checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" 5193 + 5194 + [[package]] 5195 + name = "windows-numerics" 5196 + version = "0.2.0" 5197 + source = "registry+https://github.com/rust-lang/crates.io-index" 5198 + checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1" 5199 + dependencies = [ 5200 + "windows-core 0.61.2", 5201 + "windows-link 0.1.3", 5202 + ] 5203 + 5204 + [[package]] 5205 + name = "windows-numerics" 5206 + version = "0.3.1" 5207 + source = "registry+https://github.com/rust-lang/crates.io-index" 5208 + checksum = "6e2e40844ac143cdb44aead537bbf727de9b044e107a0f1220392177d15b0f26" 5209 + dependencies = [ 5210 + "windows-core 0.62.2", 5211 + "windows-link 0.2.1", 5212 + ] 5213 + 5214 + [[package]] 5215 + name = "windows-result" 5216 + version = "0.1.2" 5217 + source = "registry+https://github.com/rust-lang/crates.io-index" 5218 + checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" 5219 + dependencies = [ 5220 + "windows-targets 0.52.6", 5221 + ] 5222 + 5223 + [[package]] 5224 + name = "windows-result" 5225 + version = "0.2.0" 5226 + source = "registry+https://github.com/rust-lang/crates.io-index" 5227 + checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" 5228 + dependencies = [ 5229 + "windows-targets 0.52.6", 5230 + ] 5231 + 5232 + [[package]] 5233 + name = "windows-result" 5234 + version = "0.3.4" 5235 + source = "registry+https://github.com/rust-lang/crates.io-index" 5236 + checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" 5237 + dependencies = [ 5238 + "windows-link 0.1.3", 5239 + ] 5240 + 5241 + [[package]] 5242 + name = "windows-result" 5243 + version = "0.4.1" 5244 + source = "registry+https://github.com/rust-lang/crates.io-index" 5245 + checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" 5246 + dependencies = [ 5247 + "windows-link 0.2.1", 5248 + ] 5249 + 5250 + [[package]] 5251 + name = "windows-strings" 5252 + version = "0.1.0" 5253 + source = "registry+https://github.com/rust-lang/crates.io-index" 5254 + checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" 5255 + dependencies = [ 5256 + "windows-result 0.2.0", 5257 + "windows-targets 0.52.6", 5258 + ] 5259 + 5260 + [[package]] 5261 + name = "windows-strings" 5262 + version = "0.4.2" 5263 + source = "registry+https://github.com/rust-lang/crates.io-index" 5264 + checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" 5265 + dependencies = [ 5266 + "windows-link 0.1.3", 5267 + ] 5268 + 5269 + [[package]] 5270 + name = "windows-strings" 5271 + version = "0.5.1" 5272 + source = "registry+https://github.com/rust-lang/crates.io-index" 5273 + checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" 5274 + dependencies = [ 5275 + "windows-link 0.2.1", 5276 + ] 5277 + 5278 + [[package]] 5279 + name = "windows-sys" 5280 + version = "0.45.0" 5281 + source = "registry+https://github.com/rust-lang/crates.io-index" 5282 + checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" 5283 + dependencies = [ 5284 + "windows-targets 0.42.2", 5285 + ] 5286 + 5287 + [[package]] 5288 + name = "windows-sys" 5289 + version = "0.52.0" 5290 + source = "registry+https://github.com/rust-lang/crates.io-index" 5291 + checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" 5292 + dependencies = [ 5293 + "windows-targets 0.52.6", 5294 + ] 5295 + 5296 + [[package]] 5297 + name = "windows-sys" 5298 + version = "0.59.0" 5299 + source = "registry+https://github.com/rust-lang/crates.io-index" 5300 + checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" 5301 + dependencies = [ 5302 + "windows-targets 0.52.6", 5303 + ] 5304 + 5305 + [[package]] 5306 + name = "windows-sys" 5307 + version = "0.61.2" 5308 + source = "registry+https://github.com/rust-lang/crates.io-index" 5309 + checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" 5310 + dependencies = [ 5311 + "windows-link 0.2.1", 5312 + ] 5313 + 5314 + [[package]] 5315 + name = "windows-targets" 5316 + version = "0.42.2" 5317 + source = "registry+https://github.com/rust-lang/crates.io-index" 5318 + checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" 5319 + dependencies = [ 5320 + "windows_aarch64_gnullvm 0.42.2", 5321 + "windows_aarch64_msvc 0.42.2", 5322 + "windows_i686_gnu 0.42.2", 5323 + "windows_i686_msvc 0.42.2", 5324 + "windows_x86_64_gnu 0.42.2", 5325 + "windows_x86_64_gnullvm 0.42.2", 5326 + "windows_x86_64_msvc 0.42.2", 5327 + ] 5328 + 5329 + [[package]] 5330 + name = "windows-targets" 5331 + version = "0.52.6" 5332 + source = "registry+https://github.com/rust-lang/crates.io-index" 5333 + checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" 5334 + dependencies = [ 5335 + "windows_aarch64_gnullvm 0.52.6", 5336 + "windows_aarch64_msvc 0.52.6", 5337 + "windows_i686_gnu 0.52.6", 5338 + "windows_i686_gnullvm", 5339 + "windows_i686_msvc 0.52.6", 5340 + "windows_x86_64_gnu 0.52.6", 5341 + "windows_x86_64_gnullvm 0.52.6", 5342 + "windows_x86_64_msvc 0.52.6", 5343 + ] 5344 + 5345 + [[package]] 5346 + name = "windows-threading" 5347 + version = "0.1.0" 5348 + source = "registry+https://github.com/rust-lang/crates.io-index" 5349 + checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6" 5350 + dependencies = [ 5351 + "windows-link 0.1.3", 5352 + ] 5353 + 5354 + [[package]] 5355 + name = "windows-threading" 5356 + version = "0.2.1" 5357 + source = "registry+https://github.com/rust-lang/crates.io-index" 5358 + checksum = "3949bd5b99cafdf1c7ca86b43ca564028dfe27d66958f2470940f73d86d75b37" 5359 + dependencies = [ 5360 + "windows-link 0.2.1", 5361 + ] 5362 + 5363 + [[package]] 5364 + name = "windows_aarch64_gnullvm" 5365 + version = "0.42.2" 5366 + source = "registry+https://github.com/rust-lang/crates.io-index" 5367 + checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" 5368 + 5369 + [[package]] 5370 + name = "windows_aarch64_gnullvm" 5371 + version = "0.52.6" 5372 + source = "registry+https://github.com/rust-lang/crates.io-index" 5373 + checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" 5374 + 5375 + [[package]] 5376 + name = "windows_aarch64_msvc" 5377 + version = "0.42.2" 5378 + source = "registry+https://github.com/rust-lang/crates.io-index" 5379 + checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" 5380 + 5381 + [[package]] 5382 + name = "windows_aarch64_msvc" 5383 + version = "0.52.6" 5384 + source = "registry+https://github.com/rust-lang/crates.io-index" 5385 + checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" 5386 + 5387 + [[package]] 5388 + name = "windows_i686_gnu" 5389 + version = "0.42.2" 5390 + source = "registry+https://github.com/rust-lang/crates.io-index" 5391 + checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" 5392 + 5393 + [[package]] 5394 + name = "windows_i686_gnu" 5395 + version = "0.52.6" 5396 + source = "registry+https://github.com/rust-lang/crates.io-index" 5397 + checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" 5398 + 5399 + [[package]] 5400 + name = "windows_i686_gnullvm" 5401 + version = "0.52.6" 5402 + source = "registry+https://github.com/rust-lang/crates.io-index" 5403 + checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" 5404 + 5405 + [[package]] 5406 + name = "windows_i686_msvc" 5407 + version = "0.42.2" 5408 + source = "registry+https://github.com/rust-lang/crates.io-index" 5409 + checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" 5410 + 5411 + [[package]] 5412 + name = "windows_i686_msvc" 5413 + version = "0.52.6" 5414 + source = "registry+https://github.com/rust-lang/crates.io-index" 5415 + checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" 5416 + 5417 + [[package]] 5418 + name = "windows_x86_64_gnu" 5419 + version = "0.42.2" 5420 + source = "registry+https://github.com/rust-lang/crates.io-index" 5421 + checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" 5422 + 5423 + [[package]] 5424 + name = "windows_x86_64_gnu" 5425 + version = "0.52.6" 5426 + source = "registry+https://github.com/rust-lang/crates.io-index" 5427 + checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" 5428 + 5429 + [[package]] 5430 + name = "windows_x86_64_gnullvm" 5431 + version = "0.42.2" 5432 + source = "registry+https://github.com/rust-lang/crates.io-index" 5433 + checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" 5434 + 5435 + [[package]] 5436 + name = "windows_x86_64_gnullvm" 5437 + version = "0.52.6" 5438 + source = "registry+https://github.com/rust-lang/crates.io-index" 5439 + checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" 5440 + 5441 + [[package]] 5442 + name = "windows_x86_64_msvc" 5443 + version = "0.42.2" 5444 + source = "registry+https://github.com/rust-lang/crates.io-index" 5445 + checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" 5446 + 5447 + [[package]] 5448 + name = "windows_x86_64_msvc" 5449 + version = "0.52.6" 5450 + source = "registry+https://github.com/rust-lang/crates.io-index" 5451 + checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 5452 + 5453 + [[package]] 5454 + name = "winit" 5455 + version = "0.30.12" 5456 + source = "registry+https://github.com/rust-lang/crates.io-index" 5457 + checksum = "c66d4b9ed69c4009f6321f762d6e61ad8a2389cd431b97cb1e146812e9e6c732" 5458 + dependencies = [ 5459 + "ahash", 5460 + "android-activity", 5461 + "atomic-waker", 5462 + "bitflags 2.10.0", 5463 + "block2 0.5.1", 5464 + "bytemuck", 5465 + "calloop", 5466 + "cfg_aliases", 5467 + "concurrent-queue", 5468 + "core-foundation 0.9.4", 5469 + "core-graphics", 5470 + "cursor-icon", 5471 + "dpi", 5472 + "js-sys", 5473 + "libc", 5474 + "memmap2", 5475 + "ndk 0.9.0", 5476 + "objc2 0.5.2", 5477 + "objc2-app-kit", 5478 + "objc2-foundation", 5479 + "objc2-ui-kit", 5480 + "orbclient", 5481 + "percent-encoding", 5482 + "pin-project", 5483 + "raw-window-handle", 5484 + "redox_syscall 0.4.1", 5485 + "rustix 0.38.44", 5486 + "sctk-adwaita", 5487 + "smithay-client-toolkit", 5488 + "smol_str", 5489 + "tracing", 5490 + "unicode-segmentation", 5491 + "wasm-bindgen", 5492 + "wasm-bindgen-futures", 5493 + "wayland-backend", 5494 + "wayland-client", 5495 + "wayland-protocols", 5496 + "wayland-protocols-plasma", 5497 + "web-sys", 5498 + "web-time", 5499 + "windows-sys 0.52.0", 5500 + "x11-dl", 5501 + "x11rb", 5502 + "xkbcommon-dl", 5503 + ] 5504 + 5505 + [[package]] 5506 + name = "winnow" 5507 + version = "0.7.13" 5508 + source = "registry+https://github.com/rust-lang/crates.io-index" 5509 + checksum = "21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf" 5510 + dependencies = [ 5511 + "memchr", 5512 + ] 5513 + 5514 + [[package]] 5515 + name = "wit-bindgen" 5516 + version = "0.46.0" 5517 + source = "registry+https://github.com/rust-lang/crates.io-index" 5518 + checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" 5519 + 5520 + [[package]] 5521 + name = "x11-dl" 5522 + version = "2.21.0" 5523 + source = "registry+https://github.com/rust-lang/crates.io-index" 5524 + checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f" 5525 + dependencies = [ 5526 + "libc", 5527 + "once_cell", 5528 + "pkg-config", 5529 + ] 5530 + 5531 + [[package]] 5532 + name = "x11rb" 5533 + version = "0.13.2" 5534 + source = "registry+https://github.com/rust-lang/crates.io-index" 5535 + checksum = "9993aa5be5a26815fe2c3eacfc1fde061fc1a1f094bf1ad2a18bf9c495dd7414" 5536 + dependencies = [ 5537 + "as-raw-xcb-connection", 5538 + "gethostname", 5539 + "libc", 5540 + "libloading", 5541 + "once_cell", 5542 + "rustix 1.1.2", 5543 + "x11rb-protocol", 5544 + ] 5545 + 5546 + [[package]] 5547 + name = "x11rb-protocol" 5548 + version = "0.13.2" 5549 + source = "registry+https://github.com/rust-lang/crates.io-index" 5550 + checksum = "ea6fc2961e4ef194dcbfe56bb845534d0dc8098940c7e5c012a258bfec6701bd" 5551 + 5552 + [[package]] 5553 + name = "xcursor" 5554 + version = "0.3.10" 5555 + source = "registry+https://github.com/rust-lang/crates.io-index" 5556 + checksum = "bec9e4a500ca8864c5b47b8b482a73d62e4237670e5b5f1d6b9e3cae50f28f2b" 5557 + 5558 + [[package]] 5559 + name = "xkbcommon-dl" 5560 + version = "0.4.2" 5561 + source = "registry+https://github.com/rust-lang/crates.io-index" 5562 + checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5" 5563 + dependencies = [ 5564 + "bitflags 2.10.0", 5565 + "dlib", 5566 + "log", 5567 + "once_cell", 5568 + "xkeysym", 5569 + ] 5570 + 5571 + [[package]] 5572 + name = "xkeysym" 5573 + version = "0.2.1" 5574 + source = "registry+https://github.com/rust-lang/crates.io-index" 5575 + checksum = "b9cc00251562a284751c9973bace760d86c0276c471b4be569fe6b068ee97a56" 5576 + 5577 + [[package]] 5578 + name = "xml-rs" 5579 + version = "0.8.28" 5580 + source = "registry+https://github.com/rust-lang/crates.io-index" 5581 + checksum = "3ae8337f8a065cfc972643663ea4279e04e7256de865aa66fe25cec5fb912d3f" 5582 + 5583 + [[package]] 5584 + name = "yazi" 5585 + version = "0.2.1" 5586 + source = "registry+https://github.com/rust-lang/crates.io-index" 5587 + checksum = "e01738255b5a16e78bbb83e7fbba0a1e7dd506905cfc53f4622d89015a03fbb5" 5588 + 5589 + [[package]] 5590 + name = "zeno" 5591 + version = "0.3.3" 5592 + source = "registry+https://github.com/rust-lang/crates.io-index" 5593 + checksum = "6df3dc4292935e51816d896edcd52aa30bc297907c26167fec31e2b0c6a32524" 5594 + 5595 + [[package]] 5596 + name = "zerocopy" 5597 + version = "0.8.28" 5598 + source = "registry+https://github.com/rust-lang/crates.io-index" 5599 + checksum = "43fa6694ed34d6e57407afbccdeecfa268c470a7d2a5b0cf49ce9fcc345afb90" 5600 + dependencies = [ 5601 + "zerocopy-derive", 5602 + ] 5603 + 5604 + [[package]] 5605 + name = "zerocopy-derive" 5606 + version = "0.8.28" 5607 + source = "registry+https://github.com/rust-lang/crates.io-index" 5608 + checksum = "c640b22cd9817fae95be82f0d2f90b11f7605f6c319d16705c459b27ac2cbc26" 5609 + dependencies = [ 5610 + "proc-macro2", 5611 + "quote", 5612 + "syn", 5613 + ]
+12
Cargo.toml
··· 1 + [package] 2 + name = "felix" 3 + version = "0.1.0" 4 + edition = "2024" 5 + 6 + [dependencies] 7 + anyhow = "1.0.100" 8 + bevy = "0.17.3" 9 + nanoid = "0.4.0" 10 + 11 + [features] 12 + client = []
+31
src/main.rs
··· 1 + use bevy::prelude::*; 2 + 3 + mod net; 4 + 5 + fn main() { 6 + let mut app = App::new(); 7 + app.add_systems(Startup, move || net::handle_net().expect("Network Module Failed.")); 8 + #[cfg(feature = "client")] 9 + { 10 + app.add_plugins(DefaultPlugins); 11 + app.add_systems(Startup, setup); 12 + } 13 + app.run(); 14 + } 15 + 16 + fn setup( 17 + mut commands: Commands, 18 + mut meshes: ResMut<Assets<Mesh>>, 19 + mut materials: ResMut<Assets<StandardMaterial>> 20 + ){ 21 + commands.spawn(( 22 + Mesh3d(meshes.add(Cuboid::new(1.0, 1.0, 1.0))), 23 + MeshMaterial3d(materials.add(Color::WHITE)), 24 + Transform::from_xyz(0.0, 0.0, 0.0) 25 + )); 26 + 27 + commands.spawn(( 28 + Camera3d::default(), 29 + Transform::from_xyz(1.0, 4.5, 1.0).looking_at(Vec3::ZERO, Vec3::Y), 30 + )); 31 + }
+153
src/net/buffer.rs
··· 1 + #[derive(Clone)] 2 + pub struct Buffer{ 3 + dat: Vec<u8>, 4 + pointer: usize 5 + } 6 + 7 + impl Buffer{ 8 + pub fn empty() -> Self{ 9 + Self { dat: vec![], pointer: 0 } 10 + } 11 + 12 + pub fn pointer(&mut self, val: usize){ 13 + self.pointer = val; 14 + } 15 + 16 + pub fn set_u8(&mut self, value: u8){ 17 + self.dat.push(value); 18 + } 19 + 20 + pub fn set_u8s(&mut self, value: &[u8]){ 21 + self.dat.append(&mut value.to_vec()); 22 + } 23 + 24 + pub fn set_i16(&mut self, value: i16){ 25 + let b = value.to_le_bytes(); 26 + self.set_u8s(&b); 27 + } 28 + 29 + pub fn set_i32(&mut self, value: i32){ 30 + let b = value.to_le_bytes(); 31 + self.set_u8s(&b); 32 + } 33 + 34 + pub fn set_i64(&mut self, value: i64){ 35 + let b = value.to_le_bytes(); 36 + self.set_u8s(&b); 37 + } 38 + 39 + pub fn set_u16(&mut self, value: u16){ 40 + let b = value.to_le_bytes(); 41 + self.set_u8s(&b); 42 + } 43 + 44 + pub fn set_u32(&mut self, value: u32){ 45 + let b = value.to_le_bytes(); 46 + self.set_u8s(&b); 47 + } 48 + 49 + pub fn set_u64(&mut self, value: u64){ 50 + let b = value.to_le_bytes(); 51 + self.set_u8s(&b); 52 + } 53 + 54 + pub fn set_str(&mut self, value: String){ 55 + self.set_u32(value.len() as u32); 56 + 57 + let b = value.as_bytes(); 58 + self.set_u8s(b); 59 + } 60 + 61 + 62 + pub fn set_f32(&mut self, value: f32){ 63 + let b = value.to_le_bytes(); 64 + self.set_u8s(&b); 65 + } 66 + 67 + pub fn set_f64(&mut self, value: f64){ 68 + let b = value.to_le_bytes(); 69 + self.set_u8s(&b); 70 + } 71 + 72 + 73 + pub fn get_u8(&mut self) -> u8{ 74 + let b = self.dat[self.pointer]; 75 + self.pointer += 1; 76 + 77 + b 78 + } 79 + 80 + pub fn get_u8s(&mut self, count: usize) -> &[u8]{ 81 + let b = &self.dat[self.pointer..self.pointer + count]; 82 + self.pointer += count; 83 + 84 + b 85 + } 86 + 87 + pub fn get_i16(&mut self) -> i16{ 88 + let b = self.get_u8s(2); 89 + i16::from_le_bytes([ b[0], b[1] ]) 90 + } 91 + 92 + pub fn get_i32(&mut self) -> i32{ 93 + let b = self.get_u8s(4); 94 + i32::from_le_bytes([ b[0], b[1], b[2], b[3] ]) 95 + } 96 + 97 + pub fn get_i64(&mut self) -> i64{ 98 + let b = self.get_u8s(8); 99 + i64::from_le_bytes([ b[0], b[1], b[2], b[3], b[4], b[5], b[6], b[7] ]) 100 + } 101 + 102 + pub fn get_u16(&mut self) -> u16{ 103 + let b = self.get_u8s(2); 104 + u16::from_le_bytes([ b[0], b[1] ]) 105 + } 106 + 107 + pub fn get_u32(&mut self) -> u32{ 108 + let b = self.get_u8s(4); 109 + u32::from_le_bytes([ b[0], b[1], b[2], b[3] ]) 110 + } 111 + 112 + pub fn get_u64(&mut self) -> u64{ 113 + let b = self.get_u8s(8); 114 + u64::from_le_bytes([ b[0], b[1], b[2], b[3], b[4], b[5], b[6], b[7] ]) 115 + } 116 + 117 + pub fn get_str(&mut self) -> String{ 118 + let length = self.get_u32(); 119 + let b = self.get_u8s(length as usize); 120 + 121 + let string = str::from_utf8(b).unwrap(); 122 + string.to_owned() 123 + } 124 + 125 + 126 + pub fn get_f32(&mut self) -> f32{ 127 + let b = self.get_u8s(4); 128 + f32::from_le_bytes([ b[0], b[1], b[2], b[3] ]) 129 + } 130 + 131 + pub fn get_f64(&mut self) -> f64{ 132 + let b = self.get_u8s(8); 133 + f64::from_le_bytes([ b[0], b[1], b[2], b[3], b[4], b[5], b[6], b[7] ]) 134 + } 135 + } 136 + 137 + impl From<Vec<u8>> for Buffer{ 138 + fn from(value: Vec<u8>) -> Self { 139 + Self { dat: value, pointer: 0 } 140 + } 141 + } 142 + 143 + impl From<&[u8]> for Buffer{ 144 + fn from(value: &[u8]) -> Self { 145 + Self { dat: value.to_vec(), pointer: 0 } 146 + } 147 + } 148 + 149 + impl Into<Vec<u8>> for Buffer{ 150 + fn into(self) -> Vec<u8> { 151 + self.dat 152 + } 153 + }
+36
src/net/client/mod.rs
··· 1 + use std::{io::Read, net::{TcpStream, UdpSocket}, thread}; 2 + 3 + use crate::net::{packet::{self, Packet, PacketTypes}, packets::link_udp::LinkUDP}; 4 + 5 + pub fn handle_net_client() -> anyhow::Result<()>{ 6 + let mut tcp = TcpStream::connect("127.0.0.1:2603")?; 7 + let udp = UdpSocket::bind("0.0.0.0:0")?; 8 + 9 + thread::spawn(move || { 10 + let mut buf = [0; 1024]; 11 + 12 + loop{ 13 + let length = tcp.read(&mut buf).unwrap(); 14 + if length == 0 { break; } 15 + 16 + let msg = &buf[0..length]; 17 + let packet = packet::parse(msg.into()); 18 + 19 + match packet{ 20 + PacketTypes::NotifyConnectionInfo(info) => { 21 + dbg!(&info); 22 + 23 + let packet = LinkUDP { id: info.id }; 24 + let packet: Vec<_> = packet.to_buf().into(); 25 + 26 + udp.send_to(&packet, "127.0.0.1:2603").unwrap(); 27 + }, 28 + _ => {} 29 + } 30 + } 31 + 32 + println!("[WARN] Client disconnected from server"); 33 + }); 34 + 35 + Ok(()) 36 + }
+15
src/net/mod.rs
··· 1 + #[cfg(feature = "client")] 2 + mod client; 3 + 4 + mod server; 5 + 6 + mod packet; 7 + mod packets; 8 + mod buffer; 9 + 10 + pub fn handle_net() -> anyhow::Result<()>{ 11 + #[cfg(feature = "client")] 12 + return client::handle_net_client(); 13 + 14 + server::handle_net_server() 15 + }
+30
src/net/packet.rs
··· 1 + use crate::net::{ 2 + buffer::Buffer, 3 + packets::{ 4 + link_udp::LinkUDP, 5 + notify_connection_info::NotifyConnectionInfo, 6 + null::Null 7 + } 8 + }; 9 + 10 + #[derive(Debug)] 11 + pub enum PacketTypes{ 12 + NotifyConnectionInfo(NotifyConnectionInfo), 13 + LinkUDP(LinkUDP), 14 + Null(Null) 15 + } 16 + 17 + pub trait Packet{ 18 + fn from_buf(buf: Buffer) -> Self; 19 + fn to_buf(&self) -> Buffer; 20 + } 21 + 22 + pub fn parse(mut buf: Buffer) -> PacketTypes{ 23 + let id = buf.get_u16(); 24 + 25 + match id{ 26 + 0 => PacketTypes::NotifyConnectionInfo(NotifyConnectionInfo::from_buf(buf)), 27 + 1 => PacketTypes::LinkUDP(LinkUDP::from_buf(buf)), 28 + _ => PacketTypes::Null(Null::from_buf(buf)) 29 + } 30 + }
+3
src/net/packets/mod.rs
··· 1 + pub mod notify_connection_info; 2 + pub mod link_udp; 3 + pub mod null;
+26
src/net/packets/notify_connection_info.rs
··· 1 + use crate::net::{buffer::Buffer, server::connection::Connection, packet::Packet}; 2 + 3 + #[derive(Debug)] 4 + pub struct NotifyConnectionInfo{ 5 + pub id: String 6 + } 7 + 8 + impl From<&Connection> for NotifyConnectionInfo{ 9 + fn from(value: &Connection) -> Self { 10 + Self { id: value.id.clone() } 11 + } 12 + } 13 + 14 + impl Packet for NotifyConnectionInfo{ 15 + fn to_buf(&self) -> Buffer { 16 + let mut buf = Buffer::empty(); 17 + buf.set_u16(0); 18 + buf.set_str(self.id.clone()); 19 + 20 + buf 21 + } 22 + 23 + fn from_buf(mut buf: Buffer) -> Self { 24 + Self { id: buf.get_str() } 25 + } 26 + }
+16
src/net/packets/null.rs
··· 1 + use crate::net::{buffer::Buffer, packet::Packet}; 2 + 3 + #[derive(Debug)] 4 + pub struct Null{ 5 + 6 + } 7 + 8 + impl Packet for Null{ 9 + fn to_buf(&self) -> Buffer { 10 + Buffer::empty() 11 + } 12 + 13 + fn from_buf(_: Buffer) -> Self { 14 + Self {} 15 + } 16 + }
+65
src/net/server/connection.rs
··· 1 + use std::{fs, io::Write, net::{SocketAddr, TcpStream, UdpSocket}, sync::mpsc::Sender, thread}; 2 + 3 + use nanoid::nanoid; 4 + 5 + use crate::net::{packet::Packet, packets::notify_connection_info::NotifyConnectionInfo, server::NetServerCommand}; 6 + 7 + #[derive(Debug)] 8 + pub struct Connection{ 9 + tcp: TcpStream, 10 + udp: Option<SocketAddr>, 11 + 12 + pub id: String 13 + } 14 + 15 + impl Connection{ 16 + pub fn new( stream: TcpStream, cmd: Sender<NetServerCommand> ) -> Self{ 17 + let mut conn = Self { 18 + tcp: stream, 19 + udp: None, 20 + 21 + id: nanoid!() 22 + }; 23 + 24 + conn.start_listener_thread(cmd).unwrap(); 25 + 26 + let packet = NotifyConnectionInfo::from(&conn); 27 + conn.send_reliable(packet).unwrap(); 28 + 29 + conn 30 + } 31 + 32 + fn start_listener_thread(&self, cmd: Sender<NetServerCommand>) -> anyhow::Result<()>{ 33 + let stream = self.tcp.try_clone()?; 34 + 35 + thread::spawn(move || { 36 + 37 + }); 38 + 39 + Ok(()) 40 + } 41 + 42 + pub fn connect_udp(&mut self, address: SocketAddr){ 43 + self.udp = Some(address); 44 + } 45 + 46 + pub fn send_reliable(&mut self, packet: impl Packet) -> anyhow::Result<()>{ 47 + let buf: Vec<u8> = packet.to_buf().into(); 48 + self.tcp.write(&buf)?; 49 + 50 + Ok(()) 51 + } 52 + 53 + pub fn try_send_unreliable(&mut self, packet: impl Packet) -> anyhow::Result<()>{ 54 + let buf: Vec<u8> = packet.to_buf().into(); 55 + 56 + if let Some(addr) = self.udp{ 57 + UdpSocket::bind("0.0.0.0:0")?.send_to(&buf, addr)?; // TODO: Use shared UDP Socket. 58 + } else{ 59 + println!("[WARN] Cannot send unreliable packet to {}, using TCP instead.", self.id); 60 + self.tcp.write(&buf)?; 61 + } 62 + 63 + Ok(()) 64 + } 65 + }
+75
src/net/server/mod.rs
··· 1 + use std::{collections::HashMap, net::{SocketAddr, TcpListener, TcpStream, UdpSocket}, sync::mpsc::channel, thread}; 2 + 3 + use crate::net::{packet::{self, PacketTypes}, server::{connection::Connection, remote_player::RemotePlayer}}; 4 + 5 + pub mod connection; 6 + pub mod remote_player; 7 + 8 + pub enum NetServerCommand{ 9 + CreateConnection(TcpStream), 10 + LinkUDP(String, SocketAddr), 11 + PlayerDisconnect(String) 12 + } 13 + 14 + pub fn handle_net_server() -> anyhow::Result<()>{ 15 + let tcp_listener = TcpListener::bind("0.0.0.0:2603")?; 16 + let udp_listener = UdpSocket::bind("0.0.0.0:2603")?; 17 + 18 + let ( sender_1, recv ) = channel(); 19 + let sender_2 = sender_1.clone(); 20 + let sender_3 = sender_1.clone(); 21 + 22 + thread::spawn(move || { 23 + loop { 24 + let ( socket, _ ) = tcp_listener.accept().unwrap(); 25 + sender_1.send(NetServerCommand::CreateConnection(socket)).unwrap(); 26 + } 27 + }); 28 + 29 + thread::spawn(move || { 30 + let mut buf = [0; 1024]; 31 + 32 + loop { 33 + let ( length, address ) = udp_listener.recv_from(&mut buf).unwrap(); 34 + 35 + let msg = &buf[0..length]; 36 + let packet = packet::parse(msg.into()); 37 + 38 + match packet{ 39 + PacketTypes::LinkUDP(info) => { 40 + sender_2.send(NetServerCommand::LinkUDP(info.id, address)).unwrap(); 41 + } 42 + _ => {} 43 + } 44 + } 45 + }); 46 + 47 + let mut connections = HashMap::new(); 48 + let mut players = HashMap::new(); 49 + 50 + loop { 51 + while let Ok(cmd) = recv.recv(){ 52 + match cmd{ 53 + NetServerCommand::CreateConnection(socket) => { 54 + let conn = Connection::new(socket, sender_3.clone()); 55 + let player = RemotePlayer { 56 + id: conn.id.clone() 57 + }; 58 + 59 + connections.insert(conn.id.clone(), conn); 60 + players.insert(player.id.clone(), player); 61 + } 62 + NetServerCommand::LinkUDP(id, addr) => { 63 + if let Some(conn) = connections.get_mut(&id){ 64 + conn.connect_udp(addr); 65 + 66 + dbg!(&conn); 67 + } 68 + }, 69 + NetServerCommand::PlayerDisconnect(id) => { 70 + 71 + } 72 + } 73 + } 74 + } 75 + }
+3
src/net/server/remote_player.rs
··· 1 + pub struct RemotePlayer{ 2 + pub id: String, 3 + }