What's cooking (2026/05 #03)

Junio C Hamano committed May 12, 2026 at 16:18 UTC 82ada9672b3c63e596a0518c8cef16216e1f0856
1 file changed +270 -327
whats-cooking.txt
+270 -327
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (May 2026, #02)
3 -X-master-at: 8a101334b374889938403824af956cd92e47b84d
4 -X-next-at: b3efc6e59e31dfa0c917464e5e5ae3e0b7f5a886
2 +Subject: What's cooking in git.git (May 2026, #03)
3 +X-master-at: 29bd7ed5127255713c1ac2f43b7c6f257d7b4594
4 +X-next-at: 59709faab07346122d819453f4ad6f3ccdaf618e
5 Bcc: lwn@lwn.net, gitster@pobox.com
6
7 -What's cooking in git.git (May 2026, #02)
7 +What's cooking in git.git (May 2026, #03)
8 -----------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -48,133 +48,113 @@ Release tarballs are available at:
48
49 https://www.kernel.org/pub/software/scm/git/
50
51 +--------------------------------------------------
52 +[New Topics]
53 +
54 +* sp/shallow-deepen-on-non-shallow-repo-fix (2026-05-11) 1 commit
55 + - shallow: fix relative deepen on non-shallow repositories
56 +
57 + "git fetch --deepen=<n>" in a full clone truncated the history to <n>
58 + commits deep, which has been corrected to be a no-op instead.
59 +
60 + Will merge to 'next'.
61 + source: <20260511192044.169557-1-samo_pogacnik@t-2.net>
62 +
63 +
64 +* ag/sequencer-remove-unused-struct-member (2026-05-11) 1 commit
65 + - sequencer: remove todo_add_branch_context.commit
66 +
67 + Code clean-up.
68 +
69 + Will merge to 'next'.
70 + source: <pull.2111.git.1778502113485.gitgitgadget@gmail.com>
71 +
72 +
73 +* ps/maintenance-daemonize-lockfix (2026-05-11) 2 commits
74 + - run-command: honor "gc.auto" for auto-maintenance
75 + - builtin/maintenance: fix locking with "--detach"
76 +
77 + "git maintenance" that goes background did not use the lockfile to
78 + prevent multiple maintenance processes from running at the same
79 + time, which has been corrected..
80 +
81 + Comments?
82 + source: <20260511-pks-maintenance-fix-lock-with-detach-v1-0-ccd7d62c9a40@pks.im>
83 +
84 --------------------------------------------------
85 [Graduated to 'master']
86
54 -* ar/parallel-hooks (2026-04-10) 13 commits
55 - (merged to 'next' on 2026-04-13 at 0a6acf0d17)
56 - + t1800: test SIGPIPE with parallel hooks
57 - + hook: allow hook.jobs=-1 to use all available CPU cores
58 - + hook: add hook.<event>.enabled switch
59 - + hook: move is_known_hook() to hook.c for wider use
60 - + hook: warn when hook.<friendly-name>.jobs is set
61 - + hook: add per-event jobs config
62 - + hook: add -j/--jobs option to git hook run
63 - + hook: mark non-parallelizable hooks
64 - + hook: allow pre-push parallel execution
65 - + hook: allow parallel hook execution
66 - + hook: parse the hook.jobs config
67 - + config: add a repo_config_get_uint() helper
68 - + repository: fix repo_init() memleak due to missing _clear()
69 -
70 - Hook scripts defined via the configuration system can now be
71 - configured to run in parallel.
72 - source: <20260410090608.75283-1-adrian.ratiu@collabora.com>
73 -
74 -
75 -* bc/rust-by-default (2026-04-09) 4 commits
76 - (merged to 'next' on 2026-04-23 at fb9310bfae)
77 - + Enable Rust by default
78 - + Linux: link against libdl
79 - + ci: install cargo on Alpine
80 - + docs: update version with default Rust support
81 -
82 - Rust support is enabled by default (but still allows opting out) in
83 - some future version of Git.
84 - source: <20260409224434.1861422-1-sandals@crustytoothpaste.net>
85 -
86 -
87 -* cc/promisor-auto-config-url (2026-04-07) 10 commits
88 - (merged to 'next' on 2026-04-13 at 289fcba081)
89 - + t5710: use proper file:// URIs for absolute paths
90 - + promisor-remote: remove the 'accepted' strvec
91 - + promisor-remote: keep accepted promisor_info structs alive
92 - + promisor-remote: refactor accept_from_server()
93 - + promisor-remote: refactor has_control_char()
94 - + promisor-remote: refactor should_accept_remote() control flow
95 - + promisor-remote: reject empty name or URL in advertised remote
96 - + promisor-remote: clarify that a remote is ignored
97 - + promisor-remote: pass config entry to all_fields_match() directly
98 - + promisor-remote: try accepted remotes before others in get_direct()
99 - (this branch is used by cc/promisor-auto-config-url-more.)
100 -
101 - Promisor remote handling has been refactored and fixed in
102 - preparation for auto-configuration of advertised remotes.
103 - source: <20260407115243.358642-1-christian.couder@gmail.com>
104 -
105 -
106 -* dl/cache-tree-fully-valid-fix (2026-04-06) 1 commit
107 - (merged to 'next' on 2026-04-13 at 68c82a9f37)
108 - + cache-tree: fix inverted object existence check in cache_tree_fully_valid
109 -
110 - The check that implements the logic to see if an in-core cache-tree
111 - is fully ready to write out a tree object was broken, which has
112 - been corrected.
113 - source: <20260406192711.68870-1-davidlin@stripe.com>
114 -
115 -
116 -* ja/doc-difftool-synopsis-style (2026-04-04) 4 commits
117 - (merged to 'next' on 2026-04-13 at 0e6c98f313)
118 - + doc: convert git-describe manual page to synopsis style
119 - + doc: convert git-shortlog manual page to synopsis style
120 - + doc: convert git-range-diff manual page to synopsis style
121 - + doc: convert git-difftool manual page to synopsis style
122 -
123 - Doc mark-up updates.
124 - source: <pull.2077.git.1775322767.gitgitgadget@gmail.com>
125 -
126 -
127 -* jc/doc-timestamps-in-stat (2026-04-10) 1 commit
128 - (merged to 'next' on 2026-04-20 at 0680260012)
129 - + CodingGuidelines: st_mtimespec vs st_mtim vs st_mtime
87 +* jc/neuter-sideband-fixup (2026-03-05) 6 commits
88 + (merged to 'next' on 2026-03-13 at 5a4098b0cd)
89 + + sideband: drop 'default' configuration
90 + + sideband: offer to configure sanitizing on a per-URL basis
91 + + sideband: add options to allow more control sequences to be passed through
92 + + sideband: do allow ANSI color sequences by default
93 + + sideband: introduce an "escape hatch" to allow control characters
94 + + sideband: mask control characters
95 + (this branch is used by jc/neuter-sideband-post-3.0.)
96
131 - Doc update.
132 - source: <xmqqzf3aofdj.fsf_-_@gitster.g>
133 -
134 -
135 -* ps/test-set-e-clean (2026-04-21) 12 commits
136 - (merged to 'next' on 2026-04-23 at 4f69b47b94)
137 - + t: detect errors outside of test cases
138 - + t9902: fix use of `read` with `set -e`
139 - + t6002: fix use of `expr` with `set -e`
140 - + t1301: don't fail in case setfacl(1) doesn't exist or fails
141 - + t0008: silence error in subshell when using `grep -v`
142 - + t: prepare `test_when_finished ()`/`test_atexit()` for `set -e`
143 - + t: prepare execution of potentially failing commands for `set -e`
144 - + t: prepare conditional test execution for `set -e`
145 - + t: prepare `git config --unset` calls for `set -e`
146 - + t: prepare `stop_git_daemon ()` for `set -e`
147 - + t: prepare `test_must_fail ()` for `set -e`
148 - + t: prepare `test_match_signal ()` calls for `set -e`
149 -
150 - The test suite harness and many individual test scripts have been
151 - updated to work correctly when 'set -e' is in effect, which helps
152 - detect misspelled test commands.
153 - source: <20260421-b4-pks-tests-with-set-e-v6-0-26330e3061ab@pks.im>
154 -
155 -
156 -* sb/userdiff-lisp-family (2026-04-14) 2 commits
157 - (merged to 'next' on 2026-04-20 at 5897c04899)
158 - + userdiff: extend Scheme support to cover other Lisp dialects
159 - + userdiff: tighten word-diff test case of the scheme driver
160 -
161 - The userdiff driver for the Scheme language has been extended to
162 - cover other Lisp dialects.
163 - source: <pull.2000.v4.git.1776220063.gitgitgadget@gmail.com>
164 -
165 -
166 -* sp/refs-reduce-the-repository (2026-04-04) 3 commits
167 - (merged to 'next' on 2026-04-09 at bb1d626802)
168 - + refs/reftable-backend: drop uses of the_repository
169 - + refs: remove the_hash_algo global state
170 - + refs: add struct repository parameter in get_files_ref_lock_timeout_ms()
171 -
172 - Code clean-up to use the right instance of a repository instance in
173 - calls inside refs subsystem.
174 - source: <20260404135914.61195-1-shreyanshpaliwalcmsmn@gmail.com>
97 + Try to resurrect and reboot a stalled "avoid sending risky escape
98 + sequences taken from sideband to the terminal" topic by Dscho.
99 +
100 + Merged early in the cycle to 'master', *without* the final "for
101 + now, let's tone it down and allow everything" step, which would
102 + give us a chance to prove that the more stricter form that we were
103 + planning to postpone until Git 3.0 may not be needed.
104 +
105 + Or people may find issues in the stricter form already. We'll see.
106 + source: <20260305233452.3727126-1-gitster@pobox.com>
107 +
108 +
109 +* jc/t5551-fix-expensive (2026-05-07) 1 commit
110 + (merged to 'next' on 2026-05-11 at 1bafedde58)
111 + + t5551: "GIT_TEST_LONG=Yes make test" is broken
112 +
113 + Test fix.
114 + source: <xmqqqznmeaco.fsf@gitster.g>
115 +
116 +
117 +* jk/revert-aa-reap-transport-child-processes (2026-04-22) 1 commit
118 + (merged to 'next' on 2026-05-11 at b41904c1d3)
119 + + Revert "transport-helper, connect: use clean_on_exit to reap children on abnormal exit"
120 +
121 + Revert a recent change that introduced a regression to help mksh users.
122 + source: <20260422230020.GA1839627@coredump.intra.peff.net>
123 +
124 +
125 +* js/ci-github-actions-update (2026-04-30) 6 commits
126 + (merged to 'next' on 2026-05-11 at ba87f84054)
127 + + l10n: bump mshick/add-pr-comment from v2 to v3
128 + + ci: bump git-for-windows/setup-git-for-windows-sdk from v1 to v2
129 + + ci: bump actions/checkout from v5 to v6
130 + + ci: bump actions/github-script from v8 to v9
131 + + ci: bump actions/{upload,download}-artifact to v7 and v8
132 + + ci: bump microsoft/setup-msbuild from v2 to v3
133 +
134 + Update various GitHub Actions versions.
135 + source: <pull.2097.v3.git.1777534500.gitgitgadget@gmail.com>
136 +
137 +
138 +* js/maintenance-fix-deadlock-on-win10 (2026-05-07) 2 commits
139 + (merged to 'next' on 2026-05-11 at e1b05301d1)
140 + + maintenance(geometric): do release the `.idx` files before repacking
141 + + mingw: optionally use legacy (non-POSIX) delete semantics
142 +
143 + To help Windows 10 installations, avoid removing files whose
144 + contents are still mmap()'ed.
145 + source: <pull.2103.v2.git.1778158273.gitgitgadget@gmail.com>
146 +
147 +
148 +* js/t5564-socks-use-short-path (2026-04-29) 1 commit
149 + (merged to 'next' on 2026-05-11 at fbb23860ca)
150 + + t5564: use a short path for the SOCKS proxy socket
151 +
152 + Avoid hitting the pathname limit for socks proxy socket during the
153 + test.
154 + source: <pull.2100.v2.git.1777450974159.gitgitgadget@gmail.com>
155
156 --------------------------------------------------
177 -[New Topics]
157 +[Cooking]
158
159 * js/mingw-no-nedmalloc (2026-05-08) 3 commits
160 - mingw: remove the vendored compat/nedmalloc/ subtree
@@ -189,12 +169,13 @@ Release tarballs are available at:
169
170
171 * sj/submodule-update-clone-config-fix (2026-05-09) 1 commit
192 - - submodule-config: fix reading submodule.fetchJobs
172 + (merged to 'next' on 2026-05-12 at 5a0094838a)
173 + + submodule-config: fix reading submodule.fetchJobs
174
175 The configuration variable submodule.fetchJobs was not read correctly,
176 which has been corrected.
177
197 - Will merge to 'next'.
178 + Will merge to 'master'.
179 source: <pull.2287.v4.git.git.1778385022964.gitgitgadget@gmail.com>
180
181
@@ -204,14 +185,13 @@ Release tarballs are available at:
185 Misspelt proxy URL (e.g., httt://...) did not trigger any warning
186 or failure, which has been corrected.
187
207 - Will merge to 'next'?
188 + Will merge to 'next'.
189 source: <20260505091941.1825-2-aminnimaj@gmail.com>
190
191
211 -* hn/branch-prune-merged (2026-05-05) 6 commits
192 +* hn/branch-prune-merged (2026-05-11) 5 commits
193 - branch: add --all-remotes flag
194 - branch: add branch.<name>.pruneMerged opt-out
214 - - fetch: add --prune-merged
195 - branch: add --prune-merged <remote>
196 - branch: let delete_branches warn instead of error on bulk refusal
197 - branch: add --forked <remote>
@@ -220,17 +200,18 @@ Release tarballs are available at:
200 local branches that have already been merged to the remote-tracking
201 branches they track.
202
223 - Expecting a reroll to remove "fetch" part?
224 - cf. <20260505220712.93952-1-haraldnordgren@gmail.com>
225 - source: <pull.2285.v4.git.git.1778009038.gitgitgadget@gmail.com>
203 + Expecting a reroll.
204 + cf. <xmqqse7xr0t7.fsf@gitster.g>
205 + source: <pull.2285.v6.git.git.1778492691.gitgitgadget@gmail.com>
206
207
208 * kh/doc-restore-double-underscores-fix (2026-05-05) 1 commit
229 - - doc: restore: remove double underscore
209 + (merged to 'next' on 2026-05-12 at 2e8fc7cdac)
210 + + doc: restore: remove double underscore
211
212 Doc update.
213
233 - Will merge to 'next'.
214 + Will merge to 'master'.
215 source: <double_underscore.670@msgid.xyz>
216
217
@@ -242,18 +223,20 @@ Release tarballs are available at:
223 The command line parser for "git diff" learned a few options take
224 only non-negative integers.
225
245 - Will merge to 'next'?
226 + Expecting a (hopefully small and final) reroll.
227 + cf. <CAC2QwmLH19+LHNaP=13c9Ov8x1zXvyDmEhN69_RpbOY+OqEVZA@mail.gmail.com>
228 source: <pull.2105.git.1778022144.gitgitgadget@gmail.com>
229
230
249 -* ps/clang-w-glibc-2.43-and-_Generic (2026-05-05) 1 commit
250 - - build: tolerate use of _Generic from glibc 2.43 with Clang
231 +* ps/clang-w-glibc-2.43-and-_Generic (2026-05-10) 1 commit
232 + (merged to 'next' on 2026-05-12 at fca23344f2)
233 + + build: tolerate use of _Generic from glibc 2.43 with Clang
234
235 Headers from glibc 2.43 when used with clang does not allow
236 disabling C11 language features, causing build failures..
237
255 - Will merge to 'next'.
256 - source: <20260505-b4-pks-ci-tolerate-glibc-generic-v1-1-5786386fe512@pks.im>
238 + Will merge to 'master'.
239 + source: <xmqqqzniset2.fsf@gitster.g>
240
241
242 * mm/git-url-parse (2026-05-01) 8 commits
@@ -270,14 +253,18 @@ Release tarballs are available at:
253 subcommand "git url-parse".
254
255 Will merge to 'next'?
256 + cf. <xmqqjyt9p9pk.fsf@gitster.g>
257 source: <pull.1715.v3.git.git.1777699722.gitgitgadget@gmail.com>
258
259
260 * kh/doc-commit-graph (2026-05-07) 1 commit
277 - - doc: add caveat about turning off commit-graph
261 + (merged to 'next' on 2026-05-12 at b9cafeb32d)
262 + + doc: add caveat about turning off commit-graph
263
264 Ramifications of turning off commit-graph has been documented a bit
265 more clearly.
266 +
267 + Will merge to 'master'.
268 source: <V3_caveat_commit-graph.6b6@msgid.xyz>
269
270
@@ -287,26 +274,19 @@ Release tarballs are available at:
274 Document the fact that .git/info/exclude is shared across worktrees
275 linked to the same repository.
276
290 - Will merge to 'next'?
277 + Needs more coverage.
278 + cf. <fd05eba1-d821-4cbe-ada6-ccab97308e56@gmail.com>
279 source: <d58b6e921d3005c6170fc6c47f175214acb3fa68.1778249267.git.ben.knoble+github@gmail.com>
280
281
294 -* jc/t5551-fix-expensive (2026-05-07) 1 commit
295 - - t5551: "GIT_TEST_LONG=Yes make test" is broken
296 -
297 - Test fix.
298 -
299 - Will merge to 'next'.
300 - source: <xmqqqznmeaco.fsf@gitster.g>
301 -
302 -
303 -* kk/paint-down-to-common-optim (2026-05-08) 1 commit
282 +* kk/paint-down-to-common-optim (2026-05-11) 2 commits
283 - commit-reach: early exit paint_down_to_common for single merge-base
284 + - commit-reach: introduce merge_base_flags enum
285
286 "git merge-base" optimization.
287
308 - Comments?
309 - source: <pull.2109.git.1778252837132.gitgitgadget@gmail.com>
288 + Will merge to 'next'.
289 + source: <pull.2109.v4.git.1778504352.gitgitgadget@gmail.com>
290
291
292 * st/daemon-sockaddr-fixes (2026-05-08) 1 commit
@@ -314,18 +294,20 @@ Release tarballs are available at:
294
295 Correct use of sockaddr API in "git daemon".
296
317 - Comments?
297 + Waiting for response(s) to review comment(s).
298 + cf. <agGLRC1ziF5F8Okh@pks.im>
299 source: <pull.2299.git.git.1778291290159.gitgitgadget@gmail.com>
300
301
302 * ag/rebase-update-refs-limit-to-branches (2026-05-10) 1 commit
322 - - rebase: ignore non-branch update-refs
303 + (merged to 'next' on 2026-05-12 at 5222da09bb)
304 + + rebase: ignore non-branch update-refs
305
306 "git rebase --update-refs", when used with an rebase.instructionFormat
307 with "%d" (describe) in it, tried to update local branch HEAD by
308 mistake, which has been corrected.
309
328 - Will merge to 'next'.
310 + Will merge to 'master'.
311 source: <20260510224111.64467-2-mail@abhinavg.net>
312
313
@@ -338,29 +320,28 @@ Release tarballs are available at:
320 integration branches closer to their origin in the contributor PR
321 builds.
322
341 - Comments?
323 + Will merge to 'next'.
324 source: <xmqqjyta9630.fsf@gitster.g>
325
326
327 * rs/sideband-clear-line-before-print (2026-05-10) 1 commit
346 - - sideband: clear full line when printing remote messages
328 + (merged to 'next' on 2026-05-12 at 83880f8ce6)
329 + + sideband: clear full line when printing remote messages
330
331 Tweak the way how sideband messages from remote are printed while
332 we talk with a remote repository to avoid tickling terminal
333 emulator glitches.
334
352 - Will merge to 'next'.
335 + Will merge to 'master'.
336 source: <9826dabf-c9a6-4397-8ae6-a24f9c507f1b@web.de>
337
355 ---------------------------------------------------
356 -[Cooking]
338
339 * jh/alias-i18n-fixes (2026-04-24) 1 commit
340 - alias: restore support for simple dotted aliases
341
342 Further update to the i18n alias support to avoid regressions.
343
363 - Will merge to 'next'?
344 + Will merge to 'next'.
345 source: <20260424161707.1514255-1-jonatan@jontes.page>
346
347
@@ -377,7 +358,9 @@ Release tarballs are available at:
358
359 Refactor service routines in the ref subsystem backends.
360
380 - Will merge to 'next'?
361 + Will merge to 'next'.
362 + cf. <afmFmGo_Sg33Rv6V@pks.im>
363 + cf. <87o6isqq4q.fsf@toon--20250203-5JQV3.mail-host-address-is-not-set>
364 source: <20260504-refs-move-to-generic-layer-v4-0-936ac2f0b1a3@gmail.com>
365
366
@@ -393,6 +376,7 @@ Release tarballs are available at:
376
377 Expecting a reroll.
378 cf. <CAD=f0L8-_3sDGGkCzF4WA0xmUtaY_qiz__3zq5AemLgwTsqvsg@mail.gmail.com>
379 + cf. <xmqqlddqu013.fsf@gitster.g>
380 source: <20260423165432.143598-1-belkid98@gmail.com>
381
382
@@ -403,16 +387,18 @@ Release tarballs are available at:
387
388 "git history" learned "fixup" command.
389
406 - Comments?
390 + Will merge to 'next'.
391 + cf. <xmqq33zxp4aq.fsf@gitster.g>
392 source: <20260427-b4-pks-history-fixup-v3-0-cb908f06264b@pks.im>
393
394
395 * rs/grep-column-only-match-fix (2026-04-24) 1 commit
411 - - grep: fix --column --only-match for 2nd and later matches
396 + (merged to 'next' on 2026-05-11 at a0d87e3104)
397 + + grep: fix --column --only-match for 2nd and later matches
398
399 "git grep" update.
400
415 - Will merge to 'next'.
401 + Will merge to 'master'.
402 source: <9bd69678-f04b-41d2-ad74-a386820d34c8@web.de>
403
404
@@ -421,7 +407,8 @@ Release tarballs are available at:
407
408 Use a larger buffer size in the code paths to ingest pack stream.
409
424 - Will merge to 'next'?
410 + Will merge to 'next'.
411 + cf. <xmqqy0hpnpkb.fsf@gitster.g>
412 source: <pull.2282.v4.git.git.1777387660841.gitgitgadget@gmail.com>
413
414
@@ -432,7 +419,8 @@ Release tarballs are available at:
419 Signing commit with custom encoding was passing the data to be
420 signed at a wrong stage in the pipeline, which has been corrected.
421
435 - Will merge to 'next'?
422 + Will merge to 'next'.
423 + cf. <xmqqtssdnpf7.fsf@gitster.g>
424 source: <20260427221834.1824543-1-sandals@crustytoothpaste.net>
425
426
@@ -452,22 +440,11 @@ Release tarballs are available at:
440 remotes via the promisor.acceptFromServerURL configuration
441 variable.
442
455 - Comments?
443 + Waiting for response(s) to review comment(s).
444 cf. <875x4yoys5.fsf@toon--20250203-5JQV3.mail-host-address-is-not-set>
445 source: <20260427124108.3524129-1-christian.couder@gmail.com>
446
447
460 -* js/maintenance-fix-deadlock-on-win10 (2026-05-07) 2 commits
461 - - maintenance(geometric): do release the `.idx` files before repacking
462 - - mingw: optionally use legacy (non-POSIX) delete semantics
463 -
464 - To help Windows 10 installations, avoid removing files whose
465 - contents are still mmap()'ed.
466 -
467 - Will merge to 'next'.
468 - source: <pull.2103.v2.git.1778158273.gitgitgadget@gmail.com>
469 -
470 -
448 * js/objects-larger-than-4gb-on-windows (2026-05-08) 11 commits
449 - ci: run expensive tests on push builds to integration branches
450 - t5608: mark >4GB tests as EXPENSIVE
@@ -489,24 +466,14 @@ Release tarballs are available at:
466 source: <pull.2102.v3.git.1778228209.gitgitgadget@gmail.com>
467
468
492 -* js/t5564-socks-use-short-path (2026-04-29) 1 commit
493 - (merged to 'next' on 2026-05-11 at fbb23860ca)
494 - + t5564: use a short path for the SOCKS proxy socket
495 -
496 - Avoid hitting the pathname limit for socks proxy socket during the
497 - test..
498 -
499 - Will merge to 'master'.
500 - source: <pull.2100.v2.git.1777450974159.gitgitgadget@gmail.com>
501 -
502 -
469 * kh/doc-log-decorate-list (2026-04-27) 2 commits
470 - doc: log: use the same delimiter in description list
471 - doc: log: fix --decorate description list
472
473 Doc update.
474
509 - Comments?
475 + Will merge to 'next'.
476 + cf. <xmqqpl31np0l.fsf@gitster.g>
477 source: <CV_doc_log_--decorate_list.626@msgid.xyz>
478
479
@@ -515,19 +482,20 @@ Release tarballs are available at:
482
483 Test update.
484
518 - Comments?
485 + Will merge to 'next'.
486 + cf. <xmqqfr3xnofn.fsf@gitster.g>
487 source: <20260429103607.406339-1-zakariyahali100@gmail.com>
488
489
522 -* hn/checkout-track-fetch (2026-05-08) 1 commit
490 +* hn/checkout-track-fetch (2026-05-11) 1 commit
491 - checkout: extend --track with a "fetch" mode to refresh start-point
492
493 "git checkout --track=..." learned to optionally fetch the branch
494 from the remote the new branch will work with.
495
496 Comments?
529 - cf. <f23eb128-958f-475f-911b-eac4f6daddff@gmail.com>
530 - source: <pull.2281.v7.git.git.1778280727849.gitgitgadget@gmail.com>
497 + cf. <xmqqh5odqxh2.fsf@gitster.g>
498 + source: <pull.2281.v8.git.git.1778507225500.gitgitgadget@gmail.com>
499
500
501 * mf/revision-max-count-oldest (2026-05-09) 2 commits
@@ -537,7 +505,8 @@ Release tarballs are available at:
505 "git rev-list" (and "git log" family of commands) learned a new "--max-count-oldest"
506 that picks oldest N commits in the range instead of the usual newest.
507
540 - Comments?
508 + Expecting a (hopefully small and final) reroll.
509 + cf. <af_SX9mQPLxolg4k@exploit>
510 source: <2f71a00b035e25b971641b77a6fa7626f1e2459c.1777578676.git.mroik@delayed.space>
511
512
@@ -549,19 +518,21 @@ Release tarballs are available at:
518 Code clean-up.
519
520 Comments?
521 + cf. <xmqqfr3xp98b.fsf@gitster.g>
522 source: <pull.2094.git.1777349126.gitgitgadget@gmail.com>
523
524
525 * pw/rename-to-get-current-worktree (2026-05-01) 1 commit
556 - - worktree: rename get_worktree_from_repository()
526 + (merged to 'next' on 2026-05-11 at 36ca1d49e2)
527 + + worktree: rename get_worktree_from_repository()
528
529 Code clean-up.
530
560 - Will merge to 'next'.
531 + Will merge to 'master'.
532 source: <bd48396137f8d1352d11b3bd2dca2848f24a347d.1777648798.git.phillip.wood@dunelm.org.uk>
533
534
564 -* ds/path-walk-filters (2026-05-04) 11 commits
535 +* ds/path-walk-filters (2026-05-11) 13 commits
536 - path-walk: support `combine` filter
537 - path-walk: support `object:type` filter
538 - path-walk: support `tree:0` filter
@@ -570,17 +541,19 @@ Release tarballs are available at:
541 - path-walk: support blob size limit filter
542 - backfill: die on incompatible filter options
543 - path-walk: support blobless filter
544 + - path-walk: always emit directly-requested objects
545 - t/perf: add pack-objects filter and path-walk benchmark
546 - pack-objects: pass --objects with --path-walk
547 + - t5620: make test work with path-walk var
548 - Merge branch 'en/backfill-fixes-and-edges' into ds/path-walk-filters
549 (this branch uses en/backfill-fixes-and-edges.)
550
551 The "git pack-objects --path-walk" traversal has been integrated
552 with several object filters, including blobless and sparse filters.
553
581 - Expecting a reroll?
582 - cf. <07b36bd8-376b-4a98-a735-0c0f75452c24@gmail.com>
583 - source: <pull.2101.v2.git.1777926079.gitgitgadget@gmail.com>
554 + Expecting a (hopefully small and final) reroll.
555 + cf. <0b4a8595-63e3-427c-8920-af4271ae1714@gmail.com>
556 + source: <pull.2101.v3.git.1778523189.gitgitgadget@gmail.com>
557
558
559 * en/ort-cached-rename-with-trivial-resolution (2026-04-20) 1 commit
@@ -607,31 +580,6 @@ Release tarballs are available at:
580 source: <pull.2096.git.1776731171.gitgitgadget@gmail.com>
581
582
610 -* jk/revert-aa-reap-transport-child-processes (2026-04-22) 1 commit
611 - (merged to 'next' on 2026-05-11 at b41904c1d3)
612 - + Revert "transport-helper, connect: use clean_on_exit to reap children on abnormal exit"
613 -
614 - Revert a recent change that introduced a regression to help mksh users.
615 -
616 - Will merge to 'master'.
617 - source: <20260422230020.GA1839627@coredump.intra.peff.net>
618 -
619 -
620 -* js/ci-github-actions-update (2026-04-30) 6 commits
621 - (merged to 'next' on 2026-05-11 at ba87f84054)
622 - + l10n: bump mshick/add-pr-comment from v2 to v3
623 - + ci: bump git-for-windows/setup-git-for-windows-sdk from v1 to v2
624 - + ci: bump actions/checkout from v5 to v6
625 - + ci: bump actions/github-script from v8 to v9
626 - + ci: bump actions/{upload,download}-artifact to v7 and v8
627 - + ci: bump microsoft/setup-msbuild from v2 to v3
628 -
629 - Update various GitHub Actions versions.
630 -
631 - Will merge to 'master'.
632 - source: <pull.2097.v3.git.1777534500.gitgitgadget@gmail.com>
633 -
634 -
583 * mf/format-patch-cover-letter-format-docfix (2026-04-22) 1 commit
584 (merged to 'next' on 2026-05-11 at 3cca9cc117)
585 + Fix docs for format.commitListFormat
@@ -643,11 +591,12 @@ Release tarballs are available at:
591
592
593 * sg/t6112-unwanted-tilde-expansion-fix (2026-04-21) 1 commit
646 - - t6112: avoid tilde expansion
594 + (merged to 'next' on 2026-05-12 at ad2d08eb44)
595 + + t6112: avoid tilde expansion
596
597 Test fix.
598
650 - Will merge to 'next'.
599 + Will merge to 'master'.
600 source: <20260421192132.51172-1-szeder.dev@gmail.com>
601
602
@@ -676,7 +625,7 @@ Release tarballs are available at:
625 source: <20260421053334.5414-1-r.siddharth.shrimali@gmail.com>
626
627
679 -* tb/pseudo-merge-bugfixes (2026-04-21) 9 commits
628 +* tb/pseudo-merge-bugfixes (2026-05-11) 9 commits
629 - pack-bitmap: prevent pattern leak on pseudo-merge re-assignment
630 - Documentation: fix broken `sampleRate` in gitpacking(7)
631 - pack-bitmap: reject pseudo-merge "sampleRate" of 0
@@ -689,9 +638,8 @@ Release tarballs are available at:
638
639 Fixes many bugs in pseudo-merge code.
640
692 - Expecting (hopefully minor and final) reroll.
693 - cf. <CABPp-BGkfavqezk2SV3+K6iF8MLm8j_=ijHiPDLmv_U_o_Ykgg@mail.gmail.com>
694 - source: <cover.1776801694.git.me@ttaylorr.com>
641 + Will merge to 'next'.
642 + source: <cover.1778546804.git.me@ttaylorr.com>
643
644
645 * ds/fetch-negotiation-options (2026-04-22) 7 commits
@@ -729,7 +677,8 @@ Release tarballs are available at:
677
678
679 * mc/http-emptyauth-negotiate-fix (2026-04-30) 4 commits
732 - - doc: clarify http.emptyAuth values
680 + (merged to 'next' on 2026-05-12 at 843ae82cd0)
681 + + doc: clarify http.emptyAuth values
682 (merged to 'next' on 2026-04-20 at 6539524ca2)
683 + t5563: add tests for http.emptyAuth with Negotiate
684 + http: attempt Negotiate auth in http.emptyAuth=auto mode
@@ -740,7 +689,7 @@ Release tarballs are available at:
689 This allows seamless Kerberos ticket-based authentication without
690 requiring users to explicitly set 'http.emptyAuth=true'.
691
743 - Will merge to 'next' and then to 'master'.
692 + Will merge to 'master'.
693 source: <e0f236767f81ea60f90749d1bc00ab78081efd0e.1777546472.git.gitgitgadget@gmail.com>
694 source: <pull.2087.git.1776331259.gitgitgadget@gmail.com>
695
@@ -755,7 +704,8 @@ Release tarballs are available at:
704 to collect necessary object names and fetch them in bulk to gain
705 reasonable performance.
706
758 - Needs review.
707 + Expecting a reroll.
708 + cf. <CABPp-BFdYjnjhSrjEBf8kjYYY2jtrQ_=w0jYR+DDWh3szmtvqQ@mail.gmail.com>
709 source: <pull.2089.v2.git.1776472347.gitgitgadget@gmail.com>
710
711
@@ -767,7 +717,7 @@ Release tarballs are available at:
717 into account error cases (e.g., an invalid UTF-8 sequence, or a
718 control character).
719
770 - Will merge to 'next'?
720 + Will merge to 'next'.
721 source: <pull.2093.v3.git.1776699778177.gitgitgadget@gmail.com>
722
723
@@ -796,7 +746,7 @@ Release tarballs are available at:
746 tentative objects (like the virtual blob object that represents the
747 working tree file used by "git blame").
748
799 - Will merge to 'next'.
749 + Need to wait for the base topioc.
750 source: <20260410-b4-pks-odb-source-inmemory-v3-0-22fd0fad58fe@pks.im>
751
752
@@ -814,7 +764,7 @@ Release tarballs are available at:
764 allowed; rewrite some of them to avoid the assumption, rewrite
765 others to explicitly set safe.bareRepository to allow them.
766
817 - Will merge to 'next'?
767 + Will merge to 'next'.
768 source: <pull.2098.v2.git.1777214316.gitgitgadget@gmail.com>
769
770
@@ -826,7 +776,8 @@ Release tarballs are available at:
776 configuration files has learned to use the location of worktree
777 in its condition.
778
829 - Comments?
779 + Needs review.
780 + cf. <xmqq4ikdnn8g.fsf@gitster.g>
781 source: <20260403-includeif-worktree-v3-0-109ce5782b03@black-desk.cn>
782
783
@@ -838,21 +789,10 @@ Release tarballs are available at:
789 commit, which has been corrected by making the spot below a root
790 unavailable.
791
841 - Will merge to 'next'?
792 + Will merge to 'next'.
793 source: <20260427102838.44867-2-pabloosabaterr@gmail.com>
794
795
845 -* jt/config-lock-timeout (2026-04-03) 1 commit
846 - - config: retry acquiring config.lock for 100ms
847 -
848 - The code path to update the configuration file has been taught to
849 - use a short timeout to retry.
850 -
851 - Waiting for a review response.
852 - cf. <adYvSZeN0ZVqwRhi@pks.im>
853 - source: <20260403100135.3901610-1-joerg@thalheim.io>
854 -
855 -
796 * lp/repack-propagate-promisor-debugging-info (2026-04-18) 6 commits
797 - repack-promisor: add missing headers
798 - t7703: test for promisor file content after geometric repack
@@ -866,7 +806,8 @@ Release tarballs are available at:
806 repack" has been taught to carry this information forward to
807 packfiles that are newly created.
808
869 - Comments?
809 + Needs review.
810 + cf. <xmqqse7xm8av.fsf@gitster.g>
811 source: <cover.1776384902.git.lorenzo.pegorari2002@gmail.com>
812
813
@@ -894,7 +835,8 @@ Release tarballs are available at:
835 ODB transaction interface is being reworked to explicitly handle
836 object writes.
837
897 - Will merge to 'next'.
838 + Needs leakfix.
839 + cf. <20260511175835.GA4811@coredump.intra.peff.net>
840 source: <20260402213220.2651523-1-jltobler@gmail.com>
841
842
@@ -930,7 +872,7 @@ Release tarballs are available at:
872 have been implemented, and incremental strategy that does not require
873 all-into-one repacking has been introduced.
874
933 - Will merge to 'next'?
875 + Will merge to 'next'.
876 source: <cover.1777507303.git.me@ttaylorr.com>
877
878
@@ -987,6 +929,7 @@ Release tarballs are available at:
929 Documentation updates.
930
931 Needs review.
932 + cf. <xmqq1pfivfa3.fsf@gitster.g>
933 source: <V2_CV_doc_int-tr_key_format.613@msgid.xyz>
934
935
@@ -999,7 +942,7 @@ Release tarballs are available at:
942 limited to a specified number of lanes, preventing overly wide output
943 in repositories with many branches.
944
1002 - Needs review.
945 + Will merge to 'next'?
946 cf. <bdff0a5d-b738-4053-9b72-08eba88156de@kdbg.org>
947 source: <20260328001113.1275291-1-pabloosabaterr@gmail.com>
948
@@ -1011,7 +954,8 @@ Release tarballs are available at:
954 "git bisect" now uses the selected terms (e.g., old/new) more
955 consistently in its output.
956
1014 - Needs review.
957 + Waiting for response(s) to review comment(s).
958 + cf. <xmqqjyu5weli.fsf@gitster.g>
959 source: <20260417-bisect-terms-v3-0-d659fa547261@schlaraffenlan.de>
960
961
@@ -1028,34 +972,36 @@ Release tarballs are available at:
972
973
974 * hn/git-checkout-m-with-stash (2026-04-28) 5 commits
1031 - - checkout -m: autostash when switching branches
1032 - - checkout: rollback lock on early returns in merge_working_tree
1033 - - sequencer: teach autostash apply to take optional conflict marker labels
1034 - - sequencer: allow create_autostash to run silently
1035 - - stash: add --label-ours, --label-theirs, --label-base for apply
975 + (merged to 'next' on 2026-05-11 at 46adae5e5d)
976 + + checkout -m: autostash when switching branches
977 + + checkout: rollback lock on early returns in merge_working_tree
978 + + sequencer: teach autostash apply to take optional conflict marker labels
979 + + sequencer: allow create_autostash to run silently
980 + + stash: add --label-ours, --label-theirs, --label-base for apply
981
982 "git checkout -m another-branch" was invented to deal with local
983 changes to paths that are different between the current and the new
984 branch, but it gave only one chance to resolve conflicts. The command
985 was taught to create a stash to save the local changes.
986
1042 - Will merge to 'next'.
987 + Will merge to 'master'.
988 source: <pull.2234.v16.git.git.1777401552.gitgitgadget@gmail.com>
989
990
1046 -* kh/name-rev-custom-format (2026-05-07) 5 commits
1047 - - format-rev: introduce builtin for on-demand pretty formatting
1048 - - name-rev: make dedicated --annotate-stdin --name-only test
1049 - - name-rev: factor code for sharing with a new command
1050 - - name-rev: run clang-format before factoring code
1051 - - name-rev: wrap both blocks in braces
991 +* kh/name-rev-custom-format (2026-05-11) 5 commits
992 + (merged to 'next' on 2026-05-12 at c944d6131e)
993 + + format-rev: introduce builtin for on-demand pretty formatting
994 + + name-rev: make dedicated --annotate-stdin --name-only test
995 + + name-rev: factor code for sharing with a new command
996 + + name-rev: run clang-format before factoring code
997 + + name-rev: wrap both blocks in braces
998
999 A new builtin "git format-rev" is introduced for pretty formatting
1000 one revision expression per line or commit object names found in
1001 running text.
1002
1057 - Will merge to 'next'.
1058 - source: <V4_CV_format-rev.6aa@msgid.xyz>
1003 + Will merge to 'master'.
1004 + source: <V5_CV_format-rev.6c9@msgid.xyz>
1005
1006
1007 * js/parseopt-subcommand-autocorrection (2026-04-27) 11 commits
@@ -1075,50 +1021,18 @@ Release tarballs are available at:
1021 subcommand names.
1022
1023 Expecting a reroll.
1024 + cf. <xmqqcxz2tzpr.fsf@gitster.g>
1025 source: <SY0P300MB0801677A2A1E0FD38D06A841CE2A2@SY0P300MB0801.AUSP300.PROD.OUTLOOK.COM>
1026
1027
1081 -* ab/clone-default-object-filter (2026-03-14) 1 commit
1082 - - clone: add clone.<url>.defaultObjectFilter config
1083 -
1084 - "git clone" learns to pay attention to "clone.<url>.defaultObjectFilter"
1085 - configuration and behave as if the "--filter=<filter-spec>" option
1086 - was given on the command line.
1087 -
1088 - Expecting review responses.
1089 - cf. <abe1l8ONmFIhzaxi@pks.im>
1090 - source: <pull.2058.v6.git.1773553022381.gitgitgadget@gmail.com>
1091 -
1092 -
1093 -* jc/neuter-sideband-fixup (2026-03-05) 6 commits
1094 - (merged to 'next' on 2026-03-13 at 5a4098b0cd)
1095 - + sideband: drop 'default' configuration
1096 - + sideband: offer to configure sanitizing on a per-URL basis
1097 - + sideband: add options to allow more control sequences to be passed through
1098 - + sideband: do allow ANSI color sequences by default
1099 - + sideband: introduce an "escape hatch" to allow control characters
1100 - + sideband: mask control characters
1101 - (this branch is used by jc/neuter-sideband-post-3.0.)
1102 -
1103 - Try to resurrect and reboot a stalled "avoid sending risky escape
1104 - sequences taken from sideband to the terminal" topic by Dscho. The
1105 - plan is to keep it in 'next' long enough to see if anybody screams
1106 - with the "everything dropped except for ANSI color escape sequences"
1107 - default.
1108 -
1109 - Will keep in 'next' a bit longer than usual.
1110 - source: <20260305233452.3727126-1-gitster@pobox.com>
1111 -
1112 -
1028 * jc/neuter-sideband-post-3.0 (2026-03-05) 2 commits
1029 - sideband: delay sanitizing by default to Git v3.0
1030 - Merge branch 'jc/neuter-sideband-fixup' into jc/neuter-sideband-post-3.0
1116 - (this branch uses jc/neuter-sideband-fixup.)
1031
1032 The final step, split from earlier attempt by Dscho, to loosen the
1033 sideband restriction for now and tighten later at Git v3.0 boundary.
1034
1121 - On hold, until jc/neuter-sideband-fixup cooks long enough in 'next'.
1035 + On hold to help the base topic with wider exposure.
1036 (this branch uses jc/neuter-sideband-fixup.)
1037 source: <20260305233452.3727126-8-gitster@pobox.com>
1038
@@ -1135,18 +1049,6 @@ Release tarballs are available at:
1049 source: <20260305-cs-subtree-split-recursion-v2-0-7266be870ba9@howdoi.land>
1050
1051
1138 -* pt/promisor-lazy-fetch-no-recurse (2026-03-11) 1 commit
1139 - - promisor-remote: prevent lazy-fetch recursion in child fetch
1140 -
1141 - The mechanism to avoid recursive lazy-fetch from promisor remotes
1142 - was not propagated properly to child "git fetch" processes, which
1143 - has been corrected.
1144 -
1145 - Will discard.
1146 - cf. <xmqqik9s6qvd.fsf@gitster.g>
1147 - source: <pull.2224.v3.git.git.1773238778894.gitgitgadget@gmail.com>
1148 -
1149 -
1052 * pt/fsmonitor-linux (2026-04-15) 13 commits
1053 - fsmonitor: convert shown khash to strset in do_handle_client
1054 - fsmonitor: add tests for Linux
@@ -1165,6 +1067,7 @@ Release tarballs are available at:
1067 The fsmonitor daemon has been implemented for Linux.
1068
1069 Will merge to 'next'?
1070 + cf. <xmqqa4u5nnxq.fsf@gitster.g>
1071 source: <pull.2147.v15.git.git.1776259657.gitgitgadget@gmail.com>
1072
1073
@@ -1179,20 +1082,60 @@ Release tarballs are available at:
1082 Shrink wasted memory in Myers diff that does not account for common
1083 prefix and suffix removal.
1084
1182 - Will merge to 'next'?
1085 + Will merge to 'next'.
1086 source: <cover.1777903579.git.phillip.wood@dunelm.org.uk>
1087
1088
1089 * en/xdiff-cleanup-3 (2026-04-29) 6 commits
1187 - - xdiff/xdl_cleanup_records: make execution of action easier to follow
1188 - - xdiff/xdl_cleanup_records: make setting action easier to follow
1189 - - xdiff/xdl_cleanup_records: make limits more clear
1190 - - xdiff/xdl_cleanup_records: use unambiguous types
1191 - - xdiff: use unambiguous types in xdl_bogo_sqrt()
1192 - - xdiff/xdl_cleanup_records: delete local recs pointer
1090 + (merged to 'next' on 2026-05-12 at e4e72e0f34)
1091 + + xdiff/xdl_cleanup_records: make execution of action easier to follow
1092 + + xdiff/xdl_cleanup_records: make setting action easier to follow
1093 + + xdiff/xdl_cleanup_records: make limits more clear
1094 + + xdiff/xdl_cleanup_records: use unambiguous types
1095 + + xdiff: use unambiguous types in xdl_bogo_sqrt()
1096 + + xdiff/xdl_cleanup_records: delete local recs pointer
1097 (this branch is used by pw/xdiff-shrink-memory-consumption.)
1098
1099 Preparation of the xdiff/ codebase to work with Rust.
1100
1197 - Will merge to 'next'.
1101 + Will merge to 'master'.
1102 source: <pull.2156.v6.git.git.1777500495.gitgitgadget@gmail.com>
1103 +
1104 +--------------------------------------------------
1105 +[Discarded]
1106 +
1107 +* pt/promisor-lazy-fetch-no-recurse (2026-03-11) 1 commit
1108 + . promisor-remote: prevent lazy-fetch recursion in child fetch
1109 +
1110 + The mechanism to avoid recursive lazy-fetch from promisor remotes
1111 + was not propagated properly to child "git fetch" processes, which
1112 + has been corrected.
1113 +
1114 + Dropped due to a long silence and inactivity.
1115 + cf. <xmqqik9s6qvd.fsf@gitster.g>
1116 + source: <pull.2224.v3.git.git.1773238778894.gitgitgadget@gmail.com>
1117 +
1118 +
1119 +* jt/config-lock-timeout (2026-04-03) 1 commit
1120 + . config: retry acquiring config.lock for 100ms
1121 +
1122 + The code path to update the configuration file has been taught to
1123 + use a short timeout to retry.
1124 +
1125 + Dropped due to a long silence and inactivity.
1126 + cf. <adYvSZeN0ZVqwRhi@pks.im>
1127 + cf. <xmqqcxz2vfpa.fsf@gitster.g>
1128 + source: <20260403100135.3901610-1-joerg@thalheim.io>
1129 +
1130 +
1131 +* ab/clone-default-object-filter (2026-03-14) 1 commit
1132 + . clone: add clone.<url>.defaultObjectFilter config
1133 +
1134 + "git clone" learns to pay attention to "clone.<url>.defaultObjectFilter"
1135 + configuration and behave as if the "--filter=<filter-spec>" option
1136 + was given on the command line.
1137 +
1138 + Dropped due to a long silence and inactivity.
1139 + cf. <abe1l8ONmFIhzaxi@pks.im>
1140 + cf. <xmqq8q9qvffs.fsf@gitster.g>
1141 + source: <pull.2058.v6.git.1773553022381.gitgitgadget@gmail.com>