genvalidity-mergeful

Safely synchronise values with safe merge conflicts.


Keywords
mit, unclassified, Propose Tags, https://github.com/NorfairKing/mergeful#readme, , Index, Quick Jump, Data.GenValidity.Mergeful, Data.GenValidity.Mergeful.Collection, Data.GenValidity.Mergeful.Item, Data.GenValidity.Mergeful.Timed, Data.GenValidity.Mergeful.Value, genvalidity-mergeful-0.3.0.1.tar.gz, browse, Package description, Package maintainers, Norfair, edit package information
License
MIT
Install
cabal install genvalidity-mergeful-0.3.0.1

Documentation

Mergefull

A way to synchronise items with safe merge conflicts.

If the collection that you are syncing has immutable items, you will be better off using mergeless instead.

Implementation overview

Situation: Multiple clients (for example a note synchronisation app) want to sync with a server storing state for them. Goal: Get clients to agree on the collection of items and prevent that one client accidentally overrides a value saved by another client. Solution: Store a server-side name and monotonically increasing number (revision number of the data, or current time) for each number.

See the following blogposts for (many) more details:

or the talk at Haskellerz:

https://www.youtube.com/watch?v=MkbhHmAk47k