Karya, built on 2018-05-31T02:46:59 (patch 0a1a35479c514820d77330ae8a978975ba22a47a)

Safe HaskellNone



Types used by Cmd.SaveGit. This is so Cmd.Cmd doesn't have to incur a dependency on the libgit2 bindings. This doesn't matter so much now that it's an external package, but it still seems like isolating dependencies is a good thing.



data SaveHistory Source #

History to be saved to disk. The updates are post-diff to know which bits of state to write, and the commit is what commit the updates are relative to, if any. If they're Nothing, then save everything.

It's very important to bundle the commit and updates together, because without the commit to know what they are relative to, the updates don't mean anything, and if they're applied on top of the wrong commit the result will be a corrupted state.