Conflict-free replicated data types (CRDTs) for Pony, based on delta-state replication.
The API might change but it is usable in production software.
The following CRDT types are implemented:
Counters: GCounter, PNCounter, CCounter
Sets: GSet, P2Set, TSet, AWORSet, RWORSet
Registers: TReg, MVReg
Collections: TLog, CKeyspace
Each type supports convergent merging of concurrent updates so that all replicas eventually reach the same state without coordination. All mutator methods accept and return convergent delta-states for efficient replication.
See the examples/ directory for usage demonstrations of each type.
- Install corral
corral add github.com/ponylang/crdt.git --version 0.2.0corral fetchto fetch your dependenciesuse "crdt"to include this package- Requires ponyc 0.70.0 or later.
corral run -- ponycto compile your application