Skip to content

v4.3.0

Latest

Choose a tag to compare

@ayamir ayamir released this 28 Jun 04:13

Summary

This release is mainly for Neovim 0.12 stable support, completion and LSP migration, and several compatibility fixes for newer upstream APIs.

New features

  • Neovim 0.12 is now the stable target of main, while 0.13 is kept for nightly builds.
  • blink.cmp replaces nvim-cmp as the main completion engine, with cmdline completion, ripgrep-backed completion, colorful menu rendering, Lua development support, and optional Copilot or OpenAI-compatible edit prediction.
  • Shared AI adapter settings are introduced for CodeCompanion and completion prediction, with OpenRouter, OpenCode and OpenAI-compatible configuration entries.
  • Python LSP support is updated: pylsp was replaced by zuban/pyrefly and ruff.
  • nvim-treesitter and nvim-treesitter-textobjects are migrated to the new main-branch setup.
  • New treesitter textobject keymaps are added for selecting, swapping, and moving between functions/classes/parameters.

Other changes

  • mason.nvim and related integrations are migrated to the newer v2 APIs.
  • glance.nvim is removed; LSP references/implementations now use the configured Telescope or fzf-lua picker path.
  • project.nvim configuration is updated for the current fork and setup API.
  • clang-format and ruff now prefer project-local configuration.
  • LSP setup is moved further toward native Neovim APIs and away from deprecated lspconfig legacy setup.
  • CodeCompanion is updated for newer APIs and model settings.
  • Install scripts now clone main for the current stable branch.

Bug fixes

  • Fixed LSP startup and removed manual LspStart.
  • Fixed project LSP detection and temporarily disabled broken project.nvim LSP attach mode where needed.
  • Fixed fzf-related window behavior.
  • Fixed last-edit autojump event.
  • Fixed nil checks in edgy.nvim, rainbow_delims, and several utility paths.
  • Fixed treesitter parser loading/highlight behavior after upstream changes.
  • Fixed DAP API usage and added a keymap to close dap-ui.
  • Disabled swapfile by default.

Keymap changes

  • <leader>dC is added to close dap-ui.
  • gd now uses Lspsaga peek_definition.
  • gh, gm, gto, and command panel/search flows now route through the configured picker backend.
  • <leader>lv now toggles virtual lines through tiny-inline-diagnostic.
  • Treesitter textobject keymaps are added for af, if, ac, ic, ][, ]m, ]], ]M, [[, [m, [], [M, <leader>a, <leader>A, and ;.

Thanks

Thanks to all maintainers and contributors who keep nvimdots moving forward, including @ayamir, @Jint-lzxy, @charliie-dev, @misumisumi, @AngelontheRoad, @Cloud, @wenqian, @GuennadiMaximovC, and everyone who helped with reviews, fixes, reports, discussions, and maintenance work.

What's Changed

  • fix: remove manual LspStart, close #1478. by @ayamir in #1479
  • feat: add discord and deepwiki, change badge style. by @ayamir in #1480
  • fix(dap): update method by @AngelontheRoad in #1491
  • refactor(lsp): consistently use tiny-inline-diagnostic API by @Jint-lzxy in #1492
  • feat(plugins): replace ayamir/project.nvim with DrKJeff16/project.nvim by @Jint-lzxy in #1493
  • docs!: update badges and branch info for main and nightly by @Jint-lzxy in #1494
  • refactor(lualine): inline chat_progress and improve LSP progress display by @Jint-lzxy in #1495
  • refactor(cmp): streamline copilot integration by @Jint-lzxy in #1499
  • feat(ui): lazy load edgy.nvim by @Jint-lzxy in #1501
  • feat(mason)!: migrate to v2.x by @Jint-lzxy in #1502
  • refactor(tool): simplify fzf-lua usage and improve lazy loading by @Jint-lzxy in #1506
  • feat: use vim.env and vim.uv for env and cwd access by @Jint-lzxy in #1507
  • fix(project_nvim): rename module name to project by @wenqian in #1514
  • feat(python-lsp)!: replace the old pylsp with zuban and ruff by @Cloud in #1528
  • fix(lspconfig): remove deprecated legacy framework of lspconfig by @misumisumi in #1530
  • fix(#1520): disable swapfile by @ayamir in #1531
  • fix(project): re-enable LSP detection by @GuennadiMaximovC in #1539
  • [migration] set nvim-treesitter to main branch, close #1541 by @charliie-dev in #1544
  • fix(treesitter): add autocmd for highlight and fix load plugin by @misumisumi in #1547
  • fix: using project's clang-format config first. by @Cloud in #1550
  • fix(ruff): use project config first by @Cloud in #1558
  • refactor: use telescope/fzf-lua to replace glance.nvim by @ayamir in #1519
  • Fix toggle_virtuallines to use updated api by @AngelontheRoad in #1572
  • feat(lsp): migrate from zuban to pyrefly lsp by @Cloud in #1580
  • fix: fix cland-format don't use default .clang_format config by @Cloud in #1581
  • 0.12 by @ayamir in #1583

Full Changelog: v4.2.0...v4.3.0