Game stats that reset every frame, inspired by immediate mode GUI.
gamedev bevy stats
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge pull request #19 from AlephCubed/remove_bevy_butler

Update to Bevy 0.17 and remove `bevy_butler`

authored by

AlephCubed and committed by
GitHub
feada402 e3887be0

+452 -760
+438 -456
Cargo.lock
··· 12 12 ] 13 13 14 14 [[package]] 15 + name = "android-activity" 16 + version = "0.6.0" 17 + source = "registry+https://github.com/rust-lang/crates.io-index" 18 + checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" 19 + dependencies = [ 20 + "android-properties", 21 + "bitflags", 22 + "cc", 23 + "cesu8", 24 + "jni", 25 + "jni-sys", 26 + "libc", 27 + "log", 28 + "ndk", 29 + "ndk-context", 30 + "ndk-sys", 31 + "num_enum", 32 + "thiserror 1.0.69", 33 + ] 34 + 35 + [[package]] 36 + name = "android-properties" 37 + version = "0.2.2" 38 + source = "registry+https://github.com/rust-lang/crates.io-index" 39 + checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" 40 + 41 + [[package]] 15 42 name = "android_log-sys" 16 43 version = "0.3.2" 17 44 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 35 62 ] 36 63 37 64 [[package]] 65 + name = "async-channel" 66 + version = "2.5.0" 67 + source = "registry+https://github.com/rust-lang/crates.io-index" 68 + checksum = "924ed96dd52d1b75e9c1a3e6275715fd320f5f9439fb5a4a11fa51f4221158d2" 69 + dependencies = [ 70 + "concurrent-queue", 71 + "event-listener-strategy", 72 + "futures-core", 73 + "pin-project-lite", 74 + ] 75 + 76 + [[package]] 38 77 name = "async-executor" 39 78 version = "1.13.3" 40 79 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 58 97 ] 59 98 60 99 [[package]] 61 - name = "async-trait" 62 - version = "0.1.89" 63 - source = "registry+https://github.com/rust-lang/crates.io-index" 64 - checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" 65 - dependencies = [ 66 - "proc-macro2", 67 - "quote", 68 - "syn 2.0.106", 69 - ] 70 - 71 - [[package]] 72 100 name = "atomic-waker" 73 101 version = "1.1.2" 74 102 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 85 113 86 114 [[package]] 87 115 name = "bevy" 88 - version = "0.16.1" 116 + version = "0.17.0" 89 117 source = "registry+https://github.com/rust-lang/crates.io-index" 90 - checksum = "4b8369c16b7c017437021341521f8b4a0d98e1c70113fb358c3258ae7d661d79" 118 + checksum = "ffb3771e0e660166f25978f8e75f2ac0db1bf89a9012c82b54c2be182b0e9e6d" 91 119 dependencies = [ 92 120 "bevy_internal", 93 121 ] 94 122 95 123 [[package]] 96 - name = "bevy-butler" 97 - version = "0.6.2" 98 - source = "registry+https://github.com/rust-lang/crates.io-index" 99 - checksum = "a837ab609be8353552de441031ee101ac86ffb19ccf9e6d3d2b922aa545f0ff9" 100 - dependencies = [ 101 - "bevy-butler-proc-macro", 102 - "bevy_app", 103 - "bevy_ecs", 104 - "bevy_log", 105 - "bevy_state", 106 - "inventory", 107 - "linkme", 108 - ] 109 - 110 - [[package]] 111 - name = "bevy-butler-proc-macro" 112 - version = "0.6.2-alpha.2" 124 + name = "bevy_android" 125 + version = "0.17.0" 113 126 source = "registry+https://github.com/rust-lang/crates.io-index" 114 - checksum = "4150a4732c48044ec63efd1ebe51a889647391dab5e59603802eac3a1bde63b0" 127 + checksum = "5a2ef5ade8911905299801f1e2c4e5ccadbe2f36c97ec56de0a8a48dc7a795b0" 115 128 dependencies = [ 116 - "deluxe", 117 - "deluxe-core", 118 - "proc-macro2", 119 - "quote", 120 - "sha256", 121 - "syn 2.0.106", 129 + "android-activity", 122 130 ] 123 131 124 132 [[package]] 125 133 name = "bevy_app" 126 - version = "0.16.1" 134 + version = "0.17.0" 127 135 source = "registry+https://github.com/rust-lang/crates.io-index" 128 - checksum = "4491cc4c718ae76b4c6883df58b94cc88b32dcd894ea8d5b603c7c7da72ca967" 136 + checksum = "e2868fc7515a87c9c8e3cd19eba1baf36aaf17658b7b2e252e5e746b51ea12c1" 129 137 dependencies = [ 130 138 "bevy_derive", 131 139 "bevy_ecs", ··· 138 146 "ctrlc", 139 147 "downcast-rs", 140 148 "log", 141 - "thiserror", 149 + "thiserror 2.0.17", 142 150 "variadics_please", 143 151 "wasm-bindgen", 144 152 "web-sys", ··· 147 155 [[package]] 148 156 name = "bevy_auto_plugin" 149 157 version = "0.5.0" 150 - source = "registry+https://github.com/rust-lang/crates.io-index" 151 - checksum = "71599f6ff43778a56d1c9d257bcaf257abdae3385c8c2be883646dd64d1bbb93" 158 + source = "git+https://github.com/StrikeForceZero/bevy_auto_plugin?rev=refs%2Fpull%2F22%2Fhead#9881bcbc54547064f6cdeb8efb1706ecbce423d3" 152 159 dependencies = [ 153 160 "bevy_auto_plugin_proc_macros", 154 161 "bevy_auto_plugin_shared", ··· 159 166 [[package]] 160 167 name = "bevy_auto_plugin_proc_macros" 161 168 version = "0.5.0" 162 - source = "registry+https://github.com/rust-lang/crates.io-index" 163 - checksum = "07922d132befe18e2878cd170ba80110437d509e265f4c138617766191fb22a6" 169 + source = "git+https://github.com/StrikeForceZero/bevy_auto_plugin?rev=refs%2Fpull%2F22%2Fhead#9881bcbc54547064f6cdeb8efb1706ecbce423d3" 164 170 dependencies = [ 165 171 "bevy_auto_plugin_shared", 166 172 "darling", ··· 172 178 [[package]] 173 179 name = "bevy_auto_plugin_shared" 174 180 version = "0.5.0" 175 - source = "registry+https://github.com/rust-lang/crates.io-index" 176 - checksum = "10522f47da314c6a708f3c2001db6eaa0e94a44f06462700e57d1a28a7cdcc54" 181 + source = "git+https://github.com/StrikeForceZero/bevy_auto_plugin?rev=refs%2Fpull%2F22%2Fhead#9881bcbc54547064f6cdeb8efb1706ecbce423d3" 177 182 dependencies = [ 178 183 "bevy_app", 179 184 "bevy_ecs", ··· 189 194 "quote", 190 195 "smart-default", 191 196 "syn 2.0.106", 192 - "thiserror", 197 + "thiserror 2.0.17", 193 198 ] 194 199 195 200 [[package]] 196 201 name = "bevy_derive" 197 - version = "0.16.1" 202 + version = "0.17.0" 198 203 source = "registry+https://github.com/rust-lang/crates.io-index" 199 - checksum = "1b837bf6c51806b10ebfa9edf1844ad80a3a0760d6c5fac4e90761df91a8901a" 204 + checksum = "a6c870f499944058f30ecd8549b0a1babe3cd375519bbe1c071fecc4fdd3f65c" 200 205 dependencies = [ 201 206 "bevy_macro_utils", 202 207 "quote", ··· 205 210 206 211 [[package]] 207 212 name = "bevy_diagnostic" 208 - version = "0.16.1" 213 + version = "0.17.0" 209 214 source = "registry+https://github.com/rust-lang/crates.io-index" 210 - checksum = "48797366f312a8f31e237d08ce3ee70162591282d2bfe7c5ad8be196fb263e55" 215 + checksum = "b742710ea0e05cc4ffed296a3bd8d0d26c1f48f796c1c147e1431787677aabbb" 211 216 dependencies = [ 217 + "atomic-waker", 212 218 "bevy_app", 213 219 "bevy_ecs", 214 220 "bevy_platform", 215 221 "bevy_tasks", 216 222 "bevy_time", 217 - "bevy_utils", 218 223 "const-fnv1a-hash", 219 224 "log", 220 225 ] 221 226 222 227 [[package]] 223 228 name = "bevy_ecs" 224 - version = "0.16.1" 229 + version = "0.17.0" 225 230 source = "registry+https://github.com/rust-lang/crates.io-index" 226 - checksum = "3c2bf6521aae57a0ec3487c4bfb59e36c4a378e834b626a4bea6a885af2fdfe7" 231 + checksum = "409f306ea880aab9281870a5009ce20dc2c4ca6dda732bae08d4e1d7021a342a" 227 232 dependencies = [ 228 233 "arrayvec", 229 234 "bevy_ecs_macros", ··· 236 241 "bumpalo", 237 242 "concurrent-queue", 238 243 "derive_more", 239 - "disqualified", 240 244 "fixedbitset", 241 245 "indexmap", 242 246 "log", 243 247 "nonmax", 244 248 "serde", 249 + "slotmap", 245 250 "smallvec", 246 - "thiserror", 251 + "thiserror 2.0.17", 247 252 "variadics_please", 248 253 ] 249 254 250 255 [[package]] 251 256 name = "bevy_ecs_macros" 252 - version = "0.16.1" 257 + version = "0.17.0" 253 258 source = "registry+https://github.com/rust-lang/crates.io-index" 254 - checksum = "38748d6f3339175c582d751f410fb60a93baf2286c3deb7efebb0878dce7f413" 259 + checksum = "11f9670b6e3bdafdd04e32e7d04d3cb9cfdf26df5e8e49edfb19b1e33b7f6adf" 255 260 dependencies = [ 256 261 "bevy_macro_utils", 257 262 "proc-macro2", ··· 261 266 262 267 [[package]] 263 268 name = "bevy_input" 264 - version = "0.16.1" 269 + version = "0.17.0" 265 270 source = "registry+https://github.com/rust-lang/crates.io-index" 266 - checksum = "18d6b6516433f6f7d680f648d04eb1866bb3927a1782d52f74831b62042f3cd1" 271 + checksum = "da5379bbe8be413e8765ab36080cf2156f9398c87cd1c475411b3caf07b6b20d" 267 272 dependencies = [ 268 273 "bevy_app", 269 274 "bevy_ecs", 270 275 "bevy_math", 271 276 "bevy_platform", 272 277 "bevy_reflect", 273 - "bevy_utils", 274 278 "derive_more", 275 279 "log", 276 - "thiserror", 280 + "thiserror 2.0.17", 277 281 ] 278 282 279 283 [[package]] 280 284 name = "bevy_internal" 281 - version = "0.16.1" 285 + version = "0.17.0" 282 286 source = "registry+https://github.com/rust-lang/crates.io-index" 283 - checksum = "857da8785678fde537d02944cd20dec9cafb7d4c447efe15f898dc60e733cacd" 287 + checksum = "9138862f86ca93618def4e04660904b8a0d0633e0f55d81ce865a96d2c4688b5" 284 288 dependencies = [ 289 + "bevy_android", 285 290 "bevy_app", 286 291 "bevy_derive", 287 292 "bevy_diagnostic", ··· 299 304 300 305 [[package]] 301 306 name = "bevy_log" 302 - version = "0.16.1" 307 + version = "0.17.0" 303 308 source = "registry+https://github.com/rust-lang/crates.io-index" 304 - checksum = "d7a61ee8aef17a974f5ca481dcedf0c2bd52670e231d4c4bc9ddef58328865f9" 309 + checksum = "655630c5ae5e872b9dcead6e9a28103de5bb01c29bdfe5ce76ee7506ea545c4e" 305 310 dependencies = [ 306 311 "android_log-sys", 307 312 "bevy_app", 308 313 "bevy_ecs", 314 + "bevy_platform", 309 315 "bevy_utils", 310 316 "tracing", 311 317 "tracing-log", ··· 316 322 317 323 [[package]] 318 324 name = "bevy_macro_utils" 319 - version = "0.16.1" 325 + version = "0.17.0" 320 326 source = "registry+https://github.com/rust-lang/crates.io-index" 321 - checksum = "052eeebcb8e7e072beea5031b227d9a290f8a7fbbb947573ab6ec81df0fb94be" 327 + checksum = "6217369a5c60e9b23dcdfcb36f2adfc1ec84a67b5bafa79333937a5e0598dda6" 322 328 dependencies = [ 323 329 "parking_lot", 324 330 "proc-macro2", 325 331 "quote", 326 332 "syn 2.0.106", 327 - "toml_edit 0.22.27", 333 + "toml_edit", 328 334 ] 329 335 330 336 [[package]] 331 337 name = "bevy_math" 332 - version = "0.16.1" 338 + version = "0.17.0" 333 339 source = "registry+https://github.com/rust-lang/crates.io-index" 334 - checksum = "68553e0090fe9c3ba066c65629f636bd58e4ebd9444fdba097b91af6cd3e243f" 340 + checksum = "e007ac325ff9e6dc2c60d572d94b17dbbee8ca53f3be16ed06fd1340c1548f0f" 335 341 dependencies = [ 336 342 "bevy_reflect", 337 343 "derive_more", 338 344 "glam", 339 - "itertools 0.14.0", 345 + "itertools", 340 346 "libm", 341 347 "rand", 342 348 "rand_distr", 343 349 "serde", 344 350 "smallvec", 345 - "thiserror", 351 + "thiserror 2.0.17", 346 352 "variadics_please", 347 353 ] 348 354 349 355 [[package]] 350 356 name = "bevy_platform" 351 - version = "0.16.1" 357 + version = "0.17.0" 352 358 source = "registry+https://github.com/rust-lang/crates.io-index" 353 - checksum = "f7573dc824a1b08b4c93fdbe421c53e1e8188e9ca1dd74a414455fe571facb47" 359 + checksum = "c000f9765bfabeb5469a4d6f3577a2d1fc7e0c46309c32b61860143e14f88ee1" 354 360 dependencies = [ 355 - "cfg-if", 356 361 "critical-section", 357 362 "foldhash", 358 - "getrandom 0.2.16", 359 - "hashbrown 0.15.5", 363 + "futures-channel", 364 + "getrandom", 365 + "hashbrown", 366 + "js-sys", 360 367 "portable-atomic", 361 368 "portable-atomic-util", 362 369 "serde", 363 370 "spin", 371 + "wasm-bindgen", 372 + "wasm-bindgen-futures", 364 373 "web-time", 365 374 ] 366 375 367 376 [[package]] 368 377 name = "bevy_ptr" 369 - version = "0.16.1" 378 + version = "0.17.0" 370 379 source = "registry+https://github.com/rust-lang/crates.io-index" 371 - checksum = "df7370d0e46b60e071917711d0860721f5347bc958bf325975ae6913a5dfcf01" 380 + checksum = "66652590ead8412d2b63dd73ff63af61aa5a59e7fc4a5bbe6c799b214cd1dd41" 372 381 373 382 [[package]] 374 383 name = "bevy_reflect" 375 - version = "0.16.1" 384 + version = "0.17.0" 376 385 source = "registry+https://github.com/rust-lang/crates.io-index" 377 - checksum = "daeb91a63a1a4df00aa58da8cc4ddbd4b9f16ab8bb647c5553eb156ce36fa8c2" 386 + checksum = "0870478f18be825606564bf83919931372947d6a377dd00829812edbe12bb544" 378 387 dependencies = [ 379 388 "assert_type_match", 380 389 "bevy_platform", ··· 387 396 "erased-serde", 388 397 "foldhash", 389 398 "glam", 399 + "inventory", 390 400 "serde", 391 401 "smallvec", 392 402 "smol_str", 393 - "thiserror", 403 + "thiserror 2.0.17", 394 404 "uuid", 395 405 "variadics_please", 396 406 "wgpu-types", ··· 398 408 399 409 [[package]] 400 410 name = "bevy_reflect_derive" 401 - version = "0.16.1" 411 + version = "0.17.0" 402 412 source = "registry+https://github.com/rust-lang/crates.io-index" 403 - checksum = "40ddadc55fe16b45faaa54ab2f9cb00548013c74812e8b018aa172387103cce6" 413 + checksum = "8a90e99abc2190b0f8bd80c6e78dcbe4520bebd3be285865720ae3aca515a57f" 404 414 dependencies = [ 405 415 "bevy_macro_utils", 416 + "indexmap", 406 417 "proc-macro2", 407 418 "quote", 408 419 "syn 2.0.106", ··· 411 422 412 423 [[package]] 413 424 name = "bevy_state" 414 - version = "0.16.1" 425 + version = "0.17.0" 415 426 source = "registry+https://github.com/rust-lang/crates.io-index" 416 - checksum = "155d3cd97b900539008cdcaa702f88b724d94b08977b8e591a32536ce66faa8c" 427 + checksum = "083f2779368af40202eaeec28c5c04d4e5afc606630f616bc730414ff0a90652" 417 428 dependencies = [ 418 429 "bevy_app", 419 430 "bevy_ecs", ··· 427 438 428 439 [[package]] 429 440 name = "bevy_state_macros" 430 - version = "0.16.1" 441 + version = "0.17.0" 431 442 source = "registry+https://github.com/rust-lang/crates.io-index" 432 - checksum = "2481c1304fd2a1851a0d4cb63a1ce6421ae40f3f0117cbc9882963ee4c9bb609" 443 + checksum = "bde0770d9789927303615188d4315eb98cb8969620de92b23d84da22d6865d51" 433 444 dependencies = [ 434 445 "bevy_macro_utils", 435 - "proc-macro2", 436 446 "quote", 437 447 "syn 2.0.106", 438 448 ] 439 449 440 450 [[package]] 441 451 name = "bevy_tasks" 442 - version = "0.16.1" 452 + version = "0.17.0" 443 453 source = "registry+https://github.com/rust-lang/crates.io-index" 444 - checksum = "5b674242641cab680688fc3b850243b351c1af49d4f3417a576debd6cca8dcf5" 454 + checksum = "c43dc8e8aa47b8b3e96f1deb0f6eafddb6a9e54e5c849be0e99e02c18e03df24" 445 455 dependencies = [ 456 + "async-channel", 446 457 "async-executor", 447 458 "async-task", 448 459 "atomic-waker", 449 460 "bevy_platform", 450 - "cfg-if", 451 461 "crossbeam-queue", 452 462 "derive_more", 453 - "futures-channel", 454 463 "futures-lite", 455 464 "heapless", 456 465 "pin-project", 457 - "wasm-bindgen-futures", 458 466 ] 459 467 460 468 [[package]] 461 469 name = "bevy_time" 462 - version = "0.16.1" 470 + version = "0.17.0" 463 471 source = "registry+https://github.com/rust-lang/crates.io-index" 464 - checksum = "bc98eb356c75be04fbbc77bb3d8ffa24c8bacd99f76111cee23d444be6ac8c9c" 472 + checksum = "b2ede8152f23667c8739425743e0580a38c9946441a64e297352c8ed0e92019f" 465 473 dependencies = [ 466 474 "bevy_app", 467 475 "bevy_ecs", ··· 472 480 473 481 [[package]] 474 482 name = "bevy_transform" 475 - version = "0.16.1" 483 + version = "0.17.0" 476 484 source = "registry+https://github.com/rust-lang/crates.io-index" 477 - checksum = "df218e440bb9a19058e1b80a68a031c887bcf7bd3a145b55f361359a2fa3100d" 485 + checksum = "48873010710b9111d4ee6c40cc4f5d3cf877d2bfec6d54baf34b0eb32533c8c7" 478 486 dependencies = [ 479 487 "bevy_app", 480 488 "bevy_ecs", ··· 483 491 "bevy_tasks", 484 492 "derive_more", 485 493 "serde", 486 - "thiserror", 494 + "thiserror 2.0.17", 487 495 ] 488 496 489 497 [[package]] 490 498 name = "bevy_utils" 491 - version = "0.16.1" 499 + version = "0.17.0" 492 500 source = "registry+https://github.com/rust-lang/crates.io-index" 493 - checksum = "94f7a8905a125d2017e8561beefb7f2f5e67e93ff6324f072ad87c5fd6ec3b99" 501 + checksum = "31f44ff1544531d9a4948c7e6b93ebdb77840d1da5683a25272d9f526ae62d3d" 494 502 dependencies = [ 495 503 "bevy_platform", 504 + "disqualified", 496 505 "thread_local", 497 506 ] 498 507 499 508 [[package]] 500 - name = "bindgen" 501 - version = "0.70.1" 502 - source = "registry+https://github.com/rust-lang/crates.io-index" 503 - checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" 504 - dependencies = [ 505 - "bitflags", 506 - "cexpr", 507 - "clang-sys", 508 - "itertools 0.13.0", 509 - "log", 510 - "prettyplease", 511 - "proc-macro2", 512 - "quote", 513 - "regex", 514 - "rustc-hash", 515 - "shlex", 516 - "syn 2.0.106", 517 - ] 518 - 519 - [[package]] 520 509 name = "bitflags" 521 510 version = "2.9.4" 522 511 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 526 515 ] 527 516 528 517 [[package]] 529 - name = "block-buffer" 530 - version = "0.10.4" 531 - source = "registry+https://github.com/rust-lang/crates.io-index" 532 - checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" 533 - dependencies = [ 534 - "generic-array", 535 - ] 536 - 537 - [[package]] 538 518 name = "bumpalo" 539 519 version = "3.19.0" 540 520 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 545 525 version = "1.23.2" 546 526 source = "registry+https://github.com/rust-lang/crates.io-index" 547 527 checksum = "3995eaeebcdf32f91f980d360f78732ddc061097ab4e39991ae7a6ace9194677" 528 + dependencies = [ 529 + "bytemuck_derive", 530 + ] 531 + 532 + [[package]] 533 + name = "bytemuck_derive" 534 + version = "1.10.1" 535 + source = "registry+https://github.com/rust-lang/crates.io-index" 536 + checksum = "4f154e572231cb6ba2bd1176980827e3d5dc04cc183a75dea38109fbdd672d29" 537 + dependencies = [ 538 + "proc-macro2", 539 + "quote", 540 + "syn 2.0.106", 541 + ] 548 542 549 543 [[package]] 550 544 name = "byteorder" ··· 560 554 561 555 [[package]] 562 556 name = "cc" 563 - version = "1.2.38" 557 + version = "1.2.39" 564 558 source = "registry+https://github.com/rust-lang/crates.io-index" 565 - checksum = "80f41ae168f955c12fb8960b057d70d0ca153fb83182b57d86380443527be7e9" 559 + checksum = "e1354349954c6fc9cb0deab020f27f783cf0b604e8bb754dc4658ecf0d29c35f" 566 560 dependencies = [ 567 561 "find-msvc-tools", 562 + "jobserver", 563 + "libc", 568 564 "shlex", 569 565 ] 570 566 571 567 [[package]] 572 - name = "cexpr" 573 - version = "0.6.0" 568 + name = "cesu8" 569 + version = "1.1.0" 574 570 source = "registry+https://github.com/rust-lang/crates.io-index" 575 - checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" 576 - dependencies = [ 577 - "nom", 578 - ] 571 + checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" 579 572 580 573 [[package]] 581 574 name = "cfg-if" ··· 590 583 checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" 591 584 592 585 [[package]] 593 - name = "clang-sys" 594 - version = "1.8.1" 586 + name = "combine" 587 + version = "4.6.7" 595 588 source = "registry+https://github.com/rust-lang/crates.io-index" 596 - checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" 589 + checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" 597 590 dependencies = [ 598 - "glob", 599 - "libc", 600 - "libloading", 591 + "bytes", 592 + "memchr", 601 593 ] 602 594 603 595 [[package]] ··· 627 619 checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" 628 620 629 621 [[package]] 630 - name = "cpufeatures" 631 - version = "0.2.17" 632 - source = "registry+https://github.com/rust-lang/crates.io-index" 633 - checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" 634 - dependencies = [ 635 - "libc", 636 - ] 637 - 638 - [[package]] 639 622 name = "critical-section" 640 623 version = "1.2.0" 641 624 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 657 640 checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" 658 641 659 642 [[package]] 660 - name = "crypto-common" 661 - version = "0.1.6" 662 - source = "registry+https://github.com/rust-lang/crates.io-index" 663 - checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" 664 - dependencies = [ 665 - "generic-array", 666 - "typenum", 667 - ] 668 - 669 - [[package]] 670 643 name = "ctrlc" 671 644 version = "3.5.0" 672 645 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 674 647 dependencies = [ 675 648 "dispatch", 676 649 "nix", 677 - "windows-sys 0.61.0", 650 + "windows-sys 0.61.1", 678 651 ] 679 652 680 653 [[package]] ··· 697 670 "ident_case", 698 671 "proc-macro2", 699 672 "quote", 700 - "strsim 0.11.1", 673 + "strsim", 701 674 "syn 2.0.106", 702 675 ] 703 676 ··· 713 686 ] 714 687 715 688 [[package]] 716 - name = "deluxe" 717 - version = "0.5.0" 718 - source = "registry+https://github.com/rust-lang/crates.io-index" 719 - checksum = "8ed332aaf752b459088acf3dd4eca323e3ef4b83c70a84ca48fb0ec5305f1488" 720 - dependencies = [ 721 - "deluxe-core", 722 - "deluxe-macros", 723 - "once_cell", 724 - "proc-macro2", 725 - "syn 2.0.106", 726 - ] 727 - 728 - [[package]] 729 - name = "deluxe-core" 730 - version = "0.5.0" 731 - source = "registry+https://github.com/rust-lang/crates.io-index" 732 - checksum = "eddada51c8576df9d6a8450c351ff63042b092c9458b8ac7d20f89cbd0ffd313" 733 - dependencies = [ 734 - "arrayvec", 735 - "proc-macro2", 736 - "quote", 737 - "strsim 0.10.0", 738 - "syn 2.0.106", 739 - ] 740 - 741 - [[package]] 742 - name = "deluxe-macros" 743 - version = "0.5.0" 744 - source = "registry+https://github.com/rust-lang/crates.io-index" 745 - checksum = "f87546d9c837f0b7557e47b8bd6eae52c3c223141b76aa233c345c9ab41d9117" 746 - dependencies = [ 747 - "deluxe-core", 748 - "heck", 749 - "if_chain", 750 - "proc-macro-crate", 751 - "proc-macro2", 752 - "quote", 753 - "syn 2.0.106", 754 - ] 755 - 756 - [[package]] 757 689 name = "derive_more" 758 - version = "1.0.0" 690 + version = "2.0.1" 759 691 source = "registry+https://github.com/rust-lang/crates.io-index" 760 - checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" 692 + checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" 761 693 dependencies = [ 762 694 "derive_more-impl", 763 695 ] 764 696 765 697 [[package]] 766 698 name = "derive_more-impl" 767 - version = "1.0.0" 699 + version = "2.0.1" 768 700 source = "registry+https://github.com/rust-lang/crates.io-index" 769 - checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" 701 + checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" 770 702 dependencies = [ 771 703 "proc-macro2", 772 704 "quote", 773 705 "syn 2.0.106", 774 706 "unicode-xid", 775 - ] 776 - 777 - [[package]] 778 - name = "digest" 779 - version = "0.10.7" 780 - source = "registry+https://github.com/rust-lang/crates.io-index" 781 - checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" 782 - dependencies = [ 783 - "block-buffer", 784 - "crypto-common", 785 707 ] 786 708 787 709 [[package]] ··· 826 748 ] 827 749 828 750 [[package]] 751 + name = "event-listener" 752 + version = "5.4.1" 753 + source = "registry+https://github.com/rust-lang/crates.io-index" 754 + checksum = "e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab" 755 + dependencies = [ 756 + "concurrent-queue", 757 + "pin-project-lite", 758 + ] 759 + 760 + [[package]] 761 + name = "event-listener-strategy" 762 + version = "0.5.4" 763 + source = "registry+https://github.com/rust-lang/crates.io-index" 764 + checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" 765 + dependencies = [ 766 + "event-listener", 767 + "pin-project-lite", 768 + ] 769 + 770 + [[package]] 829 771 name = "fastrand" 830 772 version = "2.3.0" 831 773 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 851 793 852 794 [[package]] 853 795 name = "foldhash" 854 - version = "0.1.5" 796 + version = "0.2.0" 855 797 source = "registry+https://github.com/rust-lang/crates.io-index" 856 - checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" 798 + checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" 857 799 858 800 [[package]] 859 801 name = "futures-channel" ··· 890 832 ] 891 833 892 834 [[package]] 893 - name = "generic-array" 894 - version = "0.14.7" 895 - source = "registry+https://github.com/rust-lang/crates.io-index" 896 - checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" 897 - dependencies = [ 898 - "typenum", 899 - "version_check", 900 - ] 901 - 902 - [[package]] 903 - name = "getrandom" 904 - version = "0.2.16" 905 - source = "registry+https://github.com/rust-lang/crates.io-index" 906 - checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" 907 - dependencies = [ 908 - "cfg-if", 909 - "js-sys", 910 - "libc", 911 - "wasi 0.11.1+wasi-snapshot-preview1", 912 - "wasm-bindgen", 913 - ] 914 - 915 - [[package]] 916 835 name = "getrandom" 917 836 version = "0.3.3" 918 837 source = "registry+https://github.com/rust-lang/crates.io-index" 919 838 checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" 920 839 dependencies = [ 921 840 "cfg-if", 841 + "js-sys", 922 842 "libc", 923 843 "r-efi", 924 - "wasi 0.14.7+wasi-0.2.4", 844 + "wasi", 845 + "wasm-bindgen", 925 846 ] 926 847 927 848 [[package]] 928 849 name = "glam" 929 - version = "0.29.3" 850 + version = "0.30.8" 930 851 source = "registry+https://github.com/rust-lang/crates.io-index" 931 - checksum = "8babf46d4c1c9d92deac9f7be466f76dfc4482b6452fc5024b5e8daf6ffeb3ee" 852 + checksum = "e12d847aeb25f41be4c0ec9587d624e9cd631bc007a8fd7ce3f5851e064c6460" 932 853 dependencies = [ 933 854 "bytemuck", 934 855 "libm", 935 - "serde", 856 + "serde_core", 936 857 ] 937 - 938 - [[package]] 939 - name = "glob" 940 - version = "0.3.3" 941 - source = "registry+https://github.com/rust-lang/crates.io-index" 942 - checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" 943 858 944 859 [[package]] 945 860 name = "hash32" ··· 952 867 953 868 [[package]] 954 869 name = "hashbrown" 955 - version = "0.15.5" 870 + version = "0.16.0" 956 871 source = "registry+https://github.com/rust-lang/crates.io-index" 957 - checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" 872 + checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" 958 873 dependencies = [ 959 874 "equivalent", 960 875 "serde", 961 876 ] 962 877 963 878 [[package]] 964 - name = "hashbrown" 965 - version = "0.16.0" 966 - source = "registry+https://github.com/rust-lang/crates.io-index" 967 - checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" 968 - 969 - [[package]] 970 879 name = "heapless" 971 880 version = "0.8.0" 972 881 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 978 887 ] 979 888 980 889 [[package]] 981 - name = "heck" 982 - version = "0.4.1" 983 - source = "registry+https://github.com/rust-lang/crates.io-index" 984 - checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" 985 - 986 - [[package]] 987 - name = "hex" 988 - version = "0.4.3" 989 - source = "registry+https://github.com/rust-lang/crates.io-index" 990 - checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" 991 - 992 - [[package]] 993 890 name = "ident_case" 994 891 version = "1.0.1" 995 892 source = "registry+https://github.com/rust-lang/crates.io-index" 996 893 checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 997 894 998 895 [[package]] 999 - name = "if_chain" 1000 - version = "1.0.3" 1001 - source = "registry+https://github.com/rust-lang/crates.io-index" 1002 - checksum = "cd62e6b5e86ea8eeeb8db1de02880a6abc01a397b2ebb64b5d74ac255318f5cb" 1003 - 1004 - [[package]] 1005 896 name = "immediate_stats" 1006 - version = "0.2.0" 897 + version = "0.3.0" 1007 898 dependencies = [ 1008 899 "bevy", 1009 - "bevy-butler", 1010 900 "bevy_app", 1011 901 "bevy_auto_plugin", 1012 902 "bevy_ecs", ··· 1016 906 1017 907 [[package]] 1018 908 name = "immediate_stats_macros" 1019 - version = "0.2.0" 909 + version = "0.3.0" 1020 910 dependencies = [ 1021 911 "darling", 1022 912 "proc-macro-error", ··· 1032 922 checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" 1033 923 dependencies = [ 1034 924 "equivalent", 1035 - "hashbrown 0.16.0", 925 + "hashbrown", 1036 926 ] 1037 927 1038 928 [[package]] ··· 1046 936 1047 937 [[package]] 1048 938 name = "itertools" 1049 - version = "0.13.0" 939 + version = "0.14.0" 1050 940 source = "registry+https://github.com/rust-lang/crates.io-index" 1051 - checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" 941 + checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" 1052 942 dependencies = [ 1053 943 "either", 1054 944 ] 1055 945 1056 946 [[package]] 1057 - name = "itertools" 1058 - version = "0.14.0" 947 + name = "jni" 948 + version = "0.21.1" 1059 949 source = "registry+https://github.com/rust-lang/crates.io-index" 1060 - checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" 950 + checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" 1061 951 dependencies = [ 1062 - "either", 952 + "cesu8", 953 + "cfg-if", 954 + "combine", 955 + "jni-sys", 956 + "log", 957 + "thiserror 1.0.69", 958 + "walkdir", 959 + "windows-sys 0.45.0", 960 + ] 961 + 962 + [[package]] 963 + name = "jni-sys" 964 + version = "0.3.0" 965 + source = "registry+https://github.com/rust-lang/crates.io-index" 966 + checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" 967 + 968 + [[package]] 969 + name = "jobserver" 970 + version = "0.1.34" 971 + source = "registry+https://github.com/rust-lang/crates.io-index" 972 + checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" 973 + dependencies = [ 974 + "getrandom", 975 + "libc", 1063 976 ] 1064 977 1065 978 [[package]] ··· 1085 998 checksum = "58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174" 1086 999 1087 1000 [[package]] 1088 - name = "libloading" 1089 - version = "0.8.9" 1090 - source = "registry+https://github.com/rust-lang/crates.io-index" 1091 - checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" 1092 - dependencies = [ 1093 - "cfg-if", 1094 - "windows-link", 1095 - ] 1096 - 1097 - [[package]] 1098 1001 name = "libm" 1099 1002 version = "0.2.15" 1100 1003 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1102 1005 1103 1006 [[package]] 1104 1007 name = "linkme" 1105 - version = "0.3.33" 1008 + version = "0.3.35" 1106 1009 source = "registry+https://github.com/rust-lang/crates.io-index" 1107 - checksum = "a1b1703c00b2a6a70738920544aa51652532cacddfec2e162d2e29eae01e665c" 1010 + checksum = "5e3283ed2d0e50c06dd8602e0ab319bb048b6325d0bba739db64ed8205179898" 1108 1011 dependencies = [ 1109 1012 "linkme-impl", 1110 1013 ] 1111 1014 1112 1015 [[package]] 1113 1016 name = "linkme-impl" 1114 - version = "0.3.33" 1017 + version = "0.3.35" 1115 1018 source = "registry+https://github.com/rust-lang/crates.io-index" 1116 - checksum = "04d55ca5d5a14363da83bf3c33874b8feaa34653e760d5216d7ef9829c88001a" 1019 + checksum = "e5cec0ec4228b4853bb129c84dbf093a27e6c7a20526da046defc334a1b017f7" 1117 1020 dependencies = [ 1118 1021 "proc-macro2", 1119 1022 "quote", ··· 1147 1050 1148 1051 [[package]] 1149 1052 name = "memchr" 1150 - version = "2.7.5" 1053 + version = "2.7.6" 1151 1054 source = "registry+https://github.com/rust-lang/crates.io-index" 1152 - checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" 1055 + checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" 1153 1056 1154 1057 [[package]] 1155 - name = "minimal-lexical" 1156 - version = "0.2.1" 1058 + name = "ndk" 1059 + version = "0.9.0" 1157 1060 source = "registry+https://github.com/rust-lang/crates.io-index" 1158 - checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" 1061 + checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" 1062 + dependencies = [ 1063 + "bitflags", 1064 + "jni-sys", 1065 + "log", 1066 + "ndk-sys", 1067 + "num_enum", 1068 + "thiserror 1.0.69", 1069 + ] 1070 + 1071 + [[package]] 1072 + name = "ndk-context" 1073 + version = "0.1.1" 1074 + source = "registry+https://github.com/rust-lang/crates.io-index" 1075 + checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" 1076 + 1077 + [[package]] 1078 + name = "ndk-sys" 1079 + version = "0.6.0+11769913" 1080 + source = "registry+https://github.com/rust-lang/crates.io-index" 1081 + checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" 1082 + dependencies = [ 1083 + "jni-sys", 1084 + ] 1159 1085 1160 1086 [[package]] 1161 1087 name = "nix" ··· 1167 1093 "cfg-if", 1168 1094 "cfg_aliases", 1169 1095 "libc", 1170 - ] 1171 - 1172 - [[package]] 1173 - name = "nom" 1174 - version = "7.1.3" 1175 - source = "registry+https://github.com/rust-lang/crates.io-index" 1176 - checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" 1177 - dependencies = [ 1178 - "memchr", 1179 - "minimal-lexical", 1180 1096 ] 1181 1097 1182 1098 [[package]] ··· 1205 1121 ] 1206 1122 1207 1123 [[package]] 1124 + name = "num_enum" 1125 + version = "0.7.4" 1126 + source = "registry+https://github.com/rust-lang/crates.io-index" 1127 + checksum = "a973b4e44ce6cad84ce69d797acf9a044532e4184c4f267913d1b546a0727b7a" 1128 + dependencies = [ 1129 + "num_enum_derive", 1130 + "rustversion", 1131 + ] 1132 + 1133 + [[package]] 1134 + name = "num_enum_derive" 1135 + version = "0.7.4" 1136 + source = "registry+https://github.com/rust-lang/crates.io-index" 1137 + checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d" 1138 + dependencies = [ 1139 + "proc-macro-crate", 1140 + "proc-macro2", 1141 + "quote", 1142 + "syn 2.0.106", 1143 + ] 1144 + 1145 + [[package]] 1208 1146 name = "once_cell" 1209 1147 version = "1.21.3" 1210 1148 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1236 1174 "libc", 1237 1175 "redox_syscall", 1238 1176 "smallvec", 1239 - "windows-targets", 1177 + "windows-targets 0.52.6", 1240 1178 ] 1241 1179 1242 1180 [[package]] ··· 1290 1228 ] 1291 1229 1292 1230 [[package]] 1293 - name = "prettyplease" 1294 - version = "0.2.37" 1295 - source = "registry+https://github.com/rust-lang/crates.io-index" 1296 - checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" 1297 - dependencies = [ 1298 - "proc-macro2", 1299 - "syn 2.0.106", 1300 - ] 1301 - 1302 - [[package]] 1303 1231 name = "proc-macro-crate" 1304 - version = "1.3.1" 1232 + version = "3.4.0" 1305 1233 source = "registry+https://github.com/rust-lang/crates.io-index" 1306 - checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" 1234 + checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" 1307 1235 dependencies = [ 1308 - "once_cell", 1309 - "toml_edit 0.19.15", 1236 + "toml_edit", 1310 1237 ] 1311 1238 1312 1239 [[package]] ··· 1344 1271 1345 1272 [[package]] 1346 1273 name = "quote" 1347 - version = "1.0.40" 1274 + version = "1.0.41" 1348 1275 source = "registry+https://github.com/rust-lang/crates.io-index" 1349 - checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" 1276 + checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1" 1350 1277 dependencies = [ 1351 1278 "proc-macro2", 1352 1279 ] ··· 1359 1286 1360 1287 [[package]] 1361 1288 name = "rand" 1362 - version = "0.8.5" 1289 + version = "0.9.2" 1363 1290 source = "registry+https://github.com/rust-lang/crates.io-index" 1364 - checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 1291 + checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" 1365 1292 dependencies = [ 1366 - "libc", 1367 1293 "rand_chacha", 1368 1294 "rand_core", 1369 1295 ] 1370 1296 1371 1297 [[package]] 1372 1298 name = "rand_chacha" 1373 - version = "0.3.1" 1299 + version = "0.9.0" 1374 1300 source = "registry+https://github.com/rust-lang/crates.io-index" 1375 - checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 1301 + checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" 1376 1302 dependencies = [ 1377 1303 "ppv-lite86", 1378 1304 "rand_core", ··· 1380 1306 1381 1307 [[package]] 1382 1308 name = "rand_core" 1383 - version = "0.6.4" 1309 + version = "0.9.3" 1384 1310 source = "registry+https://github.com/rust-lang/crates.io-index" 1385 - checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 1311 + checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" 1386 1312 dependencies = [ 1387 - "getrandom 0.2.16", 1313 + "getrandom", 1388 1314 ] 1389 1315 1390 1316 [[package]] 1391 1317 name = "rand_distr" 1392 - version = "0.4.3" 1318 + version = "0.5.1" 1393 1319 source = "registry+https://github.com/rust-lang/crates.io-index" 1394 - checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31" 1320 + checksum = "6a8615d50dcf34fa31f7ab52692afec947c4dd0ab803cc87cb3b0b4570ff7463" 1395 1321 dependencies = [ 1396 1322 "num-traits", 1397 1323 "rand", ··· 1407 1333 ] 1408 1334 1409 1335 [[package]] 1410 - name = "regex" 1411 - version = "1.11.2" 1412 - source = "registry+https://github.com/rust-lang/crates.io-index" 1413 - checksum = "23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912" 1414 - dependencies = [ 1415 - "aho-corasick", 1416 - "memchr", 1417 - "regex-automata", 1418 - "regex-syntax", 1419 - ] 1420 - 1421 - [[package]] 1422 1336 name = "regex-automata" 1423 - version = "0.4.10" 1337 + version = "0.4.11" 1424 1338 source = "registry+https://github.com/rust-lang/crates.io-index" 1425 - checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6" 1339 + checksum = "833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad" 1426 1340 dependencies = [ 1427 1341 "aho-corasick", 1428 1342 "memchr", ··· 1436 1350 checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001" 1437 1351 1438 1352 [[package]] 1439 - name = "rustc-hash" 1440 - version = "1.1.0" 1441 - source = "registry+https://github.com/rust-lang/crates.io-index" 1442 - checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" 1443 - 1444 - [[package]] 1445 1353 name = "rustc_version" 1446 1354 version = "0.4.1" 1447 1355 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1457 1365 checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" 1458 1366 1459 1367 [[package]] 1368 + name = "same-file" 1369 + version = "1.0.6" 1370 + source = "registry+https://github.com/rust-lang/crates.io-index" 1371 + checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 1372 + dependencies = [ 1373 + "winapi-util", 1374 + ] 1375 + 1376 + [[package]] 1460 1377 name = "scopeguard" 1461 1378 version = "1.2.0" 1462 1379 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1470 1387 1471 1388 [[package]] 1472 1389 name = "serde" 1473 - version = "1.0.226" 1390 + version = "1.0.228" 1474 1391 source = "registry+https://github.com/rust-lang/crates.io-index" 1475 - checksum = "0dca6411025b24b60bfa7ec1fe1f8e710ac09782dca409ee8237ba74b51295fd" 1392 + checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" 1476 1393 dependencies = [ 1477 1394 "serde_core", 1478 1395 "serde_derive", ··· 1480 1397 1481 1398 [[package]] 1482 1399 name = "serde_core" 1483 - version = "1.0.226" 1400 + version = "1.0.228" 1484 1401 source = "registry+https://github.com/rust-lang/crates.io-index" 1485 - checksum = "ba2ba63999edb9dac981fb34b3e5c0d111a69b0924e253ed29d83f7c99e966a4" 1402 + checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" 1486 1403 dependencies = [ 1487 1404 "serde_derive", 1488 1405 ] 1489 1406 1490 1407 [[package]] 1491 1408 name = "serde_derive" 1492 - version = "1.0.226" 1409 + version = "1.0.228" 1493 1410 source = "registry+https://github.com/rust-lang/crates.io-index" 1494 - checksum = "8db53ae22f34573731bafa1db20f04027b2d25e02d8205921b569171699cdb33" 1411 + checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" 1495 1412 dependencies = [ 1496 1413 "proc-macro2", 1497 1414 "quote", ··· 1499 1416 ] 1500 1417 1501 1418 [[package]] 1502 - name = "sha2" 1503 - version = "0.10.9" 1504 - source = "registry+https://github.com/rust-lang/crates.io-index" 1505 - checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" 1506 - dependencies = [ 1507 - "cfg-if", 1508 - "cpufeatures", 1509 - "digest", 1510 - ] 1511 - 1512 - [[package]] 1513 - name = "sha256" 1514 - version = "1.6.0" 1515 - source = "registry+https://github.com/rust-lang/crates.io-index" 1516 - checksum = "f880fc8562bdeb709793f00eb42a2ad0e672c4f883bbe59122b926eca935c8f6" 1517 - dependencies = [ 1518 - "async-trait", 1519 - "bytes", 1520 - "hex", 1521 - "sha2", 1522 - ] 1523 - 1524 - [[package]] 1525 1419 name = "sharded-slab" 1526 1420 version = "0.1.7" 1527 1421 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1541 1435 version = "0.4.11" 1542 1436 source = "registry+https://github.com/rust-lang/crates.io-index" 1543 1437 checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" 1438 + 1439 + [[package]] 1440 + name = "slotmap" 1441 + version = "1.0.7" 1442 + source = "registry+https://github.com/rust-lang/crates.io-index" 1443 + checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a" 1444 + dependencies = [ 1445 + "version_check", 1446 + ] 1544 1447 1545 1448 [[package]] 1546 1449 name = "smallvec" ··· 1570 1473 1571 1474 [[package]] 1572 1475 name = "spin" 1573 - version = "0.9.8" 1476 + version = "0.10.0" 1574 1477 source = "registry+https://github.com/rust-lang/crates.io-index" 1575 - checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" 1478 + checksum = "d5fe4ccb98d9c292d56fec89a5e07da7fc4cf0dc11e156b41793132775d3e591" 1576 1479 dependencies = [ 1577 1480 "portable-atomic", 1578 1481 ] ··· 1582 1485 version = "1.2.0" 1583 1486 source = "registry+https://github.com/rust-lang/crates.io-index" 1584 1487 checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" 1585 - 1586 - [[package]] 1587 - name = "strsim" 1588 - version = "0.10.0" 1589 - source = "registry+https://github.com/rust-lang/crates.io-index" 1590 - checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" 1591 1488 1592 1489 [[package]] 1593 1490 name = "strsim" ··· 1618 1515 1619 1516 [[package]] 1620 1517 name = "thiserror" 1621 - version = "2.0.16" 1518 + version = "1.0.69" 1622 1519 source = "registry+https://github.com/rust-lang/crates.io-index" 1623 - checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0" 1520 + checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" 1624 1521 dependencies = [ 1625 - "thiserror-impl", 1522 + "thiserror-impl 1.0.69", 1523 + ] 1524 + 1525 + [[package]] 1526 + name = "thiserror" 1527 + version = "2.0.17" 1528 + source = "registry+https://github.com/rust-lang/crates.io-index" 1529 + checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" 1530 + dependencies = [ 1531 + "thiserror-impl 2.0.17", 1626 1532 ] 1627 1533 1628 1534 [[package]] 1629 1535 name = "thiserror-impl" 1630 - version = "2.0.16" 1536 + version = "1.0.69" 1631 1537 source = "registry+https://github.com/rust-lang/crates.io-index" 1632 - checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960" 1538 + checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" 1539 + dependencies = [ 1540 + "proc-macro2", 1541 + "quote", 1542 + "syn 2.0.106", 1543 + ] 1544 + 1545 + [[package]] 1546 + name = "thiserror-impl" 1547 + version = "2.0.17" 1548 + source = "registry+https://github.com/rust-lang/crates.io-index" 1549 + checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" 1633 1550 dependencies = [ 1634 1551 "proc-macro2", 1635 1552 "quote", ··· 1647 1564 1648 1565 [[package]] 1649 1566 name = "toml_datetime" 1650 - version = "0.6.11" 1567 + version = "0.7.2" 1651 1568 source = "registry+https://github.com/rust-lang/crates.io-index" 1652 - checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" 1569 + checksum = "32f1085dec27c2b6632b04c80b3bb1b4300d6495d1e129693bdda7d91e72eec1" 1570 + dependencies = [ 1571 + "serde_core", 1572 + ] 1653 1573 1654 1574 [[package]] 1655 1575 name = "toml_edit" 1656 - version = "0.19.15" 1576 + version = "0.23.6" 1657 1577 source = "registry+https://github.com/rust-lang/crates.io-index" 1658 - checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" 1578 + checksum = "f3effe7c0e86fdff4f69cdd2ccc1b96f933e24811c5441d44904e8683e27184b" 1659 1579 dependencies = [ 1660 1580 "indexmap", 1661 1581 "toml_datetime", 1662 - "winnow 0.5.40", 1582 + "toml_parser", 1583 + "winnow", 1663 1584 ] 1664 1585 1665 1586 [[package]] 1666 - name = "toml_edit" 1667 - version = "0.22.27" 1587 + name = "toml_parser" 1588 + version = "1.0.3" 1668 1589 source = "registry+https://github.com/rust-lang/crates.io-index" 1669 - checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" 1590 + checksum = "4cf893c33be71572e0e9aa6dd15e6677937abd686b066eac3f8cd3531688a627" 1670 1591 dependencies = [ 1671 - "indexmap", 1672 - "toml_datetime", 1673 - "winnow 0.7.13", 1592 + "winnow", 1674 1593 ] 1675 1594 1676 1595 [[package]] ··· 1718 1637 1719 1638 [[package]] 1720 1639 name = "tracing-oslog" 1721 - version = "0.2.0" 1640 + version = "0.3.0" 1722 1641 source = "registry+https://github.com/rust-lang/crates.io-index" 1723 - checksum = "528bdd1f0e27b5dd9a4ededf154e824b0532731e4af73bb531de46276e0aab1e" 1642 + checksum = "d76902d2a8d5f9f55a81155c08971734071968c90f2d9bfe645fe700579b2950" 1724 1643 dependencies = [ 1725 - "bindgen", 1726 1644 "cc", 1727 1645 "cfg-if", 1728 - "once_cell", 1729 - "parking_lot", 1730 1646 "tracing-core", 1731 1647 "tracing-subscriber", 1732 1648 ] ··· 1767 1683 checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" 1768 1684 1769 1685 [[package]] 1770 - name = "typenum" 1771 - version = "1.18.0" 1772 - source = "registry+https://github.com/rust-lang/crates.io-index" 1773 - checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" 1774 - 1775 - [[package]] 1776 1686 name = "unicode-ident" 1777 1687 version = "1.0.19" 1778 1688 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1790 1700 source = "registry+https://github.com/rust-lang/crates.io-index" 1791 1701 checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" 1792 1702 dependencies = [ 1793 - "getrandom 0.3.3", 1703 + "getrandom", 1794 1704 "js-sys", 1795 1705 "serde", 1796 1706 "wasm-bindgen", ··· 1820 1730 checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" 1821 1731 1822 1732 [[package]] 1823 - name = "wasi" 1824 - version = "0.11.1+wasi-snapshot-preview1" 1733 + name = "walkdir" 1734 + version = "2.5.0" 1825 1735 source = "registry+https://github.com/rust-lang/crates.io-index" 1826 - checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" 1736 + checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" 1737 + dependencies = [ 1738 + "same-file", 1739 + "winapi-util", 1740 + ] 1827 1741 1828 1742 [[package]] 1829 1743 name = "wasi" ··· 1937 1851 1938 1852 [[package]] 1939 1853 name = "wgpu-types" 1940 - version = "24.0.0" 1854 + version = "26.0.0" 1941 1855 source = "registry+https://github.com/rust-lang/crates.io-index" 1942 - checksum = "50ac044c0e76c03a0378e7786ac505d010a873665e2d51383dcff8dd227dc69c" 1856 + checksum = "eca7a8d8af57c18f57d393601a1fb159ace8b2328f1b6b5f80893f7d672c9ae2" 1943 1857 dependencies = [ 1944 1858 "bitflags", 1859 + "bytemuck", 1945 1860 "js-sys", 1946 1861 "log", 1947 1862 "serde", 1863 + "thiserror 2.0.17", 1948 1864 "web-sys", 1949 1865 ] 1950 1866 1951 1867 [[package]] 1868 + name = "winapi-util" 1869 + version = "0.1.11" 1870 + source = "registry+https://github.com/rust-lang/crates.io-index" 1871 + checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" 1872 + dependencies = [ 1873 + "windows-sys 0.61.1", 1874 + ] 1875 + 1876 + [[package]] 1952 1877 name = "windows-link" 1953 1878 version = "0.2.0" 1954 1879 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1956 1881 1957 1882 [[package]] 1958 1883 name = "windows-sys" 1884 + version = "0.45.0" 1885 + source = "registry+https://github.com/rust-lang/crates.io-index" 1886 + checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" 1887 + dependencies = [ 1888 + "windows-targets 0.42.2", 1889 + ] 1890 + 1891 + [[package]] 1892 + name = "windows-sys" 1959 1893 version = "0.52.0" 1960 1894 source = "registry+https://github.com/rust-lang/crates.io-index" 1961 1895 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" 1962 1896 dependencies = [ 1963 - "windows-targets", 1897 + "windows-targets 0.52.6", 1964 1898 ] 1965 1899 1966 1900 [[package]] 1967 1901 name = "windows-sys" 1968 - version = "0.61.0" 1902 + version = "0.61.1" 1969 1903 source = "registry+https://github.com/rust-lang/crates.io-index" 1970 - checksum = "e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa" 1904 + checksum = "6f109e41dd4a3c848907eb83d5a42ea98b3769495597450cf6d153507b166f0f" 1971 1905 dependencies = [ 1972 1906 "windows-link", 1973 1907 ] 1974 1908 1975 1909 [[package]] 1976 1910 name = "windows-targets" 1911 + version = "0.42.2" 1912 + source = "registry+https://github.com/rust-lang/crates.io-index" 1913 + checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" 1914 + dependencies = [ 1915 + "windows_aarch64_gnullvm 0.42.2", 1916 + "windows_aarch64_msvc 0.42.2", 1917 + "windows_i686_gnu 0.42.2", 1918 + "windows_i686_msvc 0.42.2", 1919 + "windows_x86_64_gnu 0.42.2", 1920 + "windows_x86_64_gnullvm 0.42.2", 1921 + "windows_x86_64_msvc 0.42.2", 1922 + ] 1923 + 1924 + [[package]] 1925 + name = "windows-targets" 1977 1926 version = "0.52.6" 1978 1927 source = "registry+https://github.com/rust-lang/crates.io-index" 1979 1928 checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" 1980 1929 dependencies = [ 1981 - "windows_aarch64_gnullvm", 1982 - "windows_aarch64_msvc", 1983 - "windows_i686_gnu", 1930 + "windows_aarch64_gnullvm 0.52.6", 1931 + "windows_aarch64_msvc 0.52.6", 1932 + "windows_i686_gnu 0.52.6", 1984 1933 "windows_i686_gnullvm", 1985 - "windows_i686_msvc", 1986 - "windows_x86_64_gnu", 1987 - "windows_x86_64_gnullvm", 1988 - "windows_x86_64_msvc", 1934 + "windows_i686_msvc 0.52.6", 1935 + "windows_x86_64_gnu 0.52.6", 1936 + "windows_x86_64_gnullvm 0.52.6", 1937 + "windows_x86_64_msvc 0.52.6", 1989 1938 ] 1990 1939 1991 1940 [[package]] 1992 1941 name = "windows_aarch64_gnullvm" 1942 + version = "0.42.2" 1943 + source = "registry+https://github.com/rust-lang/crates.io-index" 1944 + checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" 1945 + 1946 + [[package]] 1947 + name = "windows_aarch64_gnullvm" 1993 1948 version = "0.52.6" 1994 1949 source = "registry+https://github.com/rust-lang/crates.io-index" 1995 1950 checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" 1996 1951 1997 1952 [[package]] 1998 1953 name = "windows_aarch64_msvc" 1954 + version = "0.42.2" 1955 + source = "registry+https://github.com/rust-lang/crates.io-index" 1956 + checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" 1957 + 1958 + [[package]] 1959 + name = "windows_aarch64_msvc" 1999 1960 version = "0.52.6" 2000 1961 source = "registry+https://github.com/rust-lang/crates.io-index" 2001 1962 checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" 2002 1963 2003 1964 [[package]] 2004 1965 name = "windows_i686_gnu" 1966 + version = "0.42.2" 1967 + source = "registry+https://github.com/rust-lang/crates.io-index" 1968 + checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" 1969 + 1970 + [[package]] 1971 + name = "windows_i686_gnu" 2005 1972 version = "0.52.6" 2006 1973 source = "registry+https://github.com/rust-lang/crates.io-index" 2007 1974 checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" ··· 2014 1981 2015 1982 [[package]] 2016 1983 name = "windows_i686_msvc" 1984 + version = "0.42.2" 1985 + source = "registry+https://github.com/rust-lang/crates.io-index" 1986 + checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" 1987 + 1988 + [[package]] 1989 + name = "windows_i686_msvc" 2017 1990 version = "0.52.6" 2018 1991 source = "registry+https://github.com/rust-lang/crates.io-index" 2019 1992 checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" 2020 1993 2021 1994 [[package]] 2022 1995 name = "windows_x86_64_gnu" 1996 + version = "0.42.2" 1997 + source = "registry+https://github.com/rust-lang/crates.io-index" 1998 + checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" 1999 + 2000 + [[package]] 2001 + name = "windows_x86_64_gnu" 2023 2002 version = "0.52.6" 2024 2003 source = "registry+https://github.com/rust-lang/crates.io-index" 2025 2004 checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" 2005 + 2006 + [[package]] 2007 + name = "windows_x86_64_gnullvm" 2008 + version = "0.42.2" 2009 + source = "registry+https://github.com/rust-lang/crates.io-index" 2010 + checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" 2026 2011 2027 2012 [[package]] 2028 2013 name = "windows_x86_64_gnullvm" ··· 2032 2017 2033 2018 [[package]] 2034 2019 name = "windows_x86_64_msvc" 2035 - version = "0.52.6" 2020 + version = "0.42.2" 2036 2021 source = "registry+https://github.com/rust-lang/crates.io-index" 2037 - checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 2022 + checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" 2038 2023 2039 2024 [[package]] 2040 - name = "winnow" 2041 - version = "0.5.40" 2025 + name = "windows_x86_64_msvc" 2026 + version = "0.52.6" 2042 2027 source = "registry+https://github.com/rust-lang/crates.io-index" 2043 - checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" 2044 - dependencies = [ 2045 - "memchr", 2046 - ] 2028 + checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 2047 2029 2048 2030 [[package]] 2049 2031 name = "winnow"
+2 -1
README.md
··· 65 65 // `StatContainer` derive hooks into the existing `auto_component` and `auto_resource` macros. 66 66 #[derive(StatContainer, Component, Resource)] 67 67 #[auto_component(plugin = MyPlugin)] // Adds `reset_component_modifiers` system. 68 - #[auto_resource(plugin = MyPlugin)] // Adds `reset_resource_modifiers` system. 68 + #[auto_init_resource(plugin = MyPlugin)] // Adds `reset_resource_modifiers` system. 69 69 struct Speed(Stat); 70 70 ``` 71 71 72 72 ### Version Compatibility 73 73 | Bevy | Immediate Stats | 74 74 |--------|-----------------| 75 + | `0.17` | `0.3` | 75 76 | `0.16` | `0.1` - `0.2` |
+7 -14
immediate_stats/Cargo.toml
··· 1 1 [package] 2 2 name = "immediate_stats" 3 - version = "0.2.0" 3 + version = "0.3.0-rc.1" 4 4 edition = "2024" 5 5 description = "Game stats that reset every frame, inspired by immediate mode GUI." 6 6 categories = ["game-development", "data-structures"] ··· 20 20 "dep:bevy_reflect", 21 21 "immediate_stats_macros/bevy", 22 22 ] 23 - bevy_butler = ["bevy", "dep:bevy-butler", "immediate_stats_macros/bevy_butler"] 24 23 bevy_auto_plugin = [ 25 24 "bevy", 26 25 "dep:bevy_auto_plugin", ··· 28 27 ] 29 28 30 29 [dependencies] 31 - bevy_app = { version = "0.16.0", default-features = false, optional = true, features = [ 30 + bevy_app = { version = "0.17", default-features = false, optional = true, features = [ 32 31 "bevy_reflect", 33 32 ] } 34 - bevy-butler = { version = "0.6.1", optional = true } 35 - bevy_auto_plugin = { version = "0.5.0", optional = true } 36 - bevy_ecs = { version = "0.16.0", default-features = false, optional = true, features = [ 33 + bevy_auto_plugin = { git = "https://github.com/StrikeForceZero/bevy_auto_plugin", rev = "refs/pull/22/head", optional = true } 34 + bevy_ecs = { version = "0.17", default-features = false, optional = true, features = [ 37 35 "bevy_reflect", 38 36 ] } 39 - bevy_reflect = { version = "0.16.0", default-features = false, optional = true } 40 - immediate_stats_macros = { path = "../immediate_stats_macros", version = "0.2.0", default-features = false } 37 + bevy_reflect = { version = "0.17", default-features = false, optional = true } 38 + immediate_stats_macros = { path = "../immediate_stats_macros", version = "0.3.0-rc.1", default-features = false } 41 39 42 40 [dev-dependencies] 43 - bevy = { version = "0.16.0", default-features = false } 41 + bevy = { version = "0.17", default-features = false } 44 42 45 43 [lints.rust] 46 44 missing_docs = "warn" ··· 57 55 name = "simple_bevy" 58 56 path = "examples/simple_bevy.rs" 59 57 required-features = ["bevy"] 60 - 61 - [[example]] 62 - name = "simple_bevy_butler" 63 - path = "examples/simple_bevy_butler.rs" 64 - required-features = ["bevy_butler"] 65 58 66 59 [[example]] 67 60 name = "simple_bevy_auto_plugin"
-44
immediate_stats/examples/simple_bevy_butler.rs
··· 1 - //! A very simple example using Bevy Butler. Requires the `bevy_butler` feature flag, which is *depreciated*. 2 - //! 3 - //! **Please see the Bevy Auto Plugin example instead.** 4 - 5 - use bevy::prelude::*; 6 - use bevy_butler::*; 7 - use immediate_stats::*; 8 - 9 - fn main() { 10 - App::new() 11 - .add_plugins((MinimalPlugins, ImmediateStatsPlugin, SpeedPlugin)) 12 - .run(); 13 - } 14 - 15 - #[butler_plugin] 16 - struct SpeedPlugin; 17 - 18 - // Implements `reset_modifiers` by passing the call onto `Stat`. 19 - // This will also add the `ResetComponentPlugin` to `SpeedPlugin`. 20 - #[derive(StatContainer, Component)] 21 - #[add_component(plugin = SpeedPlugin)] 22 - struct Speed(Stat); 23 - 24 - #[add_system(plugin = SpeedPlugin, schedule = Startup)] 25 - fn init_speed(mut commands: Commands) { 26 - commands.spawn(Speed(Stat::new(10))); // Set base speed to 10. 27 - } 28 - 29 - #[add_system(plugin = SpeedPlugin, schedule = Update, in_set = StatSystems::Modify)] 30 - fn apply_modifiers(mut speeds: Query<&mut Speed>) { 31 - for mut speed in &mut speeds { 32 - speed.0 *= 2.0; // Applies a multiplier to the final result. 33 - speed.0 += 5; // Adds a bonus to the final result. 34 - // The order does not matter, bonuses are always applied before multipliers. 35 - } 36 - } 37 - 38 - #[add_system(plugin = SpeedPlugin, schedule = Update, in_set = StatSystems::Read)] 39 - fn read_speed(speeds: Query<&Speed>) { 40 - for speed in &speeds { 41 - println!("The current speed is {}.", speed.0.total()); 42 - assert_eq!(speed.0.total(), 30); // (10 + 5) * 2 = 30 43 - } 44 - }
+1
immediate_stats/src/lib.rs
··· 78 78 //! ### Version Compatibility 79 79 //! | Bevy | Immediate Stats | 80 80 //! |--------|-----------------| 81 + //! | `0.17` | `0.3` | 81 82 //! | `0.16` | `0.1` - `0.2` | 82 83 83 84 #[cfg(feature = "bevy")]
-108
immediate_stats/tests/bevy_butler.rs
··· 1 - //! Tests the `add_component` attribute for automatic system registration. 2 - #![cfg(feature = "bevy_butler")] 3 - 4 - extern crate immediate_stats; 5 - use crate::{Stat, StatContainer}; 6 - use bevy_app::App; 7 - use bevy_butler::*; 8 - use bevy_ecs::prelude::*; 9 - use immediate_stats::*; 10 - 11 - #[butler_plugin] 12 - struct MyPlugin; 13 - 14 - #[derive(Resource, Component, StatContainer, Default, PartialEq, Debug)] 15 - #[add_component(plugin = MyPlugin)] 16 - #[insert_resource(plugin = MyPlugin)] 17 - struct Health(Stat); 18 - 19 - #[test] 20 - fn reset_component_auto() { 21 - let mut app = App::new(); 22 - 23 - app.add_plugins(MyPlugin); 24 - 25 - let entity = app 26 - .world_mut() 27 - .spawn(Health(Stat { 28 - base: 100, 29 - bonus: 50, 30 - multiplier: 2.0, 31 - })) 32 - .id(); 33 - 34 - app.update(); 35 - 36 - assert_eq!( 37 - app.world().get::<Health>(entity), 38 - Some(Health(Stat::new(100))).as_ref() 39 - ); 40 - } 41 - 42 - #[test] 43 - fn reset_resource_auto() { 44 - let mut app = App::new(); 45 - 46 - app.add_plugins(MyPlugin); 47 - 48 - app.insert_resource(Health(Stat { 49 - base: 100, 50 - bonus: 50, 51 - multiplier: 2.0, 52 - })); 53 - 54 - app.update(); 55 - 56 - assert_eq!( 57 - app.world().get_resource::<Health>(), 58 - Some(Health(Stat::new(100))).as_ref() 59 - ); 60 - } 61 - 62 - #[derive(Resource, Component, StatContainer, Default, PartialEq, Debug)] 63 - #[add_component(plugin(MyPlugin))] 64 - #[insert_resource(plugin(MyPlugin))] 65 - struct AlternateSyntax(Stat); 66 - 67 - #[test] 68 - fn reset_component_auto_alternate_syntax() { 69 - let mut app = App::new(); 70 - 71 - app.add_plugins(MyPlugin); 72 - 73 - let entity = app 74 - .world_mut() 75 - .spawn(AlternateSyntax(Stat { 76 - base: 100, 77 - bonus: 50, 78 - multiplier: 2.0, 79 - })) 80 - .id(); 81 - 82 - app.update(); 83 - 84 - assert_eq!( 85 - app.world().get::<AlternateSyntax>(entity), 86 - Some(AlternateSyntax(Stat::new(100))).as_ref() 87 - ); 88 - } 89 - 90 - #[test] 91 - fn reset_resource_auto_alternate_syntax() { 92 - let mut app = App::new(); 93 - 94 - app.add_plugins(MyPlugin); 95 - 96 - app.insert_resource(AlternateSyntax(Stat { 97 - base: 100, 98 - bonus: 50, 99 - multiplier: 2.0, 100 - })); 101 - 102 - app.update(); 103 - 104 - assert_eq!( 105 - app.world().get_resource::<AlternateSyntax>(), 106 - Some(AlternateSyntax(Stat::new(100))).as_ref() 107 - ); 108 - }
+1 -2
immediate_stats_macros/Cargo.toml
··· 1 1 [package] 2 2 name = "immediate_stats_macros" 3 - version = "0.2.0" 3 + version = "0.3.0-rc.1" 4 4 edition = "2024" 5 5 description = "Game stats that reset every frame, inspired by immediate mode GUI." 6 6 categories = ["game-development", "data-structures"] ··· 18 18 19 19 [features] 20 20 bevy = [] 21 - bevy_butler = ["bevy"] 22 21 bevy_auto_plugin = ["bevy"] 23 22 24 23 [dependencies]
-119
immediate_stats_macros/src/bevy_butler.rs
··· 1 - use darling::ast::NestedMeta; 2 - use darling::{Error, FromMeta}; 3 - use proc_macro2::{Ident, TokenStream}; 4 - use quote::{ToTokens, format_ident, quote}; 5 - use syn::{DeriveInput, Expr, Meta, Path}; 6 - 7 - /// Returns code that will register stat resetting system(s) with Bevy Butler. 8 - pub fn register_systems(input: &DeriveInput) -> darling::Result<TokenStream> { 9 - let struct_name = &input.ident; 10 - 11 - let mut butler_attributes = ButlerAttributes::new(struct_name); 12 - 13 - for attr in &input.attrs { 14 - if attr.path().is_ident("add_component") { 15 - let plugin = PluginPath::from_meta(&attr.meta)?; 16 - butler_attributes.component_plugin = Some(plugin); 17 - } else if attr.path().is_ident("insert_resource") { 18 - let plugin = PluginPath::from_meta(&attr.meta)?; 19 - butler_attributes.resource_plugin = Some(plugin); 20 - } 21 - } 22 - 23 - Ok(butler_attributes.into_token_stream()) 24 - } 25 - 26 - pub struct ButlerAttributes<'a> { 27 - ident: &'a Ident, 28 - component_plugin: Option<PluginPath>, 29 - resource_plugin: Option<PluginPath>, 30 - } 31 - 32 - impl<'a> ButlerAttributes<'a> { 33 - pub fn new(ident: &'a Ident) -> Self { 34 - Self { 35 - ident, 36 - component_plugin: None, 37 - resource_plugin: None, 38 - } 39 - } 40 - } 41 - 42 - impl<'a> ToTokens for ButlerAttributes<'a> { 43 - fn to_tokens(&self, tokens: &mut TokenStream) { 44 - if let Some(plugin_path) = &self.component_plugin { 45 - let ident = &self.ident; 46 - let plugin = &plugin_path.0; 47 - let use_as = format_ident!("__{ident}_component"); 48 - 49 - // Due to some strange import scoping issues, we cannot use the plugins. 50 - // Instead, we can just recreate the plugin's functionality. 51 - tokens.extend(quote! { 52 - #[bevy_butler::add_system( 53 - generics = <#ident>, 54 - plugin = #plugin, 55 - schedule = immediate_stats::__PreUpdate, 56 - in_set = immediate_stats::StatSystems::Reset, 57 - )] 58 - use immediate_stats::reset_component_modifiers as #use_as; 59 - }); 60 - } 61 - 62 - if let Some(plugin_path) = &self.resource_plugin { 63 - let ident = &self.ident; 64 - let plugin = &plugin_path.0; 65 - let use_as = format_ident!("__{ident}_resource"); 66 - 67 - // Due to some strange import scoping issues, we cannot use the plugins. 68 - // Instead, we can just recreate the plugin's functionality. 69 - tokens.extend(quote! { 70 - #[bevy_butler::add_system( 71 - generics = <#ident>, 72 - plugin = #plugin, 73 - schedule = immediate_stats::__PreUpdate, 74 - in_set = immediate_stats::StatSystems::Reset, 75 - )] 76 - use immediate_stats::reset_resource_modifiers as #use_as; 77 - }); 78 - } 79 - } 80 - } 81 - 82 - /// Represents a `plugin(PATH)` or `plugin = PATH` attribute meta. 83 - pub struct PluginPath(pub Path); 84 - 85 - impl FromMeta for PluginPath { 86 - fn from_list(items: &[NestedMeta]) -> darling::Result<Self> { 87 - for item in items { 88 - return match item { 89 - NestedMeta::Meta(meta) => match meta { 90 - Meta::Path(_) => Err(Error::custom("Expected a value for `plugin`")), 91 - Meta::List(list) => { 92 - if list.path.require_ident()? != "plugin" { 93 - continue; 94 - } 95 - 96 - let mut path = None; 97 - 98 - list.parse_nested_meta(|value_meta| { 99 - path = Some(value_meta.path); 100 - Ok(()) 101 - })?; 102 - 103 - match path { 104 - None => Err(Error::custom("Expected `plugin` attribute")), 105 - Some(path) => Ok(PluginPath(path)), 106 - } 107 - } 108 - Meta::NameValue(name_value) => match &name_value.value { 109 - Expr::Path(p) => Ok(PluginPath(p.path.clone())), 110 - _ => Err(Error::custom("Expected a path to a butler plugin")), 111 - }, 112 - }, 113 - NestedMeta::Lit(_) => Err(Error::custom("Expected `plugin` attribute")), 114 - }; 115 - } 116 - 117 - Err(Error::custom("Expected `plugin` attribute")) 118 - } 119 - }
+3 -16
immediate_stats_macros/src/lib.rs
··· 1 1 #[cfg(feature = "bevy_auto_plugin")] 2 2 mod bevy_auto_plugin; 3 - #[cfg(feature = "bevy_butler")] 4 - mod bevy_butler; 5 3 mod derive_enum; 6 4 mod derive_struct; 7 5 ··· 25 23 } 26 24 }; 27 25 28 - let mut trait_impl = quote! { 26 + let trait_impl = quote! { 29 27 impl StatContainer for #ident { 30 28 fn reset_modifiers(&mut self) { 31 29 #method_contents ··· 33 31 } 34 32 }; 35 33 36 - #[cfg(feature = "bevy_butler")] 37 - { 38 - emit_warning!( 39 - proc_macro2::Span::call_site(), 40 - "The `bevy_butler` feature flag is depreciated." 41 - ); 42 - 43 - let systems = 44 - bevy_butler::register_systems(&tree).unwrap_or_else(darling::Error::write_errors); 45 - trait_impl = quote! { #trait_impl #systems }; 46 - } 47 - 48 34 #[cfg(feature = "bevy_auto_plugin")] 49 35 { 50 36 let systems = 51 37 bevy_auto_plugin::register_systems(&tree).unwrap_or_else(darling::Error::write_errors); 52 - trait_impl = quote! { #trait_impl #systems }; 38 + quote! { #trait_impl #systems }.into() 53 39 } 54 40 41 + #[cfg(not(feature = "bevy_auto_plugin"))] 55 42 trait_impl.into() 56 43 } 57 44