News for hackers. Stuff that matters.
Re:Show HN: Rust library for Undo/Redo using deltas, snapsho... by metaketa on Sunday May 03, 2026 @01:00AM (#47993491)
This is awesome and I've needed it often. Could it hypothetically support filtered undo? For example in a collaborative app where not all edits are owned by the user.
Re:Show HN: Rust library for Undo/Redo using deltas, snapsho... by mikolajw on Sunday May 03, 2026 @04:55AM (#47994928)
I think you can do that with undoredo by doing all the following:

- Having one history bistack for each user or permissions group to enforce ownership;

- Giving each new object's a unique key (e.g. from a counter, possibly a persistent one) to prevent key collisions by avoiding ever trying to fill the same container slot more than once;

- Storing the objects in a sparse container such as BTreeMap, BTreeSet, HashMap, HashSet to avoid visiting emptied slots when iterating over all the elements.

I have not tested this, but it could be a nice case to add to examples.

(having used a bullet list I immediately feel the need to explain myself: this message was whole written by hand)