Watches files and records, or triggers actions, when they change.
279 matches across 9 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | CMakeLists.txt | 61 | # Determine whether we are the git repo produced by shipit, a staging |
| LOW | run-tests.sh | 1 | #!/bin/bash -e |
| LOW | install-system-packages.sh | 1 | #!/bin/bash -e |
| LOW | watchman/PathUtils.cpp | 1 | /* |
| LOW | watchman/XattrUtils.cpp | 21 | // The following are lifted from sys/acl.h and inlined to avoid that |
| LOW | watchman/XattrUtils.cpp | 41 | |
| LOW | watchman/watchman_string.h | 81 | |
| LOW | watchman/ChildProcess.h | 1 | /* |
| LOW | watchman/ChildProcess.h | 161 | // If stdin is a pipe and stdout and stderr aren't, then it's safe to extract |
| LOW | watchman/bser.cpp | 21 | |
| LOW | watchman/PerfSample.cpp | 1 | /* |
| LOW | watchman/LRUCache.h | 221 | // This owns the nodes in the map |
| LOW | watchman/LRUCache.h | 361 | // If the key is present and satisfied, return a Future that will |
| LOW | watchman/Client.cpp | 1 | /* |
| LOW | watchman/Logging.cpp | 261 | // msvcrt abort() ultimately calls exit(3), so we shortcut that. |
| LOW | watchman/ThreadPool.h | 21 | // tasks that are executed in the thread pool. Contrast with |
| LOW | watchman/watchman_system.h | 1 | /* |
| LOW | watchman/watchman_system.h | 21 | // is included before this header, so we pull it in early. |
| LOW | watchman/watchman_system.h | 41 | #include <errno.h> |
| LOW | watchman/watchman_system.h | 61 | #define STDOUT_FILENO 1 |
| LOW | watchman/watchman_system.h | 81 | #define WATCHMAN_BUILD_INFO BuildInfo_kUpstreamRevision |
| LOW | watchman/watchman_system.h | 101 | #include <grp.h> |
| LOW | watchman/watchman_system.h | 121 | #ifdef HAVE_EXECINFO_H |
| LOW | watchman/watchman_system.h | 141 | (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 8)) || (__GNUC__ >= 5)) && \ |
| LOW | watchman/watchman_system.h | 161 | // configuration. These are helpers to make this work |
| LOW | watchman/watchman_system.h | 201 | } while (0) |
| LOW | watchman/ProcessLock.cpp | 61 | "Failed to lock pidfile {}: process {} owns it: {}, and my pid = {}", |
| LOW | watchman/ProcessLock.cpp | 81 | // for the name. |
| LOW | watchman/state.cpp | 1 | /* |
| LOW | watchman/ContentHash.cpp | 1 | /* |
| LOW | watchman/Errors.h | 61 | } |
| LOW | watchman/string.cpp | 1 | /* |
| LOW | watchman/TriggerCommand.cpp | 1 | /* |
| LOW | watchman/Logging.h | 161 | __FILE__, \ |
| LOW | watchman/stream_unix.cpp | 1 | /* |
| LOW | watchman/stream_unix.cpp | 21 | #ifdef HAVE_SYS_UCRED_H |
| LOW | watchman/PendingCollection.cpp | 161 | } |
| LOW | watchman/InMemoryView.cpp | 1 | /* |
| LOW | watchman/watchman_preprocessor.h | 1 | /* |
| LOW | watchman/watchman_preprocessor.h | 21 | #endif |
| LOW | watchman/watchman_cmd.h | 21 | } // namespace watchman |
| LOW | watchman/listener.cpp | 1 | /* |
| LOW | watchman/listener.cpp | 21 | #include "watchman/GroupLookup.h" |
| LOW | watchman/UserDir.cpp | 1 | /* |
| LOW | watchman/main.cpp | 1 | /* |
| LOW | watchman/main.cpp | 21 | |
| LOW | watchman/main.cpp | 41 | #include "watchman/fs/FileSystem.h" |
| LOW | watchman/main.cpp | 881 | |
| LOW | watchman/InMemoryView.h | 1 | /* |
| LOW | watchman/watcher/kqueue.cpp | 1 | /* |
| LOW | watchman/watcher/win32.cpp | 1 | /* |
| LOW | watchman/watcher/kqueue_and_fsevents.cpp | 1 | /* |
| LOW | watchman/watcher/inotify.cpp | 1 | /* |
| LOW | watchman/watcher/eden.cpp | 1 | /* |
| LOW | watchman/watcher/eden.cpp | 21 | #include <thrift/lib/cpp2/async/RocketClientChannel.h> |
| LOW | watchman/test/PathUtilsTest.cpp | 1 | /* |
| LOW | watchman/test/BserTest.cpp | 1 | /* |
| LOW | watchman/test/run.sh | 1 | #!/bin/bash |
| LOW | watchman/test/FailsToStartViewTest.cpp | 1 | /* |
| LOW | watchman/test/InMemoryViewTest.cpp | 1 | /* |
| 93 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | watchman/test/async/test_dead_socket.py | 33 | def test_subscription_dead_socket(self): |
| LOW | watchman/python/pywatchman_aio/__init__.py | 217 | async def receive_bilateral_response(self): |
| LOW | watchman/python/pywatchman_aio/__init__.py | 352 | def _ensure_subscription_queue_exists(self, name, root): |
| LOW | watchman/python/pywatchman_aio/__init__.py | 357 | async def _process_unilateral_response(self, response): |
| LOW | watchman/python/tests/tests.py | 101 | def test_missing_socket_file_raises_connect_error(self): |
| LOW | watchman/python/tests/tests.py | 116 | def make_deleted_windows_socket_path(self): |
| LOW | watchman/python/tests/tests.py | 119 | def make_deleted_unix_socket_path(self): |
| LOW | watchman/python/pywatchman/__init__.py | 393 | def _get_overlapped_result_ex_impl(pipe, olap, nbytes, millis, alertable): |
| LOW | watchman/integration/test_command.py | 16 | def test_unknown_commands_print_json_error(self) -> None: |
| LOW | watchman/integration/test_ignore.py | 46 | def test_ignore_overlap_vcs_ignore(self) -> None: |
| LOW | watchman/integration/test_invalid_expr.py | 41 | def test_invalid_sync_timeout(self) -> None: |
| LOW | watchman/integration/test_sock_perms.py | 131 | def test_user_not_in_sock_group(self) -> None: |
| LOW | watchman/integration/test_sock_perms.py | 163 | def test_user_previously_in_sock_group(self) -> None: |
| LOW | watchman/integration/test_sock_perms.py | 222 | def test_custom_sock_access_group(self) -> None: |
| LOW | watchman/integration/test_sock_perms.py | 230 | def test_custom_sock_access_others(self) -> None: |
| LOW | watchman/integration/test_sock_perms.py | 248 | def test_sock_access_downgrade(self) -> None: |
| LOW | watchman/integration/test_sock_perms.py | 258 | def test_sock_access_group_change(self) -> None: |
| LOW | watchman/integration/test_sock_perms.py | 281 | def test_sock_access_via_acl_user_not_in_sock_group(self) -> None: |
| LOW | watchman/integration/test_nice.py | 22 | def test_failing_to_start_when_nice(self) -> None: |
| LOW | watchman/integration/test_nice.py | 31 | def test_failing_to_start_when_nice_foreground(self) -> None: |
| LOW | watchman/integration/test_subscribe.py | 622 | def test_subscription_cleanup(self) -> None: |
| LOW | watchman/integration/test_subscribe.py | 759 | def test_resubscribe_same_name_no_error(self) -> None: |
| LOW | watchman/integration/test_subscribe.py | 796 | def test_resubscribe_same_name_no_warning(self) -> None: |
| LOW | watchman/integration/test_subscribe.py | 836 | def test_multi_client_same_name(self) -> None: |
| LOW | watchman/integration/test_watch_project.py | 17 | def make_empty_watchmanconfig(dir) -> None: |
| LOW | watchman/integration/test_glob.py | 162 | def test_glob_generator_empty(self) -> None: |
| LOW | watchman/integration/test_glob.py | 173 | def test_glob_generator_absolute(self) -> None: |
| LOW | watchman/integration/test_path_generator.py | 60 | def test_path_generator_relative_root(self) -> None: |
| LOW | watchman/integration/test_path_generator.py | 103 | def test_path_generator_empty(self) -> None: |
| LOW | watchman/integration/test_suffix_generator.py | 60 | def test_suffix_generator_empty(self) -> None: |
| LOW | watchman/integration/eden/test_eden_since.py | 58 | def test_eden_empty_relative_root(self) -> None: |
| LOW | watchman/integration/eden/test_eden_since.py | 255 | def test_eden_since_across_update(self) -> None: |
| LOW | watchman/integration/eden/test_eden_since.py | 296 | def test_eden_since_over_threshold(self) -> None: |
| LOW | watchman/integration/eden/test_eden_since.py | 356 | def test_eden_since_dotfiles_change(self) -> None: |
| LOW | watchman/integration/eden/test_eden_since.py | 386 | def test_eden_since_fresh_instance_dotfiles(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 44 | def test_eden_since_upper_bound(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 91 | def test_eden_since_empty_upper_bound(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 116 | def test_eden_since_upper_bound_case_insensitive(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 146 | def test_eden_since_upper_bound_includedotfiles(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 176 | def test_eden_since_upper_bound_name_escaping(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 203 | def test_eden_since_upper_bound_name_normalization(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 228 | def test_eden_since_upper_bound_name_set_normalization(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 255 | def test_eden_since_upper_bound_match_noescape(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 279 | def test_eden_since_upper_bound_match_escape(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 303 | def test_eden_since_upper_bound_dirname_escaping(self) -> None: |
| LOW | watchman/integration/eden/test_eden_glob_upper_bound.py | 326 | def test_eden_since_upper_bound_match_complex_pattern(self) -> None: |
| LOW | watchman/integration/eden/test_eden_journal.py | 103 | def test_two_rapid_checkouts_show_briefly_changed_files(self) -> None: |
| LOW | watchman/integration/eden/test_eden_journal.py | 160 | def test_aba_checkouts_show_briefly_changed_files(self) -> None: |
| LOW | watchman/integration/eden/test_eden_journal.py | 213 | def test_querying_with_truncated_journal_returns_fresh_instance(self) -> None: |
| LOW | watchman/integration/eden/test_eden_pathgen.py | 291 | def test_path_and_glob_dotfiles(self): |
| LOW | watchman/integration/eden/test_eden_shutdown.py | 13 | def test_shutdown_and_restart(self) -> None: |
| LOW | watchman/integration/lib/path_utils.py | 32 | def get_canonical_filesystem_path(name): |
| LOW | watchman/integration/lib/path_utils.py | 63 | def get_canonical_filesystem_path(name): |
| LOW | watchman/integration/lib/path_utils.py | 75 | def get_canonical_filesystem_path(name): |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | watchman/python/tests/tests.py | 141 | # Define a new class that derives from the input class |
| MEDIUM | watchman/integration/test_big.py | 21 | # Create a huge query. We're shooting for more than 2MB; the server buffer |
| MEDIUM | watchman/integration/test_subscribe.py | 734 | # Create a subscription |
| MEDIUM | watchman/integration/test_subscribe.py | 768 | # Create a subscription |
| MEDIUM | watchman/integration/test_subscribe.py | 783 | # Create a new subscription with the same name |
| MEDIUM | watchman/integration/test_subscribe.py | 805 | # Create a subscription |
| MEDIUM | watchman/integration/test_subscribe.py | 820 | # Create a new subscription with the same name |
| MEDIUM | watchman/integration/test_subscribe.py | 848 | # Create a subscription |
| MEDIUM | watchman/integration/test_subscribe.py | 860 | # Create a new subscription with the same name from a different client, |
| MEDIUM | watchman/integration/test_subscribe.py | 909 | # Create a subscription |
| MEDIUM | watchman/integration/test_since.py | 27 | # Create a cursor for this state |
| MEDIUM | watchman/integration/test_nodejs.py | 45 | # Define a new class that derives from the input class. |
| MEDIUM | watchman/integration/eden/test_eden_pathgen.py | 68 | # Create the file that we want to remove |
| MEDIUM | watchman/integration/lib/WatchmanTestCase.py | 563 | # Define a new class that derives from the input class |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | watchman/runtests.py | 52 | except Exception: |
| LOW | watchman/runtests.py | 457 | except Exception as e: |
| LOW | watchman/runtests.py | 478 | except Exception as exc: |
| LOW | watchman/runtests.py | 486 | except Exception: |
| LOW | watchman/runtests.py | 497 | except Exception as e: |
| LOW | watchman/runtests.py | 517 | except Exception as e: |
| LOW | watchman/python/pywatchman_aio/__init__.py | 285 | except Exception as ex: |
| LOW | watchman/python/pywatchman_aio/__init__.py | 324 | except Exception as ex: |
| MEDIUM | watchman/python/pywatchman_aio/__init__.py | 280 | def do_if_done(fut): |
| LOW | watchman/python/tests/tests.py | 96 | except Exception as e: |
| LOW | watchman/python/tests/tests.py | 438 | except Exception: |
| MEDIUM | watchman/python/tests/tests.py | 45 | def test_exception_handling(self): |
| LOW | watchman/python/pywatchman/__init__.py | 378 | except Exception as e: |
| LOW | watchman/python/pywatchman/__init__.py | 826 | except Exception as e: |
| MEDIUM | watchman/python/pywatchman/__init__.py | 302 | def readBytes(self, size): |
| LOW | watchman/integration/test_local_saved_state.py | 21 | except Exception: |
| MEDIUM | watchman/integration/test_local_saved_state.py | 16 | def is_ubuntu() -> bool: |
| MEDIUM | watchman/integration/test_fork.py | 40 | print("Error in child process: %s" % exc) |
| LOW | watchman/integration/test_sock_perms.py | 68 | except Exception: |
| LOW | watchman/integration/test_scm.py | 22 | except Exception: |
| MEDIUM | watchman/integration/test_scm.py | 17 | def is_ubuntu() -> bool: |
| LOW | watchman/integration/test_trigger_chdir.py | 41 | except Exception: |
| LOW | watchman/integration/lib/WatchmanTestCase.py | 161 | except Exception: |
| LOW | watchman/integration/lib/WatchmanTestCase.py | 194 | except Exception: |
| LOW | watchman/integration/lib/WatchmanTestCase.py | 263 | except Exception: |
| LOW | watchman/integration/lib/WatchmanSCMTestCase.py | 68 | except Exception as e: |
| LOW | watchman/integration/lib/WatchmanEdenTestCase.py | 105 | except Exception: |
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | watchman/integration/test_fishy.py | 37 | "mv foo bar && ln -s bar foo", |
| HIGH | watchman/integration/test_fishy.py | 57 | "touch a && mkdir d1 d2 && mv d1 d2 && mv d2/d1 . && mv a d1", |
| HIGH | watchman/integration/lib/WatchmanInstance.py | 238 | # pyre-fixme[61]: `val` is undefined, or not always defined. |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | watchman/LRUCache.h | 364 | // The purpose of this function is to reduce the exposure to |
| LOW | watchman/rust/watchman_client/src/lib.rs | 658 | // Step 1: serialize into a bser byte buffer |
| LOW | watchman/rust/watchman_client/src/lib.rs | 666 | // Step 2: ask the client task to send it for us |
| LOW | watchman/rust/watchman_client/src/lib.rs | 676 | // Step 3: wait for the client task to give us the response |
| LOW | watchman/rust/watchman_client/src/lib.rs | 682 | // Step 4: sniff for an error response in the deserialized data |
| LOW | watchman/rust/watchman_client/src/lib.rs | 690 | // Step 5: deserialize into the caller-desired format |
| LOW | watchman/root/iothread.cpp | 704 | // Step 1: Process readDir results. |
| LOW | watchman/root/iothread.cpp | 768 | // Step 2: Handle errors. |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | watchman/runtests.py | 297 | |
| LOW | watchman/runtests.py | 439 | |
| LOW | watchman/python/pywatchman/pybser.py | 47 | |
| LOW | watchman/python/pywatchman/pybser.py | 94 | |
| LOW | watchman/python/pywatchman/pybser.py | 110 | |
| LOW | watchman/python/pywatchman/pybser.py | 161 | |
| LOW | watchman/python/pywatchman/pybser.py | 307 | |
| LOW | watchman/python/pywatchman/pybser.py | 413 | |
| LOW | watchman/python/pywatchman/__init__.py | 393 | |
| LOW | watchman/python/pywatchman/__init__.py | 856 | |
| LOW | watchman/integration/test_restrictions.py | 30 | |
| LOW | watchman/integration/test_watch_project.py | 24 | |
| LOW | watchman/integration/test_trigger.py | 71 | |
| LOW | watchman/integration/test_trigger.py | 75 |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | watchman/IgnoreSet.cpp | 63 | // Definitely ignoring this portion of the tree |
| MEDIUM | watchman/python/pywatchman/__init__.py | 602 | # The test harness sets WATCHMAN_BINARY to the binary under test, |
| LOW | watchman/integration/test_saved_state.py | 19 | # This test does not require much so just create a super simple repo |
| MEDIUM | watchman/query/dirname.cpp | 152 | // We could leverage the depth parameter to generate a depth bound, e.g. `*` |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | watchman/python/publish-pypi.sh | 8 | # =============================== |
| MEDIUM | watchman/python/publish-pypi.sh | 10 | # =============================== |