From 03453a0ec37eab2b5b4e91935b97a715e71a74ce Mon Sep 17 00:00:00 2001 From: Ho <william.ho@etu.hesge.ch> Date: Fri, 13 Oct 2023 15:48:07 +0200 Subject: [PATCH] menu_init --- game/Cargo.lock | 2718 ++++++++--------- game/Cargo.toml | 2 +- game/assets/pokeball.png | Bin 0 -> 73291 bytes game/assets/textures/Game Icons/exitRight.png | Bin 0 -> 384 bytes game/assets/textures/Game Icons/right.png | Bin 0 -> 368 bytes game/assets/textures/Game Icons/wrench.png | Bin 0 -> 637 bytes game/src/main.rs | 916 +++++- game/target/.rustc_info.json | 2 +- prof_png/pokeball.png | Bin 0 -> 73291 bytes 9 files changed, 2164 insertions(+), 1474 deletions(-) create mode 100644 game/assets/pokeball.png create mode 100644 game/assets/textures/Game Icons/exitRight.png create mode 100644 game/assets/textures/Game Icons/right.png create mode 100644 game/assets/textures/Game Icons/wrench.png create mode 100644 prof_png/pokeball.png diff --git a/game/Cargo.lock b/game/Cargo.lock index 5aad374..1ee3696 100644 --- a/game/Cargo.lock +++ b/game/Cargo.lock @@ -2,12 +2,6 @@ # It is not intended for manual editing. version = 3 -[[package]] -name = "Inflector" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" - [[package]] name = "ab_glyph" version = "0.2.22" @@ -25,23 +19,80 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046" [[package]] -name = "adler32" -version = "1.2.0" +name = "accesskit" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" +checksum = "76eb1adf08c5bcaa8490b9851fd53cca27fa9880076f178ea9d29f05196728a8" [[package]] -name = "ahash" -version = "0.4.7" +name = "accesskit_consumer" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04bb4d9e4772fe0d47df57d0d5dbe5d85dd05e2f37ae1ddb6b105e76be58fb00" +dependencies = [ + "accesskit", +] + +[[package]] +name = "accesskit_macos" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "134d0acf6acb667c89d3332999b1a5df4edbc8d6113910f392ebb73f2b03bb56" +dependencies = [ + "accesskit", + "accesskit_consumer", + "objc2", + "once_cell", +] + +[[package]] +name = "accesskit_windows" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9eac0a7f2d7cd7a93b938af401d3d8e8b7094217989a7c25c55a953023436e31" +dependencies = [ + "accesskit", + "accesskit_consumer", + "arrayvec", + "once_cell", + "paste", + "windows 0.48.0", +] + +[[package]] +name = "accesskit_winit" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "825d23acee1bd6d25cbaa3ca6ed6e73faf24122a774ec33d52c5c86c6ab423c0" +dependencies = [ + "accesskit", + "accesskit_macos", + "accesskit_windows", + "winit", +] + +[[package]] +name = "addr2line" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +dependencies = [ + "gimli", +] + +[[package]] +name = "adler" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "739f4a8db6605981345c5654f3a85b056ce52f37a39d34da03f25bf2151ea16e" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "ahash" -version = "0.7.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" +checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f" dependencies = [ + "cfg-if", "getrandom", "once_cell", "version_check", @@ -56,16 +107,22 @@ dependencies = [ "memchr", ] +[[package]] +name = "allocator-api2" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" + [[package]] name = "alsa" -version = "0.5.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75c4da790adcb2ce5e758c064b4f3ec17a30349f9961d3e5e6c9688b052a9e18" +checksum = "e2562ad8dcf0f789f65c6fdaad8a8a9708ed6b488e649da28c01656ad66b8b47" dependencies = [ "alsa-sys", "bitflags 1.3.2", "libc", - "nix 0.20.0", + "nix 0.24.3", ] [[package]] @@ -79,36 +136,42 @@ dependencies = [ ] [[package]] -name = "android_log-sys" -version = "0.1.2" +name = "android-activity" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8052e2d8aabbb8d556d6abbcce2a22b9590996c5f849b9c7ce4544a2e3b984e" +checksum = "64529721f27c2314ced0890ce45e469574a73e5e6fdd6e9da1860eb29285f5e0" +dependencies = [ + "android-properties", + "bitflags 1.3.2", + "cc", + "jni-sys", + "libc", + "log", + "ndk", + "ndk-context", + "ndk-sys", + "num_enum 0.6.1", +] [[package]] -name = "android_log-sys" -version = "0.2.0" +name = "android-properties" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85965b6739a430150bdd138e2374a98af0c3ee0d030b3bb7fc3bddff58d0102e" +checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" [[package]] -name = "android_logger" -version = "0.8.6" +name = "android_log-sys" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cbd542dd180566fad88fd2729a53a62a734843c626638006a9d63ec0688484e" -dependencies = [ - "android_log-sys 0.1.2", - "env_logger", - "lazy_static", - "log", -] +checksum = "5ecc8056bf6ab9892dcd53216c83d1597487d7dacac16c8df6b877d127df9937" [[package]] -name = "ansi_term" -version = "0.12.1" +name = "android_system_properties" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" dependencies = [ - "winapi 0.3.9", + "libc", ] [[package]] @@ -128,17 +191,17 @@ dependencies = [ [[package]] name = "arrayvec" -version = "0.5.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" [[package]] name = "ash" -version = "0.31.0" +version = "0.37.3+1.3.251" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c69a8137596e84c22d57f3da1b5de1d4230b1742a710091c85f4d7ce50f00f38" +checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a" dependencies = [ - "libloading 0.6.7", + "libloading 0.7.4", ] [[package]] @@ -188,10 +251,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] -name = "base-x" -version = "0.2.11" +name = "backtrace" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", +] [[package]] name = "base64" @@ -199,44 +271,76 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +[[package]] +name = "base64" +version = "0.21.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" + [[package]] name = "bevy" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6b14f8ba7c373fdf7bd27547bb95f2849b2569bf02bbf3d19ca54e9d692de4f" +checksum = "91c6d3ec4f89e85294dc97334c5b271ddc301fdf67ac9bb994fe44d9273e6ed7" dependencies = [ "bevy_internal", - "syn 1.0.65", ] [[package]] -name = "bevy-glsl-to-spirv" -version = "0.2.1" +name = "bevy_a11y" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "132c9e35a77c5395951f6d25fa2c52ee92296353426df4f961e60f3ff47e2e42" +dependencies = [ + "accesskit", + "bevy_app", + "bevy_derive", + "bevy_ecs", +] + +[[package]] +name = "bevy_animation" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d5f2f58f0aec3c50a20799792c3705e80dd7df327e79791cacec197e84e5e61" +checksum = "f44eae3f1c35a87e38ad146f72317f19ce7616dad8bbdfb88ee752c1282d28c5" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_core", + "bevy_ecs", + "bevy_hierarchy", + "bevy_math", + "bevy_reflect", + "bevy_render", + "bevy_time", + "bevy_transform", + "bevy_utils", +] [[package]] name = "bevy_app" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "845be45f00d9c031071f8c68f7681bf791796634efa5f58937275337154cb019" +checksum = "f557a7d59e1e16892d7544fc37316506ee598cb5310ef0365125a30783c11531" dependencies = [ "bevy_derive", "bevy_ecs", "bevy_reflect", + "bevy_tasks", "bevy_utils", - "serde", + "downcast-rs", "wasm-bindgen", "web-sys", ] [[package]] name = "bevy_asset" -version = "0.5.1" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd798cfbed1fcd406c9b3c978a8cb0a278aa03c4c8abd6edf460ee7cad0987e0" +checksum = "9714af523da4cdf58c42a317e5ed40349708ad954a18533991fd64c8ae0a6f68" dependencies = [ "anyhow", + "async-channel", "bevy_app", "bevy_diagnostic", "bevy_ecs", @@ -244,14 +348,13 @@ dependencies = [ "bevy_reflect", "bevy_tasks", "bevy_utils", + "bevy_winit", "crossbeam-channel", "downcast-rs", + "fastrand 1.9.0", "js-sys", - "ndk-glue 0.2.1", "notify", - "parking_lot", - "rand", - "ron", + "parking_lot 0.12.1", "serde", "thiserror", "wasm-bindgen", @@ -261,305 +364,453 @@ dependencies = [ [[package]] name = "bevy_audio" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ca3cf9ce76696665e37a68b27ad6f6b0e2d0d85ccad36d8f018d3006812dbde" +checksum = "4de308bd63a2f7a0b77ffeb7cf00cc185ec01393c5db2091fe03964f97152749" dependencies = [ "anyhow", "bevy_app", "bevy_asset", + "bevy_derive", "bevy_ecs", + "bevy_math", "bevy_reflect", + "bevy_transform", "bevy_utils", - "parking_lot", + "oboe", + "parking_lot 0.12.1", "rodio", ] [[package]] name = "bevy_core" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa5b6d7f68752cfb5b498fc5ea9ad5cfb5de871cdd4d894f2e046fef2e2898ea" +checksum = "3d5272321be5fcf5ce2fb16023bc825bb10dfcb71611117296537181ce950f48" dependencies = [ "bevy_app", - "bevy_derive", "bevy_ecs", "bevy_math", "bevy_reflect", "bevy_tasks", "bevy_utils", + "bytemuck", +] + +[[package]] +name = "bevy_core_pipeline" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67382fa9c96ce4f4e5833ed7cedd9886844a8f3284b4a717bd4ac738dcdea0c3" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_core", + "bevy_derive", + "bevy_ecs", + "bevy_math", + "bevy_reflect", + "bevy_render", + "bevy_transform", + "bevy_utils", + "bitflags 2.4.0", + "radsort", + "serde", ] [[package]] name = "bevy_derive" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd6fd06d325cfb4998b26fc84476380611ce6a2d0a8a99b501328c79d7bda104" +checksum = "a44e4e2784a81430199e4157e02903a987a32127c773985506f020e7d501b62e" dependencies = [ - "Inflector", - "find-crate", - "proc-macro2", + "bevy_macro_utils", "quote", - "syn 1.0.65", + "syn 2.0.38", ] [[package]] name = "bevy_diagnostic" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2933425d2febac4a8aadc8aed05ddac2d5891c91ae60dd191b24a6e093dcbeba" +checksum = "6babb230dc383c98fdfc9603e3a7a2a49e1e2879dbe8291059ef37dca897932e" dependencies = [ "bevy_app", "bevy_core", "bevy_ecs", "bevy_log", + "bevy_time", "bevy_utils", - "parking_lot", -] - -[[package]] -name = "bevy_dynamic_plugin" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d3219befe938ee89dd8b2b78a02cfd835ef93fa930113a91631b093381005ed" -dependencies = [ - "bevy_app", - "libloading 0.7.4", + "sysinfo", ] [[package]] name = "bevy_ecs" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daf4745460111bd4285ed6c3e6caa4d882db95471edb02b88c6ad4eac89b923c" +checksum = "266144b36df7e834d5198049e037ecdf2a2310a76ce39ed937d1b0a6a2c4e8c6" dependencies = [ "async-channel", "bevy_ecs_macros", + "bevy_ptr", "bevy_reflect", "bevy_tasks", "bevy_utils", - "bitflags 1.3.2", "downcast-rs", - "fixedbitset 0.4.2", - "fxhash", - "parking_lot", - "rand", + "event-listener", + "fixedbitset", + "rustc-hash", "serde", "thiserror", + "thread_local", ] [[package]] name = "bevy_ecs_macros" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65323f6896068407b768c16ec1aa5c8891d49a28b725d0cbabc663d7f47baaec" +checksum = "7157a9c3be038d5008ee3f114feb6cf6b39c1d3d32ee21a7cacb8f81fccdfa80" dependencies = [ - "find-crate", + "bevy_macro_utils", "proc-macro2", "quote", - "syn 1.0.65", + "syn 2.0.38", +] + +[[package]] +name = "bevy_encase_derive" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0ac0f55ad6bca1be7b0f35bbd5fc95ed3d31e4e9db158fee8e5327f59006001" +dependencies = [ + "bevy_macro_utils", + "encase_derive_impl", ] [[package]] name = "bevy_gilrs" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b28a12e991a63fe044605aacf806b8dcdc5aa3af2d4482ba6cb9a1b74fc9392" +checksum = "65f4d79c55829f8016014593a42453f61a564ffb06ef79460d25696ccdfac67b" dependencies = [ "bevy_app", "bevy_ecs", "bevy_input", + "bevy_log", + "bevy_time", "bevy_utils", "gilrs", + "thiserror", +] + +[[package]] +name = "bevy_gizmos" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e286a3e7276431963f4aa29165ea5429fa7dbbc6d5c5ba0c531e7dd44ecc88a2" +dependencies = [ + "bevy_app", + "bevy_asset", + "bevy_core", + "bevy_core_pipeline", + "bevy_ecs", + "bevy_math", + "bevy_pbr", + "bevy_reflect", + "bevy_render", + "bevy_sprite", + "bevy_transform", + "bevy_utils", ] [[package]] name = "bevy_gltf" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9233bfb7e2cf053b51f01d2e57ea5a549438c0e5f08735d595b6a6504d00639e" +checksum = "f07494a733dca032e71a20f4b1f423de765da49cbff34406ae6cd813f9b50c41" dependencies = [ "anyhow", - "base64", + "base64 0.13.1", + "bevy_animation", "bevy_app", "bevy_asset", "bevy_core", + "bevy_core_pipeline", "bevy_ecs", + "bevy_hierarchy", + "bevy_log", "bevy_math", "bevy_pbr", "bevy_reflect", "bevy_render", "bevy_scene", + "bevy_tasks", "bevy_transform", + "bevy_utils", "gltf", + "percent-encoding", + "serde", + "serde_json", "thiserror", ] +[[package]] +name = "bevy_hierarchy" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "103f8f58416ac6799b8c7f0b418f1fac9eba44fa924df3b0e16b09256b897e3d" +dependencies = [ + "bevy_app", + "bevy_core", + "bevy_ecs", + "bevy_log", + "bevy_reflect", + "bevy_utils", + "smallvec", +] + [[package]] name = "bevy_input" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b91a3a768c59a5965f491cda74fd75a72b4cd7c51c85b5a731dd4d8688582dc5" +checksum = "ffbd935401101ac8003f3c3aea70788c65ad03f7a32716a10608bedda7a648bc" dependencies = [ "bevy_app", "bevy_ecs", "bevy_math", + "bevy_reflect", "bevy_utils", + "thiserror", ] [[package]] name = "bevy_internal" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53c568981b2911567cba7f6dae7190bac295ffd411bca777edb1b5152b1ccd62" +checksum = "e0e35a9b2bd29aa784b3cc416bcbf2a298f69f00ca51fd042ea39d9af7fad37e" dependencies = [ + "bevy_a11y", + "bevy_animation", "bevy_app", "bevy_asset", "bevy_audio", "bevy_core", + "bevy_core_pipeline", "bevy_derive", "bevy_diagnostic", - "bevy_dynamic_plugin", "bevy_ecs", "bevy_gilrs", + "bevy_gizmos", "bevy_gltf", + "bevy_hierarchy", "bevy_input", "bevy_log", "bevy_math", "bevy_pbr", + "bevy_ptr", "bevy_reflect", "bevy_render", "bevy_scene", "bevy_sprite", "bevy_tasks", "bevy_text", + "bevy_time", "bevy_transform", "bevy_ui", "bevy_utils", - "bevy_wgpu", "bevy_window", "bevy_winit", - "ndk-glue 0.2.1", ] [[package]] name = "bevy_log" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae100fe4e6fc8f7bbf28c121cda0ced7ab79088374beb7ab8be39120603beb18" +checksum = "07dcc615ff4f617b06c3f9522fca3c55d56f9644db293318f8ab68fcdea5d4fe" dependencies = [ - "android_log-sys 0.2.0", + "android_log-sys", "bevy_app", + "bevy_ecs", "bevy_utils", "console_error_panic_hook", - "tracing-subscriber 0.2.25", + "tracing-log", + "tracing-subscriber", "tracing-wasm", ] +[[package]] +name = "bevy_macro_utils" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23ddc18d489b4e57832d4958cde7cd2f349f0ad91e5892ac9e2f2ee16546b981" +dependencies = [ + "quote", + "rustc-hash", + "syn 2.0.38", + "toml_edit", +] + [[package]] name = "bevy_math" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb36a879cdc96f554b62dd7c7c02392a9a10e94082e4bc686a8242e1d674e7cc" +checksum = "78286a81fead796dc4b45ab14f4f02fe29a94423d3587bcfef872b2a8e0a474b" dependencies = [ - "bevy_reflect", - "glam 0.13.1", + "glam", + "serde", +] + +[[package]] +name = "bevy_mikktspace" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6cfc2a21ea47970a9b1f0f4735af3256a8f204815bd756110051d10f9d909497" +dependencies = [ + "glam", ] [[package]] name = "bevy_pbr" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71f267c27b70d298de91ceac644908fa876cb04857ccb80615dadb1ae969425f" +checksum = "63ca796a619e61cd43a0a3b11fde54644f7f0732a1fba1eef5d406248c6eba85" dependencies = [ "bevy_app", "bevy_asset", - "bevy_core", + "bevy_core_pipeline", "bevy_derive", "bevy_ecs", "bevy_math", "bevy_reflect", "bevy_render", "bevy_transform", + "bevy_utils", "bevy_window", + "bitflags 2.4.0", + "bytemuck", + "naga_oil", + "radsort", ] +[[package]] +name = "bevy_ptr" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72c7586401a46f7d8e436028225c1df5288f2e0082d066b247a82466fea155c6" + [[package]] name = "bevy_reflect" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d7f57646077e9b016f079e0f39fe2826dce407bb0dccc29b481a33ef7552847" +checksum = "0778197a1eb3e095a71417c74b7152ede02975cdc95b5ea4ddc5251ed00a2eb5" dependencies = [ + "bevy_math", + "bevy_ptr", "bevy_reflect_derive", "bevy_utils", "downcast-rs", "erased-serde", - "glam 0.13.1", - "parking_lot", + "glam", + "once_cell", + "parking_lot 0.12.1", "serde", "smallvec", + "smol_str", "thiserror", ] [[package]] name = "bevy_reflect_derive" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbc3f45d1d49c6e984b492ee13564677d1392828cac50c030e025f74f69386e1" +checksum = "342a4b2d09db22c48607d23ad59a056aff1ee004549050a51d490d375ba29528" dependencies = [ - "find-crate", + "bevy_macro_utils", + "bit-set", "proc-macro2", "quote", - "syn 1.0.65", + "syn 2.0.38", "uuid", ] [[package]] name = "bevy_render" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "765f2b966619d16bdb89132848461d9580a622acb5b2bba73cb252e43c9c8830" +checksum = "39df4824b760928c27afc7b00fb649c7a63c9d76661ab014ff5c86537ee906cb" dependencies = [ "anyhow", - "bevy-glsl-to-spirv", + "async-channel", "bevy_app", "bevy_asset", "bevy_core", "bevy_derive", "bevy_ecs", + "bevy_encase_derive", + "bevy_hierarchy", + "bevy_log", "bevy_math", + "bevy_mikktspace", "bevy_reflect", + "bevy_render_macros", + "bevy_tasks", + "bevy_time", "bevy_transform", "bevy_utils", "bevy_window", - "bitflags 1.3.2", + "bitflags 2.4.0", + "bytemuck", + "codespan-reporting", "downcast-rs", - "hex", + "encase", + "futures-lite", "hexasphere", "image", - "once_cell", - "parking_lot", + "js-sys", + "ktx2", + "naga", + "naga_oil", + "parking_lot 0.12.1", + "regex", + "ruzstd", "serde", - "shaderc", "smallvec", - "spirv-reflect", "thiserror", + "thread_local", + "wasm-bindgen", + "web-sys", + "wgpu", + "wgpu-hal", ] [[package]] -name = "bevy_scene" -version = "0.5.0" +name = "bevy_render_macros" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bd08c740aac73363e32fb45af869b10cec65bcb76fe3e6cd0f8f7eebf4c36c9" +dependencies = [ + "bevy_macro_utils", + "proc-macro2", + "quote", + "syn 2.0.38", +] + +[[package]] +name = "bevy_scene" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf1eaa680e61749cc226bcdcd0d968c396fe52c2a4e9e1718422888953ba6c3b" +checksum = "bd47e1263506153bef3a8be97fe2d856f206d315668c4f97510ca6cc181d9681" dependencies = [ "anyhow", "bevy_app", "bevy_asset", + "bevy_derive", "bevy_ecs", + "bevy_hierarchy", "bevy_reflect", + "bevy_render", "bevy_transform", "bevy_utils", - "parking_lot", "ron", "serde", "thiserror", @@ -568,13 +819,14 @@ dependencies = [ [[package]] name = "bevy_sprite" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b9ddb7699b4597794071ebb93b5a0c414407ab8956dc4dc86e59dde721a663d" +checksum = "68a8ca824fad75c6ef74cfbbba0a4ce3ccc435fa23d6bf3f003f260548813397" dependencies = [ "bevy_app", "bevy_asset", - "bevy_core", + "bevy_core_pipeline", + "bevy_derive", "bevy_ecs", "bevy_log", "bevy_math", @@ -582,39 +834,38 @@ dependencies = [ "bevy_render", "bevy_transform", "bevy_utils", - "bevy_window", + "bitflags 2.4.0", + "bytemuck", + "fixedbitset", "guillotiere", "rectangle-pack", - "serde", "thiserror", ] [[package]] name = "bevy_tasks" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77243565dde30ce01e538c615db54bc939a36e4c468b271e86a980004bac7bc9" +checksum = "c73bbb847c83990d3927005090df52f8ac49332e1643d2ad9aac3cd2974e66bf" dependencies = [ "async-channel", "async-executor", - "event-listener", + "async-task", + "concurrent-queue", "futures-lite", - "instant", - "num_cpus", "wasm-bindgen-futures", ] [[package]] name = "bevy_text" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21dfc4f2108582afd5a8995904ea55cd594787f210dac5d1df453cbe92eaab26" +checksum = "692288ab7b0a9f8b38058964c52789fc6bcb63703b23de51cce90ec41bfca355" dependencies = [ "ab_glyph", "anyhow", "bevy_app", "bevy_asset", - "bevy_core", "bevy_ecs", "bevy_math", "bevy_reflect", @@ -624,34 +875,50 @@ dependencies = [ "bevy_utils", "bevy_window", "glyph_brush_layout", + "serde", + "thiserror", +] + +[[package]] +name = "bevy_time" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d58d6dbae9c8225d8c0e0f04d2c5dbb71d22adc01ecd5ab3cebc364139e4a6d" +dependencies = [ + "bevy_app", + "bevy_ecs", + "bevy_reflect", + "bevy_utils", + "crossbeam-channel", "thiserror", ] [[package]] name = "bevy_transform" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d166fe11f67dc195b42207e7b096f36680f611afc8f4105b3d81865b66ecf91" +checksum = "3b9b0ac0149a57cd846cb357a35fc99286f9848e53d4481954608ac9552ed2d4" dependencies = [ "bevy_app", "bevy_ecs", + "bevy_hierarchy", "bevy_math", "bevy_reflect", - "bevy_utils", - "smallvec", ] [[package]] name = "bevy_ui" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef67dfa943511b8bbca6bf730f183ac5c602a35a7659e58bdf7471154018889d" +checksum = "59b6d295a755e5b79e869a09e087029d72974562a521ec7ccfba7141fa948a32" dependencies = [ + "bevy_a11y", "bevy_app", "bevy_asset", - "bevy_core", + "bevy_core_pipeline", "bevy_derive", "bevy_ecs", + "bevy_hierarchy", "bevy_input", "bevy_log", "bevy_math", @@ -662,72 +929,76 @@ dependencies = [ "bevy_transform", "bevy_utils", "bevy_window", + "bytemuck", "serde", "smallvec", - "stretch", + "taffy", + "thiserror", ] [[package]] name = "bevy_utils" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c384a69b670329f968f59abdcf6506f183cf18b8619d6ec1cbfe33e268e5da20" +checksum = "08d9484e32434ea84dc548cff246ce0c6f756c1336f5ea03f24ac120a48595c7" dependencies = [ - "ahash 0.7.6", + "ahash", + "bevy_utils_proc_macros", "getrandom", + "hashbrown 0.14.1", "instant", + "petgraph", + "thiserror", "tracing", "uuid", ] [[package]] -name = "bevy_wgpu" -version = "0.5.0" +name = "bevy_utils_proc_macros" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e16919cc645aa9a7e988c8644836d0f91c5f1bd23e17bdd9b461a32bf7667b" +checksum = "5391b242c36f556db01d5891444730c83aa9dd648b6a8fd2b755d22cb3bddb57" dependencies = [ - "bevy_app", - "bevy_asset", - "bevy_core", - "bevy_diagnostic", - "bevy_ecs", - "bevy_render", - "bevy_utils", - "bevy_window", - "bevy_winit", - "crossbeam-channel", - "crossbeam-utils", - "futures-lite", - "parking_lot", - "wgpu", + "proc-macro2", + "quote", + "syn 2.0.38", ] [[package]] name = "bevy_window" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b96496cb0a9c79ca6744a25e69edff4ba363c14b6070897a66a597db208405f0" +checksum = "bd584c0da7c4ada6557b09f57f30fb7cff21ccedc641473fc391574b4c9b7944" dependencies = [ "bevy_app", "bevy_ecs", + "bevy_input", "bevy_math", + "bevy_reflect", "bevy_utils", - "web-sys", + "raw-window-handle", ] [[package]] name = "bevy_winit" -version = "0.5.0" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "522dcea62526be0aa5ee35781e98a9f309047050cf684758bc0cd498820111f6" +checksum = "bfdc044abdb95790c20053e6326760f0a2985f0dcd78613d397bf35f16039d53" dependencies = [ + "accesskit_winit", + "approx", + "bevy_a11y", "bevy_app", + "bevy_derive", "bevy_ecs", + "bevy_hierarchy", "bevy_input", - "bevy_log", "bevy_math", + "bevy_tasks", "bevy_utils", "bevy_window", + "crossbeam-channel", + "raw-window-handle", "wasm-bindgen", "web-sys", "winit", @@ -779,6 +1050,9 @@ name = "bitflags" version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" +dependencies = [ + "serde", +] [[package]] name = "block" @@ -786,6 +1060,25 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" +[[package]] +name = "block-sys" +version = "0.1.0-beta.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fa55741ee90902547802152aaf3f8e5248aab7e21468089560d4c8840561146" +dependencies = [ + "objc-sys", +] + +[[package]] +name = "block2" +version = "0.2.0-alpha.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8dd9e63c1744f755c2f60332b88de39d341e5e86239014ad839bd71c106dec42" +dependencies = [ + "block-sys", + "objc2-encode", +] + [[package]] name = "bumpalo" version = "3.14.0" @@ -797,6 +1090,20 @@ name = "bytemuck" version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6" +dependencies = [ + "bytemuck_derive", +] + +[[package]] +name = "bytemuck_derive" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.38", +] [[package]] name = "byteorder" @@ -835,12 +1142,6 @@ dependencies = [ "nom", ] -[[package]] -name = "cfg-if" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" - [[package]] name = "cfg-if" version = "1.0.0" @@ -853,19 +1154,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" -[[package]] -name = "chrono" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6127248204b9aba09a362f6c930ef6a78f2c1b2215f8a7b398c06e1083f17af0" -dependencies = [ - "js-sys", - "num-integer", - "num-traits", - "wasm-bindgen", - "winapi 0.3.9", -] - [[package]] name = "clang-sys" version = "1.6.1" @@ -878,42 +1166,13 @@ dependencies = [ ] [[package]] -name = "cmake" -version = "0.1.50" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a31c789563b815f77f4250caee12365734369f942439b7defd71e18a48197130" -dependencies = [ - "cc", -] - -[[package]] -name = "cocoa" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a" -dependencies = [ - "bitflags 1.3.2", - "block", - "cocoa-foundation", - "core-foundation 0.9.3", - "core-graphics 0.22.3", - "foreign-types", - "libc", - "objc", -] - -[[package]] -name = "cocoa-foundation" -version = "0.1.2" +name = "codespan-reporting" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7" +checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" dependencies = [ - "bitflags 1.3.2", - "block", - "core-foundation 0.9.3", - "core-graphics-types", - "libc", - "objc", + "termcolor", + "unicode-width", ] [[package]] @@ -922,6 +1181,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" +[[package]] +name = "com-rs" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf43edc576402991846b093a7ca18a3477e0ef9c588cde84964b5d3e43016642" + [[package]] name = "combine" version = "4.6.6" @@ -947,34 +1212,29 @@ version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "wasm-bindgen", ] [[package]] -name = "copyless" -version = "0.1.5" +name = "const_panic" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2df960f5d869b2dd8532793fde43eb5427cceb126c929747a26823ab0eeb536" +checksum = "6051f239ecec86fde3410901ab7860d458d160371533842974fc61f96d15879b" [[package]] -name = "core-foundation" -version = "0.6.4" +name = "const_soft_float" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25b9e03f145fd4f2bf705e07b900cd41fc636598fe5dc452fd0db1441c3f496d" -dependencies = [ - "core-foundation-sys 0.6.2", - "libc", -] +checksum = "87ca1caa64ef4ed453e68bb3db612e51cf1b2f5b871337f0fcab1c8f87cc3dff" [[package]] -name = "core-foundation" -version = "0.7.0" +name = "constgebra" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171" +checksum = "edd23e864550e6dafc1e41ac78ce4f1ccddc8672b40c403524a04ff3f0518420" dependencies = [ - "core-foundation-sys 0.7.0", - "libc", + "const_soft_float", ] [[package]] @@ -993,30 +1253,12 @@ version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e7ca8a5221364ef15ce201e8ed2f609fc312682a8f4e0e3d4aa5879764e0fa3b" -[[package]] -name = "core-foundation-sys" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac" - [[package]] name = "core-foundation-sys" version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" -[[package]] -name = "core-graphics" -version = "0.19.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3889374e6ea6ab25dba90bb5d96202f61108058361f6dc72e8b03e6f8bbe923" -dependencies = [ - "bitflags 1.3.2", - "core-foundation 0.7.0", - "foreign-types", - "libc", -] - [[package]] name = "core-graphics" version = "0.22.3" @@ -1024,7 +1266,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" dependencies = [ "bitflags 1.3.2", - "core-foundation 0.9.3", + "core-foundation", "core-graphics-types", "foreign-types", "libc", @@ -1037,30 +1279,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2bb142d41022986c1d8ff29103a1411c8a3dfad3552f87a4f8dc50d61d4f4e33" dependencies = [ "bitflags 1.3.2", - "core-foundation 0.9.3", - "libc", -] - -[[package]] -name = "core-video-sys" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ecad23610ad9757664d644e369246edde1803fcb43ed72876565098a5d3828" -dependencies = [ - "cfg-if 0.1.10", - "core-foundation-sys 0.7.0", - "core-graphics 0.19.2", + "core-foundation", "libc", - "objc", ] [[package]] name = "coreaudio-rs" -version = "0.10.0" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11894b20ebfe1ff903cbdc52259693389eea03b94918a2def2c30c3bf227ad88" +checksum = "cb17e2d1795b1996419648915df94bc7103c28f7b48062d7acf4652fc371b2ff" dependencies = [ "bitflags 1.3.2", + "core-foundation-sys 0.6.2", "coreaudio-sys", ] @@ -1075,27 +1305,27 @@ dependencies = [ [[package]] name = "cpal" -version = "0.13.4" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98f45f0a21f617cd2c788889ef710b63f075c949259593ea09c826f1e47a2418" +checksum = "6d959d90e938c5493000514b446987c07aed46c668faaa7d34d6c7a67b1a578c" dependencies = [ "alsa", "core-foundation-sys 0.8.4", "coreaudio-rs", - "jni", + "dasp_sample", + "jni 0.19.0", "js-sys", - "lazy_static", "libc", - "mach 0.3.2", - "ndk 0.3.0", - "ndk-glue 0.3.0", - "nix 0.20.0", + "mach2", + "ndk", + "ndk-context", "oboe", - "parking_lot", - "stdweb 0.1.3", - "thiserror", + "once_cell", + "parking_lot 0.12.1", + "wasm-bindgen", + "wasm-bindgen-futures", "web-sys", - "winapi 0.3.9", + "windows 0.46.0", ] [[package]] @@ -1104,7 +1334,7 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", ] [[package]] @@ -1113,7 +1343,7 @@ version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "crossbeam-utils", ] @@ -1123,108 +1353,74 @@ version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", ] -[[package]] -name = "cty" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35" - [[package]] name = "d3d12" -version = "0.3.2" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0a60cceb22c7c53035f8980524fdc7f17cf49681a3c154e6757d30afbec6ec4" +checksum = "d8f0de2f5a8e7bd4a9eec0e3c781992a4ce1724f68aec7d7a3715344de8b39da" dependencies = [ "bitflags 1.3.2", - "libloading 0.6.7", - "winapi 0.3.9", + "libloading 0.7.4", + "winapi", ] [[package]] -name = "darling" -version = "0.10.2" +name = "dasp_sample" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858" -dependencies = [ - "darling_core", - "darling_macro", -] +checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f" [[package]] -name = "darling_core" -version = "0.10.2" +name = "data-encoding" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 1.0.65", -] +checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" [[package]] -name = "darling_macro" -version = "0.10.2" +name = "dispatch" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72" -dependencies = [ - "darling_core", - "quote", - "syn 1.0.65", -] +checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" [[package]] -name = "deflate" -version = "0.8.6" +name = "downcast-rs" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174" -dependencies = [ - "adler32", - "byteorder", -] +checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" [[package]] -name = "derivative" -version = "2.2.0" +name = "encase" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +checksum = "8fce2eeef77fd4a293a54b62aa00ac9daebfbcda4bf8998c5a815635b004aa1c" dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.65", + "const_panic", + "encase_derive", + "glam", + "thiserror", ] [[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" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" - -[[package]] -name = "downcast-rs" -version = "1.2.0" +name = "encase_derive" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" +checksum = "0e520cde08cbf4f7cc097f61573ec06ce467019803de8ae82fb2823fa1554a0e" +dependencies = [ + "encase_derive_impl", +] [[package]] -name = "env_logger" -version = "0.7.1" +name = "encase_derive_impl" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36" +checksum = "3fe2568f851fd6144a45fa91cfed8fe5ca8fc0b56ba6797bfc1ed2771b90e37c" dependencies = [ - "log", - "regex", + "proc-macro2", + "quote", + "syn 2.0.38", ] [[package]] @@ -1272,38 +1468,42 @@ version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" +[[package]] +name = "fdeflate" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d329bdeac514ee06249dabc27877490f17f5d371ec693360768b838e19f3ae10" +dependencies = [ + "simd-adler32", +] + [[package]] name = "filetime" version = "0.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "libc", "redox_syscall 0.3.5", - "windows-sys", -] - -[[package]] -name = "find-crate" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59a98bbaacea1c0eb6a0876280051b892eb73594fd90cf3b20e9c817029c57d2" -dependencies = [ - "toml", + "windows-sys 0.48.0", ] [[package]] name = "fixedbitset" -version = "0.2.0" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] -name = "fixedbitset" -version = "0.4.2" +name = "flate2" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" +checksum = "c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010" +dependencies = [ + "crc32fast", + "miniz_oxide", +] [[package]] name = "fnv" @@ -1335,22 +1535,6 @@ dependencies = [ "libc", ] -[[package]] -name = "fuchsia-zircon" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" -dependencies = [ - "bitflags 1.3.2", - "fuchsia-zircon-sys", -] - -[[package]] -name = "fuchsia-zircon-sys" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" - [[package]] name = "futures-core" version = "0.3.28" @@ -1378,15 +1562,6 @@ dependencies = [ "waker-fn", ] -[[package]] -name = "fxhash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" -dependencies = [ - "byteorder", -] - [[package]] name = "game" version = "0.1.0" @@ -1400,165 +1575,18 @@ version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "js-sys", "libc", "wasi", "wasm-bindgen", ] -[[package]] -name = "gfx-auxil" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7b33ecf067f2117668d91c9b0f2e5f223ebd1ffec314caa2f3de27bb580186d" -dependencies = [ - "fxhash", - "gfx-hal", - "spirv_cross", -] - -[[package]] -name = "gfx-backend-dx11" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f851d03c2e8f117e3702bf41201a4fafa447d5cb1276d5375870ae7573d069dd" -dependencies = [ - "arrayvec", - "bitflags 1.3.2", - "gfx-auxil", - "gfx-hal", - "libloading 0.6.7", - "log", - "parking_lot", - "range-alloc", - "raw-window-handle 0.3.4", - "smallvec", - "spirv_cross", - "thunderdome", - "winapi 0.3.9", - "wio", -] - -[[package]] -name = "gfx-backend-dx12" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5032d716a2a5f4dafb4675a794c5dc32081af8fbc7303c93ad93ff5413c6559f" -dependencies = [ - "arrayvec", - "bit-set", - "bitflags 1.3.2", - "d3d12", - "gfx-auxil", - "gfx-hal", - "log", - "parking_lot", - "range-alloc", - "raw-window-handle 0.3.4", - "smallvec", - "spirv_cross", - "thunderdome", - "winapi 0.3.9", -] - -[[package]] -name = "gfx-backend-empty" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f07ef26a65954cfdd7b4c587f485100d1bb3b0bd6a51b02d817d6c87cca7a91" -dependencies = [ - "gfx-hal", - "log", - "raw-window-handle 0.3.4", -] - -[[package]] -name = "gfx-backend-gl" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6717c50ab601efe4a669bfb44db615e3888695ac8263222aeaa702642b9fbc2" -dependencies = [ - "arrayvec", - "bitflags 1.3.2", - "gfx-auxil", - "gfx-hal", - "glow", - "js-sys", - "khronos-egl", - "libloading 0.6.7", - "log", - "naga", - "parking_lot", - "raw-window-handle 0.3.4", - "spirv_cross", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "gfx-backend-metal" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dc54b456ece69ef49f8893269ebf24ac70969ed34ba2719c3f3abcc8fbff14e" -dependencies = [ - "arrayvec", - "bitflags 1.3.2", - "block", - "cocoa-foundation", - "copyless", - "foreign-types", - "gfx-auxil", - "gfx-hal", - "log", - "metal", - "naga", - "objc", - "parking_lot", - "range-alloc", - "raw-window-handle 0.3.4", - "spirv_cross", - "storage-map", -] - -[[package]] -name = "gfx-backend-vulkan" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dabe88b1a5c91e0f969b441cc57e70364858066e4ba937deeb62065654ef9bd9" -dependencies = [ - "arrayvec", - "ash", - "byteorder", - "core-graphics-types", - "gfx-hal", - "inplace_it", - "log", - "naga", - "objc", - "parking_lot", - "raw-window-handle 0.3.4", - "smallvec", - "winapi 0.3.9", -] - -[[package]] -name = "gfx-hal" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1d9cc8d3b573dda62d0baca4f02e0209786e22c562caff001d77c389008781d" -dependencies = [ - "bitflags 1.3.2", - "naga", - "raw-window-handle 0.3.4", - "thiserror", -] - [[package]] name = "gilrs" -version = "0.8.2" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1550c8bdebc993576e343d600a954654708a9a1182396ee1e805d6fe60c72909" +checksum = "62fd19844d0eb919aca41d3e4ea0e0b6bf60e1e827558b101c269015b8f5f27a" dependencies = [ "fnv", "gilrs-core", @@ -1569,38 +1597,39 @@ dependencies = [ [[package]] name = "gilrs-core" -version = "0.3.2" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84c7262ce1e88429c9b1d847820c9d2ba00adafc955218393d9c0861d5aaab88" +checksum = "5ccc99e9b8d63ffcaa334c4babfa31f46e156618a11f63efb6e8e6bcb37b830d" dependencies = [ - "core-foundation 0.6.4", + "core-foundation", "io-kit-sys", + "js-sys", "libc", "libudev-sys", "log", - "nix 0.23.2", - "rusty-xinput", - "stdweb 0.4.20", + "nix 0.26.4", "uuid", "vec_map", - "winapi 0.3.9", + "wasm-bindgen", + "web-sys", + "windows 0.51.1", ] [[package]] -name = "glam" -version = "0.13.1" +name = "gimli" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70155b56080764b8b758e91e4c63d06da0262c0c939f2cd991cd1382087147df" -dependencies = [ - "serde", - "spirv-std", -] +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" [[package]] name = "glam" -version = "0.15.2" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3abb554f8ee44336b72d522e0a7fe86a29e09f839a36022fa869a7dfe941a54b" +checksum = "b5418c17512bdf42730f9032c74e1ae39afc408745ebb2acf72fbc4691c17945" +dependencies = [ + "bytemuck", + "serde", +] [[package]] name = "glob" @@ -1610,9 +1639,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "glow" -version = "0.7.2" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "072136d2c3783f3a92f131acb227bc806d3886278e2a4dc1e9990ec89ef9e70b" +checksum = "ca0fe580e4b60a8ab24a868bc08e2f03cbcb20d3d676601fa909386713333728" dependencies = [ "js-sys", "slotmap", @@ -1622,9 +1651,9 @@ dependencies = [ [[package]] name = "gltf" -version = "0.15.2" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6fb0d1d772daf10ea74528c3aeb12215f6d5b820adf2ecfc93a6578d6779c3c" +checksum = "ad2dcfb6dd7a66f9eb3d181a29dcfb22d146b0bcdc2e1ed1713cbf03939a88ea" dependencies = [ "byteorder", "gltf-json", @@ -1633,21 +1662,21 @@ dependencies = [ [[package]] name = "gltf-derive" -version = "0.15.2" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6636de7bf52227363554f1ca2d9cd180fc666129ddd0933097e1f227dfa7293" +checksum = "f2cbcea5dd47e7ad4e9ee6f040384fcd7204bbf671aa4f9e7ca7dfc9bfa1de20" dependencies = [ "inflections", "proc-macro2", "quote", - "syn 1.0.65", + "syn 2.0.38", ] [[package]] name = "gltf-json" -version = "0.15.2" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3fc3deb81e6fa04bf808f6be7c3983229552a95b77f687ad96af00f6d3e7d6c" +checksum = "7d5b810806b78dde4b71a95cc0e6fdcab34c4c617da3574df166f9987be97d03" dependencies = [ "gltf-derive", "serde", @@ -1668,13 +1697,12 @@ dependencies = [ [[package]] name = "gpu-alloc" -version = "0.3.2" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "739e1e53f1e4b5093342e753bcb868e53d28e0c69da9c9ce9632455bfa37ba30" +checksum = "22beaafc29b38204457ea030f6fb7a84c9e4dd1b86e311ba0542533453d87f62" dependencies = [ "bitflags 1.3.2", "gpu-alloc-types", - "tracing", ] [[package]] @@ -1686,16 +1714,28 @@ dependencies = [ "bitflags 1.3.2", ] +[[package]] +name = "gpu-allocator" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce95f9e2e11c2c6fadfce42b5af60005db06576f231f5c92550fdded43c423e8" +dependencies = [ + "backtrace", + "log", + "thiserror", + "winapi", + "windows 0.44.0", +] + [[package]] name = "gpu-descriptor" -version = "0.1.1" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a70f1e87a3840ed6a3e99e02c2b861e4dbdf26f0d07e38f42ea5aff46cfce2" +checksum = "cc11df1ace8e7e564511f53af41f3e42ddc95b56fd07b3f4445d2a6048bc682c" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.0", "gpu-descriptor-types", - "hashbrown 0.9.1", - "tracing", + "hashbrown 0.14.1", ] [[package]] @@ -1707,6 +1747,12 @@ dependencies = [ "bitflags 2.4.0", ] +[[package]] +name = "grid" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eec1c01eb1de97451ee0d60de7d81cf1e72aabefb021616027f3d1c3ec1c723c" + [[package]] name = "guillotiere" version = "0.6.2" @@ -1717,15 +1763,6 @@ dependencies = [ "svg_fmt", ] -[[package]] -name = "hashbrown" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" -dependencies = [ - "ahash 0.4.7", -] - [[package]] name = "hashbrown" version = "0.12.3" @@ -1737,49 +1774,55 @@ name = "hashbrown" version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12" +dependencies = [ + "ahash", + "allocator-api2", + "serde", +] [[package]] -name = "hermit-abi" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" - -[[package]] -name = "hex" -version = "0.4.3" +name = "hassle-rs" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +checksum = "1397650ee315e8891a0df210707f0fc61771b0cc518c3023896064c5407cb3b0" +dependencies = [ + "bitflags 1.3.2", + "com-rs", + "libc", + "libloading 0.7.4", + "thiserror", + "widestring", + "winapi", +] [[package]] name = "hexasphere" -version = "3.4.0" +version = "9.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497fa99092cc737fe649ae39194b515fbc15ae27ebd437c9e3d9c8210341e0fc" +checksum = "7cb3df16a7bcb1b5bc092abd55e14f77ca70aea14445026e264586fc62889a10" dependencies = [ - "glam 0.15.2", - "lazy_static", + "constgebra", + "glam", ] [[package]] -name = "ident_case" -version = "1.0.1" +name = "hexf-parse" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" +checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" [[package]] name = "image" -version = "0.23.14" +version = "0.24.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1" +checksum = "6f3dfdbdd72063086ff443e297b61695500514b1e41095b6fb9a5ab48a70a711" dependencies = [ "bytemuck", "byteorder", "color_quant", - "num-iter", "num-rational", "num-traits", "png", - "scoped_threadpool", ] [[package]] @@ -1828,19 +1871,13 @@ dependencies = [ "libc", ] -[[package]] -name = "inplace_it" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e567468c50f3d4bc7397702e09b380139f9b9288b4e909b070571007f8b5bf78" - [[package]] name = "instant" version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "js-sys", "wasm-bindgen", "web-sys", @@ -1848,21 +1885,12 @@ dependencies = [ [[package]] name = "io-kit-sys" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f21dcc74995dd4cd090b147e79789f8d65959cbfb5f0b118002db869ea3bd0a0" -dependencies = [ - "core-foundation-sys 0.6.2", - "mach 0.2.3", -] - -[[package]] -name = "iovec" -version = "0.1.4" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" +checksum = "9b2d4429acc1deff0fbdece0325b4997bdb02b2c245ab7023fd5deca0f6348de" dependencies = [ - "libc", + "core-foundation-sys 0.8.4", + "mach2", ] [[package]] @@ -1885,6 +1913,20 @@ dependencies = [ "walkdir", ] +[[package]] +name = "jni" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "039022cdf4d7b1cf548d31f60ae783138e5fd42013f6271049d7df7afadef96c" +dependencies = [ + "cesu8", + "combine", + "jni-sys", + "log", + "thiserror", + "walkdir", +] + [[package]] name = "jni-sys" version = "0.3.0" @@ -1902,31 +1944,51 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.46" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf3d7383929f7c9c7c2d0fa596f325832df98c3704f2c60553080f7127a58175" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" dependencies = [ "wasm-bindgen", ] [[package]] -name = "kernel32-sys" -version = "0.2.2" +name = "khronos-egl" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c2352bd1d0bceb871cb9d40f24360c8133c11d7486b68b5381c1dd1a32015e3" +dependencies = [ + "libc", + "libloading 0.7.4", + "pkg-config", +] + +[[package]] +name = "kqueue" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" +checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" dependencies = [ - "winapi 0.2.8", - "winapi-build", + "kqueue-sys", + "libc", ] [[package]] -name = "khronos-egl" -version = "3.0.2" +name = "kqueue-sys" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b19cc4a81304db2a0ad69740e83cdc3a9364e3f9bd6d88a87288a4c2deec927b" +checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" dependencies = [ + "bitflags 1.3.2", "libc", - "libloading 0.6.7", +] + +[[package]] +name = "ktx2" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87d65e08a9ec02e409d27a0139eaa6b9756b4d81fe7cde71f6941a83730ce838" +dependencies = [ + "bitflags 1.3.2", ] [[package]] @@ -1941,6 +2003,17 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" +[[package]] +name = "lewton" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "777b48df9aaab155475a83a7df3070395ea1ac6902f5cd062b8f2b028075c030" +dependencies = [ + "byteorder", + "ogg", + "tinyvec", +] + [[package]] name = "libc" version = "0.2.149" @@ -1949,38 +2022,26 @@ checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" [[package]] name = "libloading" -version = "0.6.7" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "351a32417a12d5f7e82c368a66781e307834dae04c6ce0cd4456d52989229883" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" dependencies = [ - "cfg-if 1.0.0", - "winapi 0.3.9", + "cfg-if", + "winapi", ] [[package]] name = "libloading" -version = "0.7.4" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" +checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161" dependencies = [ - "cfg-if 1.0.0", - "winapi 0.3.9", + "cfg-if", + "windows-sys 0.48.0", ] [[package]] -name = "libm" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a" - -[[package]] -name = "libm" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" - -[[package]] -name = "libudev-sys" +name = "libudev-sys" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324" @@ -2006,19 +2067,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" [[package]] -name = "mach" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86dd2487cdfea56def77b88438a2c915fb45113c5319bfe7e14306ca4cd0b0e1" -dependencies = [ - "libc", -] - -[[package]] -name = "mach" -version = "0.3.2" +name = "mach2" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" +checksum = "6d0d1830bcd151a6fc4aea1369af235b36c1528fe976b8ff678683c9995eade8" dependencies = [ "libc", ] @@ -2034,9 +2086,9 @@ dependencies = [ [[package]] name = "matchers" -version = "0.0.1" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f099785f7595cc4b4553a174ce30dd7589ef93391ff414dbb67f62392b9e0ce1" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" dependencies = [ "regex-automata 0.1.10", ] @@ -2047,24 +2099,15 @@ version = "2.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" -[[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - [[package]] name = "metal" -version = "0.21.0" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4598d719460ade24c7d91f335daf055bf2a7eec030728ce751814c50cdd6a26c" +checksum = "de11355d1f6781482d027a3b4d4de7825dcedb197bf573e0596d00008402d060" dependencies = [ "bitflags 1.3.2", "block", - "cocoa-foundation", + "core-graphics-types", "foreign-types", "log", "objc", @@ -2076,150 +2119,80 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" -[[package]] -name = "minimp3" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "985438f75febf74c392071a975a29641b420dd84431135a6e6db721de4b74372" -dependencies = [ - "minimp3-sys", - "slice-deque", - "thiserror", -] - -[[package]] -name = "minimp3-sys" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e21c73734c69dc95696c9ed8926a2b393171d98b3f5f5935686a26a487ab9b90" -dependencies = [ - "cc", -] - [[package]] name = "miniz_oxide" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435" -dependencies = [ - "adler32", -] - -[[package]] -name = "mio" -version = "0.6.23" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" dependencies = [ - "cfg-if 0.1.10", - "fuchsia-zircon", - "fuchsia-zircon-sys", - "iovec", - "kernel32-sys", - "libc", - "log", - "miow 0.2.2", - "net2", - "slab", - "winapi 0.2.8", + "adler", + "simd-adler32", ] [[package]] name = "mio" -version = "0.7.14" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc" +checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" dependencies = [ "libc", "log", - "miow 0.3.7", - "ntapi", - "winapi 0.3.9", -] - -[[package]] -name = "mio-extras" -version = "2.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19" -dependencies = [ - "lazycell", - "log", - "mio 0.6.23", - "slab", -] - -[[package]] -name = "miow" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d" -dependencies = [ - "kernel32-sys", - "net2", - "winapi 0.2.8", - "ws2_32-sys", -] - -[[package]] -name = "miow" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21" -dependencies = [ - "winapi 0.3.9", + "wasi", + "windows-sys 0.48.0", ] [[package]] name = "naga" -version = "0.3.2" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05089b2acdf0e6a962cdbf5e328402345a27f59fcde1a59fe97a73e8149d416f" +checksum = "bbcc2e0513220fd2b598e6068608d4462db20322c0e77e47f6f488dfcfc279cb" dependencies = [ "bit-set", "bitflags 1.3.2", - "fxhash", + "codespan-reporting", + "hexf-parse", + "indexmap 1.9.3", "log", "num-traits", - "petgraph", - "spirv_headers", - "thiserror", -] - -[[package]] -name = "ndk" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5eb167c1febed0a496639034d0c76b3b74263636045db5489eee52143c246e73" -dependencies = [ - "jni-sys", - "ndk-sys 0.2.2", - "num_enum 0.4.3", + "pp-rs", + "rustc-hash", + "spirv", + "termcolor", "thiserror", + "unicode-xid", ] [[package]] -name = "ndk" -version = "0.3.0" +name = "naga_oil" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8794322172319b972f528bf90c6b467be0079f1fa82780ffb431088e741a73ab" +checksum = "8be942a5c21c58b9b0bf4d9b99db3634ddb7a916f8e1d1d0b71820cc4150e56b" dependencies = [ - "jni-sys", - "ndk-sys 0.2.2", - "num_enum 0.5.11", + "bit-set", + "codespan-reporting", + "data-encoding", + "indexmap 1.9.3", + "naga", + "once_cell", + "regex", + "regex-syntax 0.6.29", + "rustc-hash", "thiserror", + "tracing", + "unicode-ident", ] [[package]] name = "ndk" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2032c77e030ddee34a6787a64166008da93f6a352b629261d0fee232b8742dd4" +checksum = "451422b7e4718271c8b5b3aadf5adedba43dc76312454b387e98fae0fc951aa0" dependencies = [ "bitflags 1.3.2", "jni-sys", - "ndk-sys 0.3.0", + "ndk-sys", "num_enum 0.5.11", + "raw-window-handle", "thiserror", ] @@ -2229,97 +2202,35 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" -[[package]] -name = "ndk-glue" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdf399b8b7a39c6fb153c4ec32c72fd5fe789df24a647f229c239aa7adb15241" -dependencies = [ - "android_logger", - "lazy_static", - "libc", - "log", - "ndk 0.2.1", - "ndk-macro", - "ndk-sys 0.2.2", -] - -[[package]] -name = "ndk-glue" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5caf0c24d51ac1c905c27d4eda4fa0635bbe0de596b8f79235e0b17a4d29385" -dependencies = [ - "lazy_static", - "libc", - "log", - "ndk 0.3.0", - "ndk-macro", - "ndk-sys 0.2.2", -] - -[[package]] -name = "ndk-macro" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05d1c6307dc424d0f65b9b06e94f88248e6305726b14729fd67a5e47b2dc481d" -dependencies = [ - "darling", - "proc-macro-crate 0.1.5", - "proc-macro2", - "quote", - "syn 1.0.65", -] - [[package]] name = "ndk-sys" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1bcdd74c20ad5d95aacd60ef9ba40fdf77f767051040541df557b7a9b2a2121" - -[[package]] -name = "ndk-sys" -version = "0.3.0" +version = "0.4.1+23.1.7779620" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e5a6ae77c8ee183dcbbba6150e2e6b9f3f4196a7666c02a715a95692ec1fa97" +checksum = "3cf2aae958bd232cac5069850591667ad422d263686d75b52a065f9badeee5a3" dependencies = [ "jni-sys", ] -[[package]] -name = "net2" -version = "0.2.39" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b13b648036a2339d06de780866fbdfda0dde886de7b3af2ddeba8b14f4ee34ac" -dependencies = [ - "cfg-if 0.1.10", - "libc", - "winapi 0.3.9", -] - [[package]] name = "nix" -version = "0.20.0" +version = "0.24.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a" +checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" dependencies = [ "bitflags 1.3.2", - "cc", - "cfg-if 1.0.0", + "cfg-if", "libc", ] [[package]] name = "nix" -version = "0.23.2" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3790c00a0150112de0f4cd161e3d7fc4b2d8a5542ffc35f099a2562aecb35c" +checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" dependencies = [ "bitflags 1.3.2", - "cc", - "cfg-if 1.0.0", + "cfg-if", "libc", - "memoffset", ] [[package]] @@ -2334,28 +2245,40 @@ dependencies = [ [[package]] name = "notify" -version = "5.0.0-pre.10" +version = "6.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51f18203a26893ca1d3526cf58084025d5639f91c44f8b70ab3b724f60e819a0" +checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.0", "crossbeam-channel", "filetime", "fsevent-sys", "inotify", + "kqueue", "libc", - "mio 0.7.14", + "log", + "mio", "walkdir", - "winapi 0.3.9", + "windows-sys 0.48.0", ] [[package]] name = "ntapi" -version = "0.3.7" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28774a7fd2fbb4f0babd8237ce554b73af68021b5f695a3cebd6c59bac0980f" +checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" dependencies = [ - "winapi 0.3.9", + "winapi", +] + +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", ] [[package]] @@ -2379,22 +2302,11 @@ dependencies = [ "num-traits", ] -[[package]] -name = "num-iter" -version = "0.1.43" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - [[package]] name = "num-rational" -version = "0.3.2" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07" +checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" dependencies = [ "autocfg", "num-integer", @@ -2408,45 +2320,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" dependencies = [ "autocfg", - "libm 0.2.8", -] - -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi", - "libc", ] [[package]] name = "num_enum" -version = "0.4.3" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca565a7df06f3d4b485494f25ba05da1435950f4dc263440eda7a6fa9b8e36e4" +checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" dependencies = [ - "derivative", - "num_enum_derive 0.4.3", + "num_enum_derive 0.5.11", ] [[package]] name = "num_enum" -version = "0.5.11" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" +checksum = "7a015b430d3c108a207fd776d2e2196aaf8b1cf8cf93253e3a097ff3085076a1" dependencies = [ - "num_enum_derive 0.5.11", + "num_enum_derive 0.6.1", ] [[package]] name = "num_enum_derive" -version = "0.4.3" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffa5a33ddddfee04c0283a7653987d634e880347e96b5b2ed64de07efb59db9d" +checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" dependencies = [ - "proc-macro-crate 0.1.5", + "proc-macro-crate", "proc-macro2", "quote", "syn 1.0.65", @@ -2454,14 +2354,14 @@ dependencies = [ [[package]] name = "num_enum_derive" -version = "0.5.11" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" +checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6" dependencies = [ - "proc-macro-crate 1.3.1", + "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.65", + "syn 2.0.38", ] [[package]] @@ -2474,6 +2374,32 @@ dependencies = [ "objc_exception", ] +[[package]] +name = "objc-sys" +version = "0.2.0-beta.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b9834c1e95694a05a828b59f55fa2afec6288359cda67146126b3f90a55d7" + +[[package]] +name = "objc2" +version = "0.3.0-beta.3.patch-leaks.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e01640f9f2cb1220bbe80325e179e532cb3379ebcd1bf2279d703c19fe3a468" +dependencies = [ + "block2", + "objc-sys", + "objc2-encode", +] + +[[package]] +name = "objc2-encode" +version = "2.0.0-pre.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abfcac41015b00a120608fdaa6938c44cb983fee294351cc4bac7638b4e50512" +dependencies = [ + "objc-sys", +] + [[package]] name = "objc_exception" version = "0.1.2" @@ -2483,14 +2409,23 @@ dependencies = [ "cc", ] +[[package]] +name = "object" +version = "0.32.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" +dependencies = [ + "memchr", +] + [[package]] name = "oboe" -version = "0.4.6" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27f63c358b4fa0fbcfefd7c8be5cfc39c08ce2389f5325687e7762a48d30a5c1" +checksum = "8868cc237ee02e2d9618539a23a8d228b9bb3fc2e7a5b11eed3831de77c395d0" dependencies = [ - "jni", - "ndk 0.6.0", + "jni 0.20.0", + "ndk", "ndk-context", "num-derive", "num-traits", @@ -2499,19 +2434,43 @@ dependencies = [ [[package]] name = "oboe-sys" -version = "0.4.5" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3370abb7372ed744232c12954d920d1a40f1c4686de9e79e800021ef492294bd" +checksum = "7f44155e7fb718d3cfddcf70690b2b51ac4412f347cd9e4fbe511abe9cd7b5f2" dependencies = [ "cc", ] +[[package]] +name = "ogg" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e" +dependencies = [ + "byteorder", +] + [[package]] name = "once_cell" version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" +[[package]] +name = "orbclient" +version = "0.3.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8378ac0dfbd4e7895f2d2c1f1345cab3836910baf3a300b000d04250f0c8428f" +dependencies = [ + "redox_syscall 0.3.5", +] + +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + [[package]] name = "owned_ttf_parser" version = "0.19.0" @@ -2535,7 +2494,17 @@ checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" dependencies = [ "instant", "lock_api", - "parking_lot_core", + "parking_lot_core 0.8.6", +] + +[[package]] +name = "parking_lot" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +dependencies = [ + "lock_api", + "parking_lot_core 0.9.8", ] [[package]] @@ -2544,14 +2513,33 @@ version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "instant", "libc", "redox_syscall 0.2.16", "smallvec", - "winapi 0.3.9", + "winapi", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.3.5", + "smallvec", + "windows-targets 0.48.5", ] +[[package]] +name = "paste" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" + [[package]] name = "peeking_take_while" version = "0.1.2" @@ -2566,12 +2554,12 @@ checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "petgraph" -version = "0.5.1" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "467d164a6de56270bd7c4d070df81d07beace25012d5103ced4e9ff08d6afdb7" +checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" dependencies = [ - "fixedbitset 0.2.0", - "indexmap 1.9.3", + "fixedbitset", + "indexmap 2.0.2", ] [[package]] @@ -2588,29 +2576,24 @@ checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" [[package]] name = "png" -version = "0.16.8" +version = "0.17.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6" +checksum = "dd75bf2d8dd3702b9707cdbc56a5b9ef42cec752eb8b3bafc01234558442aa64" dependencies = [ "bitflags 1.3.2", "crc32fast", - "deflate", + "fdeflate", + "flate2", "miniz_oxide", ] [[package]] -name = "ppv-lite86" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" - -[[package]] -name = "proc-macro-crate" -version = "0.1.5" +name = "pp-rs" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" +checksum = "bb458bb7f6e250e6eb79d5026badc10a3ebb8f9a15d1fff0f13d17c71f4d6dee" dependencies = [ - "toml", + "unicode-xid", ] [[package]] @@ -2632,6 +2615,12 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "profiling" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f89dff0959d98c9758c88826cc002e2c3d0b9dfac4139711d1f30de442f1139b" + [[package]] name = "quote" version = "1.0.33" @@ -2642,34 +2631,10 @@ dependencies = [ ] [[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "libc", - "rand_chacha", - "rand_core", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.4" +name = "radsort" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom", -] +checksum = "17fd96390ed3feda12e1dfe2645ed587e0bea749e319333f104a33ff62f77a0b" [[package]] name = "range-alloc" @@ -2679,28 +2644,15 @@ checksum = "9c8a99fddc9f0ba0a85884b8d14e3592853e787d581ca1816c91349b10e4eeab" [[package]] name = "raw-window-handle" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e28f55143d0548dad60bb4fbdc835a3d7ac6acc3324506450c5fdd6e42903a76" -dependencies = [ - "libc", - "raw-window-handle 0.4.3", -] - -[[package]] -name = "raw-window-handle" -version = "0.4.3" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b800beb9b6e7d2df1fe337c9e3d04e3af22a124460fb4c30fcc22c9117cefb41" -dependencies = [ - "cty", -] +checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9" [[package]] name = "rectangle-pack" -version = "0.3.0" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "831eb2fcb5b72b09c72a3f2d24c09a28d79886512827cd4674d9bac10557f16a" +checksum = "a0d463f2884048e7153449a55166f91028d5b0ea53c79377099ce4e8cf0cf9bb" [[package]] name = "redox_syscall" @@ -2764,51 +2716,55 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3cbb081b9784b07cceb8824c8583f86db4814d172ab043f3c23f7dc600bf83d" +[[package]] +name = "renderdoc-sys" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "216080ab382b992234dda86873c18d4c48358f5cfcb70fd693d7f6f2131b628b" + [[package]] name = "rodio" -version = "0.13.1" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b65c2eda643191f6d1bb12ea323a9db8d9ba95374e9be3780b5a9fb5cfb8520f" +checksum = "bdf1d4dea18dff2e9eb6dca123724f8b60ef44ad74a9ad283cdfe025df7e73fa" dependencies = [ "cpal", - "minimp3", + "lewton", ] [[package]] name = "ron" -version = "0.6.6" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86018df177b1beef6c7c8ef949969c4f7cb9a9344181b92486b23c79995bdaa4" +checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94" dependencies = [ - "base64", - "bitflags 1.3.2", + "base64 0.21.4", + "bitflags 2.4.0", "serde", + "serde_derive", ] [[package]] -name = "rustc-hash" -version = "1.1.0" +name = "rustc-demangle" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" [[package]] -name = "rustc_version" -version = "0.2.3" +name = "rustc-hash" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" -dependencies = [ - "semver", -] +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] -name = "rusty-xinput" -version = "1.2.0" +name = "ruzstd" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2aa654bc32eb9ca14cce1a084abc9dfe43949a4547c35269a094c39272db3bb" +checksum = "ac3ffab8f9715a0d455df4bbb9d21e91135aab3cd3ca187af0cd0c3c3f868fdc" dependencies = [ - "lazy_static", - "log", - "winapi 0.3.9", + "byteorder", + "thiserror-core", + "twox-hash", ] [[package]] @@ -2826,33 +2782,12 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "scoped_threadpool" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" - [[package]] name = "scopeguard" version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" -[[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-parser" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" - [[package]] name = "serde" version = "1.0.188" @@ -2884,41 +2819,6 @@ dependencies = [ "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_smol" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" - -[[package]] -name = "shaderc" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6e2c757b804157350d8d79d718c756899226016486aab07a11dddf8741111a0" -dependencies = [ - "libc", - "shaderc-sys", -] - -[[package]] -name = "shaderc-sys" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a36f3465fce5830d33a58846b9c924f510a1e92bac181834c13b38405efe983b" -dependencies = [ - "cmake", - "libc", -] - [[package]] name = "sharded-slab" version = "0.1.7" @@ -2934,6 +2834,12 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380" +[[package]] +name = "simd-adler32" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" + [[package]] name = "slab" version = "0.4.9" @@ -2944,22 +2850,14 @@ dependencies = [ ] [[package]] -name = "slice-deque" -version = "0.3.0" +name = "slotmap" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31ef6ee280cdefba6d2d0b4b78a84a1c1a3f3a4cec98c2d4231c8bc225de0f25" +checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342" dependencies = [ - "libc", - "mach 0.3.2", - "winapi 0.3.9", + "version_check", ] -[[package]] -name = "slotmap" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bf34684c5767b87de9119790e92e9a1d60056be2ceeaf16a8e6ef13082aeab1" - [[package]] name = "smallvec" version = "1.11.1" @@ -2970,157 +2868,29 @@ dependencies = [ ] [[package]] -name = "spirv-reflect" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cecc7af6a7d3ca6d15f4d6b5077df89c77ad1f4b314d0cabee221656d041dad7" -dependencies = [ - "bitflags 1.3.2", - "cc", - "num-traits", - "serde", - "serde_derive", - "spirv_headers", -] - -[[package]] -name = "spirv-std" -version = "0.4.0-alpha.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e2676f3e58345b7c742b266b5bec022445b43e6471b9a00895faec03a52723e" -dependencies = [ - "bitflags 1.3.2", - "num-traits", - "spirv-std-macros", - "spirv-types", -] - -[[package]] -name = "spirv-std-macros" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3058b5fdfd040e8e3c3e457574f2667fd7148086cd59a45ef7fb3de58108c580" -dependencies = [ - "proc-macro2", - "quote", - "spirv-std-types", - "syn 1.0.65", -] - -[[package]] -name = "spirv-std-types" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a1c6e1dba9130f21b46aedece3a023a19d9622fb1e9fe5c23df4b72be73daaf" - -[[package]] -name = "spirv-types" -version = "0.4.0-alpha.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7509fe29b5051b494de4571309a9cdcd9e93aad937d168cacda449eb4a95844e" - -[[package]] -name = "spirv_cross" -version = "0.23.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60647fadbf83c4a72f0d7ea67a7ca3a81835cf442b8deae5c134c3e0055b2e14" -dependencies = [ - "cc", - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "spirv_headers" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f5b132530b1ac069df335577e3581765995cba5a13995cdbbdbc8fb057c532c" -dependencies = [ - "bitflags 1.3.2", - "num-traits", -] - -[[package]] -name = "stdweb" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef5430c8e36b713e13b48a9f709cc21e046723fe44ce34587b73a830203b533e" - -[[package]] -name = "stdweb" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" -dependencies = [ - "discard", - "rustc_version", - "serde", - "serde_json", - "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.65", -] - -[[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", - "syn 1.0.65", -] - -[[package]] -name = "stdweb-internal-runtime" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0" - -[[package]] -name = "storage-map" -version = "0.3.0" +name = "smol_str" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "418bb14643aa55a7841d5303f72cf512cfb323b8cc221d51580500a1ca75206c" +checksum = "74212e6bbe9a4352329b2f68ba3130c15a3f26fe88ff22dbdc6cdd58fa85e99c" dependencies = [ - "lock_api", + "serde", ] [[package]] -name = "stretch" -version = "0.3.2" +name = "spirv" +version = "0.2.0+1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b0dc6d20ce137f302edf90f9cd3d278866fd7fb139efca6f246161222ad6d87" +checksum = "246bfa38fe3db3f1dfc8ca5a2cdeb7348c78be2112740cc0ec8ef18b6d94f830" dependencies = [ - "lazy_static", - "libm 0.1.4", + "bitflags 1.3.2", + "num-traits", ] [[package]] -name = "strsim" -version = "0.9.3" +name = "static_assertions" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" [[package]] name = "svg_fmt" @@ -3150,6 +2920,41 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "sysinfo" +version = "0.29.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a18d114d420ada3a891e6bc8e96a2023402203296a47cdd65083377dad18ba5" +dependencies = [ + "cfg-if", + "core-foundation-sys 0.8.4", + "libc", + "ntapi", + "once_cell", + "winapi", +] + +[[package]] +name = "taffy" +version = "0.3.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c488aa2bf4bb0cafed312e0876b79a591e3cfa47391f842b7198f9a56547561b" +dependencies = [ + "arrayvec", + "grid", + "num-traits", + "slotmap", +] + +[[package]] +name = "termcolor" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64" +dependencies = [ + "winapi-util", +] + [[package]] name = "thiserror" version = "1.0.49" @@ -3159,6 +2964,26 @@ dependencies = [ "thiserror-impl", ] +[[package]] +name = "thiserror-core" +version = "1.0.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d97345f6437bb2004cd58819d8a9ef8e36cdd7661c2abc4bbde0a7c40d9f497" +dependencies = [ + "thiserror-core-impl", +] + +[[package]] +name = "thiserror-core-impl" +version = "1.0.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10ac1c5050e43014d16b2f94d0d2ce79e65ffdd8b38d8048f9c8f6a8a6da62ac" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.65", +] + [[package]] name = "thiserror-impl" version = "1.0.49" @@ -3176,24 +3001,24 @@ version = "1.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "once_cell", ] [[package]] -name = "thunderdome" -version = "0.3.0" +name = "tinyvec" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7572415bd688d401c52f6e36f4c8e805b9ae1622619303b9fa835d531db0acae" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] [[package]] -name = "toml" -version = "0.5.11" +name = "tinyvec_macros" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" -dependencies = [ - "serde", -] +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "toml_datetime" @@ -3218,7 +3043,7 @@ version = "0.1.37" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -3256,47 +3081,22 @@ dependencies = [ "tracing-core", ] -[[package]] -name = "tracing-serde" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" -dependencies = [ - "serde", - "tracing-core", -] - [[package]] name = "tracing-subscriber" -version = "0.2.25" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" +checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77" dependencies = [ - "ansi_term", - "chrono", - "lazy_static", "matchers", + "nu-ansi-term", + "once_cell", "regex", - "serde", - "serde_json", "sharded-slab", "smallvec", "thread_local", "tracing", "tracing-core", "tracing-log", - "tracing-serde", -] - -[[package]] -name = "tracing-subscriber" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77" -dependencies = [ - "sharded-slab", - "thread_local", - "tracing-core", ] [[package]] @@ -3306,7 +3106,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4575c663a174420fa2d78f4108ff68f65bf2fbb7dd89f33749b6e826b3626e07" dependencies = [ "tracing", - "tracing-subscriber 0.3.17", + "tracing-subscriber", "wasm-bindgen", ] @@ -3316,12 +3116,28 @@ version = "0.19.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49d64318d8311fc2668e48b63969f4343e0a85c4a109aa8460d6672e364b8bd1" +[[package]] +name = "twox-hash" +version = "1.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" +dependencies = [ + "cfg-if", + "static_assertions", +] + [[package]] name = "unicode-ident" version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +[[package]] +name = "unicode-width" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" + [[package]] name = "unicode-xid" version = "0.2.4" @@ -3330,9 +3146,9 @@ checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" [[package]] name = "uuid" -version = "0.8.2" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" +checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d" dependencies = [ "getrandom", "serde", @@ -3380,36 +3196,36 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.69" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cd364751395ca0f68cafb17666eee36b63077fb5ecd972bbcd74c90c4bf736e" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.69" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1114f89ab1f4106e5b55e688b828c0ab0ea593a1ea7c094b141b14cbaaec2d62" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", - "lazy_static", "log", + "once_cell", "proc-macro2", "quote", - "syn 1.0.65", + "syn 2.0.38", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.19" +version = "0.4.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fe9756085a84584ee9457a002b7cdfe0bfff169f45d2591d8be1345a6780e35" +checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "js-sys", "wasm-bindgen", "web-sys", @@ -3417,9 +3233,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.69" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a6ac8995ead1f084a8dea1e65f194d0973800c7f571f6edd70adf06ecf77084" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3427,28 +3243,39 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.69" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5a48c72f299d80557c7c62e37e7225369ecc0c963964059509fbafe917c7549" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 1.0.65", + "syn 2.0.38", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.69" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e7811dd7f9398f14cc76efd356f98f03aa30419dea46aa810d71e819fc97158" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" + +[[package]] +name = "wayland-scanner" +version = "0.29.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f4303d8fa22ab852f789e75a967f0a2cdc430a607751c0499bada3e451cbd53" +dependencies = [ + "proc-macro2", + "quote", + "xml-rs", +] [[package]] name = "web-sys" -version = "0.3.46" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "222b1ef9334f92a21d3fb53dc3fd80f30836959a90f9274a626d7e06315ba3c3" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" dependencies = [ "js-sys", "wasm-bindgen", @@ -3456,68 +3283,109 @@ dependencies = [ [[package]] name = "wgpu" -version = "0.7.1" +version = "0.16.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79a0a0a63fac9492cfaf6e7e4bdf9729c128f1e94124b9e4cbc4004b8cb6d1d8" +checksum = "480c965c9306872eb6255fa55e4b4953be55a8b64d57e61d7ff840d3dcc051cd" dependencies = [ "arrayvec", + "cfg-if", "js-sys", + "log", "naga", - "parking_lot", - "raw-window-handle 0.3.4", + "parking_lot 0.11.2", + "profiling", + "raw-window-handle", "smallvec", - "syn 1.0.65", - "tracing", + "static_assertions", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", "wgpu-core", + "wgpu-hal", "wgpu-types", ] [[package]] name = "wgpu-core" -version = "0.7.2" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20d26a5a744a6531fd3bdf79d4b105fff53ab06757fbf37a6b83ff4461458429" +checksum = "8f478237b4bf0d5b70a39898a66fa67ca3a007d79f2520485b8b0c3dfc46f8c2" dependencies = [ "arrayvec", - "bitflags 1.3.2", - "cfg_aliases", - "copyless", - "fxhash", - "gfx-backend-dx11", - "gfx-backend-dx12", - "gfx-backend-empty", - "gfx-backend-gl", - "gfx-backend-metal", - "gfx-backend-vulkan", - "gfx-hal", + "bit-vec", + "bitflags 2.4.0", + "codespan-reporting", + "log", + "naga", + "parking_lot 0.11.2", + "profiling", + "raw-window-handle", + "rustc-hash", + "smallvec", + "thiserror", + "web-sys", + "wgpu-hal", + "wgpu-types", +] + +[[package]] +name = "wgpu-hal" +version = "0.16.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ecb3258078e936deee14fd4e0febe1cfe9bbb5ffef165cb60218d2ee5eb4448" +dependencies = [ + "android_system_properties", + "arrayvec", + "ash", + "bit-set", + "bitflags 2.4.0", + "block", + "core-graphics-types", + "d3d12", + "foreign-types", + "glow", "gpu-alloc", + "gpu-allocator", "gpu-descriptor", + "hassle-rs", + "js-sys", + "khronos-egl", + "libc", + "libloading 0.8.1", + "log", + "metal", "naga", - "parking_lot", - "raw-window-handle 0.3.4", + "objc", + "parking_lot 0.11.2", + "profiling", + "range-alloc", + "raw-window-handle", + "renderdoc-sys", + "rustc-hash", "smallvec", "thiserror", - "tracing", + "wasm-bindgen", + "web-sys", "wgpu-types", + "winapi", ] [[package]] name = "wgpu-types" -version = "0.7.0" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72fa9ba80626278fd87351555c363378d08122d7601e58319be3d6fa85a87747" +checksum = "d0c153280bb108c2979eb5c7391cb18c56642dd3c072e55f52065e13e2a1252a" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.0", + "js-sys", + "web-sys", ] [[package]] -name = "winapi" -version = "0.2.8" +name = "widestring" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" +checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8" [[package]] name = "winapi" @@ -3529,12 +3397,6 @@ dependencies = [ "winapi-x86_64-pc-windows-gnu", ] -[[package]] -name = "winapi-build" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" - [[package]] name = "winapi-i686-pc-windows-gnu" version = "0.4.0" @@ -3547,7 +3409,7 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" dependencies = [ - "winapi 0.3.9", + "winapi", ] [[package]] @@ -3556,13 +3418,107 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows" +version = "0.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e745dab35a0c4c77aa3ce42d595e13d2003d6902d6b08c9ef5fc326d08da12b" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdacb41e6a96a052c6cb63a144f24900236121c6f63f4f8219fef5977ecb0c25" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-targets 0.48.5", +] + +[[package]] +name = "windows" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9" +dependencies = [ + "windows-core", + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-core" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-implement" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e2ee588991b9e7e6c8338edf3333fbe4da35dc72092643958ebb43f0ab2c49c" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.65", +] + +[[package]] +name = "windows-interface" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6fb8df20c9bcaa8ad6ab513f7b40104840c8867d5751126e4df3b08388d0cc7" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.65", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets 0.42.2", +] + [[package]] name = "windows-sys" version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets", + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", ] [[package]] @@ -3571,51 +3527,93 @@ version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", + "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_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" +[[package]] +name = "windows_aarch64_msvc" +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_i686_gnu" +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_msvc" +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_x86_64_gnu" +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_gnullvm" +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_msvc" +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" @@ -3624,32 +3622,31 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "winit" -version = "0.24.0" +version = "0.28.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da4eda6fce0eb84bd0a33e3c8794eb902e1033d0a1d5a31bc4f19b1b4bbff597" +checksum = "9596d90b45384f5281384ab204224876e8e8bf7d58366d9b795ad99aa9894b94" dependencies = [ + "android-activity", "bitflags 1.3.2", - "cocoa", - "core-foundation 0.9.3", - "core-graphics 0.22.3", - "core-video-sys", + "cfg_aliases", + "core-foundation", + "core-graphics", "dispatch", "instant", - "lazy_static", "libc", "log", - "mio 0.6.23", - "mio-extras", - "ndk 0.2.1", - "ndk-glue 0.2.1", - "ndk-sys 0.2.2", - "objc", - "parking_lot", + "mio", + "ndk", + "objc2", + "once_cell", + "orbclient", "percent-encoding", - "raw-window-handle 0.3.4", + "raw-window-handle", + "redox_syscall 0.3.5", "wasm-bindgen", + "wayland-scanner", "web-sys", - "winapi 0.3.9", + "windows-sys 0.45.0", "x11-dl", ] @@ -3662,25 +3659,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "wio" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d129932f4644ac2396cb456385cbf9e63b5b30c6e8dc4820bdca4eb082037a5" -dependencies = [ - "winapi 0.3.9", -] - -[[package]] -name = "ws2_32-sys" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" -dependencies = [ - "winapi 0.2.8", - "winapi-build", -] - [[package]] name = "x11-dl" version = "2.21.0" @@ -3697,3 +3675,9 @@ name = "xi-unicode" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a67300977d3dc3f8034dae89778f502b6ba20b269527b3223ba59c0cf393bb8a" + +[[package]] +name = "xml-rs" +version = "0.8.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a" diff --git a/game/Cargo.toml b/game/Cargo.toml index 155a313..cf168c6 100644 --- a/game/Cargo.toml +++ b/game/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -bevy = "0.5" +bevy = "0.11.3" # Enable a small amount of optimization in debug mode [profile.dev] diff --git a/game/assets/pokeball.png b/game/assets/pokeball.png new file mode 100644 index 0000000000000000000000000000000000000000..3a8b3ae898b10b5010299730fef33527646a641a GIT binary patch literal 73291 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%0A)klR`606junO9`oc=z+q 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�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 literal 0 HcmV?d00001 diff --git a/game/assets/textures/Game Icons/exitRight.png b/game/assets/textures/Game Icons/exitRight.png new file mode 100644 index 0000000000000000000000000000000000000000..de78ab6f0f02523b296d723667143949cbeab8d7 GIT binary patch literal 384 zcmeAS@N?(olHy`uVBq!ia0y~yU`PRB7G?$phNd$e=?n}EEa{HEjtmSN`?>!lvNA9* z=mz+Nxc(;&FfcIu|NlRrJZcLA0|Q@4kYBKVf4%?y`}XJa*T0`1&tPf9{eppk;fbe< zV@Sl|x7RoF9x@Pcxae~r<jh1n?-T|usVWt*gl6eRv84+c6}zk}*<89N9GO<UU-?kp zq-Q_9C#G6o<?UZJ!HG-r$@!C|(rph_W;dLiIC+E6rJ8x{F1P+Y-Q=-IvS+f!V})ZU zZ5}HgJE`+n>DWn=$I8b}s!Ue$?P$}TV5auir%UCC#bedQJ+md$@Au4?P<LjVz^<<E zH*d}zOF^G0^(hBkel`jEnC$=YI!DE`>}E&#ZULVu`Cd((pLoLz0_!3;)K2l+9dtPv zy3o&U(~|h?<x}I<MfrW3Q<Cm;YQC#t>mP<n=93ko$J$==Co(WFFnGH9xvX<aXaWF9 C`>-zn literal 0 HcmV?d00001 diff --git a/game/assets/textures/Game Icons/right.png b/game/assets/textures/Game Icons/right.png new file mode 100644 index 0000000000000000000000000000000000000000..3f2480f9a5465d9ff1a9869dadebfd96ae9847d1 GIT binary patch literal 368 zcmeAS@N?(olHy`uVBq!ia0y~yU`PRB7G?$phNd$e=?n}EEa{HEjtmSN`?>!lvNA9* zC<ge1xc<it7#JA-|Nq~wy7nFe0|Qq{kYDh7`}6wi_vgpYX9yFn>|$VGc;e~e7!q;# z?e&ekha7lX6SLeBS=<(+bDAZvOgHiH`7kffYk_L|?EQ`+)BjywuhDt_rtOEV(J2#M z>pb(G8?Nh-IWCd(<cpH;v&nm0C(oQ@Wvu>a$r%-wIUzH9IwmVk7Al;SUZmuA$;a`C z=d_g_7M@0`g6f}re2<(oxhzm<bh^Z4j*pS9p!#he|05^WKC=p{KT|O<-2eB$kw1ZK zYR}fECM5mqWL10iSjoUpzP7RRrv$&xnf@gQj{K?M^*IyXdf-USTTY)d;X4i-sgdRN y=?Q!7EPZo=xAe^kzxQ>oxxd|2?5Fi7mU+)^zS&iDcpn1;1B0ilpUXO@geCx*C#Piq literal 0 HcmV?d00001 diff --git a/game/assets/textures/Game Icons/wrench.png b/game/assets/textures/Game Icons/wrench.png new file mode 100644 index 0000000000000000000000000000000000000000..440e7edc41af9d033991f50595721ea70e2da744 GIT binary patch literal 637 zcmeAS@N?(olHy`uVBq!ia0y~yU`PRB4rT@h26vm(GzJC+mUKs7M+SzC{oH>NSs54@ zj01c^T>p~-7#JA-|Nk$#wdorJ1A{<GkY8|qzr6qY`}^zd&-2IYzn{+#_uhIB0|Vnt zPZ!6KjC*fycIO>d;9(8;)F8nz<^TU%o|msZP2A3M-{&%meZiEb-fF}C_=si7vM)W{ ztu9UM`{SCjWJk*LI~#l+`*v(h-5fM8&mqZD&%Gc;@A*?VgH38~o-Fr-<2oN)KB|?< zDxdf-I;_AjYwE79bW!;OxvCXzk{9-NhlZ6jKM`5(l(cc7TcoMSqis_I*;t+aJhapf zYt%U;$lJSLyxU@>z#YNPw;fYYot2xoRCZ#NyI#3M_0yb$32P5YC_HiRd}{Y3I<eR3 zZHImQ3*qc3clw?@ZuN84;yQZeY}BVyYfnUM;JV)`8}?98E5LP!q-==bgzWjB{0zmP zy-9O*YGT!Tc8lfCvJ=V|LlRDP@9a)EwfbS+SB0lfStK3O-<+M{CAM(S|L?EAdY!$$ z^QiVz?TzkNO^vfRPrdO&_d3%YE!C{xMYGZ-H<@*<3S4CM{?U|5rA3kVe!pILOG$Rc z^EOq7qUlQwKUJnHKRVd_$p1daNd;s35@C^>+CM{F7nqnDmwuGtw$a*jcizUI!JLsf zI%jtl-0A<jWv7r@%nzM!8(VyKsHQd^d$H%y!N}S*KD?#;OwUqoi2i@&uu^UM6}#M? z-H*&4F8e;Y@W(2F^d__Bkla{s?36s&uPo2G$NSo0&R72!7#J8lUHx3vIVCg!0IXj) A!T<mO literal 0 HcmV?d00001 diff --git a/game/src/main.rs b/game/src/main.rs index fa2060e..c07a8e2 100644 --- a/game/src/main.rs +++ b/game/src/main.rs @@ -1,126 +1,832 @@ -use bevy::{prelude::*, render::camera::ScalingMode}; -use bevy_sprite::SpritePlugin; -#[derive(Component)] -struct Person; - -#[derive(Component)] -struct Name(String); - -// fn hello_world() { -// println!("hello world!"); -// } - -// fn add_people(mut commands: Commands) { -// commands.spawn((Person, Name("Antoine A".to_string()))); -// commands.spawn((Person, Name("Ricardo B".to_string()))); -// commands.spawn(Person,Name("theo".to_string())); -// } - -// fn greet_people(query: Query<&Name, With<Person>>) { -// for name in &query { -// println!("hello {}!", name.0); -// } -// } -pub const RESOLUTION: f32 = 16.0 / 9.0; -pub const CLEAR: Color = Color::rgb(0.1,0.1,0.1); +//! This example will display a simple menu using Bevy UI where you can start a new game, +//! change some settings or quit. There is no actual game, it will just display the current +//! settings for 5 seconds before going back to the menu. + +use bevy::{ + prelude::*, +}; + +const TEXT_COLOR: Color = Color::rgb(0.9, 0.9, 0.9); + +// Enum that will be used as a global state for the game +#[derive(Clone, Copy, Default, Eq, PartialEq, Debug, Hash, States)] +enum GameState { + #[default] + Splash, + Menu, + Game, +} + +// One of the two settings that can be set through the menu. It will be a resource in the app +#[derive(Resource, Debug, Component, PartialEq, Eq, Clone, Copy)] +enum DisplayQuality { + Low, + Medium, + High, +} + +// One of the two settings that can be set through the menu. It will be a resource in the app +#[derive(Resource, Debug, Component, PartialEq, Eq, Clone, Copy)] +struct Volume(u32); fn main() { - App::new() - .insert_resource(ClearColor(CLEAR)) - .insert_resource(WindowDescriptor{ - width:height * RESOLUTION, - height:240, - title: "Pokeprof".to_string(), - vsync:true, - resizable: false, - ..Default::default() - }) - .add_startup_system(setup.system()) - .add_startup_system(spawn_camera.system()) - .add_startup_system(spawn_player.system()) + App::new()/* + .insert_resource(ResolutionSettings { + large: Vec2::new(1920.0, 1080.0), + medium: Vec2::new(800.0, 600.0), + small: Vec2::new(640.0, 360.0), + })*/ .add_plugins(DefaultPlugins) - .add_startup_system(move_character.system()) + // Insert as resource the initial value for the settings resources + .insert_resource(DisplayQuality::Medium) + .insert_resource(Volume(7)) + // Declare the game state, whose starting value is determined by the `Default` trait + .add_state::<GameState>() + .add_systems(Startup, setup) + // Adds the plugins for each state + .add_plugins((splash::SplashPlugin, menu::MenuPlugin, game::GamePlugin)) + //.add_plugins(splash::SplashPlugin) .run(); - // .add_systems(Startup, add_people) - // .add_systems(Update, (hello_world, greet_people)) - //.run(); } -fn setup(commands: &mut Commands, asset_server: Res<AssetServer>) { - - let map_texture = asset_server.load("map_png/mapdebut.png"); - let map_texture_atlas = TextureAtlas::from_grid(map_texture, Vec2::new(16.0, 16.0), 15, 15); - let map_texture_atlas_handle = asset_server.load("map_png/mapdebut.png"); - commands.insert_resource(MapTextureAtlas(map_texture_atlas_handle)); - - let character_texture = asset_server.load("prog_png/perso.png"); - let character_texture_atlas = TextureAtlas::from_grid(character_texture, Vec2::new(16.0, 16.0), 1, 1); - let character_texture_atlas_handle = asset_server.load("prog_png/perso.png"); - commands.insert_resource(CharacterTextureAtlas(character_texture_atlas_handle)); +fn setup(mut commands: Commands) { + commands.spawn(Camera2dBundle::default()); } +mod splash{ -fn spawn_camera(mut commands: Commands) -{ - let mut camera = OrthographicCameraBundle::new_2d(); - camera.orthographic_projection.scaling_mode = ScalingMode::None; - camera.orthographic_projection.top = 1.0; - camera.orthographic_projection.bottom = -1.0; - camera.orthographic_projection.right = 1.0 * RESOLUTION; - camera.orthographic_projection.left = -1.0 * RESOLUTION; - commands.spawn_bundle(camera); -} -fn spawn_player(mut commands: Commands, character_atlas: Res<CharacterTextureAtlas>) -{ - let mut sprite= TextureAtlasSprite::new(0); - sprite.color = Color::rgb(0.3,0.3,0.9); - sprite.custom_size = Some(Vec2::splat(1.0)); - commands.spawn_bundle(SpriteSheetBundle - { - sprite: sprite, - texture_atlas: character_atlas.0.clone(), - transform: Transform { - translation: Vec3::new(0.0, 0.0, 0.0), - ..Default::default() - }, - ..Default::default() - }); + use bevy::prelude::*; + + use super::{despawn_screen, GameState}; + // This plugin will display a splash screen with Bevy logo for 1 second before switching to the menu + pub struct SplashPlugin; + + impl Plugin for SplashPlugin { + fn build(&self, app: &mut App) { + // As this plugin is managing the splash screen, it will focus on the state `GameState::Splash` + app + // When entering the state, spawn everything needed for this screen + .add_systems(OnEnter(GameState::Splash), splash_setup) + // While in this state, run the `countdown` system + .add_systems(Update, countdown.run_if(in_state(GameState::Splash))) + // When exiting the state, despawn everything that was spawned for this screen + .add_systems(OnExit(GameState::Splash), despawn_screen::<OnSplashScreen>); + } + } + + // Tag component used to tag entities added on the splash screen + #[derive(Component)] + struct OnSplashScreen; + + // Newtype to use a `Timer` for this screen as a resource + #[derive(Resource, Deref, DerefMut)] + struct SplashTimer(Timer); + + fn splash_setup(mut commands: Commands, asset_server: Res<AssetServer>) { + let icon = asset_server.load("pokeball.png"); + // Display the logo + commands + .spawn(( + NodeBundle { + style: Style { + align_items: AlignItems::Center, + justify_content: JustifyContent::Center, + width: Val::Percent(100.0), + ..default() + }, + ..default() + }, + OnSplashScreen, + )) + .with_children(|parent| { + parent.spawn(ImageBundle { + style: Style { + // This will set the logo to be 200px wide, and auto adjust its height + width: Val::Px(200.0), + ..default() + }, + image: UiImage::new(icon), + ..default() + }); + }); + // Insert the timer as a resource + commands.insert_resource(SplashTimer(Timer::from_seconds(1.0, TimerMode::Once))); + } + + // Tick the timer, and change state when finished + fn countdown( + mut game_state: ResMut<NextState<GameState>>, + time: Res<Time>, + mut timer: ResMut<SplashTimer>, + ) { + if timer.tick(time.delta()).finished() { + game_state.set(GameState::Menu); + } + } } -struct CharacterPosition(Vec2); -fn move_character( - keyboard_input: Res<Input<KeyCode>>, - mut character_atlas: ResMut<CharacterTextureAtlas>, - mut character_position: ResMut<CharacterPosition>, - query: Query<(&mut Transform, &Character)> - , -) { - for mut transform in query.iter_mut() { - let mut delta = Vec2::ZERO; - - if keyboard_input.pressed(KeyCode::Left) { - delta.x -= 8.0; + + +mod game { + use bevy::prelude::*; + + use super::{despawn_screen, DisplayQuality, GameState, Volume, TEXT_COLOR}; + + // This plugin will contain the game. In this case, it's just be a screen that will + // display the current settings for 5 seconds before returning to the menu + pub struct GamePlugin; + + impl Plugin for GamePlugin { + fn build(&self, app: &mut App) { + app.add_systems(OnEnter(GameState::Game), game_setup) + .add_systems(Update, game.run_if(in_state(GameState::Game))) + .add_systems(OnExit(GameState::Game), despawn_screen::<OnGameScreen>); } - if keyboard_input.pressed(KeyCode::Right) { - delta.x += 8.0; + } + + // Tag component used to tag entities added on the game screen + #[derive(Component)] + struct OnGameScreen; + + #[derive(Resource, Deref, DerefMut)] + struct GameTimer(Timer); + + fn game_setup( + mut commands: Commands, + display_quality: Res<DisplayQuality>, + volume: Res<Volume>, + ) { + commands + .spawn(( + NodeBundle { + style: Style { + width: Val::Percent(100.0), + height: Val::Percent(100.0), + // center children + align_items: AlignItems::Center, + justify_content: JustifyContent::Center, + ..default() + }, + ..default() + }, + OnGameScreen, + )) + .with_children(|parent| { + // First create a `NodeBundle` for centering what we want to display + parent + .spawn(NodeBundle { + style: Style { + // This will display its children in a column, from top to bottom + flex_direction: FlexDirection::Column, + // `align_items` will align children on the cross axis. Here the main axis is + // vertical (column), so the cross axis is horizontal. This will center the + // children + align_items: AlignItems::Center, + ..default() + }, + background_color: Color::BLACK.into(), + ..default() + }) + .with_children(|parent| { + // Display two lines of text, the second one with the current settings + parent.spawn( + TextBundle::from_section( + "Will be back to the menu shortly...", + TextStyle { + font_size: 80.0, + color: TEXT_COLOR, + ..default() + }, + ) + .with_style(Style { + margin: UiRect::all(Val::Px(50.0)), + ..default() + }), + ); + parent.spawn( + TextBundle::from_sections([ + TextSection::new( + format!("quality: {:?}", *display_quality), + TextStyle { + font_size: 60.0, + color: Color::BLUE, + ..default() + }, + ), + TextSection::new( + " - ", + TextStyle { + font_size: 60.0, + color: TEXT_COLOR, + ..default() + }, + ), + TextSection::new( + format!("volume: {:?}", *volume), + TextStyle { + font_size: 60.0, + color: Color::GREEN, + ..default() + }, + ), + ]) + .with_style(Style { + margin: UiRect::all(Val::Px(50.0)), + ..default() + }), + ); + }); + }); + // Spawn a 5 seconds timer to trigger going back to the menu + commands.insert_resource(GameTimer(Timer::from_seconds(5.0, TimerMode::Once))); + } + + // Tick the timer, and change state when finished + fn game( + time: Res<Time>, + mut game_state: ResMut<NextState<GameState>>, + mut timer: ResMut<GameTimer>, + ) { + if timer.tick(time.delta()).finished() { + game_state.set(GameState::Menu); + } + } +} + +mod menu { + use bevy::{app::AppExit, prelude::*}; + + use super::{despawn_screen, DisplayQuality, GameState, Volume, TEXT_COLOR}; + + // This plugin manages the menu, with 5 different screens: + // - a main menu with "New Game", "Settings", "Quit" + // - a settings menu with two submenus and a back button + // - two settings screen with a setting that can be set and a back button + pub struct MenuPlugin; + + impl Plugin for MenuPlugin { + fn build(&self, app: &mut App) { + app + // At start, the menu is not enabled. This will be changed in `menu_setup` when + // entering the `GameState::Menu` state. + // Current screen in the menu is handled by an independent state from `GameState` + .add_state::<MenuState>() + .add_systems(OnEnter(GameState::Menu), menu_setup) + // Systems to handle the main menu screen + .add_systems(OnEnter(MenuState::Main), main_menu_setup) + .add_systems(OnExit(MenuState::Main), despawn_screen::<OnMainMenuScreen>) + // Systems to handle the settings menu screen + .add_systems(OnEnter(MenuState::Settings), settings_menu_setup) + .add_systems( + OnExit(MenuState::Settings), + despawn_screen::<OnSettingsMenuScreen>, + ) + // Systems to handle the display settings screen + .add_systems( + OnEnter(MenuState::SettingsDisplay), + display_settings_menu_setup, + ) + .add_systems( + Update, + ( + setting_button::<DisplayQuality> + .run_if(in_state(MenuState::SettingsDisplay)), + ), + ) + .add_systems( + OnExit(MenuState::SettingsDisplay), + despawn_screen::<OnDisplaySettingsMenuScreen>, + ) + // Systems to handle the sound settings screen + .add_systems(OnEnter(MenuState::SettingsSound), sound_settings_menu_setup) + .add_systems( + Update, + setting_button::<Volume>.run_if(in_state(MenuState::SettingsSound)), + ) + .add_systems( + OnExit(MenuState::SettingsSound), + despawn_screen::<OnSoundSettingsMenuScreen>, + ) + // Common systems to all screens that handles buttons behavior + .add_systems( + Update, + (menu_action, button_system).run_if(in_state(GameState::Menu)), + ); } - if keyboard_input.pressed(KeyCode::Down) { - delta.y -= 8.0; + } + + // State used for the current menu screen + #[derive(Clone, Copy, Default, Eq, PartialEq, Debug, Hash, States)] + enum MenuState { + Main, + Settings, + SettingsDisplay, + SettingsSound, + #[default] + Disabled, + } + + // Tag component used to tag entities added on the main menu screen + #[derive(Component)] + struct OnMainMenuScreen; + + // Tag component used to tag entities added on the settings menu screen + #[derive(Component)] + struct OnSettingsMenuScreen; + + // Tag component used to tag entities added on the display settings menu screen + #[derive(Component)] + struct OnDisplaySettingsMenuScreen; + + // Tag component used to tag entities added on the sound settings menu screen + #[derive(Component)] + struct OnSoundSettingsMenuScreen; + + const NORMAL_BUTTON: Color = Color::rgb(0.15, 0.15, 0.15); + const HOVERED_BUTTON: Color = Color::rgb(0.25, 0.25, 0.25); + const HOVERED_PRESSED_BUTTON: Color = Color::rgb(0.25, 0.65, 0.25); + const PRESSED_BUTTON: Color = Color::rgb(0.35, 0.75, 0.35); + + // Tag component used to mark which setting is currently selected + #[derive(Component)] + struct SelectedOption; + + // All actions that can be triggered from a button click + #[derive(Component)] + enum MenuButtonAction { + Play, + Settings, + SettingsDisplay, + SettingsSound, + BackToMainMenu, + BackToSettings, + Quit, + } + + // This system handles changing all buttons color based on mouse interaction + fn button_system( + mut interaction_query: Query< + (&Interaction, &mut BackgroundColor, Option<&SelectedOption>), + (Changed<Interaction>, With<Button>), + >, + ) { + for (interaction, mut color, selected) in &mut interaction_query { + *color = match (*interaction, selected) { + (Interaction::Pressed, _) | (Interaction::None, Some(_)) => PRESSED_BUTTON.into(), + (Interaction::Hovered, Some(_)) => HOVERED_PRESSED_BUTTON.into(), + (Interaction::Hovered, None) => HOVERED_BUTTON.into(), + (Interaction::None, None) => NORMAL_BUTTON.into(), + } } - if keyboard_input.pressed(KeyCode::Up) { - delta.y += 8.0; + } + + // This system updates the settings when a new value for a setting is selected, and marks + // the button as the one currently selected + fn setting_button<T: Resource + Component + PartialEq + Copy>( + interaction_query: Query<(&Interaction, &T, Entity), (Changed<Interaction>, With<Button>)>, + mut selected_query: Query<(Entity, &mut BackgroundColor), With<SelectedOption>>, + mut commands: Commands, + mut setting: ResMut<T>, + ) { + for (interaction, button_setting, entity) in &interaction_query { + if *interaction == Interaction::Pressed && *setting != *button_setting { + let (previous_button, mut previous_color) = selected_query.single_mut(); + *previous_color = NORMAL_BUTTON.into(); + commands.entity(previous_button).remove::<SelectedOption>(); + commands.entity(entity).insert(SelectedOption); + *setting = *button_setting; + } } + } - if delta != Vec2::ZERO { - character_position.0 += delta; - transform.translation = Vec3::new( - character_position.0.x, - character_position.0.y, - transform.translation.z, - ); + fn menu_setup(mut menu_state: ResMut<NextState<MenuState>>) { + menu_state.set(MenuState::Main); + } + + fn main_menu_setup(mut commands: Commands, asset_server: Res<AssetServer>) { + // Common style for all buttons on the screen + let button_style = Style { + width: Val::Px(250.0), + height: Val::Px(65.0), + margin: UiRect::all(Val::Px(20.0)), + justify_content: JustifyContent::Center, + align_items: AlignItems::Center, + ..default() + }; + let button_icon_style = Style { + width: Val::Px(30.0), + // This takes the icons out of the flexbox flow, to be positioned exactly + position_type: PositionType::Absolute, + // The icon will be close to the left border of the button + left: Val::Px(10.0), + right: Val::Auto, + ..default() + }; + let button_text_style = TextStyle { + font_size: 40.0, + color: TEXT_COLOR, + ..default() + }; + + commands + .spawn(( + NodeBundle { + style: Style { + width: Val::Percent(100.0), + align_items: AlignItems::Center, + justify_content: JustifyContent::Center, + ..default() + }, + ..default() + }, + OnMainMenuScreen, + )) + .with_children(|parent| { + parent + .spawn(NodeBundle { + style: Style { + flex_direction: FlexDirection::Column, + align_items: AlignItems::Center, + ..default() + }, + background_color: Color::BLACK.into(), + ..default() + }) + .with_children(|parent| { + // Display the game name + parent.spawn( + TextBundle::from_section( + "Poke Profs\nMenu", + TextStyle { + font_size: 80.0, + color: TEXT_COLOR, + ..default() + }, + ) + .with_style(Style { + margin: UiRect::all(Val::Px(50.0)), + ..default() + }), + ); + + // Display three buttons for each action available from the main menu: + // - new game + // - settings + // - quit + parent + .spawn(( + ButtonBundle { + style: button_style.clone(), + background_color: NORMAL_BUTTON.into(), + ..default() + }, + MenuButtonAction::Play, + )) + .with_children(|parent| { + let icon = asset_server.load("textures/Game Icons/right.png"); + parent.spawn(ImageBundle { + style: button_icon_style.clone(), + image: UiImage::new(icon), + ..default() + }); + parent.spawn(TextBundle::from_section( + "New Game", + button_text_style.clone(), + )); + }); + parent + .spawn(( + ButtonBundle { + style: button_style.clone(), + background_color: NORMAL_BUTTON.into(), + ..default() + }, + MenuButtonAction::Settings, + )) + .with_children(|parent| { + let icon = asset_server.load("textures/Game Icons/wrench.png"); + parent.spawn(ImageBundle { + style: button_icon_style.clone(), + image: UiImage::new(icon), + ..default() + }); + parent.spawn(TextBundle::from_section( + "Settings", + button_text_style.clone(), + )); + }); + parent + .spawn(( + ButtonBundle { + style: button_style, + background_color: NORMAL_BUTTON.into(), + ..default() + }, + MenuButtonAction::Quit, + )) + .with_children(|parent| { + let icon = asset_server.load("textures/Game Icons/exitRight.png"); + parent.spawn(ImageBundle { + style: button_icon_style, + image: UiImage::new(icon), + ..default() + }); + parent.spawn(TextBundle::from_section("Quit", button_text_style)); + }); + }); + }); + } + + fn settings_menu_setup(mut commands: Commands) { + let button_style = Style { + width: Val::Px(200.0), + height: Val::Px(65.0), + margin: UiRect::all(Val::Px(20.0)), + justify_content: JustifyContent::Center, + align_items: AlignItems::Center, + ..default() + }; + + let button_text_style = TextStyle { + font_size: 40.0, + color: TEXT_COLOR, + ..default() + }; + + commands + .spawn(( + NodeBundle { + style: Style { + width: Val::Percent(100.0), + align_items: AlignItems::Center, + justify_content: JustifyContent::Center, + ..default() + }, + ..default() + }, + OnSettingsMenuScreen, + )) + .with_children(|parent| { + parent + .spawn(NodeBundle { + style: Style { + flex_direction: FlexDirection::Column, + align_items: AlignItems::Center, + ..default() + }, + background_color: Color::BLACK.into(), + ..default() + }) + .with_children(|parent| { + for (action, text) in [ + (MenuButtonAction::SettingsDisplay, "Display"), + (MenuButtonAction::SettingsSound, "Sound"), + (MenuButtonAction::BackToMainMenu, "Back"), + ] { + parent + .spawn(( + ButtonBundle { + style: button_style.clone(), + background_color: NORMAL_BUTTON.into(), + ..default() + }, + action, + )) + .with_children(|parent| { + parent.spawn(TextBundle::from_section( + text, + button_text_style.clone(), + )); + }); + } + }); + }); + } + + fn display_settings_menu_setup(mut commands: Commands, display_quality: Res<DisplayQuality>) { + let button_style = Style { + width: Val::Px(200.0), + height: Val::Px(65.0), + margin: UiRect::all(Val::Px(20.0)), + justify_content: JustifyContent::Center, + align_items: AlignItems::Center, + ..default() + }; + let button_text_style = TextStyle { + font_size: 40.0, + color: TEXT_COLOR, + ..default() + }; + + commands + .spawn(( + NodeBundle { + style: Style { + width: Val::Percent(100.0), + align_items: AlignItems::Center, + justify_content: JustifyContent::Center, + ..default() + }, + ..default() + }, + OnDisplaySettingsMenuScreen, + )) + .with_children(|parent| { + parent + .spawn(NodeBundle { + style: Style { + flex_direction: FlexDirection::Column, + align_items: AlignItems::Center, + ..default() + }, + background_color: Color::BLACK.into(), + ..default() + }) + .with_children(|parent| { + // Create a new `NodeBundle`, this time not setting its `flex_direction`. It will + // use the default value, `FlexDirection::Row`, from left to right. + parent + .spawn(NodeBundle { + style: Style { + align_items: AlignItems::Center, + ..default() + }, + background_color: Color::BLACK.into(), + ..default() + }) + .with_children(|parent| { + // Display a label for the current setting + parent.spawn(TextBundle::from_section( + "Display Quality", + button_text_style.clone(), + )); + // Display a button for each possible value + for quality_setting in [ + DisplayQuality::Low, + DisplayQuality::Medium, + DisplayQuality::High, + ] { + let mut entity = parent.spawn(ButtonBundle { + style: Style { + width: Val::Px(150.0), + height: Val::Px(65.0), + ..button_style.clone() + }, + background_color: NORMAL_BUTTON.into(), + ..default() + }); + entity.insert(quality_setting).with_children(|parent| { + parent.spawn(TextBundle::from_section( + format!("{quality_setting:?}"), + button_text_style.clone(), + )); + }); + if *display_quality == quality_setting { + entity.insert(SelectedOption); + } + } + }); + // Display the back button to return to the settings screen + parent + .spawn(( + ButtonBundle { + style: button_style, + background_color: NORMAL_BUTTON.into(), + ..default() + }, + MenuButtonAction::BackToSettings, + )) + .with_children(|parent| { + parent.spawn(TextBundle::from_section("Back", button_text_style)); + }); + }); + }); + } + + fn sound_settings_menu_setup(mut commands: Commands, volume: Res<Volume>) { + let button_style = Style { + width: Val::Px(200.0), + height: Val::Px(65.0), + margin: UiRect::all(Val::Px(20.0)), + justify_content: JustifyContent::Center, + align_items: AlignItems::Center, + ..default() + }; + let button_text_style = TextStyle { + font_size: 40.0, + color: TEXT_COLOR, + ..default() + }; + + commands + .spawn(( + NodeBundle { + style: Style { + width: Val::Percent(100.0), + align_items: AlignItems::Center, + justify_content: JustifyContent::Center, + ..default() + }, + ..default() + }, + OnSoundSettingsMenuScreen, + )) + .with_children(|parent| { + parent + .spawn(NodeBundle { + style: Style { + flex_direction: FlexDirection::Column, + align_items: AlignItems::Center, + ..default() + }, + background_color: Color::BLACK.into(), + ..default() + }) + .with_children(|parent| { + parent + .spawn(NodeBundle { + style: Style { + align_items: AlignItems::Center, + ..default() + }, + background_color: Color::BLACK.into(), + ..default() + }) + .with_children(|parent| { + parent.spawn(TextBundle::from_section( + "Volume", + button_text_style.clone(), + )); + for volume_setting in [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] { + let mut entity = parent.spawn(ButtonBundle { + style: Style { + width: Val::Px(30.0), + height: Val::Px(65.0), + ..button_style.clone() + }, + background_color: NORMAL_BUTTON.into(), + ..default() + }); + entity.insert(Volume(volume_setting)); + if *volume == Volume(volume_setting) { + entity.insert(SelectedOption); + } + } + }); + parent + .spawn(( + ButtonBundle { + style: button_style, + background_color: NORMAL_BUTTON.into(), + ..default() + }, + MenuButtonAction::BackToSettings, + )) + .with_children(|parent| { + parent.spawn(TextBundle::from_section("Back", button_text_style)); + }); + }); + }); + } + + fn menu_action( + interaction_query: Query< + (&Interaction, &MenuButtonAction), + (Changed<Interaction>, With<Button>), + >, + mut app_exit_events: EventWriter<AppExit>, + mut menu_state: ResMut<NextState<MenuState>>, + mut game_state: ResMut<NextState<GameState>>, + ) { + for (interaction, menu_button_action) in &interaction_query { + if *interaction == Interaction::Pressed { + match menu_button_action { + MenuButtonAction::Quit => app_exit_events.send(AppExit), + MenuButtonAction::Play => { + game_state.set(GameState::Game); + menu_state.set(MenuState::Disabled); + } + MenuButtonAction::Settings => menu_state.set(MenuState::Settings), + MenuButtonAction::SettingsDisplay => { + menu_state.set(MenuState::SettingsDisplay); + } + MenuButtonAction::SettingsSound => { + menu_state.set(MenuState::SettingsSound); + } + MenuButtonAction::BackToMainMenu => menu_state.set(MenuState::Main), + MenuButtonAction::BackToSettings => { + menu_state.set(MenuState::Settings); + } + } + } } } } - \ No newline at end of file +// Generic system that takes a component as a parameter, and will despawn all entities with that component +fn despawn_screen<T: Component>(to_despawn: Query<Entity, With<T>>, mut commands: Commands) { + for entity in &to_despawn { + commands.entity(entity).despawn_recursive(); + } +} diff --git a/game/target/.rustc_info.json b/game/target/.rustc_info.json index 986c2fc..beda761 100644 --- a/game/target/.rustc_info.json +++ b/game/target/.rustc_info.json @@ -1 +1 @@ -{"rustc_fingerprint":11201075139874679237,"outputs":{"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.73.0 (cc66ad468 2023-10-03)\nbinary: rustc\ncommit-hash: cc66ad468955717ab92600c770da8c1601a4ff33\ncommit-date: 2023-10-03\nhost: x86_64-unknown-linux-gnu\nrelease: 1.73.0\nLLVM version: 17.0.2\n","stderr":""},"15729799797837862367":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/theo/.rustup/toolchains/stable-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"unknown\"\nunix\n","stderr":""}},"successes":{}} \ No newline at end of file +{"rustc_fingerprint":12132392323658241160,"outputs":{"15729799797837862367":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/ho/.rustup/toolchains/stable-x86_64-unknown-linux-gnu\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"unknown\"\nunix\n","stderr":""},"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.72.0 (5680fa18f 2023-08-23)\nbinary: rustc\ncommit-hash: 5680fa18feaa87f3ff04063800aec256c3d4b4be\ncommit-date: 2023-08-23\nhost: x86_64-unknown-linux-gnu\nrelease: 1.72.0\nLLVM version: 16.0.5\n","stderr":""}},"successes":{}} \ No newline at end of file diff --git a/prof_png/pokeball.png b/prof_png/pokeball.png new file mode 100644 index 0000000000000000000000000000000000000000..3a8b3ae898b10b5010299730fef33527646a641a GIT binary patch literal 73291 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%0A)klR`606junO9`oc=z+q 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�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 literal 0 HcmV?d00001 -- GitLab