Skip to content

better concurrency properties

Pre-release
Pre-release

Choose a tag to compare

@samoht samoht released this 16 Mar 16:52
· 4655 commits to main since this release
  • Ensure that Irmin.update and Irmin.merge are atomic.
  • Fix Irmin.clone of an empty branch
  • Add Irmin.RW.compare_and_test that the backends now have to implement
    to guarantee atomicity of Irmin's high-level operations.
  • Add Irmin.Private.Lock to provide per-handler, per-key locking. This
    can be used by backend to implement simple locking policies.
  • Add Lwt.t to the return type of Irmin.tag and Irmin.tag_exn
  • Do not throw [Not_found]. Now all the _exn function raise Invalid_argument
    (#144)
  • Remove Irmin.switch and Irmin.detach
  • Add Irmin.history to get the branch history as a DAG of heads (#140).
  • Fix the computation of lcas (#160)