git/builtin
Jeff Hostetler bec486b9c1 fsmonitor--daemon: create token-based changed path cache
Teach fsmonitor--daemon to build a list of changed paths and associate
them with a token-id.  This will be used by the platform-specific
backends to accumulate changed paths in response to filesystem events.

The platform-specific file system listener thread receives file system
events containing one or more changed pathnames (with whatever
bucketing or grouping that is convenient for the file system).  These
paths are accumulated (without locking) by the file system layer into
a `fsmonitor_batch`.

When the file system layer has drained the kernel event queue, it will
"publish" them to our token queue and make them visible to concurrent
client worker threads.  The token layer is free to combine and/or de-dup
paths within these batches for efficient presentation to clients.

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-03-25 16:04:16 -07:00
..
add.c
am.c Merge branch 'ab/date-mode-release' 2022-02-25 15:47:36 -08:00
annotate.c
apply.c
archive.c
bisect--helper.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
blame.c Merge branch 'ja/i18n-common-messages' 2022-02-25 15:47:35 -08:00
branch.c Merge branch 'gc/branch-recurse-submodules' 2022-02-18 13:53:29 -08:00
bugreport.c
bundle.c
cat-file.c
check-attr.c
check-ignore.c
check-mailmap.c
check-ref-format.c
checkout--worker.c
checkout-index.c
checkout.c Merge branch 'js/short-help-outside-repo-fix' 2022-02-18 13:53:30 -08:00
clean.c Merge branch 'vd/sparse-clean-etc' 2022-02-17 16:25:05 -08:00
clone.c Merge branch 'js/apply-partial-clone-filters-recursively' 2022-02-25 15:47:35 -08:00
column.c
commit-graph.c
commit-tree.c
commit.c Merge branch 'ab/date-mode-release' 2022-02-25 15:47:36 -08:00
config.c
count-objects.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
credential-cache--daemon.c
credential-cache.c
credential-store.c
credential.c
describe.c
diff-files.c
diff-index.c
diff-tree.c
diff.c builtin/diff.c: fix "git-diff" usage string typo 2022-02-02 11:30:53 -08:00
difftool.c i18n: factorize more 'incompatible options' messages 2022-02-04 13:58:28 -08:00
env--helper.c
fast-export.c i18n: fix some misformated placeholders in command synopsis 2022-02-04 13:58:28 -08:00
fast-import.c date API: create a date.h, split from cache.h 2022-02-16 09:40:00 -08:00
fetch-pack.c
fetch.c Merge branch 'ja/i18n-common-messages' 2022-02-25 15:47:35 -08:00
fmt-merge-msg.c
for-each-ref.c
for-each-repo.c
fsck.c
fsmonitor--daemon.c fsmonitor--daemon: create token-based changed path cache 2022-03-25 16:04:16 -07:00
gc.c Merge branch 'ab/config-based-hooks-2' 2022-02-09 14:21:00 -08:00
get-tar-commit-id.c
grep.c Merge branch 'ab/grep-patterntype' 2022-02-25 15:47:36 -08:00
hash-object.c Merge branch 'ja/i18n-common-messages' 2022-02-25 15:47:35 -08:00
help.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
hook.c
index-pack.c
init-db.c
interpret-trailers.c
log.c Merge branch 'ab/grep-patterntype' 2022-02-25 15:47:36 -08:00
ls-files.c
ls-remote.c ls-remote & transport API: release "struct transport_ls_refs_options" 2022-02-06 18:02:34 -08:00
ls-tree.c built-ins: trust the "prefix" from run_builtin() 2022-02-15 18:00:50 -08:00
mailinfo.c
mailsplit.c
merge-base.c i18n: factorize more 'incompatible options' messages 2022-02-04 13:58:28 -08:00
merge-file.c
merge-index.c
merge-ours.c
merge-recursive.c
merge-tree.c
merge.c Merge branch 'pw/use-in-process-checkout-in-rebase' 2022-02-18 13:53:27 -08:00
mktag.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
mktree.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
multi-pack-index.c
mv.c
name-rev.c name-rev: replace --stdin with --annotate-stdin in synopsis 2022-02-15 17:37:43 -08:00
notes.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
pack-objects.c Merge branch 'ja/i18n-common-messages' 2022-02-25 15:47:35 -08:00
pack-redundant.c
pack-refs.c
patch-id.c patch-id: fix scan_hunk_header on diffs with 1 line of before/after 2022-02-02 11:24:23 -08:00
prune-packed.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
prune.c
pull.c Merge branch 'ja/i18n-common-messages' 2022-02-25 15:47:35 -08:00
push.c i18n: factorize "invalid value" messages 2022-02-04 13:58:28 -08:00
range-diff.c
read-tree.c
rebase.c Merge branch 'ja/i18n-common-messages' 2022-02-25 15:47:35 -08:00
receive-pack.c Merge branch 'cb/clear-quarantine-early-on-all-ref-update-errors' 2022-02-18 13:53:27 -08:00
reflog.c Merge branch 'ja/i18n-common-messages' 2022-02-25 15:47:35 -08:00
remote-ext.c
remote-fd.c
remote.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
repack.c
replace.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
rerere.c
reset.c Merge branch 'ab/diff-free-more' 2022-02-25 15:47:36 -08:00
rev-list.c i18n: fix some misformated placeholders in command synopsis 2022-02-04 13:58:28 -08:00
rev-parse.c
revert.c
rm.c
send-pack.c i18n: factorize "invalid value" messages 2022-02-04 13:58:28 -08:00
shortlog.c log: add a --no-graph option 2022-02-11 10:06:41 -08:00
show-branch.c date API: create a date.h, split from cache.h 2022-02-16 09:40:00 -08:00
show-index.c
show-ref.c
sparse-checkout.c Merge branch 'ja/i18n-common-messages' 2022-02-25 15:47:35 -08:00
stash.c Merge branch 'js/no-more-legacy-stash' 2022-02-16 15:14:30 -08:00
stripspace.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
submodule--helper.c Merge branch 'js/apply-partial-clone-filters-recursively' 2022-02-25 15:47:35 -08:00
symbolic-ref.c
tag.c date API: create a date.h, split from cache.h 2022-02-16 09:40:00 -08:00
unpack-file.c
unpack-objects.c
update-index.c fsmonitor: config settings are repository-specific 2022-03-25 16:04:15 -07:00
update-ref.c
update-server-info.c i18n: remove from i18n strings that do not hold translatable parts 2022-02-04 13:58:28 -08:00
upload-archive.c
upload-pack.c
var.c
verify-commit.c
verify-pack.c
verify-tag.c
worktree.c Merge branch 'ds/sparse-checkout-requires-per-worktree-config' 2022-02-25 15:47:33 -08:00
write-tree.c