What's cooking (2021/08 #03)

Junio C Hamano committed Aug 6, 2021 at 16:11 UTC 872951c1f0ca75ca5bdb42b911b6376fd154f929
1 file changed +315 -352
whats-cooking.txt
+315 -352
@@ -1,9 +1,9 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Aug 2021, #02; Tue, 3)
3 -X-master-at: 66262451ec94d30ac4b80eb3123549cf7a788afd
4 -X-next-at: a027d43cca25f39e7d37f671db37ed5e34a42f4d
2 +Subject: What's cooking in git.git (Aug 2021, #03; Fri, 6)
3 +X-master-at: 2d755dfac9aadab25c3e025b849252b8c0a61465
4 +X-next-at: 0d66db33f37daf054bbe20901c0ccadbc4558854
5
6 -What's cooking in git.git (Aug 2021, #02; Tue, 3)
6 +What's cooking in git.git (Aug 2021, #03; Fri, 6)
7 --------------------------------------------------
8
9 Here are the topics that have been cooking in my tree. Commits
@@ -17,7 +17,11 @@ useful"). Do not read too much into a topic being in (or not in)
17 'seen'. The ones marked with '.' do not appear in any of the
18 integration branches, but I am still holding onto them.
19
20 -A preview release Git 2.33-rc0 has been tagged.
20 +Git 2.33-rc1 has been tagged. The much less invasive "shopt -u
21 +checkwinsize" approach will be used to address the COLUMNS issue at
22 +least for the final release. I do not know what we want to do with
23 +the "log -m" means "log -m -p" issue yet (we haven't heard from the
24 +other camp), so it is in a "broken" state in -rc1.
25
26 Copies of the source code to Git live in many repositories, and the
27 following is a list of the ones I push into or their mirrors. Some
@@ -50,120 +54,186 @@ Release tarballs are available at:
54 --------------------------------------------------
55 [Graduated to 'master']
56
53 -* ab/bundle-tests (2021-07-22) 2 commits
54 - (merged to 'next' on 2021-07-22 at 053b5d0ecf)
55 - + bundle tests: use test_cmp instead of grep
56 - + bundle tests: use ">file" not ": >file"
57 +* ab/getcwd-test (2021-07-30) 1 commit
58 + (merged to 'next' on 2021-08-02 at 22ecd02929)
59 + + t0001: fix broken not-quite getcwd(3) test in bed67874e2
60
58 - "git bundle" gained more test coverage.
61 + Portability test update.
62
63
61 -* fc/pull-no-rebase-merges-theirs-into-ours (2021-07-21) 1 commit
62 - (merged to 'next' on 2021-07-28 at f8e6567082)
63 - + doc: pull: fix rebase=false documentation
64 +* ab/pickaxe-pcre2 (2021-08-04) 1 commit
65 + (merged to 'next' on 2021-08-05 at 2c90b51f76)
66 + + diff: --pickaxe-all typofix
67
65 - Documentation fix for "git pull --rebase=no".
68 + Documentation update.
69
70
68 -* jk/check-pack-valid-before-opening-bitmap (2021-07-23) 1 commit
69 - (merged to 'next' on 2021-07-28 at 98d5b4dc68)
70 - + pack-bitmap: check pack validity when opening bitmap
71 +* ab/update-submitting-patches (2021-07-22) 2 commits
72 + (merged to 'next' on 2021-07-30 at 9ae2de7f7a)
73 + + SubmittingPatches: replace discussion of Travis with GitHub Actions
74 + + SubmittingPatches: move discussion of Signed-off-by above "send"
75
72 - A race between repacking and using pack bitmaps has been corrected.
76 + Reorganize and update the SubmitingPatches document.
77
78
75 -* jk/config-env-doc (2021-07-20) 3 commits
76 - (merged to 'next' on 2021-07-22 at 45616c831e)
77 - + doc/git-config: simplify "override" advice for FILES section
78 - + doc/git-config: clarify GIT_CONFIG environment variable
79 - + doc/git-config: explain --file instead of referring to GIT_CONFIG
79 +* ah/plugleaks (2021-07-26) 12 commits
80 + (merged to 'next' on 2021-07-28 at fa15f6d1f4)
81 + + reset: clear_unpack_trees_porcelain to plug leak
82 + + builtin/rebase: fix options.strategy memory lifecycle
83 + + builtin/merge: free found_ref when done
84 + + builtin/mv: free or UNLEAK multiple pointers at end of cmd_mv
85 + + convert: release strbuf to avoid leak
86 + + read-cache: call diff_setup_done to avoid leak
87 + + ref-filter: also free head for ATOM_HEAD to avoid leak
88 + + diffcore-rename: move old_dir/new_dir definition to plug leak
89 + + builtin/for-each-repo: remove unnecessary argv copy to plug leak
90 + + builtin/submodule--helper: release unused strbuf to avoid leak
91 + + environment: move strbuf into block to plug leak
92 + + fmt-merge-msg: free newly allocated temporary strings when done
93
81 - Documentation around GIT_CONFIG has been updated.
94 + Leak plugging.
95
96
84 -* js/ci-check-whitespace-updates (2021-07-14) 2 commits
85 - (merged to 'next' on 2021-07-22 at cdc9aa0622)
86 - + ci(check-whitespace): restrict to the intended commits
87 - + ci(check-whitespace): stop requiring a read/write token
97 +* ar/doc-markup-fix (2021-07-30) 1 commit
98 + (merged to 'next' on 2021-08-02 at b99073fa75)
99 + + Documentation: render special characters correctly
100
89 - CI update.
101 + Doc mark-up fix.
102
103
92 -* jt/bulk-prefetch (2021-07-23) 2 commits
93 - (merged to 'next' on 2021-07-28 at 26e28cab21)
94 - + cache-tree: prefetch in partial clone read-tree
95 - + unpack-trees: refactor prefetching code
104 +* ar/submodule-add (2021-07-26) 5 commits
105 + (merged to 'next' on 2021-07-28 at 7d315a0f67)
106 + + submodule: drop unused sm_name parameter from show_fetch_remotes()
107 + (merged to 'next' on 2021-07-22 at b8b636c9a1)
108 + + submodule--helper: introduce add-clone subcommand
109 + + submodule--helper: refactor module_clone()
110 + + submodule: prefix die messages with 'fatal'
111 + + t7400: test failure to add submodule in tracked path
112 + (this branch is used by ar/submodule-add-config.)
113
97 - "git read-tree" had a codepath where blobs are fetched one-by-one
98 - from the promisor remote, which has been corrected to fetch in bulk.
114 + Rewrite of "git submodule" in C continues.
115
116
101 -* pb/submodule-recurse-doc (2021-07-20) 1 commit
102 - (merged to 'next' on 2021-07-22 at 4129e89833)
103 - + doc: clarify description of 'submodule.recurse'
117 +* cb/t7508-regexp-fix (2021-08-02) 1 commit
118 + (merged to 'next' on 2021-08-04 at 87e2b70ba1)
119 + + t7508: avoid non POSIX BRE
120
105 - Doc update.
121 + Test fix.
122 +
123 +
124 +* ds/commit-and-checkout-with-sparse-index (2021-07-20) 7 commits
125 + (merged to 'next' on 2021-07-30 at 52ed1b0091)
126 + + unpack-trees: resolve sparse-directory/file conflicts
127 + + t1092: document bad 'git checkout' behavior
128 + + checkout: stop expanding sparse indexes
129 + + sparse-index: recompute cache-tree
130 + + commit: integrate with sparse-index
131 + + p2000: compress repo names
132 + + p2000: add 'git checkout -' test and decrease depth
133 + (this branch is used by ds/add-with-sparse-index.)
134 +
135 + "git checkout" and "git commit" learn to work without unnecessarily
136 + expanding sparse indexes.
137 +
138 +
139 +* en/ort-perf-batch-14 (2021-07-20) 7 commits
140 + (merged to 'next' on 2021-07-30 at 89cfdc4513)
141 + + merge-ort: restart merge with cached renames to reduce process entry cost
142 + + merge-ort: avoid recursing into directories when we don't need to
143 + + merge-ort: defer recursing into directories when merge base is matched
144 + + merge-ort: add a handle_deferred_entries() helper function
145 + + merge-ort: add data structures for allowable trivial directory resolves
146 + + merge-ort: add some more explanations in collect_merge_info_callback()
147 + + merge-ort: resolve paths early when we have sufficient information
148 + (this branch is used by en/ort-perf-batch-15.)
149 +
150 + Further optimization on "merge -sort" backend.
151 +
152 +
153 +* pb/merge-autostash-more (2021-07-23) 4 commits
154 + (merged to 'next' on 2021-07-30 at bfc8b41932)
155 + + merge: apply autostash if merge strategy fails
156 + + merge: apply autostash if fast-forward fails
157 + + Documentation: define 'MERGE_AUTOSTASH'
158 + + merge: add missing word "strategy" to a message
159 +
160 + The local changes stashed by "git merge --autostash" were lost when
161 + the merge failed in certain ways, which has been corrected.
162
163
108 -* ps/perf-with-separate-output-directory (2021-07-02) 1 commit
109 - (merged to 'next' on 2021-07-22 at af51ca0a39)
110 - + perf: fix when running with TEST_OUTPUT_DIRECTORY
164 +* rs/use-fspathhash (2021-07-30) 1 commit
165 + (merged to 'next' on 2021-08-02 at 72c388e867)
166 + + use fspathhash() everywhere
167
112 - Test update.
168 + Code simplification.
169
170
115 -* tb/bitmap-type-filter-comment-fix (2021-07-20) 1 commit
116 - (merged to 'next' on 2021-07-22 at 8428556149)
117 - + pack-bitmap: clarify comment in filter_bitmap_exclude_type()
171 +* tb/mingw-rmdir-symlink-to-directory (2021-08-02) 1 commit
172 + (merged to 'next' on 2021-08-03 at a027d43cca)
173 + + mingw: align symlinks-related rmdir() behavior with Linux
174
119 - In-code comment update.
175 + Windows rmdir() equivalent behaves differently from POSIX ones in
176 + that when used on a symbolic link that points at a directory, the
177 + target directory gets removed, which has been corrected.
178
179 --------------------------------------------------
180 [New Topics]
181
124 -* ab/test-columns (2021-08-02) 3 commits
125 - - test-lib.sh: use GIT_TEST_COLUMNS over COLUMNS
126 - - test-lib-functions.sh: add a test_with_columns function
127 - - test-lib-functions.sh: rename test_must_fail_acceptable()
182 +* ps/fetch-pack-load-refs-optim (2021-08-04) 1 commit
183 + - fetch-pack: speed up loading of refs via commit graph
184
185 + Loading of ref tips to prepare for common ancestry negotiation in
186 + "git fetch-pack" has been optimized by taking advantage of the
187 + commit graph when available.
188
130 -* cb/reftable-fixup (2021-08-02) 3 commits
131 - - openbsd: allow reftable building with zlib 1.2.3
132 - - reftable: clarify zlib version dependency
133 - - fixup! Provide zlib's uncompress2 from compat/zlib-compat.c
134 - (this branch uses hn/reftable.)
189 + Will merge to 'next'.
190
191
137 -* cb/t7508-regexp-fix (2021-08-02) 1 commit
138 - - t7508: avoid non POSIX BRE
192 +* ps/connectivity-optim (2021-08-05) 6 commits
193 + - revision: avoid hitting packfiles when commits are in commit-graph
194 + - commit-graph: split out function to search commit position
195 + - revision: avoid loading object headers multiple times
196 + - revision: stop retrieving reference twice
197 + - connected: do not sort input revisions
198 + - revision: separate walk and unsorted flags
199
200 + The revision traversal API has been optimized by taking advanrage
201 + of the commit-graph, when available, to determine if a commit is
202 + reachable from any of the existing refs.
203
141 -* en/merge-strategy-docs (2021-08-03) 10 commits
142 - - Update error message and code comment
143 - - merge-strategies.txt: add coverage of the `ort` merge strategy
144 - - git-rebase.txt: correct out-of-date and misleading text about renames
145 - - merge-strategies.txt: fix simple capitalization error
146 - - merge-strategies.txt: avoid giving special preference to patience algorithm
147 - - merge-strategies.txt: do not imply using copy detection is desired
148 - - merge-strategies.txt: update wording for the resolve strategy
149 - - Documentation: edit awkward references to `git merge-recursive`
150 - - directory-rename-detection.txt: small updates due to merge-ort optimizations
151 - - git-rebase.txt: correct antiquated claims about --rebase-merges
152 - (this branch is used by en/ort-becomes-the-default.)
204 + Looking good.
205
206
155 -* en/ort-becomes-the-default (2021-08-03) 2 commits
156 - - Change default merge backend from recursive to ort
157 - - Update docs for change of default merge backend
158 - (this branch uses en/merge-strategy-docs.)
207 +* ar/submodule-add-more (2021-08-06) 9 commits
208 + - submodule--helper: remove resolve-relative-url subcommand
209 + - submodule--helper: remove add-config subcommand
210 + - submodule--helper: remove add-clone subcommand
211 + - submodule--helper: convert the bulk of cmd_add() to C
212 + - dir: libify and export helper functions from clone.c
213 + - submodule--helper: remove repeated code in sync_submodule()
214 + - submodule--helper: refactor resolve_relative_url() helper
215 + - submodule--helper: add options for compute_submodule_clone_url()
216 + - Merge branch 'ar/submodule-add-config' into ar/submodule-add
217 + (this branch uses ar/submodule-add-config.)
218
219 + More parts of "git submoudle add" has been rewritten in C.
220
161 -* js/log-protocol-version (2021-08-03) 1 commit
162 - - connect, protocol: log negotiated protocol version
221
222 +* cb/makefile-apple-clang (2021-08-06) 3 commits
223 + - build: catch clang that identifies itself as "$VENDOR clang"
224 + - build: clang version may not be followed by extra words
225 + - build: update detect-compiler for newer Xcode version
226
165 -* ow/clone-bare-origin (2021-08-03) 1 commit
166 - - clone: Allow combining --bare and --origin
227 + Build update.
228 +
229 +
230 +* jk/refs-files-cleanup-cleanup (2021-08-06) 1 commit
231 + - refs: drop unused "flags" parameter to lock_ref_oid_basic()
232 + (this branch uses ab/refs-files-cleanup.)
233 +
234 + Code cleanup.
235 +
236 + Will merge to 'next'.
237
238 --------------------------------------------------
239 [Stalled]
@@ -246,42 +316,61 @@ Release tarballs are available at:
316 --------------------------------------------------
317 [Cooking]
318
249 -* tb/mingw-rmdir-symlink-to-directory (2021-08-02) 1 commit
250 - (merged to 'next' on 2021-08-03 at a027d43cca)
251 - + mingw: align symlinks-related rmdir() behavior with Linux
319 +* cb/reftable-fixup (2021-08-02) 3 commits
320 + - openbsd: allow reftable building with zlib 1.2.3
321 + - reftable: clarify zlib version dependency
322 + - fixup! Provide zlib's uncompress2 from compat/zlib-compat.c
323 + (this branch uses hn/reftable.)
324
253 - Windows rmdir() equivalent behaves differently from POSIX ones in
254 - that when used on a symbolic link that points at a directory, the
255 - target directory gets removed, which has been corrected.
325 + Fixes to another topic.
326
257 - Will merge to 'master'.
327 + Will discard after they are picked up by the target topic.
328
329
260 -* ab/getcwd-test (2021-07-30) 1 commit
261 - (merged to 'next' on 2021-08-02 at 22ecd02929)
262 - + t0001: fix broken not-quite getcwd(3) test in bed67874e2
330 +* en/merge-strategy-docs (2021-08-05) 10 commits
331 + - Update error message and code comment
332 + - merge-strategies.txt: add coverage of the `ort` merge strategy
333 + - git-rebase.txt: correct out-of-date and misleading text about renames
334 + - merge-strategies.txt: fix simple capitalization error
335 + - merge-strategies.txt: avoid giving special preference to patience algorithm
336 + - merge-strategies.txt: do not imply using copy detection is desired
337 + - merge-strategies.txt: update wording for the resolve strategy
338 + - Documentation: edit awkward references to `git merge-recursive`
339 + - directory-rename-detection.txt: small updates due to merge-ort optimizations
340 + - git-rebase.txt: correct antiquated claims about --rebase-merges
341 + (this branch is used by en/ort-becomes-the-default.)
342
264 - Portability test update.
343 + Documentation updates.
344
266 - Will merge to 'master'.
345 + Expecting a (hopefully final) reroll.
346
347
269 -* ar/doc-markup-fix (2021-07-30) 1 commit
270 - (merged to 'next' on 2021-08-02 at b99073fa75)
271 - + Documentation: render special characters correctly
348 +* en/ort-becomes-the-default (2021-08-05) 2 commits
349 + - Update docs for change of default merge backend
350 + - Change default merge backend from recursive to ort
351 + (this branch uses en/merge-strategy-docs.)
352
273 - Doc mark-up fix.
353 + Use `ort` instead of `recursive` as the default merge strategy.
354
275 - Will merge to 'master'.
355 + Waiting for the base topic to settle.
356
357
278 -* rs/use-fspathhash (2021-07-30) 1 commit
279 - (merged to 'next' on 2021-08-02 at 72c388e867)
280 - + use fspathhash() everywhere
358 +* js/log-protocol-version (2021-08-03) 1 commit
359 + - connect, protocol: log negotiated protocol version
360
282 - Code simplification.
361 + Debugging aid.
362 +
363 + Expecting a reroll.
364 +
365 +
366 +* ow/clone-bare-origin (2021-08-03) 1 commit
367 + - clone: Allow combining --bare and --origin
368 +
369 + "git clone" did not like to take "--bare" and "--origin=X" at the
370 + same time; loosen the restriction.
371
284 - Will merge to 'master'.
372 + Under discussion. This may require some follow-on work.
373 + cf. <20210802174944.53745-1-oystwa@gmail.com>
374
375
376 * jc/bisect-sans-show-branch (2021-07-28) 2 commits
@@ -322,10 +411,11 @@ Release tarballs are available at:
411 Will cook in 'next'.
412
413
325 -* ab/lib-subtest (2021-07-21) 10 commits
414 +* ab/lib-subtest (2021-08-05) 11 commits
415 - test-lib tests: assert 1 exit code, not non-zero
416 - test-lib tests: refactor common part of check_sub_test_lib_test*()
417 - test-lib tests: avoid subshell for "test_cmp" for readability
418 + - test-lib tests: assert no copy/pasted mock test code
419 - test-lib tests: get rid of copy/pasted mock test code
420 - test-lib tests: don't provide a description for the sub-tests
421 - test-lib tests: stop using a subshell in write_sub_test_lib_test()
@@ -344,7 +434,6 @@ Release tarballs are available at:
434 + pathspec: stop calling ensure_full_index
435 + add: allow operating on a sparse-only index
436 + t1092: test merge conflicts outside cone
347 - (this branch uses ds/commit-and-checkout-with-sparse-index.)
437
438 "git add" can work better with the sparse index.
439
@@ -364,7 +453,7 @@ Release tarballs are available at:
453 Further tweaks on progress API.
454
455
367 -* ab/progress-users-adjust-counters (2021-07-23) 3 commits
456 +* ab/progress-users-adjust-counters (2021-08-05) 3 commits
457 - entry: show finer-grained counter in "Filtering content" progress line
458 - midx: don't provide a total for QSORT() progress
459 - commit-graph: fix bogus counter in "Scanning merged commits" progress line
@@ -372,91 +461,57 @@ Release tarballs are available at:
461 The code to show progress indicator in a few codepaths did not
462 cover between 0-100%, which has been corrected.
463
375 - Waiting for a clarification.
376 - cf. <xmqqbl6slmer.fsf@gitster.g>
464
378 -
379 -* ar/submodule-add-config (2021-07-28) 1 commit
465 +* ar/submodule-add-config (2021-08-05) 1 commit
466 - submodule--helper: introduce add-config subcommand
381 - (this branch uses ar/submodule-add.)
467 + (this branch is used by ar/submodule-add-more.)
468
469 Large part of "git submodule add" gets rewritten in C.
470
471
472 * en/ort-perf-batch-15 (2021-08-03) 9 commits
387 - - merge-ort: remove compile-time ability to turn off usage of memory pools
388 - - merge-ort: reuse path strings in pool_alloc_filespec
389 - - merge-ort: store filepairs and filespecs in our mem_pool
390 - - diffcore-rename, merge-ort: add wrapper functions for filepair alloc/dealloc
391 - - merge-ort: switch our strmaps over to using memory pools
392 - - merge-ort: set up a memory pool
393 - - merge-ort: add pool_alloc, pool_calloc, and pool_strndup wrappers
394 - - diffcore-rename: use a mem_pool for exact rename detection's hashmap
395 - - merge-ort: rename str{map,intmap,set}_func()
396 - (this branch uses en/ort-perf-batch-14.)
473 + (merged to 'next' on 2021-08-04 at 87fc290e71)
474 + + merge-ort: remove compile-time ability to turn off usage of memory pools
475 + + merge-ort: reuse path strings in pool_alloc_filespec
476 + + merge-ort: store filepairs and filespecs in our mem_pool
477 + + diffcore-rename, merge-ort: add wrapper functions for filepair alloc/dealloc
478 + + merge-ort: switch our strmaps over to using memory pools
479 + + merge-ort: set up a memory pool
480 + + merge-ort: add pool_alloc, pool_calloc, and pool_strndup wrappers
481 + + diffcore-rename: use a mem_pool for exact rename detection's hashmap
482 + + merge-ort: rename str{map,intmap,set}_func()
483
484 Final batch for "merge -sort" optimization.
485
400 - Will merge to 'next'.
401 -
402 -
403 -* pb/merge-autostash-more (2021-07-23) 4 commits
404 - (merged to 'next' on 2021-07-30 at bfc8b41932)
405 - + merge: apply autostash if merge strategy fails
406 - + merge: apply autostash if fast-forward fails
407 - + Documentation: define 'MERGE_AUTOSTASH'
408 - + merge: add missing word "strategy" to a message
409 -
410 - The local changes stashed by "git merge --autostash" were lost when
411 - the merge failed in certain ways, which has been corrected.
412 -
413 - Will merge to 'master'.
414 -
415 -
416 -* ah/plugleaks (2021-07-26) 12 commits
417 - (merged to 'next' on 2021-07-28 at fa15f6d1f4)
418 - + reset: clear_unpack_trees_porcelain to plug leak
419 - + builtin/rebase: fix options.strategy memory lifecycle
420 - + builtin/merge: free found_ref when done
421 - + builtin/mv: free or UNLEAK multiple pointers at end of cmd_mv
422 - + convert: release strbuf to avoid leak
423 - + read-cache: call diff_setup_done to avoid leak
424 - + ref-filter: also free head for ATOM_HEAD to avoid leak
425 - + diffcore-rename: move old_dir/new_dir definition to plug leak
426 - + builtin/for-each-repo: remove unnecessary argv copy to plug leak
427 - + builtin/submodule--helper: release unused strbuf to avoid leak
428 - + environment: move strbuf into block to plug leak
429 - + fmt-merge-msg: free newly allocated temporary strings when done
430 -
431 - Leak plugging.
432 -
433 - Will merge to 'master'.
486 + Will cook in 'next'.
487
488
489 * js/expand-runtime-prefix (2021-07-26) 6 commits
437 - - expand_user_path: allow in-flight topics to keep using the old name
438 - - interpolate_path(): allow specifying paths relative to the runtime prefix
439 - - Use a better name for the function interpolating paths
440 - - expand_user_path(): clarify the role of the `real_home` parameter
441 - - expand_user_path(): remove stale part of the comment
442 - - tests: exercise the RUNTIME_PREFIX feature
490 + (merged to 'next' on 2021-08-04 at b95a81a004)
491 + + expand_user_path: allow in-flight topics to keep using the old name
492 + + interpolate_path(): allow specifying paths relative to the runtime prefix
493 + + Use a better name for the function interpolating paths
494 + + expand_user_path(): clarify the role of the `real_home` parameter
495 + + expand_user_path(): remove stale part of the comment
496 + + tests: exercise the RUNTIME_PREFIX feature
497
498 Pathname expansion (like "~username/") learned a way to specify a
499 location relative to Git installation (e.g. its $sharedir which is
500 $(prefix)/share), with "%(prefix)".
501
448 - Will merge to 'next'.
502 + Will cook in 'next'.
503
504
505 * zh/cherry-pick-help-is-only-for-sequencer (2021-08-03) 2 commits
452 - - cherry-pick: use better advice message
453 - - cherry-pick: fix bug when used with GIT_CHERRY_PICK_HELP
506 + (merged to 'next' on 2021-08-04 at 9ea14ed106)
507 + + cherry-pick: use better advice message
508 + + cherry-pick: fix bug when used with GIT_CHERRY_PICK_HELP
509
510 "git cherry-pick" loses its state file when a stray
511 GIT_CHERRY_PICK_HELP environment is present, which has been
512 corrected.
513
459 - Will merge to 'next'.
514 + Will cook in 'next'.
515
516
517 * dt/submodule-diff-fixes (2021-08-02) 3 commits
@@ -468,7 +523,8 @@ Release tarballs are available at:
523 trying to run diff inside a submodule, when the user manually
524 removes the submodule directory.
525
471 - Comments?
526 + Seems to break CI when merged to 'seen'
527 + cf. https://github.com/git/git/runs/3259477809?check_suite_focus=true#step:4:2618
528
529
530 * fs/ssh-signing (2021-08-03) 9 commits
@@ -488,22 +544,23 @@ Release tarballs are available at:
544
545
546 * hn/refs-test-cleanup (2021-08-02) 11 commits
491 - - t6001: avoid direct file system access
492 - - t6500: use "ls -1" to snapshot ref database state
493 - - t7064: use update-ref -d to remove upstream branch
494 - - t1410: mark test as REFFILES
495 - - t1405: mark test for 'git pack-refs' as REFFILES
496 - - t1405: use 'git reflog exists' to check reflog existence
497 - - t2402: use ref-store test helper to create broken symlink
498 - - t3320: use git-symbolic-ref rather than filesystem access
499 - - t6120: use git-update-ref rather than filesystem access
500 - - t1503: mark symlink test as REFFILES
501 - - t6050: use git-update-ref rather than filesystem access
547 + (merged to 'next' on 2021-08-04 at 5651c32f4b)
548 + + t6001: avoid direct file system access
549 + + t6500: use "ls -1" to snapshot ref database state
550 + + t7064: use update-ref -d to remove upstream branch
551 + + t1410: mark test as REFFILES
552 + + t1405: mark test for 'git pack-refs' as REFFILES
553 + + t1405: use 'git reflog exists' to check reflog existence
554 + + t2402: use ref-store test helper to create broken symlink
555 + + t3320: use git-symbolic-ref rather than filesystem access
556 + + t6120: use git-update-ref rather than filesystem access
557 + + t1503: mark symlink test as REFFILES
558 + + t6050: use git-update-ref rather than filesystem access
559
560 A handful of tests that assumed implementation details of files
561 backend for refs have been cleaned up.
562
506 - Will merge to 'next'.
563 + Will cook in 'next'.
564
565
566 * hn/reftable (2021-07-20) 26 commits
@@ -538,23 +595,25 @@ Release tarballs are available at:
595 The "reftable" backend for the refs API.
596
597 Seems to break CI jobs in 'seen'.
598 + cf. https://github.com/git/git/runs/3257622953?check_suite_focus=true#step:4:1685
599
600
601 * ab/refs-files-cleanup (2021-08-02) 11 commits
544 - - refs/files: remove unused "errno != ENOTDIR" condition
545 - - refs/files: remove unused "errno == EISDIR" code
546 - - refs/files: remove unused "oid" in lock_ref_oid_basic()
547 - - reflog expire: don't lock reflogs using previously seen OID
548 - - refs/files: add a comment about refs_reflog_exists() call
549 - - refs: make repo_dwim_log() accept a NULL oid
550 - - refs/debug: re-indent argument list for "prepare"
551 - - refs/files: remove unused "skip" in lock_raw_ref() too
552 - - refs/files: remove unused "extras/skip" in lock_ref_oid_basic()
553 - - refs/files: remove unused REF_DELETING in lock_ref_oid_basic()
554 - - refs/packet: add missing BUG() invocations to reflog callbacks
555 - (this branch is used by hn/refs-errno-cleanup.)
602 + (merged to 'next' on 2021-08-04 at 8ca0ef1b6e)
603 + + refs/files: remove unused "errno != ENOTDIR" condition
604 + + refs/files: remove unused "errno == EISDIR" code
605 + + refs/files: remove unused "oid" in lock_ref_oid_basic()
606 + + reflog expire: don't lock reflogs using previously seen OID
607 + + refs/files: add a comment about refs_reflog_exists() call
608 + + refs: make repo_dwim_log() accept a NULL oid
609 + + refs/debug: re-indent argument list for "prepare"
610 + + refs/files: remove unused "skip" in lock_raw_ref() too
611 + + refs/files: remove unused "extras/skip" in lock_ref_oid_basic()
612 + + refs/files: remove unused REF_DELETING in lock_ref_oid_basic()
613 + + refs/packet: add missing BUG() invocations to reflog callbacks
614 + (this branch is used by hn/refs-errno-cleanup and jk/refs-files-cleanup-cleanup.)
615
557 - Will merge to 'next'.
616 + Will cook in 'next'.
617
618
619 * en/pull-conflicting-options (2021-07-22) 8 commits
@@ -585,22 +644,6 @@ Release tarballs are available at:
644 cf. <bf1893ee-6973-d8b2-659e-bb239a0a9ae2@gmail.com>
645
646
588 -* en/ort-perf-batch-14 (2021-07-20) 7 commits
589 - (merged to 'next' on 2021-07-30 at 89cfdc4513)
590 - + merge-ort: restart merge with cached renames to reduce process entry cost
591 - + merge-ort: avoid recursing into directories when we don't need to
592 - + merge-ort: defer recursing into directories when merge base is matched
593 - + merge-ort: add a handle_deferred_entries() helper function
594 - + merge-ort: add data structures for allowable trivial directory resolves
595 - + merge-ort: add some more explanations in collect_merge_info_callback()
596 - + merge-ort: resolve paths early when we have sufficient information
597 - (this branch is used by en/ort-perf-batch-15.)
598 -
599 - Further optimization on "merge -sort" backend.
600 -
601 - Will merge to 'master'.
602 -
603 -
647 * cf/fetch-set-upstream-while-detached (2021-07-06) 1 commit
648 - fetch: fix segfault on --set-upstream while on a detached HEAD
649
@@ -612,41 +655,26 @@ Release tarballs are available at:
655
656
657 * ab/bundle-doc (2021-08-02) 4 commits
615 - - bundle doc: replace "basis" with "prerequsite(s)"
616 - - bundle doc: elaborate on rev<->ref restriction
617 - - bundle doc: elaborate on object prerequisites
618 - - bundle doc: rewrite the "DESCRIPTION" section
658 + (merged to 'next' on 2021-08-04 at b3b3b0fa98)
659 + + bundle doc: replace "basis" with "prerequsite(s)"
660 + + bundle doc: elaborate on rev<->ref restriction
661 + + bundle doc: elaborate on object prerequisites
662 + + bundle doc: rewrite the "DESCRIPTION" section
663
664 Doc update.
665
622 - Will merge to 'next'.
666 + Will cook in 'next'.
667
668
669 * ab/pack-stdin-packs-fix (2021-07-09) 2 commits
626 - - pack-objects: fix segfault in --stdin-packs option
627 - - pack-objects tests: cover blindspots in stdin handling
670 + (merged to 'next' on 2021-08-04 at f464b74a6f)
671 + + pack-objects: fix segfault in --stdin-packs option
672 + + pack-objects tests: cover blindspots in stdin handling
673
674 Input validation of "git pack-objects --stdin-packs" has been
675 corrected.
676
632 - Will merge to 'next'.
633 -
634 -
635 -* ds/commit-and-checkout-with-sparse-index (2021-07-20) 7 commits
636 - (merged to 'next' on 2021-07-30 at 52ed1b0091)
637 - + unpack-trees: resolve sparse-directory/file conflicts
638 - + t1092: document bad 'git checkout' behavior
639 - + checkout: stop expanding sparse indexes
640 - + sparse-index: recompute cache-tree
641 - + commit: integrate with sparse-index
642 - + p2000: compress repo names
643 - + p2000: add 'git checkout -' test and decrease depth
644 - (this branch is used by ds/add-with-sparse-index.)
645 -
646 - "git checkout" and "git commit" learn to work without unnecessarily
647 - expanding sparse indexes.
648 -
649 - Will merge to 'master'.
677 + Will cook in 'next'.
678
679
680 * jt/push-negotiation-fixes (2021-07-15) 3 commits
@@ -660,9 +688,9 @@ Release tarballs are available at:
688 Needs review.
689
690
663 -* ab/make-tags-cleanup (2021-07-22) 5 commits
691 +* ab/make-tags-cleanup (2021-08-05) 5 commits
692 - Makefile: normalize clobbering & xargs for tags targets
665 - - Makefile: the "cscope" target always creates a "cscope.out"
693 + - Makefile: remove "cscope.out", not "cscope*" in cscope.out target
694 - Makefile: don't use "FORCE" for tags targets
695 - Makefile: add QUIET_GEN to "cscope" target
696 - Makefile: move ".PHONY: cscope" near its target
@@ -752,16 +780,13 @@ Release tarballs are available at:
780 Waiting for reviews.
781
782
755 -* ab/serve-cleanup (2021-08-03) 13 commits
756 - - fixup! {upload,receive}-pack tests: add --advertise-refs tests
757 - - serve.[ch]: don't pass "struct strvec *keys" to commands
758 - - upload-pack.c: convert to new serve.c "startup" config cb
783 +* ab/serve-cleanup (2021-08-05) 10 commits
784 - upload-pack: document and rename --advertise-refs
760 - - {upload,receive}-pack tests: add --advertise-refs tests
785 - serve.[ch]: remove "serve_options", split up --advertise-refs code
786 + - {upload,receive}-pack tests: add --advertise-refs tests
787 - serve.c: move version line to advertise_capabilities()
763 - - serve: add support for a "startup" git_config() callback
764 - - serve.c: add call_{advertise,command}() indirection
788 + - serve: move transfer.advertiseSID check into session_id_advertise()
789 + - serve.[ch]: don't pass "struct strvec *keys" to commands
790 - serve: use designated initializers
791 - transport: use designated initializers
792 - transport: rename "fetch" in transport_vtable to "fetch_refs"
@@ -769,41 +794,47 @@ Release tarballs are available at:
794
795 Code clean-up around "git serve".
796
797 + Expecting a reroll.
798 +
799
773 -* pw/diff-color-moved-fix (2021-07-20) 12 commits
774 - - diff --color-moved: intern strings
775 - - diff: use designated initializers for emitted_diff_symbol
776 - - diff --color-moved-ws=allow-indentation-change: improve hash lookups
777 - - diff --color-moved: stop clearing potential moved blocks
778 - - diff --color-moved: shrink potential moved blocks as we go
779 - - diff --color-moved: unify moved block growth functions
780 - - diff --color-moved: call comparison function directly
781 - - diff --color-moved-ws=allow-indentation-change: simplify and optimize
782 - - diff: simplify allow-indentation-change delta calculation
783 - - diff --color-moved: avoid false short line matches and bad zerba coloring
784 - - diff --color-moved=zebra: fix alternate coloring
785 - - diff --color-moved: add perf tests
800 +* pw/diff-color-moved-fix (2021-08-05) 13 commits
801 + (merged to 'next' on 2021-08-05 at 7b5e312aac)
802 + + diff: drop unused options parameter from cmp_in_block_with_wsd()
803 + (merged to 'next' on 2021-08-04 at 4de4a451e0)
804 + + diff --color-moved: intern strings
805 + + diff: use designated initializers for emitted_diff_symbol
806 + + diff --color-moved-ws=allow-indentation-change: improve hash lookups
807 + + diff --color-moved: stop clearing potential moved blocks
808 + + diff --color-moved: shrink potential moved blocks as we go
809 + + diff --color-moved: unify moved block growth functions
810 + + diff --color-moved: call comparison function directly
811 + + diff --color-moved-ws=allow-indentation-change: simplify and optimize
812 + + diff: simplify allow-indentation-change delta calculation
813 + + diff --color-moved: avoid false short line matches and bad zerba coloring
814 + + diff --color-moved=zebra: fix alternate coloring
815 + + diff --color-moved: add perf tests
816
817 Long-overdue correctness and performance update to "diff
818 --color-moved" feature.
819
790 - Will merge to 'next'.
820 + Will cook in 'next'.
821
822
823 * hn/refs-errno-cleanup (2021-08-02) 7 commits
794 - - refs: make errno output explicit for refs_resolve_ref_unsafe
795 - - refs: explicitly return failure_errno from parse_loose_ref_contents
796 - - refs: add failure_errno to refs_read_raw_ref() signature
797 - - refs: make errno output explicit for read_raw_ref_fn
798 - - refs/files-backend: stop setting errno from lock_ref_oid_basic
799 - - refs: remove EINVAL errno output from specification of read_raw_ref_fn
800 - - refs file backend: move raceproof_create_file() here
824 + (merged to 'next' on 2021-08-04 at 7fe3c31e7f)
825 + + refs: make errno output explicit for refs_resolve_ref_unsafe
826 + + refs: explicitly return failure_errno from parse_loose_ref_contents
827 + + refs: add failure_errno to refs_read_raw_ref() signature
828 + + refs: make errno output explicit for read_raw_ref_fn
829 + + refs/files-backend: stop setting errno from lock_ref_oid_basic
830 + + refs: remove EINVAL errno output from specification of read_raw_ref_fn
831 + + refs file backend: move raceproof_create_file() here
832 (this branch uses ab/refs-files-cleanup.)
833
834 Futz with the way 'errno' is relied on in the refs API to carry the
835 failure modes up the callchain.
836
806 - Will merge to 'next'.
837 + Will cook in 'next'.
838
839
840 * ab/test-tool-cache-cleanup (2021-06-08) 4 commits
@@ -814,7 +845,7 @@ Release tarballs are available at:
845
846 Test code shuffling.
847
817 - Waiting for reviews.
848 + Expecting a reroll.
849
850
851 * ab/pack-objects-stdin (2021-07-09) 5 commits
@@ -826,45 +857,23 @@ Release tarballs are available at:
857
858 Introduce handle_stdin_line callback to revision API and uses it.
859
829 -
830 -* ar/submodule-add (2021-07-26) 5 commits
831 - (merged to 'next' on 2021-07-28 at 7d315a0f67)
832 - + submodule: drop unused sm_name parameter from show_fetch_remotes()
833 - (merged to 'next' on 2021-07-22 at b8b636c9a1)
834 - + submodule--helper: introduce add-clone subcommand
835 - + submodule--helper: refactor module_clone()
836 - + submodule: prefix die messages with 'fatal'
837 - + t7400: test failure to add submodule in tracked path
838 - (this branch is used by ar/submodule-add-config.)
839 -
840 - Rewrite of "git submodule" in C continues.
841 -
842 - Will merge to 'master'.
843 -
844 -
845 -* ab/update-submitting-patches (2021-07-22) 2 commits
846 - (merged to 'next' on 2021-07-30 at 9ae2de7f7a)
847 - + SubmittingPatches: replace discussion of Travis with GitHub Actions
848 - + SubmittingPatches: move discussion of Signed-off-by above "send"
849 -
850 - Reorganize and update the SubmitingPatches document.
851 -
852 - Will merge to 'master'.
860 + Waiting for reviews.
861
862
863 * zh/ref-filter-raw-data (2021-07-26) 6 commits
856 - - ref-filter: add %(rest) atom
857 - - ref-filter: use non-const ref_format in *_atom_parser()
858 - - ref-filter: --format=%(raw) support --perl
859 - - ref-filter: add %(raw) atom
860 - - ref-filter: add obj-type check in grab contents
861 - - Merge branch 'zh/cat-file-batch-fix' into zh/ref-filter-raw-data
864 + (merged to 'next' on 2021-08-04 at 4c4529d8d0)
865 + + ref-filter: add %(rest) atom
866 + + ref-filter: use non-const ref_format in *_atom_parser()
867 + + ref-filter: --format=%(raw) support --perl
868 + + ref-filter: add %(raw) atom
869 + + ref-filter: add obj-type check in grab contents
870 + + Merge branch 'zh/cat-file-batch-fix' into zh/ref-filter-raw-data
871
872 Prepare the "ref-filter" machinery that drives the "--format"
873 option of "git for-each-ref" and its friends to be used in "git
874 cat-file --batch".
875
867 - Will merge to 'next'.
876 + Will cook in 'next'.
877
878
879 * jh/builtin-fsmonitor (2021-07-12) 35 commits
@@ -911,13 +920,14 @@ Release tarballs are available at:
920
921
922 * es/trace2-log-parent-process-name (2021-07-22) 2 commits
914 - - tr2: log parent process name
915 - - tr2: make process info collection platform-generic
923 + (merged to 'next' on 2021-08-04 at 47e35c31b0)
924 + + tr2: log parent process name
925 + + tr2: make process info collection platform-generic
926
927 trace2 logs learned to show parent process name to see in what
928 context Git was invoked.
929
920 - Will merge to 'next'.
930 + Will cook in 'next'.
931
932
933 * ab/fsck-unexpected-type (2021-07-12) 21 commits
@@ -951,64 +961,17 @@ Release tarballs are available at:
961 --------------------------------------------------
962 [Discarded]
963
954 -* ab/doc-retire-alice-bob (2021-06-16) 6 commits
955 - . pack-protocol doc: use "www-data" in place of "alice"
956 - . doc: replace "alice" and "bob" with "jdoe" and "msmith"
957 - . fast-import doc: change "bob" in an example to "file.txt"
958 - . daemon doc + code comments: reword "alice" example
959 - . gitcvs-migration doc: replace "alice" and "bob" with "you" and "www-data"
960 - . gittutorial doc: replace "alice" and "bob" with "you" and "www-data"
961 -
962 - Documentation update to avoid Alice and Bob in contexts where Eve
963 - does not appear in.
964 -
965 - Will discard.
966 - Let's shelve this one for now, as it does not seem to solve any
967 - real problems (other than ceasing to use Alice and Bob in contexts
968 - that do not call for Eve).
969 -
970 -
971 -* hn/refs-test-cleanup-contd (2021-07-22) 11 commits
972 - (merged to 'next' on 2021-07-28 at dd3af04939)
973 - + t6001: avoid direct file system access
974 - + t6500: use "ls -1" to snapshot ref database state
975 - + t7064: use update-ref -d to remove upstream branch
976 - + t1410: mark test as REFFILES
977 - + t1405: mark test for 'git pack-refs' as REFFILES
978 - + t1405: use 'git reflog exists' to check reflog existence
979 - (merged to 'next' on 2021-07-22 at 2ab8bc259a)
980 - + t2402: use ref-store test helper to create broken symlink
981 - + t3320: use git-symbolic-ref rather than filesystem access
982 - + t6120: use git-update-ref rather than filesystem access
983 - + t1503: mark symlink test as REFFILES
984 - + t6050: use git-update-ref rather than filesystem access
985 -
986 - Absorbed by the hn/refs-test-cleanup topic.
964 +* ab/test-columns (2021-08-05) 3 commits
965 + - test-lib.sh: use GIT_TEST_COLUMNS over COLUMNS
966 + - test-lib-functions.sh: add a test_with_columns function
967 + - test-lib-functions.sh: rename test_must_fail_acceptable()
968
969 + Shells that adjust COLUMNS (e.g. bash with checkwinsize shell
970 + option), affect and break tests on progress meters and anything
971 + that depends on term_columns(). An test-only environment variable
972 + has been introduced as a workaround.
973
989 -* os/bisect-runs-show-branch-without-pager (2021-07-27) 1 commit
990 - - bisect: disable pager while invoking show-branch
974 + Seems too involved for a last-minute fix.
975 + cf. <20210804212825.GH23408@szeder.dev>
976
992 - When "git bisect" spawns "git show-branch" to pretty-print the
993 - title of the commit to be tested, it could have invoked user's
994 - pager if user configured to run pager while running show-branch.
995 - The invocation of show-branch has been changed to disable pager,
996 - even if one is configured.
977
998 - Will discard.
999 - This probably is unnecessary with the rewrite to get rid of the
1000 - show-branch invocation altogether.
1001 -
1002 -
1003 -* es/config-based-hooks (2021-07-20) 9 commits
1004 - - hook: implement hookcmd.<name>.skip
1005 - - hook: teach 'hookcmd' config to alias hook scripts
1006 - - hook: allow out-of-repo 'git hook' invocations
1007 - - hook: include hooks from the config
1008 - - hook: allow running non-native hooks
1009 - - hook: treat hookdir hook specially
1010 - - hook: introduce "git hook list"
1011 - - hook: allow parallel hook execution
1012 - - hook: run a list of hooks instead
1013 -
1014 - Discarded to give room for updated ab/config-based-hooks-base.