Skip to content

chore(nvim): resync lazy-lock.json and enforce the LazyVim pin - #49

Merged
potsrevennil merged 5 commits into
masterfrom
chore/resync-lazy-lock
Oct 20, 2026
Merged

potsrevennil merged 5 commits into
masterfrom
chore/resync-lazy-lock

Conversation

@potsrevennil

@potsrevennil potsrevennil commented Aug 15, 2026 •

Copy link
Copy Markdown
Owner

Supersedes #48.

Fully reconciles lazy-lock.json with the plugin set by regenerating it via :Lazy! sync (run in an isolated XDG environment so it never touched the real ~/.local/share/nvim). The lockfile now matches exactly what lazy.nvim produces for this config on current master (#47 and #51 merged):

  • +neo-tree.nvim: it was spec'd in lua/plugins/init.lua but had no lock entry (its dep nui was pinned, it wasn't). This was the one genuine orphan.
  • −bufferline, −catppuccin, −tokyonight, −nvim-lint: no longer in any spec after the colorscheme/linting import drops and the bufferline removal.
  • 16 live plugins bumped to current upstream: LazyVim (16.0.1), codecompanion, conform, flash, friendly-snippets, none-ls, nui, nvim-autopairs, nvim-cmp, nvim-lspconfig, nvim-treesitter, treesitter-textobjects, nvim-ts-autotag, nvim-web-devicons, render-markdown, telescope.

Why the disabled plugins stay in the lock

:Lazy sync retains enabled = false plugins (mason, lualine, noice, mini.*, gitsigns, trouble, todo-comments, grug-far, persistence). They're disabled, not un-spec'd, so lazy keeps their pins. That's why this supersedes #48: hand-removing them made the lock diverge from lazy's own output, so the next sync would re-add them. Keeping them is the in-sync, no-orphan state.

LazyVim version pin now takes effect

lua/config/lazy.lua pinned version = "v15.14.0", but lazyvim.plugins.init re-declares LazyVim with version = "*" after that line, and the later spec wins. The pin did nothing: the lock has been on v16 since July. The pin now sits after the init import as ^16.0.0 (the major in use), with the bare declaration kept first because the lazyvim.plugins.* imports need it. Checked: a ^15 probe syncs to v15.15.0; ^16 leaves this lockfile unchanged.

  • Verify: CI Lazy! restore + smoke test resolves all 44 entries; headless startup clean, with no spec load errors.

🤖 Generated with Claude Code

Regenerated via `:Lazy! sync` in an isolated environment so the lockfile
matches exactly what lazy.nvim itself produces for this config:

  - adds neo-tree.nvim, which was spec'd (lua/plugins/init.lua) but had
    no lock entry -- the one real orphan
  - drops bufferline, catppuccin, tokyonight and nvim-lint, the four
    plugins no longer in any spec after the colorscheme/linting imports
    and the bufferline entry were removed
  - bumps 11 live plugins to current upstream

The enabled=false stubs (mason, lualine, noice, mini.*, gitsigns,
trouble, todo-comments, grug-far, persistence) keep their pins on
purpose: lazy.nvim retains disabled plugins in the lockfile, so removing
them by hand would just reintroduce drift on the next sync. This is the
canonical in-sync, no-orphan state.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Base automatically changed from refactor/drop-nvim-lint to master October 20, 2026 06:55
potsrevennil and others added 3 commits October 20, 2026 14:58
Regenerated with `:Lazy! sync` on top of master (#47, #51 merged).
Same 44-entry plugin set; 13 pins bumped.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The spec pinned LazyVim to v15.14.0, but lazyvim.plugins.init
re-declares it with version = "*" after our line, and the later spec
wins. The pin was dead: the lock has been on v16 since July and
`:Lazy sync` would take any future major.

Keep the bare declaration first (the lazyvim.plugins.* imports need it)
and apply the pin after the init import, held to ^16.0.0, the major
already in use. Verified a ^15 probe syncs to v15.15.0 and ^16 leaves
the lockfile unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@potsrevennil potsrevennil changed the title chore(nvim): resync lazy-lock.json (fix neo-tree orphan) chore(nvim): resync lazy-lock.json and enforce the LazyVim pin Oct 20, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@potsrevennil
potsrevennil marked this pull request as ready for review October 20, 2026 07:55
@potsrevennil
potsrevennil merged commit 67c3230 into master Oct 20, 2026
5 checks passed
@potsrevennil
potsrevennil deleted the chore/resync-lazy-lock branch October 20, 2026 07:56
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.

1 participant