diff options
-rw-r--r-- | Cargo.lock | 6 | ||||
-rw-r--r-- | crates/ra_lsp_server/Cargo.toml | 2 | ||||
-rw-r--r-- | crates/ra_lsp_server/src/caps.rs | 7 | ||||
-rw-r--r-- | crates/ra_lsp_server/src/main_loop.rs | 3 | ||||
-rw-r--r-- | crates/ra_lsp_server/src/main_loop/handlers.rs | 5 | ||||
-rw-r--r-- | crates/ra_lsp_server/tests/heavy_tests/main.rs | 21 |
6 files changed, 8 insertions, 36 deletions
diff --git a/Cargo.lock b/Cargo.lock index 3c567376e..caa52fb69 100644 --- a/Cargo.lock +++ b/Cargo.lock | |||
@@ -620,7 +620,7 @@ dependencies = [ | |||
620 | 620 | ||
621 | [[package]] | 621 | [[package]] |
622 | name = "lsp-types" | 622 | name = "lsp-types" |
623 | version = "0.63.0" | 623 | version = "0.61.0" |
624 | source = "registry+https://github.com/rust-lang/crates.io-index" | 624 | source = "registry+https://github.com/rust-lang/crates.io-index" |
625 | dependencies = [ | 625 | dependencies = [ |
626 | "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", | 626 | "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", |
@@ -1048,7 +1048,7 @@ dependencies = [ | |||
1048 | "jod-thread 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", | 1048 | "jod-thread 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", |
1049 | "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", | 1049 | "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", |
1050 | "lsp-server 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", | 1050 | "lsp-server 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", |
1051 | "lsp-types 0.63.0 (registry+https://github.com/rust-lang/crates.io-index)", | 1051 | "lsp-types 0.61.0 (registry+https://github.com/rust-lang/crates.io-index)", |
1052 | "parking_lot 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", | 1052 | "parking_lot 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", |
1053 | "ra_ide 0.1.0", | 1053 | "ra_ide 0.1.0", |
1054 | "ra_prof 0.1.0", | 1054 | "ra_prof 0.1.0", |
@@ -1839,7 +1839,7 @@ dependencies = [ | |||
1839 | "checksum lock_api 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e57b3997725d2b60dbec1297f6c2e2957cc383db1cebd6be812163f969c7d586" | 1839 | "checksum lock_api 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e57b3997725d2b60dbec1297f6c2e2957cc383db1cebd6be812163f969c7d586" |
1840 | "checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7" | 1840 | "checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7" |
1841 | "checksum lsp-server 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0ba36405bd742139ab79c246ca5adb7fde2fe1a0f495e2c8e2f607b607dedb12" | 1841 | "checksum lsp-server 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0ba36405bd742139ab79c246ca5adb7fde2fe1a0f495e2c8e2f607b607dedb12" |
1842 | "checksum lsp-types 0.63.0 (registry+https://github.com/rust-lang/crates.io-index)" = "031d6b53a686f8eef69138f5b834b7eadadb0dd86f4c888504476ee1b17ae8d7" | 1842 | "checksum lsp-types 0.61.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fa3268fbe8beb2795c2fb327bf44f4f3d24f5fe9ebc18d7e2980afd444d72bcf" |
1843 | "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" | 1843 | "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" |
1844 | "checksum memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e" | 1844 | "checksum memchr 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e" |
1845 | "checksum memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "75189eb85871ea5c2e2c15abbdd541185f63b408415e5051f5cac122d8c774b9" | 1845 | "checksum memoffset 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "75189eb85871ea5c2e2c15abbdd541185f63b408415e5051f5cac122d8c774b9" |
diff --git a/crates/ra_lsp_server/Cargo.toml b/crates/ra_lsp_server/Cargo.toml index c50cb8031..41672eaff 100644 --- a/crates/ra_lsp_server/Cargo.toml +++ b/crates/ra_lsp_server/Cargo.toml | |||
@@ -14,7 +14,7 @@ serde_json = "1.0.34" | |||
14 | serde = { version = "1.0.83", features = ["derive"] } | 14 | serde = { version = "1.0.83", features = ["derive"] } |
15 | crossbeam-channel = "0.4" | 15 | crossbeam-channel = "0.4" |
16 | log = "0.4.3" | 16 | log = "0.4.3" |
17 | lsp-types = { version = "0.63.0", features = ["proposed"] } | 17 | lsp-types = { version = "0.61.0", features = ["proposed"] } |
18 | rustc-hash = "1.0" | 18 | rustc-hash = "1.0" |
19 | parking_lot = "0.10.0" | 19 | parking_lot = "0.10.0" |
20 | jod-thread = "0.1.0" | 20 | jod-thread = "0.1.0" |
diff --git a/crates/ra_lsp_server/src/caps.rs b/crates/ra_lsp_server/src/caps.rs index 4cb259360..eea0965ed 100644 --- a/crates/ra_lsp_server/src/caps.rs +++ b/crates/ra_lsp_server/src/caps.rs | |||
@@ -5,7 +5,7 @@ use lsp_types::{ | |||
5 | DocumentOnTypeFormattingOptions, FoldingRangeProviderCapability, GenericCapability, | 5 | DocumentOnTypeFormattingOptions, FoldingRangeProviderCapability, GenericCapability, |
6 | ImplementationProviderCapability, RenameOptions, RenameProviderCapability, ServerCapabilities, | 6 | ImplementationProviderCapability, RenameOptions, RenameProviderCapability, ServerCapabilities, |
7 | SignatureHelpOptions, TextDocumentSyncCapability, TextDocumentSyncKind, | 7 | SignatureHelpOptions, TextDocumentSyncCapability, TextDocumentSyncKind, |
8 | TextDocumentSyncOptions, TypeDefinitionProviderCapability, WorkDoneProgressOptions, | 8 | TextDocumentSyncOptions, TypeDefinitionProviderCapability, |
9 | }; | 9 | }; |
10 | 10 | ||
11 | pub fn server_capabilities() -> ServerCapabilities { | 11 | pub fn server_capabilities() -> ServerCapabilities { |
@@ -21,14 +21,10 @@ pub fn server_capabilities() -> ServerCapabilities { | |||
21 | completion_provider: Some(CompletionOptions { | 21 | completion_provider: Some(CompletionOptions { |
22 | resolve_provider: None, | 22 | resolve_provider: None, |
23 | trigger_characters: Some(vec![":".to_string(), ".".to_string()]), | 23 | trigger_characters: Some(vec![":".to_string(), ".".to_string()]), |
24 | work_done_progress_options: WorkDoneProgressOptions { work_done_progress: None }, | ||
25 | }), | 24 | }), |
26 | signature_help_provider: Some(SignatureHelpOptions { | 25 | signature_help_provider: Some(SignatureHelpOptions { |
27 | trigger_characters: Some(vec!["(".to_string(), ",".to_string(), ")".to_string()]), | 26 | trigger_characters: Some(vec!["(".to_string(), ",".to_string(), ")".to_string()]), |
28 | retrigger_characters: None, | ||
29 | work_done_progress_options: WorkDoneProgressOptions { work_done_progress: None }, | ||
30 | }), | 27 | }), |
31 | declaration_provider: None, | ||
32 | definition_provider: Some(true), | 28 | definition_provider: Some(true), |
33 | type_definition_provider: Some(TypeDefinitionProviderCapability::Simple(true)), | 29 | type_definition_provider: Some(TypeDefinitionProviderCapability::Simple(true)), |
34 | implementation_provider: Some(ImplementationProviderCapability::Simple(true)), | 30 | implementation_provider: Some(ImplementationProviderCapability::Simple(true)), |
@@ -48,7 +44,6 @@ pub fn server_capabilities() -> ServerCapabilities { | |||
48 | folding_range_provider: Some(FoldingRangeProviderCapability::Simple(true)), | 44 | folding_range_provider: Some(FoldingRangeProviderCapability::Simple(true)), |
49 | rename_provider: Some(RenameProviderCapability::Options(RenameOptions { | 45 | rename_provider: Some(RenameProviderCapability::Options(RenameOptions { |
50 | prepare_provider: Some(true), | 46 | prepare_provider: Some(true), |
51 | work_done_progress_options: WorkDoneProgressOptions { work_done_progress: None }, | ||
52 | })), | 47 | })), |
53 | document_link_provider: None, | 48 | document_link_provider: None, |
54 | color_provider: None, | 49 | color_provider: None, |
diff --git a/crates/ra_lsp_server/src/main_loop.rs b/crates/ra_lsp_server/src/main_loop.rs index 158cac0be..83845f1e0 100644 --- a/crates/ra_lsp_server/src/main_loop.rs +++ b/crates/ra_lsp_server/src/main_loop.rs | |||
@@ -520,8 +520,7 @@ fn on_notification( | |||
520 | if let Some(file_id) = state.vfs.write().remove_file_overlay(path.as_path()) { | 520 | if let Some(file_id) = state.vfs.write().remove_file_overlay(path.as_path()) { |
521 | subs.remove_sub(FileId(file_id.0)); | 521 | subs.remove_sub(FileId(file_id.0)); |
522 | } | 522 | } |
523 | let params = | 523 | let params = req::PublishDiagnosticsParams { uri, diagnostics: Vec::new() }; |
524 | req::PublishDiagnosticsParams { uri, diagnostics: Vec::new(), version: None }; | ||
525 | let not = notification_new::<req::PublishDiagnostics>(params); | 524 | let not = notification_new::<req::PublishDiagnostics>(params); |
526 | msg_sender.send(not.into()).unwrap(); | 525 | msg_sender.send(not.into()).unwrap(); |
527 | return Ok(()); | 526 | return Ok(()); |
diff --git a/crates/ra_lsp_server/src/main_loop/handlers.rs b/crates/ra_lsp_server/src/main_loop/handlers.rs index 5b64b27cd..409583634 100644 --- a/crates/ra_lsp_server/src/main_loop/handlers.rs +++ b/crates/ra_lsp_server/src/main_loop/handlers.rs | |||
@@ -648,7 +648,6 @@ pub fn handle_code_action( | |||
648 | diagnostics: None, | 648 | diagnostics: None, |
649 | edit: None, | 649 | edit: None, |
650 | command: Some(command), | 650 | command: Some(command), |
651 | is_preferred: None, | ||
652 | }; | 651 | }; |
653 | res.push(action.into()); | 652 | res.push(action.into()); |
654 | } | 653 | } |
@@ -671,7 +670,6 @@ pub fn handle_code_action( | |||
671 | diagnostics: None, | 670 | diagnostics: None, |
672 | edit: None, | 671 | edit: None, |
673 | command: Some(command), | 672 | command: Some(command), |
674 | is_preferred: None, | ||
675 | }; | 673 | }; |
676 | res.push(action.into()); | 674 | res.push(action.into()); |
677 | } | 675 | } |
@@ -830,10 +828,9 @@ pub fn publish_diagnostics( | |||
830 | source: Some("rust-analyzer".to_string()), | 828 | source: Some("rust-analyzer".to_string()), |
831 | message: d.message, | 829 | message: d.message, |
832 | related_information: None, | 830 | related_information: None, |
833 | tags: None, | ||
834 | }) | 831 | }) |
835 | .collect(); | 832 | .collect(); |
836 | Ok(req::PublishDiagnosticsParams { uri, diagnostics, version: None }) | 833 | Ok(req::PublishDiagnosticsParams { uri, diagnostics }) |
837 | } | 834 | } |
838 | 835 | ||
839 | pub fn publish_decorations( | 836 | pub fn publish_decorations( |
diff --git a/crates/ra_lsp_server/tests/heavy_tests/main.rs b/crates/ra_lsp_server/tests/heavy_tests/main.rs index dff63a12d..cfbf16ea5 100644 --- a/crates/ra_lsp_server/tests/heavy_tests/main.rs +++ b/crates/ra_lsp_server/tests/heavy_tests/main.rs | |||
@@ -4,8 +4,7 @@ use std::{collections::HashMap, time::Instant}; | |||
4 | 4 | ||
5 | use lsp_types::{ | 5 | use lsp_types::{ |
6 | CodeActionContext, DidOpenTextDocumentParams, DocumentFormattingParams, FormattingOptions, | 6 | CodeActionContext, DidOpenTextDocumentParams, DocumentFormattingParams, FormattingOptions, |
7 | PartialResultParams, Position, Range, TextDocumentItem, TextDocumentPositionParams, | 7 | Position, Range, TextDocumentItem, TextDocumentPositionParams, |
8 | WorkDoneProgressParams, | ||
9 | }; | 8 | }; |
10 | use ra_lsp_server::req::{ | 9 | use ra_lsp_server::req::{ |
11 | CodeActionParams, CodeActionRequest, Completion, CompletionParams, DidOpenTextDocument, | 10 | CodeActionParams, CodeActionRequest, Completion, CompletionParams, DidOpenTextDocument, |
@@ -49,8 +48,6 @@ use std::collections::Spam; | |||
49 | Position::new(0, 23), | 48 | Position::new(0, 23), |
50 | ), | 49 | ), |
51 | context: None, | 50 | context: None, |
52 | partial_result_params: PartialResultParams::default(), | ||
53 | work_done_progress_params: WorkDoneProgressParams::default(), | ||
54 | }); | 51 | }); |
55 | assert!(format!("{}", res).contains("HashMap")); | 52 | assert!(format!("{}", res).contains("HashMap")); |
56 | eprintln!("completion took {:?}", completion_start.elapsed()); | 53 | eprintln!("completion took {:?}", completion_start.elapsed()); |
@@ -214,12 +211,8 @@ pub use std::collections::HashMap; | |||
214 | options: FormattingOptions { | 211 | options: FormattingOptions { |
215 | tab_size: 4, | 212 | tab_size: 4, |
216 | insert_spaces: false, | 213 | insert_spaces: false, |
217 | insert_final_newline: None, | ||
218 | trim_final_newlines: None, | ||
219 | trim_trailing_whitespace: None, | ||
220 | properties: HashMap::new(), | 214 | properties: HashMap::new(), |
221 | }, | 215 | }, |
222 | work_done_progress_params: WorkDoneProgressParams::default(), | ||
223 | }, | 216 | }, |
224 | json!([ | 217 | json!([ |
225 | { | 218 | { |
@@ -279,11 +272,7 @@ pub use std::collections::HashMap; | |||
279 | tab_size: 4, | 272 | tab_size: 4, |
280 | insert_spaces: false, | 273 | insert_spaces: false, |
281 | properties: HashMap::new(), | 274 | properties: HashMap::new(), |
282 | insert_final_newline: None, | ||
283 | trim_final_newlines: None, | ||
284 | trim_trailing_whitespace: None, | ||
285 | }, | 275 | }, |
286 | work_done_progress_params: WorkDoneProgressParams::default(), | ||
287 | }, | 276 | }, |
288 | json!([ | 277 | json!([ |
289 | { | 278 | { |
@@ -336,8 +325,6 @@ fn main() {} | |||
336 | text_document: server.doc_id("src/lib.rs"), | 325 | text_document: server.doc_id("src/lib.rs"), |
337 | range: Range::new(Position::new(0, 4), Position::new(0, 7)), | 326 | range: Range::new(Position::new(0, 4), Position::new(0, 7)), |
338 | context: empty_context(), | 327 | context: empty_context(), |
339 | partial_result_params: PartialResultParams::default(), | ||
340 | work_done_progress_params: WorkDoneProgressParams::default(), | ||
341 | }, | 328 | }, |
342 | json!([ | 329 | json!([ |
343 | { | 330 | { |
@@ -369,8 +356,6 @@ fn main() {} | |||
369 | text_document: server.doc_id("src/lib.rs"), | 356 | text_document: server.doc_id("src/lib.rs"), |
370 | range: Range::new(Position::new(2, 4), Position::new(2, 7)), | 357 | range: Range::new(Position::new(2, 4), Position::new(2, 7)), |
371 | context: empty_context(), | 358 | context: empty_context(), |
372 | partial_result_params: PartialResultParams::default(), | ||
373 | work_done_progress_params: WorkDoneProgressParams::default(), | ||
374 | }, | 359 | }, |
375 | json!([]), | 360 | json!([]), |
376 | ); | 361 | ); |
@@ -419,8 +404,6 @@ fn main() {{}} | |||
419 | text_document: server.doc_id("src/lib.rs"), | 404 | text_document: server.doc_id("src/lib.rs"), |
420 | range: Range::new(Position::new(0, 4), Position::new(0, 7)), | 405 | range: Range::new(Position::new(0, 4), Position::new(0, 7)), |
421 | context: empty_context(), | 406 | context: empty_context(), |
422 | partial_result_params: PartialResultParams::default(), | ||
423 | work_done_progress_params: WorkDoneProgressParams::default(), | ||
424 | }, | 407 | }, |
425 | json!([ | 408 | json!([ |
426 | { | 409 | { |
@@ -452,8 +435,6 @@ fn main() {{}} | |||
452 | text_document: server.doc_id("src/lib.rs"), | 435 | text_document: server.doc_id("src/lib.rs"), |
453 | range: Range::new(Position::new(2, 4), Position::new(2, 7)), | 436 | range: Range::new(Position::new(2, 4), Position::new(2, 7)), |
454 | context: empty_context(), | 437 | context: empty_context(), |
455 | partial_result_params: PartialResultParams::default(), | ||
456 | work_done_progress_params: WorkDoneProgressParams::default(), | ||
457 | }, | 438 | }, |
458 | json!([]), | 439 | json!([]), |
459 | ); | 440 | ); |