Skip to content

[deps] plenary.nvim scheduled for archival — audit dependents and plan replacements #138

@stanfish06

Description

@stanfish06

What

The plenary.nvim README now carries an archival notice: the repo will be archived in Q2 2026. The pinned SHA (74b06c6c, Apr 10, 2026) is the final commit, which added the archival announcement.

Where

nvim-pack-lock.json:

"plenary.nvim": {
  "rev": "74b06c6c75e4eeb3108ec01852000636d85a932b",
  "src": "https://github.com/nvim-lua/plenary.nvim.git"
}

lua/config/plugins.lua:18 — plugin spec listing plenary.nvim.

Why it matters

Once archived, plenary will receive no bug fixes, no Neovim API compatibility updates, and no security patches. Anything that depends on it will eventually break as Neovim evolves.

Current dependents in this config:

Plugin Plenary dependency
obsidian.nvim Lists plenary as an optional/soft dependency for some operations
No others The config itself does not require("plenary.*") directly

The good news: the config's own code (lib/async.lua, lib/ui.lua) is a custom async implementation that does not use plenary. The only risk is if obsidian.nvim calls plenary internally.

Recommended action

  1. Check obsidian.nvim's plenary dependency: Run :lua require("plenary") inside an obsidian buffer and watch for errors after obsidian updates. The v3.16.4 release notes show obsidian now uses LSP-based completion — it may have already reduced its plenary dependency.

  2. Remove plenary from the plugin list if obsidian.nvim no longer needs it: update lua/config/plugins.lua to drop the plenary.nvim entry and run :SyncPkgs.

  3. If plenary is still needed: pin it to the archived HEAD (74b06c6c) and accept no further updates — or replace individual plenary utilities with Neovim built-ins:

    • plenary.pathvim.fs, vim.uv.fs_*
    • plenary.jobvim.system()
    • plenary.async → already done in this config via lib/async.lua

References

  • plenary.nvim archival commit: 74b06c6c (Apr 10, 2026) — README update announcing archival
  • obsidian.nvim v3.16.4 changelog: reduced plenary usage, LSP completion added

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions