What's cooking (2025/08 #01)

Junio C Hamano committed Aug 3, 2025 at 22:00 UTC edf3134753c3b7da7f0dcb968fab54762dcee914
1 file changed +362 -252
whats-cooking.txt
+362 -252
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Jul 2025, #09; Thu, 31)
3 -X-master-at: e813a0200a7121b97fec535f0d0b460b0a33356c
4 -X-next-at: 393fa4b64b12da3d3fdcefb02739bb1e82291dcc
2 +Subject: What's cooking in git.git (Aug 2025, #01; Sun, 3)
3 +X-master-at: e0753259271b76f6e53b3b170b4bc08cca793bca
4 +X-next-at: 3e08bea96f415556e219a4557eec4b445ad5bb66
5 Bcc: lwn@lwn.net, gitster@pobox.com
6
7 -What's cooking in git.git (Jul 2025, #09; Thu, 31)
7 +What's cooking in git.git (Aug 2025, #01; Sun, 3)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -45,15 +45,296 @@ Release tarballs are available at:
45
46 https://www.kernel.org/pub/software/scm/git/
47
48 +--------------------------------------------------
49 +[Graduated to 'master']
50 +
51 +* ag/imap-send-list-folders-doc (2025-07-22) 1 commit
52 + (merged to 'next' on 2025-07-24 at d7db48890b)
53 + + docs: explain how to use `git imap-send --list` command to get a list of available folders
54 +
55 + Document recently added "git imap-send --list" with an example.
56 + source: <20250722114827.22493-1-gargaditya08@live.com>
57 +
58 +
59 +* cb/meson-avoid-broken-macos-pcre2 (2025-07-18) 1 commit
60 + (merged to 'next' on 2025-07-24 at b8cea692a4)
61 + + meson: work around broken system PCRE2 dependency in macOS
62 +
63 + Build fix for macOS.
64 + source: <20250718170225.6063-1-carenas@gmail.com>
65 +
66 +
67 +* hl/test-helper-fd-close (2025-07-23) 4 commits
68 + (merged to 'next' on 2025-07-28 at 1e63fd84fe)
69 + + test-delta: close output descriptor after use
70 + + test-delta: use strbufs to hold input files
71 + + test-delta: handle errors with die()
72 + + t/helper/test-truncate: close file descriptor after truncation
73 +
74 + A few file descriptors left unclosed upon program completion in a
75 + few test helper programs are now closed.
76 + source: <20250722174102.1876197-1-lhywkd22@gmail.com>
77 + source: <20250723235929.GB592873@coredump.intra.peff.net>
78 +
79 +
80 +* jc/ci-print-test-failures-fix (2025-07-16) 1 commit
81 + (merged to 'next' on 2025-07-24 at a1924c981b)
82 + + ci: allow github-actions print test failures again
83 +
84 + CI fix.
85 + source: <xmqqa553alp1.fsf_-_@gitster.g>
86 +
87 +
88 +* jc/do-not-scan-argv-without-parsing (2025-07-21) 1 commit
89 + (merged to 'next' on 2025-07-23 at 8e3db5dcca)
90 + + rev-list: update a NEEDSWORK comment
91 +
92 + Update a hard-to-read in-code NEEDSWORK comment.
93 + source: <xmqqecu9w4a5.fsf@gitster.g>
94 +
95 +
96 +* jc/document-test-balloons-in-flight (2025-07-23) 1 commit
97 + (merged to 'next' on 2025-07-24 at c239410df9)
98 + + CodingGuidelines: document test balloons in flight
99 +
100 + To help our developers, document what C99 language features are
101 + being considered for adoption, in addition to what past experiments
102 + have already decided.
103 + source: <xmqqecu6n1pt.fsf@gitster.g>
104 +
105 +
106 +* jc/rev-list-info-cleanup (2025-07-18) 1 commit
107 + (merged to 'next' on 2025-07-23 at 09282d051a)
108 + + rev-list: make "struct rev_list_info" static to the only user
109 +
110 + Move structure definition from unrelated header file to where it
111 + belongs.
112 + source: <xmqqa551127o.fsf@gitster.g>
113 +
114 +
115 +* jk/revision-no-early-output (2025-07-19) 1 commit
116 + (merged to 'next' on 2025-07-23 at cfc20b3eb9)
117 + + revision: drop early output option
118 +
119 + Remove unsupported, unused, and unsupportable old option from "git
120 + log".
121 + source: <20250719070813.GA706382@coredump.intra.peff.net>
122 +
123 +
124 +* jk/unleak-reflog-expire-entry (2025-07-22) 1 commit
125 + (merged to 'next' on 2025-07-23 at 1663299f09)
126 + + reflog: close leak of reflog expire entry
127 +
128 + Leakfix.
129 + source: <20250722-jk-fix-leak-reflog-expire-config-v4-1-b65a83551020@gmail.com>
130 +
131 +
132 +* kn/for-each-ref-skip (2025-07-24) 6 commits
133 + (merged to 'next' on 2025-07-28 at c721b90bdc)
134 + + ref-cache: set prefix_state when seeking
135 + (merged to 'next' on 2025-07-15 at 4ea3c74afd)
136 + + for-each-ref: introduce a '--start-after' option
137 + + ref-filter: remove unnecessary else clause
138 + + refs: selectively set prefix in the seek functions
139 + + ref-cache: remove unused function 'find_ref_entry()'
140 + + refs: expose `ref_iterator` via 'refs.h'
141 + (this branch is used by kn/for-each-ref-skip-updates.)
142 +
143 + "git for-each-ref" learns "--start-after" option to help
144 + applications that want to page its output.
145 + source: <20250715-306-git-for-each-ref-pagination-v5-0-852d5a2f56e1@gmail.com>
146 +
147 +
148 +* ly/pull-autostash (2025-07-20) 1 commit
149 + (merged to 'next' on 2025-07-24 at dd85f09d69)
150 + + pull: add pull.autoStash config option
151 +
152 + "git pull" learned to pay attention to pull.autostash configuration
153 + variable, which overrides rebase/merge.autostash.
154 + source: <20250720124334.12045-1-yldhome2d2@gmail.com>
155 +
156 +
157 +* ow/rebase-verify-insn-fmt-before-initializing-state (2025-06-09) 1 commit
158 + (merged to 'next' on 2025-07-28 at 561f172338)
159 + + rebase: write script before initializing state
160 +
161 + "git rebase -i" with bogus rebase.instructionFormat configuration
162 + failed to produce the todo file after recording the state files,
163 + leading to confused "git status"; this has been corrected.
164 + source: <20250609221055.136074-1-oystwa@gmail.com>
165 +
166 +
167 +* ps/object-store-midx (2025-07-15) 9 commits
168 + (merged to 'next' on 2025-07-28 at a6727995ac)
169 + + midx: remove now-unused linked list of multi-pack indices
170 + + packfile: stop using linked MIDX list in `get_all_packs()`
171 + + packfile: stop using linked MIDX list in `find_pack_entry()`
172 + + packfile: refactor `get_multi_pack_index()` to work on sources
173 + + midx: stop using linked list when closing MIDX
174 + + packfile: refactor `prepare_packed_git_one()` to work on sources
175 + + midx: start tracking per object database source
176 + + Merge branch 'tb/midx-avoid-cruft-packs' into ps/object-store-midx
177 + + Merge branch 'ps/object-store' into ps/object-store-midx
178 + (this branch is used by ps/object-store-midx-dedup-info.)
179 +
180 + Redefine where the multi-pack-index sits in the object subsystem,
181 + which recently was restructured to allow multiple backends that
182 + support a single object source that belongs to one repository. A
183 + midx does span mulitple "object sources".
184 + cf. <aIHoAiakZr5i2psM@pks.im>
185 + source: <20250715-b4-pks-midx-via-odb-alternate-v2-0-b0ca0b4b516e@pks.im>
186 +
187 +
188 +* sk/reftable-clarify-tests (2025-07-24) 10 commits
189 + (merged to 'next' on 2025-07-24 at b3930223b7)
190 + + t/unit-tests: finalize migration of reftable-related tests
191 + + t/unit-tests: convert reftable stack test to use clar
192 + + t/unit-tests: convert reftable record test to use clar
193 + + t/unit-tests: convert reftable readwrite test to use clar
194 + + t/unit-tests: convert reftable table test to use clar
195 + + t/unit-tests: convert reftable pq test to use clar
196 + + t/unit-tests: convert reftable merged test to use clar
197 + + t/unit-tests: convert reftable block test to use clar
198 + + t/unit-tests: convert reftable basics test to use clar test framework
199 + + t/unit-tests: implement clar specific reftable test helper functions
200 +
201 + The reftable unit tests are now ported to the "clar" unit testing
202 + framework.
203 + cf. <aIJGNGxhkz9CESFu@pks.im>
204 + source: <20250724142837.67149-1-kuforiji98@gmail.com>
205 +
206 --------------------------------------------------
207 [New Topics]
208
51 -* ps/meson-clar-decls-fix (2025-07-29) 1 commit
52 - - meson: ensure correct "clar-decls.h" header is used
209 +* jc/doc-release-vs-clear (2025-08-01) 1 commit
210 + (merged to 'next' on 2025-08-01 at dd9490d97e)
211 + + CodingGuidelines: clarify that S_release() does not reinitialize
212 +
213 + Doc update.
214 +
215 + Will merge to 'master'.
216 + source: <xmqq7bznm0nk.fsf@gitster.g>
217 +
218 +
219 +* kh/doc-fast-import-historical (2025-08-01) 1 commit
220 + (merged to 'next' on 2025-08-01 at 111a582ca4)
221 + + doc: fast-import: contextualize the hardware cost
222 +
223 + Doc update.
224 +
225 + Will merge to 'master'.
226 + source: <a9bc7547a27aab8bc2404caeb821b7f5c4c10d14.1754055658.git.code@khaugsbakk.name>
227 +
228 +
229 +* ms/meson-with-ancient-git-wo-ls-files-dedup (2025-08-01) 1 commit
230 + (merged to 'next' on 2025-08-01 at f2b8c802ec)
231 + + meson: tolerate errors from git ls-files --deduplicate
232
233 Build fix.
234
235 + Will merge to 'master'.
236 + source: <20250801162834.1923702-1-martin@martin.st>
237 +
238 +
239 +* pw/reftable-libgit2-cleanup (2025-08-01) 5 commits
240 + - reftable/stack: allow passing flags to `reftable_stack_add()`
241 + - reftable/stack: reorder code to avoid forward declarations
242 + - reftable/stack: fix compiler warning due to missing braces
243 + - reftable/writer: drop Git-specific `QSORT()` macro
244 + - reftable/writer: fix type used for number of records
245 +
246 + Code clean-ups.
247 +
248 + Comments?
249 + source: <20250801-pks-reftable-fixes-for-libgit2-v1-0-f446e1c33cb9@pks.im>
250 +
251 +
252 +* tc/diff-tree-max-depth (2025-07-29) 3 commits
253 + - diff: teach tree-diff a max-depth parameter
254 + - within_depth: fix return for empty path
255 + - combine-diff: zero memory used for callback filepairs
256 +
257 + "git diff-tree" learned "--max-depth" option.
258 +
259 + Comments?
260 + source: <20250729-toon-max-depth-v1-0-c177e39c40fb@iotcl.com>
261 +
262 +
263 +* dk/help-all (2025-08-03) 4 commits
264 + - builtin: also setup gently for --help-all
265 + - parse-options: refactor flags for usage_with_options_internal
266 + - t1517: fixup for ua/t1517-short-help-tests
267 + - Merge branch 'ua/t1517-short-help-tests' into dk/help-all
268 + (this branch uses ua/t1517-short-help-tests.)
269 +
270 + "git cmd --help-all" outside repository.
271 +
272 + Comments?
273 + source: <20250803012613.54086-1-ben.knoble+github@gmail.com>
274 +
275 +
276 +* js/mingw-fixes (2025-08-03) 4 commits
277 + (merged to 'next' on 2025-08-03 at a222fda8c6)
278 + + mingw: support Windows Server 2016 again
279 + + mingw_rename: support ReFS on Windows 2022
280 + + mingw: drop Windows 7-specific work-around
281 + + mingw_open_existing: handle directories better
282 +
283 + Windows fixes.
284 +
285 + Will merge to 'master'.
286 + source: <pull.1948.git.1754256318.gitgitgadget@gmail.com>
287 +
288 +
289 +* jt/archive-zip-deflate-fix (2025-08-02) 1 commit
290 + - archive: flush deflate stream until Z_STREAM_END
291 +
292 + The deflate codepath in "git archive --format=zip" had a
293 + longstanding bug coming from misuse of zlib API, which has been
294 + corrected.
295 +
296 Will merge to 'next'.
297 + source: <20250802220803.95137-1-jltobler@gmail.com>
298 +
299 +
300 +* lc/rebase-trailer (2025-08-03) 2 commits
301 + - rebase: support --trailer
302 + - trailer: append trailers in-process and drop the fork to `interpret-trailers`
303 +
304 + source: <20250803150059.402017-1-me@linux.beauty>
305 +
306 +
307 +* ly/diff-name-only-with-diff-from-content (2025-08-03) 1 commit
308 + . diff: ensure consistent diff behavior with -I<regex> across output formats
309 +
310 + Various options to "git diff" that makes comparison ignore certain
311 + aspects of the differences (like "space changes are ignored",
312 + "differences in lines that match these regular expressions are
313 + ignored") did not work well with "--name-only" and friends.
314 +
315 + Breaks t3040 when merged to 'seen'.
316 + source: <20250803145155.57894-1-yldhome2d2@gmail.com>
317 +
318 +
319 +* rs/describe-with-prio-queue (2025-08-03) 2 commits
320 + - describe: use prio_queue_replace()
321 + - describe: use prio_queue
322 +
323 + "git describe" has been optimized by using better data structure.
324 +
325 + Will merge to 'next'?
326 + source: <36d5b59a-a99a-4a6f-b637-dfb0b760660f@web.de>
327 +
328 +--------------------------------------------------
329 +[Cooking]
330 +
331 +* ps/meson-clar-decls-fix (2025-07-29) 1 commit
332 + (merged to 'next' on 2025-08-01 at 627c189731)
333 + + meson: ensure correct "clar-decls.h" header is used
334 +
335 + Build fix.
336 +
337 + Will merge to 'master'.
338 source: <20250729-b4-pks-meson-unit-tests-stale-decls-v1-1-4a7770c84307@pks.im>
339
340
@@ -67,23 +348,24 @@ Release tarballs are available at:
348 - odb: allow `odb_find_source()` to fail
349 - odb: store locality in object database sources
350 - Merge branch 'ps/object-store-midx' into ps/object-store-midx-dedup-info
70 - (this branch uses ps/object-store-midx.)
351
352 Further code clean-up for multi-pack-index code paths.
353
354 + Comments?
355 source: <20250729-b4-pks-midx-deduplicate-source-info-v1-0-748db2eda3b5@pks.im>
356
357
358 * ch/t7450-recursive-clone-test-fix (2025-07-30) 1 commit
78 - - t7450: inspect the correct path a broken code would write to
359 + (merged to 'next' on 2025-08-01 at 478a84a4a9)
360 + + t7450: inspect the correct path a broken code would write to
361
362 Test fix.
363
82 - Will merge to 'next'.
364 + Will merge to 'master'.
365 source: <pull.2022.v2.git.git.1753933780883.gitgitgadget@gmail.com>
366
367
86 -* jc/strbuf-split (2025-07-31) 12 commits
368 +* jc/strbuf-split (2025-07-31) 13 commits
369 - trace2: do not use strbuf_split*()
370 - trace2: trim_trailing_newline followed by trim is a no-op
371 - sub-process: do not use strbuf_split*()
@@ -92,6 +374,7 @@ Release tarballs are available at:
374 - notes: do not use strbuf_split*()
375 - merge-tree: do not use strbuf_split*()
376 - clean: do not use strbuf_split*() [part 2]
377 + - clean: do not pass the whole structure when it is not necessary
378 - clean: do not use strbuf_split*() [part 1]
379 - clean: do not pass strbuf by value
380 - wt-status: avoid strbuf_split*()
@@ -104,10 +387,11 @@ Release tarballs are available at:
387
388 Update several code paths and replace strbuf_split*().
389
107 - Comments?
390 + Will merge to 'next'?
391 source: <20250731225433.4028872-1-gitster@pobox.com>
392
110 -* jc/string-list-split (2025-07-31) 7 commits
393 +
394 +* jc/string-list-split (2025-08-01) 7 commits
395 - string-list: split-then-remove-empty can be done while splitting
396 - string-list: optionally omit empty string pieces in string_list_split*()
397 - diff: simplify parsing of diff.colormovedws
@@ -120,29 +404,30 @@ Release tarballs are available at:
404 string_list_split*() family of functions have been extended to
405 simplify common use cases.
406
123 - Comments?
124 - source: <20250731224607.3942417-1-gitster@pobox.com>
407 + Will merge to 'next'?
408 + source: <20250801220423.1230969-1-gitster@pobox.com>
409 +
410
411 * jc/test-hashmap-is-still-here (2025-07-30) 1 commit
127 - - test-hashmap: document why it is no longer used but still there
412 + (merged to 'next' on 2025-08-01 at 0d766613fc)
413 + + test-hashmap: document why it is no longer used but still there
414
415 Comment fix.
416
131 - Will merge to 'next'.
417 + Will merge to 'master'.
418 source: <xmqqwm7ptghz.fsf@gitster.g>
419
420
421 * js/prompt-crlf-fix (2025-07-31) 1 commit
136 - - interactive: do strip trailing CRLF from input
422 + (merged to 'next' on 2025-08-01 at 365b52c100)
423 + + interactive: do strip trailing CRLF from input
424
425 Interactive prompt code did not correctly strip CRLF from the end
139 - of line on Windows.
426 + of line on Windows.
427
141 - Will merge to 'next'.
428 + Will merge to 'master'.
429 source: <2295f183-038c-4751-b04d-0f1819b67b3a@kdbg.org>
430
144 ---------------------------------------------------
145 -[Cooking]
431
432 * am/xdiff-hash-tweak (2025-07-28) 3 commits
433 - fixup! xdiff: optimize xdl_hash_record_verbatim
@@ -184,7 +469,6 @@ Release tarballs are available at:
469 + for-each-ref: reword the documentation for '--start-after'
470 + for-each-ref: fix documentation argument ordering
471 + ref-cache: use 'size_t' instead of int for length
187 - (this branch uses kn/for-each-ref-skip.)
472
473 Code clean-up.
474
@@ -207,63 +491,21 @@ Release tarballs are available at:
491 upstream/HEAD when origin/HEAD is unborn and performed other
492 renames extremely inefficiently, which has been corrected.
493
494 + Will merge to 'next'?
495 source: <20250731-pks-remote-rename-improvements-v2-0-dda6f083674d@pks.im>
496
497
498 * rs/tighten-alias-help (2025-07-25) 1 commit
214 - - git: show alias info only with lone -h
499 + (merged to 'next' on 2025-08-01 at a0fb0696cd)
500 + + git: show alias info only with lone -h
501
502 "git -c alias.foo=bar foo -h baz" reported "'foo' is aliased to
503 'bar'" and then went on to do "git foo -h baz", which was
504 unexpected. Tighten the rule so that alias expansion is reported
505 only when "-h" is the sole option.
506
221 - Will merge to 'next'?
222 - source: <a35dc2bf-015c-472d-9528-6763f7aac180@web.de>
223 -
224 -
225 -* jc/document-test-balloons-in-flight (2025-07-23) 1 commit
226 - (merged to 'next' on 2025-07-24 at c239410df9)
227 - + CodingGuidelines: document test balloons in flight
228 -
229 - To help our developers, document what C99 language features are
230 - being considered for adoption, in addition to what past experiments
231 - have already decided.
232 -
233 - Will merge to 'master'.
234 - source: <xmqqecu6n1pt.fsf@gitster.g>
235 -
236 -
237 -* ly/pull-autostash (2025-07-20) 1 commit
238 - (merged to 'next' on 2025-07-24 at dd85f09d69)
239 - + pull: add pull.autoStash config option
240 -
241 - "git pull" learned to pay attention to pull.autostash configuration
242 - variable, which overrides rebase/merge.autostash.
243 -
244 - Will merge to 'master'.
245 - source: <20250720124334.12045-1-yldhome2d2@gmail.com>
246 -
247 -
248 -* jk/revision-no-early-output (2025-07-19) 1 commit
249 - (merged to 'next' on 2025-07-23 at cfc20b3eb9)
250 - + revision: drop early output option
251 -
252 - Remove unsupported, unused, and unsupportable old option from "git
253 - log".
254 -
255 - Will merge to 'master'.
256 - source: <20250719070813.GA706382@coredump.intra.peff.net>
257 -
258 -
259 -* ag/imap-send-list-folders-doc (2025-07-22) 1 commit
260 - (merged to 'next' on 2025-07-24 at d7db48890b)
261 - + docs: explain how to use `git imap-send --list` command to get a list of available folders
262 -
263 - Document recently added "git imap-send --list" with an example.
264 -
507 Will merge to 'master'.
266 - source: <20250722114827.22493-1-gargaditya08@live.com>
508 + source: <a35dc2bf-015c-472d-9528-6763f7aac180@web.de>
509
510
511 * ag/send-email-imap-sent (2025-07-22) 1 commit
@@ -288,25 +530,11 @@ Release tarballs are available at:
530 Various bugs about rename handling in "ort" merge strategy have
531 been fixed.
532
291 - Comments?
533 + Expecting a reroll?
534 + cf. <aIx7SXfRabJWpa0D@pks.im>
535 source: <pull.1943.git.1753197791.gitgitgadget@gmail.com>
536
537
295 -* hl/test-helper-fd-close (2025-07-23) 4 commits
296 - (merged to 'next' on 2025-07-28 at 1e63fd84fe)
297 - + test-delta: close output descriptor after use
298 - + test-delta: use strbufs to hold input files
299 - + test-delta: handle errors with die()
300 - + t/helper/test-truncate: close file descriptor after truncation
301 -
302 - A few file descriptors left unclosed upon program completion in a
303 - few test helper programs are now closed.
304 -
305 - Will merge to 'master'.
306 - source: <20250722174102.1876197-1-lhywkd22@gmail.com>
307 - source: <20250723235929.GB592873@coredump.intra.peff.net>
308 -
309 -
538 * jb/t7510-gpg-program-path (2025-07-24) 2 commits
539 (merged to 'next' on 2025-07-29 at f5dc13f52d)
540 + t7510: use $PWD instead of $(pwd) inside PATH
@@ -321,37 +549,6 @@ Release tarballs are available at:
549 source: <20250725051309.GA3003751@coredump.intra.peff.net>
550
551
324 -* jc/do-not-scan-argv-without-parsing (2025-07-21) 1 commit
325 - (merged to 'next' on 2025-07-23 at 8e3db5dcca)
326 - + rev-list: update a NEEDSWORK comment
327 -
328 - Update a hard-to-read in-code NEEDSWORK comment.
329 -
330 - Will merge to 'master'.
331 - source: <xmqqecu9w4a5.fsf@gitster.g>
332 -
333 -
334 -* jc/rev-list-info-cleanup (2025-07-18) 1 commit
335 - (merged to 'next' on 2025-07-23 at 09282d051a)
336 - + rev-list: make "struct rev_list_info" static to the only user
337 -
338 - Move structure definition from unrelated header file to where it
339 - belongs.
340 -
341 - Will merge to 'master'.
342 - source: <xmqqa551127o.fsf@gitster.g>
343 -
344 -
345 -* jk/unleak-reflog-expire-entry (2025-07-22) 1 commit
346 - (merged to 'next' on 2025-07-23 at 1663299f09)
347 - + reflog: close leak of reflog expire entry
348 -
349 - Leakfix.
350 -
351 - Will merge to 'master'.
352 - source: <20250722-jk-fix-leak-reflog-expire-config-v4-1-b65a83551020@gmail.com>
353 -
354 -
552 * jt/switch-restore-no-longer-experimental (2025-07-28) 1 commit
553 (merged to 'next' on 2025-07-29 at 3c2cf5ab46)
554 + builtin: unmark git-switch and git-restore as experimental
@@ -382,16 +579,6 @@ Release tarballs are available at:
579 source: <20250729-pks-reflog-append-v3-0-9614d310f073@pks.im>
580
581
385 -* jc/ci-print-test-failures-fix (2025-07-16) 1 commit
386 - (merged to 'next' on 2025-07-24 at a1924c981b)
387 - + ci: allow github-actions print test failures again
388 -
389 - CI fix.
390 -
391 - Will merge to 'master'.
392 - source: <xmqqa553alp1.fsf_-_@gitster.g>
393 -
394 -
582 * ds/sparse-checkout-clean (2025-07-16) 9 commits
583 - sparse-checkout: make 'clean' clear more files
584 - t: expand tests around sparse merges and clean
@@ -446,16 +633,6 @@ Release tarballs are available at:
633 source: <20250723-pks-config-wo-the-repository-v2-0-1502d60d3867@pks.im>
634
635
449 -* cb/meson-avoid-broken-macos-pcre2 (2025-07-18) 1 commit
450 - (merged to 'next' on 2025-07-24 at b8cea692a4)
451 - + meson: work around broken system PCRE2 dependency in macOS
452 -
453 - Build fix for macOS.
454 -
455 - Will merge to 'master'.
456 - source: <20250718170225.6063-1-carenas@gmail.com>
457 -
458 -
636 * pw/3.0-commentchar-auto-deprecation (2025-07-31) 4 commits
637 - commit: print advice when core.commentString=auto
638 - config: warn on core.commentString=auto
@@ -467,113 +644,77 @@ Release tarballs are available at:
644 dynamically pick a suitable comment character, as it is too much
645 trouble to support for little benefit.
646
647 + Comments?
648 source: <cover.1753975294.git.phillip.wood@dunelm.org.uk>
649
650
473 -* ps/object-store-midx (2025-07-15) 9 commits
474 - (merged to 'next' on 2025-07-28 at a6727995ac)
475 - + midx: remove now-unused linked list of multi-pack indices
476 - + packfile: stop using linked MIDX list in `get_all_packs()`
477 - + packfile: stop using linked MIDX list in `find_pack_entry()`
478 - + packfile: refactor `get_multi_pack_index()` to work on sources
479 - + midx: stop using linked list when closing MIDX
480 - + packfile: refactor `prepare_packed_git_one()` to work on sources
481 - + midx: start tracking per object database source
482 - + Merge branch 'tb/midx-avoid-cruft-packs' into ps/object-store-midx
483 - + Merge branch 'ps/object-store' into ps/object-store-midx
484 - (this branch is used by ps/object-store-midx-dedup-info.)
485 -
486 - Redefine where the multi-pack-index sits in the object subsystem,
487 - which recently was restructured to allow multiple backends that
488 - support a single object source that belongs to one repository. A
489 - midx does span mulitple "object sources".
490 -
491 - Will merge to 'master'.
492 - cf. <aIHoAiakZr5i2psM@pks.im>
493 - source: <20250715-b4-pks-midx-via-odb-alternate-v2-0-b0ca0b4b516e@pks.im>
494 -
495 -
651 * ps/object-file-wo-the-repository (2025-07-16) 17 commits
497 - - object-file: get rid of `the_repository` in index-related functions
498 - - object-file: get rid of `the_repository` in `force_object_loose()`
499 - - object-file: get rid of `the_repository` in `read_loose_object()`
500 - - object-file: get rid of `the_repository` in loose object iterators
501 - - object-file: remove declaration for `for_each_file_in_obj_subdir()`
502 - - object-file: inline `for_each_loose_file_in_objdir_buf()`
503 - - object-file: get rid of `the_repository` when writing objects
504 - - odb: introduce `odb_write_object()`
505 - - loose: write loose objects map via their source
506 - - object-file: get rid of `the_repository` in `finalize_object_file()`
507 - - object-file: get rid of `the_repository` in `loose_object_info()`
508 - - object-file: get rid of `the_repository` when freshening objects
509 - - object-file: inline `check_and_freshen()` functions
510 - - object-file: get rid of `the_repository` in `has_loose_object()`
511 - - object-file: stop using `the_hash_algo`
512 - - object-file: fix -Wsign-compare warnings
513 - - Merge branch 'ps/object-store' into ps/object-file-wo-the-repository
652 + (merged to 'next' on 2025-08-01 at 0c1253014e)
653 + + object-file: get rid of `the_repository` in index-related functions
654 + + object-file: get rid of `the_repository` in `force_object_loose()`
655 + + object-file: get rid of `the_repository` in `read_loose_object()`
656 + + object-file: get rid of `the_repository` in loose object iterators
657 + + object-file: remove declaration for `for_each_file_in_obj_subdir()`
658 + + object-file: inline `for_each_loose_file_in_objdir_buf()`
659 + + object-file: get rid of `the_repository` when writing objects
660 + + odb: introduce `odb_write_object()`
661 + + loose: write loose objects map via their source
662 + + object-file: get rid of `the_repository` in `finalize_object_file()`
663 + + object-file: get rid of `the_repository` in `loose_object_info()`
664 + + object-file: get rid of `the_repository` when freshening objects
665 + + object-file: inline `check_and_freshen()` functions
666 + + object-file: get rid of `the_repository` in `has_loose_object()`
667 + + object-file: stop using `the_hash_algo`
668 + + object-file: fix -Wsign-compare warnings
669 + + Merge branch 'ps/object-store' into ps/object-file-wo-the-repository
670
671 Reduce implicit assumption and dependence on the_repository in the
672 object-file subsystem.
673
518 - Will merge to 'next'.
674 + Will merge to 'master'.
675 cf. <87ms8na1mc.fsf@iotcl.com>
676 cf. <aIhm_nqiH8Sci12i@pks.im>
677 source: <20250717-pks-object-file-wo-the-repository-v2-0-36d2cd6c700e@pks.im>
678
679
524 -* ua/t1517-short-help-tests (2025-07-21) 2 commits
525 - . t5200: move `update-server-info -h` test from t1517
526 - . t/t1517: automate `git subcmd -h` tests outside a repository
680 +* ua/t1517-short-help-tests (2025-08-02) 3 commits
681 + - t5304: move `prune -h` test from t1517
682 + - t5200: move `update-server-info -h` test from t1517
683 + - t/t1517: automate `git subcmd -h` tests outside a repository
684 + (this branch is used by dk/help-all.)
685
686 Test shuffling.
687
530 - Seems to introduce a few "todo passed" when merged to 'seen'.
531 - source: <20250721115519.140361-1-usmanakinyemi202@gmail.com>
532 -
533 -
534 -* kn/for-each-ref-skip (2025-07-24) 6 commits
535 - (merged to 'next' on 2025-07-28 at c721b90bdc)
536 - + ref-cache: set prefix_state when seeking
537 - (merged to 'next' on 2025-07-15 at 4ea3c74afd)
538 - + for-each-ref: introduce a '--start-after' option
539 - + ref-filter: remove unnecessary else clause
540 - + refs: selectively set prefix in the seek functions
541 - + ref-cache: remove unused function 'find_ref_entry()'
542 - + refs: expose `ref_iterator` via 'refs.h'
543 - (this branch is used by kn/for-each-ref-skip-updates.)
544 -
545 - "git for-each-ref" learns "--skip-until" option to help
546 - applications that want to page its output.
547 -
548 - Will merge to 'master'.
549 - source: <20250715-306-git-for-each-ref-pagination-v5-0-852d5a2f56e1@gmail.com>
688 + Needs the perl-prereq touch-up squashed in from dk/help-all topic.
689 + source: <20250803020744.1037392-1-usmanakinyemi202@gmail.com>
690
691
692 * tc/last-modified (2025-07-30) 4 commits
553 - . last-modified: use Bloom filters when available
554 - . commit-graph: export prepare_commit_graph()
555 - . t/perf: add last-modified perf script
556 - . last-modified: new subcommand to show when files were last modified
693 + - last-modified: use Bloom filters when available
694 + - commit-graph: export prepare_commit_graph()
695 + - t/perf: add last-modified perf script
696 + - last-modified: new subcommand to show when files were last modified
697
698 A new command "git last-modified" is proposed to show the closest
699 ancestor commit that touched each path.
700
561 - Comments?
701 + Seems to break a CI job when merged to 'seen'.
702 + cf. <xmqqpldfoqvz.fsf@gitster.g>
703 source: <20250716133206.1787549-1-toon@iotcl.com>
704
705
565 -* lo/repo-info (2025-07-21) 5 commits
566 - - repo: add the --format flag
567 - - repo: add field layout.shallow
568 - - repo: add field layout.bare
569 - - repo: add the field references.format
570 - - repo: declare the repo command
706 +* lo/repo-info (2025-08-01) 5 commits
707 + . repo: add the --format flag
708 + . repo: add the field layout.shallow
709 + . repo: add the field layout.bare
710 + . repo: add the field references.format
711 + . repo: declare the repo command
712
713 A new subcommand "git repo" gives users a way to grab various
714 repository characteristics.
715
575 - Still in flux.
576 - source: <20250722002835.33428-1-lucasseikioshiro@gmail.com>
716 + Breaks 0450 when merged to 'seen'.
717 + source: <20250801131111.8115-1-lucasseikioshiro@gmail.com>
718
719
720 * ac/deglobal-sparse-variables (2025-07-18) 3 commits
@@ -585,43 +726,11 @@ Release tarballs are available at:
726 Two global variables related to sparse checkout have been moved to
727 the repository settings structure.
728
588 - Ready?
729 + Expecting a reroll.
730 + cf. <CAE7as+bnG6KgA8X_n36pqP15bmyM6re+xEb1MOXKvZSUdJ8Arg@mail.gmail.com>
731 source: <cover.1752882401.git.ayu.chandekar@gmail.com>
732
733
592 -* ow/rebase-verify-insn-fmt-before-initializing-state (2025-06-09) 1 commit
593 - (merged to 'next' on 2025-07-28 at 561f172338)
594 - + rebase: write script before initializing state
595 -
596 - "git rebase -i" with bogus rebase.instructionFormat configuration
597 - failed to produce the todo file after recording the state files,
598 - leading to confused "git status"; this has been corrected.
599 -
600 - Will merge to 'master'.
601 - source: <20250609221055.136074-1-oystwa@gmail.com>
602 -
603 -
604 -* sk/reftable-clarify-tests (2025-07-24) 10 commits
605 - (merged to 'next' on 2025-07-24 at b3930223b7)
606 - + t/unit-tests: finalize migration of reftable-related tests
607 - + t/unit-tests: convert reftable stack test to use clar
608 - + t/unit-tests: convert reftable record test to use clar
609 - + t/unit-tests: convert reftable readwrite test to use clar
610 - + t/unit-tests: convert reftable table test to use clar
611 - + t/unit-tests: convert reftable pq test to use clar
612 - + t/unit-tests: convert reftable merged test to use clar
613 - + t/unit-tests: convert reftable block test to use clar
614 - + t/unit-tests: convert reftable basics test to use clar test framework
615 - + t/unit-tests: implement clar specific reftable test helper functions
616 -
617 - The reftable unit tests are now ported to the "clar" unit testing
618 - framework.
619 -
620 - Will merge to 'master'.
621 - cf. <aIJGNGxhkz9CESFu@pks.im>
622 - source: <20250724142837.67149-1-kuforiji98@gmail.com>
623 -
624 -
734 * tb/prepare-midx-pack-cleanup (2025-05-28) 5 commits
735 - midx: return a `packed_git` pointer from `prepare_midx_pack()`
736 - midx-write.c: extract inner loop from fill_packs_from_midx()
@@ -637,16 +746,17 @@ Release tarballs are available at:
746
747
748 * kj/renamed-submodule (2025-07-24) 4 commits
640 - - fixup! submodule: skip redundant active entries when pattern covers path
641 - - fixup! submodule: prevent overwriting .gitmodules on path reuse
642 - - submodule: skip redundant active entries when pattern covers path
643 - - submodule: prevent overwriting .gitmodules on path reuse
749 + (merged to 'next' on 2025-08-03 at c341b36545)
750 + + fixup! submodule: skip redundant active entries when pattern covers path
751 + + fixup! submodule: prevent overwriting .gitmodules on path reuse
752 + + submodule: skip redundant active entries when pattern covers path
753 + + submodule: prevent overwriting .gitmodules on path reuse
754
755 The case where a new submodule takes a path where used to be a
756 completely different subproject is now dealt a bit better than
757 before.
758
649 - Looking good.
759 + Will merge to 'master'.
760 source: <20250724152418.45226-1-jayatheerthkulkarni2005@gmail.com>
761
762
@@ -675,7 +785,7 @@ Release tarballs are available at:
785 allow the "partialCloneFilter" settings and the "token" value to be
786 communicated from the server side.
787
678 - Will merge to 'next'?
788 + Expecting a reroll.
789 source: <20250731072401.3817074-1-christian.couder@gmail.com>
790
791 --------------------------------------------------