diff --git a/jinja-lsp-queries/Cargo.toml b/jinja-lsp-queries/Cargo.toml index 88022c0..abc3df9 100644 --- a/jinja-lsp-queries/Cargo.toml +++ b/jinja-lsp-queries/Cargo.toml @@ -6,10 +6,10 @@ description = "TreeSitter queries for jinja-lsp" license = "MIT" [dependencies] -tree-sitter = "0.20.10" -tree-sitter-jinja2 = "0.0.6" -tree-sitter-rust = "0.20.4" +tree-sitter = "0.21.0" +tree-sitter-jinja2 = "0.0.7" +tree-sitter-rust = "0.21.0" tower-lsp = { version = "0.20.0", features = ["proposed"] } ropey = "1.5.0" -tree-sitter-python = "=0.20.4" +tree-sitter-python = "=0.21.0" diff --git a/jinja-lsp-queries/src/parsers.rs b/jinja-lsp-queries/src/parsers.rs index 82c12c5..3f3dadc 100644 --- a/jinja-lsp-queries/src/parsers.rs +++ b/jinja-lsp-queries/src/parsers.rs @@ -23,7 +23,7 @@ impl Parsers { pub fn update_backend(&mut self, lang: &str) { if lang == "python" { self.backend = Parser::new(); - let _ = self.backend.set_language(tree_sitter_python::language()); + let _ = self.backend.set_language(&tree_sitter_python::language()); } } } @@ -31,9 +31,9 @@ impl Parsers { impl Default for Parsers { fn default() -> Self { let mut jinja = Parser::new(); - let _ = jinja.set_language(tree_sitter_jinja2::language()); + let _ = jinja.set_language(&tree_sitter_jinja2::language()); let mut backend = Parser::new(); - let _ = backend.set_language(tree_sitter_rust::language()); + let _ = backend.set_language(&tree_sitter_rust::language()); Self { jinja, backend } } } diff --git a/jinja-lsp-queries/src/search/queries.rs b/jinja-lsp-queries/src/search/queries.rs index 4127389..a532f3d 100644 --- a/jinja-lsp-queries/src/search/queries.rs +++ b/jinja-lsp-queries/src/search/queries.rs @@ -19,13 +19,13 @@ impl Clone for Queries { impl Default for Queries { fn default() -> Self { Self { - jinja_definitions: Query::new(tree_sitter_jinja2::language(), DEFINITIONS).unwrap(), - jinja_objects: Query::new(tree_sitter_jinja2::language(), OBJECTS).unwrap(), - backend_definitions: Query::new(tree_sitter_rust::language(), RUST_DEFINITIONS) + jinja_definitions: Query::new(&tree_sitter_jinja2::language(), DEFINITIONS).unwrap(), + jinja_objects: Query::new(&tree_sitter_jinja2::language(), OBJECTS).unwrap(), + backend_definitions: Query::new(&tree_sitter_rust::language(), RUST_DEFINITIONS) .unwrap(), - jinja_imports: Query::new(tree_sitter_jinja2::language(), JINJA_IMPORTS).unwrap(), - backend_templates: Query::new(tree_sitter_rust::language(), RUST_TEMPLATES).unwrap(), - jinja_snippets: Query::new(tree_sitter_jinja2::language(), JINJA_SNIPPETS).unwrap(), + jinja_imports: Query::new(&tree_sitter_jinja2::language(), JINJA_IMPORTS).unwrap(), + backend_templates: Query::new(&tree_sitter_rust::language(), RUST_TEMPLATES).unwrap(), + jinja_snippets: Query::new(&tree_sitter_jinja2::language(), JINJA_SNIPPETS).unwrap(), } } } @@ -34,9 +34,9 @@ impl Queries { pub fn update_backend(&mut self, lang: &str) { if lang == "python" { self.backend_templates = - Query::new(tree_sitter_python::language(), PYTHON_TEMPLATES).unwrap(); + Query::new(&tree_sitter_python::language(), PYTHON_TEMPLATES).unwrap(); self.backend_definitions = - Query::new(tree_sitter_python::language(), PYTHON_DEFINITIONS).unwrap(); + Query::new(&tree_sitter_python::language(), PYTHON_DEFINITIONS).unwrap(); } } } @@ -169,7 +169,7 @@ const JINJA_SNIPPETS: &str = r#" (statement_begin) @start (statement_end) @end (ERROR - (ERROR) @error + (ERROR)? @error ) @error_block ( diff --git a/jinja-lsp-queries/src/search/snippets_completion.rs b/jinja-lsp-queries/src/search/snippets_completion.rs index 207f682..d672a09 100644 --- a/jinja-lsp-queries/src/search/snippets_completion.rs +++ b/jinja-lsp-queries/src/search/snippets_completion.rs @@ -14,6 +14,7 @@ pub struct Snippets { impl Snippets { pub fn check(&mut self, name: &str, capture: &QueryCapture<'_>) -> Option<()> { + dbg!(name); match name { "start" => { let start = capture.node.start_position(); diff --git a/jinja-lsp-queries/src/search/test_queries.rs b/jinja-lsp-queries/src/search/test_queries.rs index e0d8178..b4a8190 100644 --- a/jinja-lsp-queries/src/search/test_queries.rs +++ b/jinja-lsp-queries/src/search/test_queries.rs @@ -17,7 +17,7 @@ mod query_tests { let mut parser = Parser::new(); parser - .set_language(language) + .set_language(&language) .expect("could not load jinja grammar"); parser.parse(text, None).expect("not to fail") @@ -28,7 +28,7 @@ mod query_tests { let mut parser = Parser::new(); parser - .set_language(language) + .set_language(&language) .expect("could not load rust grammar"); parser.parse(text, None).expect("not to fail") @@ -39,7 +39,7 @@ mod query_tests { let mut parser = Parser::new(); parser - .set_language(language) + .set_language(&language) .expect("could not load rust grammar"); parser.parse(text, None).expect("not to fail") diff --git a/jinja-lsp/Cargo.toml b/jinja-lsp/Cargo.toml index f92ae91..799a3ff 100644 --- a/jinja-lsp/Cargo.toml +++ b/jinja-lsp/Cargo.toml @@ -25,9 +25,9 @@ serde_json = "1.0.78" tokio = { version = "1.17.0", features = ["full"] } tower-lsp = { version = "0.20.0", features = ["proposed"]} serde = { version = "1.0", features = ["derive"] } -tree-sitter = "^0.20.10" +tree-sitter = "^0.21.0" walkdir = "2.4.0" anyhow = "1.0.75" -tree-sitter-jinja2 = "0.0.6" -tree-sitter-rust = "^0.20.4" +tree-sitter-jinja2 = "0.0.7" +tree-sitter-rust = "^0.21.0" jinja-lsp-queries = { path = "../jinja-lsp-queries", version = "0.1.80"} diff --git a/rust-toolchains.toml b/rust-toolchains.toml index 27ae62c..5198580 100644 --- a/rust-toolchains.toml +++ b/rust-toolchains.toml @@ -1,2 +1,2 @@ [toolchain] -channel = "1.74.1" +channel = "1.78.0"