On caring for user data: NeoVim caused Vim undo files to be deleted

A change to Neovim’s persistent undo feature caused it to overwrite or delete existing undo-history files, including those created by Vim, leading some users to lose years of edit history. Commenters argue over whether this reflects a deeper lack of “duty of care” in modern and open source software, contrasting legal disclaimers and “free gift” rhetoric with users’ reasonable expectations that tools will not silently destroy data. The thread broadens into questions about backward compatibility, moral versus legal responsibility, and how much care maintainers of widely used free tools owe to the people who rely on them.

Neovim persistent undo change & data loss

  • Neovim changed its persistent undo file format to support byte-level change events (for tree-sitter, LSP, etc.).
  • On encountering an old-format undo file, Neovim deletes and replaces it rather than migrating or ignoring it.
  • If Vim and Neovim are configured to share the same undodir, this destroys Vim’s undo history as well; by default their directories differ, so collisions only happen with shared config.
  • Some argue Neovim should have used a different filename/dir, ignored old files, or at least warned or backed them up; others say it’s a reasonable break for a fundamentally broken format.

Duty of care vs “it’s free software”

  • One camp: even free/open-source software has a moral duty not to silently destroy user data, especially data produced by another program; disclaimers and licenses don’t erase ethical obligations.
  • Opposing view: maintainers offering unpaid work owe no such duty beyond the license; if you want different behavior, contribute, fork, or don’t use it.
  • Several reject legalistic defenses: being “AS IS” may limit liability but doesn’t shield reputation or criticism.
  • Many see Neovim’s choice, and its initial defensive response to complaints, as emblematic of a wider decline in user-respecting software.

User expectations, undo semantics, and workflows

  • Some consider persistent undo a lightweight safety net for crashes or accidental quits, not a long-term history store; they argue relying on it as backup is misuse and proper VCS/backups should be used.
  • Others note the feature is literally called “persistent undo” and documented as preserving history; they had workflows spanning weeks or months and feel blindsided by silent deletion.
  • There is debate over data location: some claim undo in ~/.cache is inherently ephemeral; others point out Neovim docs place it under state, and in any case the app itself chose to delete it.

Vim vs Neovim and alternatives

  • Some feel vindicated for staying on Vim, citing its stability and long-term backwards compatibility.
  • Others say Neovim improved defaults, async plugins, and modern IDE-like features, and that breaking changes are acceptable for progress.
  • Several suggest other editors (Helix, ki, IDEs with local history) or simply using Git/etckeeper/backup scripts for versioning.

Political / social drama side-thread

  • Part of the discussion veers into controversy over Neovim’s use and later removal of a quote from a polarizing figure, and accusations of “platforming” extreme political views.
  • Commenters are split between seeing this as overblown “mob” behavior and as a valid concern about who projects choose to endorse.