What's cooking (2026/03 #09)
Junio C Hamano committed
Mar 23, 2026 at 15:28 UTC
98b621f6d3494cb11042daad3bdfb0552afcd24c
1 file changed
+178
-124
whats-cooking.txt
+178
-124
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
-Subject: What's cooking in git.git (Mar 2026, #08)
3
-X-master-at: 6e8d538aab8fe4dd07ba9fb87b5c7edcfa5706ad
4
-X-next-at: aef58811091ead010da1c5dc590e2731c9cbcefe
2
+Subject: What's cooking in git.git (Mar 2026, #09)
3
+X-master-at: 1080981ddb03a072f1e6b55c6325c2af731e733c
4
+X-next-at: aa363f00f1017ba2d0ed58153d65d48a48e616ea
5
Bcc: lwn@lwn.net, gitster@pobox.com
6
7
-What's cooking in git.git (Mar 2026, #08)
7
+What's cooking in git.git (Mar 2026, #09)
8
-----------------------------------------
9
10
Here are the topics that have been cooking in my tree. Commits
@@ -45,9 +45,136 @@ Release tarballs are available at:
45
46
https://www.kernel.org/pub/software/scm/git/
47
48
+--------------------------------------------------
49
+[Graduated to 'master']
50
+
51
+* ac/help-sort-correctly (2026-03-11) 1 commit
52
+ (merged to 'next' on 2026-03-16 at db220e143f)
53
+ + help: cleanup the contruction of keys_uniq
54
+
55
+ The code in "git help" that shows configuration items in sorted
56
+ order was awkwardly organized and prone to bugs.
57
+ source: <20260311192453.62213-1-amishhhaaaa@gmail.com>
58
+
59
+
60
+* bb/imap-send-openssl-4.0-prep (2026-03-11) 3 commits
61
+ (merged to 'next' on 2026-03-16 at 0baab97778)
62
+ + imap-send: move common code into function host_matches()
63
+ + imap-send: use the OpenSSL API to access the subject common name
64
+ + imap-send: use the OpenSSL API to access the subject alternative names
65
+
66
+ "imap-send" used to use functions whose use is going to be removed
67
+ with OpenSSL 4.0; rewrite them using public API that has been
68
+ available since OpenSSL 1.1 since 2016 or so.
69
+ source: <20260311121107.1122387-1-dev+git@drbeat.li>
70
+
71
+
72
+* cf/constness-fixes (2026-03-08) 2 commits
73
+ (merged to 'next' on 2026-03-13 at 3c80964399)
74
+ + dir: avoid -Wdiscarded-qualifiers in remove_path()
75
+ + bloom: remove a misleading const qualifier
76
+
77
+ Small code clean-up around the constness area.
78
+ source: <3ad40c3d0762c2e8c14792dfb68cba9f63a883a3.1773026586.git.collin.funk1@gmail.com>
79
+
80
+
81
+* jc/test-allow-sed-with-ere (2026-03-11) 1 commit
82
+ (merged to 'next' on 2026-03-16 at be057bed35)
83
+ + t: allow use of "sed -E"
84
+
85
+ Adjust test-lint to allow "sed -E" to use ERE in the patterns.
86
+ source: <xmqq3425lvtq.fsf@gitster.g>
87
+
88
+
89
+* ms/t7605-test-path-is-helpers (2026-03-10) 1 commit
90
+ (merged to 'next' on 2026-03-16 at 49facdec9f)
91
+ + t7605: use test_path_is_file instead of test -f
92
+
93
+ Test updates.
94
+ source: <pull.2067.v2.git.1773183022175.gitgitgadget@gmail.com>
95
+
96
+
97
+* ng/submodule-default-remote (2026-03-03) 1 commit
98
+ (merged to 'next' on 2026-03-16 at d41fd28450)
99
+ + submodule: fetch missing objects from default remote
100
+
101
+ Instead of hardcoded 'origin', use the configured default remote
102
+ when fetching from submodules.
103
+ source: <20260303234044.105157-1-nasser.grainawi@oss.qualcomm.com>
104
+
105
+
106
+* ty/mktree-wo-the-repository (2026-03-12) 1 commit
107
+ (merged to 'next' on 2026-03-16 at 8d20ceb853)
108
+ + builtin/mktree: remove USE_THE_REPOSITORY_VARIABLE
109
+
110
+ Code clean-up.
111
+ source: <20260312164203.964033-1-cat@malon.dev>
112
+
113
--------------------------------------------------
114
[New Topics]
115
116
+* ps/graph-lane-limit (2026-03-23) 3 commits
117
+ - graph: add documentation and tests about --graph-lane-limit
118
+ - graph: truncate graph visual output
119
+ - graph: add --graph-lane-limit option
120
+
121
+ The graph output from commands like "git log --graph" can now be
122
+ limited to a specified number of lanes, preventing overly wide output
123
+ in repositories with many branches.
124
+
125
+ Needs review.
126
+ source: <20260323215935.74486-1-pabloosabaterr@gmail.com>
127
+
128
+
129
+* rs/use-strvec-pushv (2026-03-19) 1 commit
130
+ - use strvec_pushv() to add another strvec
131
+
132
+ Code paths that loop over another array to push each element into a
133
+ strvec have been rewritten to use strvec_pushv() instead.
134
+
135
+ Will merge to 'next'.
136
+ source: <084f3b43-91ac-4553-8305-03944e97eaa6@web.de>
137
+
138
+
139
+* cc/promisor-auto-config-url (2026-03-23) 16 commits
140
+ - doc: promisor: improve acceptFromServer entry
141
+ - promisor-remote: auto-configure unknown remotes
142
+ - promisor-remote: trust known remotes matching acceptFromServerUrl
143
+ - promisor-remote: introduce promisor.acceptFromServerUrl
144
+ - t5710: use proper file:// URIs for absolute paths
145
+ - promisor-remote: refactor should_accept_remote() control flow
146
+ - promisor-remote: pass config entry to all_fields_match() directly
147
+ - promisor-remote: add 'local_name' to 'struct promisor_info'
148
+ - promisor-remote: remove the 'accepted' strvec
149
+ - promisor-remote: keep accepted promisor_info structs alive
150
+ - promisor-remote: refactor accept_from_server()
151
+ - promisor-remote: refactor has_control_char()
152
+ - promisor-remote: clarify that a remote is ignored
153
+ - urlmatch: add url_is_valid_pattern() helper
154
+ - urlmatch: change 'allow_globs' arg to bool
155
+ - promisor-remote: try accepted remotes before others in get_direct()
156
+
157
+ Promisor remote handling is enhanced to auto-configure remotes based
158
+ on a URL whitelist.
159
+
160
+ Needs review.
161
+ source: <20260323080520.887550-1-christian.couder@gmail.com>
162
+
163
+
164
+* kj/refspec-parsing-outside-repository (2026-03-21) 2 commits
165
+ - refspec: fix typo in comment
166
+ - refspec: safely parse refspecs outside a repository
167
+
168
+ "git ls-remote '+refs/tags/*:refs/tags/*' https://..." run outside a
169
+ repository would dereference a NULL while trying to see if the given
170
+ refspec is a single-object refspec, which has been corrected.
171
+
172
+ Will merge to 'next'?
173
+ source: <20260322023557.15907-1-jayatheerthkulkarni2005@gmail.com>
174
+
175
+--------------------------------------------------
176
+[Cooking]
177
+
178
* jk/diff-highlight-identical-pairs (2026-03-17) 1 commit
179
(merged to 'next' on 2026-03-20 at a8aa5bd14e)
180
+ contrib/diff-highlight: do not highlight identical pairs
@@ -60,7 +187,7 @@ Release tarballs are available at:
187
source: <20260317230223.GA716496@coredump.intra.peff.net>
188
189
63
-* jk/diff-highlight-more (2026-03-19) 9 commits
190
+* jk/diff-highlight-more (2026-03-22) 9 commits
191
- diff-highlight: fetch all config with one process
192
- diff-highlight: allow module callers to pass in color config
193
- diff-highlight: test color config
@@ -76,22 +203,11 @@ Release tarballs are available at:
203
updates, test improvements, and color configuration handling.
204
205
Will merge to 'next'.
79
- source: <20260320004138.GA3653623@coredump.intra.peff.net>
80
-
81
-
82
-* js/macos-homebrew-forgets-reg-enhanced (2026-03-20) 1 commit
83
- - osx-clang: work around Homebrew's clang lacking REG_ENHANCED
84
-
85
- The build on macOS with Clang is fixed to work around a Homebrew change
86
- that exposed an issue with missing REG_ENHANCED.
87
-
88
- Will merge to 'next'?
89
- source: <d340af9e-334c-4e81-e58a-fc3dea73ebdd@gmx.de>
206
+ source: <20260323060139.GA10215@coredump.intra.peff.net>
207
208
92
-* ps/fsck-wo-the-repository (2026-03-20) 14 commits
209
+* ps/fsck-wo-the-repository (2026-03-23) 12 commits
210
- builtin/fsck: stop using `the_repository` in error reporting
94
- - fsck: provide repository in `struct fsck_report_object`
211
- builtin/fsck: stop using `the_repository` when marking objects
212
- builtin/fsck: stop using `the_repository` when checking packed objects
213
- builtin/fsck: stop using `the_repository` with loose objects
@@ -99,17 +215,16 @@ Release tarballs are available at:
215
- builtin/fsck: stop using `the_repository` when checking refs
216
- builtin/fsck: stop using `the_repository` when snapshotting refs
217
- builtin/fsck: fix trivial dependence on `the_repository`
102
- - fsck: stop relying on global state via `parse_oid_hex()`
103
- - fsck: drop `the_repository` in `fsck_set_msg_types()`
104
- - fsck: refactor interface to parse fsck options
105
- - fsck: drop `the_repository` in `fsck_finish()`
106
- - fsck: drop `the_repository` in `fsck_walk()`
218
+ - fsck: drop USE_THE_REPOSITORY
219
+ - fsck: store repository in fsck options
220
+ - fsck: initialize fsck options via a function
221
+ - fetch-pack: move fsck options into function scope
222
223
Internals of "git fsck" have been refactored to not depend on the
224
global `the_repository` variable.
225
111
- Comments?
112
- source: <20260320-b4-pks-fsck-without-the-repository-v1-0-6594f997926b@pks.im>
226
+ Needs review.
227
+ source: <20260323-b4-pks-fsck-without-the-repository-v2-0-e8dc79bca651@pks.im>
228
229
230
* tb/stdin-packs-excluded-but-open (2026-03-19) 5 commits
@@ -132,7 +247,8 @@ Release tarballs are available at:
247
The value of a wrong pointer variable was referenced in an error
248
message that reported that it shouldn't be NULL.
249
135
- Will merge to 'next'?
250
+ Reproduction being discussed.
251
+ cf. <994f92e9-3576-455a-a142-0fefc559131c@gmail.com>
252
source: <20260320114823.3151961-1-ysinghcin@gmail.com>
253
254
@@ -146,8 +262,6 @@ Release tarballs are available at:
262
cf. <xmqqfr5tdbpc.fsf@gitster.g>
263
source: <20260320-bisect-terms-v1-1-c30c9540542a@schlaraffenlan.de>
264
149
---------------------------------------------------
150
-[Cooking]
265
266
* jc/whitespace-incomplete-line (2026-03-17) 1 commit
267
- apply: fix new-style empty context line triggering incomplete-line check
@@ -167,7 +281,8 @@ Release tarballs are available at:
281
source: <20260317155230.619378-1-shreyanshpaliwalcmsmn@gmail.com>
282
283
170
-* ds/backfill-revs (2026-03-16) 5 commits
284
+* ds/backfill-revs (2026-03-23) 6 commits
285
+ - t5620: test backfill's unknown argument handling
286
- path-walk: support wildcard pathspecs for blob filtering
287
- backfill: work with prefix pathspecs
288
- backfill: accept revision arguments
@@ -176,16 +291,17 @@ Release tarballs are available at:
291
292
`git backfill` learned to accept revision and pathspec arguments.
293
179
- Needs review.
180
- source: <pull.2070.git.1773707361.gitgitgadget@gmail.com>
294
+ Comments?
295
+ source: <pull.2070.v2.git.1774266019.gitgitgadget@gmail.com>
296
297
298
* jw/t2203-status-pipe-fix (2026-03-16) 1 commit
184
- - t2203: avoid suppressing git status exit code
299
+ (merged to 'next' on 2026-03-23 at 521c6eb44b)
300
+ + t2203: avoid suppressing git status exit code
301
302
Test clean-up.
303
188
- Will merge to 'next'.
304
+ Will merge to 'master'.
305
source: <20260317011544.65952-1-jerrywang183@yahoo.com>
306
307
@@ -232,22 +348,24 @@ Release tarballs are available at:
348
349
350
* jw/object-name-bitset-to-enum (2026-03-18) 1 commit
235
- - object-name: turn INTERPRET_BRANCH_* constants into enum values
351
+ (merged to 'next' on 2026-03-23 at 881af371ef)
352
+ + object-name: turn INTERPRET_BRANCH_* constants into enum values
353
354
The unsigned integer that is used as an bitset to specify the kind
355
of branches interpret_branch_name() function has been changed to
356
use a dedicated enum type.
357
241
- Will merge to 'next'.
358
+ Will merge to 'master'.
359
source: <20260318190942.22595-1-jerrywang183@yahoo.com>
360
361
362
* ai/t2107-test-path-is-helpers (2026-03-18) 1 commit
246
- - t2107: modernize path existence check
363
+ (merged to 'next' on 2026-03-23 at 56d10e5f76)
364
+ + t2107: modernize path existence check
365
366
Test cleanup.
367
250
- Will merge to 'next'.
368
+ Will merge to 'master'.
369
source: <pull.2071.v2.git.1773864455956.gitgitgadget@gmail.com>
370
371
@@ -268,7 +386,8 @@ Release tarballs are available at:
386
"git push" learned to take a "remote group" name to push to, which
387
causes pushes to multiple places, just like "git fetch" would do.
388
271
- Will merge to 'next'?
389
+ Expecting a (hopefully small and final) reroll?
390
+ cf. <20260318204028.1010487-1-usmanakinyemi202@gmail.com>
391
source: <20260318204028.1010487-1-usmanakinyemi202@gmail.com>
392
393
@@ -326,8 +445,7 @@ Release tarballs are available at:
445
446
Test clean-up.
447
329
- Will merge to 'next'?
330
- cf. <8669d87c1b7f96dd0de37dabfb9011c8745a17c9.camel@gmail.com>
448
+ Will merge to 'next'.
449
source: <20260319180803.164335-1-elkhatabibilal@gmail.com>
450
451
@@ -447,15 +565,16 @@ Release tarballs are available at:
565
566
567
* jw/apply-corrupt-location (2026-03-17) 3 commits
450
- - apply: report input location in binary and garbage patch errors
451
- - apply: report input location in header parsing errors
452
- - apply: report the location of corrupt patches
568
+ (merged to 'next' on 2026-03-23 at 18e9b8f91f)
569
+ + apply: report input location in binary and garbage patch errors
570
+ + apply: report input location in header parsing errors
571
+ + apply: report the location of corrupt patches
572
573
"git apply" now reports the name of the input file along with the
574
line number when it encounters a corrupt patch, and correctly
575
resets the line counter when processing multiple patch files.
576
458
- Will merge to 'next'.
577
+ Will merge to 'master'.
578
source: <20260317162321.71812-1-jerrywang183@yahoo.com>
579
580
@@ -479,7 +598,7 @@ Release tarballs are available at:
598
source: <20260315081032.497-1-riteshjd75@gmail.com>
599
600
482
-* mf/format-patch-commit-list-format (2026-03-19) 9 commits
601
+* mf/format-patch-commit-list-format (2026-03-23) 9 commits
602
- format-patch: --commit-list-format without prefix
603
- format-patch: add preset for --commit-list-format
604
- format-patch: wrap generate_commit_list_cover()
@@ -495,8 +614,8 @@ Release tarballs are available at:
614
--commit-list-format` (formerly `--cover-letter-format`) option,
615
including a new "modern" preset and better CLI ergonomics.
616
498
- Comments?
499
- source: <cover.1773959395.git.mroik@delayed.space>
617
+ Will merge to 'next'.
618
+ source: <cover.1774284699.git.mroik@delayed.space>
619
620
621
* mf/t0008-cleanup (2026-03-15) 1 commit
@@ -609,40 +728,6 @@ Release tarballs are available at:
728
source: <20260310095017.131957-1-cat@malon.dev>
729
730
612
-* ms/t7605-test-path-is-helpers (2026-03-10) 1 commit
613
- (merged to 'next' on 2026-03-16 at 49facdec9f)
614
- + t7605: use test_path_is_file instead of test -f
615
-
616
- Test updates.
617
-
618
- Will merge to 'master'.
619
- source: <pull.2067.v2.git.1773183022175.gitgitgadget@gmail.com>
620
-
621
-
622
-* bb/imap-send-openssl-4.0-prep (2026-03-11) 3 commits
623
- (merged to 'next' on 2026-03-16 at 0baab97778)
624
- + imap-send: move common code into function host_matches()
625
- + imap-send: use the OpenSSL API to access the subject common name
626
- + imap-send: use the OpenSSL API to access the subject alternative names
627
-
628
- "imap-send" used to use functions whose use is going to be removed
629
- with OpenSSL 4.0; rewrite them using public API that has been
630
- available since OpenSSL 1.1 since 2016 or so.
631
-
632
- Will merge to 'master'.
633
- source: <20260311121107.1122387-1-dev+git@drbeat.li>
634
-
635
-
636
-* jc/test-allow-sed-with-ere (2026-03-11) 1 commit
637
- (merged to 'next' on 2026-03-16 at be057bed35)
638
- + t: allow use of "sed -E"
639
-
640
- Adjust test-lint to allow "sed -E" to use ERE in the patterns.
641
-
642
- Will merge to 'master'.
643
- source: <xmqq3425lvtq.fsf@gitster.g>
644
-
645
-
731
* kh/doc-interpret-trailers-1 (2026-03-16) 4 commits
732
(merged to 'next' on 2026-03-20 at 6acc8b5a8a)
733
+ interpret-trailers: use placeholder instead of *
@@ -656,16 +741,6 @@ Release tarballs are available at:
741
source: <V2_CV_doc_interpret-tr_synopsis.50a@msgid.xyz>
742
743
659
-* ty/mktree-wo-the-repository (2026-03-12) 1 commit
660
- (merged to 'next' on 2026-03-16 at 8d20ceb853)
661
- + builtin/mktree: remove USE_THE_REPOSITORY_VARIABLE
662
-
663
- Code clean-up.
664
-
665
- Will merge to 'master'.
666
- source: <20260312164203.964033-1-cat@malon.dev>
667
-
668
-
744
* mm/line-log-use-standard-diff-output (2026-03-16) 4 commits
745
- doc: note that -L supports patch formatting and pickaxe options
746
- t4211: add tests for -L with standard diff options
@@ -700,17 +775,6 @@ Release tarballs are available at:
775
source: <20260320115211.177351-1-adrian.ratiu@collabora.com>
776
777
703
-* cf/constness-fixes (2026-03-08) 2 commits
704
- (merged to 'next' on 2026-03-13 at 3c80964399)
705
- + dir: avoid -Wdiscarded-qualifiers in remove_path()
706
- + bloom: remove a misleading const qualifier
707
-
708
- Small code clean-up around the constness area.
709
-
710
- Will merge to 'master'.
711
- source: <3ad40c3d0762c2e8c14792dfb68cba9f63a883a3.1773026586.git.collin.funk1@gmail.com>
712
-
713
-
778
* ab/clone-default-object-filter (2026-03-14) 1 commit
779
- clone: add clone.<url>.defaultObjectFilter config
780
@@ -856,17 +920,6 @@ Release tarballs are available at:
920
source: <pull.2147.v8.git.git.1772648125.gitgitgadget@gmail.com>
921
922
859
-* ac/help-sort-correctly (2026-03-11) 1 commit
860
- (merged to 'next' on 2026-03-16 at db220e143f)
861
- + help: cleanup the contruction of keys_uniq
862
-
863
- The code in "git help" that shows configuration items in sorted
864
- order was awkwardly organized and prone to bugs.
865
-
866
- Will merge to 'master'.
867
- source: <20260311192453.62213-1-amishhhaaaa@gmail.com>
868
-
869
-
923
* sa/replay-revert (2026-03-12) 2 commits
924
- replay: add --revert mode to reverse commit changes
925
- sequencer: extract revert message formatting into shared function
@@ -909,17 +962,6 @@ Release tarballs are available at:
962
source: <20260320135311.331463-1-adrian.ratiu@collabora.com>
963
964
912
-* ng/submodule-default-remote (2026-03-03) 1 commit
913
- (merged to 'next' on 2026-03-16 at d41fd28450)
914
- + submodule: fetch missing objects from default remote
915
-
916
- Instead of hardcoded 'origin', use the configured default remote
917
- when fetching from submodules.
918
-
919
- Will merge to 'master'.
920
- source: <20260303234044.105157-1-nasser.grainawi@oss.qualcomm.com>
921
-
922
-
965
* yc/histogram-hunk-shift-fix (2026-03-02) 1 commit
966
(merged to 'next' on 2026-03-18 at 5e49edc821)
967
+ xdiff: re-diff shifted change groups when using histogram algorithm
@@ -976,6 +1018,18 @@ Release tarballs are available at:
1018
Will merge to 'master'.
1019
source: <cover.1771959555.git.me@ttaylorr.com>
1020
1021
+
1022
+* js/macos-homebrew-forgets-reg-enhanced (2026-03-20) 1 commit
1023
+ . osx-clang: work around Homebrew's clang lacking REG_ENHANCED
1024
+
1025
+ The build on macOS with Clang is fixed to work around a Homebrew change
1026
+ that exposed an issue with missing REG_ENHANCED.
1027
+
1028
+ No longer needed.
1029
+ cf. <6c108696-2d41-4fa1-9662-fbf6db97f767@web.de>
1030
+ cf. <458ad3c1-96df-4575-ee42-e6eb754f25f6@gmx.de>
1031
+ source: <d340af9e-334c-4e81-e58a-fc3dea73ebdd@gmx.de>
1032
+
1033
--------------------------------------------------
1034
[Discarded]
1035