sapling/eden/fs/inodes
Eamonn Kent d39ca39b85 EdenMount should load/use ignore file list from configuration
Summary:
[Eden] EdenMount should make use of EdenConfig in order to determine the user and system ignore files to load.

This commit does the following:
- adds EdenConfig to ServerState that gets passed to the MountPoint.
- removes hard-coded system ignore settings.
- allows the ignore files to be updated in the user and system config.
- has the diff context loaded with actual ignore file contents.
- adds the FileChangeMonitor class to efficiently (throttled) identify when file changes have occured and reload as necessary.

Reviewed By: simpkins

Differential Revision: D8876214

fbshipit-source-id: d2697c130d3d4960c7f645ace226e5ce6b772048
2018-07-30 17:20:45 -07:00
..
test Refactor Overlay::InodePath 2018-07-20 11:50:51 -07:00
CheckoutAction.cpp Future<T>::then 3/n: Future<T>::then(not-try-task) -> Future<T>::thenValue(task). 2018-07-24 23:36:23 -07:00
CheckoutAction.h use Future::makeEmpty() instead of Optional<Future> 2018-06-13 10:22:42 -07:00
CheckoutContext.cpp move folly/experimental/logging to folly/logging/ 2018-04-30 21:29:29 -07:00
CheckoutContext.h Enabled additional compiler warnings in Eden. 2018-06-01 11:39:01 -07:00
CMakeLists.txt add CMake build files 2018-04-30 14:37:46 -07:00
DeferredDiffEntry.cpp Future<T>::then 3/n: Future<T>::then(not-try-task) -> Future<T>::thenValue(task). 2018-07-24 23:36:23 -07:00
DeferredDiffEntry.h Enabled additional compiler warnings in Eden. 2018-06-01 11:39:01 -07:00
DiffContext.cpp DiffContext changes to use TopLevelIgnores 2018-07-19 17:21:38 -07:00
DiffContext.h DiffContext changes to use TopLevelIgnores 2018-07-19 17:21:38 -07:00
Differ.cpp move folly/experimental/logging to folly/logging/ 2018-04-30 21:29:29 -07:00
Differ.h update getScmStatus() to require the commit hash as an argument 2018-04-06 12:51:31 -07:00
DirEntry.cpp clarify DirEntry's ownership of InodeBase* 2018-07-17 21:37:35 -07:00
DirEntry.h clarify DirEntry's ownership of InodeBase* 2018-07-17 21:37:35 -07:00
EdenDispatcher.cpp Allow rm of files with corrupt overlay 2018-07-25 21:07:12 -07:00
EdenDispatcher.h mark a bunch of folly::Future<folly::Unit> functions with FOLLY_NODISCARD 2018-04-26 21:00:25 -07:00
EdenFileHandle.cpp folly::Unit{} -> folly::unit 2018-05-08 13:38:02 -07:00
EdenFileHandle.h mark a bunch of folly::Future<folly::Unit> functions with FOLLY_NODISCARD 2018-04-26 21:00:25 -07:00
EdenMount.cpp EdenMount should load/use ignore file list from configuration 2018-07-30 17:20:45 -07:00
EdenMount.h Remove the redundant path_ member of EdenMount 2018-07-16 13:52:01 -07:00
FileInode.cpp rename updateOverlayHeader() to updateOverlayHeaderIfNeeded() 2018-07-27 13:22:58 -07:00
FileInode.h rename updateOverlayHeader() to updateOverlayHeaderIfNeeded() 2018-07-27 13:22:58 -07:00
GlobNode.cpp fix logic bug in glob prefetching 2018-07-16 11:38:15 -07:00
GlobNode.h move GlobNode -> inodes dir 2018-07-13 11:22:19 -07:00
InodeBase.cpp Split Dir into its own type and move TreeInodeState out of TreeInode 2018-06-01 09:38:45 -07:00
InodeBase.h rename updateOverlayHeader() to updateOverlayHeaderIfNeeded() 2018-07-27 13:22:58 -07:00
InodeDiffCallback.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
InodeError.cpp throw all errno exceptions as std::generic_category 2018-03-20 13:38:45 -07:00
InodeError.h throw all errno exceptions as std::generic_category 2018-03-20 13:38:45 -07:00
InodeLoader.h add InodeLoader to improve getFileInformation perf 2018-07-12 11:53:54 -07:00
InodeMap.cpp rename updateOverlayHeader() to updateOverlayHeaderIfNeeded() 2018-07-27 13:22:58 -07:00
InodeMap.h have Overlay track nextInodeNumber_ instead of InodeMap 2018-05-31 01:46:15 -07:00
InodeMetadata.cpp allow changing uid/gid on files and directories 2018-05-24 00:15:54 -07:00
InodeMetadata.h allow changing permissions on directories 2018-05-22 11:22:19 -07:00
InodePtr-defs.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
InodePtr.cpp fix opt build 2018-03-12 22:22:59 -07:00
InodePtr.h add explicit conversion from std::unique_ptr to InodePtr 2018-03-09 13:37:08 -08:00
InodePtrFwd.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
InodeTable.h store FileInode and TreeInode timestamps in the InodeTable 2018-05-22 11:22:19 -07:00
InodeTimestamps.cpp mark parts of EdenTimestamp noexcept 2018-05-09 16:50:52 -07:00
InodeTimestamps.h update mtime on directories when renaming 2018-06-01 11:39:01 -07:00
Overlay.cpp Refactor Overlay::InodePath 2018-07-20 11:50:51 -07:00
Overlay.h Refactor Overlay::InodePath 2018-07-20 11:50:51 -07:00
overlay.thrift decouple whether an entry has an inode number from materialization status 2018-03-23 18:21:21 -07:00
ParentInodeInfo.h Split Dir into its own type and move TreeInodeState out of TreeInode 2018-06-01 09:38:45 -07:00
ServerState.cpp EdenMount should load/use ignore file list from configuration 2018-07-30 17:20:45 -07:00
ServerState.h EdenMount should load/use ignore file list from configuration 2018-07-30 17:20:45 -07:00
TopLevelIgnores.cpp DiffContext changes to use TopLevelIgnores 2018-07-19 17:21:38 -07:00
TopLevelIgnores.h DiffContext changes to use TopLevelIgnores 2018-07-19 17:21:38 -07:00
TreeInode.cpp rename updateOverlayHeader() to updateOverlayHeaderIfNeeded() 2018-07-27 13:22:58 -07:00
TreeInode.h rename updateOverlayHeader() to updateOverlayHeaderIfNeeded() 2018-07-27 13:22:58 -07:00
TreeInodeDirHandle.cpp store FileInode and TreeInode timestamps in the InodeTable 2018-05-22 11:22:19 -07:00
TreeInodeDirHandle.h remove the fusell namespace 2018-03-19 17:01:52 -07:00