mbox series

[v3,0/6] submodule: parallelize diff

Message ID 20221020232532.1128326-1-calvinwan@google.com (mailing list archive)
Headers show
Series submodule: parallelize diff | expand

Message

Calvin Wan Oct. 20, 2022, 11:25 p.m. UTC
Original cover letter for context:
https://lore.kernel.org/git/20221011232604.839941-1-calvinwan@google.com/

Changes since v2

Rebased on top of Avar's v3 run-command refactor[1]

pipe_output_fn has been decoupled from 'err' and now uses a new
variable in run_processes_parallel_opts, 'out'. This simplifies much
of the logic and testing difficulty of the previous patch, since 'out'
only holds output from child processes and nothing else.

Added a new patch to add hide_output to run_processes_parallel_opts. I
previously was reseting 'err' as to not print output from child
processes, but that was an unnecessary complication. A simple option to
not print output is much cleaner.

Added a setup patch before "submodule: move status parsing into function"

Fixed many stylistic changes and rewrote some documentation recommended
by Avar -- thank you for your reviews!

[1] https://lore.kernel.org/git/cover-v3-00.15-00000000000-20221012T205712Z-avarab@gmail.com/

Calvin Wan (6):
  run-command: add pipe_output_fn to run_processes_parallel_opts
  run-command: add hide_output to run_processes_parallel_opts
  submodule: strbuf variable rename
  submodule: move status parsing into function
  diff-lib: refactor match_stat_with_submodule
  diff-lib: parallelize run_diff_files for submodules

 Documentation/config/submodule.txt |  12 ++
 diff-lib.c                         | 102 +++++++++++--
 run-command.c                      |  29 +++-
 run-command.h                      |  30 ++++
 submodule.c                        | 232 +++++++++++++++++++++++++----
 submodule.h                        |   9 ++
 t/helper/test-run-command.c        |  19 +++
 t/t0061-run-command.sh             |  36 +++++
 t/t4027-diff-submodule.sh          |  19 +++
 t/t7506-status-submodule.sh        |  19 +++
 10 files changed, 457 insertions(+), 50 deletions(-)