What's cooking (2025/08 #06)

Junio C Hamano committed Aug 13, 2025 at 08:45 UTC 2918aa0b9d5feb5e76c98a52cfdd3fc818cd560c
1 file changed +136 -91
whats-cooking.txt
+136 -91
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Aug 2025, #05; Mon, 11)
3 -X-master-at: 2c2ba49d55ff26c1082b8137b1ec5eeccb4337d1
4 -X-next-at: 924127e9c014b3ea7c2d50fa2a4da7e6f0b155c5
2 +Subject: What's cooking in git.git (Aug 2025, #06; Wed, 13)
3 +X-master-at: 724518f3884d8707c5f51428ba98c115818229b8
4 +X-next-at: cf9b8df8b4cc4af8ab40a5811e344fde74771729
5 Bcc: lwn@lwn.net, gitster@pobox.com
6
7 -What's cooking in git.git (Aug 2025, #05; Mon, 11)
7 +What's cooking in git.git (Aug 2025, #06; Wed, 13)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -17,6 +17,11 @@ topic without enough support may be discarded after a long period of
17 no activity (of course they can be resubmit when new interests
18 arise).
19
20 +Git 2.51-rc2 has been tagged. We have a few more working days
21 +until the final. Let's hope we will find and fix all regressions
22 +introduced during this cycle before then; if the number of them
23 +turns out to be 0, that would be even better ;-).
24 +
25 Copies of the source code to Git live in many repositories, and the
26 following is a list of the ones I push into or their mirrors. Some
27 repositories have only a subset of branches.
@@ -48,13 +53,35 @@ Release tarballs are available at:
53 --------------------------------------------------
54 [New Topics]
55
56 +* kr/clone-synopsis-fix (2025-08-11) 1 commit
57 + (merged to 'next' on 2025-08-13 at b0d634ef29)
58 + + docs: remove stray bracket from git-clone synopsis
59 +
60 + Doc fix.
61 +
62 + Will cook in 'next'.
63 + source: <pull.2023.v3.git.git.1754949872593.gitgitgadget@gmail.com>
64 +
65 +
66 +* dk/t7500-editor-updates (2025-08-12) 3 commits
67 + - t7005: sanitize test environment for subsequent tests
68 + - t7005: stop abusing --exec-path
69 + - t7005: use modern test style
70 +
71 + Test updates.
72 +
73 + Expecting a reroll.
74 + cf. <2250a8fd-62b8-4218-9858-23032d9c807d@gmail.com>
75 + source: <20250812170256.71751-1-ben.knoble+github@gmail.com>
76 +
77 +--------------------------------------------------
78 +[Graduated to 'master']
79 +
80 * rs/for-each-ref-start-after-marker-fix (2025-08-09) 1 commit
81 (merged to 'next' on 2025-08-09 at 44788822b0)
82 + for-each-ref: call --start-after argument "marker"
83
84 Hotfix.
56 -
57 - Will merge to 'master'.
85 source: <1a32a666-fcf4-4f05-a468-2afa07fa0e2d@web.de>
86
87
@@ -63,36 +90,44 @@ Release tarballs are available at:
90 + merge: don't document non-existing --compact-summary argument
91
92 Hotfix.
66 -
67 - Will merge to 'master'.
93 source: <890631d1-4e3e-4ea5-8f58-371fadf2b1b3@web.de>
94
95 +--------------------------------------------------
96 +[Cooking]
97
98 * ac/deglobal-fmt-merge-log-config (2025-08-10) 2 commits
72 - - builtin/fmt-merge-msg: stop depending on 'the_repository'
73 - - environment: remove the global variable 'merge_log_config'
99 + (merged to 'next' on 2025-08-13 at c6c74fb8f0)
100 + + builtin/fmt-merge-msg: stop depending on 'the_repository'
101 + + environment: remove the global variable 'merge_log_config'
102 +
103 + Code clean-up.
104
105 + Will cook in 'next'.
106 source: <cover.1754868681.git.ayu.chandekar@gmail.com>
107
108
109 * jc/longer-disambiguation-fix (2025-08-11) 1 commit
79 - - abbrev: allow extending beyond 20 chars to disambiguate
110 + - abbrev: allow extending beyond 32 chars to disambiguate
111 +
112 + "git rev-parse --short" and friends failed to disambiguate two
113 + objects with object names that share common prefix longer than 32
114 + characters.
115
116 + Comments?
117 source: <xmqqzfc51xvk.fsf@gitster.g>
118
83 ---------------------------------------------------
84 -[Cooking]
119
120 * dl/push-missing-object-error (2025-08-08) 3 commits
87 - - remote.c: convert if-else ladder to switch
88 - - remote.c: remove BUG in show_push_unqualified_ref_name_error()
89 - - t5516: remove surrounding empty lines in test bodies
121 + (merged to 'next' on 2025-08-11 at ad69d77794)
122 + + remote.c: convert if-else ladder to switch
123 + + remote.c: remove BUG in show_push_unqualified_ref_name_error()
124 + + t5516: remove surrounding empty lines in test bodies
125
126 "git push" had a code path that led to BUG() but it should have
127 been a die(), as it is a response to a usual but invalid end-user
128 action to attempt pushing an object that does not exist.
129
95 - Will merge to 'next'.
130 + Will cook in 'next'.
131 cf. <xmqqo6spiyqp.fsf@gitster.g>
132 source: <cover.1754637849.git.liu.denton@gmail.com>
133
@@ -124,38 +159,41 @@ Release tarballs are available at:
159
160
161 * ms/refs-list (2025-08-05) 6 commits
127 - - t: add test for git refs list subcommand
128 - - t6300: refactor tests to be shareable
129 - - builtin/refs: add list subcommand
130 - - builtin/for-each-ref: factor out core logic into a helper
131 - - builtin/for-each-ref: align usage string with the man page
132 - - doc: factor out common option
162 + (merged to 'next' on 2025-08-13 at 3f0791145b)
163 + + t: add test for git refs list subcommand
164 + + t6300: refactor tests to be shareable
165 + + builtin/refs: add list subcommand
166 + + builtin/for-each-ref: factor out core logic into a helper
167 + + builtin/for-each-ref: align usage string with the man page
168 + + doc: factor out common option
169
170 The "list" subcommand of "git refs" acts as a front-end for
171 "git for-each-ref".
172
137 - Comments?
173 + Will cook in 'next'.
174 source: <20250805092758.5321-1-meetsoni3017@gmail.com>
175
176
177 * kh/doc-git-log-markup-fix (2025-08-08) 1 commit
142 - - doc: git-log: fix description list
178 + (merged to 'next' on 2025-08-12 at 1336146ed4)
179 + + doc: git-log: fix description list
180
181 Doc update.
182
146 - Will merge to 'next'.
183 + Will cook in 'next'.
184 source: <aaa1734189ec8bab7cfa0965132e3d8e5909b1af.1754660514.git.code@khaugsbakk.name>
185
186
187 * ly/changed-path-traversal-with-magic-pathspec (2025-08-10) 1 commit
151 - - bloom: enable bloom filter with wildcard pathspec in revision traversal
188 + (merged to 'next' on 2025-08-12 at 0f929dcec7)
189 + + bloom: enable bloom filter with wildcard pathspec in revision traversal
190
191 Revision traversal limited with pathspec, like "git log dir/*",
192 used to ignore changed-paths Bloom filter when the pathspec
193 contained wildcards; now they take advantage of the filter when
194 they can.
195
158 - Will merge to 'next'?
196 + Will cook in 'next'.
197 source: <20250811060137.75135-1-yldhome2d2@gmail.com>
198
199
@@ -178,29 +216,31 @@ Release tarballs are available at:
216 source: <20250807-b4-pks-commit-graph-wo-the-repository-v3-0-82edef830a1e@pks.im>
217
218
181 -* tc/t0450-harden (2025-08-08) 2 commits
182 - . t0450: add allowlist for builtins with missing .adoc
183 - . t0450: fix test for out-of-tree builds
219 +* tc/t0450-harden (2025-08-12) 3 commits
220 + - fixup! t0450: add allowlist for builtins with missing .adoc
221 + - t0450: add allowlist for builtins with missing .adoc
222 + - t0450: fix test for out-of-tree builds
223
224 Test updates.
225
187 - Expecting a reroll?
188 - cf. <xmqq7bzdfoxe.fsf@gitster.g>
189 - source: <20250808095943.3312265-1-toon@iotcl.com>
226 + Expecting a final reroll after 2.51 final.
227 + source: <20250804073002.1586332-1-toon@iotcl.com>
228
229
230 * gh/git-jump-pathname-with-sp (2025-08-11) 1 commit
193 - - git-jump: make `diff` work with filenames containing spaces
231 + (merged to 'next' on 2025-08-13 at a99311e231)
232 + + git-jump: make `diff` work with filenames containing spaces
233
234 "git jump" (in contrib/) fails to parse the diff header correctly
235 when a file has a space in its name, which has been corrected.
236
198 - Will merge to 'next'?
237 + Will cook in 'next'.
238 source: <pull.1950.v2.git.1754913323810.gitgitgadget@gmail.com>
239
240
241 * jc/diff-no-index-in-subdir (2025-08-09) 1 commit
203 - - diff: --no-index should ignore the worktree
242 + (merged to 'next' on 2025-08-13 at 956899dc16)
243 + + diff: --no-index should ignore the worktree
244
245 "git diff --no-index" run inside a subdirectory under control of a
246 Git repository operated at the top of the working tree and stripped
@@ -208,12 +248,11 @@ Release tarballs are available at:
248 work correctly because of it. Correct the set-up by undoing what
249 the set-up sequence did to cwd and prefix.
250
211 - Will merge to 'next'?
251 + Will cook in 'next'.
252 source: <xmqq1ppk58ob.fsf@gitster.g>
253
254
215 -* je/doc-rebase (2025-08-11) 6 commits
216 - - fixup! doc: git-rebase: update discussion of internals
255 +* je/doc-rebase (2025-08-12) 5 commits
256 - doc: git-rebase: update discussion of internals
257 - doc: git-rebase: move --onto explanation down
258 - doc: git rebase: clarify arguments syntax
@@ -222,31 +261,34 @@ Release tarballs are available at:
261
262 Documentation for "git rebase" has been updated.
263
225 - Comments?
226 - source: <pull.1949.v6.git.1754949075.gitgitgadget@gmail.com>
264 + Will merge to 'next'?
265 + source: <pull.1949.v7.git.1755006568.gitgitgadget@gmail.com>
266
267
268 * rj/t6137-cygwin-fix (2025-08-08) 1 commit
230 - - t6137-*.sh: fix test failure on cygwin
269 + (merged to 'next' on 2025-08-12 at f5acbbb35a)
270 + + t6137-*.sh: fix test failure on cygwin
271
272 Test fix for breakage introduced in Git 2.50.
273
234 - Will merge to 'next'.
274 + Will cook in 'next'.
275 source: <5514f2fd-3307-42c8-97ac-bc2147a7ba41@ramsayjones.plus.com>
276
277
238 -* ps/reftable-libgit2-cleanup (2025-08-04) 6 commits
278 +* ps/reftable-libgit2-cleanup (2025-08-12) 8 commits
279 + - refs/reftable: always reload stacks when creating lock
280 + - reftable: don't second-guess errors from flock interface
281 - reftable/stack: handle outdated stacks when compacting
282 - reftable/stack: allow passing flags to `reftable_stack_add()`
241 - - reftable/stack: reorder code to avoid forward declarations
283 - reftable/stack: fix compiler warning due to missing braces
284 + - reftable/stack: reorder code to avoid forward declarations
285 - reftable/writer: drop Git-specific `QSORT()` macro
286 - reftable/writer: fix type used for number of records
287
288 Code clean-ups.
289
248 - Comments?
249 - source: <20250804-pks-reftable-fixes-for-libgit2-v2-0-fef06209a984@pks.im>
290 + Will merge to 'next'?
291 + source: <20250812-pks-reftable-fixes-for-libgit2-v3-0-cf3b2267867e@pks.im>
292
293
294 * tc/diff-tree-max-depth (2025-08-07) 3 commits
@@ -268,7 +310,7 @@ Release tarballs are available at:
310
311 "git cmd --help-all" outside repository.
312
271 - Comments?
313 + Will merge to 'next'.
314 source: <20250803012613.54086-1-ben.knoble+github@gmail.com>
315
316
@@ -289,7 +331,7 @@ Release tarballs are available at:
331 "differences in lines that match these regular expressions are
332 ignored") did not work well with "--name-only" and friends.
333
292 - Will merge to 'next'?
334 + Will merge to 'next'.
335 source: <20250808033019.78817-1-yldhome2d2@gmail.com>
336
337
@@ -319,24 +361,25 @@ Release tarballs are available at:
361
362 Further code clean-up for multi-pack-index code paths.
363
322 - Comments?
364 + Will merge to 'next'?
365 source: <20250811-b4-pks-midx-deduplicate-source-info-v3-0-e442bdf2b4ad@pks.im>
366
367
368 * jc/strbuf-split (2025-07-31) 13 commits
327 - - trace2: do not use strbuf_split*()
328 - - trace2: trim_trailing_newline followed by trim is a no-op
329 - - sub-process: do not use strbuf_split*()
330 - - environment: do not use strbuf_split*()
331 - - config: do not use strbuf_split()
332 - - notes: do not use strbuf_split*()
333 - - merge-tree: do not use strbuf_split*()
334 - - clean: do not use strbuf_split*() [part 2]
335 - - clean: do not pass the whole structure when it is not necessary
336 - - clean: do not use strbuf_split*() [part 1]
337 - - clean: do not pass strbuf by value
338 - - wt-status: avoid strbuf_split*()
339 - - Merge branch 'jc/string-list-split' into jc/strbuf-split
369 + (merged to 'next' on 2025-08-11 at ddf662f7e9)
370 + + trace2: do not use strbuf_split*()
371 + + trace2: trim_trailing_newline followed by trim is a no-op
372 + + sub-process: do not use strbuf_split*()
373 + + environment: do not use strbuf_split*()
374 + + config: do not use strbuf_split()
375 + + notes: do not use strbuf_split*()
376 + + merge-tree: do not use strbuf_split*()
377 + + clean: do not use strbuf_split*() [part 2]
378 + + clean: do not pass the whole structure when it is not necessary
379 + + clean: do not use strbuf_split*() [part 1]
380 + + clean: do not pass strbuf by value
381 + + wt-status: avoid strbuf_split*()
382 + + Merge branch 'jc/string-list-split' into jc/strbuf-split
383 (this branch uses jc/string-list-split.)
384
385 Arrays of strbuf is often a wrong data structure to use, and
@@ -345,24 +388,25 @@ Release tarballs are available at:
388
389 Update several code paths and replace strbuf_split*().
390
348 - Will merge to 'next'.
391 + Will cook in 'next'.
392 source: <20250731225433.4028872-1-gitster@pobox.com>
393
394
395 * jc/string-list-split (2025-08-01) 7 commits
353 - - string-list: split-then-remove-empty can be done while splitting
354 - - string-list: optionally omit empty string pieces in string_list_split*()
355 - - diff: simplify parsing of diff.colormovedws
356 - - string-list: optionally trim string pieces split by string_list_split*()
357 - - string-list: unify string_list_split* functions
358 - - string-list: align string_list_split() with its _in_place() counterpart
359 - - string-list: report programming error with BUG
396 + (merged to 'next' on 2025-08-11 at 160ff9d174)
397 + + string-list: split-then-remove-empty can be done while splitting
398 + + string-list: optionally omit empty string pieces in string_list_split*()
399 + + diff: simplify parsing of diff.colormovedws
400 + + string-list: optionally trim string pieces split by string_list_split*()
401 + + string-list: unify string_list_split* functions
402 + + string-list: align string_list_split() with its _in_place() counterpart
403 + + string-list: report programming error with BUG
404 (this branch is used by jc/strbuf-split.)
405
406 string_list_split*() family of functions have been extended to
407 simplify common use cases.
408
365 - Will merge to 'next'.
409 + Will cook in 'next'.
410 source: <20250801220423.1230969-1-gitster@pobox.com>
411
412
@@ -398,31 +442,31 @@ Release tarballs are available at:
442 source: <20250731-pks-remote-rename-improvements-v2-0-dda6f083674d@pks.im>
443
444
401 -* ag/send-email-imap-sent (2025-08-11) 3 commits
402 - - fixup! send-email: enable copying emails to IMAP folder without actually sending them
403 - - send-email: enable copying emails to IMAP folder without actually sending them
445 +* ag/send-email-imap-sent (2025-08-11) 2 commits
446 + - send-email: enable copying emails to an IMAP folder without actually sending them
447 - send-email: add ability to send a copy of sent emails to an IMAP folder
448
449 "git send-email" learned to drive "git imap-send" to store already
450 sent e-mails in an IMAP folder.
451
409 - Comments?
410 - source: <PN3PR01MB9597EC4C5DF97943587AEEB4B85FA@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM>
452 + Will merge to 'next'?
453 + source: <PN3PR01MB9597E8E33868386C997D2563B82BA@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM>
454
455
456 * en/ort-rename-fixes (2025-08-06) 7 commits
414 - - merge-ort: fix directory rename on top of source of other rename/delete
415 - - merge-ort: fix incorrect file handling
416 - - merge-ort: clarify the interning of strings in opt->priv->path
417 - - t6423: fix missed staging of file in testcases 12i,12j,12k
418 - - t6423: document two bugs with rename-to-self testcases
419 - - merge-ort: drop unnecessary temporary in check_for_directory_rename()
420 - - merge-ort: update comments to modern testfile location
457 + (merged to 'next' on 2025-08-12 at 02536ed675)
458 + + merge-ort: fix directory rename on top of source of other rename/delete
459 + + merge-ort: fix incorrect file handling
460 + + merge-ort: clarify the interning of strings in opt->priv->path
461 + + t6423: fix missed staging of file in testcases 12i,12j,12k
462 + + t6423: document two bugs with rename-to-self testcases
463 + + merge-ort: drop unnecessary temporary in check_for_directory_rename()
464 + + merge-ort: update comments to modern testfile location
465
466 Various bugs about rename handling in "ort" merge strategy have
467 been fixed.
468
425 - Will merge to 'next'?
469 + Will cook in 'next'.
470 source: <pull.1943.v3.git.1754522122.gitgitgadget@gmail.com>
471
472
@@ -476,19 +520,20 @@ Release tarballs are available at:
520 dynamically pick a suitable comment character, as it is too much
521 trouble to support for little benefit.
522
479 - Comments?
523 + Will merge to 'next'?
524 source: <cover.1753975294.git.phillip.wood@dunelm.org.uk>
525
526
527 * ua/t1517-short-help-tests (2025-08-07) 3 commits
484 - - t5304: move `prune -h` test from t1517
485 - - t5200: move `update-server-info -h` test from t1517
486 - - t/t1517: automate `git subcmd -h` tests outside a repository
528 + (merged to 'next' on 2025-08-12 at 55d20e1985)
529 + + t5304: move `prune -h` test from t1517
530 + + t5200: move `update-server-info -h` test from t1517
531 + + t/t1517: automate `git subcmd -h` tests outside a repository
532 (this branch is used by dk/help-all.)
533
534 Test shuffling.
535
491 - Will merge to 'next'.
536 + Will cook in 'next'.
537 source: <20250808010651.591906-1-usmanakinyemi202@gmail.com>
538
539