automerge / automerge-classic

A JSON-like data structure (a CRDT) that can be modified concurrently by different users, and merged again automatically.
http://automerge.org/
MIT License
14.76k stars 467 forks source link

Fix out-of-order change application #454

Closed ept closed 2 years ago

ept commented 2 years ago

There was a bug that meant that if applyChanges was called with changes in an order that was inconsistent with the dependencies between the changes, only some of the changes would get applied. Other changes would remain in the queue even though they were ready to be applied. This PR fixes the bug.