aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernardo <[email protected]>2019-01-15 16:45:56 +0000
committerAleksey Kladov <[email protected]>2019-01-26 08:46:27 +0000
commitb0f7e72c49141df0ad95e3fcb561ee6a4d86b537 (patch)
treeae4c4aee243d59046dd9cadb072fef8f48ea7167
parent5f31d495bdc8639a826f60c6f42d12bb89be9f1a (diff)
use notify with fix
-rw-r--r--Cargo.lock10
-rw-r--r--crates/ra_lsp_server/src/main_loop.rs2
-rw-r--r--crates/ra_vfs/Cargo.toml3
-rw-r--r--crates/ra_vfs/src/watcher.rs15
-rw-r--r--crates/ra_vfs/tests/vfs.rs4
5 files changed, 16 insertions, 18 deletions
diff --git a/Cargo.lock b/Cargo.lock
index b8c840c68..d51146956 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -702,8 +702,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
702 702
703[[package]] 703[[package]]
704name = "notify" 704name = "notify"
705version = "4.0.7" 705version = "4.0.6"
706source = "registry+https://github.com/rust-lang/crates.io-index" 706source = "git+https://github.com/vemoo/notify/?branch=v4-legacy#8114796fb7b133ba8898ba5d08fda20856f666d4"
707dependencies = [ 707dependencies = [
708 "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", 708 "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
709 "filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", 709 "filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1009,9 +1009,9 @@ version = "0.1.0"
1009dependencies = [ 1009dependencies = [
1010 "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", 1010 "crossbeam-channel 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
1011 "drop_bomb 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", 1011 "drop_bomb 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
1012 "flexi_logger 0.10.4 (registry+https://github.com/rust-lang/crates.io-index)", 1012 "flexi_logger 0.10.5 (registry+https://github.com/rust-lang/crates.io-index)",
1013 "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", 1013 "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
1014 "notify 4.0.7 (registry+https://github.com/rust-lang/crates.io-index)", 1014 "notify 4.0.6 (git+https://github.com/vemoo/notify/?branch=v4-legacy)",
1015 "ra_arena 0.1.0", 1015 "ra_arena 0.1.0",
1016 "relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", 1016 "relative-path 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
1017 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", 1017 "rustc-hash 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1898,7 +1898,7 @@ dependencies = [
1898"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" 1898"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
1899"checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" 1899"checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
1900"checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" 1900"checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
1901"checksum notify 4.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "c968cf37cf949114b00d51b0b23536d1c3a4a3963767cf4c969c65a6af78dc7d" 1901"checksum notify 4.0.6 (git+https://github.com/vemoo/notify/?branch=v4-legacy)" = "<none>"
1902"checksum num-derive 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d9fe8fcafd1b86a37ce8a1cfa15ae504817e0c8c2e7ad42767371461ac1d316d" 1902"checksum num-derive 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d9fe8fcafd1b86a37ce8a1cfa15ae504817e0c8c2e7ad42767371461ac1d316d"
1903"checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" 1903"checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea"
1904"checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1" 1904"checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1"
diff --git a/crates/ra_lsp_server/src/main_loop.rs b/crates/ra_lsp_server/src/main_loop.rs
index 4f984ebc7..ddd20a41f 100644
--- a/crates/ra_lsp_server/src/main_loop.rs
+++ b/crates/ra_lsp_server/src/main_loop.rs
@@ -11,7 +11,7 @@ use gen_lsp_server::{
11}; 11};
12use lsp_types::NumberOrString; 12use lsp_types::NumberOrString;
13use ra_ide_api::{Canceled, FileId, LibraryData}; 13use ra_ide_api::{Canceled, FileId, LibraryData};
14use ra_vfs::{VfsTask, WatcherChange}; 14use ra_vfs::VfsTask;
15use rustc_hash::FxHashSet; 15use rustc_hash::FxHashSet;
16use serde::{de::DeserializeOwned, Serialize}; 16use serde::{de::DeserializeOwned, Serialize};
17use threadpool::ThreadPool; 17use threadpool::ThreadPool;
diff --git a/crates/ra_vfs/Cargo.toml b/crates/ra_vfs/Cargo.toml
index b703cbd9f..1a21557bf 100644
--- a/crates/ra_vfs/Cargo.toml
+++ b/crates/ra_vfs/Cargo.toml
@@ -10,7 +10,8 @@ relative-path = "0.4.0"
10rustc-hash = "1.0" 10rustc-hash = "1.0"
11crossbeam-channel = "0.3.5" 11crossbeam-channel = "0.3.5"
12log = "0.4.6" 12log = "0.4.6"
13notify = "4" 13# until https://github.com/passcod/notify/issues/169 is fixed
14notify = { git = "https://github.com/vemoo/notify/", branch = "v4-legacy" }
14drop_bomb = "0.1.0" 15drop_bomb = "0.1.0"
15 16
16thread_worker = { path = "../thread_worker" } 17thread_worker = { path = "../thread_worker" }
diff --git a/crates/ra_vfs/src/watcher.rs b/crates/ra_vfs/src/watcher.rs
index 190a9f924..3bd0e7da2 100644
--- a/crates/ra_vfs/src/watcher.rs
+++ b/crates/ra_vfs/src/watcher.rs
@@ -86,14 +86,11 @@ impl Watcher {
86 pub fn shutdown(mut self) -> thread::Result<()> { 86 pub fn shutdown(mut self) -> thread::Result<()> {
87 self.bomb.defuse(); 87 self.bomb.defuse();
88 drop(self.watcher); 88 drop(self.watcher);
89 // TODO this doesn't terminate because of a buf in `notify` 89 let res = self.thread.join();
90 // uncomment when https://github.com/passcod/notify/pull/170 is released 90 match &res {
91 // let res = self.thread.join(); 91 Ok(()) => log::info!("... Watcher terminated with ok"),
92 // match &res { 92 Err(_) => log::error!("... Watcher terminated with err"),
93 // Ok(()) => log::info!("... Watcher terminated with ok"), 93 }
94 // Err(_) => log::error!("... Watcher terminated with err"), 94 res
95 // }
96 // res
97 Ok(())
98 } 95 }
99} 96}
diff --git a/crates/ra_vfs/tests/vfs.rs b/crates/ra_vfs/tests/vfs.rs
index 9cde2bed7..87fb5a092 100644
--- a/crates/ra_vfs/tests/vfs.rs
+++ b/crates/ra_vfs/tests/vfs.rs
@@ -1,6 +1,6 @@
1use std::{collections::HashSet, fs}; 1use std::{collections::HashSet, fs};
2 2
3use flexi_logger::Logger; 3// use flexi_logger::Logger;
4use ra_vfs::{Vfs, VfsChange}; 4use ra_vfs::{Vfs, VfsChange};
5use tempfile::tempdir; 5use tempfile::tempdir;
6 6
@@ -13,7 +13,7 @@ fn process_tasks(vfs: &mut Vfs, num_tasks: u32) {
13 13
14#[test] 14#[test]
15fn test_vfs_works() -> std::io::Result<()> { 15fn test_vfs_works() -> std::io::Result<()> {
16 Logger::with_str("debug").start().unwrap(); 16 // Logger::with_str("debug").start().unwrap();
17 17
18 let files = [ 18 let files = [
19 ("a/foo.rs", "hello"), 19 ("a/foo.rs", "hello"),