mirror of
https://github.com/facebook/sapling.git
synced 2024-12-25 14:05:00 +03:00
b9ce375f36
Summary: The primary change is in `eden/scm/lib/edenapi/types`: * Split `DataEntry` into `FileEntry` and `TreeEntry`. * Split `DataError` into `FileError` and `TreeError`. Remove `Redacted` error variant from `TreeError` and `MaybeHybridManifest` error variant from `FileError`. * Split `DataRequest`, `DataResponse` into appropriate File and Tree types. * Refactor `data.rs` into `file.rs` and `tree.rs`. * Lift `InvalidHgId` error, used by both File and Tree, into `lib.rs`. * Bugfix: change `MaybeHybridManifest` to be returned only for hash mismatches with empty paths, to match documented behavior. Most of the remaining changes are straightforward fallout of this split. Notable changes include: * `eden/scm/lib/edenapi/tools/read_res`: I've split the "data" commands into "file" and "tree", but I've left the identical arguments sharing the same argument structs. These can be refactored later if / when they diverge. * `eden/scm/lib/types/src/hgid.rs`: Moved `compute_hgid` from `eden/scm/lib/edenapi/types/src/data.rs` to as a new `from_content` constructor on the `HgId` struct. * `eden/scm/lib/revisionstore/src/datastore.rs`: Split `add_entry` method on `HgIdMutableDeltaStore` trait into `add_file` and `add_tree` methods. * `eden/scm/lib/revisionstore/src/edenapi` * `mod.rs`: Split `prefetch` method on `EdenApiStoreKind` into `prefetch_files` and `prefetch_trees`, which are given a default implementation that fails with `unimplemented!`. * `data.rs`: Replace blanket trait implementations for `EdenApiDataStore<T>` with specific implementations for `EdenApiDataStore<File>` and `EdenApiDataStore<Tree>` which call the appropriate fetch and add functions. * `data.rs` `test_get_*`: Replace dummy hashes with real hashes. These tests were only passing due to the hash mismatches (incorrectly) being considered `MaybeHybridManifest` errors, and allowed to pass. Reviewed By: kulshrax Differential Revision: D22958373 fbshipit-source-id: 788baaad4d9be20686d527f819a7342678740bc3 |
||
---|---|---|
.. | ||
make_req | ||
read_res |