mirror of
https://github.com/facebook/sapling.git
synced 2024-10-07 15:27:13 +03:00
495b4394b8
Summary: Add a new thrift API for computing the difference between the working directory and a given source control commit. This has the following differences from the old getScmStatus() commit: - The parameters are accepted in a GetScmStatusParams structure now. This makes it easier for the server-side C++ implementation to tell which parameters have actually been specified by the caller. This will make it easier to extend this API in the future without having to replace it with a new function call again. - The return value is a GetScmStatusResult, which includes both the ScmStatus and the EdenFS version number. This will allow code like `hg status` to get both the status results and the EdenFS version in a single call, without needing to make multiple separate thrift calls. - This new call will return an error if the caller requests the status against a commit that disagrees with EdenFS's view of the current commit. Because the individual `hg` command line processes do not perform any synchronization of their own when reading the working directory parent, they can often call EdenFS with stale parent information, or while a checkout is currently in progress. This new behavior will reject the request with an error, rather than having EdenFS perform a potentially very expensive status computation when the results probably aren't actually useful to the caller anyway. Reviewed By: chadaustin Differential Revision: D15110218 fbshipit-source-id: ebc2f74dafc090d4fd245de8e4d62e2b086500dd |
||
---|---|---|
.. | ||
oss | ||
test | ||
.gitignore | ||
CMakeLists.txt | ||
eden.thrift | ||
EdenCPUThreadPool.cpp | ||
EdenCPUThreadPool.h | ||
EdenError.cpp | ||
EdenError.h | ||
EdenInit.cpp | ||
EdenInit.h | ||
EdenMain.cpp | ||
EdenMain.h | ||
EdenServer.cpp | ||
EdenServer.h | ||
EdenServiceHandler.cpp | ||
EdenServiceHandler.h | ||
EdenStateDir.cpp | ||
EdenStateDir.h | ||
fb-edenfs@.service | ||
PeriodicTask.cpp | ||
PeriodicTask.h | ||
PrettyPrinters.cpp | ||
PrettyPrinters.h | ||
StartupLogger.cpp | ||
StartupLogger.h | ||
streamingeden.thrift | ||
Systemd.cpp | ||
Systemd.h | ||
ThriftPermissionChecker.cpp | ||
ThriftPermissionChecker.h | ||
ThriftUtil.h |