Doom-emacs: [REQUEST] Replace undo-tree with undo-fu?

Created on 8 Jan 2020  Â·  11Comments  Â·  Source: hlissner/doom-emacs

undo-tree is afaik basically unmaintained. On top of that, it constantly breaks for me, harping on about canaries. https://gitlab.com/ideasman42/emacs-undo-fu is a new package to deal with undo's that is simpler, but more importantly - maintained. What do people think? evil are exploring this as an option here: https://github.com/emacs-evil/evil/pull/1229

new resolved

Most helpful comment

@cleeff Enable Doom's :emacs (undo +tree) module

All 11 comments

I was already considering the switch until undo-tree was updated a few days ago. it caused a few regressions, but I would prefer to stick with undo-tree if its issues are resolved. We'll have to wait for a follow-up. If it takes too long I will reconsider undo-fu.

undo-tree 0.7.1 was published a short while ago, and with 15f2245 is now included with Doom. It fixes those regressions, former undo history corruption issues, and is finally working as it should. With that we'll be sticking to undo-tree. Hopefully the evil folks will reconsider as well. I'm glad to finally see these issues put to rest after so long!

In any case, thanks for bringing this to my attention. I'll revisit this if new breaking issues surface.

@alphapapa Thank you for clarifying my FUD!

@hlissner Sounds very reasonable, thanks for your reply!

undo-tree 0.7.1 was released, but more regression issues popup, e.g.

Error: (error (wrong-type-argument number-or-marker-p nil))
  (undo-tree-mode 1)
  (turn-on-undo-tree-mode)
  (global-undo-tree-mode)

@seagle0128 I cannot reproduce this in 26.3 in vanilla Emacs or Doom. What version of Emacs are you using?

@seagle0128 I cannot reproduce this in 26.3 in vanilla Emacs or Doom. What version of Emacs are you using?

@hlissner This only happened in my CI recently, with GNU Emacs 28 on Linux terminal. I have no idea how to reproduce it manually.

As of 8ab0cd6 I've switched to undo-fu. undo-tree prematurely and unpredictably truncates undo history. This is better than total data corruption, but still makes me nervous about undoing beyond ~5 steps. Undo-fu doesn't appear to suffer the same problem. We sacrifice the tree-visualizer, but at least we get history persistence with undo-fu-session.

I like the concept of undo-tree, what do I have to do to use undo-tree instead?

@cleeff Enable Doom's :emacs (undo +tree) module

Was this page helpful?
0 / 5 - 0 ratings