diff --git a/Cargo.lock b/Cargo.lock index ac1ab41a..7e7f3157 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,9 @@ version = 4 [[package]] name = "ab_glyph" -version = "0.2.31" +version = "0.2.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e074464580a518d16a7126262fffaaa47af89d4099d4cb403f8ed938ba12ee7d" +checksum = "01c0457472c38ea5bd1c3b5ada5e368271cb550be7a4ca4a0b4634e9913f6cc2" dependencies = [ "ab_glyph_rasterizer", "owned_ttf_parser", @@ -26,9 +26,9 @@ checksum = "6cf780eb737f2d4a49ffbd512324d53ad089070f813f7be7f99dbd5123a7f448" [[package]] name = "accesskit" -version = "0.18.0" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "becf0eb5215b6ecb0a739c31c21bd83c4f326524c9b46b7e882d77559b60a529" +checksum = "cf203f9d3bd8f29f98833d1fbef628df18f759248a547e7e01cfbf63cda36a99" dependencies = [ "enumn", "serde", @@ -46,13 +46,12 @@ dependencies = [ [[package]] name = "accesskit_consumer" -version = "0.27.0" +version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0bf66a7bf0b7ea4fd7742d50b64782a88f99217cf246b3f93b4162528dde520" +checksum = "bdd06f5fea9819250fffd4debf926709f3593ac22f8c1541a2573e5ee0ca01cd" dependencies = [ - "accesskit 0.18.0", + "accesskit 0.21.1", "hashbrown 0.15.5", - "immutable-chunkmap", ] [[package]] @@ -71,12 +70,12 @@ dependencies = [ [[package]] name = "accesskit_macos" -version = "0.19.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09e230718177753b4e4ad9e1d9f6cfc2f4921212d4c1c480b253f526babb258d" +checksum = "93fbaf15815f39084e0cb24950c232f0e3634702c2dfbf182ae3b4919a4a1d45" dependencies = [ - "accesskit 0.18.0", - "accesskit_consumer 0.27.0", + "accesskit 0.21.1", + "accesskit_consumer 0.30.1", "hashbrown 0.15.5", "objc2 0.5.2", "objc2-app-kit 0.2.2", @@ -98,17 +97,16 @@ dependencies = [ [[package]] name = "accesskit_windows" -version = "0.25.0" +version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65178f3df98a51e4238e584fcb255cb1a4f9111820848eeddd37663be40a625f" +checksum = "792991159fa9ba57459de59e12e918bb90c5346fea7d40ac1a11f8632b41e63a" dependencies = [ - "accesskit 0.18.0", - "accesskit_consumer 0.27.0", + "accesskit 0.21.1", + "accesskit_consumer 0.30.1", "hashbrown 0.15.5", - "paste", "static_assertions", - "windows 0.58.0", - "windows-core 0.58.0", + "windows 0.61.3", + "windows-core 0.61.2", ] [[package]] @@ -126,86 +124,23 @@ dependencies = [ [[package]] name = "accesskit_winit" -version = "0.25.0" +version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34d941bb8c414caba6e206de669c7dc0dbeb305640ea890772ee422a40e6b89f" +checksum = "cd9db0ea66997e3f4eae4a5f2c6b6486cf206642639ee629dbbb860ace1dec87" dependencies = [ - "accesskit 0.18.0", - "accesskit_macos 0.19.0", - "accesskit_windows 0.25.0", + "accesskit 0.21.1", + "accesskit_macos 0.22.1", + "accesskit_windows 0.29.1", "raw-window-handle", "winit", ] -[[package]] -name = "addr2line" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" -dependencies = [ - "gimli", -] - [[package]] name = "adler2" version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" -[[package]] -name = "aead" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc95d1bdb8e6666b2b217308eeeb09f2d6728d104be3e31916cc74d15420331" -dependencies = [ - "generic-array", -] - -[[package]] -name = "aes" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "884391ef1066acaa41e766ba8f596341b96e93ce34f9a43e7d24bf0a0eaf0561" -dependencies = [ - "aes-soft", - "aesni", - "cipher", -] - -[[package]] -name = "aes-gcm" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5278b5fabbb9bd46e24aa69b2fdea62c99088e0a950a9be40e3e0101298f88da" -dependencies = [ - "aead", - "aes", - "cipher", - "ctr", - "ghash", - "subtle", -] - -[[package]] -name = "aes-soft" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be14c7498ea50828a38d0e24a765ed2effe92a705885b57d029cd67d45744072" -dependencies = [ - "cipher", - "opaque-debug", -] - -[[package]] -name = "aesni" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2e11f5e94c2f7d386164cc2aa1f97823fed6f259e486940a71c174dd01b0ce" -dependencies = [ - "cipher", - "opaque-debug", -] - [[package]] name = "ahash" version = "0.7.8" @@ -239,15 +174,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "aligned-vec" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc890384c8602f339876ded803c97ad529f3842aba97f6392b3dba0dd171769b" -dependencies = [ - "equator", -] - [[package]] name = "allocator-api2" version = "0.2.21" @@ -304,9 +230,9 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" [[package]] name = "anstream" -version = "0.6.20" +version = "0.6.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ae563653d1938f79b1ab1b5e668c87c76a9930414574a6583a7b7e11a8e6192" +checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" dependencies = [ "anstyle", "anstyle-parse", @@ -319,9 +245,9 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.11" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd" +checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" [[package]] name = "anstyle-parse" @@ -352,12 +278,6 @@ dependencies = [ "windows-sys 0.60.2", ] -[[package]] -name = "anyhow" -version = "1.0.99" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100" - [[package]] name = "approx" version = "0.5.1" @@ -367,12 +287,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "arbitrary" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" - [[package]] name = "arboard" version = "3.6.1" @@ -382,40 +296,23 @@ dependencies = [ "clipboard-win", "image", "log", - "objc2 0.6.2", - "objc2-app-kit 0.3.1", + "objc2 0.6.3", + "objc2-app-kit 0.3.2", "objc2-core-foundation", "objc2-core-graphics", - "objc2-foundation 0.3.1", + "objc2-foundation 0.3.2", "parking_lot", "percent-encoding", "windows-sys 0.60.2", "x11rb", ] -[[package]] -name = "arg_enum_proc_macro" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.106", -] - [[package]] name = "arrayref" version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" -[[package]] -name = "arrayvec" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" - [[package]] name = "arrayvec" version = "0.7.6" @@ -443,7 +340,7 @@ version = "0.38.0+1.3.281" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0bb44936d800fea8f016d7f2311c6a4f97aebd5dc86f09906139ec848cf3a46f" dependencies = [ - "libloading 0.8.8", + "libloading 0.8.9", ] [[package]] @@ -479,17 +376,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "async-channel" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" -dependencies = [ - "concurrent-queue", - "event-listener 2.5.3", - "futures-core", -] - [[package]] name = "async-channel" version = "2.5.0" @@ -502,16 +388,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "async-dup" -version = "1.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c2886ab563af5038f79ec016dd7b87947ed138b794e8dd64992962c9cca0411" -dependencies = [ - "async-lock 3.4.1", - "futures-io", -] - [[package]] name = "async-executor" version = "1.13.3" @@ -520,8 +396,8 @@ checksum = "497c00e0fd83a72a79a39fcbd8e3e2f055d6f6c7e025f3b3d91f4f8e76527fb8" dependencies = [ "async-task", "concurrent-queue", - "fastrand 2.3.0", - "futures-lite 2.6.1", + "fastrand", + "futures-lite", "pin-project-lite", "slab", ] @@ -532,88 +408,9 @@ version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8034a681df4aed8b8edbd7fbe472401ecf009251c8b40556b304567052e294c5" dependencies = [ - "async-lock 3.4.1", - "blocking", - "futures-lite 2.6.1", -] - -[[package]] -name = "async-global-executor" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05b1b633a2115cd122d73b955eadd9916c18c8f510ec9cd1686404c60ad1c29c" -dependencies = [ - "async-channel 2.5.0", - "async-executor", - "async-io 2.6.0", - "async-lock 3.4.1", + "async-lock", "blocking", - "futures-lite 2.6.1", - "once_cell", -] - -[[package]] -name = "async-h1" -version = "2.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d1d1dae8cb2c4258a79d6ed088b7fb9b4763bf4e9b22d040779761e046a2971" -dependencies = [ - "async-channel 1.9.0", - "async-dup", - "async-global-executor", - "async-io 1.13.0", - "futures-lite 1.13.0", - "http-types", - "httparse", - "log", - "pin-project", -] - -[[package]] -name = "async-io" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" -dependencies = [ - "async-lock 2.8.0", - "autocfg", - "cfg-if", - "concurrent-queue", - "futures-lite 1.13.0", - "log", - "parking", - "polling 2.8.0", - "rustix 0.37.28", - "slab", - "socket2", - "waker-fn", -] - -[[package]] -name = "async-io" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "456b8a8feb6f42d237746d4b3e9a178494627745c3c56c6ea55d92ba50d026fc" -dependencies = [ - "autocfg", - "cfg-if", - "concurrent-queue", - "futures-io", - "futures-lite 2.6.1", - "parking", - "polling 3.11.0", - "rustix 1.1.2", - "slab", - "windows-sys 0.61.0", -] - -[[package]] -name = "async-lock" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" -dependencies = [ - "event-listener 2.5.3", + "futures-lite", ] [[package]] @@ -627,32 +424,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "async-std" -version = "1.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c8e079a4ab67ae52b7403632e4618815d6db36d2a010cfe41b02c1b1578f93b" -dependencies = [ - "async-channel 1.9.0", - "async-global-executor", - "async-io 2.6.0", - "async-lock 3.4.1", - "crossbeam-utils", - "futures-channel", - "futures-core", - "futures-io", - "futures-lite 2.6.1", - "gloo-timers", - "kv-log-macro", - "log", - "memchr", - "once_cell", - "pin-project-lite", - "pin-utils", - "slab", - "wasm-bindgen-futures", -] - [[package]] name = "async-task" version = "4.7.1" @@ -662,30 +433,6 @@ dependencies = [ "portable-atomic", ] -[[package]] -name = "async-tls" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d85a97c4a0ecce878efd3f945f119c78a646d8975340bca0398f9bb05c30cc52" -dependencies = [ - "futures-core", - "futures-io", - "rustls", - "webpki", - "webpki-roots", -] - -[[package]] -name = "async-trait" -version = "0.1.89" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.106", -] - [[package]] name = "atomic-waker" version = "1.1.2" @@ -711,62 +458,6 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" -[[package]] -name = "av1-grain" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f3efb2ca85bc610acfa917b5aaa36f3fcbebed5b3182d7f877b02531c4b80c8" -dependencies = [ - "anyhow", - "arrayvec 0.7.6", - "log", - "nom 7.1.3", - "num-rational", - "v_frame", -] - -[[package]] -name = "avif-serialize" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47c8fbc0f831f4519fe8b810b6a7a91410ec83031b8233f730a0480029f6a23f" -dependencies = [ - "arrayvec 0.7.6", -] - -[[package]] -name = "backtrace" -version = "0.3.75" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002" -dependencies = [ - "addr2line", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", - "windows-targets 0.52.6", -] - -[[package]] -name = "base-x" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270" - -[[package]] -name = "base64" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" - -[[package]] -name = "base64" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" - [[package]] name = "base64" version = "0.21.7" @@ -790,42 +481,46 @@ dependencies = [ [[package]] name = "bevy" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b8369c16b7c017437021341521f8b4a0d98e1c70113fb358c3258ae7d661d79" +checksum = "342f7e9335416dc98642d5747c4ed8a6ad9f7244a36d5b2b7a1b7910e4d8f524" dependencies = [ - "bevy_internal 0.16.1", + "bevy_internal 0.17.2", ] [[package]] name = "bevy-inspector-egui" -version = "0.31.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4971e763f289921fd4616418628458bec26a6fc13fe4299c0e4066f39d7ceaa2" +checksum = "c0d5b2dcce63a8f20cc5df7ec28630a7a8124a9210dfa3bb4e4636dae67731fe" dependencies = [ "bevy-inspector-egui-derive", - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_color 0.16.2", - "bevy_core_pipeline 0.16.1", - "bevy_ecs 0.16.1", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_core_pipeline 0.17.2", + "bevy_ecs 0.17.2", "bevy_egui", "bevy_image", - "bevy_log 0.16.1", - "bevy_math 0.16.1", - "bevy_pbr 0.16.1", + "bevy_light", + "bevy_log 0.17.2", + "bevy_math 0.17.2", + "bevy_mesh", + "bevy_pbr 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_render 0.16.1", + "bevy_reflect 0.17.2", + "bevy_render 0.17.2", "bevy_state", - "bevy_time 0.16.1", - "bevy_utils 0.16.1", - "bevy_window 0.16.1", + "bevy_time 0.17.2", + "bevy_utils 0.17.2", + "bevy_window 0.17.2", "bytemuck", "disqualified", "egui", "fuzzy-matcher", "image", + "opener", "smallvec", "uuid", "winit", @@ -833,9 +528,9 @@ dependencies = [ [[package]] name = "bevy-inspector-egui-derive" -version = "0.31.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2656316165dbe2af6b3acaa763332f5dbdd12f809d59f5bf4304e0642a8005c9" +checksum = "428bb0621707f70099d4697516ea17c16cc0a215253540119cbec4d2f97a24be" dependencies = [ "proc-macro2", "quote", @@ -856,18 +551,49 @@ dependencies = [ [[package]] name = "bevy_a11y" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed3561712cf49074d89e9989bfc2e6c6add5d33288f689db9a0c333300d2d004" +checksum = "3917cd35096fb2fe176632740b68a4b53cb61006cfff13d66ef47ee2c2478d53" dependencies = [ - "accesskit 0.18.0", - "bevy_app 0.16.1", - "bevy_derive 0.16.1", - "bevy_ecs 0.16.1", - "bevy_reflect 0.16.1", + "accesskit 0.21.1", + "bevy_app 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", + "bevy_reflect 0.17.2", "serde", ] +[[package]] +name = "bevy_android" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2a9dd9488c77fa2ea31b5da2f978aab7f1cc82e6d2c3be0adf637d9fd7cb6c8" +dependencies = [ + "android-activity", +] + +[[package]] +name = "bevy_anti_alias" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c1adb85fe0956d6c3b6f90777b829785bb7e29a48f58febeeefd2bad317713" +dependencies = [ + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_core_pipeline 0.17.2", + "bevy_derive 0.17.2", + "bevy_diagnostic 0.17.2", + "bevy_ecs 0.17.2", + "bevy_image", + "bevy_math 0.17.2", + "bevy_reflect 0.17.2", + "bevy_render 0.17.2", + "bevy_shader", + "bevy_utils 0.17.2", + "tracing", +] + [[package]] name = "bevy_app" version = "0.14.2" @@ -888,22 +614,22 @@ dependencies = [ [[package]] name = "bevy_app" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4491cc4c718ae76b4c6883df58b94cc88b32dcd894ea8d5b603c7c7da72ca967" +checksum = "9f582409b4ed3850d9b66ee94e71a0e2c20e7068121d372530060c4dfcba66fa" dependencies = [ - "bevy_derive 0.16.1", - "bevy_ecs 0.16.1", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_tasks 0.16.1", - "bevy_utils 0.16.1", + "bevy_reflect 0.17.2", + "bevy_tasks 0.17.2", + "bevy_utils 0.17.2", "cfg-if", "console_error_panic_hook", "ctrlc", "downcast-rs 2.0.2", "log", - "thiserror 2.0.16", + "thiserror 2.0.17", "variadics_please", "wasm-bindgen", "web-sys", @@ -911,11 +637,11 @@ dependencies = [ [[package]] name = "bevy_args" -version = "1.8.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac904a740526b144edf9fc089976b300736f6e5a46e1d6a314bc2adb22788536" +checksum = "78be90b7057af29f4d871d241718a974f921ee9cd04efc1d8e3c8eb1d40c8b8a" dependencies = [ - "bevy 0.16.1", + "bevy 0.17.2", "clap", "console_error_panic_hook", "serde", @@ -932,7 +658,7 @@ checksum = "60ec5ea257e1ebd3d411f669e29acf60beb715bebc7e1f374c17f49cd3aad46c" dependencies = [ "async-broadcast 0.5.1", "async-fs", - "async-lock 3.4.1", + "async-lock", "bevy_app 0.14.2", "bevy_asset_macros 0.14.2", "bevy_ecs 0.14.2", @@ -944,10 +670,10 @@ dependencies = [ "crossbeam-channel", "downcast-rs 1.2.1", "futures-io", - "futures-lite 2.6.1", + "futures-lite", "js-sys", "parking_lot", - "ron", + "ron 0.8.1", "serde", "thiserror 1.0.69", "uuid", @@ -958,38 +684,40 @@ dependencies = [ [[package]] name = "bevy_asset" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f56111d9b88d8649f331a667d9d72163fb26bd09518ca16476d238653823db1e" +checksum = "9e6ee42e74a64a46ab91bd1c0155f8abe5b732bdb948a9b26e541456cc7940e5" dependencies = [ "async-broadcast 0.7.2", "async-fs", - "async-lock 3.4.1", + "async-lock", "atomicow", - "bevy_app 0.16.1", - "bevy_asset_macros 0.16.1", - "bevy_ecs 0.16.1", + "bevy_android", + "bevy_app 0.17.2", + "bevy_asset_macros 0.17.2", + "bevy_ecs 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_tasks 0.16.1", - "bevy_utils 0.16.1", - "bevy_window 0.16.1", + "bevy_reflect 0.17.2", + "bevy_tasks 0.17.2", + "bevy_utils 0.17.2", "bitflags 2.9.4", "blake3", + "blocking", "crossbeam-channel", "derive_more", "disqualified", "downcast-rs 2.0.2", "either", "futures-io", - "futures-lite 2.6.1", + "futures-lite", "js-sys", "parking_lot", - "ron", + "ron 0.10.1", "serde", "stackfuture", - "thiserror 2.0.16", + "thiserror 2.0.17", "tracing", + "ureq", "uuid", "wasm-bindgen", "wasm-bindgen-futures", @@ -1010,16 +738,42 @@ dependencies = [ [[package]] name = "bevy_asset_macros" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4cca3e67c0ec760d8889d42293d987ce5da92eaf9c592bf5d503728a63b276d" +checksum = "d03711d2c087227f64ba85dd38a99d4d6893f80d2475c2e77fb90a883760a055" dependencies = [ - "bevy_macro_utils 0.16.1", + "bevy_macro_utils 0.17.2", "proc-macro2", "quote", "syn 2.0.106", ] +[[package]] +name = "bevy_camera" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b70d79ccbd8bfefc79f33a104dfd82ae2f5276ce04d6df75787bfa3edc4c4c1a" +dependencies = [ + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_color 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", + "bevy_image", + "bevy_math 0.17.2", + "bevy_mesh", + "bevy_reflect 0.17.2", + "bevy_transform 0.17.2", + "bevy_utils 0.17.2", + "bevy_window 0.17.2", + "derive_more", + "downcast-rs 2.0.2", + "serde", + "smallvec", + "thiserror 2.0.17", + "wgpu-types 26.0.0", +] + [[package]] name = "bevy_color" version = "0.14.3" @@ -1037,18 +791,18 @@ dependencies = [ [[package]] name = "bevy_color" -version = "0.16.2" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c101cbe1e26b8d701eb77263b14346e2e0cbbd2a6e254b9b1aead814e5ca8d3" +checksum = "94dc78477c1c208c0cd221c64e907aba8ba165f39bebb72adc6180e1a13e8938" dependencies = [ - "bevy_math 0.16.1", - "bevy_reflect 0.16.1", + "bevy_math 0.17.2", + "bevy_reflect 0.17.2", "bytemuck", "derive_more", - "encase 0.10.0", + "encase 0.11.2", "serde", - "thiserror 2.0.16", - "wgpu-types 24.0.0", + "thiserror 2.0.17", + "wgpu-types 26.0.0", ] [[package]] @@ -1092,31 +846,30 @@ dependencies = [ [[package]] name = "bevy_core_pipeline" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59ed46363cad80dc00f08254c3015232bd6f640738403961c6d63e7ecfc61625" +checksum = "0c866a2fe33ec27a612d883223d30f1857aa852766b21a9603628735dace632f" dependencies = [ - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_color 0.16.2", - "bevy_derive 0.16.1", - "bevy_diagnostic 0.16.1", - "bevy_ecs 0.16.1", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", "bevy_image", - "bevy_math 0.16.1", + "bevy_math 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_render 0.16.1", - "bevy_transform 0.16.1", - "bevy_utils 0.16.1", - "bevy_window 0.16.1", + "bevy_reflect 0.17.2", + "bevy_render 0.17.2", + "bevy_shader", + "bevy_transform 0.17.2", + "bevy_utils 0.17.2", + "bevy_window 0.17.2", "bitflags 2.9.4", - "bytemuck", "nonmax", "radsort", - "serde", "smallvec", - "thiserror 2.0.16", + "thiserror 2.0.17", "tracing", ] @@ -1133,11 +886,11 @@ dependencies = [ [[package]] name = "bevy_derive" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b837bf6c51806b10ebfa9edf1844ad80a3a0760d6c5fac4e90761df91a8901a" +checksum = "b8c733807158f8fcac68e23222e69ed91a6492ae9410fc2c145b9bb182cfd63e" dependencies = [ - "bevy_macro_utils 0.16.1", + "bevy_macro_utils 0.17.2", "quote", "syn 2.0.106", ] @@ -1159,16 +912,16 @@ dependencies = [ [[package]] name = "bevy_diagnostic" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48797366f312a8f31e237d08ce3ee70162591282d2bfe7c5ad8be196fb263e55" +checksum = "f12fa32312818c08aa4035bebe9fb3f62aaf7efae33688e718dd6ee6c0147493" dependencies = [ - "bevy_app 0.16.1", - "bevy_ecs 0.16.1", + "atomic-waker", + "bevy_app 0.17.2", + "bevy_ecs 0.17.2", "bevy_platform", - "bevy_tasks 0.16.1", - "bevy_time 0.16.1", - "bevy_utils 0.16.1", + "bevy_tasks 0.17.2", + "bevy_time 0.17.2", "const-fnv1a-hash", "log", "serde", @@ -1196,29 +949,29 @@ dependencies = [ [[package]] name = "bevy_ecs" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c2bf6521aae57a0ec3487c4bfb59e36c4a378e834b626a4bea6a885af2fdfe7" +checksum = "69d929d32190cfcde6efd2df493601c4dbc18a691fd9775a544c951c3c112e1a" dependencies = [ - "arrayvec 0.7.6", - "bevy_ecs_macros 0.16.1", + "arrayvec", + "bevy_ecs_macros 0.17.2", "bevy_platform", - "bevy_ptr 0.16.1", - "bevy_reflect 0.16.1", - "bevy_tasks 0.16.1", - "bevy_utils 0.16.1", + "bevy_ptr 0.17.2", + "bevy_reflect 0.17.2", + "bevy_tasks 0.17.2", + "bevy_utils 0.17.2", "bitflags 2.9.4", "bumpalo", "concurrent-queue", "derive_more", - "disqualified", "fixedbitset 0.5.7", "indexmap", "log", "nonmax", "serde", + "slotmap", "smallvec", - "thiserror 2.0.16", + "thiserror 2.0.17", "variadics_please", ] @@ -1236,11 +989,11 @@ dependencies = [ [[package]] name = "bevy_ecs_macros" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38748d6f3339175c582d751f410fb60a93baf2286c3deb7efebb0878dce7f413" +checksum = "6eeddfb80a2e000663e87be9229c26b4da92bddbc06c8776bc0d1f4a7f679079" dependencies = [ - "bevy_macro_utils 0.16.1", + "bevy_macro_utils 0.17.2", "proc-macro2", "quote", "syn 2.0.106", @@ -1248,36 +1001,47 @@ dependencies = [ [[package]] name = "bevy_egui" -version = "0.34.1" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a3d58a8afdb6100bca50251043a85320391742cae125d559f6cca3a16b84cdd" +checksum = "8bda7a2fad5e98cfed11298b8ff0885aa112d3d3ff6d67c8558f22b8e0fbeba5" dependencies = [ "arboard", - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_derive 0.16.1", - "bevy_ecs 0.16.1", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_core_pipeline 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", "bevy_image", - "bevy_input 0.16.1", - "bevy_log 0.16.1", - "bevy_math 0.16.1", + "bevy_input 0.17.2", + "bevy_log 0.17.2", + "bevy_math 0.17.2", + "bevy_mesh", + "bevy_picking", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_render 0.16.1", - "bevy_time 0.16.1", - "bevy_window 0.16.1", - "bevy_winit 0.16.1", + "bevy_reflect 0.17.2", + "bevy_render 0.17.2", + "bevy_shader", + "bevy_time 0.17.2", + "bevy_transform 0.17.2", + "bevy_ui_render", + "bevy_utils 0.17.2", + "bevy_window 0.17.2", + "bevy_winit 0.17.2", "bytemuck", "crossbeam-channel", "egui", - "encase 0.10.0", + "encase 0.11.2", + "getrandom 0.3.3", "image", + "itertools 0.14.0", "js-sys", "thread_local", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "wgpu-types 24.0.0", + "webbrowser", + "wgpu-types 26.0.0", "winit", ] @@ -1293,12 +1057,12 @@ dependencies = [ [[package]] name = "bevy_encase_derive" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8148f4edee470a2ea5cad010184c492a4c94c36d7a7158ea28e134ea87f274ab" +checksum = "7449e5903594a00f007732ba232af0c527ad4e6e3d29bc3e195ec78dbd20c8b2" dependencies = [ - "bevy_macro_utils 0.16.1", - "encase_derive_impl 0.10.0", + "bevy_macro_utils 0.17.2", + "encase_derive_impl 0.11.2", ] [[package]] @@ -1328,10 +1092,9 @@ dependencies = [ [[package]] name = "bevy_file_asset" version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89125b87890345cc3304783950d9b519a1b0fc0b6fab2e3a4bc8c8a30975b0bd" +source = "git+https://github.com/cs50victor/bevy_file_asset?branch=chore%2Fbump_bevy#a84d11ce756eb18f616249d8678bda7457fec8c2" dependencies = [ - "bevy 0.16.1", + "bevy 0.17.2", "console_error_panic_hook", "futures", "serde", @@ -1341,23 +1104,23 @@ dependencies = [ [[package]] name = "bevy_gaussian_splatting" -version = "5.3.0" +version = "6.0.0" dependencies = [ "base64 0.22.1", - "bevy 0.16.1", + "bevy 0.17.2", "bevy-inspector-egui", "bevy_args", "bevy_file_asset", "bevy_interleave", "bevy_panorbit_camera", "bevy_transform_gizmo", - "bevy_web_asset", "bincode2", "byte-unit", "bytemuck", "clap", "console_error_panic_hook", "criterion", + "crossbeam-channel", "flate2", "flexbuffers", "futures-intrusive", @@ -1401,25 +1164,28 @@ dependencies = [ [[package]] name = "bevy_gizmos" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7823154a9682128c261d8bddb3a4d7192a188490075c527af04520c2f0f8aad6" +checksum = "0d3f174faa13041634060dd99f6f59c29997fd62f40252f0466c2ebea8603d4d" dependencies = [ - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_color 0.16.2", - "bevy_core_pipeline 0.16.1", - "bevy_ecs 0.16.1", - "bevy_gizmos_macros 0.16.1", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_core_pipeline 0.17.2", + "bevy_ecs 0.17.2", + "bevy_gizmos_macros 0.17.2", "bevy_image", - "bevy_math 0.16.1", - "bevy_pbr 0.16.1", - "bevy_reflect 0.16.1", - "bevy_render 0.16.1", - "bevy_sprite", - "bevy_time 0.16.1", - "bevy_transform 0.16.1", - "bevy_utils 0.16.1", + "bevy_light", + "bevy_math 0.17.2", + "bevy_mesh", + "bevy_pbr 0.17.2", + "bevy_reflect 0.17.2", + "bevy_render 0.17.2", + "bevy_shader", + "bevy_time 0.17.2", + "bevy_transform 0.17.2", + "bevy_utils 0.17.2", "bytemuck", "tracing", ] @@ -1438,12 +1204,11 @@ dependencies = [ [[package]] name = "bevy_gizmos_macros" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f378f3b513218ddc78254bbe76536d9de59c1429ebd0c14f5d8f2a25812131ad" +checksum = "714273aa7f285c0aaa874b7fbe37fe4e6e45355e3e6f3321aefa1b78cda259e0" dependencies = [ - "bevy_macro_utils 0.16.1", - "proc-macro2", + "bevy_macro_utils 0.17.2", "quote", "syn 2.0.106", ] @@ -1464,28 +1229,30 @@ dependencies = [ [[package]] name = "bevy_image" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65e6e900cfecadbc3149953169e36b9e26f922ed8b002d62339d8a9dc6129328" +checksum = "168de8239b2aedd2eeef9f76ae1909b2fdf859b11dcdb4d4d01b93f5f2c771be" dependencies = [ - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_color 0.16.2", - "bevy_math 0.16.1", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_color 0.17.2", + "bevy_ecs 0.17.2", + "bevy_math 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_utils 0.16.1", + "bevy_reflect 0.17.2", + "bevy_utils 0.17.2", "bitflags 2.9.4", "bytemuck", - "futures-lite 2.6.1", + "futures-lite", "guillotiere", "half", "image", "rectangle-pack", + "ruzstd", "serde", - "thiserror 2.0.16", + "thiserror 2.0.17", "tracing", - "wgpu-types 24.0.0", + "wgpu-types 26.0.0", ] [[package]] @@ -1505,46 +1272,46 @@ dependencies = [ [[package]] name = "bevy_input" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d6b6516433f6f7d680f648d04eb1866bb3927a1782d52f74831b62042f3cd1" +checksum = "3cf4074b2d0d6680b4deb308ded7b4e8b1b99181c0502e2632e78af815b26f01" dependencies = [ - "bevy_app 0.16.1", - "bevy_ecs 0.16.1", - "bevy_math 0.16.1", + "bevy_app 0.17.2", + "bevy_ecs 0.17.2", + "bevy_math 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_utils 0.16.1", + "bevy_reflect 0.17.2", "derive_more", "log", "serde", "smol_str", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "bevy_input_focus" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e2d079fda74d1416e0a57dac29ea2b79ff77f420cd6b87f833d3aa29a46bc4d" +checksum = "70761eba0f616a1caa761457bff2b8ae80c9916f39d167fab8c2d5c98d2b8951" dependencies = [ - "bevy_app 0.16.1", - "bevy_ecs 0.16.1", - "bevy_input 0.16.1", - "bevy_math 0.16.1", - "bevy_reflect 0.16.1", - "bevy_window 0.16.1", + "bevy_app 0.17.2", + "bevy_ecs 0.17.2", + "bevy_input 0.17.2", + "bevy_math 0.17.2", + "bevy_picking", + "bevy_reflect 0.17.2", + "bevy_window 0.17.2", "log", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "bevy_interleave" -version = "0.7.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bfe1f7e02a4113fd2ee3be2cbc7647234a9e84d5f176d562e74c0b9fc77dcba" +checksum = "d5e983bf7b96aee8fcba56e56cab5f15208febe35d788bf66adc4fb35cc77749" dependencies = [ - "bevy 0.16.1", + "bevy 0.17.2", "bevy_interleave_interface", "bevy_interleave_macros", "bytemuck", @@ -1552,33 +1319,33 @@ dependencies = [ "serde", "wasm-bindgen", "web-sys", - "wgpu 24.0.5", + "wgpu 26.0.1", ] [[package]] name = "bevy_interleave_interface" -version = "0.7.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85dfed00d02ff904f9140e2f7e65a2a3a1dd57323d9be95799ea7712bb784522" +checksum = "3026d1482b4bf64e465ab74426e24fd75d3c60f1841db18ac9b40ba50defcaa1" dependencies = [ - "bevy 0.16.1", + "bevy 0.17.2", ] [[package]] name = "bevy_interleave_macros" -version = "0.7.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b2f1c9a83705a01dc2968dd3e8860073ba106c6f9198b9c6e8bee6d19f90e65" +checksum = "d8f1b69fa5375205d9e4f14915a4427c27ecbf0e5b82c2ab547907361a808382" dependencies = [ - "bevy 0.16.1", + "bevy 0.17.2", "bevy_interleave_interface", "bytemuck", "convert_case", "proc-macro2", "quote", - "sha1 0.10.6", + "sha1", "syn 2.0.106", - "wgpu 24.0.5", + "wgpu 26.0.1", ] [[package]] @@ -1615,40 +1382,68 @@ dependencies = [ [[package]] name = "bevy_internal" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "857da8785678fde537d02944cd20dec9cafb7d4c447efe15f898dc60e733cacd" -dependencies = [ - "bevy_a11y 0.16.1", - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_color 0.16.2", - "bevy_core_pipeline 0.16.1", - "bevy_derive 0.16.1", - "bevy_diagnostic 0.16.1", - "bevy_ecs 0.16.1", - "bevy_gizmos 0.16.1", +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f43985739584f3a5d43026aa1edd772f064830be46c497518f05f7dfbc886bba" +dependencies = [ + "bevy_a11y 0.17.2", + "bevy_android", + "bevy_anti_alias", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_core_pipeline 0.17.2", + "bevy_derive 0.17.2", + "bevy_diagnostic 0.17.2", + "bevy_ecs 0.17.2", + "bevy_gizmos 0.17.2", "bevy_image", - "bevy_input 0.16.1", + "bevy_input 0.17.2", "bevy_input_focus", - "bevy_log 0.16.1", - "bevy_math 0.16.1", - "bevy_pbr 0.16.1", + "bevy_light", + "bevy_log 0.17.2", + "bevy_math 0.17.2", + "bevy_mesh", + "bevy_pbr 0.17.2", "bevy_platform", - "bevy_ptr 0.16.1", - "bevy_reflect 0.16.1", - "bevy_render 0.16.1", - "bevy_scene 0.16.1", + "bevy_ptr 0.17.2", + "bevy_reflect 0.17.2", + "bevy_render 0.17.2", + "bevy_scene 0.17.2", + "bevy_shader", "bevy_sprite", + "bevy_sprite_render", "bevy_state", - "bevy_tasks 0.16.1", + "bevy_tasks 0.17.2", "bevy_text", - "bevy_time 0.16.1", - "bevy_transform 0.16.1", + "bevy_time 0.17.2", + "bevy_transform 0.17.2", "bevy_ui", - "bevy_utils 0.16.1", - "bevy_window 0.16.1", - "bevy_winit 0.16.1", + "bevy_utils 0.17.2", + "bevy_window 0.17.2", + "bevy_winit 0.17.2", +] + +[[package]] +name = "bevy_light" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cad00ab66d1e93edb928be66606a71066f3b1cbc9f414720e290ef5361eb6237" +dependencies = [ + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_ecs 0.17.2", + "bevy_image", + "bevy_math 0.17.2", + "bevy_mesh", + "bevy_platform", + "bevy_reflect 0.17.2", + "bevy_transform 0.17.2", + "bevy_utils 0.17.2", + "tracing", ] [[package]] @@ -1668,14 +1463,15 @@ dependencies = [ [[package]] name = "bevy_log" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7a61ee8aef17a974f5ca481dcedf0c2bd52670e231d4c4bc9ddef58328865f9" +checksum = "4ae217a035714a37b779487f82edc4c7c1223f7088d7ad94054f29f524d61c51" dependencies = [ "android_log-sys", - "bevy_app 0.16.1", - "bevy_ecs 0.16.1", - "bevy_utils 0.16.1", + "bevy_app 0.17.2", + "bevy_ecs 0.17.2", + "bevy_platform", + "bevy_utils 0.17.2", "tracing", "tracing-log", "tracing-oslog", @@ -1697,15 +1493,15 @@ dependencies = [ [[package]] name = "bevy_macro_utils" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "052eeebcb8e7e072beea5031b227d9a290f8a7fbbb947573ab6ec81df0fb94be" +checksum = "17dbc3f8948da58b3c17767d20fd3cd35fe4721ed19a9a3204a6f1d6c9951bdd" dependencies = [ "parking_lot", "proc-macro2", "quote", "syn 2.0.106", - "toml_edit 0.22.27", + "toml_edit 0.23.6", ] [[package]] @@ -1724,47 +1520,48 @@ dependencies = [ [[package]] name = "bevy_math" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68553e0090fe9c3ba066c65629f636bd58e4ebd9444fdba097b91af6cd3e243f" +checksum = "f7a41e368ffa95ae2a353197d1ae3993f4d3d471444d80b65c932db667ea7b9e" dependencies = [ "approx", - "bevy_reflect 0.16.1", + "bevy_reflect 0.17.2", "derive_more", - "glam 0.29.3", + "glam 0.30.8", "itertools 0.14.0", "libm", - "rand 0.8.5", + "rand 0.9.2", "rand_distr", "serde", "smallvec", - "thiserror 2.0.16", + "thiserror 2.0.17", "variadics_please", ] [[package]] name = "bevy_mesh" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b10399c7027001edbc0406d7d0198596b1f07206c1aae715274106ba5bdcac40" +checksum = "b6255244b71153b305fddb4e6f827cb97ed51f276b6e632f5fc46538647948f6" dependencies = [ - "bevy_asset 0.16.1", - "bevy_derive 0.16.1", - "bevy_ecs 0.16.1", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", "bevy_image", - "bevy_math 0.16.1", - "bevy_mikktspace 0.16.1", + "bevy_math 0.17.2", + "bevy_mikktspace 0.17.0-dev", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_transform 0.16.1", - "bevy_utils 0.16.1", + "bevy_reflect 0.17.2", + "bevy_transform 0.17.2", "bitflags 2.9.4", "bytemuck", - "hexasphere 15.1.0", + "derive_more", + "hexasphere 16.0.0", "serde", - "thiserror 2.0.16", + "thiserror 2.0.17", "tracing", - "wgpu-types 24.0.0", + "wgpu-types 26.0.0", ] [[package]] @@ -1778,12 +1575,9 @@ dependencies = [ [[package]] name = "bevy_mikktspace" -version = "0.16.1" +version = "0.17.0-dev" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bb60c753b968a2de0fd279b76a3d19517695e771edb4c23575c7f92156315de" -dependencies = [ - "glam 0.29.3", -] +checksum = "7ef8e4b7e61dfe7719bb03c884dc270cd46a82efb40f93e9933b990c5c190c59" [[package]] name = "bevy_mod_picking" @@ -1828,11 +1622,11 @@ dependencies = [ [[package]] name = "bevy_panorbit_camera" -version = "0.26.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca6e15e297754d0bcb7665620c390c4f05665d4ac4ac91b4b5d3c66b9fe1f0e6" +checksum = "671803ee1d1797fa8b1580ff91a2a8a69f71a7adf11e02d63b8faded5e5c69f6" dependencies = [ - "bevy 0.16.1", + "bevy 0.17.2", "bevy_egui", ] @@ -1865,36 +1659,62 @@ dependencies = [ [[package]] name = "bevy_pbr" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5e0b4eb871f364a0d217f70f6c41d7fdc6f9f931fa1abbf222180c03d0ae410" -dependencies = [ - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_color 0.16.2", - "bevy_core_pipeline 0.16.1", - "bevy_derive 0.16.1", - "bevy_diagnostic 0.16.1", - "bevy_ecs 0.16.1", +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf8c76337a6ae9d73d50be168aeee974d05fdeda9129a413eaff719e3b7b5fea" +dependencies = [ + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_core_pipeline 0.17.2", + "bevy_derive 0.17.2", + "bevy_diagnostic 0.17.2", + "bevy_ecs 0.17.2", "bevy_image", - "bevy_math 0.16.1", + "bevy_light", + "bevy_math 0.17.2", + "bevy_mesh", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_render 0.16.1", - "bevy_transform 0.16.1", - "bevy_utils 0.16.1", - "bevy_window 0.16.1", + "bevy_reflect 0.17.2", + "bevy_render 0.17.2", + "bevy_shader", + "bevy_transform 0.17.2", + "bevy_utils 0.17.2", "bitflags 2.9.4", "bytemuck", "derive_more", "fixedbitset 0.5.7", "nonmax", "offset-allocator", - "radsort", "smallvec", "static_assertions", - "thiserror 2.0.16", + "thiserror 2.0.17", + "tracing", +] + +[[package]] +name = "bevy_picking" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a232a8ea4dc9b83c08226f56b868acb1ead06946a95d8b9c8cbbcc860cd8090" +dependencies = [ + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", + "bevy_input 0.17.2", + "bevy_math 0.17.2", + "bevy_mesh", + "bevy_platform", + "bevy_reflect 0.17.2", + "bevy_time 0.17.2", + "bevy_transform 0.17.2", + "bevy_window 0.17.2", + "crossbeam-channel", "tracing", + "uuid", ] [[package]] @@ -1967,19 +1787,22 @@ dependencies = [ [[package]] name = "bevy_platform" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7573dc824a1b08b4c93fdbe421c53e1e8188e9ca1dd74a414455fe571facb47" +checksum = "10cf8cda162688c95250e74cffaa1c3a04597f105d4ca35554106f107308ea57" dependencies = [ - "cfg-if", "critical-section", - "foldhash", - "getrandom 0.2.16", - "hashbrown 0.15.5", + "foldhash 0.2.0", + "futures-channel", + "getrandom 0.3.3", + "hashbrown 0.16.0", + "js-sys", "portable-atomic", "portable-atomic-util", "serde", - "spin 0.9.8", + "spin", + "wasm-bindgen", + "wasm-bindgen-futures", "web-time", ] @@ -1991,9 +1814,9 @@ checksum = "61baa1bdc1f4a7ac2c18217570a7cc04e1cd54d38456e91782f0371c79afe0a8" [[package]] name = "bevy_ptr" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df7370d0e46b60e071917711d0860721f5347bc958bf325975ae6913a5dfcf01" +checksum = "28ab4074e7b781bab84e9b0a41ede245d673d1f75646ce0db27643aedcfb3a85" [[package]] name = "bevy_reflect" @@ -2016,28 +1839,29 @@ dependencies = [ [[package]] name = "bevy_reflect" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daeb91a63a1a4df00aa58da8cc4ddbd4b9f16ab8bb647c5553eb156ce36fa8c2" +checksum = "333df3f5947b7e62728eb5c0b51d679716b16c7c5283118fed4563f13230954e" dependencies = [ "assert_type_match", "bevy_platform", - "bevy_ptr 0.16.1", - "bevy_reflect_derive 0.16.1", - "bevy_utils 0.16.1", + "bevy_ptr 0.17.2", + "bevy_reflect_derive 0.17.2", + "bevy_utils 0.17.2", "derive_more", "disqualified", "downcast-rs 2.0.2", "erased-serde", - "foldhash", - "glam 0.29.3", + "foldhash 0.2.0", + "glam 0.30.8", + "inventory", "serde", "smallvec", "smol_str", - "thiserror 2.0.16", + "thiserror 2.0.17", "uuid", "variadics_please", - "wgpu-types 24.0.0", + "wgpu-types 26.0.0", ] [[package]] @@ -2055,11 +1879,12 @@ dependencies = [ [[package]] name = "bevy_reflect_derive" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40ddadc55fe16b45faaa54ab2f9cb00548013c74812e8b018aa172387103cce6" +checksum = "0205dce9c5a4d8d041b263bcfd96e9d9d6f3d49416e12db347ab5778b3071fe1" dependencies = [ - "bevy_macro_utils 0.16.1", + "bevy_macro_utils 0.17.2", + "indexmap", "proc-macro2", "quote", "syn 2.0.106", @@ -2072,7 +1897,7 @@ version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "836cf8a513db013cbe7d55a331060088efd407e49fd5b05c8404700cd82e7619" dependencies = [ - "async-channel 2.5.0", + "async-channel", "bevy_app 0.14.2", "bevy_asset 0.14.2", "bevy_color 0.14.3", @@ -2093,10 +1918,10 @@ dependencies = [ "bevy_window 0.14.2", "bitflags 2.9.4", "bytemuck", - "codespan-reporting", + "codespan-reporting 0.11.1", "downcast-rs 1.2.1", "encase 0.8.0", - "futures-lite 2.6.1", + "futures-lite", "hexasphere 12.0.0", "image", "js-sys", @@ -2114,53 +1939,51 @@ dependencies = [ [[package]] name = "bevy_render" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef91fed1f09405769214b99ebe4390d69c1af5cdd27967deae9135c550eb1667" -dependencies = [ - "async-channel 2.5.0", - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_color 0.16.2", - "bevy_derive 0.16.1", - "bevy_diagnostic 0.16.1", - "bevy_ecs 0.16.1", - "bevy_encase_derive 0.16.1", +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70d6a5d47ebb247e4ecaaf4a3b0310b7c518728ff2362c69f4220d0d3228e17d" +dependencies = [ + "async-channel", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_derive 0.17.2", + "bevy_diagnostic 0.17.2", + "bevy_ecs 0.17.2", + "bevy_encase_derive 0.17.2", "bevy_image", - "bevy_math 0.16.1", + "bevy_math 0.17.2", "bevy_mesh", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_render_macros 0.16.1", - "bevy_tasks 0.16.1", - "bevy_time 0.16.1", - "bevy_transform 0.16.1", - "bevy_utils 0.16.1", - "bevy_window 0.16.1", + "bevy_reflect 0.17.2", + "bevy_render_macros 0.17.2", + "bevy_shader", + "bevy_tasks 0.17.2", + "bevy_time 0.17.2", + "bevy_transform 0.17.2", + "bevy_utils 0.17.2", + "bevy_window 0.17.2", "bitflags 2.9.4", "bytemuck", - "codespan-reporting", "derive_more", "downcast-rs 2.0.2", - "encase 0.10.0", + "encase 0.11.2", "fixedbitset 0.5.7", - "futures-lite 2.6.1", "image", "indexmap", "js-sys", - "naga 24.0.0", - "naga_oil 0.17.1", + "naga 26.0.0", "nonmax", "offset-allocator", "send_wrapper", - "serde", "smallvec", - "thiserror 2.0.16", + "thiserror 2.0.17", "tracing", "variadics_please", "wasm-bindgen", "web-sys", - "wgpu 24.0.5", + "wgpu 26.0.1", ] [[package]] @@ -2177,11 +2000,11 @@ dependencies = [ [[package]] name = "bevy_render_macros" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abd42cf6c875bcf38da859f8e731e119a6aff190d41dd0a1b6000ad57cf2ed3d" +checksum = "a7e8b553adf0a4f9f059c5c2dcb52d9ac09abede1c322a92b43b9f4bb11c3843" dependencies = [ - "bevy_macro_utils 0.16.1", + "bevy_macro_utils 0.17.2", "proc-macro2", "quote", "syn 2.0.106", @@ -2209,77 +2032,121 @@ dependencies = [ [[package]] name = "bevy_scene" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c52ca165200995fe8afd2a1a6c03e4ffee49198a1d4653d32240ea7f217d4ab" +checksum = "e601ffeebbdaba1193f823dbdc9fc8787a24cf83225a72fee4def5c27a18778a" dependencies = [ - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_derive 0.16.1", - "bevy_ecs 0.16.1", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_render 0.16.1", - "bevy_transform 0.16.1", - "bevy_utils 0.16.1", + "bevy_reflect 0.17.2", + "bevy_transform 0.17.2", + "bevy_utils 0.17.2", "derive_more", "serde", - "thiserror 2.0.16", + "thiserror 2.0.17", "uuid", ] +[[package]] +name = "bevy_shader" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3cef8f8e53776d286eb62bb60164f30671f07005ff407e94ec1176e9426d1477" +dependencies = [ + "bevy_asset 0.17.2", + "bevy_platform", + "bevy_reflect 0.17.2", + "naga 26.0.0", + "naga_oil 0.19.1", + "serde", + "thiserror 2.0.17", + "tracing", + "wgpu-types 26.0.0", +] + [[package]] name = "bevy_sprite" -version = "0.16.1" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74bb52fa52caa1cc8d95acf45e52efc0c72b59755c2f0801a30fdab367921db0" +dependencies = [ + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", + "bevy_image", + "bevy_math 0.17.2", + "bevy_mesh", + "bevy_reflect 0.17.2", + "bevy_text", + "bevy_transform 0.17.2", + "bevy_window 0.17.2", + "radsort", + "tracing", + "wgpu-types 26.0.0", +] + +[[package]] +name = "bevy_sprite_render" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ccae7bab2cb956fb0434004c359e432a3a1a074a6ef4eb471f1fb099f0b620b" +checksum = "31bb90a9139b04568bd30b2492ba61234092d95a7f7e3c84b55369b16d7e261b" dependencies = [ - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_color 0.16.2", - "bevy_core_pipeline 0.16.1", - "bevy_derive 0.16.1", - "bevy_ecs 0.16.1", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_core_pipeline 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", "bevy_image", - "bevy_math 0.16.1", + "bevy_math 0.17.2", + "bevy_mesh", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_render 0.16.1", - "bevy_transform 0.16.1", - "bevy_utils 0.16.1", + "bevy_reflect 0.17.2", + "bevy_render 0.17.2", + "bevy_shader", + "bevy_sprite", + "bevy_text", + "bevy_transform 0.17.2", + "bevy_utils 0.17.2", "bitflags 2.9.4", "bytemuck", "derive_more", "fixedbitset 0.5.7", "nonmax", - "radsort", "tracing", ] [[package]] name = "bevy_state" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "155d3cd97b900539008cdcaa702f88b724d94b08977b8e591a32536ce66faa8c" +checksum = "fe4e955f36cdc7b31556e4619a653dcf65d46967d90d36fb788f746c8e89257e" dependencies = [ - "bevy_app 0.16.1", - "bevy_ecs 0.16.1", + "bevy_app 0.17.2", + "bevy_ecs 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", + "bevy_reflect 0.17.2", "bevy_state_macros", - "bevy_utils 0.16.1", + "bevy_utils 0.17.2", "log", "variadics_please", ] [[package]] name = "bevy_state_macros" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2481c1304fd2a1851a0d4cb63a1ce6421ae40f3f0117cbc9882963ee4c9bb609" +checksum = "5c3e4e32b1b96585740a2b447661af7db1b9d688db5e4d96da50461cd8f5ce63" dependencies = [ - "bevy_macro_utils 0.16.1", - "proc-macro2", + "bevy_macro_utils 0.17.2", "quote", "syn 2.0.106", ] @@ -2291,60 +2158,53 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77865f310b1fc48fb05b7c4adbe76607ec01d0c14f8ab4caba4d714c86439946" dependencies = [ "async-executor", - "futures-lite 2.6.1", + "futures-lite", "wasm-bindgen-futures", ] [[package]] name = "bevy_tasks" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b674242641cab680688fc3b850243b351c1af49d4f3417a576debd6cca8dcf5" +checksum = "18839182775f30d26f0f84d9de85d25361bb593c99517a80b64ede6cbaf41adc" dependencies = [ - "async-channel 2.5.0", + "async-channel", "async-executor", "async-task", "atomic-waker", "bevy_platform", - "cfg-if", "concurrent-queue", "crossbeam-queue", "derive_more", - "futures-channel", - "futures-lite 2.6.1", + "futures-lite", "heapless", "pin-project", - "wasm-bindgen-futures", ] [[package]] name = "bevy_text" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d76c85366159f5f54110f33321c76d8429cfd8f39638f26793a305dae568b60" +checksum = "cc1b759cf2ed8992132bd541ebb9ffcfa777d2faf3596d418fb25984bc6677d8" dependencies = [ - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_color 0.16.2", - "bevy_derive 0.16.1", - "bevy_ecs 0.16.1", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_color 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", "bevy_image", - "bevy_log 0.16.1", - "bevy_math 0.16.1", + "bevy_log 0.17.2", + "bevy_math 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_render 0.16.1", - "bevy_sprite", - "bevy_transform 0.16.1", - "bevy_utils 0.16.1", - "bevy_window 0.16.1", + "bevy_reflect 0.17.2", + "bevy_utils 0.17.2", "cosmic-text", "serde", "smallvec", "sys-locale", - "thiserror 2.0.16", + "thiserror 2.0.17", "tracing", - "unicode-bidi", + "wgpu-types 26.0.0", ] [[package]] @@ -2363,14 +2223,14 @@ dependencies = [ [[package]] name = "bevy_time" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc98eb356c75be04fbbc77bb3d8ffa24c8bacd99f76111cee23d444be6ac8c9c" +checksum = "1a52edd3d30ed94074f646ba1c9914e407af9abe5b6fb7a4322c855341a536cc" dependencies = [ - "bevy_app 0.16.1", - "bevy_ecs 0.16.1", + "bevy_app 0.17.2", + "bevy_ecs 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", + "bevy_reflect 0.17.2", "crossbeam-channel", "log", "serde", @@ -2392,20 +2252,20 @@ dependencies = [ [[package]] name = "bevy_transform" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df218e440bb9a19058e1b80a68a031c887bcf7bd3a145b55f361359a2fa3100d" +checksum = "7995ae14430b1a268d1e4f098ab770e8af880d2df5e4e37161b47d8d9e9625bd" dependencies = [ - "bevy_app 0.16.1", - "bevy_ecs 0.16.1", - "bevy_log 0.16.1", - "bevy_math 0.16.1", - "bevy_reflect 0.16.1", - "bevy_tasks 0.16.1", - "bevy_utils 0.16.1", + "bevy_app 0.17.2", + "bevy_ecs 0.17.2", + "bevy_log 0.17.2", + "bevy_math 0.17.2", + "bevy_reflect 0.17.2", + "bevy_tasks 0.17.2", + "bevy_utils 0.17.2", "derive_more", "serde", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] @@ -2421,36 +2281,64 @@ dependencies = [ [[package]] name = "bevy_ui" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea4a4d2ba51865bc3039af29a26b4f52c48b54cc758369f52004caf4b6f03770" -dependencies = [ - "accesskit 0.18.0", - "bevy_a11y 0.16.1", - "bevy_app 0.16.1", - "bevy_asset 0.16.1", - "bevy_color 0.16.2", - "bevy_core_pipeline 0.16.1", - "bevy_derive 0.16.1", - "bevy_ecs 0.16.1", +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc999815a67a6b2fc911df9eea27af703ff656aed6fd31d8606dced701f07fd6" +dependencies = [ + "accesskit 0.21.1", + "bevy_a11y 0.17.2", + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", "bevy_image", - "bevy_input 0.16.1", - "bevy_math 0.16.1", + "bevy_input 0.17.2", + "bevy_math 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_render 0.16.1", + "bevy_reflect 0.17.2", "bevy_sprite", "bevy_text", - "bevy_transform 0.16.1", - "bevy_utils 0.16.1", - "bevy_window 0.16.1", - "bytemuck", + "bevy_transform 0.17.2", + "bevy_utils 0.17.2", + "bevy_window 0.17.2", "derive_more", - "nonmax", "serde", "smallvec", "taffy", - "thiserror 2.0.16", + "thiserror 2.0.17", + "tracing", +] + +[[package]] +name = "bevy_ui_render" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adae9770089e04339d003afe7abe7153fe71600d81c828f964c7ac329b04d5b9" +dependencies = [ + "bevy_app 0.17.2", + "bevy_asset 0.17.2", + "bevy_camera", + "bevy_color 0.17.2", + "bevy_core_pipeline 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", + "bevy_image", + "bevy_math 0.17.2", + "bevy_mesh", + "bevy_platform", + "bevy_reflect 0.17.2", + "bevy_render 0.17.2", + "bevy_shader", + "bevy_sprite", + "bevy_sprite_render", + "bevy_text", + "bevy_transform 0.17.2", + "bevy_ui", + "bevy_utils 0.17.2", + "bytemuck", + "derive_more", "tracing", ] @@ -2471,11 +2359,12 @@ dependencies = [ [[package]] name = "bevy_utils" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94f7a8905a125d2017e8561beefb7f2f5e67e93ff6324f072ad87c5fd6ec3b99" +checksum = "080254083c74d5f6eb0649d7cd6181bda277e8fe3c509ec68990a5d56ec23f24" dependencies = [ "bevy_platform", + "disqualified", "thread_local", ] @@ -2490,21 +2379,6 @@ dependencies = [ "syn 2.0.106", ] -[[package]] -name = "bevy_web_asset" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f932c86d0cc85517c4fd92a1210750cdb349c59b8138a892415906bf8bac0718" -dependencies = [ - "bevy 0.16.1", - "js-sys", - "pin-project", - "surf", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - [[package]] name = "bevy_window" version = "0.14.2" @@ -2523,22 +2397,19 @@ dependencies = [ [[package]] name = "bevy_window" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df7e8ad0c17c3cc23ff5566ae2905c255e6986037fb041f74c446216f5c38431" +checksum = "f582478606d6b6e5c53befbe7612f038fdfb73f8a27f7aae644406637347acd4" dependencies = [ - "android-activity", - "bevy_app 0.16.1", - "bevy_ecs 0.16.1", - "bevy_input 0.16.1", - "bevy_math 0.16.1", + "bevy_app 0.17.2", + "bevy_ecs 0.17.2", + "bevy_input 0.17.2", + "bevy_math 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_utils 0.16.1", + "bevy_reflect 0.17.2", "log", "raw-window-handle", "serde", - "smol_str", ] [[package]] @@ -2571,30 +2442,27 @@ dependencies = [ [[package]] name = "bevy_winit" -version = "0.16.1" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a5e7f00c6b3b6823df5ec2a5e9067273607208919bc8c211773ebb9643c87f0" +checksum = "eb0ccf2faca4b4c156a26284d1bbf90a8cac8568a273adcd6c1a270c1342f3df" dependencies = [ - "accesskit 0.18.0", - "accesskit_winit 0.25.0", + "accesskit 0.21.1", + "accesskit_winit 0.29.1", "approx", - "bevy_a11y 0.16.1", - "bevy_app 0.16.1", - "bevy_derive 0.16.1", - "bevy_ecs 0.16.1", - "bevy_input 0.16.1", + "bevy_a11y 0.17.2", + "bevy_android", + "bevy_app 0.17.2", + "bevy_derive 0.17.2", + "bevy_ecs 0.17.2", + "bevy_input 0.17.2", "bevy_input_focus", - "bevy_log 0.16.1", - "bevy_math 0.16.1", + "bevy_log 0.17.2", + "bevy_math 0.17.2", "bevy_platform", - "bevy_reflect 0.16.1", - "bevy_tasks 0.16.1", - "bevy_utils 0.16.1", - "bevy_window 0.16.1", + "bevy_reflect 0.17.2", + "bevy_tasks 0.17.2", + "bevy_window 0.17.2", "cfg-if", - "crossbeam-channel", - "raw-window-handle", - "serde", "tracing", "wasm-bindgen", "web-sys", @@ -2611,26 +2479,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bindgen" -version = "0.70.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" -dependencies = [ - "bitflags 2.9.4", - "cexpr", - "clang-sys", - "itertools 0.13.0", - "log", - "prettyplease", - "proc-macro2", - "quote", - "regex", - "rustc-hash", - "shlex", - "syn 2.0.106", -] - [[package]] name = "bit-set" version = "0.5.3" @@ -2661,12 +2509,6 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" -[[package]] -name = "bit_field" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e4b40c7323adcfc0a41c4b88143ed58346ff65a288fc144329c5c45e05d70c6" - [[package]] name = "bitflags" version = "1.3.2" @@ -2679,15 +2521,10 @@ version = "2.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" dependencies = [ + "bytemuck", "serde", ] -[[package]] -name = "bitstream-io" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6099cdc01846bc367c4e7dd630dc5966dccf36b652fae7a74e17b640411a91b2" - [[package]] name = "bitvec" version = "1.0.1" @@ -2707,7 +2544,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" dependencies = [ "arrayref", - "arrayvec 0.7.6", + "arrayvec", "cc", "cfg-if", "constant_time_eq", @@ -2719,15 +2556,6 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" -[[package]] -name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "generic-array", -] - [[package]] name = "block-buffer" version = "0.10.4" @@ -2752,10 +2580,10 @@ version = "1.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e83f8d02be6967315521be875afa792a316e28d57b5a2d401897e2a7921b7f21" dependencies = [ - "async-channel 2.5.0", + "async-channel", "async-task", "futures-io", - "futures-lite 2.6.1", + "futures-lite", "piper", ] @@ -2776,17 +2604,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdd1d3c0c2f5833f22386f252fe8ed005c7f59fdcddeef025c01b4c3b9fd9ac3" dependencies = [ "once_cell", - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", "syn 2.0.106", ] [[package]] -name = "built" -version = "0.7.7" +name = "bstr" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56ed6191a7e78c36abdb16ab65341eefd73d64d303fffccdbb00d51e4205967b" +checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" +dependencies = [ + "memchr", + "regex-automata", + "serde", +] [[package]] name = "bumpalo" @@ -2835,18 +2668,18 @@ checksum = "175812e0be2bccb6abe50bb8d566126198344f707e304f45c648fd8f2cc0365e" [[package]] name = "bytemuck" -version = "1.23.2" +version = "1.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3995eaeebcdf32f91f980d360f78732ddc061097ab4e39991ae7a6ace9194677" +checksum = "1fbdf580320f38b612e485521afda1ee26d10cc9884efaaa750d383e13e3c5f4" dependencies = [ "bytemuck_derive", ] [[package]] name = "bytemuck_derive" -version = "1.10.1" +version = "1.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f154e572231cb6ba2bd1176980827e3d5dc04cc183a75dea38109fbdd672d29" +checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" dependencies = [ "proc-macro2", "quote", @@ -2879,29 +2712,17 @@ checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec" dependencies = [ "bitflags 2.9.4", "log", - "polling 3.11.0", + "polling", "rustix 0.38.44", "slab", "thiserror 1.0.69", ] -[[package]] -name = "calloop-wayland-source" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95a66a987056935f7efce4ab5668920b5d0dac4a7c99991a67395f13702ddd20" -dependencies = [ - "calloop", - "rustix 0.38.44", - "wayland-backend", - "wayland-client", -] - [[package]] name = "camino" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1de8bc0aa9e9385ceb3bf0c152e3a9b9544f6c4a912c8ae504e80c1f0368603" +checksum = "276a59bf2b2c967788139340c9f0c5b12d7fd6630315c15c217e559de85d2609" dependencies = [ "serde_core", ] @@ -2923,7 +2744,7 @@ checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" dependencies = [ "camino", "cargo-platform", - "semver 1.0.27", + "semver", "serde", "serde_json", ] @@ -2936,9 +2757,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.2.37" +version = "1.2.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65193589c6404eb80b450d618eaf9a2cafaaafd57ecce47370519ef674a7bd44" +checksum = "e1d05d92f4b1fd76aad469d46cdd858ca761576082cd37df81416691e50199fb" dependencies = [ "find-msvc-tools", "jobserver", @@ -2952,25 +2773,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" -[[package]] -name = "cexpr" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" -dependencies = [ - "nom 7.1.3", -] - -[[package]] -name = "cfg-expr" -version = "0.15.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" -dependencies = [ - "smallvec", - "target-lexicon", -] - [[package]] name = "cfg-if" version = "1.0.3" @@ -3016,31 +2818,11 @@ dependencies = [ "half", ] -[[package]] -name = "cipher" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801" -dependencies = [ - "generic-array", -] - -[[package]] -name = "clang-sys" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" -dependencies = [ - "glob", - "libc", - "libloading 0.8.8", -] - [[package]] name = "clap" -version = "4.5.47" +version = "4.5.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7eac00902d9d136acd712710d71823fb8ac8004ca445a89e73a41d45aa712931" +checksum = "e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae" dependencies = [ "clap_builder", "clap_derive", @@ -3048,9 +2830,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.47" +version = "4.5.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ad9bbf750e73b5884fb8a211a9424a1906c1e156724260fdae972f31d70e1d6" +checksum = "c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9" dependencies = [ "anstream", "anstyle", @@ -3092,14 +2874,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" dependencies = [ "termcolor", - "unicode-width", + "unicode-width 0.1.14", ] [[package]] -name = "color_quant" -version = "1.1.0" +name = "codespan-reporting" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" +checksum = "fe6d2e5af09e8c8ad56c969f2157a3d4238cebc7c55f0a517728c38f7b200f81" +dependencies = [ + "serde", + "termcolor", + "unicode-width 0.2.1", +] [[package]] name = "colorchoice" @@ -3158,17 +2945,6 @@ dependencies = [ "portable-atomic", ] -[[package]] -name = "config" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b076e143e1d9538dde65da30f8481c2a6c44040edb8e02b9bf1351edb92ce3" -dependencies = [ - "lazy_static", - "nom 5.1.3", - "serde", -] - [[package]] name = "console_error_panic_hook" version = "0.1.7" @@ -3185,12 +2961,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" -[[package]] -name = "const_fn" -version = "0.4.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f8a2ca5ac02d09563609681103aada9e1777d54fc57a5acd7a41404f9c93b6e" - [[package]] name = "const_panic" version = "0.2.15" @@ -3231,27 +3001,20 @@ dependencies = [ ] [[package]] -name = "cookie" -version = "0.14.4" +name = "core-foundation" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03a5d7b21829bc7b4bf4754a978a241ae54ea55a40f92bb20216e54096f4b951" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" dependencies = [ - "aes-gcm", - "base64 0.13.1", - "hkdf", - "hmac", - "percent-encoding", - "rand 0.8.5", - "sha2", - "time", - "version_check", + "core-foundation-sys", + "libc", ] [[package]] name = "core-foundation" -version = "0.9.4" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" dependencies = [ "core-foundation-sys", "libc", @@ -3270,8 +3033,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081" dependencies = [ "bitflags 1.3.2", - "core-foundation", - "core-graphics-types", + "core-foundation 0.9.4", + "core-graphics-types 0.1.3", "foreign-types", "libc", ] @@ -3283,15 +3046,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" dependencies = [ "bitflags 1.3.2", - "core-foundation", + "core-foundation 0.9.4", + "libc", +] + +[[package]] +name = "core-graphics-types" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d44a101f213f6c4cdc1853d4b78aef6db6bdfa3468798cc1d9912f4735013eb" +dependencies = [ + "bitflags 2.9.4", + "core-foundation 0.10.1", "libc", ] [[package]] name = "cosmic-text" -version = "0.13.2" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e418dd4f5128c3e93eab12246391c54a20c496811131f85754dc8152ee207892" +checksum = "da46a9d5a8905cc538a4a5bceb6a4510de7a51049c5588c0114efce102bcbbe8" dependencies = [ "bitflags 2.9.4", "fontdb", @@ -3319,12 +3093,6 @@ dependencies = [ "libc", ] -[[package]] -name = "cpuid-bool" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcb25d077389e53838a8158c8e99174c5a9d902dee4904320db714f3c653ffba" - [[package]] name = "crc32fast" version = "1.5.0" @@ -3432,25 +3200,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "crypto-mac" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bff07008ec701e8028e2ceb8f83f0e4274ee62bd2dbdc4fefff2e9a91824081a" -dependencies = [ - "generic-array", - "subtle", -] - -[[package]] -name = "ctr" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb4a30d54f7443bf3d6191dcd486aca19e67cb3c49fa7a06a319966346707e7f" -dependencies = [ - "cipher", -] - [[package]] name = "ctrlc" version = "3.5.0" @@ -3459,7 +3208,7 @@ checksum = "881c5d0a13b2f1498e2306e82cbada78390e152d4b1378fb28a84f4dcd0dc4f3" dependencies = [ "dispatch", "nix", - "windows-sys 0.61.0", + "windows-sys 0.61.1", ] [[package]] @@ -3475,57 +3224,30 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b28bfe653d79bd16c77f659305b195b82bb5ce0c0eb2a4846b82ddbd77586813" dependencies = [ "bitflags 2.9.4", - "libloading 0.8.8", + "libloading 0.8.9", "winapi", ] [[package]] -name = "dashmap" -version = "5.5.3" +name = "data-encoding" +version = "2.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" + +[[package]] +name = "derive_more" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" -dependencies = [ - "cfg-if", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core", -] - -[[package]] -name = "data-encoding" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" - -[[package]] -name = "deadpool" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d126179d86aee4556e54f5f3c6bf6d9884e7cc52cef82f77ee6f90a7747616d" -dependencies = [ - "async-trait", - "config", - "crossbeam-queue", - "num_cpus", - "serde", - "tokio", -] - -[[package]] -name = "derive_more" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" dependencies = [ "derive_more-impl", ] [[package]] name = "derive_more-impl" -version = "1.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ "proc-macro2", "quote", @@ -3533,31 +3255,16 @@ dependencies = [ "unicode-xid", ] -[[package]] -name = "digest" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" -dependencies = [ - "generic-array", -] - [[package]] name = "digest" version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer 0.10.4", + "block-buffer", "crypto-common", ] -[[package]] -name = "discard" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" - [[package]] name = "dispatch" version = "0.2.0" @@ -3571,7 +3278,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "89a09f22a6c6069a18470eb92d2298acf25463f14256d24778e1230d789a2aec" dependencies = [ "bitflags 2.9.4", - "objc2 0.6.2", + "objc2 0.6.3", ] [[package]] @@ -3597,7 +3304,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" dependencies = [ - "libloading 0.8.8", + "libloading 0.8.9", ] [[package]] @@ -3629,9 +3336,9 @@ checksum = "d8b14ccef22fc6f5a8f4d7d768562a182c04ce9a3b3157b91390b52ddfdf1a76" [[package]] name = "ecolor" -version = "0.31.1" +version = "0.32.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc4feb366740ded31a004a0e4452fbf84e80ef432ecf8314c485210229672fd1" +checksum = "94bdf37f8d5bd9aa7f753573fdda9cf7343afa73dd28d7bfe9593bd9798fc07e" dependencies = [ "bytemuck", "emath", @@ -3639,9 +3346,9 @@ dependencies = [ [[package]] name = "egui" -version = "0.31.1" +version = "0.32.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25dd34cec49ab55d85ebf70139cb1ccd29c977ef6b6ba4fe85489d6877ee9ef3" +checksum = "5d5d0306cd61ca75e29682926d71f2390160247f135965242e904a636f51c0dc" dependencies = [ "ahash 0.8.12", "bitflags 2.9.4", @@ -3649,6 +3356,8 @@ dependencies = [ "epaint", "nohash-hasher", "profiling", + "smallvec", + "unicode-segmentation", ] [[package]] @@ -3659,9 +3368,9 @@ checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" [[package]] name = "emath" -version = "0.31.1" +version = "0.32.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e4cadcff7a5353ba72b7fea76bf2122b5ebdbc68e8155aa56dfdea90083fe1b" +checksum = "45fd7bc25f769a3c198fe1cf183124bf4de3bd62ef7b4f1eaf6b08711a3af8db" dependencies = [ "bytemuck", ] @@ -3680,14 +3389,14 @@ dependencies = [ [[package]] name = "encase" -version = "0.10.0" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0a05902cf601ed11d564128448097b98ebe3c6574bd7b6a653a3d56d54aa020" +checksum = "02ba239319a4f60905966390f5e52799d868103a533bb7e27822792332504ddd" dependencies = [ "const_panic", - "encase_derive 0.10.0", - "glam 0.29.3", - "thiserror 1.0.69", + "encase_derive 0.11.2", + "glam 0.30.8", + "thiserror 2.0.17", ] [[package]] @@ -3701,11 +3410,11 @@ dependencies = [ [[package]] name = "encase_derive" -version = "0.10.0" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "181d475b694e2dd56ae919ce7699d344d1fd259292d590c723a50d1189a2ea85" +checksum = "5223d6c647f09870553224f6e37261fe5567bc5a4f4cf13ed337476e79990f2f" dependencies = [ - "encase_derive_impl 0.10.0", + "encase_derive_impl 0.11.2", ] [[package]] @@ -3721,9 +3430,9 @@ dependencies = [ [[package]] name = "encase_derive_impl" -version = "0.10.0" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f97b51c5cc57ef7c5f7a0c57c250251c49ee4c28f819f87ac32f4aceabc36792" +checksum = "1796db3d892515842ca2dfb11124c4bb4a9e58d9f2c5c1072e5bca1b2334507b" dependencies = [ "proc-macro2", "quote", @@ -3743,9 +3452,9 @@ dependencies = [ [[package]] name = "epaint" -version = "0.31.1" +version = "0.32.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41fcc0f5a7c613afd2dee5e4b30c3e6acafb8ad6f0edb06068811f708a67c562" +checksum = "63adcea970b7a13094fe97a36ab9307c35a750f9e24bf00bb7ef3de573e0fddb" dependencies = [ "ab_glyph", "ahash 0.8.12", @@ -3760,29 +3469,9 @@ dependencies = [ [[package]] name = "epaint_default_fonts" -version = "0.31.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc7e7a64c02cf7a5b51e745a9e45f60660a286f151c238b9d397b3e923f5082f" - -[[package]] -name = "equator" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4711b213838dfee0117e3be6ac926007d7f433d7bbe33595975d4190cb07e6fc" -dependencies = [ - "equator-macro", -] - -[[package]] -name = "equator-macro" -version = "0.4.2" +version = "0.32.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44f23cf4b44bfce11a86ace86f8a73ffdec849c9fd00a386a53d278bd9e81fb3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.106", -] +checksum = "1537accc50c9cab5a272c39300bdd0dd5dca210f6e5e8d70be048df9596e7ca2" [[package]] name = "equivalent" @@ -3808,7 +3497,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.61.0", + "windows-sys 0.61.1", ] [[package]] @@ -3862,30 +3551,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "exr" -version = "1.73.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83197f59927b46c04a183a619b7c29df34e63e63c7869320862268c0ef687e0" -dependencies = [ - "bit_field", - "half", - "lebe", - "miniz_oxide", - "rayon-core", - "smallvec", - "zune-inflate", -] - -[[package]] -name = "fastrand" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" -dependencies = [ - "instant", -] - [[package]] name = "fastrand" version = "2.3.0" @@ -3923,9 +3588,9 @@ dependencies = [ [[package]] name = "find-msvc-tools" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fd99930f64d146689264c637b5af2f0233a933bef0d8570e2526bf9e083192d" +checksum = "0399f9d26e5191ce32c498bebd31e7a3ceabc2745f0ac54af3f335126c3f24b3" [[package]] name = "fixedbitset" @@ -3941,9 +3606,9 @@ checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" [[package]] name = "flate2" -version = "1.1.2" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" +checksum = "dc5a4e564e38c699f2880d3fda590bedc2e69f3f84cd48b457bd892ce61d0aa9" dependencies = [ "crc32fast", "miniz_oxide", @@ -3951,9 +3616,9 @@ dependencies = [ [[package]] name = "flexbuffers" -version = "25.2.10" +version = "25.9.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "935627e7bc8f083035d9faad09ffaed9128f73fb1f74a8798f115749c43378e8" +checksum = "0e6701cb4a12d88a63f83ac41a11aa61286b5a678445a1a5ab9bc8e38654910a" dependencies = [ "bitflags 1.3.2", "byteorder", @@ -3962,17 +3627,29 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + [[package]] name = "foldhash" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + [[package]] name = "font-types" -version = "0.9.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02a596f5713680923a2080d86de50fe472fb290693cf0f701187a1c8b36996b7" +checksum = "511e2c18a516c666d27867d2f9821f76e7d591f762e9fc41dd6cc5c90fe54b0b" dependencies = [ "bytemuck", ] @@ -4101,28 +3778,13 @@ version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" -[[package]] -name = "futures-lite" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" -dependencies = [ - "fastrand 1.9.0", - "futures-core", - "futures-io", - "memchr", - "parking", - "pin-project-lite", - "waker-fn", -] - [[package]] name = "futures-lite" version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f78e10609fe0e0b3f4157ffab1876319b5b0db102a2c60dc4626306dc46b44ad" dependencies = [ - "fastrand 2.3.0", + "fastrand", "futures-core", "futures-io", "parking", @@ -4199,17 +3861,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "getrandom" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" -dependencies = [ - "cfg-if", - "libc", - "wasi 0.9.0+wasi-snapshot-preview1", -] - [[package]] name = "getrandom" version = "0.2.16" @@ -4230,37 +3881,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" dependencies = [ "cfg-if", + "js-sys", "libc", "r-efi", "wasi 0.14.7+wasi-0.2.4", + "wasm-bindgen", ] -[[package]] -name = "ghash" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97304e4cd182c3846f7575ced3890c53012ce534ad9114046b0a9e00bb30a375" -dependencies = [ - "opaque-debug", - "polyval", -] - -[[package]] -name = "gif" -version = "0.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae047235e33e2829703574b54fdec96bfbad892062d97fed2f76022287de61b" -dependencies = [ - "color_quant", - "weezl", -] - -[[package]] -name = "gimli" -version = "0.31.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" - [[package]] name = "gl_generator" version = "0.14.0" @@ -4285,14 +3912,14 @@ dependencies = [ [[package]] name = "glam" -version = "0.29.3" +version = "0.30.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8babf46d4c1c9d92deac9f7be466f76dfc4482b6452fc5024b5e8daf6ffeb3ee" +checksum = "e12d847aeb25f41be4c0ec9587d624e9cd631bc007a8fd7ce3f5851e064c6460" dependencies = [ "bytemuck", "libm", - "rand 0.8.5", - "serde", + "rand 0.9.2", + "serde_core", ] [[package]] @@ -4301,18 +3928,6 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" -[[package]] -name = "gloo-timers" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbb143cf96099802033e0d4f4963b19fd2e0b728bcf076cd9cf7f6634f092994" -dependencies = [ - "futures-channel", - "futures-core", - "js-sys", - "wasm-bindgen", -] - [[package]] name = "glow" version = "0.13.1" @@ -4443,6 +4058,7 @@ checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" dependencies = [ "cfg-if", "crunchy", + "num-traits", "serde", ] @@ -4480,9 +4096,17 @@ name = "hashbrown" version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" +dependencies = [ + "foldhash 0.1.5", +] + +[[package]] +name = "hashbrown" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" dependencies = [ "equivalent", - "foldhash", "serde", ] @@ -4495,7 +4119,7 @@ dependencies = [ "bitflags 2.9.4", "com", "libc", - "libloading 0.8.8", + "libloading 0.8.9", "thiserror 1.0.69", "widestring", "winapi", @@ -4518,12 +4142,6 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" - [[package]] name = "hermit-abi" version = "0.5.2" @@ -4542,12 +4160,12 @@ dependencies = [ [[package]] name = "hexasphere" -version = "15.1.0" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9c9e718d32b6e6b2b32354e1b0367025efdd0b11d6a740b905ddf5db1074679" +checksum = "29a164ceff4500f2a72b1d21beaa8aa8ad83aec2b641844c659b190cb3ea2e0b" dependencies = [ "constgebra", - "glam 0.29.3", + "glam 0.30.8", "tinyvec", ] @@ -4558,64 +4176,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" [[package]] -name = "hkdf" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51ab2f639c231793c5f6114bdb9bbe50a7dbbfcd7c7c6bd8475dec2d991e964f" -dependencies = [ - "digest 0.9.0", - "hmac", -] - -[[package]] -name = "hmac" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1441c6b1e930e2817404b5046f1f989899143a12bf92de603b69f4e0aee1e15" -dependencies = [ - "crypto-mac", - "digest 0.9.0", -] - -[[package]] -name = "http-client" -version = "6.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1947510dc91e2bf586ea5ffb412caad7673264e14bb39fb9078da114a94ce1a5" -dependencies = [ - "async-h1", - "async-std", - "async-tls", - "async-trait", - "cfg-if", - "dashmap", - "deadpool", - "futures", - "http-types", - "log", - "rustls", -] - -[[package]] -name = "http-types" -version = "2.12.0" +name = "http" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e9b187a72d63adbfba487f48095306ac823049cb504ee195541e91c7775f5ad" +checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" dependencies = [ - "anyhow", - "async-channel 1.9.0", - "async-std", - "base64 0.13.1", - "cookie", - "futures-lite 1.13.0", - "infer", - "pin-project-lite", - "rand 0.7.3", - "serde", - "serde_json", - "serde_qs", - "serde_urlencoded", - "url", + "bytes", + "fnv", + "itoa", ] [[package]] @@ -4739,105 +4307,40 @@ checksum = "529feb3e6769d234375c4cf1ee2ce713682b8e76538cb13f9fc23e1400a591e7" dependencies = [ "bytemuck", "byteorder-lite", - "color_quant", - "exr", - "gif", - "image-webp", "moxcms", "num-traits", "png", - "qoi", - "ravif", - "rayon", - "rgb", "tiff", - "zune-core", - "zune-jpeg", -] - -[[package]] -name = "image-webp" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525e9ff3e1a4be2fbea1fdf0e98686a6d98b4d8f937e1bf7402245af1909e8c3" -dependencies = [ - "byteorder-lite", - "quick-error", ] -[[package]] -name = "imgref" -version = "1.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0263a3d970d5c054ed9312c0057b4f3bde9c0b33836d3637361d4a9e6e7a408" - [[package]] name = "immutable-chunkmap" version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a3e98b1520e49e252237edc238a39869da9f3241f2ec19dc788c1d24694d1e4" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", ] [[package]] name = "indexmap" -version = "2.11.3" +version = "2.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92119844f513ffa41556430369ab02c295a3578af21cf945caa3e9e0c2481ac3" +checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" dependencies = [ "equivalent", - "hashbrown 0.15.5", + "hashbrown 0.16.0", "serde", "serde_core", ] [[package]] -name = "infer" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64e9829a50b42bb782c1df523f78d332fe371b10c661e78b7a3c34b0198e9fac" - -[[package]] -name = "instant" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "interpolate_name" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.106", -] - -[[package]] -name = "io-lifetimes" -version = "1.0.11" +name = "inventory" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" +checksum = "bc61209c082fbeb19919bee74b176221b27223e27b65d781eb91af24eb1fb46e" dependencies = [ - "hermit-abi 0.3.9", - "libc", - "windows-sys 0.48.0", -] - -[[package]] -name = "io-uring" -version = "0.7.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b" -dependencies = [ - "bitflags 2.9.4", - "cfg-if", - "libc", + "rustversion", ] [[package]] @@ -4855,15 +4358,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - [[package]] name = "itertools" version = "0.13.0" @@ -4922,9 +4416,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.78" +version = "0.3.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c0b063578492ceec17683ef2f8c5e89121fbd0b172cbc280635ab7567db2738" +checksum = "ec48937a97411dcb524a265206ccd4c90bb711fca92b2792c407f268825b9305" dependencies = [ "once_cell", "wasm-bindgen", @@ -4937,7 +4431,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "10cba89e4275e55bed515724fd6d7888861c1afb9e3a1ef2c4b001b1894b41c7" dependencies = [ "num-traits", - "ordered-float 5.0.0", + "ordered-float 5.1.0", "paste", "typenum", ] @@ -4949,7 +4443,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76" dependencies = [ "libc", - "libloading 0.8.8", + "libloading 0.8.9", "pkg-config", ] @@ -4959,15 +4453,6 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" -[[package]] -name = "kv-log-macro" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f" -dependencies = [ - "log", -] - [[package]] name = "lazy_static" version = "1.5.0" @@ -4975,58 +4460,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] -name = "lebe" -version = "0.5.3" +name = "libc" +version = "0.2.176" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a79a3332a6609480d7d0c9eab957bca6b455b91bb84e66d19f5ff66294b85b8" +checksum = "58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174" [[package]] -name = "lexical-core" -version = "0.7.6" +name = "libloading" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" dependencies = [ - "arrayvec 0.5.2", - "bitflags 1.3.2", "cfg-if", - "ryu", - "static_assertions", + "winapi", ] [[package]] -name = "libc" -version = "0.2.175" +name = "libloading" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" - -[[package]] -name = "libfuzzer-sys" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5037190e1f70cbeef565bd267599242926f724d3b8a9f510fd7e0b540cfa4404" -dependencies = [ - "arbitrary", - "cc", -] - -[[package]] -name = "libloading" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - -[[package]] -name = "libloading" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667" +checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" dependencies = [ "cfg-if", - "windows-targets 0.53.3", + "windows-link 0.2.0", ] [[package]] @@ -5043,7 +4499,7 @@ checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" dependencies = [ "bitflags 2.9.4", "libc", - "redox_syscall 0.5.17", + "redox_syscall 0.5.18", ] [[package]] @@ -5052,12 +4508,6 @@ version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" -[[package]] -name = "linux-raw-sys" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" - [[package]] name = "linux-raw-sys" version = "0.4.15" @@ -5084,11 +4534,10 @@ checksum = "f5e54036fe321fd421e10d732f155734c4e4afd610dd556d9a82833ab3ee0bed" [[package]] name = "lock_api" -version = "0.4.13" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765" +checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" dependencies = [ - "autocfg", "scopeguard", ] @@ -5097,18 +4546,6 @@ name = "log" version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" -dependencies = [ - "value-bag", -] - -[[package]] -name = "loop9" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fae87c125b03c1d2c0150c90365d7d6bcc53fb73a9acaef207d2d065860f062" -dependencies = [ - "imgref", -] [[package]] name = "malloc_buf" @@ -5128,21 +4565,11 @@ dependencies = [ "regex-automata", ] -[[package]] -name = "maybe-rayon" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ea1f30cedd69f0a2954655f7188c6a834246d2bcf1e315e2ac40c4b24dc9519" -dependencies = [ - "cfg-if", - "rayon", -] - [[package]] name = "memchr" -version = "2.7.5" +version = "2.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" +checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" [[package]] name = "memmap2" @@ -5161,7 +4588,7 @@ checksum = "5637e166ea14be6063a3f8ba5ccb9a4159df7d8f6d61c02fc3d480b1f90dcfcb" dependencies = [ "bitflags 2.9.4", "block", - "core-graphics-types", + "core-graphics-types 0.1.3", "foreign-types", "log", "objc", @@ -5176,7 +4603,7 @@ checksum = "f569fb946490b5743ad69813cb19629130ce9374034abe31614a36402d18f99e" dependencies = [ "bitflags 2.9.4", "block", - "core-graphics-types", + "core-graphics-types 0.1.3", "foreign-types", "log", "objc", @@ -5184,27 +4611,20 @@ dependencies = [ ] [[package]] -name = "mime" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" - -[[package]] -name = "mime_guess" -version = "2.0.5" +name = "metal" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e" +checksum = "00c15a6f673ff72ddcc22394663290f870fb224c1bfce55734a75c414150e605" dependencies = [ - "mime", - "unicase", + "bitflags 2.9.4", + "block", + "core-graphics-types 0.2.0", + "foreign-types", + "log", + "objc", + "paste", ] -[[package]] -name = "minimal-lexical" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" - [[package]] name = "miniz_oxide" version = "0.8.9" @@ -5215,22 +4635,11 @@ dependencies = [ "simd-adler32", ] -[[package]] -name = "mio" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c" -dependencies = [ - "libc", - "wasi 0.11.1+wasi-snapshot-preview1", - "windows-sys 0.59.0", -] - [[package]] name = "moxcms" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddd32fa8935aeadb8a8a6b6b351e40225570a37c43de67690383d87ef170cd08" +checksum = "1cc7d85f3d741164e8972ad355e26ac6e51b20fcae5f911c7da8f2d8bbbb3f33" dependencies = [ "num-traits", "pxfm", @@ -5242,10 +4651,10 @@ version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e536ae46fcab0876853bd4a632ede5df4b1c2527a58f6c5a4150fe86be858231" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "bit-set 0.5.3", "bitflags 2.9.4", - "codespan-reporting", + "codespan-reporting 0.11.1", "hexf-parse", "indexmap", "log", @@ -5264,23 +4673,49 @@ version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e380993072e52eef724eddfcde0ed013b0c023c3f0417336ed041aa9f076994e" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "bit-set 0.8.0", "bitflags 2.9.4", "cfg_aliases 0.2.1", - "codespan-reporting", + "codespan-reporting 0.11.1", "hexf-parse", "indexmap", "log", - "pp-rs", "rustc-hash", "spirv", "strum", "termcolor", - "thiserror 2.0.16", + "thiserror 2.0.17", "unicode-xid", ] +[[package]] +name = "naga" +version = "26.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "916cbc7cb27db60be930a4e2da243cf4bc39569195f22fd8ee419cd31d5b662c" +dependencies = [ + "arrayvec", + "bit-set 0.8.0", + "bitflags 2.9.4", + "cfg-if", + "cfg_aliases 0.2.1", + "codespan-reporting 0.12.0", + "half", + "hashbrown 0.15.5", + "hexf-parse", + "indexmap", + "libm", + "log", + "num-traits", + "once_cell", + "pp-rs", + "rustc-hash", + "spirv", + "thiserror 2.0.17", + "unicode-ident", +] + [[package]] name = "naga_oil" version = "0.14.0" @@ -5288,7 +4723,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "275d9720a7338eedac966141089232514c84d76a246a58ef501af88c5edf402f" dependencies = [ "bit-set 0.5.3", - "codespan-reporting", + "codespan-reporting 0.11.1", "data-encoding", "indexmap", "naga 0.20.0", @@ -5303,20 +4738,17 @@ dependencies = [ [[package]] name = "naga_oil" -version = "0.17.1" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2464f7395decfd16bb4c33fb0cb3b2c645cc60d051bc7fb652d3720bfb20f18" +checksum = "1b586d3cf5c9b7e13fe2af6e114406ff70773fd80881960378933b63e76f37dd" dependencies = [ - "bit-set 0.5.3", - "codespan-reporting", + "codespan-reporting 0.12.0", "data-encoding", "indexmap", - "naga 24.0.0", - "once_cell", + "naga 26.0.0", "regex", - "regex-syntax", "rustc-hash", - "thiserror 1.0.69", + "thiserror 2.0.17", "tracing", "unicode-ident", ] @@ -5360,12 +4792,6 @@ dependencies = [ "jni-sys", ] -[[package]] -name = "new_debug_unreachable" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" - [[package]] name = "nix" version = "0.30.1" @@ -5395,27 +4821,6 @@ dependencies = [ "rand_xorshift", ] -[[package]] -name = "nom" -version = "5.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08959a387a676302eebf4ddbcbc611da04285579f76f88ee0506c63b1a61dd4b" -dependencies = [ - "lexical-core", - "memchr", - "version_check", -] - -[[package]] -name = "nom" -version = "7.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" -dependencies = [ - "memchr", - "minimal-lexical", -] - [[package]] name = "nonmax" version = "0.5.5" @@ -5423,10 +4828,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "610a5acd306ec67f907abe5567859a3c693fb9886eb1f012ab8f2a47bef3db51" [[package]] -name = "noop_proc_macro" -version = "0.3.0" +name = "normpath" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8" +checksum = "bf23ab2b905654b4cb177e30b629937b3868311d4e1cba859f899c041046e69b" +dependencies = [ + "windows-sys 0.61.1", +] [[package]] name = "nu-ansi-term" @@ -5437,47 +4845,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "num-bigint" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" -dependencies = [ - "num-integer", - "num-traits", -] - -[[package]] -name = "num-derive" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.106", -] - -[[package]] -name = "num-integer" -version = "0.1.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-rational" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" -dependencies = [ - "num-bigint", - "num-integer", - "num-traits", -] - [[package]] name = "num-traits" version = "0.2.19" @@ -5488,16 +4855,6 @@ dependencies = [ "libm", ] -[[package]] -name = "num_cpus" -version = "1.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b" -dependencies = [ - "hermit-abi 0.5.2", - "libc", -] - [[package]] name = "num_enum" version = "0.5.11" @@ -5535,7 +4892,7 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d" dependencies = [ - "proc-macro-crate 3.3.0", + "proc-macro-crate 3.4.0", "proc-macro2", "quote", "syn 2.0.106", @@ -5568,9 +4925,9 @@ dependencies = [ [[package]] name = "objc2" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "561f357ba7f3a2a61563a186a163d0a3a5247e1089524a3981d49adb775078bc" +checksum = "b7c2599ce0ec54857b29ce62166b0ed9b4f6f1a70ccc9a71165b6154caca8c05" dependencies = [ "objc2-encode", ] @@ -5593,14 +4950,14 @@ dependencies = [ [[package]] name = "objc2-app-kit" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6f29f568bec459b0ddff777cec4fe3fd8666d82d5a40ebd0ff7e66134f89bcc" +checksum = "d49e936b501e5c5bf01fda3a9452ff86dc3ea98ad5f283e1455153142d97518c" dependencies = [ "bitflags 2.9.4", - "objc2 0.6.2", + "objc2 0.6.3", "objc2-core-graphics", - "objc2-foundation 0.3.1", + "objc2-foundation 0.3.2", ] [[package]] @@ -5641,24 +4998,24 @@ dependencies = [ [[package]] name = "objc2-core-foundation" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c10c2894a6fed806ade6027bcd50662746363a9589d3ec9d9bef30a4e4bc166" +checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" dependencies = [ "bitflags 2.9.4", "dispatch2", - "objc2 0.6.2", + "objc2 0.6.3", ] [[package]] name = "objc2-core-graphics" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "989c6c68c13021b5c2d6b71456ebb0f9dc78d752e86a98da7c716f4f9470f5a4" +checksum = "e022c9d066895efa1345f8e33e584b9f958da2fd4cd116792e15e07e4720a807" dependencies = [ "bitflags 2.9.4", "dispatch2", - "objc2 0.6.2", + "objc2 0.6.3", "objc2-core-foundation", "objc2-io-surface", ] @@ -5708,23 +5065,23 @@ dependencies = [ [[package]] name = "objc2-foundation" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "900831247d2fe1a09a683278e5384cfb8c80c79fe6b166f9d14bfdde0ea1b03c" +checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272" dependencies = [ "bitflags 2.9.4", - "objc2 0.6.2", + "objc2 0.6.3", "objc2-core-foundation", ] [[package]] name = "objc2-io-surface" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7282e9ac92529fa3457ce90ebb15f4ecbc383e8338060960760fa2cf75420c3c" +checksum = "180788110936d59bab6bd83b6060ffdfffb3b922ba1396b312ae795e1de9d81d" dependencies = [ "bitflags 2.9.4", - "objc2 0.6.2", + "objc2 0.6.3", "objc2-core-foundation", ] @@ -5820,15 +5177,6 @@ dependencies = [ "objc2-foundation 0.2.2", ] -[[package]] -name = "object" -version = "0.36.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" -dependencies = [ - "memchr", -] - [[package]] name = "offset-allocator" version = "0.2.0" @@ -5858,10 +5206,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" [[package]] -name = "opaque-debug" -version = "0.3.1" +name = "opener" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" +checksum = "cb9024962ab91e00c89d2a14352a8d0fc1a64346bf96f1839b45c09149564e47" +dependencies = [ + "bstr", + "normpath", + "windows-sys 0.60.2", +] [[package]] name = "orbclient" @@ -5883,9 +5236,9 @@ dependencies = [ [[package]] name = "ordered-float" -version = "5.0.0" +version = "5.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2c1f9f56e534ac6a9b8a4600bdf0f530fb393b5f393e7b4d03489c3cf0c3f01" +checksum = "7f4779c6901a562440c3786d08192c6fbda7c1c2060edd10006b05ee35d10f2d" dependencies = [ "num-traits", ] @@ -5907,9 +5260,9 @@ checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" [[package]] name = "parking_lot" -version = "0.12.4" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13" +checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" dependencies = [ "lock_api", "parking_lot_core", @@ -5917,15 +5270,15 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.11" +version = "0.9.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5" +checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.5.17", + "redox_syscall 0.5.18", "smallvec", - "windows-targets 0.52.6", + "windows-link 0.2.0", ] [[package]] @@ -6016,7 +5369,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066" dependencies = [ "atomic-waker", - "fastrand 2.3.0", + "fastrand", "futures-io", ] @@ -6079,22 +5432,6 @@ dependencies = [ "miniz_oxide", ] -[[package]] -name = "polling" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" -dependencies = [ - "autocfg", - "bitflags 1.3.2", - "cfg-if", - "concurrent-queue", - "libc", - "log", - "pin-project-lite", - "windows-sys 0.48.0", -] - [[package]] name = "polling" version = "3.11.0" @@ -6103,10 +5440,10 @@ checksum = "5d0e4f59085d47d8241c88ead0f274e8a0cb551f3625263c05eb8dd897c34218" dependencies = [ "cfg-if", "concurrent-queue", - "hermit-abi 0.5.2", + "hermit-abi", "pin-project-lite", "rustix 1.1.2", - "windows-sys 0.61.0", + "windows-sys 0.61.1", ] [[package]] @@ -6115,17 +5452,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f3a9f18d041e6d0e102a0a46750538147e5e8992d3b4873aaafee2520b00ce3" -[[package]] -name = "polyval" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eebcc4aa140b9abd2bc40d9c3f7ccec842679cd79045ac3a7ac698c1a064b7cd" -dependencies = [ - "cpuid-bool", - "opaque-debug", - "universal-hash", -] - [[package]] name = "portable-atomic" version = "1.11.1" @@ -6174,16 +5500,6 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa" -[[package]] -name = "prettyplease" -version = "0.2.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" -dependencies = [ - "proc-macro2", - "syn 2.0.106", -] - [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -6196,19 +5512,13 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" +checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" dependencies = [ - "toml_edit 0.22.27", + "toml_edit 0.23.6", ] -[[package]] -name = "proc-macro-hack" -version = "0.5.20+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" - [[package]] name = "proc-macro2" version = "1.0.101" @@ -6223,19 +5533,6 @@ name = "profiling" version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3eb8486b569e12e2c32ad3e204dbaba5e4b5b216e9367044f25f1dba42341773" -dependencies = [ - "profiling-procmacros", -] - -[[package]] -name = "profiling-procmacros" -version = "1.0.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52717f9a02b6965224f95ca2a81e2e0c5c43baacd28ca057577988930b6c3d5b" -dependencies = [ - "quote", - "syn 2.0.106", -] [[package]] name = "ptr_meta" @@ -6270,42 +5567,24 @@ dependencies = [ [[package]] name = "pxfm" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55f4fedc84ed39cb7a489322318976425e42a147e2be79d8f878e2884f94e84" +checksum = "83f9b339b02259ada5c0f4a389b7fb472f933aa17ce176fd2ad98f28bb401fde" dependencies = [ "num-traits", ] -[[package]] -name = "qoi" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f6d64c71eb498fe9eae14ce4ec935c555749aef511cca85b5568910d6e48001" -dependencies = [ - "bytemuck", -] - [[package]] name = "quick-error" version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3" -[[package]] -name = "quick-xml" -version = "0.37.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb" -dependencies = [ - "memchr", -] - [[package]] name = "quote" -version = "1.0.40" +version = "1.0.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1" dependencies = [ "proc-macro2", ] @@ -6328,19 +5607,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "019b4b213425016d7d84a153c4c73afb0946fbb4840e4eece7ba8848b9d6da22" -[[package]] -name = "rand" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" -dependencies = [ - "getrandom 0.1.16", - "libc", - "rand_chacha 0.2.2", - "rand_core 0.5.1", - "rand_hc", -] - [[package]] name = "rand" version = "0.8.5" @@ -6353,13 +5619,13 @@ dependencies = [ ] [[package]] -name = "rand_chacha" -version = "0.2.2" +name = "rand" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" dependencies = [ - "ppv-lite86", - "rand_core 0.5.1", + "rand_chacha 0.9.0", + "rand_core 0.9.3", ] [[package]] @@ -6373,12 +5639,13 @@ dependencies = [ ] [[package]] -name = "rand_core" -version = "0.5.1" +name = "rand_chacha" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" dependencies = [ - "getrandom 0.1.16", + "ppv-lite86", + "rand_core 0.9.3", ] [[package]] @@ -6391,22 +5658,22 @@ dependencies = [ ] [[package]] -name = "rand_distr" -version = "0.4.3" +name = "rand_core" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31" +checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" dependencies = [ - "num-traits", - "rand 0.8.5", + "getrandom 0.3.3", ] [[package]] -name = "rand_hc" -version = "0.2.0" +name = "rand_distr" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +checksum = "6a8615d50dcf34fa31f7ab52692afec947c4dd0ab803cc87cb3b0b4570ff7463" dependencies = [ - "rand_core 0.5.1", + "num-traits", + "rand 0.9.2", ] [[package]] @@ -6431,58 +5698,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f93e7e49bb0bf967717f7bd674458b3d6b0c5f48ec7e3038166026a69fc22223" [[package]] -name = "rav1e" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd87ce80a7665b1cce111f8a16c1f3929f6547ce91ade6addf4ec86a8dda5ce9" -dependencies = [ - "arbitrary", - "arg_enum_proc_macro", - "arrayvec 0.7.6", - "av1-grain", - "bitstream-io", - "built", - "cfg-if", - "interpolate_name", - "itertools 0.12.1", - "libc", - "libfuzzer-sys", - "log", - "maybe-rayon", - "new_debug_unreachable", - "noop_proc_macro", - "num-derive", - "num-traits", - "once_cell", - "paste", - "profiling", - "rand 0.8.5", - "rand_chacha 0.3.1", - "simd_helpers", - "system-deps", - "thiserror 1.0.69", - "v_frame", - "wasm-bindgen", -] - -[[package]] -name = "ravif" -version = "0.11.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5825c26fddd16ab9f515930d49028a630efec172e903483c94796cfe31893e6b" -dependencies = [ - "avif-serialize", - "imgref", - "loop9", - "quick-error", - "rav1e", - "rayon", - "rgb", -] - -[[package]] -name = "raw-window-handle" -version = "0.6.2" +name = "raw-window-handle" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" @@ -6508,9 +5725,9 @@ dependencies = [ [[package]] name = "read-fonts" -version = "0.29.3" +version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04ca636dac446b5664bd16c069c00a9621806895b8bb02c2dc68542b23b8f25d" +checksum = "6717cf23b488adf64b9d711329542ba34de147df262370221940dfabc2c91358" dependencies = [ "bytemuck", "font-types", @@ -6533,18 +5750,18 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.17" +version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5407465600fb0548f1442edf71dd20683c6ed326200ace4b1ef0763521bb3b77" +checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" dependencies = [ "bitflags 2.9.4", ] [[package]] name = "regex" -version = "1.11.2" +version = "1.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912" +checksum = "8b5288124840bee7b386bc413c487869b360b2b4ec421ea56425128692f2a82c" dependencies = [ "aho-corasick", "memchr", @@ -6554,9 +5771,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6" +checksum = "833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad" dependencies = [ "aho-corasick", "memchr", @@ -6584,25 +5801,18 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832" -[[package]] -name = "rgb" -version = "0.8.52" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c6a884d2998352bb4daf0183589aec883f16a6da1f4dde84d8e2e9a5409a1ce" - [[package]] name = "ring" -version = "0.16.20" +version = "0.17.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" +checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" dependencies = [ "cc", + "cfg-if", + "getrandom 0.2.16", "libc", - "once_cell", - "spin 0.5.2", "untrusted", - "web-sys", - "winapi", + "windows-sys 0.52.0", ] [[package]] @@ -6646,6 +5856,19 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "ron" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "beceb6f7bf81c73e73aeef6dd1356d9a1b2b4909e1f0fc3e59b034f9572d7b7f" +dependencies = [ + "base64 0.22.1", + "bitflags 2.9.4", + "serde", + "serde_derive", + "unicode-ident", +] + [[package]] name = "roxmltree" version = "0.20.0" @@ -6658,7 +5881,7 @@ version = "1.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8975fc98059f365204d635119cf9c5a60ae67b841ed49b5422a9a7e56cdfac0" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "borsh", "bytes", "num-traits", @@ -6668,41 +5891,12 @@ dependencies = [ "serde_json", ] -[[package]] -name = "rustc-demangle" -version = "0.1.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56f7d92ca342cea22a06f2121d944b4fd82af56988c270852495420f961d4ace" - [[package]] name = "rustc-hash" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" -[[package]] -name = "rustc_version" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" -dependencies = [ - "semver 0.9.0", -] - -[[package]] -name = "rustix" -version = "0.37.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "519165d378b97752ca44bbe15047d5d3409e875f39327546b42ac81d7e18c1b6" -dependencies = [ - "bitflags 1.3.2", - "errno", - "io-lifetimes", - "libc", - "linux-raw-sys 0.3.8", - "windows-sys 0.48.0", -] - [[package]] name = "rustix" version = "0.38.44" @@ -6726,20 +5920,51 @@ dependencies = [ "errno", "libc", "linux-raw-sys 0.11.0", - "windows-sys 0.61.0", + "windows-sys 0.61.1", ] [[package]] name = "rustls" -version = "0.18.1" +version = "0.23.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d1126dcf58e93cee7d098dbda643b5f92ed724f1f6a63007c1116eed6700c81" +checksum = "cd3c25631629d034ce7cd9940adc9d45762d46de2b0f57193c4443b92c6d4d40" dependencies = [ - "base64 0.12.3", "log", + "once_cell", + "ring", + "rustls-pki-types", + "rustls-webpki", + "subtle", + "zeroize", +] + +[[package]] +name = "rustls-pemfile" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" +dependencies = [ + "rustls-pki-types", +] + +[[package]] +name = "rustls-pki-types" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" +dependencies = [ + "zeroize", +] + +[[package]] +name = "rustls-webpki" +version = "0.103.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e10b3f4191e8a80e6b43eebabfac91e5dcecebb27a71f04e820c47ec41d314bf" +dependencies = [ "ring", - "sct", - "webpki", + "rustls-pki-types", + "untrusted", ] [[package]] @@ -6765,6 +5990,15 @@ dependencies = [ "unicode-script", ] +[[package]] +name = "ruzstd" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3640bec8aad418d7d03c72ea2de10d5c646a598f9883c7babc160d91e3c1b26c" +dependencies = [ + "twox-hash", +] + [[package]] name = "ryu" version = "1.0.20" @@ -6780,41 +6014,12 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "scoped-tls" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" - [[package]] name = "scopeguard" version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" -[[package]] -name = "sct" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "sctk-adwaita" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6277f0217056f77f1d8f49f2950ac6c278c0d607c45f5ee99328d792ede24ec" -dependencies = [ - "ab_glyph", - "log", - "memmap2", - "smithay-client-toolkit", - "tiny-skia", -] - [[package]] name = "seahash" version = "4.1.0" @@ -6827,15 +6032,6 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0f7d95a54511e0c7be3f51e8867aa8cf35148d7b9445d44de2f943e2b206e749" -[[package]] -name = "semver" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" -dependencies = [ - "semver-parser", -] - [[package]] name = "semver" version = "1.0.27" @@ -6846,12 +6042,6 @@ dependencies = [ "serde_core", ] -[[package]] -name = "semver-parser" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" - [[package]] name = "send_wrapper" version = "0.6.0" @@ -6860,9 +6050,9 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "serde" -version = "1.0.224" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6aaeb1e94f53b16384af593c71e20b095e958dab1d26939c1b70645c5cfbcc0b" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ "serde_core", "serde_derive", @@ -6870,18 +6060,18 @@ dependencies = [ [[package]] name = "serde_core" -version = "1.0.224" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32f39390fa6346e24defbcdd3d9544ba8a19985d0af74df8501fbfe9a64341ab" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.224" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ff78ab5e8561c9a675bfc1785cb07ae721f0ee53329a595cefd8c04c2ac4e0" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", @@ -6901,47 +6091,6 @@ dependencies = [ "serde_core", ] -[[package]] -name = "serde_qs" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7715380eec75f029a4ef7de39a9200e0a63823176b759d055b613f5a87df6a6" -dependencies = [ - "percent-encoding", - "serde", - "thiserror 1.0.69", -] - -[[package]] -name = "serde_spanned" -version = "0.6.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" -dependencies = [ - "serde", -] - -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "sha1" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770" -dependencies = [ - "sha1_smol", -] - [[package]] name = "sha1" version = "0.10.6" @@ -6950,26 +6099,7 @@ checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.7", -] - -[[package]] -name = "sha1_smol" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbfa15b3dddfee50a0fff136974b3e1bde555604ba463834a7eb7deb6417705d" - -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", + "digest", ] [[package]] @@ -6993,15 +6123,6 @@ version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" -[[package]] -name = "simd_helpers" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95890f873bec569a0362c235787f3aca6e1e887302ba4840839bcc6459c42da6" -dependencies = [ - "quote", -] - [[package]] name = "simdutf8" version = "0.1.5" @@ -7025,9 +6146,9 @@ dependencies = [ [[package]] name = "skrifa" -version = "0.31.3" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbeb4ca4399663735553a09dd17ce7e49a0a0203f03b706b39628c4d913a8607" +checksum = "8c31071dedf532758ecf3fed987cdb4bd9509f900e026ab684b4ecb81ea49841" dependencies = [ "bytemuck", "read-fonts", @@ -7057,31 +6178,6 @@ dependencies = [ "serde", ] -[[package]] -name = "smithay-client-toolkit" -version = "0.19.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016" -dependencies = [ - "bitflags 2.9.4", - "calloop", - "calloop-wayland-source", - "cursor-icon", - "libc", - "log", - "memmap2", - "rustix 0.38.44", - "thiserror 1.0.69", - "wayland-backend", - "wayland-client", - "wayland-csd-frame", - "wayland-cursor", - "wayland-protocols", - "wayland-protocols-wlr", - "wayland-scanner", - "xkeysym", -] - [[package]] name = "smol_str" version = "0.2.2" @@ -7091,27 +6187,11 @@ dependencies = [ "serde", ] -[[package]] -name = "socket2" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" -dependencies = [ - "libc", - "winapi", -] - -[[package]] -name = "spin" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" - [[package]] name = "spin" -version = "0.9.8" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +checksum = "d5fe4ccb98d9c292d56fec89a5e07da7fc4cf0dc11e156b41793132775d3e591" dependencies = [ "portable-atomic", ] @@ -7137,76 +6217,12 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6eae92052b72ef70dafa16eddbabffc77e5ca3574be2f7bc1127b36f0a7ad7f2" -[[package]] -name = "standback" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e113fb6f3de07a243d434a56ec6f186dfd51cb08448239fe7bcae73f87ff28ff" -dependencies = [ - "version_check", -] - [[package]] name = "static_assertions" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" -[[package]] -name = "stdweb" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" -dependencies = [ - "discard", - "rustc_version", - "stdweb-derive", - "stdweb-internal-macros", - "stdweb-internal-runtime", - "wasm-bindgen", -] - -[[package]] -name = "stdweb-derive" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef" -dependencies = [ - "proc-macro2", - "quote", - "serde", - "serde_derive", - "syn 1.0.109", -] - -[[package]] -name = "stdweb-internal-macros" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11" -dependencies = [ - "base-x", - "proc-macro2", - "quote", - "serde", - "serde_derive", - "serde_json", - "sha1 0.6.1", - "syn 1.0.109", -] - -[[package]] -name = "stdweb-internal-runtime" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0" - -[[package]] -name = "strict-num" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731" - [[package]] name = "strsim" version = "0.11.1" @@ -7237,31 +6253,9 @@ dependencies = [ [[package]] name = "subtle" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" - -[[package]] -name = "surf" -version = "2.3.2" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718b1ae6b50351982dedff021db0def601677f2120938b070eadb10ba4038dd7" -dependencies = [ - "async-std", - "async-trait", - "cfg-if", - "futures-util", - "getrandom 0.2.16", - "http-client", - "http-types", - "log", - "mime_guess", - "once_cell", - "pin-project-lite", - "rustls", - "serde", - "serde_json", -] +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "svg_fmt" @@ -7271,9 +6265,9 @@ checksum = "0193cc4331cfd2f3d2011ef287590868599a2f33c3e69bc22c1a3d3acf9e02fb" [[package]] name = "swash" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f745de914febc7c9ab4388dfaf94bbc87e69f57bb41133a9b0c84d4be49856f3" +checksum = "47846491253e976bdd07d0f9cc24b7daf24720d11309302ccbbc6e6b6e53550a" dependencies = [ "skrifa", "yazi", @@ -7322,26 +6316,13 @@ dependencies = [ "libc", ] -[[package]] -name = "system-deps" -version = "6.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349" -dependencies = [ - "cfg-expr", - "heck", - "pkg-config", - "toml", - "version-compare", -] - [[package]] name = "taffy" version = "0.7.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab4f4d046dd956a47a7e1a2947083d7ac3e6aa3cfaaead36173ceaa5ab11878c" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "grid", "serde", "slotmap", @@ -7353,23 +6334,17 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" -[[package]] -name = "target-lexicon" -version = "0.12.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" - [[package]] name = "tempfile" -version = "3.22.0" +version = "3.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84fa4d11fadde498443cca10fd3ac23c951f0dc59e080e9f4b93d4df4e4eea53" +checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16" dependencies = [ - "fastrand 2.3.0", + "fastrand", "getrandom 0.3.3", "once_cell", "rustix 1.1.2", - "windows-sys 0.61.0", + "windows-sys 0.61.1", ] [[package]] @@ -7392,11 +6367,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.16" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0" +checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" dependencies = [ - "thiserror-impl 2.0.16", + "thiserror-impl 2.0.17", ] [[package]] @@ -7412,9 +6387,9 @@ dependencies = [ [[package]] name = "thiserror-impl" -version = "2.0.16" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960" +checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", @@ -7444,69 +6419,6 @@ dependencies = [ "zune-jpeg", ] -[[package]] -name = "time" -version = "0.2.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4752a97f8eebd6854ff91f1c1824cd6160626ac4bd44287f7f4ea2035a02a242" -dependencies = [ - "const_fn", - "libc", - "standback", - "stdweb", - "time-macros", - "version_check", - "winapi", -] - -[[package]] -name = "time-macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1" -dependencies = [ - "proc-macro-hack", - "time-macros-impl", -] - -[[package]] -name = "time-macros-impl" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd3c141a1b43194f3f56a1411225df8646c55781d5f26db825b3d98507eb482f" -dependencies = [ - "proc-macro-hack", - "proc-macro2", - "quote", - "standback", - "syn 1.0.109", -] - -[[package]] -name = "tiny-skia" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab" -dependencies = [ - "arrayref", - "arrayvec 0.7.6", - "bytemuck", - "cfg-if", - "log", - "tiny-skia-path", -] - -[[package]] -name = "tiny-skia-path" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9e7fc0c2e86a30b117d0462aa261b72b7a99b7ebd7deb3a14ceda95c5bdc93" -dependencies = [ - "arrayref", - "bytemuck", - "strict-num", -] - [[package]] name = "tinystr" version = "0.8.1" @@ -7543,38 +6455,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] -name = "tokio" -version = "1.47.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89e49afdadebb872d3145a5638b59eb0691ea23e46ca484037cfab3b76b95038" -dependencies = [ - "backtrace", - "io-uring", - "libc", - "mio", - "pin-project-lite", - "slab", -] - -[[package]] -name = "toml" -version = "0.8.23" +name = "toml_datetime" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" -dependencies = [ - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit 0.22.27", -] +checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" [[package]] name = "toml_datetime" -version = "0.6.11" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" +checksum = "32f1085dec27c2b6632b04c80b3bb1b4300d6495d1e129693bdda7d91e72eec1" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -7584,7 +6476,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ "indexmap", - "toml_datetime", + "toml_datetime 0.6.11", "winnow 0.5.40", ] @@ -7595,9 +6487,28 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ "indexmap", - "serde", - "serde_spanned", - "toml_datetime", + "toml_datetime 0.6.11", + "winnow 0.7.13", +] + +[[package]] +name = "toml_edit" +version = "0.23.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3effe7c0e86fdff4f69cdd2ccc1b96f933e24811c5441d44904e8683e27184b" +dependencies = [ + "indexmap", + "toml_datetime 0.7.2", + "toml_parser", + "winnow 0.7.13", +] + +[[package]] +name = "toml_parser" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cf893c33be71572e0e9aa6dd15e6677937abd686b066eac3f8cd3531688a627" +dependencies = [ "winnow 0.7.13", ] @@ -7646,15 +6557,12 @@ dependencies = [ [[package]] name = "tracing-oslog" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "528bdd1f0e27b5dd9a4ededf154e824b0532731e4af73bb531de46276e0aab1e" +checksum = "d76902d2a8d5f9f55a81155c08971734071968c90f2d9bfe645fe700579b2950" dependencies = [ - "bindgen", "cc", "cfg-if", - "once_cell", - "parking_lot", "tracing-core", "tracing-subscriber", ] @@ -7706,6 +6614,12 @@ version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2df906b07856748fa3f6e0ad0cbaa047052d4a7dd609e231c4f72cee8c36f31" +[[package]] +name = "twox-hash" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ea3136b675547379c4bd395ca6b938e5ad3c3d20fad76e7fe85f9e0d011419c" + [[package]] name = "typeid" version = "1.0.3" @@ -7714,9 +6628,9 @@ checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" [[package]] name = "typenum" -version = "1.18.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" +checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" [[package]] name = "typewit" @@ -7784,6 +6698,12 @@ version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" +[[package]] +name = "unicode-width" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c" + [[package]] name = "unicode-xid" version = "0.2.6" @@ -7791,20 +6711,39 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] -name = "universal-hash" -version = "0.4.1" +name = "untrusted" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + +[[package]] +name = "ureq" +version = "3.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99ba1025f18a4a3fc3e9b48c868e9beb4f24f4b4b1a325bada26bd4119f46537" dependencies = [ - "generic-array", - "subtle", + "base64 0.22.1", + "log", + "percent-encoding", + "rustls", + "rustls-pemfile", + "rustls-pki-types", + "ureq-proto", + "utf-8", + "webpki-roots", ] [[package]] -name = "untrusted" -version = "0.7.1" +name = "ureq-proto" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" +checksum = "60b4531c118335662134346048ddb0e54cc86bd7e81866757873055f0e38f5d2" +dependencies = [ + "base64 0.22.1", + "http", + "httparse", + "log", +] [[package]] name = "url" @@ -7818,6 +6757,12 @@ dependencies = [ "serde", ] +[[package]] +name = "utf-8" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" + [[package]] name = "utf8-width" version = "0.1.7" @@ -7848,29 +6793,12 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "v_frame" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "666b7727c8875d6ab5db9533418d7c764233ac9c0cff1d469aec8fa127597be2" -dependencies = [ - "aligned-vec", - "num-traits", - "wasm-bindgen", -] - [[package]] name = "valuable" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" -[[package]] -name = "value-bag" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "943ce29a8a743eb10d6082545d861b24f9d1b160b7d741e0f2cdf726bec909c5" - [[package]] name = "variadics_please" version = "1.1.0" @@ -7882,24 +6810,12 @@ dependencies = [ "syn 2.0.106", ] -[[package]] -name = "version-compare" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b" - [[package]] name = "version_check" version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" -[[package]] -name = "waker-fn" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" - [[package]] name = "walkdir" version = "2.5.0" @@ -7910,12 +6826,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "wasi" -version = "0.9.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" - [[package]] name = "wasi" version = "0.11.1+wasi-snapshot-preview1" @@ -7942,9 +6852,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.101" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e14915cadd45b529bb8d1f343c4ed0ac1de926144b746e2710f9cd05df6603b" +checksum = "c1da10c01ae9f1ae40cbfac0bac3b1e724b320abfcf52229f80b547c0d250e2d" dependencies = [ "cfg-if", "once_cell", @@ -7955,9 +6865,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.101" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e28d1ba982ca7923fd01448d5c30c6864d0a14109560296a162f80f305fb93bb" +checksum = "671c9a5a66f49d8a47345ab942e2cb93c7d1d0339065d4f8139c486121b43b19" dependencies = [ "bumpalo", "log", @@ -7969,9 +6879,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.51" +version = "0.4.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ca85039a9b469b38336411d6d6ced91f3fc87109a2a27b0c197663f5144dffe" +checksum = "7e038d41e478cc73bae0ff9b36c60cff1c98b8f38f8d7e8061e79ee63608ac5c" dependencies = [ "cfg-if", "js-sys", @@ -7982,9 +6892,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.101" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c3d463ae3eff775b0c45df9da45d68837702ac35af998361e2c84e7c5ec1b0d" +checksum = "7ca60477e4c59f5f2986c50191cd972e3a50d8a95603bc9434501cf156a9a119" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7992,140 +6902,31 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.101" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bb4ce89b08211f923caf51d527662b75bdc9c9c7aab40f86dcb9fb85ac552aa" +checksum = "9f07d2f20d4da7b26400c9f4a0511e6e0345b040694e8a75bd41d578fa4421d7" dependencies = [ "proc-macro2", "quote", "syn 2.0.106", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.101" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f143854a3b13752c6950862c906306adb27c7e839f7414cec8fea35beab624c1" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "wayland-backend" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "673a33c33048a5ade91a6b139580fa174e19fb0d23f396dca9fa15f2e1e49b35" -dependencies = [ - "cc", - "downcast-rs 1.2.1", - "rustix 1.1.2", - "scoped-tls", - "smallvec", - "wayland-sys", -] - -[[package]] -name = "wayland-client" -version = "0.31.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c66a47e840dc20793f2264eb4b3e4ecb4b75d91c0dd4af04b456128e0bdd449d" -dependencies = [ - "bitflags 2.9.4", - "rustix 1.1.2", - "wayland-backend", - "wayland-scanner", -] - -[[package]] -name = "wayland-csd-frame" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e" -dependencies = [ - "bitflags 2.9.4", - "cursor-icon", - "wayland-backend", -] - -[[package]] -name = "wayland-cursor" -version = "0.31.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "447ccc440a881271b19e9989f75726d60faa09b95b0200a9b7eb5cc47c3eeb29" -dependencies = [ - "rustix 1.1.2", - "wayland-client", - "xcursor", -] - -[[package]] -name = "wayland-protocols" -version = "0.32.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efa790ed75fbfd71283bd2521a1cfdc022aabcc28bdcff00851f9e4ae88d9901" -dependencies = [ - "bitflags 2.9.4", - "wayland-backend", - "wayland-client", - "wayland-scanner", -] - -[[package]] -name = "wayland-protocols-plasma" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a07a14257c077ab3279987c4f8bb987851bf57081b93710381daea94f2c2c032" -dependencies = [ - "bitflags 2.9.4", - "wayland-backend", - "wayland-client", - "wayland-protocols", - "wayland-scanner", -] - -[[package]] -name = "wayland-protocols-wlr" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efd94963ed43cf9938a090ca4f7da58eb55325ec8200c3848963e98dc25b78ec" -dependencies = [ - "bitflags 2.9.4", - "wayland-backend", - "wayland-client", - "wayland-protocols", - "wayland-scanner", -] - -[[package]] -name = "wayland-scanner" -version = "0.31.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54cb1e9dc49da91950bdfd8b848c49330536d9d1fb03d4bfec8cae50caa50ae3" -dependencies = [ - "proc-macro2", - "quick-xml", - "quote", + "wasm-bindgen-backend", + "wasm-bindgen-shared", ] [[package]] -name = "wayland-sys" -version = "0.31.7" +name = "wasm-bindgen-shared" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34949b42822155826b41db8e5d0c1be3a2bd296c747577a43a3e6daefc296142" +checksum = "bad67dc8b2a1a6e5448428adec4c3e84c43e561d8c9ee8a9e5aabeb193ec41d1" dependencies = [ - "dlib", - "log", - "once_cell", - "pkg-config", + "unicode-ident", ] [[package]] name = "web-sys" -version = "0.3.78" +version = "0.3.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77e4b637749ff0d92b8fad63aa1f7cff3cbe125fd49c175cd6345e7272638b12" +checksum = "9367c417a924a74cae129e6a2ae3b47fabb1f8995595ab474029da749a8be120" dependencies = [ "js-sys", "wasm-bindgen", @@ -8142,22 +6943,28 @@ dependencies = [ ] [[package]] -name = "webpki" -version = "0.21.4" +name = "webbrowser" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea" +checksum = "aaf4f3c0ba838e82b4e5ccc4157003fb8c324ee24c058470ffb82820becbde98" dependencies = [ - "ring", - "untrusted", + "core-foundation 0.10.1", + "jni", + "log", + "ndk-context", + "objc2 0.6.3", + "objc2-foundation 0.3.2", + "url", + "web-sys", ] [[package]] name = "webpki-roots" -version = "0.20.0" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f20dea7535251981a9670857150d571846545088359b28e4951d350bdaf179f" +checksum = "7e8983c3ab33d6fb807cfcdad2491c4ea8cbc8ed839181c7dfd9c67c83e261b2" dependencies = [ - "webpki", + "rustls-pki-types", ] [[package]] @@ -8172,7 +6979,7 @@ version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "90e37c7b9921b75dfd26dd973fdcbce36f13dfa6e2dc82aece584e0ed48c355c" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "cfg-if", "cfg_aliases 0.1.1", "document-features", @@ -8198,7 +7005,7 @@ version = "24.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b0b3436f0729f6cdf2e6e9201f3d39dc95813fad61d826c1ed07918b4539353" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "bitflags 2.9.4", "cfg_aliases 0.2.1", "document-features", @@ -8218,17 +7025,46 @@ dependencies = [ "wgpu-types 24.0.0", ] +[[package]] +name = "wgpu" +version = "26.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70b6ff82bbf6e9206828e1a3178e851f8c20f1c9028e74dd3a8090741ccd5798" +dependencies = [ + "arrayvec", + "bitflags 2.9.4", + "cfg-if", + "cfg_aliases 0.2.1", + "document-features", + "hashbrown 0.15.5", + "js-sys", + "log", + "naga 26.0.0", + "parking_lot", + "portable-atomic", + "profiling", + "raw-window-handle", + "smallvec", + "static_assertions", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "wgpu-core 26.0.1", + "wgpu-hal 26.0.4", + "wgpu-types 26.0.0", +] + [[package]] name = "wgpu-core" version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d50819ab545b867d8a454d1d756b90cd5f15da1f2943334ca314af10583c9d39" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "bit-vec 0.6.3", "bitflags 2.9.4", "cfg_aliases 0.1.1", - "codespan-reporting", + "codespan-reporting 0.11.1", "document-features", "indexmap", "log", @@ -8251,7 +7087,7 @@ version = "24.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f0aa306497a238d169b9dc70659105b4a096859a34894544ca81719242e1499" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "bit-vec 0.8.0", "bitflags 2.9.4", "cfg_aliases 0.2.1", @@ -8265,11 +7101,79 @@ dependencies = [ "raw-window-handle", "rustc-hash", "smallvec", - "thiserror 2.0.16", + "thiserror 2.0.17", "wgpu-hal 24.0.4", "wgpu-types 24.0.0", ] +[[package]] +name = "wgpu-core" +version = "26.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5f62f1053bd28c2268f42916f31588f81f64796e2ff91b81293515017ca8bd9" +dependencies = [ + "arrayvec", + "bit-set 0.8.0", + "bit-vec 0.8.0", + "bitflags 2.9.4", + "cfg_aliases 0.2.1", + "document-features", + "hashbrown 0.15.5", + "indexmap", + "log", + "naga 26.0.0", + "once_cell", + "parking_lot", + "portable-atomic", + "profiling", + "raw-window-handle", + "rustc-hash", + "smallvec", + "thiserror 2.0.17", + "wgpu-core-deps-apple", + "wgpu-core-deps-emscripten", + "wgpu-core-deps-wasm", + "wgpu-core-deps-windows-linux-android", + "wgpu-hal 26.0.4", + "wgpu-types 26.0.0", +] + +[[package]] +name = "wgpu-core-deps-apple" +version = "26.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18ae5fbde6a4cbebae38358aa73fcd6e0f15c6144b67ef5dc91ded0db125dbdf" +dependencies = [ + "wgpu-hal 26.0.4", +] + +[[package]] +name = "wgpu-core-deps-emscripten" +version = "26.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7670e390f416006f746b4600fdd9136455e3627f5bd763abf9a65daa216dd2d" +dependencies = [ + "wgpu-hal 26.0.4", +] + +[[package]] +name = "wgpu-core-deps-wasm" +version = "26.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c03b9f9e1a50686d315fc6debe4980cc45cd37b0e919351917df494e8fdc8885" +dependencies = [ + "wgpu-hal 26.0.4", +] + +[[package]] +name = "wgpu-core-deps-windows-linux-android" +version = "26.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "720a5cb9d12b3d337c15ff0e24d3e97ed11490ff3f7506e7f3d98c68fa5d6f14" +dependencies = [ + "wgpu-hal 26.0.4", +] + [[package]] name = "wgpu-hal" version = "0.21.1" @@ -8277,13 +7181,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "172e490a87295564f3fcc0f165798d87386f6231b04d4548bca458cbbfd63222" dependencies = [ "android_system_properties", - "arrayvec 0.7.6", + "arrayvec", "ash 0.37.3+1.3.251", "bit-set 0.5.3", "bitflags 2.9.4", "block", "cfg_aliases 0.1.1", - "core-graphics-types", + "core-graphics-types 0.1.3", "d3d12", "glow 0.13.1", "glutin_wgl_sys 0.5.0", @@ -8294,7 +7198,7 @@ dependencies = [ "js-sys", "khronos-egl", "libc", - "libloading 0.8.8", + "libloading 0.8.9", "log", "metal 0.28.0", "naga 0.20.0", @@ -8322,14 +7226,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f112f464674ca69f3533248508ee30cb84c67cf06c25ff6800685f5e0294e259" dependencies = [ "android_system_properties", - "arrayvec 0.7.6", + "arrayvec", "ash 0.38.0+1.3.281", "bit-set 0.8.0", "bitflags 2.9.4", "block", "bytemuck", "cfg_aliases 0.2.1", - "core-graphics-types", + "core-graphics-types 0.1.3", "glow 0.16.0", "glutin_wgl_sys 0.6.1", "gpu-alloc", @@ -8338,7 +7242,7 @@ dependencies = [ "js-sys", "khronos-egl", "libc", - "libloading 0.8.8", + "libloading 0.8.9", "log", "metal 0.31.0", "naga 24.0.0", @@ -8353,7 +7257,7 @@ dependencies = [ "renderdoc-sys", "rustc-hash", "smallvec", - "thiserror 2.0.16", + "thiserror 2.0.17", "wasm-bindgen", "web-sys", "wgpu-types 24.0.0", @@ -8361,6 +7265,54 @@ dependencies = [ "windows-core 0.58.0", ] +[[package]] +name = "wgpu-hal" +version = "26.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7df2c64ac282a91ad7662c90bc4a77d4a2135bc0b2a2da5a4d4e267afc034b9e" +dependencies = [ + "android_system_properties", + "arrayvec", + "ash 0.38.0+1.3.281", + "bit-set 0.8.0", + "bitflags 2.9.4", + "block", + "bytemuck", + "cfg-if", + "cfg_aliases 0.2.1", + "core-graphics-types 0.2.0", + "glow 0.16.0", + "glutin_wgl_sys 0.6.1", + "gpu-alloc", + "gpu-allocator 0.27.0", + "gpu-descriptor", + "hashbrown 0.15.5", + "js-sys", + "khronos-egl", + "libc", + "libloading 0.8.9", + "log", + "metal 0.32.0", + "naga 26.0.0", + "ndk-sys 0.6.0+11769913", + "objc", + "ordered-float 4.6.0", + "parking_lot", + "portable-atomic", + "portable-atomic-util", + "profiling", + "range-alloc", + "raw-window-handle", + "renderdoc-sys", + "smallvec", + "thiserror 2.0.17", + "wasm-bindgen", + "web-sys", + "wgpu-types 26.0.0", + "windows 0.58.0", + "windows-core 0.58.0", +] + [[package]] name = "wgpu-types" version = "0.20.0" @@ -8381,7 +7333,21 @@ dependencies = [ "bitflags 2.9.4", "js-sys", "log", + "web-sys", +] + +[[package]] +name = "wgpu-types" +version = "26.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eca7a8d8af57c18f57d393601a1fb159ace8b2328f1b6b5f80893f7d672c9ae2" +dependencies = [ + "bitflags 2.9.4", + "bytemuck", + "js-sys", + "log", "serde", + "thiserror 2.0.17", "web-sys", ] @@ -8413,7 +7379,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.61.0", + "windows-sys 0.61.1", ] [[package]] @@ -8454,6 +7420,28 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows" +version = "0.61.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9babd3a767a4c1aef6900409f85f5d53ce2544ccdfaa86dad48c91782c6d6893" +dependencies = [ + "windows-collections", + "windows-core 0.61.2", + "windows-future", + "windows-link 0.1.3", + "windows-numerics", +] + +[[package]] +name = "windows-collections" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8" +dependencies = [ + "windows-core 0.61.2", +] + [[package]] name = "windows-core" version = "0.52.0" @@ -8482,10 +7470,34 @@ dependencies = [ "windows-implement 0.58.0", "windows-interface 0.58.0", "windows-result 0.2.0", - "windows-strings", + "windows-strings 0.1.0", "windows-targets 0.52.6", ] +[[package]] +name = "windows-core" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" +dependencies = [ + "windows-implement 0.60.1", + "windows-interface 0.59.2", + "windows-link 0.1.3", + "windows-result 0.3.4", + "windows-strings 0.4.2", +] + +[[package]] +name = "windows-future" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e" +dependencies = [ + "windows-core 0.61.2", + "windows-link 0.1.3", + "windows-threading", +] + [[package]] name = "windows-implement" version = "0.53.0" @@ -8508,6 +7520,17 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "windows-implement" +version = "0.60.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edb307e42a74fb6de9bf3a02d9712678b22399c87e6fa869d6dfcd8c1b7754e0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.106", +] + [[package]] name = "windows-interface" version = "0.53.0" @@ -8530,6 +7553,17 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "windows-interface" +version = "0.59.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0abd1ddbc6964ac14db11c7213d6532ef34bd9aa042c2e5935f59d7908b46a5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.106", +] + [[package]] name = "windows-link" version = "0.1.3" @@ -8542,6 +7576,16 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" +[[package]] +name = "windows-numerics" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1" +dependencies = [ + "windows-core 0.61.2", + "windows-link 0.1.3", +] + [[package]] name = "windows-result" version = "0.1.2" @@ -8560,6 +7604,15 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-result" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" +dependencies = [ + "windows-link 0.1.3", +] + [[package]] name = "windows-strings" version = "0.1.0" @@ -8571,21 +7624,21 @@ dependencies = [ ] [[package]] -name = "windows-sys" -version = "0.45.0" +name = "windows-strings" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" dependencies = [ - "windows-targets 0.42.2", + "windows-link 0.1.3", ] [[package]] name = "windows-sys" -version = "0.48.0" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" dependencies = [ - "windows-targets 0.48.5", + "windows-targets 0.42.2", ] [[package]] @@ -8612,14 +7665,14 @@ version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets 0.53.3", + "windows-targets 0.53.4", ] [[package]] name = "windows-sys" -version = "0.61.0" +version = "0.61.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa" +checksum = "6f109e41dd4a3c848907eb83d5a42ea98b3769495597450cf6d153507b166f0f" dependencies = [ "windows-link 0.2.0", ] @@ -8639,21 +7692,6 @@ dependencies = [ "windows_x86_64_msvc 0.42.2", ] -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - [[package]] name = "windows-targets" version = "0.52.6" @@ -8672,11 +7710,11 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.53.3" +version = "0.53.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" +checksum = "2d42b7b7f66d2a06854650af09cfdf8713e427a439c97ad65a6375318033ac4b" dependencies = [ - "windows-link 0.1.3", + "windows-link 0.2.0", "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", "windows_i686_gnu 0.53.0", @@ -8688,16 +7726,19 @@ dependencies = [ ] [[package]] -name = "windows_aarch64_gnullvm" -version = "0.42.2" +name = "windows-threading" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" +checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6" +dependencies = [ + "windows-link 0.1.3", +] [[package]] name = "windows_aarch64_gnullvm" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" [[package]] name = "windows_aarch64_gnullvm" @@ -8717,12 +7758,6 @@ version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - [[package]] name = "windows_aarch64_msvc" version = "0.52.6" @@ -8741,12 +7776,6 @@ version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - [[package]] name = "windows_i686_gnu" version = "0.52.6" @@ -8777,12 +7806,6 @@ version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - [[package]] name = "windows_i686_msvc" version = "0.52.6" @@ -8801,12 +7824,6 @@ version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - [[package]] name = "windows_x86_64_gnu" version = "0.52.6" @@ -8825,12 +7842,6 @@ version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - [[package]] name = "windows_x86_64_gnullvm" version = "0.52.6" @@ -8849,12 +7860,6 @@ version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - [[package]] name = "windows_x86_64_msvc" version = "0.52.6" @@ -8873,7 +7878,6 @@ version = "0.30.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c66d4b9ed69c4009f6321f762d6e61ad8a2389cd431b97cb1e146812e9e6c732" dependencies = [ - "ahash 0.8.12", "android-activity", "atomic-waker", "bitflags 2.9.4", @@ -8882,13 +7886,12 @@ dependencies = [ "calloop", "cfg_aliases 0.2.1", "concurrent-queue", - "core-foundation", + "core-foundation 0.9.4", "core-graphics", "cursor-icon", "dpi", "js-sys", "libc", - "memmap2", "ndk", "objc2 0.5.2", "objc2-app-kit 0.2.2", @@ -8900,17 +7903,11 @@ dependencies = [ "raw-window-handle", "redox_syscall 0.4.1", "rustix 0.38.44", - "sctk-adwaita", - "smithay-client-toolkit", "smol_str", "tracing", "unicode-segmentation", "wasm-bindgen", "wasm-bindgen-futures", - "wayland-backend", - "wayland-client", - "wayland-protocols", - "wayland-protocols-plasma", "web-sys", "web-time", "windows-sys 0.52.0", @@ -8978,7 +7975,7 @@ dependencies = [ "as-raw-xcb-connection", "gethostname", "libc", - "libloading 0.8.8", + "libloading 0.8.9", "once_cell", "rustix 1.1.2", "x11rb-protocol", @@ -8990,12 +7987,6 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ea6fc2961e4ef194dcbfe56bb845534d0dc8098940c7e5c012a258bfec6701bd" -[[package]] -name = "xcursor" -version = "0.3.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bec9e4a500ca8864c5b47b8b482a73d62e4237670e5b5f1d6b9e3cae50f28f2b" - [[package]] name = "xkbcommon-dl" version = "0.4.2" @@ -9098,6 +8089,12 @@ dependencies = [ "synstructure", ] +[[package]] +name = "zeroize" +version = "1.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" + [[package]] name = "zerotrie" version = "0.2.2" @@ -9137,15 +8134,6 @@ version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a" -[[package]] -name = "zune-inflate" -version = "0.2.54" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02" -dependencies = [ - "simd-adler32", -] - [[package]] name = "zune-jpeg" version = "0.4.21" diff --git a/Cargo.toml b/Cargo.toml index 1b77b0f6..3f8034eb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "bevy_gaussian_splatting" description = "bevy gaussian splatting render pipeline plugin" -version = "5.3.0" +version = "6.0.0" edition = "2024" rust-version = "1.85.0" authors = ["mosure "] @@ -117,8 +117,11 @@ headless = [ "io_ply", "planar", "buffer_storage", + "sh3", "sort_rayon", "sort_std", + "sort_bitonic", + "sort_radix", ] viewer = [ @@ -147,7 +150,8 @@ file_asset = [ ] web_asset = [ "base64", - "bevy_web_asset", + "bevy/http", + "bevy/https", ] # note: webgl2/buffer_texture are deprecated @@ -157,14 +161,13 @@ webgpu = ["bevy/webgpu"] [dependencies] base64 = { version = "0.22", optional = true } -bevy_args = "~1.8" -bevy-inspector-egui = { version = "0.31", optional = true } -bevy_interleave = { version = "0.7.2" } +bevy_args = { version = "2.0.0" } +bevy-inspector-egui = { version = "0.34.0", optional = true } +bevy_interleave = { version = "0.8.0" } # bevy_panorbit_camera = { git = "https://github.com/mosure/bevy_panorbit_camera.git", optional = true, features = ["bevy_egui"] } -bevy_panorbit_camera = { version = "0.26", optional = true, features = ["bevy_egui"] } +bevy_panorbit_camera = { version = "0.29.0", optional = true , features = ["bevy_egui"]} bevy_transform_gizmo = { version = "0.12", optional = true } -bevy_file_asset = { version = "0.2", optional = true } -bevy_web_asset = { version = "0.11", optional = true } +bevy_file_asset = { git = "https://github.com/cs50victor/bevy_file_asset", branch = "chore/bump_bevy", optional = true } bincode2 = { version = "2.0", optional = true } byte-unit = { version = "5.1", optional = true } bytemuck = "1.23" @@ -191,10 +194,11 @@ wasm-bindgen = "0.2" [dependencies.bevy] -version = "0.16" +version = "0.17" default-features = false features = [ "bevy_asset", + "bevy_camera", "bevy_core_pipeline", "bevy_log", "bevy_pbr", @@ -202,6 +206,7 @@ features = [ "bevy_winit", "serialize", "std", + "zstd_rust", "x11", ] @@ -220,6 +225,7 @@ features = [ [dev-dependencies] criterion = { version = "0.6", features = ["html_reports"] } +crossbeam-channel = "0.5.15" futures-intrusive = { version = "0.5.0" } pollster = { version = "0.4.0" } diff --git a/examples/headless.rs b/examples/headless.rs index 5bbb89f4..5ea0525d 100644 --- a/examples/headless.rs +++ b/examples/headless.rs @@ -1,464 +1,395 @@ -// for running the gaussian splatting viewer without a window ( i.e on a server ) -//! ensure the "headless_output" directory exists in the root of the project -// c_rr --example headless --no-default-features --features "headless" -- [filename] +//! Headless rendering for gaussian splatting +//! +//! Renders gaussian splatting to images without creating a window. +//! Based on Bevy's headless_renderer example. +//! +//! Usage: cargo run --example headless --no-default-features --features "headless" -- [filename] use bevy::{ - app::ScheduleRunnerPlugin, core_pipeline::tonemapping::Tonemapping, prelude::*, - render::renderer::RenderDevice, + app::{AppExit, ScheduleRunnerPlugin}, + camera::RenderTarget, + core_pipeline::tonemapping::Tonemapping, + image::TextureFormatPixelInfo, + prelude::*, + render::{ + render_asset::RenderAssets, + render_graph::{self, NodeRunError, RenderGraph, RenderGraphContext, RenderLabel}, + render_resource::{ + Buffer, BufferDescriptor, BufferUsages, CommandEncoderDescriptor, Extent3d, MapMode, + PollType, TexelCopyBufferInfo, TexelCopyBufferLayout, TextureFormat, TextureUsages, + }, + renderer::{RenderContext, RenderDevice, RenderQueue}, + texture::GpuImage, + Extract, Render, RenderApp, RenderSystems, + }, + window::ExitCondition, + winit::WinitPlugin, }; use bevy_args::BevyArgsPlugin; - use bevy_gaussian_splatting::{ CloudSettings, GaussianCamera, GaussianSplattingPlugin, PlanarGaussian3d, PlanarGaussian3dHandle, gaussian::interface::TestCloud, random_gaussians_3d, utils::GaussianSplattingViewer, }; +use crossbeam_channel::{Receiver, Sender}; +use std::{ + path::PathBuf, + sync::{ + atomic::{AtomicBool, Ordering}, + Arc, + }, + time::Duration, +}; -/// Derived from: https://github.com/bevyengine/bevy/pull/5550 -mod frame_capture { - pub mod image_copy { - use std::sync::Arc; +#[derive(Resource, Deref)] +struct MainWorldReceiver(Receiver>); - use bevy::prelude::*; - use bevy::render::render_asset::RenderAssets; - use bevy::render::render_graph::{ - self, NodeRunError, RenderGraph, RenderGraphContext, RenderLabel, - }; - use bevy::render::renderer::{RenderContext, RenderDevice, RenderQueue}; - use bevy::render::texture::GpuImage; - use bevy::render::{Extract, RenderApp}; +#[derive(Resource, Deref)] +struct RenderWorldSender(Sender>); - use bevy::render::render_resource::{ - Buffer, BufferDescriptor, BufferUsages, CommandEncoderDescriptor, Extent3d, MapMode, - }; - use pollster::FutureExt; - use wgpu::{Maintain, TexelCopyBufferInfo, TexelCopyBufferLayout}; - - use std::sync::atomic::{AtomicBool, Ordering}; - - pub fn receive_images( - image_copiers: Query<&ImageCopier>, - mut images: ResMut>, - render_device: Res, - ) { - for image_copier in image_copiers.iter() { - if !image_copier.enabled() { - continue; - } - // Derived from: https://sotrh.github.io/learn-wgpu/showcase/windowless/#a-triangle-without-a-window - // We need to scope the mapping variables so that we can - // unmap the buffer - async { - let buffer_slice = image_copier.buffer.slice(..); - - // NOTE: We have to create the mapping THEN device.poll() before await - // the future. Otherwise the application will freeze. - let (tx, rx) = futures_intrusive::channel::shared::oneshot_channel(); - buffer_slice.map_async(MapMode::Read, move |result| { - tx.send(result).unwrap(); - }); - render_device.poll(Maintain::Wait); - rx.receive().await.unwrap().unwrap(); - if let Some(image) = images.get_mut(&image_copier.dst_image) { - image.data = buffer_slice.get_mapped_range().to_vec().into(); - } - - image_copier.buffer.unmap(); - } - .block_on(); - } +#[derive(Debug, Default, Resource)] +struct CaptureController { + frames_to_wait: u32, + width: u32, + height: u32, +} + +impl CaptureController { + pub fn new(width: u32, height: u32) -> Self { + Self { + frames_to_wait: 40, + width, + height, } + } +} - #[derive(Debug, Hash, PartialEq, Eq, Clone, RenderLabel)] - pub struct ImageCopyLabel; +fn main() { + App::new() + .insert_resource(CaptureController::new(1920, 1080)) + .insert_resource(ClearColor(Color::srgb_u8(0, 0, 0))) + .add_plugins( + DefaultPlugins + .set(ImagePlugin::default_nearest()) + .set(WindowPlugin { + primary_window: None, + exit_condition: ExitCondition::DontExit, + ..default() + }) + // Disable WinitPlugin for headless environments + .disable::(), + ) + .add_plugins(BevyArgsPlugin::::default()) + .add_plugins(ImageCopyPlugin) + .add_plugins(CaptureFramePlugin) + .add_plugins(ScheduleRunnerPlugin::run_loop( + Duration::from_secs_f64(1.0 / 60.0), + )) + .add_plugins(GaussianSplattingPlugin) + .add_systems(Startup, setup_gaussian_cloud) + .run(); +} - pub struct ImageCopyPlugin; - impl Plugin for ImageCopyPlugin { - fn build(&self, app: &mut App) { - let render_app = app - .add_systems(Update, receive_images) - .sub_app_mut(RenderApp); +fn setup_gaussian_cloud( + mut commands: Commands, + asset_server: Res, + args: Res, + mut gaussian_assets: ResMut>, + mut images: ResMut>, + render_device: Res, + controller: Res, +) { + // Load or generate gaussian cloud + let cloud = if args.gaussian_count > 0 { + println!("Generating {} gaussians", args.gaussian_count); + gaussian_assets.add(random_gaussians_3d(args.gaussian_count)) + } else if args.input_cloud.is_some() && !args.input_cloud.as_ref().unwrap().is_empty() { + println!("Loading {:?}", args.input_cloud); + asset_server.load(&args.input_cloud.as_ref().unwrap().clone()) + } else { + gaussian_assets.add(PlanarGaussian3d::test_model()) + }; - render_app.add_systems(ExtractSchedule, image_copy_extract); + // Setup render target + let size = Extent3d { + width: controller.width, + height: controller.height, + ..default() + }; - let mut graph = render_app - .world_mut() - .get_resource_mut::() - .unwrap(); + let mut render_target_image = Image::new_target_texture( + size.width, + size.height, + TextureFormat::bevy_default(), + ); + render_target_image.texture_descriptor.usage |= TextureUsages::COPY_SRC; + let render_target_handle = images.add(render_target_image); - graph.add_node(ImageCopyLabel, ImageCopyDriver); - graph.add_node_edge(ImageCopyLabel, bevy::render::graph::CameraDriverLabel); - } - } + let cpu_image = Image::new_target_texture( + size.width, + size.height, + TextureFormat::bevy_default(), + ); + let cpu_image_handle = images.add(cpu_image); - #[derive(Clone, Default, Resource, Deref, DerefMut)] - pub struct ImageCopiers(pub Vec); + commands.spawn(( + PlanarGaussian3dHandle(cloud), + CloudSettings::default(), + Name::new("gaussian_cloud"), + )); - #[derive(Clone, Component)] - pub struct ImageCopier { - buffer: Buffer, - enabled: Arc, - src_image: Handle, - dst_image: Handle, - } + commands.spawn(( + Camera3d::default(), + Camera { + target: RenderTarget::Image(render_target_handle.clone().into()), + ..default() + }, + Transform::from_translation(Vec3::new(0.0, 1.5, 5.0)), + Tonemapping::None, + GaussianCamera::default(), + )); - impl ImageCopier { - pub fn new( - src_image: Handle, - dst_image: Handle, - size: Extent3d, - render_device: &RenderDevice, - ) -> ImageCopier { - let padded_bytes_per_row = - RenderDevice::align_copy_bytes_per_row((size.width) as usize) * 4; - - let cpu_buffer = render_device.create_buffer(&BufferDescriptor { - label: None, - size: padded_bytes_per_row as u64 * size.height as u64, - usage: BufferUsages::MAP_READ | BufferUsages::COPY_DST, - mapped_at_creation: false, - }); - - ImageCopier { - buffer: cpu_buffer, - src_image, - dst_image, - enabled: Arc::new(AtomicBool::new(true)), - } - } + // Spawn image copier for GPU->CPU transfer + commands.spawn(ImageCopier::new( + render_target_handle, + size, + &render_device, + )); - pub fn enabled(&self) -> bool { - self.enabled.load(Ordering::Relaxed) - } - } + // Spawn image to save + commands.spawn(ImageToSave(cpu_image_handle)); +} - pub fn image_copy_extract( - mut commands: Commands, - image_copiers: Extract>, - ) { - commands.insert_resource(ImageCopiers( - image_copiers.iter().cloned().collect::>(), - )); - } +/// Plugin for copying images from GPU to CPU +pub struct ImageCopyPlugin; - #[derive(Default)] - pub struct ImageCopyDriver; - - impl render_graph::Node for ImageCopyDriver { - fn run( - &self, - _graph: &mut RenderGraphContext, - render_context: &mut RenderContext, - world: &World, - ) -> Result<(), NodeRunError> { - let image_copiers = world.get_resource::().unwrap(); - let gpu_images = world.get_resource::>().unwrap(); - - for image_copier in image_copiers.iter() { - if !image_copier.enabled() { - continue; - } - - let src_image = gpu_images.get(&image_copier.src_image).unwrap(); - - let mut encoder = render_context - .render_device() - .create_command_encoder(&CommandEncoderDescriptor::default()); - - let block_dimensions = src_image.texture_format.block_dimensions(); - let block_size = src_image.texture_format.block_copy_size(None).unwrap(); - - let padded_bytes_per_row = RenderDevice::align_copy_bytes_per_row( - (src_image.size.width as usize / block_dimensions.0 as usize) - * block_size as usize, - ); - - let texture_extent = Extent3d { - width: src_image.size.width as u32, - height: src_image.size.height as u32, - depth_or_array_layers: 1, - }; - - encoder.copy_texture_to_buffer( - src_image.texture.as_image_copy(), - TexelCopyBufferInfo { - buffer: &image_copier.buffer, - layout: TexelCopyBufferLayout { - offset: 0, - bytes_per_row: Some( - std::num::NonZeroU32::new(padded_bytes_per_row as u32) - .unwrap() - .into(), - ), - rows_per_image: None, - }, - }, - texture_extent, - ); - - let render_queue = world.get_resource::().unwrap(); - render_queue.submit(std::iter::once(encoder.finish())); - } - - Ok(()) - } - } - } - pub mod scene { - use std::path::PathBuf; +impl Plugin for ImageCopyPlugin { + fn build(&self, app: &mut App) { + let (sender, receiver) = crossbeam_channel::unbounded(); - use bevy::{ - app::AppExit, - prelude::*, - render::{camera::RenderTarget, renderer::RenderDevice}, - }; - use wgpu::{Extent3d, TextureDescriptor, TextureDimension, TextureFormat, TextureUsages}; + let render_app = app + .insert_resource(MainWorldReceiver(receiver)) + .sub_app_mut(RenderApp); - use super::image_copy::ImageCopier; + let mut graph = render_app.world_mut().resource_mut::(); + graph.add_node(ImageCopy, ImageCopyDriver); + graph.add_node_edge(bevy::render::graph::CameraDriverLabel, ImageCopy); - #[derive(Component, Default)] - pub struct CaptureCamera; + render_app + .insert_resource(RenderWorldSender(sender)) + .add_systems(ExtractSchedule, extract_image_copiers) + .add_systems( + Render, + receive_image_from_buffer.after(RenderSystems::Render), + ); + } +} - #[derive(Component, Deref, DerefMut)] - struct ImageToSave(Handle); +pub struct CaptureFramePlugin; - pub struct CaptureFramePlugin; - impl Plugin for CaptureFramePlugin { - fn build(&self, app: &mut App) { - app.add_systems(PostUpdate, update); - } - } +impl Plugin for CaptureFramePlugin { + fn build(&self, app: &mut App) { + app.add_systems(PostUpdate, save_captured_frame); + } +} - #[derive(Debug, Default, Resource, Event)] - pub struct SceneController { - state: SceneState, - name: String, - width: u32, - height: u32, - single_image: bool, - } +#[derive(Clone, Component)] +struct ImageCopier { + buffer: Buffer, + enabled: Arc, + src_image: Handle, +} - impl SceneController { - pub fn new(width: u32, height: u32, single_image: bool) -> SceneController { - SceneController { - state: SceneState::BuildScene, - name: String::from(""), - width, - height, - single_image, - } - } +impl ImageCopier { + pub fn new(src_image: Handle, size: Extent3d, render_device: &RenderDevice) -> Self { + let padded_bytes_per_row = + RenderDevice::align_copy_bytes_per_row(size.width as usize) * 4; + + let buffer = render_device.create_buffer(&BufferDescriptor { + label: Some("image_copier_buffer"), + size: padded_bytes_per_row as u64 * size.height as u64, + usage: BufferUsages::MAP_READ | BufferUsages::COPY_DST, + mapped_at_creation: false, + }); + + Self { + buffer, + src_image, + enabled: Arc::new(AtomicBool::new(true)), } + } - #[derive(Debug, Default)] - pub enum SceneState { - #[default] - BuildScene, - Render(u32), - } + pub fn enabled(&self) -> bool { + self.enabled.load(Ordering::Relaxed) + } +} - pub fn setup_render_target( - commands: &mut Commands, - images: &mut ResMut>, - render_device: &Res, - scene_controller: &mut ResMut, - pre_roll_frames: u32, - scene_name: String, - ) -> RenderTarget { - let size = Extent3d { - width: scene_controller.width, - height: scene_controller.height, - ..Default::default() - }; +#[derive(Clone, Default, Resource, Deref)] +struct ImageCopiers(Vec); - // This is the texture that will be rendered to. - let mut render_target_image = Image { - texture_descriptor: TextureDescriptor { - label: None, - size, - dimension: TextureDimension::D2, - format: TextureFormat::Rgba8UnormSrgb, - mip_level_count: 1, - sample_count: 1, - usage: TextureUsages::COPY_SRC - | TextureUsages::COPY_DST - | TextureUsages::TEXTURE_BINDING - | TextureUsages::RENDER_ATTACHMENT, - view_formats: &[], - }, - ..Default::default() - }; - render_target_image.resize(size); - let render_target_image_handle = images.add(render_target_image); - - // This is the texture that will be copied to. - let mut cpu_image = Image { - texture_descriptor: TextureDescriptor { - label: None, - size, - dimension: TextureDimension::D2, - format: TextureFormat::Rgba8UnormSrgb, - mip_level_count: 1, - sample_count: 1, - usage: TextureUsages::COPY_DST | TextureUsages::TEXTURE_BINDING, - view_formats: &[], - }, - ..Default::default() - }; - cpu_image.resize(size); - let cpu_image_handle = images.add(cpu_image); +fn extract_image_copiers( + mut commands: Commands, + image_copiers: Extract>, +) { + commands.insert_resource(ImageCopiers( + image_copiers.iter().cloned().collect(), + )); +} - commands.spawn(ImageCopier::new( - render_target_image_handle.clone(), - cpu_image_handle.clone(), - size, - render_device, - )); +/// RenderGraph label +#[derive(Debug, PartialEq, Eq, Clone, Hash, RenderLabel)] +struct ImageCopy; + +#[derive(Default)] +struct ImageCopyDriver; + +impl render_graph::Node for ImageCopyDriver { + fn run( + &self, + _graph: &mut RenderGraphContext, + render_context: &mut RenderContext, + world: &World, + ) -> Result<(), NodeRunError> { + let image_copiers = world.get_resource::().unwrap(); + let gpu_images = world.get_resource::>().unwrap(); + + for image_copier in image_copiers.iter() { + if !image_copier.enabled() { + continue; + } - commands.spawn(ImageToSave(cpu_image_handle)); + let Some(src_image) = gpu_images.get(&image_copier.src_image) else { + continue; + }; - scene_controller.state = SceneState::Render(pre_roll_frames); - scene_controller.name = scene_name; - RenderTarget::Image(render_target_image_handle.into()) - } + let mut encoder = render_context + .render_device() + .create_command_encoder(&CommandEncoderDescriptor::default()); + + let block_dimensions = src_image.texture_format.block_dimensions(); + let block_size = src_image.texture_format.block_copy_size(None).unwrap(); + + let padded_bytes_per_row = RenderDevice::align_copy_bytes_per_row( + (src_image.size.width as usize / block_dimensions.0 as usize) * block_size as usize, + ); + + encoder.copy_texture_to_buffer( + src_image.texture.as_image_copy(), + TexelCopyBufferInfo { + buffer: &image_copier.buffer, + layout: TexelCopyBufferLayout { + offset: 0, + bytes_per_row: Some( + std::num::NonZero::::new(padded_bytes_per_row as u32) + .unwrap() + .into(), + ), + rows_per_image: None, + }, + }, + src_image.size, + ); - fn update( - images_to_save: Query<&ImageToSave>, - mut images: ResMut>, - mut scene_controller: ResMut, - mut app_exit_writer: EventWriter, - ) { - if let SceneState::Render(n) = scene_controller.state { - if n < 1 { - for (i, image) in images_to_save.iter().enumerate() { - let img_bytes = images.get_mut(image.id()).unwrap(); - - let img = match img_bytes.clone().try_into_dynamic() { - Ok(img) => img.to_rgba8(), - Err(e) => panic!("Failed to create image buffer {e:?}"), - }; - - let images_dir = - PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("headless_output"); - std::fs::create_dir_all(&images_dir).unwrap(); - - let image_path = images_dir.join(format!("{i}.png")); - if let Err(e) = img.save(image_path) { - panic!("Failed to save image: {}", e); - }; - } - if scene_controller.single_image { - app_exit_writer.write(AppExit::Success); - } - } else { - scene_controller.state = SceneState::Render(n - 1); - } - } + let render_queue = world.get_resource::().unwrap(); + render_queue.submit(std::iter::once(encoder.finish())); } + + Ok(()) } } -fn setup_gaussian_cloud( - mut commands: Commands, - asset_server: Res, - args: Res, - mut gaussian_assets: ResMut>, - mut scene_controller: ResMut, - mut images: ResMut>, +fn receive_image_from_buffer( + image_copiers: Res, render_device: Res, + sender: Res, ) { - let cloud: Handle; + for image_copier in image_copiers.0.iter() { + if !image_copier.enabled() { + continue; + } - if args.gaussian_count > 0 { - println!("generating {} gaussians", args.gaussian_count); - cloud = gaussian_assets.add(random_gaussians_3d(args.gaussian_count)); - } else if args.input_cloud.is_some() && !args.input_cloud.as_ref().unwrap().is_empty() { - println!("loading {:?}", args.input_cloud); - cloud = asset_server.load(&args.input_cloud.as_ref().unwrap().clone()); - } else { - cloud = gaussian_assets.add(PlanarGaussian3d::test_model()); - } + let buffer_slice = image_copier.buffer.slice(..); + let (tx, rx) = crossbeam_channel::bounded(1); - let render_target = frame_capture::scene::setup_render_target( - &mut commands, - &mut images, - &render_device, - &mut scene_controller, - 15, - String::from("main_scene"), - ); + buffer_slice.map_async(MapMode::Read, move |result| match result { + Ok(()) => tx.send(()).expect("Failed to send map result"), + Err(err) => panic!("Failed to map buffer: {err}"), + }); - commands.spawn(( - PlanarGaussian3dHandle(cloud), - CloudSettings::default(), - Name::new("gaussian_cloud"), - )); + render_device + .poll(PollType::Wait) + .expect("Failed to poll device"); - commands.spawn(( - Camera3d::default(), - Transform::from_translation(Vec3::new(0.0, 1.5, 5.0)), - Tonemapping::None, - Camera { - target: render_target, - ..default() - }, - GaussianCamera::default(), - )); -} + rx.recv().expect("Failed to receive buffer map"); -pub struct AppConfig { - width: u32, - height: u32, - single_image: bool, + let _ = sender.send(buffer_slice.get_mapped_range().to_vec()); + image_copier.buffer.unmap(); + } } -fn headless_app() { - let mut app = App::new(); +#[derive(Component, Deref)] +struct ImageToSave(Handle); - let config = AppConfig { - width: 1920, - height: 1080, - single_image: true, - }; +fn save_captured_frame( + images_to_save: Query<&ImageToSave>, + receiver: Res, + mut images: ResMut>, + mut controller: ResMut, + mut app_exit: MessageWriter, +) { + if controller.frames_to_wait > 0 { + controller.frames_to_wait -= 1; + while receiver.try_recv().is_ok() {} + return; + } - // setup frame capture - app.insert_resource(frame_capture::scene::SceneController::new( - config.width, - config.height, - config.single_image, - )); - app.insert_resource(ClearColor(Color::srgb_u8(0, 0, 0))); - - app.add_plugins( - DefaultPlugins - .set(ImagePlugin::default_nearest()) - .set(WindowPlugin { - primary_window: None, - exit_condition: bevy::window::ExitCondition::DontExit, - close_when_requested: false, - }), - ); - app.add_plugins(BevyArgsPlugin::::default()); + // Try to receive image data + let mut image_data = Vec::new(); + while let Ok(data) = receiver.try_recv() { + image_data = data; + } - // headless frame capture - app.add_plugins(frame_capture::image_copy::ImageCopyPlugin); - app.add_plugins(frame_capture::scene::CaptureFramePlugin); + if image_data.is_empty() { + return; + } - app.add_plugins(ScheduleRunnerPlugin::run_loop( - core::time::Duration::from_secs_f64(1.0 / 60.0), - )); + for image_handle in images_to_save.iter() { + let Some(image) = images.get_mut(image_handle.id()) else { + continue; + }; - // setup for gaussian splatting - app.add_plugins(GaussianSplattingPlugin); + let row_bytes = image.width() as usize + * image.texture_descriptor.format.pixel_size().unwrap(); + let aligned_row_bytes = RenderDevice::align_copy_bytes_per_row(row_bytes); + + if row_bytes == aligned_row_bytes { + image.data.as_mut().unwrap().clone_from(&image_data); + } else { + // Shrink to original size + image.data = Some( + image_data + .chunks(aligned_row_bytes) + .take(image.height() as usize) + .flat_map(|row| &row[..row_bytes.min(row.len())]) + .cloned() + .collect(), + ); + } - app.init_resource::(); - app.add_event::(); + let img = match image.clone().try_into_dynamic() { + Ok(img) => img.to_rgba8(), + Err(e) => panic!("Failed to create image: {e:?}"), + }; - app.add_systems(Startup, setup_gaussian_cloud); + let output_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("headless_output"); + std::fs::create_dir_all(&output_dir).unwrap(); + let output_path = output_dir.join("0.png"); - app.run(); -} + info!("Saving screenshot to {:?}", output_path); + if let Err(e) = img.save(&output_path) { + panic!("Failed to save image: {e}"); + } + } -pub fn main() { - headless_app(); -} + app_exit.write(AppExit::Success); +} \ No newline at end of file diff --git a/examples/multi_camera.rs b/examples/multi_camera.rs index 3ec20a2a..ff6b33da 100644 --- a/examples/multi_camera.rs +++ b/examples/multi_camera.rs @@ -1,6 +1,5 @@ use bevy::{ - app::AppExit, core_pipeline::tonemapping::Tonemapping, prelude::*, render::camera::Viewport, - window::WindowResized, + app::AppExit, camera::Viewport, core_pipeline::tonemapping::Tonemapping, prelude::*, window::WindowResized }; use bevy_args::{BevyArgsPlugin, parse_args}; use bevy_inspector_egui::{bevy_egui::EguiPlugin, quick::WorldInspectorPlugin}; @@ -27,7 +26,10 @@ fn multi_camera_app() { mode: bevy::window::WindowMode::Windowed, present_mode: bevy::window::PresentMode::AutoVsync, prevent_default_event_handling: false, - resolution: (config.width, config.height).into(), + resolution: bevy::window::WindowResolution::new( + config.width as u32, + config.height as u32 + ), title: config.name.clone(), ..default() }), @@ -38,9 +40,7 @@ fn multi_camera_app() { app.add_plugins(PanOrbitCameraPlugin); if config.editor { - app.add_plugins(EguiPlugin { - enable_multipass_for_primary_context: true, - }); + app.add_plugins(EguiPlugin::default()); app.add_plugins(WorldInspectorPlugin::new()); } @@ -226,7 +226,7 @@ struct CameraPosition { fn set_camera_viewports( windows: Query<&Window>, - mut resize_events: EventReader, + mut resize_events: MessageReader, mut cameras: Query<(&CameraPosition, &mut Camera), With>, ) { for resize_event in resize_events.read() { @@ -243,7 +243,7 @@ fn set_camera_viewports( } } -fn esc_close(keys: Res>, mut exit: EventWriter) { +fn esc_close(keys: Res>, mut exit: MessageWriter) { if keys.just_pressed(KeyCode::Escape) { exit.write(AppExit::Success); } diff --git a/src/gaussian/cloud.rs b/src/gaussian/cloud.rs index dd8cf423..b5538ccf 100644 --- a/src/gaussian/cloud.rs +++ b/src/gaussian/cloud.rs @@ -1,13 +1,8 @@ use bevy::{ - ecs::{component::HookContext, world::DeferredWorld}, + camera::{primitives::Aabb, visibility::{add_visibility_class, NoFrustumCulling, VisibilityClass, VisibilitySystems}}, + ecs::{lifecycle::HookContext, world::DeferredWorld}, + math::bounding::BoundingVolume, prelude::*, - render::{ - primitives::Aabb, - view::{ - VisibilityClass, - visibility::{NoFrustumCulling, VisibilitySystems, add_visibility_class}, - }, - }, }; use bevy_interleave::prelude::*; @@ -53,8 +48,11 @@ pub fn calculate_bounds( { for (entity, cloud_handle) in &without_aabb { if let Some(cloud) = gaussian_clouds.get(cloud_handle.handle()) { - if let Some(aabb) = cloud.compute_aabb() { - commands.entity(entity).try_insert(aabb); + if let Some(aabb3d) = cloud.compute_aabb() { + commands.entity(entity).try_insert(Aabb { + center: aabb3d.center(), + half_extents: aabb3d.half_size(), + }); } } } diff --git a/src/gaussian/interface.rs b/src/gaussian/interface.rs index d04a7f3b..03b1b982 100644 --- a/src/gaussian/interface.rs +++ b/src/gaussian/interface.rs @@ -1,4 +1,4 @@ -use bevy::{prelude::*, render::primitives::Aabb}; +use bevy::{prelude::*, math::bounding::Aabb3d}; use bevy_interleave::prelude::Planar; #[cfg(feature = "sort_rayon")] @@ -19,7 +19,7 @@ where self.len_sqrt_ceil().pow(2) } - fn compute_aabb(&self) -> Option { + fn compute_aabb(&self) -> Option { if self.is_empty() { return None; } @@ -56,7 +56,7 @@ where } } - Aabb::from_min_max(min, max).into() + Some(Aabb3d { min: min.into(), max: max.into() }) } fn visibility(&self, index: usize) -> f32; diff --git a/src/material/classification.rs b/src/material/classification.rs index 215611b1..a48e5642 100644 --- a/src/material/classification.rs +++ b/src/material/classification.rs @@ -1,10 +1,10 @@ use bevy::{ - asset::{load_internal_asset, weak_handle}, + asset::{load_internal_asset, uuid_handle}, prelude::*, }; const CLASSIFICATION_SHADER_HANDLE: Handle = - weak_handle!("8b453dba-5095-47f2-9c60-ae369fe51579"); + uuid_handle!("8b453dba-5095-47f2-9c60-ae369fe51579"); pub struct ClassificationMaterialPlugin; diff --git a/src/material/depth.rs b/src/material/depth.rs index 0fdf87f4..9e4b4cb0 100644 --- a/src/material/depth.rs +++ b/src/material/depth.rs @@ -1,9 +1,9 @@ use bevy::{ - asset::{load_internal_asset, weak_handle}, + asset::{load_internal_asset, uuid_handle}, prelude::*, }; -const DEPTH_SHADER_HANDLE: Handle = weak_handle!("72e596c7-6226-4366-af26-2acceb34c8a4"); +const DEPTH_SHADER_HANDLE: Handle = uuid_handle!("72e596c7-6226-4366-af26-2acceb34c8a4"); pub struct DepthMaterialPlugin; diff --git a/src/material/optical_flow.rs b/src/material/optical_flow.rs index 51d4401c..3a2bdda3 100644 --- a/src/material/optical_flow.rs +++ b/src/material/optical_flow.rs @@ -1,10 +1,10 @@ use bevy::{ - asset::{load_internal_asset, weak_handle}, + asset::{load_internal_asset, uuid_handle}, prelude::*, }; const OPTICAL_FLOW_SHADER_HANDLE: Handle = - weak_handle!("e25fefbf-dd95-46f2-89bb-91175f6bb4a6"); + uuid_handle!("e25fefbf-dd95-46f2-89bb-91175f6bb4a6"); pub struct OpticalFlowMaterialPlugin; diff --git a/src/material/position.rs b/src/material/position.rs index 2036af47..10969598 100644 --- a/src/material/position.rs +++ b/src/material/position.rs @@ -1,9 +1,9 @@ use bevy::{ - asset::{load_internal_asset, weak_handle}, + asset::{load_internal_asset, uuid_handle}, prelude::*, }; -const POSITION_SHADER_HANDLE: Handle = weak_handle!("91ad4ad8-5e95-4f30-a262-7d3de4abd5a8"); +const POSITION_SHADER_HANDLE: Handle = uuid_handle!("91ad4ad8-5e95-4f30-a262-7d3de4abd5a8"); pub struct PositionMaterialPlugin; diff --git a/src/material/spherical_harmonics.rs b/src/material/spherical_harmonics.rs index fe5ad034..2de67428 100644 --- a/src/material/spherical_harmonics.rs +++ b/src/material/spherical_harmonics.rs @@ -2,7 +2,7 @@ use std::marker::Copy; use bevy::{ - asset::{load_internal_asset, weak_handle}, + asset::{load_internal_asset, uuid_handle}, prelude::*, render::render_resource::ShaderType, }; @@ -15,7 +15,7 @@ use serde::{Deserialize, Serialize, Serializer, ser::SerializeTuple}; use crate::math::pad_4; const SPHERICAL_HARMONICS_SHADER_HANDLE: Handle = - weak_handle!("879b9cd3-ba20-4030-a8f3-adda0a042ffe"); + uuid_handle!("879b9cd3-ba20-4030-a8f3-adda0a042ffe"); pub struct SphericalHarmonicCoefficientsPlugin; diff --git a/src/material/spherindrical_harmonics.rs b/src/material/spherindrical_harmonics.rs index 0ef5b375..0cdc79ee 100644 --- a/src/material/spherindrical_harmonics.rs +++ b/src/material/spherindrical_harmonics.rs @@ -2,7 +2,7 @@ use std::marker::Copy; use bevy::{ - asset::{load_internal_asset, weak_handle}, + asset::{load_internal_asset, uuid_handle}, prelude::*, render::render_resource::ShaderType, }; @@ -37,7 +37,7 @@ static_assertions::const_assert_eq!(WASTE, 0); pub const SH_4D_VEC4_PLANES: usize = SH_4D_COEFF_COUNT / 4; const SPHERINDRICAL_HARMONICS_SHADER_HANDLE: Handle = - weak_handle!("0b379c3c-daa3-48c5-bf4b-0262b9941a0a"); + uuid_handle!("0b379c3c-daa3-48c5-bf4b-0262b9941a0a"); pub struct SpherindricalHarmonicCoefficientsPlugin; impl Plugin for SpherindricalHarmonicCoefficientsPlugin { diff --git a/src/morph/interpolate.rs b/src/morph/interpolate.rs index 2812cb63..1ff1b37b 100644 --- a/src/morph/interpolate.rs +++ b/src/morph/interpolate.rs @@ -1,17 +1,17 @@ use std::{any::TypeId, marker::PhantomData}; use bevy::{ - asset::{Assets, LoadState, load_internal_asset, weak_handle}, + asset::{Assets, LoadState, load_internal_asset, uuid_handle}, core_pipeline::{ core_3d::graph::{Core3d, Node3d}, prepass::PreviousViewUniformOffset, }, prelude::*, render::{ - Extract, ExtractSchedule, Render, RenderApp, RenderSet, + Extract, ExtractSchedule, Render, RenderApp, RenderSystems, extract_component::DynamicUniformIndex, render_asset::RenderAssets, - render_graph::{Node, NodeRunError, RenderGraphApp, RenderGraphContext, RenderLabel}, + render_graph::{Node, NodeRunError, RenderGraphContext, RenderLabel, RenderGraphExt}, render_resource::{ BindGroup, BindGroupLayout, CachedComputePipelineId, CachedPipelineState, ComputePassDescriptor, ComputePipelineDescriptor, PipelineCache, @@ -33,7 +33,7 @@ use crate::{ }; const INTERPOLATE_SHADER_HANDLE: Handle = - weak_handle!("b0b03f7e-9ec2-4e7d-bc96-3ddc1a8c5942"); + uuid_handle!("b0b03f7e-9ec2-4e7d-bc96-3ddc1a8c5942"); const WORKGROUP_SIZE: u32 = 256; #[derive(Debug, Hash, PartialEq, Eq, Clone, RenderLabel)] @@ -75,7 +75,7 @@ where .add_systems(ExtractSchedule, extract_gaussian_interpolate::) .add_systems( Render, - (queue_gaussian_interpolate_bind_groups::.in_set(RenderSet::Queue),), + (queue_gaussian_interpolate_bind_groups::.in_set(RenderSystems::Queue),), ); } @@ -192,7 +192,7 @@ where push_constant_ranges: vec![], shader: INTERPOLATE_SHADER_HANDLE, shader_defs, - entry_point: "interpolate_gaussians".into(), + entry_point: Some("interpolate_gaussians".into()), zero_initialize_workgroup_memory: true, }); diff --git a/src/morph/particle.rs b/src/morph/particle.rs index aa693730..860acec8 100644 --- a/src/morph/particle.rs +++ b/src/morph/particle.rs @@ -3,12 +3,12 @@ use std::marker::Copy; #[allow(unused_imports)] use bevy::{ - asset::{LoadState, load_internal_asset, weak_handle}, + asset::{LoadState, load_internal_asset, uuid_handle}, core_pipeline::core_3d::graph::{Core3d, Node3d}, ecs::system::{SystemParamItem, lifetimeless::SRes}, prelude::*, render::{ - Extract, Render, RenderApp, RenderSet, + Extract, Render, RenderApp, RenderSystems, render_asset::{ PrepareAssetError, RenderAsset, RenderAssetPlugin, RenderAssetUsages, RenderAssets, }, @@ -36,7 +36,7 @@ use crate::{ }, }; -const PARTICLE_SHADER_HANDLE: Handle = weak_handle!("00000000-0000-0000-0000-00369c79ab8f"); +const PARTICLE_SHADER_HANDLE: Handle = uuid_handle!("00000000-0000-0000-0000-00369c79ab8f"); #[derive(Debug, Hash, PartialEq, Eq, Clone, RenderLabel)] pub struct MorphLabel; @@ -60,7 +60,7 @@ impl Plugin for ParticleBehaviorPlugin { // TODO: avoid duplicating the extract system render_app.add_systems( Render, - (queue_particle_behavior_bind_group::.in_set(RenderSet::Queue),), + (queue_particle_behavior_bind_group::.in_set(RenderSystems::Queue),), ); } @@ -190,7 +190,7 @@ impl FromWorld for ParticleBehaviorPipeline { push_constant_ranges: vec![], shader: PARTICLE_SHADER_HANDLE, shader_defs: shader_defs.clone(), - entry_point: "apply_particle_behaviors".into(), + entry_point: Some("apply_particle_behaviors".into()), zero_initialize_workgroup_memory: true, }); diff --git a/src/query/select.rs b/src/query/select.rs index b52c848b..8e95f165 100644 --- a/src/query/select.rs +++ b/src/query/select.rs @@ -45,8 +45,8 @@ impl Plugin for SelectPlugin { fn build(&self, app: &mut App) { app.register_type::