What's cooking (2021/03 #04)

Junio C Hamano committed Mar 14, 2021 at 16:43 UTC 0e6279fbe17510615d85eeabb75d4fe385a00500
1 file changed +213 -155
whats-cooking.txt
+213 -155
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Mar 2021, #03; Wed, 10)
4 -X-master-at: 13d7ab6b5d7929825b626f050b62a11241ea4945
5 -X-next-at: 7f7177462022378fff6bd671b691b9f3771eb75b
3 +Subject: What's cooking in git.git (Mar 2021, #04; Sun, 14)
4 +X-master-at: 8775279891fd186ce847b7ddb7f0ac2339504300
5 +X-next-at: c8bc67eb22fa994c4b7386cb001aaa95940877c6
6
7 -What's cooking in git.git (Mar 2021, #03; Wed, 10)
7 +What's cooking in git.git (Mar 2021, #04; Sun, 14)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with '-' are
@@ -12,8 +12,7 @@ only in 'seen' (formerly 'pu'---proposed updates) while commits prefixed
12 with '+' are in 'next'. The ones marked with '.' do not appear in any of
13 the integration branches, but I am still holding onto them.
14
15 -The second release candidate Git v2.31.0-rc2, together with
16 -maintenance releases for CVE-2021-21300, have been released.
15 +Git 2.31 final is expected to be tagged on Mar 15, 2021 (monday).
16
17 Copies of the source code to Git live in many repositories, and the
18 following is a list of the ones I push into or their mirrors. Some
@@ -44,82 +43,63 @@ Release tarballs are available at:
43 https://www.kernel.org/pub/software/scm/git/
44
45 --------------------------------------------------
47 -[New Topics]
46 +[Graduated to 'master']
47
49 -* ab/tests-cleanup-around-sha1 (2021-03-10) 4 commits
50 - - tests: get rid of $_x05 from the test suite
51 - - shortlog tests: rewrite to get rid of --abbrev=35 hardcoding
52 - - test-lib: remove unused $_x40 and $_z40 variables
53 - - git-bisect: remove unused SHA-1 $x40 shell variable
48 +* jn/mergetool-hideresolved-is-optional (2021-03-13) 2 commits
49 + (merged to 'next' on 2021-03-13 at 23f5a25716)
50 + + doc: describe mergetool configuration in git-mergetool(1)
51 + + mergetool: do not enable hideResolved by default
52
55 - Remove variables that hold regexp and glob that match fixed number
56 - of hexadecimal digits from the test suite.
53 + Disable the recent mergetool's hideresolved feature by default for
54 + backward compatibility and safety.
55
58 - Expecting a reroll.
59 - At least the last one weakens a test; there may be similar breakage
60 - due to not understanding what they are trying to test.
56
57 +* tb/pack-revindex-on-disk (2021-02-26) 1 commit
58 + (merged to 'next' on 2021-03-12 at 7aa348d3b3)
59 + + pack-revindex.c: don't close unopened file descriptors
60
63 -* jk/filter-branch-sha256 (2021-03-10) 3 commits
64 - - filter-branch: drop $_x40 glob
65 - - filter-branch: drop multiple-ancestor warning
66 - - t7003: test ref rewriting explicitly
61 + Fix for a topic in 'master'.
62
68 - Code clean-up.
63 +--------------------------------------------------
64 +[New Topics]
65
70 - Will merge to 'next'.
71 - In the longer term, we might want to remove filter-branch and nudge
72 - folks to more modern tools.
66 +* en/ort-perf-batch-9 (2021-03-10) 8 commits
67 + - diffcore-rename: avoid doing basename comparisons for irrelevant sources
68 + - merge-ort: skip rename detection entirely if possible
69 + - merge-ort: use relevant_sources to filter possible rename sources
70 + - merge-ort: precompute whether directory rename detection is needed
71 + - merge-ort: introduce wrappers for alternate tree traversal
72 + - merge-ort: add data structures for an alternate tree traversal
73 + - merge-ort: precompute subset of sources for which we need rename detection
74 + - diffcore-rename: enable filtering possible rename sources
75 + (this branch uses en/ort-perf-batch-8.)
76
77
75 -* jn/mergetool-hideresolved-is-optional (2021-03-10) 1 commit
76 - - mergetool: do not enable hideResolved by default
78 +* js/http-pki-credential-store (2021-03-11) 2 commits
79 + - http: drop the check for an empty proxy password before approving
80 + - http: store credential when PKI auth is used
81
78 - Disable the recent mergetool's hideresolved feature by default for
79 - backward compatibility and safety.
82 + The http codepath learned to let the credential layer to cache the
83 + password used to unlock a certificate that has successfully been
84 + used.
85
81 - Expecting a reroll.
82 - We may want to give a more meaning log message to explain why it is
83 - undesirable to turn it on by default.
86
87 +* rs/avoid-null-statement-after-macro-call (2021-03-13) 2 commits
88 + - mem-pool: drop trailing semicolon from macro definition
89 + - block-sha1: drop trailing semicolon from macro definition
90
86 ---------------------------------------------------
87 -[Graduated to 'master']
91
89 -* jt/transfer-fsck-across-packs-fix (2021-03-05) 1 commit
90 - (merged to 'next' on 2021-03-07 at c79f295216)
91 - + fetch-pack: do not mix --pack_header and packfile uri
92 +* rs/calloc-array (2021-03-13) 2 commits
93 + - use CALLOC_ARRAY
94 + - git-compat-util.h: drop trailing semicolon from macro definition
95 +
96
93 - The code to fsck objects received across multiple packs during a
94 - single git fetch session has been broken when the packfile URI
95 - feature was in use. A workaround has been added by disabling the
96 - codepath that avoids keeping a packfile that is too small.
97 +* jk/slimmed-down (2021-03-14) 1 commit
98 + - vcs-svn: remove header files as well
99
100 --------------------------------------------------
101 [Stalled]
102
101 -* hn/reftable (2021-03-08) 17 commits
102 - - SQUASH??? calloc(nmemb,size)
103 - - SQUASH??? allow t0031 to run with any default branch name
104 - - Add "test-tool dump-reftable" command.
105 - - git-prompt: prepare for reftable refs backend
106 - - Reftable support for git-core
107 - - reftable: rest of library
108 - - reftable: reftable file level tests
109 - - reftable: read reftable files
110 - - reftable: write reftable files
111 - - reftable: a generic binary tree implementation
112 - - reftable: reading/writing blocks
113 - - reftable: (de)serialization for the polymorphic record type.
114 - - reftable: add blocksource, an abstraction for random access reads
115 - - reftable: utility functions
116 - - reftable: add error related functionality
117 - - reftable: add LICENSE
118 - - init-db: set the_repository->hash_algo early on
119 -
120 - The "reftable" backend for the refs API.
121 -
122 -
103 * mt/parallel-checkout-part-1 (2020-12-16) 9 commits
104 - entry: add checkout_entry_ca() taking preloaded conv_attrs
105 - entry: move conv_attrs lookup up to checkout_entry()
@@ -136,43 +116,6 @@ Release tarballs are available at:
116 Looking good.
117
118
139 -* es/config-hooks-part-1 (2021-02-16) 17 commits
140 - - hooks: allow callers to capture output
141 - - run-command: allow capturing of collated output
142 - - hook: provide stdin by string_list or callback
143 - - run-command: add stdin callback for parallelization
144 - - hook: allow specifying working directory for hooks
145 - - hook: allow parallel hook execution
146 - - run-command: allow stdin for run_processes_parallel
147 - - hook: support passing stdin to hooks
148 - - hook: replace find_hook() with hook_exists()
149 - - hook: add 'run' subcommand
150 - - parse-options: parse into strvec
151 - - hook: implement hookcmd.<name>.skip
152 - - hook: respect hook.runHookDir
153 - - hook: include hookdir hook in list
154 - - hook: add list command
155 - - hook: scaffolding for git-hook subcommand
156 - - doc: propose hooks managed by the config
157 - (this branch is used by es/config-hooks.)
158 -
159 - A way to specify hooks in the configuration files is introduced.
160 -
161 - Expecting another reroll??
162 - cf. <YC7o2rUQOEdiMdqh@google.com>
163 -
164 -
165 -* dl/stash-show-untracked (2021-03-05) 2 commits
166 - (merged to 'next' on 2021-03-08 at 510d4cfa5f)
167 - + stash show: learn stash.showIncludeUntracked
168 - + stash show: teach --include-untracked and --only-untracked
169 -
170 - "git stash show" learned to optionally show untracked part of the
171 - stash.
172 -
173 - Will cook in 'next'.
174 -
175 -
119 * ab/fsck-api-cleanup (2021-02-18) 10 commits
120 - fsck.h: update FSCK_OPTIONS_* for object_name
121 - fsck.c: give "FOREACH_MSG_ID" a more specific name
@@ -236,29 +179,93 @@ Release tarballs are available at:
179 --------------------------------------------------
180 [Cooking]
181
239 -* ab/make-cocci-dedup (2021-03-05) 4 commits
182 +* dl/stash-show-untracked (2021-03-05) 2 commits
183 + (merged to 'next' on 2021-03-08 at 510d4cfa5f)
184 + + stash show: learn stash.showIncludeUntracked
185 + + stash show: teach --include-untracked and --only-untracked
186 +
187 + "git stash show" learned to optionally show untracked part of the
188 + stash.
189 +
190 + Will cook in 'next'.
191 +
192 +
193 +* hn/reftable (2021-03-12) 15 commits
194 + - Add "test-tool dump-reftable" command.
195 + - git-prompt: prepare for reftable refs backend
196 + - Reftable support for git-core
197 + - reftable: rest of library
198 + - reftable: reftable file level tests
199 + - reftable: read reftable files
200 + - reftable: write reftable files
201 + - reftable: a generic binary tree implementation
202 + - reftable: reading/writing blocks
203 + - reftable: (de)serialization for the polymorphic record type.
204 + - reftable: add blocksource, an abstraction for random access reads
205 + - reftable: utility functions
206 + - reftable: add error related functionality
207 + - reftable: add LICENSE
208 + - init-db: set the_repository->hash_algo early on
209 +
210 + The "reftable" backend for the refs API.
211 +
212 +
213 +* ab/tests-cleanup-around-sha1 (2021-03-10) 4 commits
214 + - tests: get rid of $_x05 from the test suite
215 + - shortlog tests: rewrite to get rid of --abbrev=35 hardcoding
216 + - test-lib: remove unused $_x40 and $_z40 variables
217 + - git-bisect: remove unused SHA-1 $x40 shell variable
218 +
219 + Remove variables that hold regexp and glob that match fixed number
220 + of hexadecimal digits from the test suite.
221 +
222 + Expecting a reroll.
223 + At least the last one weakens a test and should be dropped; there
224 + may be similar breakage due to not understanding what they are
225 + trying to test.
226 +
227 +
228 +* jk/filter-branch-sha256 (2021-03-10) 3 commits
229 + (merged to 'next' on 2021-03-14 at e4e624590a)
230 + + filter-branch: drop $_x40 glob
231 + + filter-branch: drop multiple-ancestor warning
232 + + t7003: test ref rewriting explicitly
233 +
234 + Code clean-up.
235 +
236 + Will cook in 'next'.
237 + In the longer term, we might want to remove filter-branch and nudge
238 + folks to more modern tools.
239 +
240 +
241 +* ab/make-cocci-dedup (2021-03-12) 5 commits
242 + - Makefile/coccicheck: use --include-headers-for-types
243 - Makefile/coccicheck: set SPATCH_BATCH_SIZE to 8
244 - Makefile/coccicheck: allow for setting xargs concurrency
245 - Makefile/coccicheck: speed up and fix bug with duplicate hunks
246 - Makefile/coccicheck: add comment heading for all SPATCH flags
247
245 - An attempt to speed up the coccicheck target with incorrect
246 - results.
248 + Coccicheck update.
249
248 - A reroll exists to address correctness issue, but not picked up.
250 + IIUC, the "speed up" claimed in the intermediate steps are all gone
251 + when correctness is brought back in with the last step. The series
252 + needs a restructuring to avoid confuing readers with "it produces
253 + incorrect result very quickly" followed by "we now produce right
254 + result, even more correct than the original, but we are not all
255 + that fast" progression.
256
257
251 -* ab/read-tree (2021-03-08) 6 commits
252 - - tree.h API: remove "stage" parameter from read_tree_recursive()
253 - - tree.h API: remove support for starting at prefix != ""
254 - - ls-files: refactor away read_tree()
255 - - ls-files: don't needlessly pass around stage variable
256 - - tree.c API: move read_tree() into builtin/ls-files.c
257 - - ls-files tests: add meaningful --with-tree tests
258 +* ab/read-tree (2021-03-11) 6 commits
259 + . tree.h API: remove "stage" parameter from read_tree_recursive()
260 + . tree.h API: remove support for starting at prefix != ""
261 + . ls-files: refactor away read_tree()
262 + . ls-files: don't needlessly pass around stage variable
263 + . tree.c API: move read_tree() into builtin/ls-files.c
264 + . ls-files tests: add meaningful --with-tree tests
265
266 Code simplification by removing support for a caller that is long gone.
267
261 - Looked good.
268 + It turns out that a new caller is just about to happen.
269
270
271 * ab/unexpected-object-type (2021-03-08) 7 commits
@@ -272,21 +279,22 @@ Release tarballs are available at:
279
280 Error reporting upon object type mismatch has been improved
281
275 - Looked good.
282 + Looked good except for some rewrites.
283
284
285 * ah/make-fuzz-all-doc-update (2021-03-08) 1 commit
279 - - Makefile: update 'make fuzz-all' docs to reflect modern clang
286 + (merged to 'next' on 2021-03-13 at e82816998f)
287 + + Makefile: update 'make fuzz-all' docs to reflect modern clang
288
289 Update insn in Makefile comments to run fuzz-all target.
290
283 - Needs review.
284 - cf. <pull.889.v3.git.1615223682911.gitgitgadget@gmail.com>
285 - cf. <defff7a3-2104-4fa1-7750-0b13ca5cdf59@ahunt.org>
291 + Will cook in 'next'.
292
293
288 -* ah/plugleaks (2021-03-08) 7 commits
294 +* ah/plugleaks (2021-03-14) 9 commits
295 + - transport: also free remote_refs in transport_disconnect()
296 - parse-options: don't leak alias help messages
297 + - parse-options: convert bitfield values to use binary shift
298 - init-db: silence template_dir leak when converting to absolute path
299 - init: remove git_init_db_config() while fixing leaks
300 - worktree: fix leak in dwim_branch()
@@ -299,67 +307,73 @@ Release tarballs are available at:
307
308
309 * bc/clone-bare-with-conflicting-config (2021-03-10) 1 commit
302 - - builtin/init-db: handle bare clones when core.bare set to false
310 + (merged to 'next' on 2021-03-14 at 963a86199c)
311 + + builtin/init-db: handle bare clones when core.bare set to false
312
313 "git -c core.bare=false clone --bare ..." would have segfaulted,
314 which has been corrected.
315
307 - Will merge to 'next'.
316 + Will cook in 'next'.
317
318
319 * dl/cat-file-doc-cleanup (2021-03-03) 2 commits
311 - - git-cat-file.txt: remove references to "sha1"
312 - - git-cat-file.txt: monospace args, placeholders and filenames
320 + (merged to 'next' on 2021-03-13 at f1a216175a)
321 + + git-cat-file.txt: remove references to "sha1"
322 + + git-cat-file.txt: monospace args, placeholders and filenames
323
324 Doc cleanup.
325
316 - Will merge to 'next'.
326 + Will cook in 'next'.
327
328
329 * jr/doc-ignore-typofix (2021-03-03) 1 commit
320 - - doc: .gitignore documentation typofix
330 + (merged to 'next' on 2021-03-13 at 0ce1e751b1)
331 + + doc: .gitignore documentation typofix
332
333 Doc cleanup.
334
324 - Will merge to 'next'.
335 + Will cook in 'next'.
336
337
338 * rr/mailmap-entry-self (2021-03-08) 1 commit
328 - - Add entry for Ramkumar Ramachandra
339 + (merged to 'next' on 2021-03-13 at 9f98a99713)
340 + + Add entry for Ramkumar Ramachandra
341
330 - Will merge to 'next'.
342 + Will cook in 'next'.
343
344
345 * rs/xcalloc-takes-nelem-first (2021-03-08) 1 commit
334 - - fix xcalloc() argument order
346 + (merged to 'next' on 2021-03-14 at 312660a5ce)
347 + + fix xcalloc() argument order
348
349 Code cleanup.
350
338 - Will merge to 'next'.
351 + Will cook in 'next'.
352
353
354 * sv/t9801-test-path-is-file-cleanup (2021-03-03) 1 commit
342 - - t9801: replace test -f with test_path_is_file
355 + (merged to 'next' on 2021-03-13 at 14997360bb)
356 + + t9801: replace test -f with test_path_is_file
357
358 Test cleanup.
359
346 - Will merge to 'next'.
360 + Will cook in 'next'.
361
362
363 * tb/git-mv-icase-fix (2021-03-03) 1 commit
350 - - git mv foo FOO ; git mv foo bar gave an assert
364 + (merged to 'next' on 2021-03-14 at 700e7556f1)
365 + + git mv foo FOO ; git mv foo bar gave an assert
366
367 Fix a corner case bug in "git mv" on case insensitive systems,
368 which was introduced in 2.29 timeframe.
369
355 - Will merge to 'next'.
370 + Will cook in 'next'.
371
372
358 -* tb/push-simple-uses-branch-merge-config (2021-03-08) 1 commit
373 +* tb/push-simple-uses-branch-merge-config (2021-03-13) 1 commit
374 - Documentation/git-push.txt: correct configuration typo
375
376 Doc update.
362 -
377 cf. <YEaM7ruZCvaQQbPI@nand.local>
378
379
@@ -412,6 +426,9 @@ Release tarballs are available at:
426
427 Various updates to tests around "git describe"
428
429 + Expecting a reroll.
430 + cf.
431 +
432
433 * en/ort-perf-batch-8 (2021-02-26) 10 commits
434 (merged to 'next' on 2021-03-07 at f03b2c1acd)
@@ -425,6 +442,7 @@ Release tarballs are available at:
442 + diffcore-rename: add a mapping of destination names to their indices
443 + diffcore-rename: provide basic implementation of idx_possible_rename()
444 + diffcore-rename: use directory rename guided basename comparisons
445 + (this branch is used by en/ort-perf-batch-9.)
446
447 Rename detection rework continues.
448
@@ -442,20 +460,20 @@ Release tarballs are available at:
460
461
462 * ps/update-ref-trans-hook-doc (2021-03-01) 2 commits
445 - - githooks.txt: clarify documentation on reference-transaction hook
446 - - githooks.txt: replace mentions of SHA-1 specific properties
463 + (merged to 'next' on 2021-03-14 at 41c418967d)
464 + + githooks.txt: clarify documentation on reference-transaction hook
465 + + githooks.txt: replace mentions of SHA-1 specific properties
466
467 + Doc update.
468
449 -* tb/pack-revindex-on-disk (2021-02-26) 1 commit
450 - - pack-revindex.c: don't close unopened file descriptors
469 + Will cook in 'next'.
470
471
472 * zh/format-patch-fractional-reroll-count (2021-03-01) 1 commit
473 - format-patch: allow a non-integral version numbers
474
475
457 -* ab/make-cleanup (2021-02-23) 6 commits
458 - - Makefile: build "$(FUZZ_OBJS)" in CI, not under "all"
476 +* ab/make-cleanup (2021-02-23) 5 commits
477 - Makefile: add {program,xdiff,test,git,fuzz}-objs & objects targets
478 - Makefile: split OBJECTS into OBJECTS and GIT_OBJS
479 - Makefile: sort OBJECTS assignment for subsequent change
@@ -465,8 +483,7 @@ Release tarballs are available at:
483 Reorganize Makefile to allow building git.o and other essential
484 objects without extra stuff needed only for testing.
485
468 - The last step is of dubious value, but otherwise looked OK.
469 - cf. <YDVJZnmTiBYZ4iPM@coredump.intra.peff.net>
486 + Will merge to 'next'.
487
488
489 * ab/grep-pcre2-allocfix (2021-02-17) 10 commits
@@ -487,7 +504,8 @@ Release tarballs are available at:
504 Will cook in 'next'.
505
506
490 -* tb/reverse-midx (2021-02-24) 16 commits
507 +* tb/reverse-midx (2021-03-11) 17 commits
508 + - midx.c: improve cache locality in midx_pack_order_cmp()
509 - pack-revindex: write multi-pack reverse indexes
510 - pack-write.c: extract 'write_rev_file_order'
511 - pack-revindex: read multi-pack reverse indexes
@@ -538,11 +556,8 @@ Release tarballs are available at:
556 Rewrite the backend for "diff -G/-S" to use pcre2 engine when
557 available.
558
541 - Needs review.
542 - cf. <20210216115801.4773-1-avarab@gmail.com>
559
544 -
545 -* cm/rebase-i-fixup-amend-reword (2021-03-10) 6 commits
560 +* cm/rebase-i-fixup-amend-reword (2021-03-13) 6 commits
561 - doc/git-commit: add documentation for fixup=[amend|reword] options
562 - t3437: use --fixup with options to create amend! commit
563 - t7500: add tests for --fixup=[amend|reword] options
@@ -557,7 +572,8 @@ Release tarballs are available at:
572 tweak both the message and the contents, and only the message,
573 respectively.
574
560 - Getting there.
575 + Expecting a reroll.
576 + cf. <CAPSFM5c7ULGxThtFjPam33wMzK3kprds97zwJ63stc_Ct24nmQ@mail.gmail.com>
577
578
579 * jk/open-dotgitx-with-nofollow (2021-02-16) 6 commits
@@ -579,7 +595,9 @@ Release tarballs are available at:
595 Will cook in 'next'.
596
597
582 -* rs/pretty-describe (2021-03-01) 4 commits
598 +* rs/pretty-describe (2021-03-11) 5 commits
599 + (merged to 'next' on 2021-03-12 at e987259477)
600 + + archive: expand only a single %(describe) per archive
601 (merged to 'next' on 2021-03-01 at bee9248828)
602 + pretty: document multiple %(describe) being inconsistent
603 + t4205: assert %(describe) test coverage
@@ -629,8 +647,7 @@ Release tarballs are available at:
647 A simple IPC interface gets introduced to build services like
648 fsmonitor on top.
649
632 - Replaced with a new iteration.
633 -
650 + Will merge to 'next'.
651
652
653 * cm/rebase-i (2021-01-29) 9 commits
@@ -676,8 +693,11 @@ Release tarballs are available at:
693 Will cook in 'next'.
694
695
679 -* es/config-hooks (2021-02-16) 17 commits
696 +* es/config-hooks (2021-03-10) 37 commits
697 + - docs: unify githooks and git-hook manpages
698 - run-command: stop thinking about hooks
699 + - git-send-email: use 'git hook run' for 'sendemail-validate'
700 + - bugreport: use hook_exists instead of find_hook
701 - receive-pack: convert receive hooks to hook.h
702 - post-update: use hook.h library
703 - proc-receive: acquire hook list from hook.h
@@ -694,11 +714,27 @@ Release tarballs are available at:
714 - merge: use config-based hooks for post-merge hook
715 - am: convert applypatch hooks to use config
716 - commit: use config-based hooks
697 - (this branch uses es/config-hooks-part-1.)
717 + - hooks: allow callers to capture output
718 + - run-command: allow capturing of collated output
719 + - hook: provide stdin by string_list or callback
720 + - run-command: add stdin callback for parallelization
721 + - hook: allow specifying working directory for hooks
722 + - hook: allow parallel hook execution
723 + - run-command: allow stdin for run_processes_parallel
724 + - hook: support passing stdin to hooks
725 + - hook: introduce hook_exists()
726 + - hook: add 'run' subcommand
727 + - parse-options: parse into strvec
728 + - hook: implement hookcmd.<name>.skip
729 + - hook: teach hook.runHookDir
730 + - hook: include hookdir hook in list
731 + - hook: add list command
732 + - hook: scaffolding for git-hook subcommand
733 + - doc: propose hooks managed by the config
734
735 The "hooks defined in config" topic.
736
701 - Expecting doc updates, but otherwise seems to be progressing nicely.
737 + Looking good.
738
739 --------------------------------------------------
740 [Discarded]
@@ -727,3 +763,25 @@ Release tarballs are available at:
763 After kicking jh/simple-ipc out of 'next' and rewinding
764 jh/simple-ipc to contain the incremental clean-up in this follow-up
765 topic, it is no longer needed, hence retired.
766 +
767 +
768 +* es/config-hooks-part-1 (2021-02-16) 17 commits
769 + . hooks: allow callers to capture output
770 + . run-command: allow capturing of collated output
771 + . hook: provide stdin by string_list or callback
772 + . run-command: add stdin callback for parallelization
773 + . hook: allow specifying working directory for hooks
774 + . hook: allow parallel hook execution
775 + . run-command: allow stdin for run_processes_parallel
776 + . hook: support passing stdin to hooks
777 + . hook: replace find_hook() with hook_exists()
778 + . hook: add 'run' subcommand
779 + . parse-options: parse into strvec
780 + . hook: implement hookcmd.<name>.skip
781 + . hook: respect hook.runHookDir
782 + . hook: include hookdir hook in list
783 + . hook: add list command
784 + . hook: scaffolding for git-hook subcommand
785 + . doc: propose hooks managed by the config
786 +
787 + Now replaced by es/config-hooks topic.