aboutsummaryrefslogtreecommitdiffstats
path: root/commit.c
diff options
context:
space:
mode:
authorEmily Shaffer <emilyshaffer@google.com>2025-10-17 17:15:35 +0300
committerJunio C Hamano <gitster@pobox.com>2025-10-17 14:32:52 -0700
commit5abec8f71177edb330e79b16a62920238c2462fd (patch)
treeea5238402c326623f96930717672ba84d95f132a /commit.c
parentThe twentieth batch (diff)
downloadgit-5abec8f71177edb330e79b16a62920238c2462fd.tar.gz
git-5abec8f71177edb330e79b16a62920238c2462fd.zip
run-command: add stdin callback for parallelization
If a user of the run_processes_parallel() API wants to pipe a large amount of information to the stdin of each parallel command, that data could exceed the pipe buffer of the process's stdin and can be too big to store in-memory via strbuf & friends or to slurp to a file. Generally this is solved by repeatedly writing to child_process.in between calls to start_command() and finish_command(). For a specific pre-existing example of this, see transport.c:run_pre_push_hook(). This adds a generic callback API to run_processes_parallel() to do exactly that in a unified manner, similar to the existing callback APIs, which can then be used by hooks.h to convert the remaining hooks to the new, simpler parallel interface. Signed-off-by: Emily Shaffer <emilyshaffer@google.com> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Adrian Ratiu <adrian.ratiu@collabora.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'commit.c')
0 files changed, 0 insertions, 0 deletions