Skip to content

feat!: astronvim v6 compatible #1730

Merged
mehalter merged 32 commits intomainfrom
v6
Apr 7, 2026
Merged

feat!: astronvim v6 compatible #1730
mehalter merged 32 commits intomainfrom
v6

Conversation

@Uzaaft
Copy link
Copy Markdown
Member

@Uzaaft Uzaaft commented Jan 27, 2026

Update astrocommunity in preparation for the v6 release of astrocommunity.

Closes

Clsoes #1698

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jan 27, 2026

Review Checklist

Does this PR follow the [Contribution Guidelines](development guidelines)? Following is a partial checklist:

Proper conventional commit scoping:

  • If you are adding a new plugin, the scope would be the name of the category it is being added into. ex. feat(utility): added noice.nvim plugin

  • If you are modifying a pre-existing plugin or pack, the scope would be the name of the plugin folder. ex. fix(noice-nvim): fix LSP handler error

  • Pull request title has the appropriate conventional commit type and scope where the scope is the name of the pre-existing directory in the project as described above

  • README is properly formatted and uses fenced in links with <url> unless they are inside a [title](url)

  • Entry returns a single plugin spec with the new plugin as the only top level spec (not applicable for recipes or packs).

  • Proper usage of opts table rather than setting things up with the config function.

  • Proper usage of specs table for all specs that are not dependencies of a given plugin (not applicable for recipes or packs).

@Uzaaft Uzaaft marked this pull request as draft January 27, 2026 19:01
@Uzaaft Uzaaft changed the title release: astronvim v6 compatible feat!: astronvim v6 compatible Jan 27, 2026
Comment thread lua/astrocommunity/pack/rust/init.lua
@Uzaaft Uzaaft force-pushed the v6 branch 2 times, most recently from 27e0f92 to 9412fb9 Compare February 24, 2026 08:04
Comment thread lua/astrocommunity/pack/cs/init.lua Outdated
@mehalter mehalter mentioned this pull request Mar 30, 2026
1 task

local astrolsp_avail, astrolsp = pcall(require, "astrolsp")
local astrolsp_opts = (astrolsp_avail and astrolsp.lsp_opts "rust_analyzer") or {}
local astrolsp_opts = vim.lsp.config["rust_analyzer"] or {}
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this replace?

#1747

Copy link
Copy Markdown
Contributor

@rami3l rami3l Apr 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Mic92 No it doesn't, the original implementation meant to extract everything from the rust_analyzer config. The root_dir callback incompatibility is related but essentially something else. They are meant to be working together though.

@Uzaaft Uzaaft requested a review from mehalter April 3, 2026 21:37
@Uzaaft Uzaaft marked this pull request as ready for review April 7, 2026 11:46
@Uzaaft
Copy link
Copy Markdown
Member Author

Uzaaft commented Apr 7, 2026

r? @mehalter

I've lost track/overview of the breaking changes in v6 FYI 😂

Copy link
Copy Markdown
Member

@mehalter mehalter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

made some fixes. Looks good to me. We can let the community debug any issues. But we should get this out.

Uzaaft and others added 15 commits April 7, 2026 10:34
Remove Comment.nvim and nvim-ts-context-commentstring from the
enabled plugin list since both are removed from AstroNvim v6 core.

Migrate treesitter highlight disable from nvim-treesitter opts to
the new AstroCore treesitter config key used in v6.
…sp v4

AstroLSP v4 removes the top-level capabilities field from opts.
Capabilities must now be set under config["*"].capabilities which
maps to vim.lsp.config("*", ...).

Updated blink-cmp, coq_nvim, nvim-cmp, and nvim-lsp-file-operations
to use the new nesting structure.
AstroLSP v4 handler functions receive only the server name, not
an opts table. The setup is now done via vim.lsp.enable() instead
of require("lspconfig")[server].setup(opts).

Updated nvim-java jdtls handler and cs csharp_ls handler to use
the new single-argument signature.
AstroLSP v4 removes astrolsp.config.capabilities and changes how
on_attach works. The haskell pack now reads capabilities from
vim.lsp.config["*"] directly. The java pack updates on_attach to
use explicit (client, bufnr) arguments instead of varargs.

Both packs also get the treesitter and mason-lspconfig migrations.
The mason and mason-lspconfig repositories moved from the
williamboman GitHub org to the mason-org org. Update all plugin
references across 19 files that only had this rename and no
other changes.
Migrate all language pack files to AstroNvim v6 patterns:

Treesitter ensure_installed moves from nvim-treesitter opts
functions to AstroCore treesitter config key. AstroCore v3 manages
treesitter natively, so packs declare parsers declaratively via
opts.treesitter.ensure_installed instead of imperatively calling
list_insert_unique in nvim-treesitter opts functions.

Where applicable, mason-lspconfig references updated from
williamboman org to mason-org.

Packs with existing AstroCore entries had the treesitter key
merged in (godot, helm, html-css, hyprlang, just, purescript,
sql, templ).
Move treesitter parser declarations from nvim-treesitter opts
functions to AstroCore treesitter config key across editing-support,
debugging, markdown-and-latex, media, neovim-lua-development,
note-taking, programming-language-support, game, and utility
plugins.

Same pattern as the pack migration: declarative
opts.treesitter.ensure_installed on AstroCore instead of imperative
list_insert_unique calls on nvim-treesitter.
AstroNvim v6 requires Neovim 0.11+ which has native commenting
via gc/gcc. Both Comment.nvim and nvim-ts-context-commentstring are
removed from core, so disabling them in specs is no longer needed.

mini-comment also drops its ts-context-commentstring dependency and
custom_commentstring function since Neovim handles context-aware
commenting natively.
Renamed plugins to match new repository owners as required by
lazy.nvim spec merging: Saghen/blink.cmp to saghen/blink.cmp
across 29 files, echasnovski/mini.icons to nvim-mini/mini.icons
across 14 files.

Removed deprecated APIs that no longer exist in v6 dependencies:
require("lspconfig").util in pack/blade replaced with vim.fs.root,
require("nvim-treesitter.parsers").get_parser_configs() in blade,
haxe, and pkl replaced with declarative parsers opts table,
mason_lspconfig hotpatch block removed from pack/oxlint,
TSDisable/TSEnable commands removed from nvim-ts-rainbow.

Moved nvim-treesitter module opts (endwise, rainbow) to AstroCore
treesitter config since nvim-treesitter no longer processes module
configurations on its new main branch.

Removed nvim-lspconfig dependency from neoconf-nvim since
nvim-lspconfig is no longer a core AstroNvim plugin. Replaced
neovim/nvim-lspconfig reference in nvchad-ui with AstroNvim/astrolsp.
Moved pkl ensure_installed from nvim-treesitter opts to AstroCore
treesitter.ensure_installed.
The mason_lspconfig.servers table in AstroLSP opts was a
temporary workaround for mason-lspconfig v1. AstroNvim v6 uses
mason-lspconfig v2 where packages self-register their language
servers via the Mason Registry, making this block unnecessary.
neoconf.nvim was removed from AstroNvim v6 core because it
does not support vim.lsp.config. The optional disable line is
now dead code since the plugin is no longer bundled.
neoconf.nvim does not support the vim.lsp.config API used in
AstroNvim v6 and is no longer maintained. The pack is now disabled
with a deprecation notice directing users to project-local
lsp/<server>.lua files or language server config files instead.
AstroNvim v6 provides built-in word highlighting via the
snacks.words module in folke/snacks.nvim. The pack remains
available for users who prefer vim-illuminate.
lspkind.symbolic() is deprecated. Both blink-cmp and nvim-cmp
now use lspkind.symbol_map[] directly to resolve LSP kind icons.

Mirrors AstroNvim/AstroNvim#2873.
@mehalter mehalter merged commit 39edda0 into main Apr 7, 2026
14 of 15 checks passed
@mehalter mehalter deleted the v6 branch April 7, 2026 14:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants