sapling/lib/mutationstore/Cargo.toml
Mark Thomas cf4b52c19c mutationstore: add mutationstore
Summary:
The mutationstore is a new store for recording records of commit mutations for
commits that are not in the local repository.

It uses an indexedlog to store the data.  Each mutation entry corresponds to
the information the mutation that led to the creation of a particular commit,
which is recorded as the successor in the entry.

Entries can come from three possible places:

* `Commit` metadata for a commit not available locally
* `Obsmarkers` for repos that have been migrated from evolution tracking
* `Synthetic` for entries created synthetically, e.g. by a pullcreatemarkers
  implementation.

The other commits referred to in an entry must predate the successor commit.
For entries that originated from commits, this is ensured, as the successor
commit hash includes the other commit hashes.  For other entry types, it is
an error to refer to later commits, and any entry that causes a cycle will
be ignored.

Reviewed By: quark-zju

Differential Revision: D12980773

fbshipit-source-id: 040d3f7369a113e710ed8c9f61fabec6c5ec9258
2018-12-14 06:43:40 -08:00

17 lines
375 B
TOML

[package]
name = "mutationstore"
version = "0.1.0"
[dependencies]
byteorder = "1.2.7"
failure = "0.1.3"
failure_derive = "0.1.3"
indexedlog = { path = "../indexedlog" }
types = { path = "../types" }
vlqencoding = { path = "../vlqencoding" }
[dev-dependencies]
rand = "0.5"
tempdir = "0.3.7"
types = { path = "../types", default-features = false, features = ["for-tests"] }