From ffcc144bb6d50091c86b7aa547a98d5f6c71e392 Mon Sep 17 00:00:00 2001 From: Paul Sajna Date: Sun, 9 Apr 2023 17:50:43 -0700 Subject: [PATCH] initial commit of mdm-viewer --- Cargo.lock | 1586 ++++++++- Cargo.toml | 1 + crates/programs/mdm-viewer/.gitignore | 1 + crates/programs/mdm-viewer/Cargo.lock | 3009 +++++++++++++++++ crates/programs/mdm-viewer/Cargo.toml | 12 + crates/programs/mdm-viewer/data/Roko.fbx | Bin 0 -> 8034976 bytes crates/programs/mdm-viewer/data/circle.json | 1 + crates/programs/mdm-viewer/data/concrete2.dds | Bin 0 -> 699192 bytes crates/programs/mdm-viewer/data/dribble.json | 1 + crates/programs/mdm-viewer/data/dunk.json | 1 + crates/programs/mdm-viewer/data/highfive.json | 1 + crates/programs/mdm-viewer/data/jump.json | 1 + .../mdm-viewer/data/jumping-jacks.json | 1 + .../DarkStormy/DarkStormyBack2048.png | Bin 0 -> 2077584 bytes .../DarkStormy/DarkStormyDown2048.png | Bin 0 -> 1042576 bytes .../DarkStormy/DarkStormyFront2048.png | Bin 0 -> 1921516 bytes .../DarkStormy/DarkStormyLeft2048.png | Bin 0 -> 1936209 bytes .../DarkStormy/DarkStormyRight2048.png | Bin 0 -> 2311914 bytes .../skyboxes/DarkStormy/DarkStormyUp2048.png | Bin 0 -> 1840847 bytes crates/programs/mdm-viewer/data/walk.json | 1 + crates/programs/mdm-viewer/src/main.rs | 478 +++ 21 files changed, 4961 insertions(+), 133 deletions(-) create mode 100644 crates/programs/mdm-viewer/.gitignore create mode 100644 crates/programs/mdm-viewer/Cargo.lock create mode 100644 crates/programs/mdm-viewer/Cargo.toml create mode 100644 crates/programs/mdm-viewer/data/Roko.fbx create mode 100644 crates/programs/mdm-viewer/data/circle.json create mode 100644 crates/programs/mdm-viewer/data/concrete2.dds create mode 100644 crates/programs/mdm-viewer/data/dribble.json create mode 100644 crates/programs/mdm-viewer/data/dunk.json create mode 100644 crates/programs/mdm-viewer/data/highfive.json create mode 100644 crates/programs/mdm-viewer/data/jump.json create mode 100644 crates/programs/mdm-viewer/data/jumping-jacks.json create mode 100644 crates/programs/mdm-viewer/data/skyboxes/DarkStormy/DarkStormyBack2048.png create mode 100644 crates/programs/mdm-viewer/data/skyboxes/DarkStormy/DarkStormyDown2048.png create mode 100644 crates/programs/mdm-viewer/data/skyboxes/DarkStormy/DarkStormyFront2048.png create mode 100644 crates/programs/mdm-viewer/data/skyboxes/DarkStormy/DarkStormyLeft2048.png create mode 100644 crates/programs/mdm-viewer/data/skyboxes/DarkStormy/DarkStormyRight2048.png create mode 100644 crates/programs/mdm-viewer/data/skyboxes/DarkStormy/DarkStormyUp2048.png create mode 100644 crates/programs/mdm-viewer/data/walk.json create mode 100644 crates/programs/mdm-viewer/src/main.rs diff --git a/Cargo.lock b/Cargo.lock index 758e465092..9f6f356d52 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,6 +2,25 @@ # It is not intended for manual editing. version = 3 +[[package]] +name = "aaudio" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "746e7ba6563301e3b2efeba053433c66969f343cd85b3167aa4e6ec7990688a8" +dependencies = [ + "aaudio-sys", + "libc", +] + +[[package]] +name = "aaudio-sys" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c073abf866886bf14e3b76d736af5e96498c39ba2f9af21b68908e30463a4596" +dependencies = [ + "libc", +] + [[package]] name = "ab_glyph" version = "0.2.19" @@ -76,7 +95,7 @@ dependencies = [ "accesskit_macos", "accesskit_windows", "parking_lot 0.12.1", - "winit", + "winit 0.27.5", ] [[package]] @@ -300,7 +319,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4ca8ce00b267af8ccebbd647de0d61e0674b6e61185cc7a592ff88772bed655" dependencies = [ "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -310,7 +329,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "465a6172cf69b960917811022d8f29bc0b7fa1398bc4f78b3c466673db1213b6" dependencies = [ "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -635,7 +654,7 @@ checksum = "ad26f77093333e0e7c6ffe54ebe3582d908a104e448723eec6d43d08b07143fb" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -647,7 +666,7 @@ dependencies = [ "actix-router 0.5.0-beta.2", "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -658,7 +677,7 @@ checksum = "6d44b8fee1ced9671ba043476deddef739dd0959bf77030b26b738cc591737a7" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -684,6 +703,12 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +[[package]] +name = "adler32" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" + [[package]] name = "aes-soft" version = "0.6.4" @@ -742,7 +767,7 @@ dependencies = [ "async-openai", "base64 0.21.0", "chrono", - "clap", + "clap 2.34.0", "concurrency", "dotenv", "easyenv", @@ -792,7 +817,17 @@ checksum = "6e21d6298c933984056b381a70c7248a97370b76dfdbc95dc3da0fcbcd994342" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", +] + +[[package]] +name = "alsa-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527" +dependencies = [ + "libc", + "pkg-config", ] [[package]] @@ -801,7 +836,7 @@ version = "0.0.1" dependencies = [ "anyhow", "chrono", - "clap", + "clap 2.34.0", "config", "container_common", "dotenv", @@ -822,6 +857,30 @@ dependencies = [ "tokio 1.25.0", ] +[[package]] +name = "android-activity" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c77a0045eda8b888c76ea473c2b0515ba6f471d318f8927c5c72240937035a6" +dependencies = [ + "android-properties", + "bitflags", + "cc", + "jni-sys", + "libc", + "log", + "ndk", + "ndk-context", + "ndk-sys", + "num_enum", +] + +[[package]] +name = "android-properties" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" + [[package]] name = "ansi_term" version = "0.12.1" @@ -831,6 +890,46 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "anstream" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "342258dd14006105c2b75ab1bd7543a03bdf0cfc94383303ac212a04939dff6f" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-wincon", + "concolor-override", + "concolor-query", + "is-terminal", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23ea9e81bd02e310c216d080f6223c179012256e5151c41db88d12c88a1684d2" + +[[package]] +name = "anstyle-parse" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7d1bb534e9efed14f3e5f44e7dd1a4f709384023a4165199a4241e18dff0116" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-wincon" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3127af6145b149f3287bb9a0d10ad9c5692dba8c53ad48285e5bec4063834fa" +dependencies = [ + "anstyle", + "windows-sys 0.45.0", +] + [[package]] name = "any_ascii" version = "0.1.7" @@ -843,13 +942,22 @@ version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28b2cd92db5cbd74e8e5028f7e27dd7aa3090e89e4f2a197cc7c8dfb69c7063b" +[[package]] +name = "approx" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" +dependencies = [ + "num-traits 0.2.14", +] + [[package]] name = "arboard" version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6041616acea41d67c4a984709ddab1587fd0b10efe5cc563fee954d2f011854" dependencies = [ - "clipboard-win", + "clipboard-win 4.5.0", "log", "objc", "objc-foundation", @@ -956,7 +1064,7 @@ checksum = "1e805d94e6b5001b651426cf4cd446b1ab5f319d27bab5c644f61de0a804360c" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -965,7 +1073,7 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d7c57d12312ff59c811c0643f4d80830505833c9ffaebd193d819392b265be8e" dependencies = [ - "num-traits", + "num-traits 0.2.14", ] [[package]] @@ -1009,7 +1117,7 @@ version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" dependencies = [ - "hermit-abi", + "hermit-abi 0.1.18", "libc", "winapi 0.3.9", ] @@ -1161,6 +1269,32 @@ dependencies = [ "url_config", ] +[[package]] +name = "bindgen" +version = "0.64.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4" +dependencies = [ + "bitflags", + "cexpr", + "clang-sys", + "lazy_static", + "lazycell", + "peeking_take_while", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex", + "syn 1.0.107", +] + +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + [[package]] name = "bitflags" version = "1.3.2" @@ -1298,7 +1432,7 @@ checksum = "1aca418a974d83d40a0c1f0c5cba6ff4bc28d8df099109ca459a2118d40b6322" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -1372,6 +1506,15 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom", +] + [[package]] name = "cfb" version = "0.4.0" @@ -1428,7 +1571,7 @@ checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73" dependencies = [ "libc", "num-integer", - "num-traits", + "num-traits 0.2.14", "serde", "time 0.1.44", "winapi 0.3.9", @@ -1443,6 +1586,17 @@ dependencies = [ "generic-array", ] +[[package]] +name = "clang-sys" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f" +dependencies = [ + "glob", + "libc", + "libloading", +] + [[package]] name = "clap" version = "2.34.0" @@ -1458,6 +1612,58 @@ dependencies = [ "vec_map", ] +[[package]] +name = "clap" +version = "4.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "046ae530c528f252094e4a77886ee1374437744b2bff1497aa898bbddbbb29b3" +dependencies = [ + "clap_builder", + "clap_derive", + "once_cell", +] + +[[package]] +name = "clap_builder" +version = "4.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "223163f58c9a40c3b0a43e1c4b50a9ce09f007ea2cb1ec258a687945b4b7929f" +dependencies = [ + "anstream", + "anstyle", + "bitflags", + "clap_lex", + "strsim 0.10.0", +] + +[[package]] +name = "clap_derive" +version = "4.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9644cd56d6b87dbe899ef8b053e331c0637664e9e21a33dfcdc36093f5c5c4" +dependencies = [ + "heck 0.4.0", + "proc-macro2", + "quote", + "syn 2.0.13", +] + +[[package]] +name = "clap_lex" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1" + +[[package]] +name = "clipboard-win" +version = "3.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fdf5e01086b6be750428ba4a40619f847eb2e95756eee84b18e06e5f0b50342" +dependencies = [ + "lazy-bytes-cast", + "winapi 0.3.9", +] + [[package]] name = "clipboard-win" version = "4.5.0" @@ -1530,6 +1736,12 @@ dependencies = [ "objc", ] +[[package]] +name = "color_quant" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" + [[package]] name = "combine" version = "3.8.1" @@ -1578,6 +1790,21 @@ dependencies = [ "toml", ] +[[package]] +name = "concolor-override" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a855d4a1978dc52fb0536a04d384c2c0c1aa273597f08b77c8c4d3b2eec6037f" + +[[package]] +name = "concolor-query" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88d11d52c3d7ca2e6d0040212be9e4dbbcd78b6447f535b6b561f449427944cf" +dependencies = [ + "windows-sys 0.45.0", +] + [[package]] name = "concurrency" version = "0.0.1" @@ -1638,6 +1865,15 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + [[package]] name = "cookie" version = "0.14.4" @@ -1693,6 +1929,20 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2df960f5d869b2dd8532793fde43eb5427cceb126c929747a26823ab0eeb536" +[[package]] +name = "copypasta" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "133fc8675ee3a4ec9aa513584deda9aa0faeda3586b87f7f0f2ba082c66fb172" +dependencies = [ + "clipboard-win 3.1.1", + "objc", + "objc-foundation", + "objc_id", + "smithay-clipboard", + "x11-clipboard", +] + [[package]] name = "core-foundation" version = "0.9.3" @@ -1746,6 +1996,15 @@ dependencies = [ "libc", ] +[[package]] +name = "coreaudio-sys" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f034b2258e6c4ade2f73bf87b21047567fb913ee9550837c2316d139b0262b24" +dependencies = [ + "bindgen", +] + [[package]] name = "cpufeatures" version = "0.1.1" @@ -1848,7 +2107,7 @@ dependencies = [ "cfg-if 1.0.0", "crossbeam-utils 0.8.5", "lazy_static", - "memoffset", + "memoffset 0.6.4", "scopeguard", ] @@ -1950,7 +2209,7 @@ dependencies = [ "proc-macro2", "quote", "smallvec 1.10.0", - "syn", + "syn 1.0.107", ] [[package]] @@ -1960,7 +2219,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e" dependencies = [ "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -2000,7 +2259,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.10.0", - "syn", + "syn 1.0.107", ] [[package]] @@ -2014,7 +2273,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.10.0", - "syn", + "syn 1.0.107", ] [[package]] @@ -2025,7 +2284,7 @@ checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" dependencies = [ "darling_core 0.13.4", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -2036,7 +2295,7 @@ checksum = "7618812407e9402654622dd402b0a89dff9ba93badd6540781526117b92aab7e" dependencies = [ "darling_core 0.14.2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -2051,7 +2310,7 @@ version = "0.0.1" dependencies = [ "anyhow", "chrono", - "clap", + "clap 2.34.0", "config", "container_common", "dotenv", @@ -2088,6 +2347,17 @@ dependencies = [ "once_cell", ] +[[package]] +name = "ddsfile" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "594ecd967c2f40db5dde8da4c356975fc1fe030e951c7c3962f6dc2e80042e87" +dependencies = [ + "bitflags", + "byteorder", + "enum_primitive", +] + [[package]] name = "debug-helper" version = "0.3.11" @@ -2123,7 +2393,7 @@ dependencies = [ "darling 0.14.2", "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -2133,7 +2403,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e" dependencies = [ "derive_builder_core", - "syn", + "syn 1.0.107", ] [[package]] @@ -2142,10 +2412,10 @@ version = "0.99.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5cc7b9cef1e351660e5443924e4f43ab25fbbed3e9a5f052df3677deb4d6b320" dependencies = [ - "convert_case", + "convert_case 0.4.0", "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -2179,7 +2449,7 @@ checksum = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -2257,7 +2527,7 @@ checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -2305,7 +2575,7 @@ version = "0.0.1" dependencies = [ "anyhow", "chrono", - "clap", + "clap 2.34.0", "cloud_storage", "config", "container_common", @@ -2429,7 +2699,7 @@ dependencies = [ "egui", "egui-winit", "egui_glow", - "glow", + "glow 0.11.2", "glutin", "js-sys", "percent-encoding 2.2.0", @@ -2438,7 +2708,7 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "winit", + "winit 0.27.5", ] [[package]] @@ -2473,7 +2743,7 @@ dependencies = [ "smithay-clipboard", "tracing", "webbrowser", - "winit", + "winit 0.27.5", ] [[package]] @@ -2484,8 +2754,8 @@ checksum = "6d4b5960cb1bae1c403a6c9027a745210a41913433b10c73b6e7d76a1017f8b4" dependencies = [ "bytemuck", "egui", - "glow", - "memoffset", + "glow 0.11.2", + "memoffset 0.6.4", "tracing", "wasm-bindgen", "web-sys", @@ -2527,7 +2797,16 @@ dependencies = [ "heck 0.3.2", "proc-macro2", "quote", - "syn", + "syn 1.0.107", +] + +[[package]] +name = "enum_primitive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be4551092f4d519593039259a9ed8daedf0da12e5109c5280338073eaeb81180" +dependencies = [ + "num-traits 0.1.43", ] [[package]] @@ -2561,7 +2840,7 @@ dependencies = [ "darling 0.14.2", "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -2603,6 +2882,27 @@ dependencies = [ "parking_lot 0.12.1", ] +[[package]] +name = "errno" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" +dependencies = [ + "errno-dragonfly", + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "errno-dragonfly" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +dependencies = [ + "cc", + "libc", +] + [[package]] name = "error-code" version = "2.3.1" @@ -2691,6 +2991,18 @@ dependencies = [ "errors", ] +[[package]] +name = "filetime" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cbc844cecaee9d4443931972e1289c8ff485cb4cc2767cb03ca139ed6885153" +dependencies = [ + "cfg-if 1.0.0", + "libc", + "redox_syscall 0.2.13", + "windows-sys 0.48.0", +] + [[package]] name = "firestorm" version = "0.4.6" @@ -2715,7 +3027,7 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" dependencies = [ - "num-traits", + "num-traits 0.2.14", ] [[package]] @@ -2736,6 +3048,16 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "fontdue" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a62391ecb864cf12ed06b2af4eda2e609b97657950d6a8f06841b17726ab253" +dependencies = [ + "hashbrown 0.11.2", + "ttf-parser 0.15.2", +] + [[package]] name = "foreign-types" version = "0.3.2" @@ -2763,7 +3085,7 @@ checksum = "c8469d0d40519bc608ec6863f1cc88f3f1deee15913f2f3b3e573d81ed38cccc" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -2815,6 +3137,15 @@ dependencies = [ "pkg-config", ] +[[package]] +name = "fsevent-sys" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" +dependencies = [ + "libc", +] + [[package]] name = "fuchsia-cprng" version = "0.1.1" @@ -2936,7 +3267,7 @@ checksum = "95a73af87da33b5acf53acfebdc339fe592ecf5357ac7c0a7734ab9d8c876a70" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -2984,6 +3315,122 @@ dependencies = [ "byteorder", ] +[[package]] +name = "fyrox" +version = "0.29.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "bitflags", + "clap 4.2.1", + "ddsfile", + "fxhash", + "fyrox-core", + "fyrox-core-derive", + "fyrox-resource", + "fyrox-sound", + "fyrox-ui", + "glow 0.12.1", + "glutin", + "glutin-winit", + "image", + "inflate", + "lazy_static", + "notify", + "rapier2d", + "rapier3d", + "raw-window-handle 0.5.0", + "rayon", + "ron", + "serde", + "spade", + "strum", + "strum_macros", + "tbc", + "walkdir", + "winit 0.28.3", +] + +[[package]] +name = "fyrox-core" +version = "0.23.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "android-activity", + "arrayvec 0.7.2", + "base64 0.21.0", + "bitflags", + "byteorder", + "futures 0.3.26", + "fxhash", + "fyrox-core-derive", + "instant", + "js-sys", + "lazy_static", + "memoffset 0.8.0", + "nalgebra", + "num-traits 0.2.14", + "once_cell", + "parking_lot 0.12.1", + "rand 0.8.5", + "uuid 1.2.2", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "fyrox-core-derive" +version = "0.18.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "convert_case 0.6.0", + "darling 0.14.2", + "fxhash", + "proc-macro2", + "quote", + "syn 1.0.107", +] + +[[package]] +name = "fyrox-resource" +version = "0.7.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "fyrox-core", +] + +[[package]] +name = "fyrox-sound" +version = "0.30.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "fyrox-core", + "fyrox-resource", + "hound", + "hrtf", + "lewton", + "strum", + "strum_macros", + "tinyaudio", +] + +[[package]] +name = "fyrox-ui" +version = "0.20.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "copypasta", + "fontdue", + "fxhash", + "fyrox-core", + "lazy_static", + "notify", + "serde", + "strum", + "strum_macros", + "sysinfo", +] + [[package]] name = "generic-array" version = "0.14.4" @@ -3031,8 +3478,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" dependencies = [ "cfg-if 1.0.0", + "js-sys", "libc", "wasi 0.11.0+wasi-snapshot-preview1", + "wasm-bindgen", +] + +[[package]] +name = "gif" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045" +dependencies = [ + "color_quant", + "weezl", ] [[package]] @@ -3046,6 +3505,12 @@ dependencies = [ "xml-rs", ] +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + [[package]] name = "glow" version = "0.11.2" @@ -3059,43 +3524,67 @@ dependencies = [ ] [[package]] -name = "glutin" -version = "0.30.3" +name = "glow" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524d807cd49a0c56a53ef9a6738cd15e7c8c4e9d37a3b7fdb3c250c1cd5bf7a3" +checksum = "4e007a07a24de5ecae94160f141029e9a347282cfe25d1d58d85d845cf3130f1" +dependencies = [ + "js-sys", + "slotmap", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "glutin" +version = "0.30.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f89bab9ec7715de13d5d5402238e66f48e3a5ae636ebb45aba4013c962e2ff15" dependencies = [ "bitflags", "cfg_aliases", "cgl", - "cocoa", "core-foundation", + "dispatch", "glutin_egl_sys", "glutin_glx_sys", "glutin_wgl_sys", "libloading", - "objc", + "objc2", "once_cell", "raw-window-handle 0.5.0", "wayland-sys 0.30.1", - "windows-sys 0.36.1", + "windows-sys 0.45.0", "x11-dl", ] [[package]] -name = "glutin_egl_sys" -version = "0.3.1" +name = "glutin-winit" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3adbb8fec0e18e340f990c78f79f5f0e142d0d83f46b10909aaa7d251c00afdf" +checksum = "629a873fc04062830bfe8f97c03773bcd7b371e23bcc465d0a61448cd1588fa4" +dependencies = [ + "cfg_aliases", + "glutin", + "raw-window-handle 0.5.0", + "winit 0.28.3", +] + +[[package]] +name = "glutin_egl_sys" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5aaf0abb5c4148685b33101ae326a207946b4d3764d6cdc79f8316cdaa8367d" dependencies = [ "gl_generator", - "windows-sys 0.36.1", + "windows-sys 0.45.0", ] [[package]] name = "glutin_glx_sys" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "947c4850c58211c9627969c2b4e2674764b81ae5b47bab2c9a477d7942f96e0f" +checksum = "1b53cb5fe568964aa066a3ba91eac5ecbac869fb0842cd0dc9e412434f1a1494" dependencies = [ "gl_generator", "x11-dl", @@ -3103,9 +3592,9 @@ dependencies = [ [[package]] name = "glutin_wgl_sys" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20c33975a6c9d49d72c8f032a60079bf8df536954fbf9e4cee90396ace815c57" +checksum = "ef89398e90033fc6bc65e9bd42fd29bbbfd483bda5b56dc5562f455550618165" dependencies = [ "gl_generator", ] @@ -3160,6 +3649,15 @@ dependencies = [ "tracing", ] +[[package]] +name = "hashbrown" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" +dependencies = [ + "ahash 0.7.6", +] + [[package]] name = "hashbrown" version = "0.12.3" @@ -3184,7 +3682,7 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69fe1fcf8b4278d860ad0548329f892a3631fb63f82574df68275f34cdbe0ffa" dependencies = [ - "hashbrown", + "hashbrown 0.12.3", ] [[package]] @@ -3214,6 +3712,12 @@ dependencies = [ "libc", ] +[[package]] +name = "hermit-abi" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" + [[package]] name = "hex" version = "0.4.3" @@ -3250,6 +3754,23 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "hound" +version = "3.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d13cdbd5dbb29f9c88095bbdc2590c9cba0d0a1269b983fef6b2cdd7e9f4db1" + +[[package]] +name = "hrtf" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73088c4a5d7c9d21ee942a54611696f247c4bafc85e9261bf8c409b6857e75be" +dependencies = [ + "byteorder", + "rubato", + "rustfft", +] + [[package]] name = "html5ever" version = "0.26.0" @@ -3261,7 +3782,7 @@ dependencies = [ "markup5ever", "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -3482,6 +4003,23 @@ dependencies = [ "unicode-normalization", ] +[[package]] +name = "image" +version = "0.24.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "527909aa81e20ac3a44803521443a765550f09b5130c2c2fa1ea59c2f8f50a3a" +dependencies = [ + "bytemuck", + "byteorder", + "color_quant", + "gif", + "jpeg-decoder", + "num-rational 0.4.1", + "num-traits 0.2.14", + "png", + "tiff", +] + [[package]] name = "image-generation-service" version = "0.0.1" @@ -3566,7 +4104,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" dependencies = [ "autocfg", - "hashbrown", + "hashbrown 0.12.3", ] [[package]] @@ -3599,7 +4137,7 @@ version = "0.0.1" dependencies = [ "anyhow", "chrono", - "clap", + "clap 2.34.0", "cloud_storage", "config", "container_common", @@ -3633,10 +4171,39 @@ dependencies = [ ] [[package]] -name = "instant" -version = "0.1.9" +name = "inflate" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec" +checksum = "1cdb29978cc5797bd8dcc8e5bf7de604891df2a8dc576973d71a281e916db2ff" +dependencies = [ + "adler32", +] + +[[package]] +name = "inotify" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" +dependencies = [ + "bitflags", + "inotify-sys", + "libc", +] + +[[package]] +name = "inotify-sys" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" +dependencies = [ + "libc", +] + +[[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", "js-sys", @@ -3644,6 +4211,17 @@ dependencies = [ "web-sys", ] +[[package]] +name = "io-lifetimes" +version = "1.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220" +dependencies = [ + "hermit-abi 0.3.1", + "libc", + "windows-sys 0.48.0", +] + [[package]] name = "iovec" version = "0.1.4" @@ -3671,6 +4249,18 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "47be2f14c678be2fdcab04ab1171db51b2762ce6f0a8ee87c8dd4a04ed216135" +[[package]] +name = "is-terminal" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f" +dependencies = [ + "hermit-abi 0.3.1", + "io-lifetimes", + "rustix", + "windows-sys 0.48.0", +] + [[package]] name = "itertools" version = "0.10.5" @@ -3734,6 +4324,12 @@ dependencies = [ "libc", ] +[[package]] +name = "jpeg-decoder" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc0000e42512c92e31c2252315bda326620a4e034105e900c98ec492fa077b3e" + [[package]] name = "js-sys" version = "0.3.61" @@ -3774,6 +4370,26 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" +[[package]] +name = "kqueue" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c8fc60ba15bf51257aa9807a48a61013db043fcf3a78cb0d916e8e396dcad98" +dependencies = [ + "kqueue-sys", + "libc", +] + +[[package]] +name = "kqueue-sys" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8367585489f01bc55dd27404dcf56b95e6da061a256a666ab23be9ba96a2e587" +dependencies = [ + "bitflags", + "libc", +] + [[package]] name = "kurbo" version = "0.8.3" @@ -3795,6 +4411,12 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4345964bb142484797b161f473a503a434de77149dd8c7427788c6e13379388" +[[package]] +name = "lazy-bytes-cast" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10257499f089cd156ad82d0a9cd57d9501fa2c989068992a97eb3c27836f206b" + [[package]] name = "lazy_static" version = "1.4.0" @@ -3804,6 +4426,23 @@ dependencies = [ "spin 0.5.2", ] +[[package]] +name = "lazycell" +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 = "lexical-sort" version = "0.3.1" @@ -3882,6 +4521,12 @@ dependencies = [ "linked-hash-map", ] +[[package]] +name = "linux-raw-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d59d8c75012853d2e872fb56bc8a2e53718e2cafe1a4c823143141c6d90c322f" + [[package]] name = "local-channel" version = "0.1.2" @@ -4000,6 +4645,15 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" +[[package]] +name = "matrixmultiply" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "add85d4dd35074e6fedc608f8c8f513a3548619a9024b751949ef0e8e45a4d84" +dependencies = [ + "rawpointer", +] + [[package]] name = "maybe-async" version = "0.2.6" @@ -4008,7 +4662,7 @@ checksum = "6007f9dad048e0a224f27ca599d669fca8cfa0dac804725aab542b2eb032bce6" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -4034,6 +4688,16 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771" +[[package]] +name = "mdm-viewer" +version = "0.1.0" +dependencies = [ + "fyrox", + "ndarray", + "serde", + "serde_json", +] + [[package]] name = "media" version = "0.0.1" @@ -4067,6 +4731,15 @@ dependencies = [ "autocfg", ] +[[package]] +name = "memoffset" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" +dependencies = [ + "autocfg", +] + [[package]] name = "memory_caching" version = "0.0.1" @@ -4158,7 +4831,7 @@ dependencies = [ "libc", "log", "miow 0.3.7", - "ntapi", + "ntapi 0.3.6", "winapi 0.3.9", ] @@ -4230,7 +4903,7 @@ dependencies = [ "cfg-if 1.0.0", "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -4269,6 +4942,34 @@ dependencies = [ "vcpkg", ] +[[package]] +name = "nalgebra" +version = "0.32.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d68d47bba83f9e2006d117a9a33af1524e655516b8919caac694427a6fb1e511" +dependencies = [ + "approx", + "matrixmultiply", + "nalgebra-macros", + "num-complex 0.4.3", + "num-rational 0.4.1", + "num-traits 0.2.14", + "serde", + "simba", + "typenum", +] + +[[package]] +name = "nalgebra-macros" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d232c68884c0c99810a5a4d333ef7e47689cfd0edc85efc9e54e1e6bf5212766" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.107", +] + [[package]] name = "native-tls" version = "0.2.10" @@ -4287,6 +4988,19 @@ dependencies = [ "tempfile", ] +[[package]] +name = "ndarray" +version = "0.15.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32" +dependencies = [ + "matrixmultiply", + "num-complex 0.4.3", + "num-integer", + "num-traits 0.2.14", + "rawpointer", +] + [[package]] name = "ndk" version = "0.7.0" @@ -4333,7 +5047,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -4395,7 +5109,7 @@ dependencies = [ "bitflags", "cfg-if 1.0.0", "libc", - "memoffset", + "memoffset 0.6.4", ] [[package]] @@ -4435,6 +5149,24 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be" +[[package]] +name = "notify" +version = "5.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58ea850aa68a06e48fdb069c0ec44d0d64c8dbffa49bf3b6f7f0a901fdea1ba9" +dependencies = [ + "bitflags", + "crossbeam-channel", + "filetime", + "fsevent-sys", + "inotify", + "kqueue", + "libc", + "mio 0.8.5", + "walkdir", + "windows-sys 0.42.0", +] + [[package]] name = "ntapi" version = "0.3.6" @@ -4444,6 +5176,15 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "ntapi" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc51db7b362b205941f71232e56c625156eb9a929f8cf74a428fd5bc094a4afc" +dependencies = [ + "winapi 0.3.9", +] + [[package]] name = "num" version = "0.1.42" @@ -4451,11 +5192,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4703ad64153382334aa8db57c637364c322d3372e097840c72000dabdcf6156e" dependencies = [ "num-bigint 0.1.44", - "num-complex", + "num-complex 0.1.43", "num-integer", "num-iter", - "num-rational", - "num-traits", + "num-rational 0.1.42", + "num-traits 0.2.14", ] [[package]] @@ -4465,7 +5206,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e63899ad0da84ce718c14936262a41cee2c79c981fc0a0e7c7beb47d5a07e8c1" dependencies = [ "num-integer", - "num-traits", + "num-traits 0.2.14", "rand 0.4.6", "rustc-serialize", ] @@ -4478,7 +5219,7 @@ checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" dependencies = [ "autocfg", "num-integer", - "num-traits", + "num-traits 0.2.14", ] [[package]] @@ -4492,7 +5233,7 @@ dependencies = [ "libm", "num-integer", "num-iter", - "num-traits", + "num-traits 0.2.14", "rand 0.8.5", "smallvec 1.10.0", "zeroize", @@ -4504,10 +5245,31 @@ version = "0.1.43" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b288631d7878aaf59442cffd36910ea604ecd7745c36054328595114001c9656" dependencies = [ - "num-traits", + "num-traits 0.2.14", "rustc-serialize", ] +[[package]] +name = "num-complex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02e0d21255c828d6f128a1e41534206671e8c3ea0c62f32291e808dc82cff17d" +dependencies = [ + "num-traits 0.2.14", + "serde", +] + +[[package]] +name = "num-derive" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.107", +] + [[package]] name = "num-integer" version = "0.1.44" @@ -4515,7 +5277,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db" dependencies = [ "autocfg", - "num-traits", + "num-traits 0.2.14", ] [[package]] @@ -4526,7 +5288,7 @@ checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59" dependencies = [ "autocfg", "num-integer", - "num-traits", + "num-traits 0.2.14", ] [[package]] @@ -4537,10 +5299,30 @@ checksum = "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e" dependencies = [ "num-bigint 0.1.44", "num-integer", - "num-traits", + "num-traits 0.2.14", "rustc-serialize", ] +[[package]] +name = "num-rational" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" +dependencies = [ + "autocfg", + "num-integer", + "num-traits 0.2.14", +] + +[[package]] +name = "num-traits" +version = "0.1.43" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31" +dependencies = [ + "num-traits 0.2.14", +] + [[package]] name = "num-traits" version = "0.2.14" @@ -4557,7 +5339,7 @@ version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3" dependencies = [ - "hermit-abi", + "hermit-abi 0.1.18", "libc", ] @@ -4579,7 +5361,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -4647,10 +5429,19 @@ dependencies = [ ] [[package]] -name = "once_cell" -version = "1.17.0" +name = "ogg" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66" +checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e" +dependencies = [ + "byteorder", +] + +[[package]] +name = "once_cell" +version = "1.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" [[package]] name = "opaque-debug" @@ -4681,7 +5472,7 @@ checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -4713,6 +5504,24 @@ dependencies = [ "vcpkg", ] +[[package]] +name = "optional" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "978aa494585d3ca4ad74929863093e87cac9790d81fe7aba2b3dc2890643a0fc" + +[[package]] +name = "orbclient" +version = "0.3.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e9829e16c5e112e94efb5e2ad1fe17f8c1c99bb0fcdc8c65c44e935d904767d" +dependencies = [ + "cfg-if 1.0.0", + "redox_syscall 0.2.13", + "wasm-bindgen", + "web-sys", +] + [[package]] name = "ordered-multimap" version = "0.4.3" @@ -4720,7 +5529,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ccd746e37177e1711c20dd619a1620f34f5c8b569c53590a72dedd5344d8924a" dependencies = [ "dlv-list", - "hashbrown", + "hashbrown 0.12.3", ] [[package]] @@ -4729,7 +5538,7 @@ version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e25e9fb15717794fae58ab55c26e044103aad13186fbb625893f9a3bbcc24228" dependencies = [ - "ttf-parser", + "ttf-parser 0.18.1", ] [[package]] @@ -4812,6 +5621,48 @@ dependencies = [ "windows-sys 0.45.0", ] +[[package]] +name = "parry2d" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49c6edd297a40754e762344dbeb454bdfb51472f03280473065b9b0898008ce3" +dependencies = [ + "approx", + "arrayvec 0.7.2", + "bitflags", + "downcast-rs", + "either", + "nalgebra", + "num-derive", + "num-traits 0.2.14", + "rustc-hash", + "simba", + "slab", + "smallvec 1.10.0", + "spade", +] + +[[package]] +name = "parry3d" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c73a9ea58699f422dcd322c134ab02dad2871ba02ee871c9ae1f277c302eb092" +dependencies = [ + "approx", + "arrayvec 0.7.2", + "bitflags", + "downcast-rs", + "either", + "nalgebra", + "num-derive", + "num-traits 0.2.14", + "rustc-hash", + "simba", + "slab", + "smallvec 1.10.0", + "spade", +] + [[package]] name = "paste" version = "1.0.6" @@ -4836,6 +5687,12 @@ dependencies = [ "once_cell", ] +[[package]] +name = "peeking_take_while" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" + [[package]] name = "pem-rfc7468" version = "0.3.1" @@ -4928,7 +5785,7 @@ dependencies = [ "proc-macro-hack", "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -4975,7 +5832,7 @@ checksum = "851c8d0ce9bebe43790dedfc86614c23494ac9f423dd618d3a61fc693eafe61e" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -4986,7 +5843,7 @@ checksum = "48c950132583b500556b1efd71d45b319029f2b71518d979fcc208e16b42426f" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -5089,6 +5946,15 @@ dependencies = [ "termtree", ] +[[package]] +name = "primal-check" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9df7f93fd637f083201473dab4fee2db4c429d32e55e3299980ab3957ab916a0" +dependencies = [ + "num-integer", +] + [[package]] name = "proc-macro-crate" version = "1.3.0" @@ -5107,9 +5973,9 @@ checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" [[package]] name = "proc-macro2" -version = "1.0.47" +version = "1.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725" +checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435" dependencies = [ "unicode-ident", ] @@ -5160,9 +6026,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.23" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" +checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" dependencies = [ "proc-macro2", ] @@ -5297,6 +6163,46 @@ dependencies = [ "rand_core 0.5.1", ] +[[package]] +name = "rapier2d" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f94d294a9b96694c14888dd0e8ce77620dcc4f2f49264109ef835fa5e2285b84" +dependencies = [ + "approx", + "arrayvec 0.7.2", + "bit-vec", + "bitflags", + "crossbeam", + "downcast-rs", + "nalgebra", + "num-derive", + "num-traits 0.2.14", + "parry2d", + "rustc-hash", + "simba", +] + +[[package]] +name = "rapier3d" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62a8a0bd9d3135f7b4eb45d0796540e7bab47b6b7c974f90567ccc5a0454f42b" +dependencies = [ + "approx", + "arrayvec 0.7.2", + "bit-vec", + "bitflags", + "crossbeam", + "downcast-rs", + "nalgebra", + "num-derive", + "num-traits 0.2.14", + "parry3d", + "rustc-hash", + "simba", +] + [[package]] name = "raw-window-handle" version = "0.4.3" @@ -5315,6 +6221,34 @@ dependencies = [ "cty", ] +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + +[[package]] +name = "rayon" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d" +dependencies = [ + "crossbeam-channel", + "crossbeam-deque", + "crossbeam-utils 0.8.5", + "num_cpus", +] + [[package]] name = "rdrand" version = "0.4.0" @@ -5324,6 +6258,15 @@ dependencies = [ "rand_core 0.3.1", ] +[[package]] +name = "realfft" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7695c87f31dc3644760f23fb59a3fed47659703abf76cf2d111f03b9e712342" +dependencies = [ + "rustfft", +] + [[package]] name = "redis" version = "0.13.0" @@ -5419,6 +6362,15 @@ dependencies = [ "bitflags", ] +[[package]] +name = "redox_syscall" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +dependencies = [ + "bitflags", +] + [[package]] name = "redox_users" version = "0.4.0" @@ -5566,6 +6518,23 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "robust" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5864e7ef1a6b7bcf1d6ca3f655e65e724ed3b52546a0d0a663c991522f552ea" + +[[package]] +name = "ron" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "300a51053b1cb55c80b7a9fde4120726ddf25ca241a1cbb926626f62fb136bff" +dependencies = [ + "base64 0.13.0", + "bitflags", + "serde", +] + [[package]] name = "rpassword" version = "5.0.1" @@ -5587,7 +6556,7 @@ dependencies = [ "num-bigint-dig", "num-integer", "num-iter", - "num-traits", + "num-traits 0.2.14", "pkcs1", "pkcs8", "rand_core 0.6.2", @@ -5608,6 +6577,19 @@ dependencies = [ "quick-xml", ] +[[package]] +name = "rubato" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "610bbefcfef7f43cbe275995b6077b74f34480efce293c30327bf44fdad871ed" +dependencies = [ + "log", + "num-complex 0.4.3", + "num-integer", + "num-traits 0.2.14", + "realfft", +] + [[package]] name = "rust-ini" version = "0.18.0" @@ -5649,6 +6631,12 @@ dependencies = [ "url 2.3.1", ] +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + [[package]] name = "rustc-serialize" version = "0.3.24" @@ -5664,6 +6652,35 @@ dependencies = [ "semver", ] +[[package]] +name = "rustfft" +version = "6.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e17d4f6cbdb180c9f4b2a26bbf01c4e647f1e1dea22fe8eb9db54198b32f9434" +dependencies = [ + "num-complex 0.4.3", + "num-integer", + "num-traits 0.2.14", + "primal-check", + "strength_reduce", + "transpose", + "version_check", +] + +[[package]] +name = "rustix" +version = "0.37.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62b24138615de35e32031d041a09032ef3487a616d901ca4db224e7d557efae2" +dependencies = [ + "bitflags", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys", + "windows-sys 0.45.0", +] + [[package]] name = "rustls" version = "0.19.1" @@ -5729,6 +6746,15 @@ dependencies = [ "bytemuck", ] +[[package]] +name = "safe_arch" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "794821e4ccb0d9f979512f9c1973480123f9bd62a90d74ab0f9426fcf8f4a529" +dependencies = [ + "bytemuck", +] + [[package]] name = "same-file" version = "1.0.6" @@ -5773,7 +6799,7 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" name = "scrape_test" version = "0.0.1" dependencies = [ - "clap", + "clap 2.34.0", "errors", "tokio 1.25.0", "web_scrapers", @@ -5814,7 +6840,20 @@ dependencies = [ "crossfont", "log", "smithay-client-toolkit", - "tiny-skia", + "tiny-skia 0.7.0", +] + +[[package]] +name = "sctk-adwaita" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cda4e97be1fd174ccc2aae81c8b694e803fa99b34e8fd0f057a9d70698e3ed09" +dependencies = [ + "ab_glyph", + "log", + "memmap2", + "smithay-client-toolkit", + "tiny-skia 0.8.3", ] [[package]] @@ -5877,9 +6916,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.152" +version = "1.0.159" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb" +checksum = "3c04e8343c3daeec41f58990b9d77068df31209f2af111e059e9fe9646693065" dependencies = [ "serde_derive", ] @@ -5898,20 +6937,20 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.152" +version = "1.0.159" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" +checksum = "4c614d17805b093df4b147b51339e7e44bf05ef59fba1e45d83500bcfb4d8585" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.13", ] [[package]] name = "serde_json" -version = "1.0.91" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" +checksum = "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744" dependencies = [ "itoa 1.0.3", "ryu", @@ -5957,7 +6996,7 @@ checksum = "98d0516900518c29efa217c298fa1f4e6c6ffc85ae29fd7f4ee48f176e1a9ed5" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -6070,6 +7109,12 @@ dependencies = [ "digest 0.10.3", ] +[[package]] +name = "shlex" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" + [[package]] name = "signal-hook-registry" version = "1.3.0" @@ -6079,6 +7124,19 @@ dependencies = [ "libc", ] +[[package]] +name = "simba" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "061507c94fc6ab4ba1c9a0305018408e312e17c041eb63bef8aa726fa33aceae" +dependencies = [ + "approx", + "num-complex 0.4.3", + "num-traits 0.2.14", + "paste", + "wide", +] + [[package]] name = "siphasher" version = "0.3.10" @@ -6123,7 +7181,7 @@ checksum = "133659a15339456eeeb07572eb02a91c91e9815e9cbc89566944d2c8d3efdbf6" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -6194,6 +7252,18 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "spade" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1190e0e8f4eb17fc3dbb2d20e1142676e56aaac3daede39f64a3302d687b80f3" +dependencies = [ + "num-traits 0.2.14", + "optional", + "robust", + "smallvec 1.10.0", +] + [[package]] name = "speculoos" version = "0.9.0" @@ -6333,7 +7403,7 @@ dependencies = [ "sha2 0.10.5", "sqlx-core", "sqlx-rt", - "syn", + "syn 1.0.107", "url 2.3.1", ] @@ -6402,7 +7472,7 @@ dependencies = [ "quote", "serde", "serde_derive", - "syn", + "syn 1.0.107", ] [[package]] @@ -6418,7 +7488,7 @@ dependencies = [ "serde_derive", "serde_json", "sha1 0.6.0", - "syn", + "syn 1.0.107", ] [[package]] @@ -6528,6 +7598,18 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0" +[[package]] +name = "strength_reduce" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe895eb47f22e2ddd4dabc02bce419d2e643c8e3b585c78158b349195bc24d82" + +[[package]] +name = "strict-num" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9df65f20698aeed245efdde3628a6b559ea1239bbb871af1b6e3b58c413b2bd1" + [[package]] name = "string_cache" version = "0.8.4" @@ -6595,7 +7677,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn", + "syn 1.0.107", ] [[package]] @@ -6805,6 +7887,38 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "syn" +version = "2.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c9da457c5285ac1f936ebd076af6dac17a61cfe7826f2076b4d015cf47bc8ec" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "sysinfo" +version = "0.26.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c18a6156d1f27a9592ee18c1a846ca8dd5c258b7179fc193ae87c74ebb666f5" +dependencies = [ + "cfg-if 1.0.0", + "core-foundation-sys", + "libc", + "ntapi 0.4.0", + "once_cell", + "rayon", + "winapi 0.3.9", +] + +[[package]] +name = "tbc" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5488807ecc13530932d661bc4ea7ea621080fdbf354b7f54506fcc46d4d63bf5" + [[package]] name = "tempdir" version = "0.3.7" @@ -6887,7 +8001,7 @@ checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -6899,6 +8013,17 @@ dependencies = [ "num_cpus", ] +[[package]] +name = "tiff" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7449334f9ff2baf290d55d73983a7d6fa15e01198faef72af07e2a8db851e471" +dependencies = [ + "flate2", + "jpeg-decoder", + "weezl", +] + [[package]] name = "tiger" version = "0.1.0" @@ -6975,7 +8100,7 @@ dependencies = [ "proc-macro2", "quote", "standback", - "syn", + "syn 1.0.107", ] [[package]] @@ -6989,8 +8114,22 @@ dependencies = [ "bytemuck", "cfg-if 1.0.0", "png", - "safe_arch", - "tiny-skia-path", + "safe_arch 0.5.2", + "tiny-skia-path 0.7.0", +] + +[[package]] +name = "tiny-skia" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfef3412c6975196fdfac41ef232f910be2bb37b9dd3313a49a1a6bc815a5bdb" +dependencies = [ + "arrayref", + "arrayvec 0.7.2", + "bytemuck", + "cfg-if 1.0.0", + "png", + "tiny-skia-path 0.8.3", ] [[package]] @@ -7003,6 +8142,34 @@ dependencies = [ "bytemuck", ] +[[package]] +name = "tiny-skia-path" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4b5edac058fc98f51c935daea4d805b695b38e2f151241cad125ade2a2ac20d" +dependencies = [ + "arrayref", + "bytemuck", + "strict-num", +] + +[[package]] +name = "tinyaudio" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a545de6815ead637bac6bb8476fa6200bfc770932cf652df6a508ec9960221c0" +dependencies = [ + "aaudio", + "alsa-sys", + "core-foundation-sys", + "coreaudio-sys", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "winapi 0.3.9", +] + [[package]] name = "tinyvec" version = "1.2.0" @@ -7113,7 +8280,7 @@ checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -7321,7 +8488,7 @@ checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -7343,6 +8510,16 @@ dependencies = [ "tracing", ] +[[package]] +name = "transpose" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6522d49d03727ffb138ae4cbc1283d3774f0d10aa7f9bf52e6784c45daf9b23" +dependencies = [ + "num-integer", + "strength_reduce", +] + [[package]] name = "trust-dns-proto" version = "0.19.7" @@ -7388,6 +8565,12 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" +[[package]] +name = "ttf-parser" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b3e06c9b9d80ed6b745c7159c40b311ad2916abb34a49e9be2653b90db0d8dd" + [[package]] name = "ttf-parser" version = "0.18.1" @@ -7400,7 +8583,7 @@ version = "0.0.1" dependencies = [ "anyhow", "chrono", - "clap", + "clap 2.34.0", "cloud_storage", "config", "container_common", @@ -7433,7 +8616,7 @@ version = "0.0.1" dependencies = [ "anyhow", "chrono", - "clap", + "clap 2.34.0", "cloud_storage", "config", "container_common", @@ -7641,7 +8824,7 @@ checksum = "a46ee5bd706ff79131be9c94e7edcb82b703c487766a114434e5790361cf08c5" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -7691,9 +8874,9 @@ dependencies = [ [[package]] name = "unicode-segmentation" -version = "1.7.1" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796" +checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" [[package]] name = "unicode-width" @@ -7819,6 +9002,12 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" +[[package]] +name = "utf8parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + [[package]] name = "uuid" version = "0.8.2" @@ -7833,6 +9022,10 @@ name = "uuid" version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "422ee0de9031b5b948b97a8fc04e3aa35230001a722ddd27943e0be31564ce4c" +dependencies = [ + "getrandom 0.2.8", + "wasm-bindgen", +] [[package]] name = "vcpkg" @@ -7865,7 +9058,7 @@ dependencies = [ "anyhow", "buckets", "chrono", - "clap", + "clap 2.34.0", "cloud_storage", "config", "container_common", @@ -7897,7 +9090,7 @@ version = "0.0.1" dependencies = [ "anyhow", "chrono", - "clap", + "clap 2.34.0", "cloud_storage", "config", "container_common", @@ -7988,15 +9181,15 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn", + "syn 1.0.107", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.24" +version = "0.4.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fba7978c679d53ce2d0ac80c8c175840feb849a161664365d1287b41f2e67f1" +checksum = "f219e0d211ba40266969f6dbdd90636da12f75bee4fc9d6c23d1260dadb51454" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -8022,7 +9215,7 @@ checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -8264,6 +9457,22 @@ dependencies = [ "uuid 0.8.2", ] +[[package]] +name = "weezl" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb" + +[[package]] +name = "wide" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b689b6c49d6549434bf944e6b0f39238cf63693cb7a147e9d887507fffa3b223" +dependencies = [ + "bytemuck", + "safe_arch 0.6.0", +] + [[package]] name = "widestring" version = "0.4.3" @@ -8335,12 +9544,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0286ba339aa753e70765d521bb0242cc48e1194562bfa2a2ad7ac8a6de28f5d5" dependencies = [ "windows-implement", - "windows_aarch64_gnullvm", + "windows_aarch64_gnullvm 0.42.1", "windows_aarch64_msvc 0.42.1", "windows_i686_gnu 0.42.1", "windows_i686_msvc 0.42.1", "windows_x86_64_gnu 0.42.1", - "windows_x86_64_gnullvm", + "windows_x86_64_gnullvm 0.42.1", "windows_x86_64_msvc 0.42.1", ] @@ -8352,7 +9561,7 @@ checksum = "9539b6bd3eadbd9de66c9666b22d802b833da7e996bc06896142e09854a61767" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.107", ] [[package]] @@ -8374,12 +9583,12 @@ version = "0.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" dependencies = [ - "windows_aarch64_gnullvm", + "windows_aarch64_gnullvm 0.42.1", "windows_aarch64_msvc 0.42.1", "windows_i686_gnu 0.42.1", "windows_i686_msvc 0.42.1", "windows_x86_64_gnu 0.42.1", - "windows_x86_64_gnullvm", + "windows_x86_64_gnullvm 0.42.1", "windows_x86_64_msvc 0.42.1", ] @@ -8389,7 +9598,16 @@ version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" dependencies = [ - "windows-targets", + "windows-targets 0.42.1", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.0", ] [[package]] @@ -8398,21 +9616,42 @@ version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7" dependencies = [ - "windows_aarch64_gnullvm", + "windows_aarch64_gnullvm 0.42.1", "windows_aarch64_msvc 0.42.1", "windows_i686_gnu 0.42.1", "windows_i686_msvc 0.42.1", "windows_x86_64_gnu 0.42.1", - "windows_x86_64_gnullvm", + "windows_x86_64_gnullvm 0.42.1", "windows_x86_64_msvc 0.42.1", ] +[[package]] +name = "windows-targets" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +dependencies = [ + "windows_aarch64_gnullvm 0.48.0", + "windows_aarch64_msvc 0.48.0", + "windows_i686_gnu 0.48.0", + "windows_i686_msvc 0.48.0", + "windows_x86_64_gnu 0.48.0", + "windows_x86_64_gnullvm 0.48.0", + "windows_x86_64_msvc 0.48.0", +] + [[package]] name = "windows_aarch64_gnullvm" version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" + [[package]] name = "windows_aarch64_msvc" version = "0.36.1" @@ -8425,6 +9664,12 @@ version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7" +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" + [[package]] name = "windows_i686_gnu" version = "0.36.1" @@ -8437,6 +9682,12 @@ version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640" +[[package]] +name = "windows_i686_gnu" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" + [[package]] name = "windows_i686_msvc" version = "0.36.1" @@ -8449,6 +9700,12 @@ version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605" +[[package]] +name = "windows_i686_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" + [[package]] name = "windows_x86_64_gnu" version = "0.36.1" @@ -8461,12 +9718,24 @@ version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45" +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" + [[package]] name = "windows_x86_64_gnullvm" version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" + [[package]] name = "windows_x86_64_msvc" version = "0.36.1" @@ -8479,6 +9748,12 @@ version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd" +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" + [[package]] name = "winit" version = "0.27.5" @@ -8502,7 +9777,7 @@ dependencies = [ "percent-encoding 2.2.0", "raw-window-handle 0.4.3", "raw-window-handle 0.5.0", - "sctk-adwaita", + "sctk-adwaita 0.4.3", "smithay-client-toolkit", "wasm-bindgen", "wayland-client", @@ -8512,6 +9787,42 @@ dependencies = [ "x11-dl", ] +[[package]] +name = "winit" +version = "0.28.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f504e8c117b9015f618774f8d58cd4781f5a479bc41079c064f974cbb253874" +dependencies = [ + "android-activity", + "bitflags", + "cfg_aliases", + "core-foundation", + "core-graphics", + "dispatch", + "instant", + "libc", + "log", + "mio 0.8.5", + "ndk", + "objc2", + "once_cell", + "orbclient", + "percent-encoding 2.2.0", + "raw-window-handle 0.5.0", + "redox_syscall 0.3.5", + "sctk-adwaita 0.5.4", + "serde", + "smithay-client-toolkit", + "wasm-bindgen", + "wayland-client", + "wayland-commons", + "wayland-protocols", + "wayland-scanner", + "web-sys", + "windows-sys 0.45.0", + "x11-dl", +] + [[package]] name = "winreg" version = "0.6.2" @@ -8549,6 +9860,15 @@ dependencies = [ "winapi-build", ] +[[package]] +name = "x11-clipboard" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "980b9aa9226c3b7de8e2adb11bf20124327c054e0e5812d2aac0b5b5a87e7464" +dependencies = [ + "x11rb", +] + [[package]] name = "x11-dl" version = "2.21.0" diff --git a/Cargo.toml b/Cargo.toml index f9f834f51f..1845e63da4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -47,6 +47,7 @@ members = [ # Programs: Desktop apps "crates/programs/aichatbot-sidecar", + "crates/programs/mdm-viewer", # Services: API servers, jobs, workers, etc. "crates/service/job/analytics_job", diff --git a/crates/programs/mdm-viewer/.gitignore b/crates/programs/mdm-viewer/.gitignore new file mode 100644 index 0000000000..397b4a7624 --- /dev/null +++ b/crates/programs/mdm-viewer/.gitignore @@ -0,0 +1 @@ +*.log diff --git a/crates/programs/mdm-viewer/Cargo.lock b/crates/programs/mdm-viewer/Cargo.lock new file mode 100644 index 0000000000..f593629414 --- /dev/null +++ b/crates/programs/mdm-viewer/Cargo.lock @@ -0,0 +1,3009 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aaudio" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "746e7ba6563301e3b2efeba053433c66969f343cd85b3167aa4e6ec7990688a8" +dependencies = [ + "aaudio-sys", + "libc", +] + +[[package]] +name = "aaudio-sys" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c073abf866886bf14e3b76d736af5e96498c39ba2f9af21b68908e30463a4596" +dependencies = [ + "libc", +] + +[[package]] +name = "ab_glyph" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe21446ad43aa56417a767f3e2f3d7c4ca522904de1dd640529a76e9c5c3b33c" +dependencies = [ + "ab_glyph_rasterizer", + "owned_ttf_parser", +] + +[[package]] +name = "ab_glyph_rasterizer" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046" + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "adler32" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" + +[[package]] +name = "ahash" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" +dependencies = [ + "getrandom", + "once_cell", + "version_check", +] + +[[package]] +name = "alsa-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527" +dependencies = [ + "libc", + "pkg-config", +] + +[[package]] +name = "android-activity" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c77a0045eda8b888c76ea473c2b0515ba6f471d318f8927c5c72240937035a6" +dependencies = [ + "android-properties", + "bitflags", + "cc", + "jni-sys", + "libc", + "log", + "ndk", + "ndk-context", + "ndk-sys", + "num_enum", +] + +[[package]] +name = "android-properties" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04" + +[[package]] +name = "anstream" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "342258dd14006105c2b75ab1bd7543a03bdf0cfc94383303ac212a04939dff6f" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-wincon", + "concolor-override", + "concolor-query", + "is-terminal", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23ea9e81bd02e310c216d080f6223c179012256e5151c41db88d12c88a1684d2" + +[[package]] +name = "anstyle-parse" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7d1bb534e9efed14f3e5f44e7dd1a4f709384023a4165199a4241e18dff0116" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-wincon" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3127af6145b149f3287bb9a0d10ad9c5692dba8c53ad48285e5bec4063834fa" +dependencies = [ + "anstyle", + "windows-sys 0.45.0", +] + +[[package]] +name = "approx" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" +dependencies = [ + "num-traits 0.2.15", +] + +[[package]] +name = "arrayref" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" + +[[package]] +name = "arrayvec" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6" + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + +[[package]] +name = "base64" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a" + +[[package]] +name = "bindgen" +version = "0.64.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4" +dependencies = [ + "bitflags", + "cexpr", + "clang-sys", + "lazy_static", + "lazycell", + "peeking_take_while", + "proc-macro2", + "quote", + "regex", + "rustc-hash", + "shlex", + "syn 1.0.109", +] + +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "block" +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.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" + +[[package]] +name = "bytemuck" +version = "1.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea" + +[[package]] +name = "byteorder" +version = "1.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" + +[[package]] +name = "calloop" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a59225be45a478d772ce015d9743e49e92798ece9e34eda9a6aa2a6a7f40192" +dependencies = [ + "log", + "nix 0.25.1", + "slotmap", + "thiserror", + "vec_map", +] + +[[package]] +name = "cc" +version = "1.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" +dependencies = [ + "jobserver", +] + +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "cfg_aliases" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" + +[[package]] +name = "cgl" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ced0551234e87afee12411d535648dd89d2e7f34c78b753395567aff3d447ff" +dependencies = [ + "libc", +] + +[[package]] +name = "clang-sys" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f" +dependencies = [ + "glob", + "libc", + "libloading", +] + +[[package]] +name = "clap" +version = "4.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "046ae530c528f252094e4a77886ee1374437744b2bff1497aa898bbddbbb29b3" +dependencies = [ + "clap_builder", + "clap_derive", + "once_cell", +] + +[[package]] +name = "clap_builder" +version = "4.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "223163f58c9a40c3b0a43e1c4b50a9ce09f007ea2cb1ec258a687945b4b7929f" +dependencies = [ + "anstream", + "anstyle", + "bitflags", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9644cd56d6b87dbe899ef8b053e331c0637664e9e21a33dfcdc36093f5c5c4" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.13", +] + +[[package]] +name = "clap_lex" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1" + +[[package]] +name = "clipboard-win" +version = "3.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fdf5e01086b6be750428ba4a40619f847eb2e95756eee84b18e06e5f0b50342" +dependencies = [ + "lazy-bytes-cast", + "winapi", +] + +[[package]] +name = "color_quant" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" + +[[package]] +name = "concolor-override" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a855d4a1978dc52fb0536a04d384c2c0c1aa273597f08b77c8c4d3b2eec6037f" + +[[package]] +name = "concolor-query" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88d11d52c3d7ca2e6d0040212be9e4dbbcd78b6447f535b6b561f449427944cf" +dependencies = [ + "windows-sys 0.45.0", +] + +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "copypasta" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "133fc8675ee3a4ec9aa513584deda9aa0faeda3586b87f7f0f2ba082c66fb172" +dependencies = [ + "clipboard-win", + "objc", + "objc-foundation", + "objc_id", + "smithay-clipboard", + "x11-clipboard", +] + +[[package]] +name = "core-foundation" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[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.22.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" +dependencies = [ + "bitflags", + "core-foundation", + "core-graphics-types", + "foreign-types", + "libc", +] + +[[package]] +name = "core-graphics-types" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" +dependencies = [ + "bitflags", + "core-foundation", + "foreign-types", + "libc", +] + +[[package]] +name = "coreaudio-sys" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f034b2258e6c4ade2f73bf87b21047567fb913ee9550837c2316d139b0262b24" +dependencies = [ + "bindgen", +] + +[[package]] +name = "crc32fast" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2801af0d36612ae591caa9568261fddce32ce6e08a7275ea334a06a4ad021a2c" +dependencies = [ + "cfg-if", + "crossbeam-channel", + "crossbeam-deque", + "crossbeam-epoch", + "crossbeam-queue", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200" +dependencies = [ + "cfg-if", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" +dependencies = [ + "cfg-if", + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695" +dependencies = [ + "autocfg", + "cfg-if", + "crossbeam-utils", + "memoffset 0.8.0", + "scopeguard", +] + +[[package]] +name = "crossbeam-queue" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1cfb3ea8a53f37c40dea2c7bedcbd88bdfae54f5e2175d6ecaff1c988353add" +dependencies = [ + "cfg-if", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "darling" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 1.0.109", +] + +[[package]] +name = "darling_macro" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" +dependencies = [ + "darling_core", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ddsfile" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "594ecd967c2f40db5dde8da4c356975fc1fe030e951c7c3962f6dc2e80042e87" +dependencies = [ + "bitflags", + "byteorder", + "enum_primitive", +] + +[[package]] +name = "dispatch" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" + +[[package]] +name = "dlib" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac1b7517328c04c2aa68422fc60a41b92208182142ed04a25879c26c8f878794" +dependencies = [ + "libloading", +] + +[[package]] +name = "downcast-rs" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" + +[[package]] +name = "either" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" + +[[package]] +name = "enum_primitive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be4551092f4d519593039259a9ed8daedf0da12e5109c5280338073eaeb81180" +dependencies = [ + "num-traits 0.1.43", +] + +[[package]] +name = "errno" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" +dependencies = [ + "errno-dragonfly", + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "errno-dragonfly" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "filetime" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cbc844cecaee9d4443931972e1289c8ff485cb4cc2767cb03ca139ed6885153" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.2.16", + "windows-sys 0.48.0", +] + +[[package]] +name = "flate2" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841" +dependencies = [ + "crc32fast", + "miniz_oxide", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "fontdue" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a62391ecb864cf12ed06b2af4eda2e609b97657950d6a8f06841b17726ab253" +dependencies = [ + "hashbrown 0.11.2", + "ttf-parser 0.15.2", +] + +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + +[[package]] +name = "fsevent-sys" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" +dependencies = [ + "libc", +] + +[[package]] +name = "futures" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" + +[[package]] +name = "futures-executor" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", + "num_cpus", +] + +[[package]] +name = "futures-io" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" + +[[package]] +name = "futures-macro" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.13", +] + +[[package]] +name = "futures-sink" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" + +[[package]] +name = "futures-task" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" + +[[package]] +name = "futures-util" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "fxhash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" +dependencies = [ + "byteorder", +] + +[[package]] +name = "fyrox" +version = "0.29.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "bitflags", + "clap", + "ddsfile", + "fxhash", + "fyrox-core", + "fyrox-core-derive", + "fyrox-resource", + "fyrox-sound", + "fyrox-ui", + "glow", + "glutin", + "glutin-winit", + "image", + "inflate", + "lazy_static", + "notify", + "rapier2d", + "rapier3d", + "raw-window-handle", + "rayon", + "ron", + "serde", + "spade", + "strum", + "strum_macros", + "tbc", + "walkdir", + "winit", +] + +[[package]] +name = "fyrox-core" +version = "0.23.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "android-activity", + "arrayvec", + "base64 0.21.0", + "bitflags", + "byteorder", + "futures", + "fxhash", + "fyrox-core-derive", + "instant", + "js-sys", + "lazy_static", + "memoffset 0.8.0", + "nalgebra", + "num-traits 0.2.15", + "once_cell", + "parking_lot", + "rand", + "uuid", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "fyrox-core-derive" +version = "0.18.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "convert_case", + "darling", + "fxhash", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "fyrox-resource" +version = "0.7.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "fyrox-core", +] + +[[package]] +name = "fyrox-sound" +version = "0.30.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "fyrox-core", + "fyrox-resource", + "hound", + "hrtf", + "lewton", + "strum", + "strum_macros", + "tinyaudio", +] + +[[package]] +name = "fyrox-ui" +version = "0.20.0" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=9a4f1c0fbce96eb55839405492ff554757fac6e0#9a4f1c0fbce96eb55839405492ff554757fac6e0" +dependencies = [ + "copypasta", + "fontdue", + "fxhash", + "fyrox-core", + "lazy_static", + "notify", + "serde", + "strum", + "strum_macros", + "sysinfo", +] + +[[package]] +name = "gethostname" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1ebd34e35c46e00bb73e81363248d627782724609fe1b6396f553f68fe3862e" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "getrandom" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c85e1d9ab2eadba7e5040d4e09cbd6d072b76a557ad64e797c2cb9d4da21d7e4" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi", + "wasm-bindgen", +] + +[[package]] +name = "gif" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045" +dependencies = [ + "color_quant", + "weezl", +] + +[[package]] +name = "gl_generator" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a95dfc23a2b4a9a2f5ab41d194f8bfda3cabec42af4e39f08c339eb2a0c124d" +dependencies = [ + "khronos_api", + "log", + "xml-rs", +] + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "glow" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e007a07a24de5ecae94160f141029e9a347282cfe25d1d58d85d845cf3130f1" +dependencies = [ + "js-sys", + "slotmap", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "glutin" +version = "0.30.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f89bab9ec7715de13d5d5402238e66f48e3a5ae636ebb45aba4013c962e2ff15" +dependencies = [ + "bitflags", + "cfg_aliases", + "cgl", + "core-foundation", + "dispatch", + "glutin_egl_sys", + "glutin_glx_sys", + "glutin_wgl_sys", + "libloading", + "objc2", + "once_cell", + "raw-window-handle", + "wayland-sys 0.30.1", + "windows-sys 0.45.0", + "x11-dl", +] + +[[package]] +name = "glutin-winit" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "629a873fc04062830bfe8f97c03773bcd7b371e23bcc465d0a61448cd1588fa4" +dependencies = [ + "cfg_aliases", + "glutin", + "raw-window-handle", + "winit", +] + +[[package]] +name = "glutin_egl_sys" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5aaf0abb5c4148685b33101ae326a207946b4d3764d6cdc79f8316cdaa8367d" +dependencies = [ + "gl_generator", + "windows-sys 0.45.0", +] + +[[package]] +name = "glutin_glx_sys" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b53cb5fe568964aa066a3ba91eac5ecbac869fb0842cd0dc9e412434f1a1494" +dependencies = [ + "gl_generator", + "x11-dl", +] + +[[package]] +name = "glutin_wgl_sys" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef89398e90033fc6bc65e9bd42fd29bbbfd483bda5b56dc5562f455550618165" +dependencies = [ + "gl_generator", +] + +[[package]] +name = "hashbrown" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" +dependencies = [ + "ahash", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "hermit-abi" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" +dependencies = [ + "libc", +] + +[[package]] +name = "hermit-abi" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" + +[[package]] +name = "hound" +version = "3.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d13cdbd5dbb29f9c88095bbdc2590c9cba0d0a1269b983fef6b2cdd7e9f4db1" + +[[package]] +name = "hrtf" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73088c4a5d7c9d21ee942a54611696f247c4bafc85e9261bf8c409b6857e75be" +dependencies = [ + "byteorder", + "rubato", + "rustfft", +] + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "image" +version = "0.24.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "527909aa81e20ac3a44803521443a765550f09b5130c2c2fa1ea59c2f8f50a3a" +dependencies = [ + "bytemuck", + "byteorder", + "color_quant", + "gif", + "jpeg-decoder", + "num-rational", + "num-traits 0.2.15", + "png", + "tiff", +] + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", +] + +[[package]] +name = "inflate" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cdb29978cc5797bd8dcc8e5bf7de604891df2a8dc576973d71a281e916db2ff" +dependencies = [ + "adler32", +] + +[[package]] +name = "inotify" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" +dependencies = [ + "bitflags", + "inotify-sys", + "libc", +] + +[[package]] +name = "inotify-sys" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" +dependencies = [ + "libc", +] + +[[package]] +name = "instant" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "io-lifetimes" +version = "1.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220" +dependencies = [ + "hermit-abi 0.3.1", + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "is-terminal" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f" +dependencies = [ + "hermit-abi 0.3.1", + "io-lifetimes", + "rustix", + "windows-sys 0.48.0", +] + +[[package]] +name = "itoa" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" + +[[package]] +name = "jni-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" + +[[package]] +name = "jobserver" +version = "0.1.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2" +dependencies = [ + "libc", +] + +[[package]] +name = "jpeg-decoder" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc0000e42512c92e31c2252315bda326620a4e034105e900c98ec492fa077b3e" + +[[package]] +name = "js-sys" +version = "0.3.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "khronos_api" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" + +[[package]] +name = "kqueue" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c8fc60ba15bf51257aa9807a48a61013db043fcf3a78cb0d916e8e396dcad98" +dependencies = [ + "kqueue-sys", + "libc", +] + +[[package]] +name = "kqueue-sys" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8367585489f01bc55dd27404dcf56b95e6da061a256a666ab23be9ba96a2e587" +dependencies = [ + "bitflags", + "libc", +] + +[[package]] +name = "lazy-bytes-cast" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10257499f089cd156ad82d0a9cd57d9501fa2c989068992a97eb3c27836f206b" + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "lazycell" +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.141" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3304a64d199bb964be99741b7a14d26972741915b3649639149b2479bb46f4b5" + +[[package]] +name = "libloading" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" +dependencies = [ + "cfg-if", + "winapi", +] + +[[package]] +name = "libm" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "348108ab3fba42ec82ff6e9564fc4ca0247bdccdc68dd8af9764bbc79c3c8ffb" + +[[package]] +name = "linux-raw-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d59d8c75012853d2e872fb56bc8a2e53718e2cafe1a4c823143141c6d90c322f" + +[[package]] +name = "lock_api" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "malloc_buf" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" +dependencies = [ + "libc", +] + +[[package]] +name = "matrixmultiply" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "add85d4dd35074e6fedc608f8c8f513a3548619a9024b751949ef0e8e45a4d84" +dependencies = [ + "rawpointer", +] + +[[package]] +name = "mdm-viewer" +version = "0.1.0" +dependencies = [ + "fyrox", + "ndarray", + "serde", + "serde_json", +] + +[[package]] +name = "memchr" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" + +[[package]] +name = "memmap2" +version = "0.5.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" +dependencies = [ + "libc", +] + +[[package]] +name = "memoffset" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" +dependencies = [ + "autocfg", +] + +[[package]] +name = "memoffset" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" +dependencies = [ + "autocfg", +] + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" +dependencies = [ + "adler", +] + +[[package]] +name = "mio" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b9d9a46eff5b4ff64b45a9e316a6d1e0bc719ef429cbec4dc630684212bfdf9" +dependencies = [ + "libc", + "log", + "wasi", + "windows-sys 0.45.0", +] + +[[package]] +name = "nalgebra" +version = "0.32.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d68d47bba83f9e2006d117a9a33af1524e655516b8919caac694427a6fb1e511" +dependencies = [ + "approx", + "matrixmultiply", + "nalgebra-macros", + "num-complex", + "num-rational", + "num-traits 0.2.15", + "serde", + "simba", + "typenum", +] + +[[package]] +name = "nalgebra-macros" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d232c68884c0c99810a5a4d333ef7e47689cfd0edc85efc9e54e1e6bf5212766" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ndarray" +version = "0.15.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32" +dependencies = [ + "matrixmultiply", + "num-complex", + "num-integer", + "num-traits 0.2.15", + "rawpointer", +] + +[[package]] +name = "ndk" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "451422b7e4718271c8b5b3aadf5adedba43dc76312454b387e98fae0fc951aa0" +dependencies = [ + "bitflags", + "jni-sys", + "ndk-sys", + "num_enum", + "raw-window-handle", + "thiserror", +] + +[[package]] +name = "ndk-context" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" + +[[package]] +name = "ndk-sys" +version = "0.4.1+23.1.7779620" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3cf2aae958bd232cac5069850591667ad422d263686d75b52a065f9badeee5a3" +dependencies = [ + "jni-sys", +] + +[[package]] +name = "nix" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" +dependencies = [ + "bitflags", + "cfg-if", + "libc", + "memoffset 0.6.5", +] + +[[package]] +name = "nix" +version = "0.25.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4" +dependencies = [ + "autocfg", + "bitflags", + "cfg-if", + "libc", + "memoffset 0.6.5", +] + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "notify" +version = "5.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58ea850aa68a06e48fdb069c0ec44d0d64c8dbffa49bf3b6f7f0a901fdea1ba9" +dependencies = [ + "bitflags", + "crossbeam-channel", + "filetime", + "fsevent-sys", + "inotify", + "kqueue", + "libc", + "mio", + "walkdir", + "windows-sys 0.42.0", +] + +[[package]] +name = "ntapi" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc51db7b362b205941f71232e56c625156eb9a929f8cf74a428fd5bc094a4afc" +dependencies = [ + "winapi", +] + +[[package]] +name = "num-complex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02e0d21255c828d6f128a1e41534206671e8c3ea0c62f32291e808dc82cff17d" +dependencies = [ + "num-traits 0.2.15", + "serde", +] + +[[package]] +name = "num-derive" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "num-integer" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" +dependencies = [ + "autocfg", + "num-traits 0.2.15", +] + +[[package]] +name = "num-rational" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" +dependencies = [ + "autocfg", + "num-integer", + "num-traits 0.2.15", +] + +[[package]] +name = "num-traits" +version = "0.1.43" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31" +dependencies = [ + "num-traits 0.2.15", +] + +[[package]] +name = "num-traits" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +dependencies = [ + "autocfg", + "libm", +] + +[[package]] +name = "num_cpus" +version = "1.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" +dependencies = [ + "hermit-abi 0.2.6", + "libc", +] + +[[package]] +name = "num_enum" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "objc" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" +dependencies = [ + "malloc_buf", +] + +[[package]] +name = "objc-foundation" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9" +dependencies = [ + "block", + "objc", + "objc_id", +] + +[[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_id" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b" +dependencies = [ + "objc", +] + +[[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.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" + +[[package]] +name = "optional" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "978aa494585d3ca4ad74929863093e87cac9790d81fe7aba2b3dc2890643a0fc" + +[[package]] +name = "orbclient" +version = "0.3.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e9829e16c5e112e94efb5e2ad1fe17f8c1c99bb0fcdc8c65c44e935d904767d" +dependencies = [ + "cfg-if", + "redox_syscall 0.2.16", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "owned_ttf_parser" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e25e9fb15717794fae58ab55c26e044103aad13186fbb625893f9a3bbcc24228" +dependencies = [ + "ttf-parser 0.18.1", +] + +[[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", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.2.16", + "smallvec", + "windows-sys 0.45.0", +] + +[[package]] +name = "parry2d" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49c6edd297a40754e762344dbeb454bdfb51472f03280473065b9b0898008ce3" +dependencies = [ + "approx", + "arrayvec", + "bitflags", + "downcast-rs", + "either", + "nalgebra", + "num-derive", + "num-traits 0.2.15", + "rustc-hash", + "simba", + "slab", + "smallvec", + "spade", +] + +[[package]] +name = "parry3d" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c73a9ea58699f422dcd322c134ab02dad2871ba02ee871c9ae1f277c302eb092" +dependencies = [ + "approx", + "arrayvec", + "bitflags", + "downcast-rs", + "either", + "nalgebra", + "num-derive", + "num-traits 0.2.15", + "rustc-hash", + "simba", + "slab", + "smallvec", + "spade", +] + +[[package]] +name = "paste" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79" + +[[package]] +name = "peeking_take_while" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" + +[[package]] +name = "percent-encoding" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" + +[[package]] +name = "pin-project-lite" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkg-config" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160" + +[[package]] +name = "png" +version = "0.17.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d708eaf860a19b19ce538740d2b4bdeeb8337fa53f7738455e706623ad5c638" +dependencies = [ + "bitflags", + "crc32fast", + "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 = "primal-check" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9df7f93fd637f083201473dab4fee2db4c429d32e55e3299980ab3957ab916a0" +dependencies = [ + "num-integer", +] + +[[package]] +name = "proc-macro-crate" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +dependencies = [ + "once_cell", + "toml_edit", +] + +[[package]] +name = "proc-macro2" +version = "1.0.56" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" +dependencies = [ + "proc-macro2", +] + +[[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" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "rapier2d" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f94d294a9b96694c14888dd0e8ce77620dcc4f2f49264109ef835fa5e2285b84" +dependencies = [ + "approx", + "arrayvec", + "bit-vec", + "bitflags", + "crossbeam", + "downcast-rs", + "nalgebra", + "num-derive", + "num-traits 0.2.15", + "parry2d", + "rustc-hash", + "simba", +] + +[[package]] +name = "rapier3d" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62a8a0bd9d3135f7b4eb45d0796540e7bab47b6b7c974f90567ccc5a0454f42b" +dependencies = [ + "approx", + "arrayvec", + "bit-vec", + "bitflags", + "crossbeam", + "downcast-rs", + "nalgebra", + "num-derive", + "num-traits 0.2.15", + "parry3d", + "rustc-hash", + "simba", +] + +[[package]] +name = "raw-window-handle" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9" + +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + +[[package]] +name = "rayon" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d" +dependencies = [ + "crossbeam-channel", + "crossbeam-deque", + "crossbeam-utils", + "num_cpus", +] + +[[package]] +name = "realfft" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7695c87f31dc3644760f23fb59a3fed47659703abf76cf2d111f03b9e712342" +dependencies = [ + "rustfft", +] + +[[package]] +name = "redox_syscall" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +dependencies = [ + "bitflags", +] + +[[package]] +name = "redox_syscall" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +dependencies = [ + "bitflags", +] + +[[package]] +name = "regex" +version = "1.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b1f693b24f6ac912f4893ef08244d70b6067480d2f1a46e950c9691e6749d1d" +dependencies = [ + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "robust" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5864e7ef1a6b7bcf1d6ca3f655e65e724ed3b52546a0d0a663c991522f552ea" + +[[package]] +name = "ron" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "300a51053b1cb55c80b7a9fde4120726ddf25ca241a1cbb926626f62fb136bff" +dependencies = [ + "base64 0.13.1", + "bitflags", + "serde", +] + +[[package]] +name = "rubato" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "610bbefcfef7f43cbe275995b6077b74f34480efce293c30327bf44fdad871ed" +dependencies = [ + "log", + "num-complex", + "num-integer", + "num-traits 0.2.15", + "realfft", +] + +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + +[[package]] +name = "rustfft" +version = "6.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e17d4f6cbdb180c9f4b2a26bbf01c4e647f1e1dea22fe8eb9db54198b32f9434" +dependencies = [ + "num-complex", + "num-integer", + "num-traits 0.2.15", + "primal-check", + "strength_reduce", + "transpose", + "version_check", +] + +[[package]] +name = "rustix" +version = "0.37.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85597d61f83914ddeba6a47b3b8ffe7365107221c2e557ed94426489fefb5f77" +dependencies = [ + "bitflags", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys", + "windows-sys 0.48.0", +] + +[[package]] +name = "rustversion" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06" + +[[package]] +name = "ryu" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" + +[[package]] +name = "safe_arch" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "794821e4ccb0d9f979512f9c1973480123f9bd62a90d74ab0f9426fcf8f4a529" +dependencies = [ + "bytemuck", +] + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "scoped-tls" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" + +[[package]] +name = "scopeguard" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" + +[[package]] +name = "sctk-adwaita" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cda4e97be1fd174ccc2aae81c8b694e803fa99b34e8fd0f057a9d70698e3ed09" +dependencies = [ + "ab_glyph", + "log", + "memmap2", + "smithay-client-toolkit", + "tiny-skia", +] + +[[package]] +name = "serde" +version = "1.0.159" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c04e8343c3daeec41f58990b9d77068df31209f2af111e059e9fe9646693065" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.159" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c614d17805b093df4b147b51339e7e44bf05ef59fba1e45d83500bcfb4d8585" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.13", +] + +[[package]] +name = "serde_json" +version = "1.0.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "shlex" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" + +[[package]] +name = "simba" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "061507c94fc6ab4ba1c9a0305018408e312e17c041eb63bef8aa726fa33aceae" +dependencies = [ + "approx", + "num-complex", + "num-traits 0.2.15", + "paste", + "wide", +] + +[[package]] +name = "slab" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d" +dependencies = [ + "autocfg", +] + +[[package]] +name = "slotmap" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342" +dependencies = [ + "version_check", +] + +[[package]] +name = "smallvec" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" + +[[package]] +name = "smithay-client-toolkit" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f307c47d32d2715eb2e0ece5589057820e0e5e70d07c247d1063e844e107f454" +dependencies = [ + "bitflags", + "calloop", + "dlib", + "lazy_static", + "log", + "memmap2", + "nix 0.24.3", + "pkg-config", + "wayland-client", + "wayland-cursor", + "wayland-protocols", +] + +[[package]] +name = "smithay-clipboard" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a345c870a1fae0b1b779085e81b51e614767c239e93503588e54c5b17f4b0e8" +dependencies = [ + "smithay-client-toolkit", + "wayland-client", +] + +[[package]] +name = "spade" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1190e0e8f4eb17fc3dbb2d20e1142676e56aaac3daede39f64a3302d687b80f3" +dependencies = [ + "num-traits 0.2.15", + "optional", + "robust", + "smallvec", +] + +[[package]] +name = "strength_reduce" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe895eb47f22e2ddd4dabc02bce419d2e643c8e3b585c78158b349195bc24d82" + +[[package]] +name = "strict-num" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9df65f20698aeed245efdde3628a6b559ea1239bbb871af1b6e3b58c413b2bd1" + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "strum" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" + +[[package]] +name = "strum_macros" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 1.0.109", +] + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c9da457c5285ac1f936ebd076af6dac17a61cfe7826f2076b4d015cf47bc8ec" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "sysinfo" +version = "0.26.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c18a6156d1f27a9592ee18c1a846ca8dd5c258b7179fc193ae87c74ebb666f5" +dependencies = [ + "cfg-if", + "core-foundation-sys", + "libc", + "ntapi", + "once_cell", + "rayon", + "winapi", +] + +[[package]] +name = "tbc" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5488807ecc13530932d661bc4ea7ea621080fdbf354b7f54506fcc46d4d63bf5" + +[[package]] +name = "thiserror" +version = "1.0.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.13", +] + +[[package]] +name = "tiff" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7449334f9ff2baf290d55d73983a7d6fa15e01198faef72af07e2a8db851e471" +dependencies = [ + "flate2", + "jpeg-decoder", + "weezl", +] + +[[package]] +name = "tiny-skia" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfef3412c6975196fdfac41ef232f910be2bb37b9dd3313a49a1a6bc815a5bdb" +dependencies = [ + "arrayref", + "arrayvec", + "bytemuck", + "cfg-if", + "png", + "tiny-skia-path", +] + +[[package]] +name = "tiny-skia-path" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4b5edac058fc98f51c935daea4d805b695b38e2f151241cad125ade2a2ac20d" +dependencies = [ + "arrayref", + "bytemuck", + "strict-num", +] + +[[package]] +name = "tinyaudio" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a545de6815ead637bac6bb8476fa6200bfc770932cf652df6a508ec9960221c0" +dependencies = [ + "aaudio", + "alsa-sys", + "core-foundation-sys", + "coreaudio-sys", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "winapi", +] + +[[package]] +name = "tinyvec" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "toml_datetime" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ab8ed2edee10b50132aed5f331333428b011c99402b5a534154ed15746f9622" + +[[package]] +name = "toml_edit" +version = "0.19.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "239410c8609e8125456927e6707163a3b1fdb40561e4b803bc041f466ccfdc13" +dependencies = [ + "indexmap", + "toml_datetime", + "winnow", +] + +[[package]] +name = "transpose" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6522d49d03727ffb138ae4cbc1283d3774f0d10aa7f9bf52e6784c45daf9b23" +dependencies = [ + "num-integer", + "strength_reduce", +] + +[[package]] +name = "ttf-parser" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b3e06c9b9d80ed6b745c7159c40b311ad2916abb34a49e9be2653b90db0d8dd" + +[[package]] +name = "ttf-parser" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0609f771ad9c6155384897e1df4d948e692667cc0588548b68eb44d052b27633" + +[[package]] +name = "typenum" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" + +[[package]] +name = "unicode-ident" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4" + +[[package]] +name = "unicode-segmentation" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" + +[[package]] +name = "utf8parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + +[[package]] +name = "uuid" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b55a3fef2a1e3b3a00ce878640918820d3c51081576ac657d23af9fc7928fdb" +dependencies = [ + "getrandom", + "wasm-bindgen", +] + +[[package]] +name = "vec_map" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" + +[[package]] +name = "version_check" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" + +[[package]] +name = "walkdir" +version = "2.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 1.0.109", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f219e0d211ba40266969f6dbdd90636da12f75bee4fc9d6c23d1260dadb51454" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d" + +[[package]] +name = "wayland-client" +version = "0.29.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f3b068c05a039c9f755f881dc50f01732214f5685e379829759088967c46715" +dependencies = [ + "bitflags", + "downcast-rs", + "libc", + "nix 0.24.3", + "scoped-tls", + "wayland-commons", + "wayland-scanner", + "wayland-sys 0.29.5", +] + +[[package]] +name = "wayland-commons" +version = "0.29.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8691f134d584a33a6606d9d717b95c4fa20065605f798a3f350d78dced02a902" +dependencies = [ + "nix 0.24.3", + "once_cell", + "smallvec", + "wayland-sys 0.29.5", +] + +[[package]] +name = "wayland-cursor" +version = "0.29.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6865c6b66f13d6257bef1cd40cbfe8ef2f150fb8ebbdb1e8e873455931377661" +dependencies = [ + "nix 0.24.3", + "wayland-client", + "xcursor", +] + +[[package]] +name = "wayland-protocols" +version = "0.29.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b950621f9354b322ee817a23474e479b34be96c2e909c14f7bc0100e9a970bc6" +dependencies = [ + "bitflags", + "wayland-client", + "wayland-commons", + "wayland-scanner", +] + +[[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 = "wayland-sys" +version = "0.29.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be12ce1a3c39ec7dba25594b97b42cb3195d54953ddb9d3d95a7c3902bc6e9d4" +dependencies = [ + "dlib", + "lazy_static", + "pkg-config", +] + +[[package]] +name = "wayland-sys" +version = "0.30.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96b2a02ac608e07132978689a6f9bf4214949c85998c247abadd4f4129b1aa06" +dependencies = [ + "dlib", + "lazy_static", + "log", + "pkg-config", +] + +[[package]] +name = "web-sys" +version = "0.3.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e33b99f4b23ba3eec1a53ac264e35a755f00e966e0065077d6027c0f575b0b97" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "weezl" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb" + +[[package]] +name = "wide" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b689b6c49d6549434bf944e6b0f39238cf63693cb7a147e9d887507fffa3b223" +dependencies = [ + "bytemuck", + "safe_arch", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-wsapoll" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44c17110f57155602a80dca10be03852116403c9ff3cd25b079d666f2aa3df6e" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-sys" +version = "0.42.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" +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]] +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 0.48.0", +] + +[[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]] +name = "windows-targets" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +dependencies = [ + "windows_aarch64_gnullvm 0.48.0", + "windows_aarch64_msvc 0.48.0", + "windows_i686_gnu 0.48.0", + "windows_i686_msvc 0.48.0", + "windows_x86_64_gnu 0.48.0", + "windows_x86_64_gnullvm 0.48.0", + "windows_x86_64_msvc 0.48.0", +] + +[[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.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" + +[[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.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" + +[[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.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" + +[[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.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" + +[[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.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" + +[[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.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" + +[[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.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" + +[[package]] +name = "winit" +version = "0.28.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f504e8c117b9015f618774f8d58cd4781f5a479bc41079c064f974cbb253874" +dependencies = [ + "android-activity", + "bitflags", + "cfg_aliases", + "core-foundation", + "core-graphics", + "dispatch", + "instant", + "libc", + "log", + "mio", + "ndk", + "objc2", + "once_cell", + "orbclient", + "percent-encoding", + "raw-window-handle", + "redox_syscall 0.3.5", + "sctk-adwaita", + "serde", + "smithay-client-toolkit", + "wasm-bindgen", + "wayland-client", + "wayland-commons", + "wayland-protocols", + "wayland-scanner", + "web-sys", + "windows-sys 0.45.0", + "x11-dl", +] + +[[package]] +name = "winnow" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae8970b36c66498d8ff1d66685dc86b91b29db0c7739899012f63a63814b4b28" +dependencies = [ + "memchr", +] + +[[package]] +name = "x11-clipboard" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "980b9aa9226c3b7de8e2adb11bf20124327c054e0e5812d2aac0b5b5a87e7464" +dependencies = [ + "x11rb", +] + +[[package]] +name = "x11-dl" +version = "2.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f" +dependencies = [ + "libc", + "once_cell", + "pkg-config", +] + +[[package]] +name = "x11rb" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "592b4883219f345e712b3209c62654ebda0bb50887f330cbd018d0f654bfd507" +dependencies = [ + "gethostname", + "nix 0.24.3", + "winapi", + "winapi-wsapoll", + "x11rb-protocol", +] + +[[package]] +name = "x11rb-protocol" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56b245751c0ac9db0e006dc812031482784e434630205a93c73cfefcaabeac67" +dependencies = [ + "nix 0.24.3", +] + +[[package]] +name = "xcursor" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "463705a63313cd4301184381c5e8042f0a7e9b4bb63653f216311d4ae74690b7" +dependencies = [ + "nom", +] + +[[package]] +name = "xml-rs" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3" diff --git a/crates/programs/mdm-viewer/Cargo.toml b/crates/programs/mdm-viewer/Cargo.toml new file mode 100644 index 0000000000..9a89edf0d4 --- /dev/null +++ b/crates/programs/mdm-viewer/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "mdm-viewer" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +fyrox = { git = "https://github.com/FyroxEngine/Fyrox", rev="9a4f1c0fbce96eb55839405492ff554757fac6e0"} +ndarray = "0.15.6" +serde = { version = "1.0.159", features = ["derive"] } +serde_json = "1.0.95" diff --git a/crates/programs/mdm-viewer/data/Roko.fbx b/crates/programs/mdm-viewer/data/Roko.fbx new file mode 100644 index 0000000000000000000000000000000000000000..f0b3a0b89ab02bc5b2ba2bf0c403ed6efe64efbe GIT binary patch literal 8034976 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 z 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