Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package nvim-lspconfig for openSUSE:Factory 
checked in at 2026-03-17 19:05:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nvim-lspconfig (Old)
 and      /work/SRC/openSUSE:Factory/.nvim-lspconfig.new.8177 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "nvim-lspconfig"

Tue Mar 17 19:05:21 2026 rev:14 rq:1339535 version:2.7.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/nvim-lspconfig/nvim-lspconfig.changes    
2026-02-23 17:23:27.918492632 +0100
+++ /work/SRC/openSUSE:Factory/.nvim-lspconfig.new.8177/nvim-lspconfig.changes  
2026-03-17 19:07:20.899760184 +0100
@@ -1,0 +2,22 @@
+Tue Mar 17 09:11:56 UTC 2026 - Richard Rahl <[email protected]>
+
+- Update to version 2.7.0:
+  * feat(fsautocomplete): support slnx
+  * fix(clangd): send correct languageIds for filetypes objc, objcpp and cuda
+  * feat(kakehashi): add kakehashi lsp config
+  * feat(oxlint, oxfmt): check for local binaries in node_modules
+  * fix(oxfmt): Remove unknown filetypes
+  * fix: drop invalid filetypes javascript.jsx, typescript.tsx
+  * fix: drop invalid filetypes from legacy configs
+  * feat(oxlint): add oxlint.config.ts root marker
+  * fix(eslint): don't implicitly enable experimental.useFlatConfig
+  * fix(pony_lsp)!: rename pony_language_server to pony_lsp
+  * docs: add short description to doc title
+  * fix(pyrefly): schedule vim.notify in on_exit
+  * fix(rust_analyzer): pass environment in rust-analyzer.runSingle
+  * feat(roslyn_ls): use official roslyn binary name as fallback
+  * fix(slangd): add slangd specific root markers
+  * fix(rust_analyzer): recognize std lib sources in sysroot
+  * fix(julials): correctly read path to environment
+
+-------------------------------------------------------------------

Old:
----
  nvim-lspconfig-2.6.0.tar.gz

New:
----
  nvim-lspconfig-2.7.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ nvim-lspconfig.spec ++++++
--- /var/tmp/diff_new_pack.52P9zT/_old  2026-03-17 19:07:21.379780077 +0100
+++ /var/tmp/diff_new_pack.52P9zT/_new  2026-03-17 19:07:21.383780243 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           nvim-lspconfig
-Version:        2.6.0
+Version:        2.7.0
 Release:        0
 Summary:        Quickstart configs for Nvim LSP
 License:        Apache-2.0

++++++ nvim-lspconfig-2.6.0.tar.gz -> nvim-lspconfig-2.7.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/doc/configs.md 
new/nvim-lspconfig-2.7.0/doc/configs.md
--- old/nvim-lspconfig-2.6.0/doc/configs.md     2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/doc/configs.md     2026-03-11 12:28:28.000000000 
+0100
@@ -165,6 +165,7 @@
 - [jsonnet_ls](#jsonnet_ls)
 - [julials](#julials)
 - [just](#just)
+- [kakehashi](#kakehashi)
 - [kcl](#kcl)
 - [koka](#koka)
 - [kotlin_language_server](#kotlin_language_server)
@@ -197,6 +198,7 @@
 - [mojo](#mojo)
 - [motoko_lsp](#motoko_lsp)
 - [move_analyzer](#move_analyzer)
+- [mpls](#mpls)
 - [msbuild_project_tools_server](#msbuild_project_tools_server)
 - [muon](#muon)
 - [mutt_ls](#mutt_ls)
@@ -237,6 +239,7 @@
 - [please](#please)
 - [pli](#pli)
 - [pony_language_server](#pony_language_server)
+- [pony_lsp](#pony_lsp)
 - [poryscript_pls](#poryscript_pls)
 - [postgres_lsp](#postgres_lsp)
 - [powershell_es](#powershell_es)
@@ -618,7 +621,7 @@
 - `cmd`: [../lsp/angularls.lua:93](../lsp/angularls.lua#L93)
 - `filetypes` :
   ```lua
-  { "typescript", "html", "typescriptreact", "typescript.tsx", "htmlangular" }
+  { "typescript", "html", "typescriptreact", "htmlangular" }
   ```
 - `root_markers` :
   ```lua
@@ -2205,6 +2208,7 @@
   ```lua
   { "c", "cpp", "objc", "objcpp", "cuda" }
   ```
+- `get_language_id`: [../lsp/clangd.lua:65](../lsp/clangd.lua#L65)
 - `on_attach`: [../lsp/clangd.lua:65](../lsp/clangd.lua#L65)
 - `on_init`: [../lsp/clangd.lua:65](../lsp/clangd.lua#L65)
 - `root_markers` :
@@ -2475,11 +2479,11 @@
   {
     editorInfo = {
       name = "Neovim",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     },
     editorPluginInfo = {
       name = "Neovim",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     }
   }
   ```
@@ -3136,7 +3140,7 @@
   ```
 - `filetypes` :
   ```lua
-  { "javascript", "javascriptreact", "javascript.jsx", "typescript", 
"typescriptreact", "typescript.tsx" }
+  { "javascript", "javascriptreact", "typescript", "typescriptreact" }
   ```
 - `handlers` :
   ```lua
@@ -4090,20 +4094,38 @@
 
 /!\ When using flat config files, you need to use them across all your 
packages in your monorepo, as it's a global setting for the server.
 
+### Flat config in ESLint versions prior to 10.0
+
+If you're using a ESLint version that supports both flat config and eslintrc 
(>= 8.21, < 10.0) and want to change
+the [default 
behavior](https://eslint.org/blog/2023/10/flat-config-rollout-plans/), you'll 
need to set
+`experimental.useFlatConfig` accordingly:
+```lua
+vim.lsp.config("eslint", {
+  settings = {
+    experimental = {
+      -- If you want to use flat config on >= 8.21, < 9.0
+      useFlatConfig = true,
+      -- Or if you want to use eslintrc on 9.*
+      -- useFlatConfig = false,
+    }
+  }
+})
+```
+
 Snippet to enable the language server:
 ```lua
 vim.lsp.enable('eslint')
 ```
 
 Default config:
-- `before_init`: [../lsp/eslint.lua:61](../lsp/eslint.lua#L61)
+- `before_init`: [../lsp/eslint.lua:79](../lsp/eslint.lua#L79)
 - `cmd` :
   ```lua
   { "vscode-eslint-language-server", "--stdio" }
   ```
 - `filetypes` :
   ```lua
-  { "javascript", "javascriptreact", "javascript.jsx", "typescript", 
"typescriptreact", "typescript.tsx", "vue", "svelte", "astro", "htmlangular" }
+  { "javascript", "javascriptreact", "typescript", "typescriptreact", "vue", 
"svelte", "astro", "htmlangular" }
   ```
 - `handlers` :
   ```lua
@@ -4114,8 +4136,8 @@
     ["eslint/probeFailed"] = <function 4>
   }
   ```
-- `on_attach`: [../lsp/eslint.lua:61](../lsp/eslint.lua#L61)
-- `root_dir`: [../lsp/eslint.lua:61](../lsp/eslint.lua#L61)
+- `on_attach`: [../lsp/eslint.lua:79](../lsp/eslint.lua#L79)
+- `root_dir`: [../lsp/eslint.lua:79](../lsp/eslint.lua#L79)
 - `settings` :
   ```lua
   {
@@ -4132,9 +4154,7 @@
       enable = false,
       mode = "all"
     },
-    experimental = {
-      useFlatConfig = false
-    },
+    experimental = {},
     format = true,
     nodePath = "",
     onIgnoredFiles = "off",
@@ -4334,7 +4354,7 @@
 - `cmd`: [../lsp/flow.lua:16](../lsp/flow.lua#L16)
 - `filetypes` :
   ```lua
-  { "javascript", "javascriptreact", "javascript.jsx" }
+  { "javascript", "javascriptreact" }
   ```
 - `root_markers` :
   ```lua
@@ -4951,20 +4971,20 @@
   {
     editorInfo = {
       name = "Neovim",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     },
     editorPluginInfo = {
       name = "Neovim LSP",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     },
     extension = {
       name = "Neovim LSP Client",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     },
     ide = {
       name = "Neovim",
       vendor = "Neovim",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     }
   }
   ```
@@ -6478,6 +6498,11 @@
 julia --project=/path/to/my/project -e 'using Pkg; Pkg.instantiate()'
 ```
 
+To activate a Julia environment, use the `:LspJuliaActivateEnv` command. A 
prompt will ask you to select a Julia
+environment from the list of environments found in the current working 
directory and the `environments/` folder of
+`$JULIA_DEPOT_PATH` entries. You can also provide a path to a Julia 
environment directly.
+Example: `:LspJuliaActivateEnv /path/to/my/project`.
+
 Note: The julia programming language searches for global environments within 
the `environments/`
 folder of `$JULIA_DEPOT_PATH` entries. By default this simply 
`~/.julia/environments`
 
@@ -6495,7 +6520,7 @@
   ```lua
   { "julia" }
   ```
-- `on_attach`: [../lsp/julials.lua:121](../lsp/julials.lua#L121)
+- `on_attach`: [../lsp/julials.lua:127](../lsp/julials.lua#L127)
 - `root_markers` :
   ```lua
   { "Project.toml", "JuliaProject.toml" }
@@ -6530,6 +6555,59 @@
 
 ---
 
+## kakehashi
+
+https://github.com/atusy/kakehashi
+
+Tree-sitter-based language server that provides semantic tokens, selection 
ranges,
+and LSP bridging for embedded languages (e.g., code blocks in Markdown).
+
+kakehashi works with any language that has a Tree-sitter grammar.
+Parsers and queries are automatically installed on first use
+when `autoInstall` is enabled (the default). This requires the
+`tree-sitter` CLI, a C compiler, and Git.
+
+**You must specify `filetypes` in your call to `vim.lsp.config`** to
+restrict which files activate the server:
+
+```lua
+vim.lsp.config('kakehashi', {
+  filetypes = { 'markdown', 'lua', 'rust', 'python' },
+  init_options = {
+    autoInstall = true,
+    -- Optional: bridge LSP requests in injection regions
+    languageServers = {
+      ['lua_ls'] = {
+        cmd = { 'lua-language-server' },
+        languages = { 'lua' },
+      },
+    },
+    languages = {
+      markdown = {
+        bridge = { lua_ls = { enabled = true } },
+      },
+    },
+  },
+})
+```
+
+Snippet to enable the language server:
+```lua
+vim.lsp.enable('kakehashi')
+```
+
+Default config:
+- `cmd` :
+  ```lua
+  { "kakehashi" }
+  ```
+- `root_markers` :
+  ```lua
+  { "kakehashi.toml", ".git" }
+  ```
+
+---
+
 ## kcl
 
 https://github.com/kcl-lang/kcl.nvim
@@ -7712,6 +7790,34 @@
 
 ---
 
+## mpls
+
+https://github.com/mhersson/mpls
+
+Markdown Preview Language Server
+
+Snippet to enable the language server:
+```lua
+vim.lsp.enable('mpls')
+```
+
+Default config:
+- `cmd` :
+  ```lua
+  { "mpls", "--theme", "dark", "--enable-emoji", "--enable-footnotes", 
"--no-auto" }
+  ```
+- `filetypes` :
+  ```lua
+  { "markdown" }
+  ```
+- `on_attach`: [../lsp/mpls.lua:8](../lsp/mpls.lua#L8)
+- `root_markers` :
+  ```lua
+  { ".marksman.toml", ".git" }
+  ```
+
+---
+
 ## msbuild_project_tools_server
 
 https://github.com/tintoy/msbuild-project-tools-server/
@@ -8594,13 +8700,10 @@
 ```
 
 Default config:
-- `cmd` :
-  ```lua
-  { "oxfmt", "--lsp" }
-  ```
+- `cmd`: [../lsp/oxfmt.lua:17](../lsp/oxfmt.lua#L17)
 - `filetypes` :
   ```lua
-  { "javascript", "javascriptreact", "javascript.jsx", "typescript", 
"typescriptreact", "typescript.tsx", "toml", "json", "jsonc", "json5", "yaml", 
"html", "vue", "handlebars", "hbs", "css", "scss", "less", "graphql", 
"markdown", "mdx" }
+  { "javascript", "javascriptreact", "typescript", "typescriptreact", "toml", 
"json", "jsonc", "json5", "yaml", "html", "vue", "handlebars", "css", "scss", 
"less", "graphql", "markdown" }
   ```
 - `root_dir`: [../lsp/oxfmt.lua:17](../lsp/oxfmt.lua#L17)
 - `workspace_required` : `true`
@@ -8634,10 +8737,7 @@
 
 Default config:
 - `before_init`: [../lsp/oxlint.lua:32](../lsp/oxlint.lua#L32)
-- `cmd` :
-  ```lua
-  { "oxlint", "--lsp" }
-  ```
+- `cmd`: [../lsp/oxlint.lua:32](../lsp/oxlint.lua#L32)
 - `filetypes` :
   ```lua
   { "javascript", "javascriptreact", "typescript", "typescriptreact", "vue", 
"svelte", "astro" }
@@ -8645,7 +8745,7 @@
 - `on_attach`: [../lsp/oxlint.lua:32](../lsp/oxlint.lua#L32)
 - `root_markers` :
   ```lua
-  { ".oxlintrc.json" }
+  { ".oxlintrc.json", "oxlint.config.ts" }
   ```
 - `settings` :
   ```lua
@@ -9086,13 +9186,52 @@
 
 ## pony_language_server
 
-https://github.com/ponylang/pony-language-server
+Renamed to [pony_lsp](#pony_lsp)
+
+Snippet to enable the language server:
+```lua
+vim.lsp.enable('pony_language_server')
+```
+
+Default config:
+- `cmd` :
+  ```lua
+  { "pony-lsp" }
+  ```
+- `filetypes` :
+  ```lua
+  { "pony" }
+  ```
+- `name` :
+  ```lua
+  "pony_lsp"
+  ```
+- `on_init`: 
[../lsp/pony_language_server.lua:6](../lsp/pony_language_server.lua#L6)
+- `root_markers` :
+  ```lua
+  { "corral.json", ".git" }
+  ```
+- `settings` :
+  ```lua
+  {
+    ["pony-lsp"] = {
+      defines = {},
+      ponypath = {}
+    }
+  }
+  ```
+
+---
+
+## pony_lsp
+
+https://github.com/ponylang/ponyc/tree/main/tools/pony-lsp
 
 Language server for the Pony programming language
 
 Snippet to enable the language server:
 ```lua
-vim.lsp.enable('pony_language_server')
+vim.lsp.enable('pony_lsp')
 ```
 
 Default config:
@@ -9108,6 +9247,15 @@
   ```lua
   { "corral.json", ".git" }
   ```
+- `settings` :
+  ```lua
+  {
+    ["pony-lsp"] = {
+      defines = {},
+      ponypath = {}
+    }
+  }
+  ```
 
 ---
 
@@ -10251,7 +10399,7 @@
   ```
 - `filetypes` :
   ```lua
-  { "javascript", "javascriptreact", "json", "typescript", "typescript.tsx", 
"typescriptreact" }
+  { "javascript", "javascriptreact", "json", "typescript", "typescriptreact" }
   ```
 - `root_markers` :
   ```lua
@@ -10304,7 +10452,7 @@
   ```
 - `cmd` :
   ```lua
-  { "Microsoft.CodeAnalysis.LanguageServer", "--logLevel", "Information", 
"--extensionLogDirectory", "/tmp/roslyn_ls/logs", "--stdio" }
+  { "roslyn-language-server", "--logLevel", "Information", 
"--extensionLogDirectory", "/tmp/roslyn_ls/logs", "--stdio" }
   ```
 - `commands` :
   ```lua
@@ -10661,7 +10809,7 @@
 ```
 
 Default config:
-- `before_init`: [../lsp/rust_analyzer.lua:56](../lsp/rust_analyzer.lua#L56)
+- `before_init`: [../lsp/rust_analyzer.lua:85](../lsp/rust_analyzer.lua#L85)
 - `capabilities` :
   ```lua
   {
@@ -10681,8 +10829,8 @@
   ```lua
   { "rust" }
   ```
-- `on_attach`: [../lsp/rust_analyzer.lua:56](../lsp/rust_analyzer.lua#L56)
-- `root_dir`: [../lsp/rust_analyzer.lua:56](../lsp/rust_analyzer.lua#L56)
+- `on_attach`: [../lsp/rust_analyzer.lua:85](../lsp/rust_analyzer.lua#L85)
+- `root_dir`: [../lsp/rust_analyzer.lua:85](../lsp/rust_analyzer.lua#L85)
 - `settings` :
   ```lua
   {
@@ -10975,7 +11123,7 @@
   ```
 - `root_markers` :
   ```lua
-  { ".git" }
+  { "slangdconfig.json", ".clang-format", ".git" }
   ```
 
 ---
@@ -11225,7 +11373,7 @@
     activateSnykIac = "true",
     activateSnykOpenSource = "true",
     integrationName = "Neovim",
-    integrationVersion = "0.12.0-dev+g6b4ec2264e",
+    integrationVersion = "0.12.0-dev+gb897e81b30",
     token = vim.NIL,
     trustedFolders = {}
   }
@@ -13134,7 +13282,7 @@
   ```
 - `filetypes` :
   ```lua
-  { "javascript", "javascriptreact", "javascript.jsx", "typescript", 
"typescriptreact", "typescript.tsx" }
+  { "javascript", "javascriptreact", "typescript", "typescriptreact" }
   ```
 - `handlers` :
   ```lua
@@ -14369,7 +14517,7 @@
   ```
 - `filetypes` :
   ```lua
-  { "javascript", "javascriptreact", "javascript.jsx", "typescript", 
"typescriptreact", "typescript.tsx" }
+  { "javascript", "javascriptreact", "typescript", "typescriptreact" }
   ```
 - `init_options` :
   ```lua
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/doc/configs.txt 
new/nvim-lspconfig-2.7.0/doc/configs.txt
--- old/nvim-lspconfig-2.6.0/doc/configs.txt    2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/doc/configs.txt    2026-03-11 12:28:28.000000000 
+0100
@@ -1,4 +1,4 @@
-*lspconfig-all*
+*lspconfig-all*                     All configurations provided by |lspconfig|
 
 LSP configurations provided by nvim-lspconfig are listed below.
 
@@ -187,7 +187,7 @@
 Default config:
 - cmd (use "gF" to view): ../lsp/angularls.lua:93
 - filetypes: >lua
-  { "typescript", "html", "typescriptreact", "typescript.tsx", "htmlangular" }
+  { "typescript", "html", "typescriptreact", "htmlangular" }
 - root_markers: >lua
   { "angular.json", "nx.json" }
 <
@@ -1414,6 +1414,7 @@
   { "clangd" }
 - filetypes: >lua
   { "c", "cpp", "objc", "objcpp", "cuda" }
+- get_language_id (use "gF" to view): ../lsp/clangd.lua:65
 - on_attach (use "gF" to view): ../lsp/clangd.lua:65
 - on_init (use "gF" to view): ../lsp/clangd.lua:65
 - root_markers: >lua
@@ -1625,11 +1626,11 @@
   {
     editorInfo = {
       name = "Neovim",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     },
     editorPluginInfo = {
       name = "Neovim",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     }
   }
 - on_attach (use "gF" to view): ../lsp/copilot.lua:106
@@ -2130,7 +2131,7 @@
     NO_COLOR = true
   }
 - filetypes: >lua
-  { "javascript", "javascriptreact", "javascript.jsx", "typescript", 
"typescriptreact", "typescript.tsx" }
+  { "javascript", "javascriptreact", "typescript", "typescriptreact" }
 - handlers: >lua
   {
     ["textDocument/definition"] = <function 1>,
@@ -2854,16 +2855,32 @@
 
 /!\ When using flat config files, you need to use them across all your 
packages in your monorepo, as it's a global setting for the server.
 
+### Flat config in ESLint versions prior to 10.0
+
+If you're using a ESLint version that supports both flat config and eslintrc 
(>= 8.21, < 10.0) and want to change
+the [default 
behavior](https://eslint.org/blog/2023/10/flat-config-rollout-plans/), you'll 
need to set
+`experimental.useFlatConfig` accordingly >lua
+  vim.lsp.config("eslint", {
+    settings = {
+      experimental = {
+        -- If you want to use flat config on >= 8.21, < 9.0
+        useFlatConfig = true,
+        -- Or if you want to use eslintrc on 9.*
+        -- useFlatConfig = false,
+      }
+    }
+  })
+
 Snippet to enable the language server: >lua
   vim.lsp.enable('eslint')
 
 
 Default config:
-- before_init (use "gF" to view): ../lsp/eslint.lua:61
+- before_init (use "gF" to view): ../lsp/eslint.lua:79
 - cmd: >lua
   { "vscode-eslint-language-server", "--stdio" }
 - filetypes: >lua
-  { "javascript", "javascriptreact", "javascript.jsx", "typescript", 
"typescriptreact", "typescript.tsx", "vue", "svelte", "astro", "htmlangular" }
+  { "javascript", "javascriptreact", "typescript", "typescriptreact", "vue", 
"svelte", "astro", "htmlangular" }
 - handlers: >lua
   {
     ["eslint/confirmESLintExecution"] = <function 1>,
@@ -2871,8 +2888,8 @@
     ["eslint/openDoc"] = <function 3>,
     ["eslint/probeFailed"] = <function 4>
   }
-- on_attach (use "gF" to view): ../lsp/eslint.lua:61
-- root_dir (use "gF" to view): ../lsp/eslint.lua:61
+- on_attach (use "gF" to view): ../lsp/eslint.lua:79
+- root_dir (use "gF" to view): ../lsp/eslint.lua:79
 - settings: >lua
   {
     codeAction = {
@@ -2888,9 +2905,7 @@
       enable = false,
       mode = "all"
     },
-    experimental = {
-      useFlatConfig = false
-    },
+    experimental = {},
     format = true,
     nodePath = "",
     onIgnoredFiles = "off",
@@ -3048,7 +3063,7 @@
 Default config:
 - cmd (use "gF" to view): ../lsp/flow.lua:16
 - filetypes: >lua
-  { "javascript", "javascriptreact", "javascript.jsx" }
+  { "javascript", "javascriptreact" }
 - root_markers: >lua
   { ".flowconfig" }
 <
@@ -3527,20 +3542,20 @@
   {
     editorInfo = {
       name = "Neovim",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     },
     editorPluginInfo = {
       name = "Neovim LSP",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     },
     extension = {
       name = "Neovim LSP Client",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     },
     ide = {
       name = "Neovim",
       vendor = "Neovim",
-      version = "0.12.0-dev+g6b4ec2264e"
+      version = "0.12.0-dev+gb897e81b30"
     }
   }
 - on_attach (use "gF" to view): ../lsp/gitlab_duo.lua:317
@@ -4694,6 +4709,11 @@
 Julia project, you must make sure that the project is instantiated >sh
   julia --project=/path/to/my/project -e 'using Pkg; Pkg.instantiate()'
 
+To activate a Julia environment, use the `:LspJuliaActivateEnv` command. A 
prompt will ask you to select a Julia
+environment from the list of environments found in the current working 
directory and the `environments/` folder of
+`$JULIA_DEPOT_PATH` entries. You can also provide a path to a Julia 
environment directly.
+Example: `:LspJuliaActivateEnv /path/to/my/project`.
+
 Note: The julia programming language searches for global environments within 
the `environments/`
 folder of `$JULIA_DEPOT_PATH` entries. By default this simply 
`~/.julia/environments`
 
@@ -4706,7 +4726,7 @@
   { "julia", "--startup-file=no", "--history-file=no", "-e", '    # Load 
LanguageServer.jl: attempt to load from ~/.julia/environments/nvim-lspconfig\n  
  # with the regular load path as a fallback\n    ls_install_path = joinpath(\n 
       get(DEPOT_PATH, 1, joinpath(homedir(), ".julia")),\n        
"environments", "nvim-lspconfig"\n    )\n    pushfirst!(LOAD_PATH, 
ls_install_path)\n    using LanguageServer, SymbolServer, StaticLint\n    
popfirst!(LOAD_PATH)\n    depot_path = get(ENV, "JULIA_DEPOT_PATH", "")\n    
project_path = let\n        dirname(something(\n            ## 1. Finds an 
explicitly set project (JULIA_PROJECT)\n            Base.load_path_expand((\n   
             p = get(ENV, "JULIA_PROJECT", nothing);\n                p === 
nothing ? nothing : isempty(p) ? nothing : p\n            )),\n            ## 
2. Look for a Project.toml file in the current working directory,\n            
##    or parent directories, with $HOME as an upper boundary\n            
Base.current_proj
 ect(),\n            ## 3. First entry in the load path\n            
get(Base.load_path(), 1, nothing),\n            ## 4. Fallback to default 
global environment,\n            ##    this is more or less unreachable\n       
     Base.load_path_expand("@v#.#"),\n        ))\n    end\n    @info "Running 
language server" VERSION pwd() project_path depot_path\n    server = 
LanguageServer.LanguageServerInstance(stdin, stdout, project_path, 
depot_path)\n    server.runlinter = true\n    run(server)\n  ' }
 - filetypes: >lua
   { "julia" }
-- on_attach (use "gF" to view): ../lsp/julials.lua:121
+- on_attach (use "gF" to view): ../lsp/julials.lua:127
 - root_markers: >lua
   { "Project.toml", "JuliaProject.toml" }
 <
@@ -4732,6 +4752,52 @@
 <
 
 ------------------------------------------------------------------------------
+kakehashi
+
+https://github.com/atusy/kakehashi
+
+Tree-sitter-based language server that provides semantic tokens, selection 
ranges,
+and LSP bridging for embedded languages (e.g., code blocks in Markdown).
+
+kakehashi works with any language that has a Tree-sitter grammar.
+Parsers and queries are automatically installed on first use
+when `autoInstall` is enabled (the default). This requires the
+`tree-sitter` CLI, a C compiler, and Git.
+
+**You must specify `filetypes` in your call to `vim.lsp.config`** to
+restrict which files activate the server:
+>lua
+  vim.lsp.config('kakehashi', {
+    filetypes = { 'markdown', 'lua', 'rust', 'python' },
+    init_options = {
+      autoInstall = true,
+      -- Optional: bridge LSP requests in injection regions
+      languageServers = {
+        ['lua_ls'] = {
+          cmd = { 'lua-language-server' },
+          languages = { 'lua' },
+        },
+      },
+      languages = {
+        markdown = {
+          bridge = { lua_ls = { enabled = true } },
+        },
+      },
+    },
+  })
+
+Snippet to enable the language server: >lua
+  vim.lsp.enable('kakehashi')
+
+
+Default config:
+- cmd: >lua
+  { "kakehashi" }
+- root_markers: >lua
+  { "kakehashi.toml", ".git" }
+<
+
+------------------------------------------------------------------------------
 kcl
 
 https://github.com/kcl-lang/kcl.nvim
@@ -5644,6 +5710,27 @@
 <
 
 ------------------------------------------------------------------------------
+mpls
+
+https://github.com/mhersson/mpls
+
+Markdown Preview Language Server
+
+Snippet to enable the language server: >lua
+  vim.lsp.enable('mpls')
+
+
+Default config:
+- cmd: >lua
+  { "mpls", "--theme", "dark", "--enable-emoji", "--enable-footnotes", 
"--no-auto" }
+- filetypes: >lua
+  { "markdown" }
+- on_attach (use "gF" to view): ../lsp/mpls.lua:8
+- root_markers: >lua
+  { ".marksman.toml", ".git" }
+<
+
+------------------------------------------------------------------------------
 msbuild_project_tools_server
 
 https://github.com/tintoy/msbuild-project-tools-server/
@@ -6317,10 +6404,9 @@
 
 
 Default config:
-- cmd: >lua
-  { "oxfmt", "--lsp" }
+- cmd (use "gF" to view): ../lsp/oxfmt.lua:17
 - filetypes: >lua
-  { "javascript", "javascriptreact", "javascript.jsx", "typescript", 
"typescriptreact", "typescript.tsx", "toml", "json", "jsonc", "json5", "yaml", 
"html", "vue", "handlebars", "hbs", "css", "scss", "less", "graphql", 
"markdown", "mdx" }
+  { "javascript", "javascriptreact", "typescript", "typescriptreact", "toml", 
"json", "jsonc", "json5", "yaml", "html", "vue", "handlebars", "css", "scss", 
"less", "graphql", "markdown" }
 - root_dir (use "gF" to view): ../lsp/oxfmt.lua:17
 - `workspace_required` : `true`
 <
@@ -6350,13 +6436,12 @@
 
 Default config:
 - before_init (use "gF" to view): ../lsp/oxlint.lua:32
-- cmd: >lua
-  { "oxlint", "--lsp" }
+- cmd (use "gF" to view): ../lsp/oxlint.lua:32
 - filetypes: >lua
   { "javascript", "javascriptreact", "typescript", "typescriptreact", "vue", 
"svelte", "astro" }
 - on_attach (use "gF" to view): ../lsp/oxlint.lua:32
 - root_markers: >lua
-  { ".oxlintrc.json" }
+  { ".oxlintrc.json", "oxlint.config.ts" }
 - settings: >lua
   {}
 - `workspace_required` : `true`
@@ -6691,12 +6776,40 @@
 ------------------------------------------------------------------------------
 pony_language_server
 
-https://github.com/ponylang/pony-language-server
+Renamed to [pony_lsp](#pony_lsp)
+
+Snippet to enable the language server: >lua
+  vim.lsp.enable('pony_language_server')
+
+
+Default config:
+- cmd: >lua
+  { "pony-lsp" }
+- filetypes: >lua
+  { "pony" }
+- name: >lua
+  "pony_lsp"
+- on_init (use "gF" to view): ../lsp/pony_language_server.lua:6
+- root_markers: >lua
+  { "corral.json", ".git" }
+- settings: >lua
+  {
+    ["pony-lsp"] = {
+      defines = {},
+      ponypath = {}
+    }
+  }
+<
+
+------------------------------------------------------------------------------
+pony_lsp
+
+https://github.com/ponylang/ponyc/tree/main/tools/pony-lsp
 
 Language server for the Pony programming language
 
 Snippet to enable the language server: >lua
-  vim.lsp.enable('pony_language_server')
+  vim.lsp.enable('pony_lsp')
 
 
 Default config:
@@ -6706,6 +6819,13 @@
   { "pony" }
 - root_markers: >lua
   { "corral.json", ".git" }
+- settings: >lua
+  {
+    ["pony-lsp"] = {
+      defines = {},
+      ponypath = {}
+    }
+  }
 <
 
 ------------------------------------------------------------------------------
@@ -7580,7 +7700,7 @@
 - cmd: >lua
   { "rome", "lsp-proxy" }
 - filetypes: >lua
-  { "javascript", "javascriptreact", "json", "typescript", "typescript.tsx", 
"typescriptreact" }
+  { "javascript", "javascriptreact", "json", "typescript", "typescriptreact" }
 - root_markers: >lua
   { "package.json", "node_modules", ".git" }
 <
@@ -7626,7 +7746,7 @@
     }
   }
 - cmd: >lua
-  { "Microsoft.CodeAnalysis.LanguageServer", "--logLevel", "Information", 
"--extensionLogDirectory", "/tmp/roslyn_ls/logs", "--stdio" }
+  { "roslyn-language-server", "--logLevel", "Information", 
"--extensionLogDirectory", "/tmp/roslyn_ls/logs", "--stdio" }
 - commands: >lua
   {
     ["roslyn.client.completionComplexEdit"] = <function 1>
@@ -7898,7 +8018,7 @@
 
 
 Default config:
-- before_init (use "gF" to view): ../lsp/rust_analyzer.lua:56
+- before_init (use "gF" to view): ../lsp/rust_analyzer.lua:85
 - capabilities: >lua
   {
     experimental = {
@@ -7912,8 +8032,8 @@
   { "rust-analyzer" }
 - filetypes: >lua
   { "rust" }
-- on_attach (use "gF" to view): ../lsp/rust_analyzer.lua:56
-- root_dir (use "gF" to view): ../lsp/rust_analyzer.lua:56
+- on_attach (use "gF" to view): ../lsp/rust_analyzer.lua:85
+- root_dir (use "gF" to view): ../lsp/rust_analyzer.lua:85
 - settings: >lua
   {
     ["rust-analyzer"] = {
@@ -8141,7 +8261,7 @@
 - filetypes: >lua
   { "hlsl", "shaderslang" }
 - root_markers: >lua
-  { ".git" }
+  { "slangdconfig.json", ".clang-format", ".git" }
 <
 
 ------------------------------------------------------------------------------
@@ -8340,7 +8460,7 @@
     activateSnykIac = "true",
     activateSnykOpenSource = "true",
     integrationName = "Neovim",
-    integrationVersion = "0.12.0-dev+g6b4ec2264e",
+    integrationVersion = "0.12.0-dev+gb897e81b30",
     token = vim.NIL,
     trustedFolders = {}
   }
@@ -9810,7 +9930,7 @@
     ["editor.action.showReferences"] = <function 1>
   }
 - filetypes: >lua
-  { "javascript", "javascriptreact", "javascript.jsx", "typescript", 
"typescriptreact", "typescript.tsx" }
+  { "javascript", "javascriptreact", "typescript", "typescriptreact" }
 - handlers: >lua
   {
     ["_typescript.rename"] = <function 1>
@@ -10765,7 +10885,7 @@
 - cmd: >lua
   { "vtsls", "--stdio" }
 - filetypes: >lua
-  { "javascript", "javascriptreact", "javascript.jsx", "typescript", 
"typescriptreact", "typescript.tsx" }
+  { "javascript", "javascriptreact", "typescript", "typescriptreact" }
 - init_options: >lua
   {
     hostInfo = "neovim"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/doc/lspconfig.txt 
new/nvim-lspconfig-2.7.0/doc/lspconfig.txt
--- old/nvim-lspconfig-2.6.0/doc/lspconfig.txt  2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/doc/lspconfig.txt  2026-03-11 12:28:28.000000000 
+0100
@@ -1,6 +1,5 @@
-*lspconfig.txt*         For Nvim version 0.10+
-
-nvim-lspconfig provides user-contributed configs for the Nvim |lsp| client.
+*lspconfig.txt*            User-contributed configs for the Nvim |lsp| client
+                                                       For Nvim version 0.10+
 
                                       Type |gO| to see the table of contents.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/angularls.lua 
new/nvim-lspconfig-2.7.0/lsp/angularls.lua
--- old/nvim-lspconfig-2.6.0/lsp/angularls.lua  2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/angularls.lua  2026-03-11 12:28:28.000000000 
+0100
@@ -118,6 +118,6 @@
     return vim.lsp.rpc.start(cmd, dispatchers)
   end,
 
-  filetypes = { 'typescript', 'html', 'typescriptreact', 'typescript.tsx', 
'htmlangular' },
+  filetypes = { 'typescript', 'html', 'typescriptreact', 'htmlangular' },
   root_markers = { 'angular.json', 'nx.json' },
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/clangd.lua 
new/nvim-lspconfig-2.7.0/lsp/clangd.lua
--- old/nvim-lspconfig-2.6.0/lsp/clangd.lua     2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/clangd.lua     2026-03-11 12:28:28.000000000 
+0100
@@ -74,6 +74,10 @@
     'configure.ac', -- AutoTools
     '.git',
   },
+  get_language_id = function(_, ftype)
+    local t = { objc = 'objective-c', objcpp = 'objective-cpp', cuda = 
'cuda-cpp' }
+    return t[ftype] or ftype
+  end,
   capabilities = {
     textDocument = {
       completion = {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/denols.lua 
new/nvim-lspconfig-2.7.0/lsp/denols.lua
--- old/nvim-lspconfig-2.6.0/lsp/denols.lua     2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/denols.lua     2026-03-11 12:28:28.000000000 
+0100
@@ -101,10 +101,8 @@
   filetypes = {
     'javascript',
     'javascriptreact',
-    'javascript.jsx',
     'typescript',
     'typescriptreact',
-    'typescript.tsx',
   },
   root_dir = function(bufnr, on_dir)
     -- The project root is where the LSP can be started from
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/eslint.lua 
new/nvim-lspconfig-2.7.0/lsp/eslint.lua
--- old/nvim-lspconfig-2.6.0/lsp/eslint.lua     2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/eslint.lua     2026-03-11 12:28:28.000000000 
+0100
@@ -38,6 +38,24 @@
 --- You can use a different version of ESLint in each package, but it is 
recommended to use the same version of ESLint in all packages. The location of 
the ESLint binary will be determined automatically.
 ---
 --- /!\ When using flat config files, you need to use them across all your 
packages in your monorepo, as it's a global setting for the server.
+---
+--- ### Flat config in ESLint versions prior to 10.0
+---
+--- If you're using a ESLint version that supports both flat config and 
eslintrc (>= 8.21, < 10.0) and want to change
+--- the [default 
behavior](https://eslint.org/blog/2023/10/flat-config-rollout-plans/), you'll 
need to set
+--- `experimental.useFlatConfig` accordingly:
+--- ```lua
+--- vim.lsp.config("eslint", {
+---   settings = {
+---     experimental = {
+---       -- If you want to use flat config on >= 8.21, < 9.0
+---       useFlatConfig = true,
+---       -- Or if you want to use eslintrc on 9.*
+---       -- useFlatConfig = false,
+---     }
+---   }
+--- })
+--- ```
 
 local util = require 'lspconfig.util'
 local lsp = vim.lsp
@@ -63,10 +81,8 @@
   filetypes = {
     'javascript',
     'javascriptreact',
-    'javascript.jsx',
     'typescript',
     'typescriptreact',
-    'typescript.tsx',
     'vue',
     'svelte',
     'astro',
@@ -131,9 +147,7 @@
     ---@diagnostic disable-next-line: assign-type-mismatch
     packageManager = nil,
     useESLintClass = false,
-    experimental = {
-      useFlatConfig = false,
-    },
+    experimental = {},
     codeActionOnSave = {
       enable = false,
       mode = 'all',
@@ -174,30 +188,6 @@
         name = vim.fn.fnamemodify(root_dir, ':t'),
       }
 
-      -- Support flat config files
-      -- They contain 'config' in the file name
-      local flat_config_files = vim.tbl_filter(function(file)
-        return file:match('config')
-      end, eslint_config_files)
-
-      for _, file in ipairs(flat_config_files) do
-        local found_files = vim.fn.globpath(root_dir, file, true, true)
-
-        -- Filter out files inside node_modules
-        local filtered_files = {}
-        for _, found_file in ipairs(found_files) do
-          if string.find(found_file, '[/\\]node_modules[/\\]') == nil then
-            table.insert(filtered_files, found_file)
-          end
-        end
-
-        if #filtered_files > 0 then
-          config.settings.experimental = config.settings.experimental or {}
-          config.settings.experimental.useFlatConfig = true
-          break
-        end
-      end
-
       -- Support Yarn2 (PnP) projects
       local pnp_cjs = root_dir .. '/.pnp.cjs'
       local pnp_js = root_dir .. '/.pnp.js'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/flow.lua 
new/nvim-lspconfig-2.7.0/lsp/flow.lua
--- old/nvim-lspconfig-2.6.0/lsp/flow.lua       2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/flow.lua       2026-03-11 12:28:28.000000000 
+0100
@@ -24,6 +24,6 @@
 
     return vim.lsp.rpc.start(cmd, dispatchers)
   end,
-  filetypes = { 'javascript', 'javascriptreact', 'javascript.jsx' },
+  filetypes = { 'javascript', 'javascriptreact' },
   root_markers = { '.flowconfig' },
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/fsautocomplete.lua 
new/nvim-lspconfig-2.7.0/lsp/fsautocomplete.lua
--- old/nvim-lspconfig-2.6.0/lsp/fsautocomplete.lua     2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lsp/fsautocomplete.lua     2026-03-11 
12:28:28.000000000 +0100
@@ -24,7 +24,7 @@
   cmd = { 'fsautocomplete', '--adaptive-lsp-server-enabled' },
   root_dir = function(bufnr, on_dir)
     local fname = vim.api.nvim_buf_get_name(bufnr)
-    on_dir(util.root_pattern('*.sln', '*.fsproj', '.git')(fname))
+    on_dir(util.root_pattern('*.sln', '*.slnx', '*.fsproj', '.git')(fname))
   end,
   filetypes = { 'fsharp' },
   init_options = {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/julials.lua 
new/nvim-lspconfig-2.7.0/lsp/julials.lua
--- old/nvim-lspconfig-2.6.0/lsp/julials.lua    2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/julials.lua    2026-03-11 12:28:28.000000000 
+0100
@@ -20,12 +20,17 @@
 --- julia --project=/path/to/my/project -e 'using Pkg; Pkg.instantiate()'
 --- ```
 ---
+--- To activate a Julia environment, use the `:LspJuliaActivateEnv` command. A 
prompt will ask you to select a Julia
+--- environment from the list of environments found in the current working 
directory and the `environments/` folder of
+--- `$JULIA_DEPOT_PATH` entries. You can also provide a path to a Julia 
environment directly.
+--- Example: `:LspJuliaActivateEnv /path/to/my/project`.
+---
 --- Note: The julia programming language searches for global environments 
within the `environments/`
 --- folder of `$JULIA_DEPOT_PATH` entries. By default this simply 
`~/.julia/environments`
 
 local root_files = { 'Project.toml', 'JuliaProject.toml' }
 
-local function activate_env(path)
+local function activate_env(args)
   assert(vim.fn.has 'nvim-0.10' == 1, 'requires Nvim 0.10 or newer')
   local bufnr = vim.api.nvim_get_current_buf()
   local julials_clients = vim.lsp.get_clients { bufnr = bufnr, name = 
'julials' }
@@ -42,7 +47,8 @@
       vim.notify('Julia environment activated: \n`' .. environment .. '`', 
vim.log.levels.INFO)
     end
   end
-  if path then
+  local path = args.args
+  if path ~= nil and #path > 0 then
     path = vim.fs.normalize(vim.fn.fnamemodify(vim.fn.expand(path), ':p'))
     local found_env = false
     for _, project_file in ipairs(root_files) do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/kakehashi.lua 
new/nvim-lspconfig-2.7.0/lsp/kakehashi.lua
--- old/nvim-lspconfig-2.6.0/lsp/kakehashi.lua  1970-01-01 01:00:00.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/kakehashi.lua  2026-03-11 12:28:28.000000000 
+0100
@@ -0,0 +1,41 @@
+--- @brief
+---
+--- https://github.com/atusy/kakehashi
+---
+--- Tree-sitter-based language server that provides semantic tokens, selection 
ranges,
+--- and LSP bridging for embedded languages (e.g., code blocks in Markdown).
+---
+--- kakehashi works with any language that has a Tree-sitter grammar.
+--- Parsers and queries are automatically installed on first use
+--- when `autoInstall` is enabled (the default). This requires the
+--- `tree-sitter` CLI, a C compiler, and Git.
+---
+--- **You must specify `filetypes` in your call to `vim.lsp.config`** to
+--- restrict which files activate the server:
+---
+--- ```lua
+--- vim.lsp.config('kakehashi', {
+---   filetypes = { 'markdown', 'lua', 'rust', 'python' },
+---   init_options = {
+---     autoInstall = true,
+---     -- Optional: bridge LSP requests in injection regions
+---     languageServers = {
+---       ['lua_ls'] = {
+---         cmd = { 'lua-language-server' },
+---         languages = { 'lua' },
+---       },
+---     },
+---     languages = {
+---       markdown = {
+---         bridge = { lua_ls = { enabled = true } },
+---       },
+---     },
+---   },
+--- })
+--- ```
+
+---@type vim.lsp.Config
+return {
+  cmd = { 'kakehashi' },
+  root_markers = { 'kakehashi.toml', '.git' },
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/mpls.lua 
new/nvim-lspconfig-2.7.0/lsp/mpls.lua
--- old/nvim-lspconfig-2.6.0/lsp/mpls.lua       1970-01-01 01:00:00.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/mpls.lua       2026-03-11 12:28:28.000000000 
+0100
@@ -0,0 +1,36 @@
+---@brief
+---
+--- https://github.com/mhersson/mpls
+---
+--- Markdown Preview Language Server
+
+---@type vim.lsp.Config
+return {
+  cmd = {
+    'mpls',
+    '--theme',
+    'dark',
+    '--enable-emoji',
+    '--enable-footnotes',
+    '--no-auto',
+  },
+  root_markers = { '.marksman.toml', '.git' },
+  filetypes = { 'markdown' },
+  on_attach = function(client, bufnr)
+    vim.api.nvim_create_autocmd('BufEnter', {
+      pattern = { '*.md' },
+      group = vim.api.nvim_create_augroup('lspconfig.mpls.focus', { clear = 
true }),
+      callback = function(ctx)
+        ---@diagnostic disable-next-line:param-type-mismatch
+        client:notify('mpls/editorDidChangeFocus', { uri = ctx.match })
+      end,
+      desc = 'mpls: notify buffer focus changed',
+    })
+    vim.api.nvim_buf_create_user_command(bufnr, 'LspMplsOpenPreview', 
function()
+      client:exec_cmd({
+        title = 'Preview markdown with mpls',
+        command = 'open-preview',
+      })
+    end, { desc = 'Preview markdown with mpls' })
+  end,
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/oxfmt.lua 
new/nvim-lspconfig-2.7.0/lsp/oxfmt.lua
--- old/nvim-lspconfig-2.6.0/lsp/oxfmt.lua      2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/oxfmt.lua      2026-03-11 12:28:28.000000000 
+0100
@@ -15,14 +15,19 @@
 
 ---@type vim.lsp.Config
 return {
-  cmd = { 'oxfmt', '--lsp' },
+  cmd = function(dispatchers, config)
+    local cmd = 'oxfmt'
+    local local_cmd = (config or {}).root_dir and config.root_dir .. 
'/node_modules/.bin/oxfmt'
+    if local_cmd and vim.fn.executable(local_cmd) == 1 then
+      cmd = local_cmd
+    end
+    return vim.lsp.rpc.start({ cmd, '--lsp' }, dispatchers)
+  end,
   filetypes = {
     'javascript',
     'javascriptreact',
-    'javascript.jsx',
     'typescript',
     'typescriptreact',
-    'typescript.tsx',
     'toml',
     'json',
     'jsonc',
@@ -31,13 +36,11 @@
     'html',
     'vue',
     'handlebars',
-    'hbs',
     'css',
     'scss',
     'less',
     'graphql',
     'markdown',
-    'mdx',
   },
   workspace_required = true,
   root_dir = function(bufnr, on_dir)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/oxlint.lua 
new/nvim-lspconfig-2.7.0/lsp/oxlint.lua
--- old/nvim-lspconfig-2.6.0/lsp/oxlint.lua     2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/oxlint.lua     2026-03-11 12:28:28.000000000 
+0100
@@ -30,7 +30,14 @@
 
 ---@type vim.lsp.Config
 return {
-  cmd = { 'oxlint', '--lsp' },
+  cmd = function(dispatchers, config)
+    local cmd = 'oxlint'
+    local local_cmd = (config or {}).root_dir and config.root_dir .. 
'/node_modules/.bin/oxlint'
+    if local_cmd and vim.fn.executable(local_cmd) == 1 then
+      cmd = local_cmd
+    end
+    return vim.lsp.rpc.start({ cmd, '--lsp' }, dispatchers)
+  end,
   filetypes = {
     'javascript',
     'javascriptreact',
@@ -40,7 +47,7 @@
     'svelte',
     'astro',
   },
-  root_markers = { '.oxlintrc.json' },
+  root_markers = { '.oxlintrc.json', 'oxlint.config.ts' },
   workspace_required = true,
   on_attach = function(client, bufnr)
     vim.api.nvim_buf_create_user_command(bufnr, 'LspOxlintFixAll', function()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/pony_language_server.lua 
new/nvim-lspconfig-2.7.0/lsp/pony_language_server.lua
--- old/nvim-lspconfig-2.6.0/lsp/pony_language_server.lua       2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lsp/pony_language_server.lua       2026-03-11 
12:28:28.000000000 +0100
@@ -1,12 +1,13 @@
 ---@brief
 ---
---- https://github.com/ponylang/pony-language-server
----
---- Language server for the Pony programming language
+--- Renamed to [pony_lsp](#pony_lsp)
 
 ---@type vim.lsp.Config
-return {
-  cmd = { 'pony-lsp' },
-  filetypes = { 'pony' },
-  root_markers = { 'corral.json', '.git' },
-}
+return vim.tbl_extend('force', vim.lsp.config.pony_lsp, {
+  on_init = function(...)
+    vim.deprecate('pony_language_server', 'pony_lsp', '3.0.0', 
'nvim-lspconfig', false)
+    if vim.lsp.config.pony_lsp.on_init then
+      vim.lsp.config.pony_lsp.on_init(...)
+    end
+  end,
+})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/pony_lsp.lua 
new/nvim-lspconfig-2.7.0/lsp/pony_lsp.lua
--- old/nvim-lspconfig-2.6.0/lsp/pony_lsp.lua   1970-01-01 01:00:00.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/pony_lsp.lua   2026-03-11 12:28:28.000000000 
+0100
@@ -0,0 +1,24 @@
+---@brief
+---
+--- https://github.com/ponylang/ponyc/tree/main/tools/pony-lsp
+---
+--- Language server for the Pony programming language
+
+--- default settings for pony-lsp
+local function default_settings()
+  ---@type table{ defines: string[], ponypath: string[] }
+  return {
+    defines = {},
+    ponypath = {},
+  }
+end
+
+---@type vim.lsp.Config
+return {
+  cmd = { 'pony-lsp' },
+  filetypes = { 'pony' },
+  root_markers = { 'corral.json', '.git' },
+  settings = {
+    ['pony-lsp'] = default_settings(),
+  },
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/pyrefly.lua 
new/nvim-lspconfig-2.7.0/lsp/pyrefly.lua
--- old/nvim-lspconfig-2.6.0/lsp/pyrefly.lua    2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/pyrefly.lua    2026-03-11 12:28:28.000000000 
+0100
@@ -21,6 +21,8 @@
     '.git',
   },
   on_exit = function(code, _, _)
-    vim.notify('Closing Pyrefly LSP exited with code: ' .. code, 
vim.log.levels.INFO)
+    vim.schedule(function()
+      vim.notify('Closing Pyrefly LSP exited with code: ' .. code, 
vim.log.levels.INFO)
+    end)
   end,
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/rome.lua 
new/nvim-lspconfig-2.7.0/lsp/rome.lua
--- old/nvim-lspconfig-2.6.0/lsp/rome.lua       2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/rome.lua       2026-03-11 12:28:28.000000000 
+0100
@@ -18,7 +18,6 @@
     'javascriptreact',
     'json',
     'typescript',
-    'typescript.tsx',
     'typescriptreact',
   },
   root_markers = { 'package.json', 'node_modules', '.git' },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/roslyn_ls.lua 
new/nvim-lspconfig-2.7.0/lsp/roslyn_ls.lua
--- old/nvim-lspconfig-2.6.0/lsp/roslyn_ls.lua  2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/roslyn_ls.lua  2026-03-11 12:28:28.000000000 
+0100
@@ -113,7 +113,8 @@
   name = 'roslyn_ls',
   offset_encoding = 'utf-8',
   cmd = {
-    'Microsoft.CodeAnalysis.LanguageServer',
+    vim.fn.executable('Microsoft.CodeAnalysis.LanguageServer') == 1 and 
'Microsoft.CodeAnalysis.LanguageServer'
+      or 'roslyn-language-server',
     '--logLevel',
     'Information',
     '--extensionLogDirectory',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/rust_analyzer.lua 
new/nvim-lspconfig-2.7.0/lsp/rust_analyzer.lua
--- old/nvim-lspconfig-2.6.0/lsp/rust_analyzer.lua      2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lsp/rust_analyzer.lua      2026-03-11 
12:28:28.000000000 +0100
@@ -35,6 +35,33 @@
   end
 end
 
+local function user_sysroot_src()
+  return vim.tbl_get(vim.lsp.config['rust_analyzer'], 'settings', 
'rust-analyzer', 'cargo', 'sysrootSrc')
+end
+
+local function default_sysroot_src()
+  local sysroot = vim.tbl_get(vim.lsp.config['rust_analyzer'], 'settings', 
'rust-analyzer', 'cargo', 'sysroot')
+  if not sysroot then
+    local rustc = os.getenv 'RUSTC' or 'rustc'
+    local result = vim.system({ rustc, '--print', 'sysroot' }, { text = true 
}):wait()
+
+    local stdout = result.stdout
+    if result.code == 0 and stdout then
+      if string.sub(stdout, #stdout) == '\n' then
+        if #stdout > 1 then
+          sysroot = string.sub(stdout, 1, #stdout - 1)
+        else
+          sysroot = ''
+        end
+      else
+        sysroot = stdout
+      end
+    end
+  end
+
+  return sysroot and vim.fs.joinpath(sysroot, 'lib/rustlib/src/rust/library') 
or nil
+end
+
 local function is_library(fname)
   local user_home = vim.fs.normalize(vim.env.HOME)
   local cargo_home = os.getenv 'CARGO_HOME' or user_home .. '/.cargo'
@@ -44,8 +71,10 @@
   local rustup_home = os.getenv 'RUSTUP_HOME' or user_home .. '/.rustup'
   local toolchains = rustup_home .. '/toolchains'
 
-  for _, item in ipairs { toolchains, registry, git_registry } do
-    if vim.fs.relpath(item, fname) then
+  local sysroot_src = user_sysroot_src() or default_sysroot_src()
+
+  for _, item in ipairs { toolchains, registry, git_registry, sysroot_src } do
+    if item and vim.fs.relpath(item, fname) then
       local clients = vim.lsp.get_clients { name = 'rust_analyzer' }
       return #clients > 0 and clients[#clients].config.root_dir or nil
     end
@@ -144,7 +173,7 @@
         vim.list_extend(cmd, { '--', unpack(r.args.executableArgs) })
       end
 
-      local proc = vim.system(cmd, { cwd = r.args.cwd })
+      local proc = vim.system(cmd, { cwd = r.args.cwd, env = 
r.args.environment })
 
       local result = proc:wait()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/slangd.lua 
new/nvim-lspconfig-2.7.0/lsp/slangd.lua
--- old/nvim-lspconfig-2.6.0/lsp/slangd.lua     2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/slangd.lua     2026-03-11 12:28:28.000000000 
+0100
@@ -27,5 +27,5 @@
 return {
   cmd = { 'slangd' },
   filetypes = { 'hlsl', 'shaderslang' },
-  root_markers = { '.git' },
+  root_markers = { 'slangdconfig.json', '.clang-format', '.git' },
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/ts_ls.lua 
new/nvim-lspconfig-2.7.0/lsp/ts_ls.lua
--- old/nvim-lspconfig-2.6.0/lsp/ts_ls.lua      2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/ts_ls.lua      2026-03-11 12:28:28.000000000 
+0100
@@ -80,10 +80,8 @@
   filetypes = {
     'javascript',
     'javascriptreact',
-    'javascript.jsx',
     'typescript',
     'typescriptreact',
-    'typescript.tsx',
   },
   root_dir = function(bufnr, on_dir)
     -- The project root is where the LSP can be started from
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lsp/vtsls.lua 
new/nvim-lspconfig-2.7.0/lsp/vtsls.lua
--- old/nvim-lspconfig-2.6.0/lsp/vtsls.lua      2026-02-12 22:19:25.000000000 
+0100
+++ new/nvim-lspconfig-2.7.0/lsp/vtsls.lua      2026-03-11 12:28:28.000000000 
+0100
@@ -76,10 +76,8 @@
   filetypes = {
     'javascript',
     'javascriptreact',
-    'javascript.jsx',
     'typescript',
     'typescriptreact',
-    'typescript.tsx',
   },
   root_dir = function(bufnr, on_dir)
     -- The project root is where the LSP can be started from
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/angularls.lua 
new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/angularls.lua
--- old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/angularls.lua        
2026-02-12 22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/angularls.lua        
2026-03-11 12:28:28.000000000 +0100
@@ -56,7 +56,7 @@
       '--angularCoreVersion',
       default_angular_core_version,
     },
-    filetypes = { 'typescript', 'html', 'typescriptreact', 'typescript.tsx', 
'htmlangular' },
+    filetypes = { 'typescript', 'html', 'typescriptreact', 'htmlangular' },
     -- Check for angular.json since that is the root of the project.
     -- Don't check for tsconfig.json or package.json since there are multiple 
of these
     -- in an angular monorepo setup.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/biome.lua 
new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/biome.lua
--- old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/biome.lua    2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/biome.lua    2026-03-11 
12:28:28.000000000 +0100
@@ -20,7 +20,6 @@
       'jsonc',
       'svelte',
       'typescript',
-      'typescript.tsx',
       'typescriptreact',
       'vue',
     },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/denols.lua 
new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/denols.lua
--- old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/denols.lua   2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/denols.lua   2026-03-11 
12:28:28.000000000 +0100
@@ -76,10 +76,8 @@
     filetypes = {
       'javascript',
       'javascriptreact',
-      'javascript.jsx',
       'typescript',
       'typescriptreact',
-      'typescript.tsx',
     },
     root_dir = util.root_pattern('deno.json', 'deno.jsonc', '.git'),
     settings = {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/eslint.lua 
new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/eslint.lua
--- old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/eslint.lua   2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/eslint.lua   2026-03-11 
12:28:28.000000000 +0100
@@ -60,10 +60,8 @@
     filetypes = {
       'javascript',
       'javascriptreact',
-      'javascript.jsx',
       'typescript',
       'typescriptreact',
-      'typescript.tsx',
       'vue',
       'svelte',
       'astro',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/flow.lua 
new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/flow.lua
--- old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/flow.lua     2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/flow.lua     2026-03-11 
12:28:28.000000000 +0100
@@ -10,7 +10,7 @@
 return {
   default_config = {
     cmd = { 'npx', '--no-install', 'flow', 'lsp' },
-    filetypes = { 'javascript', 'javascriptreact', 'javascript.jsx' },
+    filetypes = { 'javascript', 'javascriptreact' },
     root_dir = util.root_pattern '.flowconfig',
   },
   docs = {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/oxlint.lua 
new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/oxlint.lua
--- old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/oxlint.lua   2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/oxlint.lua   2026-03-11 
12:28:28.000000000 +0100
@@ -16,7 +16,6 @@
       'javascriptreact',
       'svelte',
       'typescript',
-      'typescript.tsx',
       'typescriptreact',
       'vue',
     },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/relay_lsp.lua 
new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/relay_lsp.lua
--- old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/relay_lsp.lua        
2026-02-12 22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/relay_lsp.lua        
2026-03-11 12:28:28.000000000 +0100
@@ -23,10 +23,8 @@
     filetypes = {
       'javascript',
       'javascriptreact',
-      'javascript.jsx',
       'typescript',
       'typescriptreact',
-      'typescript.tsx',
     },
     root_dir = util.root_pattern('relay.config.*', 'package.json'),
     on_new_config = function(config, root_dir)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/rome.lua 
new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/rome.lua
--- old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/rome.lua     2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/rome.lua     2026-03-11 
12:28:28.000000000 +0100
@@ -13,7 +13,6 @@
       'javascriptreact',
       'json',
       'typescript',
-      'typescript.tsx',
       'typescriptreact',
     },
     root_dir = function(fname)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/ts_ls.lua 
new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/ts_ls.lua
--- old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/ts_ls.lua    2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/ts_ls.lua    2026-03-11 
12:28:28.000000000 +0100
@@ -14,10 +14,8 @@
     filetypes = {
       'javascript',
       'javascriptreact',
-      'javascript.jsx',
       'typescript',
       'typescriptreact',
-      'typescript.tsx',
     },
     root_dir = util.root_pattern('tsconfig.json', 'jsconfig.json', 
'package.json', '.git'),
     single_file_support = true,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/vtsls.lua 
new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/vtsls.lua
--- old/nvim-lspconfig-2.6.0/lua/lspconfig/configs/vtsls.lua    2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/lua/lspconfig/configs/vtsls.lua    2026-03-11 
12:28:28.000000000 +0100
@@ -13,10 +13,8 @@
     filetypes = {
       'javascript',
       'javascriptreact',
-      'javascript.jsx',
       'typescript',
       'typescriptreact',
-      'typescript.tsx',
     },
     root_dir = util.root_pattern('tsconfig.json', 'package.json', 
'jsconfig.json', '.git'),
     single_file_support = true,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvim-lspconfig-2.6.0/scripts/docs_template.txt 
new/nvim-lspconfig-2.7.0/scripts/docs_template.txt
--- old/nvim-lspconfig-2.6.0/scripts/docs_template.txt  2026-02-12 
22:19:25.000000000 +0100
+++ new/nvim-lspconfig-2.7.0/scripts/docs_template.txt  2026-03-11 
12:28:28.000000000 +0100
@@ -1,4 +1,4 @@
-*lspconfig-all*
+*lspconfig-all*                     All configurations provided by |lspconfig|
 
 LSP configurations provided by nvim-lspconfig are listed below.
 

Reply via email to