From b9739a9c3e2711115c59118eaf47772b75e81258 Mon Sep 17 00:00:00 2001 From: lethanix Date: Mon, 11 Apr 2022 23:06:10 -0500 Subject: [PATCH 1/7] Fixes #1216 --- src/window/mod.rs | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/window/mod.rs b/src/window/mod.rs index ecfeed4..bf0553f 100644 --- a/src/window/mod.rs +++ b/src/window/mod.rs @@ -199,10 +199,26 @@ impl GlutinWindowWrapper { } let new_size = window.inner_size(); + // The size needs to be scaled, otherwise any flag or setting related + // to the geometry or window size will be ignored because of the boolean + // value of `resized_at_startup` + let scale_factor = window.scale_factor() as u32; + let new_size_scaled = PhysicalSize { + width: new_size.width / scale_factor, + height: new_size.height / scale_factor, + }; + let settings = SETTINGS.get::(); // Resize at startup happens when window is maximized or when using tiling WM // which already resized window. - let resized_at_startup = settings.maximized || is_already_resized(new_size); + let resized_at_startup = settings.maximized || is_already_resized(new_size_scaled); + + log::trace!( + "Settings geometry {:?}", + PhysicalSize::from(settings.geometry) + ); + log::trace!("Inner size: {:?}", new_size); + log::trace!("Inner size scaled: {:?}", new_size_scaled); if self.saved_grid_size.is_none() && !resized_at_startup { window.set_inner_size( @@ -418,5 +434,6 @@ pub fn create_window() { } fn is_already_resized(size: PhysicalSize) -> bool { + // TODO: Use a constant instead. size != PhysicalSize::from((800, 600)) } From e2088c5d2dc6c3de84fbac48674f542e5a6b6f8c Mon Sep 17 00:00:00 2001 From: MultisampledNight Date: Sat, 16 Apr 2022 22:04:25 +0200 Subject: [PATCH 2/7] Bump version to 0.9.0 --- Cargo.toml | 4 ++-- README.md | 2 +- snap/snapcraft.yaml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index b9b7943..5aac340 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "neovide" -version = "0.8.0" +version = "0.9.0" authors = ["keith "] edition = "2018" build = "build.rs" @@ -73,7 +73,7 @@ incremental = true name = "Neovide" identifier = "com.neovide.neovide" icon = ["assets/neovide.ico"] -version = "0.8.0" +version = "0.9.0" resources = [] copyright = "Copyright (c) Keith 2021. All rights reserved." category = "Productivity" diff --git a/README.md b/README.md index bdfca69..49ce19a 100644 --- a/README.md +++ b/README.md @@ -116,7 +116,7 @@ Configuration is done almost completely via global neovide variables in your vim **Note**: Building instructions are somewhat limited at the moment. All the libraries I use are cross platform and should have support for Windows, Mac, and Linux. On Windows this should be enabled by default if you have a relatively recent system. -**Note**: Neovide requires neovim version 0.6 or greater if built from main, or 0.4 if downloaded from releases. +**Note**: Neovide requires neovim version 0.6 or greater. See previous releases such as `0.5.0` if your distro is too slow with updating. ### From binary diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 988a2a7..2bf15bb 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -1,6 +1,6 @@ name: neovide # you probably want to 'snapcraft register ' base: core20 # the base snap is the execution environment for this snap -version: "0.8.0+git" +version: "0.9.0+git" summary: The snappiest vim editor you are likely to find. description: | This is a simple graphical user interface for Neovim. Where possible there are some graphical improvements, From 9b8907c8c71a572c909d025e899bd0d027e72895 Mon Sep 17 00:00:00 2001 From: Jaffar Mohammed Date: Sun, 17 Apr 2022 22:37:14 +0300 Subject: [PATCH 3/7] bump dep --- Cargo.lock | 812 +++++++++++++++++++++++++++--------------------- Cargo.toml | 62 ++-- src/cmd_line.rs | 38 +-- src/main.rs | 9 +- 4 files changed, 517 insertions(+), 404 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 857c180..d150138 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -22,11 +22,13 @@ checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" [[package]] name = "ahash" -version = "0.2.19" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29661b60bec623f0586702976ff4d0c9942dcb6723161c2df0eea78455cfedfb" +checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" dependencies = [ - "const-random", + "getrandom 0.2.6", + "once_cell", + "version_check", ] [[package]] @@ -68,9 +70,9 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.52" +version = "0.1.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3" +checksum = "ed6aa3524a2dfcf9fe180c51eae2b58738348d819517ceadf95789c51fff7600" dependencies = [ "proc-macro2", "quote", @@ -90,15 +92,9 @@ dependencies = [ [[package]] name = "autocfg" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2" - -[[package]] -name = "autocfg" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "base64" @@ -115,7 +111,7 @@ dependencies = [ "bitflags", "cexpr", "clang-sys", - "clap", + "clap 2.34.0", "env_logger", "lazy_static", "lazycell", @@ -143,9 +139,15 @@ checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" [[package]] name = "bumpalo" -version = "3.8.0" +version = "3.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f1e260c3a9040a7c19a12468758f4c16f31a81a1fe087482be9570ec864bb6c" +checksum = "a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899" + +[[package]] +name = "bytemuck" +version = "1.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdead85bdec19c194affaeeb670c0e41fe23de31459efd1c174d049269cf02cc" [[package]] name = "byteorder" @@ -181,9 +183,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.72" +version = "1.0.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22a9137b95ea06864e018375b72adfb7db6e6f68cfc8df5a04d00288050485ee" +checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11" [[package]] name = "cexpr" @@ -215,19 +217,6 @@ dependencies = [ "libc", ] -[[package]] -name = "chrono" -version = "0.4.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73" -dependencies = [ - "libc", - "num-integer", - "num-traits", - "time", - "winapi", -] - [[package]] name = "chunked_transfer" version = "1.4.0" @@ -236,13 +225,13 @@ checksum = "fff857943da45f546682664a79488be82e69e43c1a7a2307679ab9afb3a66d2e" [[package]] name = "clang-sys" -version = "1.0.1" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa785e9017cb8e8c8045e3f096b7d1ebc4d7337cceccdca8d678a27f788ac133" +checksum = "4cc00842eed744b858222c4c9faf7243aafc6d33f92f96935263ef4d8a41ce21" dependencies = [ "glob", "libc", - "libloading 0.6.7", + "libloading 0.7.3", ] [[package]] @@ -255,11 +244,36 @@ dependencies = [ "atty", "bitflags", "strsim 0.8.0", - "textwrap", + "textwrap 0.11.0", "unicode-width", "vec_map", ] +[[package]] +name = "clap" +version = "3.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6aad2534fad53df1cc12519c5cda696dd3e20e6118a027e24054aea14a0bdcbe" +dependencies = [ + "atty", + "bitflags", + "clap_lex", + "indexmap", + "lazy_static", + "strsim 0.10.0", + "termcolor", + "textwrap 0.15.0", +] + +[[package]] +name = "clap_lex" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "189ddd3b5d32a70b35e7686054371742a937b0d99128e76dde6340210e966669" +dependencies = [ + "os_str_bytes", +] + [[package]] name = "clipboard" version = "0.5.0" @@ -282,15 +296,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "cloudabi" -version = "0.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" -dependencies = [ - "bitflags", -] - [[package]] name = "cocoa" version = "0.24.0" @@ -300,7 +305,7 @@ dependencies = [ "bitflags", "block", "cocoa-foundation", - "core-foundation 0.9.2", + "core-foundation 0.9.3", "core-graphics 0.22.3", "foreign-types", "libc", @@ -315,7 +320,7 @@ checksum = "7ade49b65d560ca58c403a479bb396592b155c0185eada742ee323d1d68d6318" dependencies = [ "bitflags", "block", - "core-foundation 0.9.2", + "core-foundation 0.9.3", "core-graphics-types", "foreign-types", "libc", @@ -323,26 +328,10 @@ dependencies = [ ] [[package]] -name = "const-random" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f590d95d011aa80b063ffe3253422ed5aa462af4e9867d43ce8337562bac77c4" -dependencies = [ - "const-random-macro", - "proc-macro-hack", -] - -[[package]] -name = "const-random-macro" -version = "0.1.13" +name = "color_quant" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "615f6e27d000a2bffbc7f2f6a8669179378fa27ee4d0a509e985dfc0a7defb40" -dependencies = [ - "getrandom 0.2.3", - "lazy_static", - "proc-macro-hack", - "tiny-keccak", -] +checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" [[package]] name = "core-foundation" @@ -356,9 +345,9 @@ dependencies = [ [[package]] name = "core-foundation" -version = "0.9.2" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6888e10551bb93e424d8df1d07f1a8b4fceb0001a3a4b048bfc47554946f47b3" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" dependencies = [ "core-foundation-sys 0.8.3", "libc", @@ -395,7 +384,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" dependencies = [ "bitflags", - "core-foundation 0.9.2", + "core-foundation 0.9.3", "core-graphics-types", "foreign-types", "libc", @@ -408,7 +397,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" dependencies = [ "bitflags", - "core-foundation 0.9.2", + "core-foundation 0.9.3", "foreign-types", "libc", ] @@ -428,9 +417,9 @@ dependencies = [ [[package]] name = "crc32fast" -version = "1.3.0" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "738c290dfaea84fc1ca15ad9c168d083b05a714e1efddd8edaab678dc28d2836" +checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" dependencies = [ "cfg-if 1.0.0", ] @@ -451,9 +440,9 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.1" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ed27e177f16d65f0f0c22a213e17c696ace5dd64b14258b52f9417ccb52db4" +checksum = "5aaa7bd5fb665c6864b5f963dd9097905c54125909c7aa94c9e18507cdbe6c53" dependencies = [ "cfg-if 1.0.0", "crossbeam-utils", @@ -472,10 +461,11 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.5" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec02e091aa634e2c3ada4a392989e7c3116673ef0ac5b72232439094d73b7fd" +checksum = "1145cf131a2c6ba0615079ab6a638f7e1973ac9c2634fcbeaaad6114246efe8c" dependencies = [ + "autocfg", "cfg-if 1.0.0", "crossbeam-utils", "lazy_static", @@ -485,9 +475,9 @@ dependencies = [ [[package]] name = "crossbeam-queue" -version = "0.3.2" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b10ddc024425c88c2ad148c1b0fd53f4c6d38db9697c9f1588381212fa657c9" +checksum = "1f25d8400f4a7a5778f0e4e52384a48cbd9b5c495d110786187fc750075277a2" dependencies = [ "cfg-if 1.0.0", "crossbeam-utils", @@ -495,20 +485,14 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.5" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db" +checksum = "0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38" dependencies = [ "cfg-if 1.0.0", "lazy_static", ] -[[package]] -name = "crunchy" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" - [[package]] name = "cty" version = "0.2.2" @@ -552,12 +536,11 @@ dependencies = [ [[package]] name = "deflate" -version = "0.7.20" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707b6a7b384888a70c8d2e8650b3e60170dfc6a67bb4aa67b6dfca57af4bedb4" +checksum = "c86f7e25f518f4b81808a2cf1c50996a61f5c2eb394b2393bd87f2a4780a432f" dependencies = [ "adler32", - "byteorder", ] [[package]] @@ -572,35 +555,25 @@ dependencies = [ ] [[package]] -name = "difference" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198" - -[[package]] -name = "dirs" -version = "2.0.2" +name = "difflib" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3" -dependencies = [ - "cfg-if 0.1.10", - "dirs-sys", -] +checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8" [[package]] name = "dirs" -version = "3.0.2" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30baa043103c9d0c2a57cf537cc2f35623889dc0d405e6c3cccfadbc81c71309" +checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" dependencies = [ "dirs-sys", ] [[package]] name = "dirs-sys" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03d86534ed367a67548dc68113a0f5db55432fdfbb6e6f9d77704397d95d5780" +checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" dependencies = [ "libc", "redox_users", @@ -628,14 +601,14 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ac1b7517328c04c2aa68422fc60a41b92208182142ed04a25879c26c8f878794" dependencies = [ - "libloading 0.7.2", + "libloading 0.7.3", ] [[package]] name = "downcast" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bb454f0228b18c7f4c3b0ebbee346ed9c52e7443b0999cd543ff3571205701d" +checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" [[package]] name = "downcast-rs" @@ -664,30 +637,30 @@ dependencies = [ [[package]] name = "euclid" -version = "0.20.14" +version = "0.22.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bb7ef65b3777a325d1eeefefab5b6d4959da54747e33bd6258e789640f307ad" +checksum = "b52c2ef4a78da0ba68fbe1fd920627411096d2ac478f7f4c9f3a54ba6705bade" dependencies = [ "num-traits", ] [[package]] name = "filetime" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "975ccf83d8d9d0d84682850a38c8169027be83368805971cc4f238c2b245bc98" +checksum = "c0408e2626025178a6a7f7ffc05a25bc47103229f19c113755de7bf63816290c" dependencies = [ "cfg-if 1.0.0", "libc", - "redox_syscall 0.2.10", + "redox_syscall", "winapi", ] [[package]] name = "flate2" -version = "1.0.22" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f" +checksum = "b39522e96686d38f4bc984b9198e3a0613264abaebaff2c5c918bfa6b6da09af" dependencies = [ "cfg-if 1.0.0", "crc32fast", @@ -697,21 +670,23 @@ dependencies = [ [[package]] name = "flexi_logger" -version = "0.17.1" +version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab94b6ac8eb69f1496a6993f26f785b5fd6d99b7416023eb2a6175c0b242b1" +checksum = "969940c39bc718475391e53a3a59b0157e64929c80cf83ad5dde5f770ecdc423" dependencies = [ - "chrono", "glob", + "lazy_static", "log", + "rustversion", "thiserror", + "time", ] [[package]] name = "float-cmp" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1267f4ac4f343772758f7b1bdcbe767c218bbab93bb432acbf5162bbf85a6c4" +checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" dependencies = [ "num-traits", ] @@ -749,9 +724,9 @@ dependencies = [ [[package]] name = "fragile" -version = "1.0.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69a039c3498dc930fe810151a34ba0c1c70b02b8625035592e74432f678591f2" +checksum = "e9d758e60b45e8d749c89c1b389ad8aee550f86aa12e2b9298b546dda7a82ab1" [[package]] name = "futures" @@ -761,9 +736,9 @@ checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678" [[package]] name = "futures" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28560757fe2bb34e79f907794bb6b22ae8b0e5c669b638a1132f2592b19035b4" +checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e" dependencies = [ "futures-channel", "futures-core", @@ -776,9 +751,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3dda0b6588335f360afc675d0564c17a77a2bda81ca178a4b6081bd86c7f0b" +checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010" dependencies = [ "futures-core", "futures-sink", @@ -786,15 +761,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c8ff0461b82559810cdccfde3215c3f373807f5e5232b71479bff7bb2583d7" +checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3" [[package]] name = "futures-executor" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29d6d2ff5bb10fb95c85b8ce46538a2e5f5e7fdc755623a7d4529ab8a4ed9d2a" +checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6" dependencies = [ "futures-core", "futures-task", @@ -803,15 +778,15 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f9d34af5a1aac6fb380f735fe510746c38067c5bf16c7fd250280503c971b2" +checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b" [[package]] name = "futures-macro" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dbd947adfffb0efc70599b3ddcf7b5597bb5fa9e245eb99f62b3a5f7bb8bd3c" +checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512" dependencies = [ "proc-macro2", "quote", @@ -820,21 +795,21 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3055baccb68d74ff6480350f8d6eb8fcfa3aa11bdc1a1ae3afdd0514617d508" +checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868" [[package]] name = "futures-task" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ee7c6485c30167ce4dfb83ac568a849fe53274c831081476ee13e0dce1aad72" +checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a" [[package]] name = "futures-util" -version = "0.3.19" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b5cf40b47a271f77a8b1bec03ca09044d99d2372c0de244e66430761127164" +checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a" dependencies = [ "futures 0.1.31", "futures-channel", @@ -863,9 +838,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.3" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753" +checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad" dependencies = [ "cfg-if 1.0.0", "libc", @@ -906,14 +881,14 @@ dependencies = [ "android_glue", "cgl", "cocoa", - "core-foundation 0.9.2", + "core-foundation 0.9.3", "glutin_egl_sys", "glutin_emscripten_sys", "glutin_gles2_sys", "glutin_glx_sys", "glutin_wgl_sys", "lazy_static", - "libloading 0.7.2", + "libloading 0.7.3", "log", "objc", "osmesa-sys", @@ -966,22 +941,18 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.6.3" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e6073d0ca812575946eb5f35ff68dbe519907b25c42530389ff946dc84c6ead" +checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" dependencies = [ "ahash", - "autocfg 0.1.7", ] [[package]] name = "heck" -version = "0.3.3" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" -dependencies = [ - "unicode-segmentation", -] +checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" [[package]] name = "hermit-abi" @@ -1017,11 +988,13 @@ dependencies = [ [[package]] name = "image" -version = "0.22.5" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08ed2ada878397b045454ac7cfb011d73132c59f31a955d230bd1f1c2e68eb4a" +checksum = "db207d030ae38f1eb6f240d5a1c1c88ff422aa005d10f8c6c6fc5e75286ab30e" dependencies = [ + "bytemuck", "byteorder", + "color_quant", "num-iter", "num-rational", "num-traits", @@ -1029,12 +1002,13 @@ dependencies = [ ] [[package]] -name = "inflate" -version = "0.4.5" +name = "indexmap" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cdb29978cc5797bd8dcc8e5bf7de604891df2a8dc576973d71a281e916db2ff" +checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee" dependencies = [ - "adler32", + "autocfg", + "hashbrown", ] [[package]] @@ -1055,6 +1029,15 @@ dependencies = [ "libc", ] +[[package]] +name = "itertools" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.1" @@ -1069,9 +1052,9 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" [[package]] name = "js-sys" -version = "0.3.55" +version = "0.3.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cc9ffccd38c451a86bf13657df244e9c3f37493cce8e5e21e940963777acc84" +checksum = "671a26f820db17c2a2750743f1dd03bafd15b98c9f30c7c2628c024c05d73397" dependencies = [ "wasm-bindgen", ] @@ -1096,9 +1079,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.112" +version = "0.2.123" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b03d17f364a3a042d5e5d46b053bbbf82c92c9430c592dd4c064dc6ee997125" +checksum = "cb691a747a7ab48abc15c5b42066eaafde10dc427e3b6ee2a1cf43db04c763bd" [[package]] name = "libloading" @@ -1112,9 +1095,9 @@ dependencies = [ [[package]] name = "libloading" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afe203d669ec979b7128619bae5a63b7b42e9203c1b29146079ee05e2f604b52" +checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd" dependencies = [ "cfg-if 1.0.0", "winapi", @@ -1122,36 +1105,28 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75" -dependencies = [ - "scopeguard", -] - -[[package]] -name = "lock_api" -version = "0.4.5" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712a4d093c9976e24e7dbca41db895dabcbac38eb5f4045393d17a95bdfb1109" +checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53" dependencies = [ + "autocfg", "scopeguard", ] [[package]] name = "log" -version = "0.4.14" +version = "0.4.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" +checksum = "6389c490849ff5bc16be905ae24bc913a9c8892e19b2341dbc175e14c341c2b8" dependencies = [ "cfg-if 1.0.0", ] [[package]] name = "lru" -version = "0.4.3" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0609345ddee5badacf857d4f547e0e5a2e987db77085c24cd887f73573a04237" +checksum = "32613e41de4c47ab04970c348ca7ae7382cf116625755af070b008a15516a889" dependencies = [ "hashbrown", ] @@ -1201,7 +1176,7 @@ version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" dependencies = [ - "autocfg 1.0.1", + "autocfg", ] [[package]] @@ -1212,12 +1187,11 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.4.4" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b" +checksum = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082" dependencies = [ "adler", - "autocfg 1.0.1", ] [[package]] @@ -1233,6 +1207,20 @@ dependencies = [ "winapi", ] +[[package]] +name = "mio" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52da4364ffb0e4fe33a9841a98a3f3014fb964045ce4f7a45a398243c8d6b0c9" +dependencies = [ + "libc", + "log", + "miow", + "ntapi", + "wasi 0.11.0+wasi-snapshot-preview1", + "winapi", +] + [[package]] name = "mio-misc" version = "1.2.2" @@ -1242,7 +1230,7 @@ dependencies = [ "crossbeam", "crossbeam-queue", "log", - "mio", + "mio 0.7.14", ] [[package]] @@ -1256,11 +1244,11 @@ dependencies = [ [[package]] name = "mockall" -version = "0.7.2" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01458f8a19b10cb28195290942e3149161c75acf67ebc8fbf714ab67a2b943bc" +checksum = "3d4d70639a72f972725db16350db56da68266ca368b2a1fe26724a903ad3d6b8" dependencies = [ - "cfg-if 0.1.10", + "cfg-if 1.0.0", "downcast", "fragile", "lazy_static", @@ -1271,11 +1259,11 @@ dependencies = [ [[package]] name = "mockall_derive" -version = "0.7.2" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a673cb441f78cd9af4f5919c28576a3cc325fb6b54e42f7047dacce3c718c17b" +checksum = "79ef208208a0dea3f72221e26e904cdc6db2e481d9ade89081ddd494f1dbaa6b" dependencies = [ - "cfg-if 0.1.10", + "cfg-if 1.0.0", "proc-macro2", "quote", "syn", @@ -1334,17 +1322,17 @@ checksum = "e1bcdd74c20ad5d95aacd60ef9ba40fdf77f767051040541df557b7a9b2a2121" [[package]] name = "neovide" -version = "0.8.0" +version = "0.9.0" dependencies = [ "async-trait", - "cfg-if 0.1.10", - "clap", + "cfg-if 1.0.0", + "clap 3.1.9", "clipboard", "derive-new", - "dirs 2.0.2", + "dirs", "euclid", "flexi_logger", - "futures 0.3.19", + "futures 0.3.21", "gl", "glutin", "image", @@ -1354,16 +1342,16 @@ dependencies = [ "mockall", "neovide-derive", "nvim-rs", - "parking_lot 0.10.2", + "parking_lot 0.12.0", "pin-project", - "rand", + "rand 0.8.5", "rmpv", "serde", "serde_json", "skia-safe", "swash", "tokio", - "tokio-util", + "tokio-util 0.7.1", "unicode-segmentation", "which", "winapi", @@ -1406,13 +1394,12 @@ dependencies = [ [[package]] name = "nom" -version = "7.1.0" +version = "7.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d11e1ef389c76fe5b81bcaf2ea32cf88b62bc494e19f493d0b30e7a930109" +checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36" dependencies = [ "memchr", "minimal-lexical", - "version_check", ] [[package]] @@ -1423,9 +1410,9 @@ checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be" [[package]] name = "ntapi" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f6bb902e437b6d86e03cce10a7e2af662292c5dfef23b65899ea3ac9354ad44" +checksum = "c28774a7fd2fbb4f0babd8237ce554b73af68021b5f695a3cebd6c59bac0980f" dependencies = [ "winapi", ] @@ -1436,7 +1423,7 @@ version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db" dependencies = [ - "autocfg 1.0.1", + "autocfg", "num-traits", ] @@ -1446,18 +1433,18 @@ version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59" dependencies = [ - "autocfg 1.0.1", + "autocfg", "num-integer", "num-traits", ] [[package]] name = "num-rational" -version = "0.2.4" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c000134b5dbf44adc5cb772486d335293351644b801551abe8f75c84cfa4aef" +checksum = "d41702bd167c2df5520b384281bc111a4b5efcf7fbc4c9c222c815b07e0a6a6a" dependencies = [ - "autocfg 1.0.1", + "autocfg", "num-integer", "num-traits", ] @@ -1468,7 +1455,7 @@ version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290" dependencies = [ - "autocfg 1.0.1", + "autocfg", ] [[package]] @@ -1483,38 +1470,47 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.5.6" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "720d3ea1055e4e4574c0c0b0f8c3fd4f24c4cdaf465948206dea090b57b526ad" +checksum = "cf5395665662ef45796a4ff5486c5d41d29e0c09640af4c5f17fd94ee2c119c9" dependencies = [ "num_enum_derive", ] [[package]] name = "num_enum_derive" -version = "0.5.6" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d992b768490d7fe0d8586d9b5745f6c49f557da6d81dc982b1d167ad4edbb21" +checksum = "3b0498641e53dd6ac1a4f22547548caa6864cc4933784319cd1775271c5a46ce" dependencies = [ - "proc-macro-crate 1.1.0", + "proc-macro-crate 1.1.3", "proc-macro2", "quote", "syn", ] +[[package]] +name = "num_threads" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aba1801fb138d8e85e11d0fc70baf4fe1cdfffda7c6cd34a854905df588e5ed0" +dependencies = [ + "libc", +] + [[package]] name = "nvim-rs" version = "0.4.1-alpha.0" -source = "git+https://github.com/KillTheMule/nvim-rs?branch=master#327c0eb7576d0a9558cde7613835a7ab279456c2" +source = "git+https://github.com/KillTheMule/nvim-rs?branch=master#c66b7fac620c02688a4d6a0cf0d2041aeefc9bf9" dependencies = [ "async-trait", - "futures 0.3.19", + "futures 0.3.21", "log", "parity-tokio-ipc", "rmp", "rmpv", "tokio", - "tokio-util", + "tokio-util 0.6.9", ] [[package]] @@ -1548,9 +1544,15 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.9.0" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9" + +[[package]] +name = "os_str_bytes" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da32515d9f6e6e489d7bc9d84c71b060db7247dc035bbe44eac88cf87486d8d5" +checksum = "8e22443d1643a904602595ba1cd8f7d896afe56d26712531c5ff73a15b2fbf64" [[package]] name = "osmesa-sys" @@ -1576,61 +1578,60 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9981e32fb75e004cc148f5fb70342f393830e0a4aa62e3cc93b50976218d42b6" dependencies = [ - "futures 0.3.19", + "futures 0.3.21", "libc", "log", - "rand", + "rand 0.7.3", "tokio", "winapi", ] [[package]] name = "parking_lot" -version = "0.10.2" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3a704eb390aafdc107b0e392f56a82b668e3a71366993b5340f5833fd62505e" +checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" dependencies = [ - "lock_api 0.3.4", - "parking_lot_core 0.7.2", + "instant", + "lock_api", + "parking_lot_core 0.8.5", ] [[package]] name = "parking_lot" -version = "0.11.2" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" +checksum = "87f5ec2493a61ac0506c0f4199f99070cbe83857b0337006a30f3e6719b8ef58" dependencies = [ - "instant", - "lock_api 0.4.5", - "parking_lot_core 0.8.5", + "lock_api", + "parking_lot_core 0.9.2", ] [[package]] name = "parking_lot_core" -version = "0.7.2" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d58c7c768d4ba344e3e8d72518ac13e259d7c7ade24167003b8488e10b6740a3" +checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216" dependencies = [ - "cfg-if 0.1.10", - "cloudabi", + "cfg-if 1.0.0", + "instant", "libc", - "redox_syscall 0.1.57", + "redox_syscall", "smallvec", "winapi", ] [[package]] name = "parking_lot_core" -version = "0.8.5" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216" +checksum = "995f667a6c822200b0433ac218e05582f0e2efa1b922a3fd2fbaadc5f87bab37" dependencies = [ "cfg-if 1.0.0", - "instant", "libc", - "redox_syscall 0.2.10", + "redox_syscall", "smallvec", - "winapi", + "windows-sys", ] [[package]] @@ -1647,18 +1648,18 @@ checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" [[package]] name = "pin-project" -version = "0.4.29" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9615c18d31137579e9ff063499264ddc1278e7b1982757ebc111028c4d1dc909" +checksum = "58ad3879ad3baf4e44784bc6a718a8698867bb991f8ce24d1bcbe2cfb4c3a75e" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "0.4.29" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "044964427019eed9d49d9d5bbce6047ef18f37100ea400912a9fa4a3523ab12a" +checksum = "744b6f092ba29c3650faf274db506afd39944f48420f6c86b17cfe0ee1cb36bb" dependencies = [ "proc-macro2", "quote", @@ -1679,20 +1680,20 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.24" +version = "0.3.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58893f751c9b0412871a09abd62ecd2a00298c6c83befa223ef98c52aef40cbe" +checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" [[package]] name = "png" -version = "0.15.3" +version = "0.17.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef859a23054bbfee7811284275ae522f0434a3c8e7f4b74bd4a35ae7e1c4a283" +checksum = "dc38c0ad57efb786dd57b9864e5b18bae478c00c824dc55a38bbc9da95dde3ba" dependencies = [ "bitflags", "crc32fast", "deflate", - "inflate", + "miniz_oxide", ] [[package]] @@ -1703,12 +1704,13 @@ checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872" [[package]] name = "predicates" -version = "1.0.8" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49cfaf7fdaa3bfacc6fa3e7054e65148878354a5cfddcf661df4c851f8021df" +checksum = "a5aab5be6e4732b473071984b3164dbbfb7a3674d30ea5ff44410b6bcd960c3c" dependencies = [ - "difference", + "difflib", "float-cmp", + "itertools", "normalize-line-endings", "predicates-core", "regex", @@ -1716,15 +1718,15 @@ dependencies = [ [[package]] name = "predicates-core" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57e35a3326b75e49aa85f5dc6ec15b41108cf5aee58eabb1f274dd18b73c2451" +checksum = "da1c2388b1513e1b605fcec39a95e0a9e8ef088f71443ef37099fa9ae6673fcb" [[package]] name = "predicates-tree" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "338c7be2905b732ae3984a2f40032b5e94fd8f52505b186c7d4d68d193445df7" +checksum = "4d86de6de25020a36c6d3643a86d9a6a9f552107c0559c60ea03551b5e16c032" dependencies = [ "predicates-core", "termtree", @@ -1741,34 +1743,28 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "1.1.0" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ebace6889caf889b4d3f76becee12e90353f2b8c7d875534a71e5742f8f6f83" +checksum = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a" dependencies = [ "thiserror", "toml", ] -[[package]] -name = "proc-macro-hack" -version = "0.5.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" - [[package]] name = "proc-macro2" -version = "1.0.36" +version = "1.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029" +checksum = "ec757218438d5fda206afc041538b2f6d889286160d649a86a24d37e1235afd1" dependencies = [ "unicode-xid", ] [[package]] name = "quote" -version = "1.0.14" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47aa80447ce4daf1717500037052af176af5d38cc3e571d9ec1c7353fc10c87d" +checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1" dependencies = [ "proc-macro2", ] @@ -1781,11 +1777,22 @@ checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" dependencies = [ "getrandom 0.1.16", "libc", - "rand_chacha", - "rand_core", + "rand_chacha 0.2.2", + "rand_core 0.5.1", "rand_hc", ] +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha 0.3.1", + "rand_core 0.6.3", +] + [[package]] name = "rand_chacha" version = "0.2.2" @@ -1793,7 +1800,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.5.1", +] + +[[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 0.6.3", ] [[package]] @@ -1805,13 +1822,22 @@ dependencies = [ "getrandom 0.1.16", ] +[[package]] +name = "rand_core" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7" +dependencies = [ + "getrandom 0.2.6", +] + [[package]] name = "rand_hc" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" dependencies = [ - "rand_core", + "rand_core 0.5.1", ] [[package]] @@ -1821,48 +1847,43 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e28f55143d0548dad60bb4fbdc835a3d7ac6acc3324506450c5fdd6e42903a76" dependencies = [ "libc", - "raw-window-handle 0.4.2", + "raw-window-handle 0.4.3", ] [[package]] name = "raw-window-handle" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fba75eee94a9d5273a68c9e1e105d9cffe1ef700532325788389e5a83e2522b7" +checksum = "b800beb9b6e7d2df1fe337c9e3d04e3af22a124460fb4c30fcc22c9117cefb41" dependencies = [ "cty", ] [[package]] name = "redox_syscall" -version = "0.1.57" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" - -[[package]] -name = "redox_syscall" -version = "0.2.10" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff" +checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42" dependencies = [ "bitflags", ] [[package]] name = "redox_users" -version = "0.4.0" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64" +checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ - "getrandom 0.2.3", - "redox_syscall 0.2.10", + "getrandom 0.2.6", + "redox_syscall", + "thiserror", ] [[package]] name = "regex" -version = "1.5.4" +version = "1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461" +checksum = "1a11647b6b25ff05a515cb92c365cec08801e83423a235b51e231e1808747286" dependencies = [ "aho-corasick", "memchr", @@ -1918,9 +1939,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustls" -version = "0.20.2" +version = "0.20.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d37e5e2290f3e040b594b1a9e04377c2c671f1a1cfd9bfdef82106ac1c113f84" +checksum = "4fbfeb8d0ddb84706bc597a5574ab8912817c52a397f819e5b614e2265206921" dependencies = [ "log", "ring", @@ -1938,6 +1959,12 @@ dependencies = [ "owned_ttf_parser", ] +[[package]] +name = "rustversion" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2cc38e8fa666e2de3c4aba7edeb5ffc5246c1c2ed0e3d17e560aeeba736b23f" + [[package]] name = "ryu" version = "1.0.9" @@ -1977,18 +2004,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.133" +version = "1.0.136" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97565067517b60e2d1ea8b268e59ce036de907ac523ad83a0475da04e818989a" +checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.133" +version = "1.0.136" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed201699328568d8d08208fdd080e3ff594e6c422e438b6705905da01005d537" +checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9" dependencies = [ "proc-macro2", "quote", @@ -1997,9 +2024,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.74" +version = "1.0.79" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee2bb9cd061c5865d345bb02ca49fcef1391741b672b54a0bf7b679badec3142" +checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95" dependencies = [ "itoa", "ryu", @@ -2033,15 +2060,15 @@ dependencies = [ [[package]] name = "skia-bindings" -version = "0.42.1" +version = "0.49.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3902fb99982774025e9270b0c9109e89b05a8f26bd77adc53a2beae9f470a5e2" +checksum = "e5a38cd9364cd9521df0206fc8d989d4441b1e23049a9d4578a57efafa8596e7" dependencies = [ "bindgen", "cc", - "clang-sys", "flate2", "heck", + "lazy_static", "regex", "serde_json", "tar", @@ -2051,9 +2078,9 @@ dependencies = [ [[package]] name = "skia-safe" -version = "0.42.1" +version = "0.49.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6ed1a71dc04e63cb755a77eaf3f4cb9baa26dbe67a6a54f372bcadf2af83023" +checksum = "db428433afc015aab5b1e292844bbd2d3afeb41b44b90c9ef5a2c50209b0cebf" dependencies = [ "bitflags", "lazy_static", @@ -2062,15 +2089,15 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5" +checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32" [[package]] name = "smallvec" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ecab6c735a6bb4139c0caafd0cc3635748bbb3acf4550e8138122099251f309" +checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83" [[package]] name = "smithay-client-toolkit" @@ -2091,6 +2118,16 @@ dependencies = [ "wayland-protocols", ] +[[package]] +name = "socket2" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0" +dependencies = [ + "libc", + "winapi", +] + [[package]] name = "spin" version = "0.5.2" @@ -2109,6 +2146,12 @@ version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + [[package]] name = "swash" version = "0.1.4" @@ -2121,9 +2164,9 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.84" +version = "1.0.91" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecb2e6da8ee5eb9a61068762a32fa9619cc591ceb055b3687f4cd4051ec2e06b" +checksum = "b683b2b825c8eef438b77c36a06dc262294da3d5a5813fac20da149241dcd44d" dependencies = [ "proc-macro2", "quote", @@ -2143,18 +2186,18 @@ dependencies = [ [[package]] name = "termcolor" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4" +checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" dependencies = [ "winapi-util", ] [[package]] name = "termtree" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13a4ec180a2de59b57434704ccfad967f789b12737738798fa08798cd5824c16" +checksum = "507e9898683b6c43a9aa55b64259b721b52ba226e0f3779137e50ad114a4c90b" [[package]] name = "textwrap" @@ -2165,6 +2208,12 @@ dependencies = [ "unicode-width", ] +[[package]] +name = "textwrap" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1141d4d61095b28419e22cb0bbf02755f5e54e0526f97f1e3d1d160e60885fb" + [[package]] name = "thiserror" version = "1.0.30" @@ -2187,22 +2236,21 @@ dependencies = [ [[package]] name = "time" -version = "0.1.43" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438" +checksum = "c2702e08a7a860f005826c6815dcac101b19b5eb330c27fe4a5928fec1d20ddd" dependencies = [ + "itoa", "libc", - "winapi", + "num_threads", + "time-macros", ] [[package]] -name = "tiny-keccak" -version = "2.0.2" +name = "time-macros" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" -dependencies = [ - "crunchy", -] +checksum = "42657b1a6f4d817cda8e7a0ace261fe0cc946cf3a80314390b22cc61ae080792" [[package]] name = "tinyvec" @@ -2221,19 +2269,20 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.15.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbbf1c778ec206785635ce8ad57fe52b3009ae9e0c9f574a728f3049d3e55838" +checksum = "2af73ac49756f3f7c01172e34a23e5d0216f6c32333757c2c61feb2bbff5a5ee" dependencies = [ "bytes 1.1.0", "libc", "memchr", - "mio", + "mio 0.8.2", "num_cpus", "once_cell", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "pin-project-lite", "signal-hook-registry", + "socket2", "tokio-macros", "winapi", ] @@ -2275,11 +2324,25 @@ dependencies = [ "tokio", ] +[[package]] +name = "tokio-util" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0edfdeb067411dba2044da6d1cb2df793dd35add7888d73c16e3381ded401764" +dependencies = [ + "bytes 1.1.0", + "futures-core", + "futures-io", + "futures-sink", + "pin-project-lite", + "tokio", +] + [[package]] name = "toml" -version = "0.5.8" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa" +checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7" dependencies = [ "serde", ] @@ -2307,9 +2370,9 @@ dependencies = [ [[package]] name = "unicode-segmentation" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b" +checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99" [[package]] name = "unicode-width" @@ -2393,11 +2456,17 @@ version = "0.10.2+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" +[[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.78" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "632f73e236b219150ea279196e54e610f5dbafa5d61786303d4da54f84e47fce" +checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad" dependencies = [ "cfg-if 1.0.0", "wasm-bindgen-macro", @@ -2405,9 +2474,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.78" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a317bf8f9fba2476b4b2c85ef4c4af8ff39c3c7f0cdfeed4f82c34a880aa837b" +checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4" dependencies = [ "bumpalo", "lazy_static", @@ -2420,9 +2489,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.78" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d56146e7c495528bf6587663bea13a8eb588d39b36b679d83972e1a2dbbdacf9" +checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -2430,9 +2499,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.78" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7803e0eea25835f8abdc585cd3021b3deb11543c6fe226dcd30b228857c5c5ab" +checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b" dependencies = [ "proc-macro2", "quote", @@ -2443,9 +2512,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.78" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0237232789cf037d5480773fe568aac745bfe2afbc11a863e97901780a6b47cc" +checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744" [[package]] name = "wayland-client" @@ -2532,9 +2601,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.55" +version = "0.3.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38eb105f1c59d9eaa6b5cdc92b859d85b926e82cb2e0945cd0c9259faa6fe9fb" +checksum = "7b17e741662c70c8bd24ac5c5b18de314a2c26c32bf8346ee1e6f53de919c283" dependencies = [ "js-sys", "wasm-bindgen", @@ -2552,18 +2621,18 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.22.2" +version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "552ceb903e957524388c4d3475725ff2c8b7960922063af6ce53c9a43da07449" +checksum = "44d8de8415c823c8abd270ad483c6feeac771fad964890779f9a8cb24fbbc1bf" dependencies = [ "webpki", ] [[package]] name = "which" -version = "4.2.2" +version = "4.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea187a8ef279bc014ec368c27a920da2024d2a711109bfbe3440585d5cf27ad9" +checksum = "5c4fb54e6113b6a8772ee41c3404fb0301ac79604489467e0a9ce1f3e97c24ae" dependencies = [ "either", "lazy_static", @@ -2601,6 +2670,49 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows-sys" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5acdd78cb4ba54c0045ac14f62d8f94a03d10047904ae2a40afa1e99d8f70825" +dependencies = [ + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_msvc" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17cffbe740121affb56fad0fc0e421804adf0ae00891205213b5cecd30db881d" + +[[package]] +name = "windows_i686_gnu" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2564fde759adb79129d9b4f54be42b32c89970c18ebf93124ca8870a498688ed" + +[[package]] +name = "windows_i686_msvc" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cd9d32ba70453522332c14d38814bceeb747d80b3958676007acadd7e166956" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfce6deae227ee8d356d19effc141a509cc503dfd1f850622ec4b0f84428e1f4" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d19538ccc21819d01deaf88d6a17eae6596a12e9aafdbb97916fb49896d89de9" + [[package]] name = "winit" version = "0.24.0" @@ -2608,7 +2720,7 @@ source = "git+https://github.com/neovide/winit?branch=new-keyboard-all#59eb01c19 dependencies = [ "bitflags", "cocoa", - "core-foundation 0.9.2", + "core-foundation 0.9.3", "core-graphics 0.22.3", "core-video-sys", "dispatch", @@ -2617,7 +2729,7 @@ dependencies = [ "libc", "log", "memmap2 0.2.3", - "mio", + "mio 0.7.14", "mio-misc", "nameof", "ndk", @@ -2696,11 +2808,11 @@ dependencies = [ [[package]] name = "xdg" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a23fe958c70412687039c86f578938b4a0bb50ec788e96bce4d6ab00ddd5803" +checksum = "0c4583db5cbd4c4c0303df2d15af80f0539db703fa1c68802d4cbbd2dd0f88f6" dependencies = [ - "dirs 3.0.2", + "dirs", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 5aac340..29b0502 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,53 +16,53 @@ default = [] embed-fonts = [] [dependencies] -serde = { version = "1.0", features = ["derive"] } -serde_json = "1.0" +async-trait = "0.1.53" +cfg-if = "1.0.0" +clap = { version = "3.1.9", features = ["cargo"] } +clipboard = "0.5.0" +derive-new = "0.5.9" +dirs = "4.0.0" +euclid = "0.22.7" +flexi_logger = { version = "0.22.3", default-features = false } +futures = "0.3.21" +gl = "0.14.0" +glutin = { git = "https://github.com/neovide/glutin", branch = "new-keyboard-all", features = ["serde"] } +image = { version = "0.24.1", default-features = false, features = ["ico"] } +lazy_static = "1.4.0" +log = "0.4.16" +lru = "0.7.5" neovide-derive = { path = "neovide-derive" } -euclid = "0.20.7" -lru = "0.4.3" -derive-new = "0.5" -rmpv = "1.0.0" -image = { version = "0.22.3", default-features = false, features = ["ico"] } nvim-rs = { git = "https://github.com/KillTheMule/nvim-rs", branch = "master", features = ["use_tokio"] } -tokio = { version = "1.1.1", features = ["full"] } -tokio-util = "0.6.7" -async-trait = "0.1.18" -lazy_static = "1.4.0" -unicode-segmentation = "1.6.0" -log = "0.4.8" -flexi_logger = { version = "0.17.1", default-features = false } -parking_lot = "0.10.0" -cfg-if = "0.1.10" -which = "4" -dirs = "2" -rand = "0.7" -pin-project = "0.4.27" -futures = "0.3.12" -glutin = { git = "https://github.com/neovide/glutin", branch = "new-keyboard-all", features=["serde"] } -winit = { git = "https://github.com/neovide/winit", branch = "new-keyboard-all" } -gl = "0.14.0" +parking_lot = "0.12.0" +pin-project = "1.0.10" +rand = "0.8.5" +rmpv = "1.0.0" +serde = { version = "1.0.136", features = ["derive"] } +serde_json = "1.0.79" swash = "0.1.4" -clap="2.33.3" -xdg="2.4.0" -clipboard="0.5.0" +tokio = { version = "1.17.0", features = ["full"] } +tokio-util = { version = "0.7.1", features = ["compat"] } +unicode-segmentation = "1.9.0" +which = "4.2.5" +winit = { git = "https://github.com/neovide/winit", branch = "new-keyboard-all" } +xdg = "2.4.1" [dev-dependencies] -mockall = "0.7.0" +mockall = "0.11.0" [target.'cfg(windows)'.dependencies] winapi = { version = "0.3.9", features = ["winuser"] } [target.'cfg(windows)'.build-dependencies] -winres = "0.1.11" +winres = "0.1.12" [target.'cfg(linux)'.dependencies.skia-safe] features = ["gl", "egl"] -version = "^0.42.1" +version = "0.49.1" [target.'cfg(not(linux))'.dependencies.skia-safe] features = ["gl"] -version = "^0.42.1" +version = "0.49.1" [profile.release] debug = true diff --git a/src/cmd_line.rs b/src/cmd_line.rs index adee7be..9fcd33f 100644 --- a/src/cmd_line.rs +++ b/src/cmd_line.rs @@ -1,6 +1,6 @@ use crate::{dimensions::Dimensions, frame::Frame, settings::*}; -use clap::{App, Arg}; +use clap::{Arg, Command}; #[derive(Clone, Debug)] pub struct CmdLineSettings { @@ -50,94 +50,94 @@ impl Default for CmdLineSettings { } pub fn handle_command_line_arguments(args: Vec) -> Result<(), String> { - let clapp = App::new("Neovide") + let clapp = Command::new("Neovide") .version(crate_version!()) .author(crate_authors!()) .about(crate_description!()) // Pass through arguments .arg( - Arg::with_name("files_to_open") - .multiple(true) + Arg::new("files_to_open") + .multiple_values(true) .takes_value(true) .help("Files to open"), ) .arg( - Arg::with_name("neovim_args") - .multiple(true) + Arg::new("neovim_args") + .multiple_values(true) .takes_value(true) .last(true) .help("Specify Arguments to pass down to neovim"), ) // Command-line arguments only .arg( - Arg::with_name("geometry") + Arg::new("geometry") .long("geometry") .takes_value(true) .help("Specify the Geometry of the window"), ) .arg( - Arg::with_name("log_to_file") + Arg::new("log_to_file") .long("log") .help("Log to a file"), ) .arg( - Arg::with_name("nofork") + Arg::new("nofork") .long("nofork") .help("Do not detach process from terminal"), ) .arg( - Arg::with_name("remote_tcp") + Arg::new("remote_tcp") .long("remote-tcp") .takes_value(true) .help("Connect to Remote TCP"), ) .arg( - Arg::with_name("wsl") + Arg::new("wsl") .long("wsl") .help("Run in WSL") ) // Command-line flags with environment variable fallback .arg( - Arg::with_name("frame") + Arg::new("frame") .long("frame") .takes_value(true) .help("Configure the window frame. NOTE: Window might not be resizable if setting is None.") ) .arg( - Arg::with_name("maximized") + Arg::new("maximized") .long("maximized") .help("Maximize the window"), ) .arg( - Arg::with_name("multi_grid") + Arg::new("multi_grid") .long("multigrid") .help("Enable Multigrid"), ) .arg( - Arg::with_name("noidle") + Arg::new("noidle") .long("noidle") .help("Render every frame. Takes more power and cpu time but possibly fixes animation issues"), ) .arg( - Arg::with_name("nosrgb") + Arg::new("nosrgb") .long("nosrgb") .help("Do not use standard color space to initialize the window. Swapping this variable sometimes fixes issues on startup"), ) // Command-line arguments with environment variable fallback .arg( - Arg::with_name("neovim_bin") + Arg::new("neovim_bin") .long("neovim-bin") .takes_value(true) .help("Specify path to neovim"), ) .arg( - Arg::with_name("wayland_app_id") + Arg::new("wayland_app_id") .long("wayland-app-id") .takes_value(true) .help("Specify an App ID for Wayland"), ) .arg( - Arg::with_name("x11_wm_class") + Arg::new("x11_wm_class") .long("x11-wm-class") .takes_value(true) .help("Specify an X11 WM class"), diff --git a/src/main.rs b/src/main.rs index 04db52b..3934d67 100644 --- a/src/main.rs +++ b/src/main.rs @@ -34,7 +34,7 @@ extern crate lazy_static; use std::env::args; #[cfg(not(test))] -use flexi_logger::{Cleanup, Criterion, Duplicate, Logger, Naming}; +use flexi_logger::{Cleanup, Criterion, Duplicate, FileSpec, Logger, Naming}; use log::trace; use bridge::start_bridge; @@ -150,8 +150,9 @@ pub fn init_logger() { let settings = SETTINGS.get::(); let logger = if settings.log_to_file { - Logger::with_env_or_str("neovide") - .log_to_file() + Logger::try_with_env_or_str("neovide") + .expect("Could not init logger") + .log_to_file(FileSpec::default()) .rotate( Criterion::Size(10_000_000), Naming::Timestamps, @@ -159,7 +160,7 @@ pub fn init_logger() { ) .duplicate_to_stderr(Duplicate::Error) } else { - Logger::with_env_or_str("neovide = error") + Logger::try_with_env_or_str("neovide = error").expect("Cloud not init logger") }; logger.start().expect("Could not start logger"); From 5752025762a0bf73d1051f282521df0bc811a634 Mon Sep 17 00:00:00 2001 From: Jaffar Mohammed Date: Sun, 17 Apr 2022 22:51:58 +0300 Subject: [PATCH 4/7] fix clippy warnings --- src/cmd_line.rs | 2 +- src/editor/cursor.rs | 6 +++--- src/editor/grid.rs | 4 ++-- src/editor/mod.rs | 2 +- src/editor/window.rs | 2 +- src/main.rs | 3 +-- src/renderer/cursor_renderer/mod.rs | 16 ++++++++-------- src/settings/mod.rs | 6 +++--- 8 files changed, 20 insertions(+), 21 deletions(-) diff --git a/src/cmd_line.rs b/src/cmd_line.rs index 9fcd33f..94b94fb 100644 --- a/src/cmd_line.rs +++ b/src/cmd_line.rs @@ -310,7 +310,7 @@ mod tests { let _accessing_settings = ACCESSING_SETTINGS.lock().unwrap(); handle_command_line_arguments(args).expect("Could not parse arguments"); - assert_eq!(SETTINGS.get::().log_to_file, true); + assert!(SETTINGS.get::().log_to_file); } #[test] diff --git a/src/editor/cursor.rs b/src/editor/cursor.rs index 781caa1..31ea8f7 100644 --- a/src/editor/cursor.rs +++ b/src/editor/cursor.rs @@ -84,7 +84,7 @@ impl Cursor { return self .style .as_ref() - .map(|s| (255 as f32 * ((100 - s.blend) as f32 / (100.0 as f32))) as u8) + .map(|s| (255_f32 * ((100 - s.blend) as f32 / 100.0_f32)) as u8) .unwrap_or(255); } @@ -160,7 +160,7 @@ mod tests { cursor.foreground(&DEFAULT_COLORS), DEFAULT_COLORS.background.unwrap() ); - cursor.style = style.clone(); + cursor.style = style; assert_eq!( cursor.foreground(&DEFAULT_COLORS), COLORS.foreground.unwrap() @@ -182,7 +182,7 @@ mod tests { cursor.background(&DEFAULT_COLORS), DEFAULT_COLORS.foreground.unwrap() ); - cursor.style = style.clone(); + cursor.style = style; assert_eq!( cursor.background(&DEFAULT_COLORS), COLORS.background.unwrap() diff --git a/src/editor/grid.rs b/src/editor/grid.rs index d04dc16..4401641 100644 --- a/src/editor/grid.rs +++ b/src/editor/grid.rs @@ -201,7 +201,7 @@ mod tests { character_grid.set_all_characters(grid_cell.clone()); assert_eq!( character_grid.characters, - vec![grid_cell.clone(); context.area] + vec![grid_cell; context.area] ); } @@ -214,7 +214,7 @@ mod tests { "foo".to_string(), Some(Arc::new(Style::new(context.none_colors))), ); - character_grid.characters = vec![grid_cell.clone(); context.area]; + character_grid.characters = vec![grid_cell; context.area]; // RUN FUNCTION character_grid.clear(); diff --git a/src/editor/mod.rs b/src/editor/mod.rs index 65fab92..e75cce8 100644 --- a/src/editor/mod.rs +++ b/src/editor/mod.rs @@ -83,7 +83,7 @@ impl Editor { } RedrawEvent::ModeInfoSet { cursor_modes } => { self.mode_list = cursor_modes; - if let Some(current_mode_i) = self.current_mode_index.clone() { + if let Some(current_mode_i) = self.current_mode_index { if let Some(current_mode) = self.mode_list.get(current_mode_i as usize) { self.cursor.change_mode(current_mode, &self.defined_styles) } diff --git a/src/editor/window.rs b/src/editor/window.rs index e4f49e2..43c354e 100644 --- a/src/editor/window.rs +++ b/src/editor/window.rs @@ -367,6 +367,6 @@ mod tests { let sent_commands = draw_command_receiver .try_recv() .expect("Could not receive commands"); - assert!(sent_commands.len() != 0); + assert!(!sent_commands.is_empty()); } } diff --git a/src/main.rs b/src/main.rs index 3934d67..62ac71f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,8 +1,7 @@ #![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] - // Test naming occasionally uses camelCase with underscores to separate sections of // the test name. -#[cfg_attr(test, allow(non_snake_case))] +#![cfg_attr(test, allow(non_snake_case))] #[macro_use] extern crate neovide_derive; diff --git a/src/renderer/cursor_renderer/mod.rs b/src/renderer/cursor_renderer/mod.rs index d59e23e..6dbb4a4 100644 --- a/src/renderer/cursor_renderer/mod.rs +++ b/src/renderer/cursor_renderer/mod.rs @@ -204,12 +204,12 @@ impl CursorRenderer { } pub fn handle_event(&mut self, event: &Event<()>) { - match event { - Event::WindowEvent { - event: WindowEvent::Focused(is_focused), - .. - } => self.window_has_focus = *is_focused, - _ => {} + if let Event::WindowEvent { + event: WindowEvent::Focused(is_focused), + .. + } = event + { + self.window_has_focus = *is_focused } } @@ -424,7 +424,7 @@ impl CursorRenderer { path.line_to(self.corners[3].current_position); path.close(); - canvas.draw_path(&path, &paint); + canvas.draw_path(&path, paint); path } @@ -459,7 +459,7 @@ impl CursorRenderer { // from the larger one. This can fail in which case we return a full "rectangle". let path = op(&rectangle, &subtract, skia_safe::PathOp::Difference).unwrap_or(rectangle); - canvas.draw_path(&path, &paint); + canvas.draw_path(&path, paint); path } } diff --git a/src/settings/mod.rs b/src/settings/mod.rs index 1b98390..15592a5 100644 --- a/src/settings/mod.rs +++ b/src/settings/mod.rs @@ -143,7 +143,7 @@ impl Settings { mod tests { use async_trait::async_trait; use nvim_rs::{Handler, Neovim}; - use tokio; + use super::*; use crate::{ @@ -224,8 +224,8 @@ mod tests { let vt2 = TypeId::of::(); let mut values = settings.settings.write(); - values.insert(vt1, Box::new(v1.clone())); - values.insert(vt2, Box::new(v2.clone())); + values.insert(vt1, Box::new(v1)); + values.insert(vt2, Box::new(v2)); unsafe { settings.settings.force_unlock_write(); From 086b891856c5b14f9f5ddc742cc95501028a7d13 Mon Sep 17 00:00:00 2001 From: MultisampledNight Date: Sun, 17 Apr 2022 23:51:20 +0200 Subject: [PATCH 5/7] Make CI happy by cargo fmt --- src/editor/grid.rs | 5 +---- src/settings/mod.rs | 1 - 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/src/editor/grid.rs b/src/editor/grid.rs index 4401641..0e3ff23 100644 --- a/src/editor/grid.rs +++ b/src/editor/grid.rs @@ -199,10 +199,7 @@ mod tests { // RUN FUNCTION character_grid.set_all_characters(grid_cell.clone()); - assert_eq!( - character_grid.characters, - vec![grid_cell; context.area] - ); + assert_eq!(character_grid.characters, vec![grid_cell; context.area]); } #[test] diff --git a/src/settings/mod.rs b/src/settings/mod.rs index 15592a5..8664567 100644 --- a/src/settings/mod.rs +++ b/src/settings/mod.rs @@ -143,7 +143,6 @@ impl Settings { mod tests { use async_trait::async_trait; use nvim_rs::{Handler, Neovim}; - use super::*; use crate::{ From ac48a6cfb4e992b159356d00ddea7393cc63272d Mon Sep 17 00:00:00 2001 From: MultisampledNight Date: Sat, 23 Apr 2022 13:53:10 +0200 Subject: [PATCH 6/7] Clarify about log location in issue template --- .github/ISSUE_TEMPLATE/bug_report.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index a8ada9a..0d99061 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -29,7 +29,7 @@ If applicable, add screenshots to help explain your problem. - Neovide Version [e.g. 0.6.0] - Neovim Version [e.g. 0.5.0] -**Please run `neovide --log` and paste the contents of the `.log` file here:** +**Please run `neovide --log` and paste the contents of the `.log` file created in the current directory here:** **Additional context** Add any other context about the problem here. From ee0037a31eb4ed6b7cdd11492f68537ea44e5c23 Mon Sep 17 00:00:00 2001 From: MultisampledNight Date: Sat, 30 Apr 2022 10:01:06 +0200 Subject: [PATCH 7/7] Fix undefined behavior There's no guarantee that the lock is being held by the main thread at that moment, so the unsafe block violated the safety contract. --- src/settings/mod.rs | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/settings/mod.rs b/src/settings/mod.rs index 1b98390..f761489 100644 --- a/src/settings/mod.rs +++ b/src/settings/mod.rs @@ -69,9 +69,6 @@ impl Settings { pub fn set(&self, t: &T) { let type_id: TypeId = TypeId::of::(); let t: T = (*t).clone(); - unsafe { - self.settings.force_unlock_write(); - } let mut write_lock = self.settings.write(); write_lock.insert(type_id, Box::new(t)); }