Skip to content
Watches files and records, or triggers actions, when they change.
Branch: master
Clone or download
svcscm and facebook-github-bot Updating submodules
Reviewed By: zpao

fbshipit-source-id: 8191441885644bc989cc8604b3a28e16f0a46b8d
Latest commit 85102ac Jul 15, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci fixup OSS CI after folly dep change Jan 20, 2019
build Updating submodules Jul 15, 2019
cmds watchman: remove some uses of `json_unpack` Feb 27, 2019
common add a stub implementation of ServiceData::incrementCounter() Jun 15, 2019
cppclient Throw a legible exception when watchman get-sockname returns an empty… Jul 12, 2019
eden/fs/service live `debug journal` command Jul 9, 2019
java Ignore the buck artifacts in watchman/java Dec 28, 2018
node Release bser v2.1.0 (#713) Jun 21, 2019
python Fix relative path handling in python/setup.py May 24, 2019
query Eden Mount is_fresh_instance Fix Jul 3, 2019
root watchman: really fix notifying parent dirs on macos May 21, 2019
ruby/ruby-watchman Fix (spurious) test failure on big-endian architectures Aug 22, 2014
rust/serde_bser Transition fbcode Rust crates to 2018 edition Jun 24, 2019
saved_state Add project metadata for local saved state May 2, 2019
scm watchman: watchman::Synchronized -> folly::Synchronized Jan 25, 2019
tests Throw a legible exception when watchman get-sockname returns an empty… Jul 12, 2019
thirdparty watchman: `json_is_true(o)` -> `o.asBool()` Feb 19, 2019
travis fixup OSS CI after folly dep change Jan 20, 2019
watcher Switch from deprecated RSocketClientChannel to RocketClientChannel Jul 11, 2019
website Fix empty 'path' or 'suffix' generators May 28, 2019
winbuild probe for dll deps (#677) Feb 4, 2019
.clang-format Fix clang-format IncludeCategories regexp Sep 11, 2018
.gitattributes Fix favicon in website Aug 7, 2015
.gitignore watchman: pull in thrift in the oss build for eden support Feb 5, 2019
.travis.yml fixup OSS CI after folly dep change Jan 20, 2019
CMakeLists.txt add a thrift call for getting config values Jun 11, 2019
CODE_OF_CONDUCT.md Add Code of Conduct Dec 7, 2017
ChildProcess.cpp watchman: ChildProcess Future -> folly::Future Jan 25, 2019
ChildProcess.h watchman: ChildProcess Future -> folly::Future Jan 25, 2019
ContentHash.cpp watchman: migrate LRUCache to folly futures Jan 25, 2019
ContentHash.h watchman: migrate LRUCache to folly futures Jan 25, 2019
CookieSync.cpp watchman: move CookieSync to folly::Future Jan 25, 2019
CookieSync.h watchman: move CookieSync to folly::Future Jan 25, 2019
FileDescriptor.cpp watchman: watchman_scopeguard.h -> folly/ScopeGuard.h Jan 25, 2019
FileDescriptor.h migrate the remains of Win32Handle.cpp -> FileDescriptor.cpp Jun 6, 2017
FileInformation.cpp watchman: add DType concept to FileInformation Feb 19, 2019
FileInformation.h watchman: add DType concept to FileInformation Feb 19, 2019
FileSystem.h turn off strict symlink check in OpenFileHandleOptions.openDir(). Jun 4, 2017
InMemoryView.cpp Fix empty 'path' or 'suffix' generators May 28, 2019
InMemoryView.h watchman: really fix notifying parent dirs on macos May 21, 2019
LICENSE initial commit Nov 30, 2012
LRUCache.h watchman: migrate LRUCache to folly futures Jan 25, 2019
LocalFileResult.cpp watchman: watchman::Optional -> folly::Optional Jan 25, 2019
LocalFileResult.h watchman: watchman::Optional -> folly::Optional Jan 25, 2019
Logging.h terminate process without running destructors on FATAL Mar 22, 2018
MapUtil.h Add utility method and tests Nov 6, 2017
Pipe.cpp Re-worked replacement of memset with proper init to make it gcc 4.8 c… Jan 27, 2018
Pipe.h merge Win32Handle into FileDescriptor Jun 2, 2017
PubSub.cpp fix deadlock in subscription teardown Mar 7, 2018
PubSub.h watchman: watchman::Synchronized -> folly::Synchronized Jan 25, 2019
QueryableView.cpp recrawls no longer recreate the view instance Jun 20, 2017
QueryableView.h work harder to surface sync errors more accurately Feb 24, 2018
README.markdown Add Code of Conduct Dec 7, 2017
Result.h watchman: watchman::Unit -> folly::Unit Jan 25, 2019
SymlinkTargets.cpp watchman: migrate LRUCache to folly futures Jan 25, 2019
SymlinkTargets.h watchman: migrate LRUCache to folly futures Jan 25, 2019
ThreadPool.cpp watchman: watchman::Executor -> folly::Executor Jan 25, 2019
ThreadPool.h watchman: remove some references to watchman::Future Jan 25, 2019
appveyor.yml copy appveyor deps to artifact zip file (#679) Feb 5, 2019
autogen.sh fixup OSS CI after folly dep change Jan 20, 2019
azure-pipelines.yml testing whether this kicks off azure Jun 25, 2019
bser.cpp fixup compilation error on macos May 2, 2018
cfg.cpp Add more tests for facebook saved state May 2, 2019
checksock.cpp watchman: watchman::Synchronized -> folly::Synchronized Jan 25, 2019
clientmode.cpp re-jigger log subscriptions Nov 3, 2016
clockspec.cpp watchman: `json_is_XXX(o)` -> `o.isXxx()` Feb 19, 2019
error_category.cpp add stale_file_handle error category Sep 20, 2018
expflags.cpp remove MIN, MAX defines Nov 4, 2016
fstype.cpp detect Linux FUSE filesystems in w_fstype() Dec 5, 2018
getdeps.py Migrate from Folly Format to fmt Apr 25, 2019
groups.cpp Move w_get_group out of main.cpp Jul 5, 2018
hash.cpp fixup some gcc 7.1 issues May 18, 2017
ignore.cpp standardize on / dir separators on all platforms Dec 15, 2016
json.cpp Replaced memset calls with appopriate C++11 init or assignment. Jan 25, 2018
launchd.cpp remove client shutdown hack Nov 30, 2016
listener-user.cpp watchman: watchman_scopeguard.h -> folly/ScopeGuard.h Jan 25, 2019
listener.cpp watchman: watchman::Synchronized -> folly::Synchronized Jan 25, 2019
log.cpp watchman: watchman_scopeguard.h -> folly/ScopeGuard.h Jan 25, 2019
main.cpp watchman: refuse to run the service at higher than normal nice levels May 21, 2019
opendir.cpp watchman: remove watchman/make_unique.h Jan 25, 2019
opt.cpp avoid `abort` in a number of code paths Feb 23, 2018
pending.cpp watchman: watchman::Synchronized -> folly::Synchronized Jan 25, 2019
perf.cpp watchman: remove some uses of `json_unpack` Feb 27, 2019
runtests.py watchman: fixup FB internal mac packaging May 21, 2019
sockname.cpp Move sock_name global out of main.cpp Jul 5, 2018
spawn.cpp watchman: remove watchman/make_unique.h Jan 25, 2019
state.cpp watchman: standardize on std::this_thread::sleep_for for sleeps Jan 25, 2019
stream.cpp remove w_stm_xxx accessor functions Nov 29, 2016
stream_stdout.cpp merge Win32Handle into FileDescriptor Jun 2, 2017
stream_unix.cpp fixup unix socket credentials on FreeBSD Jun 24, 2019
stream_win.cpp watchman: remove watchman/make_unique.h Jan 25, 2019
string.cpp remove more dead code Mar 12, 2018
time.cpp mostly rename .c -> .cpp Sep 16, 2016
tmp.cpp Move watchman_tmp_dir global out of main.cpp Jul 5, 2018
watchman.h watchman: remove undocumented ioprio code May 16, 2019
watchman_client.h watchman: watchman::Synchronized -> folly::Synchronized Jan 25, 2019
watchman_clockspec.h watchman: watchman::Synchronized -> folly::Synchronized Jan 25, 2019
watchman_cmd.h Fix problem where watch implicitly created. Sep 15, 2017
watchman_config.h Fix "use of undeclared identifier 'WATCHMAN_CONFIG_FILE'" Jul 14, 2018
watchman_dir.h Delete dead code Jul 5, 2018
watchman_error_category.h add stale_file_handle error category Sep 20, 2018
watchman_file.h Add missing #includes Sep 6, 2018
watchman_getopt.h refactor: break watchman.h into separate header files Sep 16, 2016
watchman_hash.h add content hash as an available field Feb 3, 2017
watchman_ignore.h unordered_set and vector for ignore internals Nov 1, 2016
watchman_log.h terminate process without running destructors on FATAL Mar 22, 2018
watchman_opendir.h rename watchman_stat to FileInformation May 22, 2017
watchman_pdu.h add some more tests for BSER decoding Dec 15, 2016
watchman_pending.h watchman: watchman::Synchronized -> folly::Synchronized Jan 25, 2019
watchman_perf.h refactor errmsg -> throw QueryXXXError Feb 10, 2017
watchman_preprocessor.h re-jigger log subscriptions Nov 3, 2016
watchman_query.h Fix empty 'path' or 'suffix' generators May 28, 2019
watchman_root.h watchman: watchman::Synchronized -> folly::Synchronized Jan 25, 2019
watchman_stream.h migrate the remains of Win32Handle.cpp -> FileDescriptor.cpp Jun 6, 2017
watchman_string.h remove more dead code Mar 12, 2018
watchman_system.h Link watchman against folly (#636) Jan 19, 2019
watchman_time.h add content hash as an available field Feb 3, 2017
watchman_trigger.h triggers now use ChildProcess::Environment rather than envht Jan 23, 2017
watchman_watcher.h connect crawl errors to the watch failure reason Feb 23, 2018

README.markdown

Watchman

A file watching service.

Purpose

Watchman exists to watch files and record when they actually change. It can also trigger actions (such as rebuilding assets) when matching files change.

Documentation

Head on over to https://facebook.github.io/watchman/

Build Status

Build Status

Build status

License

Watchman is made available under the terms of the Apache License 2.0. See the LICENSE file that accompanies this distribution for the full text of the license.

Contributing

Please see the contributing guide.

You can’t perform that action at this time.