What's cooking (2026/02 #11)
Junio C Hamano committed
Feb 27, 2026 at 15:51 UTC
fa21dda678fb30ac9845fa760b4805a32d774cb2
1 file changed
+260
-233
whats-cooking.txt
+260
-233
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
-Subject: What's cooking in git.git (Feb 2026, #10)
3
-X-master-at: 7b2bccb0d58d4f24705bf985de1f4612e4cf06e5
4
-X-next-at: ebd1da8b75f3d8cd1e180ccfadac32d7cbcb64b5
2
+Subject: What's cooking in git.git (Feb 2026, #11)
3
+X-master-at: 2cc71917514657b93014134350864f4849edfc83
4
+X-next-at: 625c4fb2daac9879b299dd1cae2e793d2821dec0
5
Bcc: lwn@lwn.net, gitster@pobox.com
6
7
-What's cooking in git.git (Feb 2026, #10)
7
+What's cooking in git.git (Feb 2026, #11)
8
-----------------------------------------
9
10
Here are the topics that have been cooking in my tree. Commits
@@ -47,6 +47,192 @@ Release tarballs are available at:
47
48
https://www.kernel.org/pub/software/scm/git/
49
50
+--------------------------------------------------
51
+[Graduated to 'master']
52
+
53
+* ap/use-test-seq-f-more (2026-02-18) 1 commit
54
+ (merged to 'next' on 2026-02-20 at d847fcad1e)
55
+ + t: use test_seq -f and pipes in a few more places
56
+
57
+ Test clean-up.
58
+ source: <20260218181019.1705160-1-aplattner@nvidia.com>
59
+
60
+
61
+* db/doc-fetch-jobs-auto (2026-02-18) 1 commit
62
+ (merged to 'next' on 2026-02-20 at 4e20a85963)
63
+ + doc: fetch: document `--jobs=0` behavior
64
+
65
+ Doc update.
66
+ source: <pull.2047.git.1771443159369.gitgitgadget@gmail.com>
67
+
68
+
69
+* jc/checkout-switch-restore (2026-01-29) 2 commits
70
+ (merged to 'next' on 2026-02-20 at a386d47625)
71
+ + checkout: tell "parse_remote_branch" which command is calling it
72
+ + checkout: pass program-readable token to unified "main"
73
+
74
+ "git switch <name>", in an attempt to create a local branch <name>
75
+ after a remote tracking branch of the same name gave an advise
76
+ message to disambiguate using "git checkout", which has been
77
+ updated to use "git switch".
78
+ source: <20260129190616.645471-1-gitster@pobox.com>
79
+
80
+
81
+* jc/whitespace-incomplete-line (2026-02-04) 1 commit
82
+ (merged to 'next' on 2026-02-20 at 1d5f62e778)
83
+ + whitespace: symbolic links usually lack LF at the end
84
+
85
+ It does not make much sense to apply the "incomplete-line"
86
+ whitespace rule to symbolic links, whose contents almost always
87
+ lack the final newline. "git apply" and "git diff" are now taught
88
+ to exclude them for a change to symbolic links.
89
+ source: <xmqqpl6hhm96.fsf@gitster.g>
90
+
91
+
92
+* jh/alias-i18n (2026-02-18) 4 commits
93
+ (merged to 'next' on 2026-02-20 at b9a5c15c4f)
94
+ + completion: fix zsh alias listing for subsection aliases
95
+ + alias: support non-alphanumeric names via subsection syntax
96
+ + alias: prepare for subsection aliases
97
+ + help: use list_aliases() for alias listing
98
+ (this branch is used by jh/alias-i18n-fixes and kh/alias-i18n-docfix.)
99
+
100
+ Extend the alias configuration syntax to allow aliases using
101
+ characters outside ASCII alphanumeric (plus '-').
102
+ source: <20260218215737.1181147-1-jonatan@jontes.page>
103
+
104
+
105
+* jk/ref-filter-lrstrip-optim (2026-02-19) 5 commits
106
+ (merged to 'next' on 2026-02-20 at 88c2fb76b8)
107
+ + ref-filter: clarify lstrip/rstrip component counting
108
+ (merged to 'next' on 2026-02-19 at 6efc8a2023)
109
+ + ref-filter: avoid strrchr() in rstrip_ref_components()
110
+ + ref-filter: simplify rstrip_ref_components() memory handling
111
+ + ref-filter: simplify lstrip_ref_components() memory handling
112
+ + ref-filter: factor out refname component counting
113
+
114
+ Code clean-up.
115
+ source: <20260215085755.GA86262@coredump.intra.peff.net>
116
+ source: <20260220060003.GA26256@coredump.intra.peff.net>
117
+
118
+
119
+* lo/repo-info-keys (2026-02-13) 2 commits
120
+ (merged to 'next' on 2026-02-19 at 3a9b510b86)
121
+ + repo: add new flag --keys to git-repo-info
122
+ + repo: rename the output format "keyvalue" to "lines"
123
+ (this branch is used by lo/repo-leftover-bits.)
124
+
125
+ "git repo info" learns "--keys" action to list known keys.
126
+ source: <20260214005818.37349-1-lucasseikioshiro@gmail.com>
127
+
128
+
129
+* mf/format-patch-honor-from-for-cover-letter (2026-02-17) 1 commit
130
+ (merged to 'next' on 2026-02-20 at d3efdd79b2)
131
+ + format-patch: fix From header in cover letter
132
+
133
+ "git format-patch --from=<me>" did not honor the command line
134
+ option when writing out the cover letter, which has been corrected.
135
+ source: <20260217232519.24898-1-mroik@delayed.space>
136
+
137
+
138
+* ps/ci-gitlab-msvc-updates (2026-02-18) 7 commits
139
+ (merged to 'next' on 2026-02-20 at b2a8b7bf93)
140
+ + gitlab-ci: handle failed tests on MSVC+Meson job
141
+ + gitlab-ci: use "run-test-slice-meson.sh"
142
+ + ci: make test slicing consistent across Meson/Make
143
+ + github: fix Meson tests not executing at all
144
+ + meson: fix MERGE_TOOL_DIR with "--no-bin-wrappers"
145
+ + ci: don't skip smallest test slice in GitLab
146
+ + ci: handle failures of test-slice helper
147
+
148
+ CI update.
149
+ source: <20260219-b4-pks-ci-meson-improvements-v2-0-6047b8307ab2@pks.im>
150
+
151
+
152
+* ps/for-each-ref-in-fixes (2026-02-18) 4 commits
153
+ (merged to 'next' on 2026-02-19 at 5397753d41)
154
+ + bisect: simplify string_list memory handling
155
+ + bisect: fix misuse of `refs_for_each_ref_in()`
156
+ + pack-bitmap: fix bug with exact ref match in "pack.preferBitmapTips"
157
+ + pack-bitmap: deduplicate logic to iterate over preferred bitmap tips
158
+ (this branch is used by ps/refs-for-each.)
159
+
160
+ A handful of places used refs_for_each_ref_in() API incorrectly,
161
+ which has been corrected.
162
+ source: <20260219-b4-pks-fix-for-each-ref-in-misuse-v4-0-57ac30172fae@pks.im>
163
+
164
+
165
+* ps/history-ergonomics-updates (2026-02-15) 5 commits
166
+ (merged to 'next' on 2026-02-19 at 9d5bc4efc5)
167
+ + Documentation/git-history: document default for "--update-refs="
168
+ + builtin/history: rename "--ref-action=" to "--update-refs="
169
+ + builtin/history: replace "--ref-action=print" with "--dry-run"
170
+ + builtin/history: check for merges before asking for user input
171
+ + builtin/history: perform revwalk checks before asking for user input
172
+
173
+ UI improvements for "git history reword".
174
+ source: <20260216-b4-pks-history-dry-run-v3-0-c4db58a651fc@pks.im>
175
+
176
+
177
+* ps/tests-wo-iconv-fixes (2026-02-20) 5 commits
178
+ (merged to 'next' on 2026-02-20 at 277b2c99aa)
179
+ + t6006: don't use iconv(1) without ICONV prereq
180
+ + t5550: add ICONV prereq to tests that use "$HTTPD_URL/error"
181
+ + t4205: improve handling of ICONV prerequisite
182
+ + t40xx: don't use iconv(1) without ICONV prereq
183
+ + t: don't set ICONV prereq when iconv(1) is missing
184
+
185
+ Some tests assumed "iconv" is available without honoring ICONV
186
+ prerequisite, which has been corrected.
187
+ source: <20260220-b4-pks-ci-msvc-iconv-fixes-v4-0-e0e6bbcaeb5b@pks.im>
188
+
189
+--------------------------------------------------
190
+[New Topics]
191
+
192
+* jk/repo-structure-cleanup (2026-02-23) 1 commit
193
+ - repo: remove unnecessary variable shadow
194
+
195
+ Code clean-up.
196
+
197
+ Will merge to 'next'.
198
+ source: <20260223135248.127935-1-jayatheerthkulkarni2005@gmail.com>
199
+
200
+
201
+* lp/diff-stat-utf8-display-width-fix (2026-02-27) 2 commits
202
+ - t4052: test for diffstat width when prefix contains ANSI escape codes
203
+ - diff: handle ANSI escape codes in prefix when calculating diffstat width
204
+
205
+ "git log --graph --stat" did not count the display width of colored
206
+ graph part of its own output correctly, which has been corrected.
207
+
208
+ Will merge to 'next'.
209
+ source: <cover.1772226209.git.lorenzo.pegorari2002@gmail.com>
210
+
211
+
212
+* ps/upload-pack-buffer-more-writes (2026-02-27) 2 commits
213
+ - upload-pack: reduce lock contention when writing packfile data
214
+ - upload-pack: fix debug statement when flushing packfile data
215
+
216
+ Reduce system overhead "git upload-pack" spends relaying "git
217
+ pack-objects" output to the "git fetch" running on the other end of
218
+ the connection.
219
+
220
+ Under discussion.
221
+ cf. <20260227193758.GA2931515@coredump.intra.peff.net>
222
+ source: <20260227-pks-upload-pack-write-contention-v1-0-7166fe255704@pks.im>
223
+
224
+
225
+* rs/parse-options-duplicated-long-options (2026-02-27) 2 commits
226
+ - parseopt: check for duplicate long names and numerical options
227
+ - pack-objects: remove duplicate --stdin-packs definition
228
+
229
+ The parse-options API learned to notice an options[] array with
230
+ duplicated long options.
231
+
232
+ Expecting a review response.
233
+ cf. <20260227230822.GA2965111@coredump.intra.peff.net>
234
+ source: <xmqq5x7jujqb.fsf@gitster.g>
235
+
236
--------------------------------------------------
237
[Cooking]
238
@@ -65,16 +251,17 @@ Release tarballs are available at:
251
252
253
* ps/fsck-stream-from-the-right-object-instance (2026-02-23) 4 commits
68
- - pack-check: fix verification of large objects
69
- - packfile: expose function to read object stream for an offset
70
- - object-file: adapt `stream_object_signature()` to take a stream
71
- - t/helper: improve "genrandom" test helper
254
+ (merged to 'next' on 2026-02-27 at b378558c1a)
255
+ + pack-check: fix verification of large objects
256
+ + packfile: expose function to read object stream for an offset
257
+ + object-file: adapt `stream_object_signature()` to take a stream
258
+ + t/helper: improve "genrandom" test helper
259
260
"fsck" iterates over packfiles and its access to pack data caused
261
the list to be permuted, which caused it to loop forever; the code
262
to access pack data by "fsck" has been updated to avoid this.
263
77
- Will merge to 'next'.
264
+ Will merge to 'master'.
265
source: <20260223-pks-fsck-fix-v2-0-99a0714ea3bd@pks.im>
266
267
@@ -119,18 +306,16 @@ Release tarballs are available at:
306
source: <pull.2056.v2.git.1771968924.gitgitgadget@gmail.com>
307
308
122
-* jh/alias-i18n-fixes (2026-02-24) 4 commits
123
- - SQUASH??? leakfix
309
+* jh/alias-i18n-fixes (2026-02-26) 4 commits
310
+ - git, help: fix memory leaks in alias listing
311
- alias: treat empty subsection [alias ""] as plain [alias]
312
- doc: fix list continuation in alias subsection example
313
- Merge branch 'jh/alias-i18n' into jh/alias-i18n-fixes
127
- (this branch uses jh/alias-i18n.)
314
315
Further update to the i18n alias support to avoid regressions.
316
131
- Expecting a (hopefully small and final) reroll?
132
- cf. <xmqq8qcga6ya.fsf@gitster.g>
133
- source: <20260224171245.458377-1-jonatan@jontes.page>
317
+ Will merge to 'next'.
318
+ source: <20260226205339.1535482-1-jonatan@jontes.page>
319
320
321
* lc/rebase-trailer (2026-02-23) 5 commits
@@ -149,19 +334,20 @@ Release tarballs are available at:
334
source: <20260224070552.148591-1-me@linux.beauty>
335
336
152
-* mf/format-patch-cover-letter-format (2026-02-24) 3 commits
153
- - SQUASH???
337
+* mf/format-patch-cover-letter-format (2026-02-27) 5 commits
338
+ - docs: add usage for the cover-letter fmt feature
339
- format-patch: add commitListFormat config
340
- format-patch: add ability to use alt cover format
341
+ - format-patch: move cover letter summary generation
342
+ - pretty.c: add %(count) and %(total) placeholders
343
344
"git format-patch --cover-letter" learns to use a simpler format
345
instead of the traditional shortlog format to list its commits with
346
a new --cover-letter-format option and format.commitListFormat
347
configuration variable.
348
162
- Expecting a (hopefully small and final) reroll?
163
- cf. <aZ4-_jmFS8yS4g49@exploit>
164
- source: <cover.1771925291.git.mroik@delayed.space>
349
+ Will merge to 'next'?
350
+ source: <cover.1772232373.git.mroik@delayed.space>
351
352
353
* sp/send-email-validate-charset (2026-02-26) 1 commit
@@ -205,11 +391,12 @@ Release tarballs are available at:
391
392
393
* pt/t7527-flake-workaround (2025-12-31) 1 commit
208
- - t7527: fix flaky fsmonitor event tests with retry logic
394
+ (merged to 'next' on 2026-02-27 at d6ebc97cb1)
395
+ + t7527: fix flaky fsmonitor event tests with retry logic
396
397
Test fixup.
398
212
- Will merge to 'next'.
399
+ Will merge to 'master'.
400
source: <pull.2150.v2.git.git.1767226763360.gitgitgadget@gmail.com>
401
402
@@ -256,7 +443,7 @@ Release tarballs are available at:
443
444
445
* ty/setup-error-tightening (2026-02-22) 1 commit
259
- - setup: improve error diagnosis for invalid .git files
446
+ . setup: improve error diagnosis for invalid .git files
447
448
While discovering a ".git" directory, the code treats any stat()
449
failure as a sign that a filesystem entity .git does not exist
@@ -264,30 +451,11 @@ Release tarballs are available at:
451
directory. The code has been tightened to notice and report
452
filesystem corruption better.
453
267
- Will merge to 'next'.
454
+ Kicked out of the tree for now, due to CI breakage.
455
+ cf. <xmqqpl5rumy0.fsf@gitster.g>
456
source: <20260223074410.917523-1-a3205153416@gmail.com>
457
458
271
-* bc/do-not-reorder-packs-during-fsck (2026-02-22) 1 commit
272
- . fsck: do not loop infinitely when processing packs
273
-
274
- Access to packfiles during fsck would reorder the mru list of
275
- packs, which causes the fsck to loop forever going over the list.
276
-
277
- Supersided by ps/fsck-stream-from-the-right-object-instance?
278
- source: <20260222183710.2963424-1-sandals@crustytoothpaste.net>
279
-
280
-
281
-* ap/use-test-seq-f-more (2026-02-18) 1 commit
282
- (merged to 'next' on 2026-02-20 at d847fcad1e)
283
- + t: use test_seq -f and pipes in a few more places
284
-
285
- Test clean-up.
286
-
287
- Will merge to 'master'.
288
- source: <20260218181019.1705160-1-aplattner@nvidia.com>
289
-
290
-
459
* bk/mailmap-wo-the-repository (2026-02-19) 2 commits
460
(merged to 'next' on 2026-02-26 at f7e3afc1ff)
461
+ mailmap: drop global config variables
@@ -299,16 +467,6 @@ Release tarballs are available at:
467
source: <20260220060442.29469-1-bkkaracay@gmail.com>
468
469
302
-* db/doc-fetch-jobs-auto (2026-02-18) 1 commit
303
- (merged to 'next' on 2026-02-20 at 4e20a85963)
304
- + doc: fetch: document `--jobs=0` behavior
305
-
306
- Doc update.
307
-
308
- Will merge to 'master'.
309
- source: <pull.2047.git.1771443159369.gitgitgadget@gmail.com>
310
-
311
-
470
* jt/object-file-use-container-of (2026-02-22) 2 commits
471
(merged to 'next' on 2026-02-22 at 309c995771)
472
+ object-file.c: avoid container_of() of a NULL container
@@ -334,17 +492,6 @@ Release tarballs are available at:
492
source: <V2_CV_format.noprefix_boolean.421@msgid.xyz>
493
494
337
-* mf/format-patch-honor-from-for-cover-letter (2026-02-17) 1 commit
338
- (merged to 'next' on 2026-02-20 at d3efdd79b2)
339
- + format-patch: fix From header in cover letter
340
-
341
- "git format-patch --from=<me>" did not honor the command line
342
- option when writing out the cover letter, which has been corrected.
343
-
344
- Will merge to 'master'.
345
- source: <20260217232519.24898-1-mroik@delayed.space>
346
-
347
-
495
* pw/no-more-NULL-means-current-worktree (2026-02-19) 2 commits
496
(merged to 'next' on 2026-02-26 at 281f28b140)
497
+ path: remove repository argument from worktree_git_path()
@@ -420,7 +567,6 @@ Release tarballs are available at:
567
+ repo: rename repo_info_fields to repo_info_field
568
+ CodingGuidelines: instruct to name arrays in singular
569
+ Merge branch 'lo/repo-info-keys' into lo/repo-leftover-bits
423
- (this branch uses lo/repo-info-keys.)
570
571
Clean-up the code around "git repo info" command.
572
@@ -446,29 +592,29 @@ Release tarballs are available at:
592
593
594
* ps/refs-for-each (2026-02-23) 18 commits
449
- - refs: replace `refs_for_each_fullref_in()`
450
- - refs: replace `refs_for_each_namespaced_ref()`
451
- - refs: replace `refs_for_each_glob_ref()`
452
- - refs: replace `refs_for_each_glob_ref_in()`
453
- - refs: replace `refs_for_each_rawref_in()`
454
- - refs: replace `refs_for_each_rawref()`
455
- - refs: replace `refs_for_each_ref_in()`
456
- - refs: improve verification for-each-ref options
457
- - refs: generalize `refs_for_each_fullref_in_prefixes()`
458
- - refs: generalize `refs_for_each_namespaced_ref()`
459
- - refs: speed up `refs_for_each_glob_ref_in()`
460
- - refs: introduce `refs_for_each_ref_ext`
461
- - refs: rename `each_ref_fn`
462
- - refs: rename `do_for_each_ref_flags`
463
- - refs: move `do_for_each_ref_flags` further up
464
- - refs: move `refs_head_ref_namespaced()`
465
- - refs: remove unused `refs_for_each_include_root_ref()`
466
- - Merge branch 'ps/for-each-ref-in-fixes' into ps/refs-for-each
467
- (this branch uses ps/for-each-ref-in-fixes.)
595
+ (merged to 'next' on 2026-02-27 at ec9e0a36ff)
596
+ + refs: replace `refs_for_each_fullref_in()`
597
+ + refs: replace `refs_for_each_namespaced_ref()`
598
+ + refs: replace `refs_for_each_glob_ref()`
599
+ + refs: replace `refs_for_each_glob_ref_in()`
600
+ + refs: replace `refs_for_each_rawref_in()`
601
+ + refs: replace `refs_for_each_rawref()`
602
+ + refs: replace `refs_for_each_ref_in()`
603
+ + refs: improve verification for-each-ref options
604
+ + refs: generalize `refs_for_each_fullref_in_prefixes()`
605
+ + refs: generalize `refs_for_each_namespaced_ref()`
606
+ + refs: speed up `refs_for_each_glob_ref_in()`
607
+ + refs: introduce `refs_for_each_ref_ext`
608
+ + refs: rename `each_ref_fn`
609
+ + refs: rename `do_for_each_ref_flags`
610
+ + refs: move `do_for_each_ref_flags` further up
611
+ + refs: move `refs_head_ref_namespaced()`
612
+ + refs: remove unused `refs_for_each_include_root_ref()`
613
+ + Merge branch 'ps/for-each-ref-in-fixes' into ps/refs-for-each
614
615
Code refactoring around refs-for-each-* API functions.
616
471
- Will merge to 'next'.
617
+ Will merge to 'master'.
618
cf. <CAOLa=ZTz-9JKHC3H8tSwP=bDvX2mNA-erjr5Ni6Tiq4cm4WmLg@mail.gmail.com>
619
source: <20260223-pks-refs-for-each-unification-v2-0-515d48c8087b@pks.im>
620
@@ -509,22 +655,6 @@ Release tarballs are available at:
655
source: <4ef96c6bbf698a08df1df87b7cb053b6d0d00822.1771943954.git.ben.knoble+github@gmail.com>
656
657
512
-* jk/ref-filter-lrstrip-optim (2026-02-19) 5 commits
513
- (merged to 'next' on 2026-02-20 at 88c2fb76b8)
514
- + ref-filter: clarify lstrip/rstrip component counting
515
- (merged to 'next' on 2026-02-19 at 6efc8a2023)
516
- + ref-filter: avoid strrchr() in rstrip_ref_components()
517
- + ref-filter: simplify rstrip_ref_components() memory handling
518
- + ref-filter: simplify lstrip_ref_components() memory handling
519
- + ref-filter: factor out refname component counting
520
-
521
- Code clean-up.
522
-
523
- Will merge to 'master'.
524
- source: <20260215085755.GA86262@coredump.intra.peff.net>
525
- source: <20260220060003.GA26256@coredump.intra.peff.net>
526
-
527
-
658
* ps/receive-pack-shallow-optim (2026-02-16) 3 commits
659
(merged to 'next' on 2026-02-22 at ad6abc1ef8)
660
+ commit: use commit graph in `lookup_commit_reference_gently()`
@@ -562,21 +692,6 @@ Release tarballs are available at:
692
source: <pull.2008.v5.git.1771856405.gitgitgadget@gmail.com>
693
694
565
-* jh/alias-i18n (2026-02-18) 4 commits
566
- (merged to 'next' on 2026-02-20 at b9a5c15c4f)
567
- + completion: fix zsh alias listing for subsection aliases
568
- + alias: support non-alphanumeric names via subsection syntax
569
- + alias: prepare for subsection aliases
570
- + help: use list_aliases() for alias listing
571
- (this branch is used by jh/alias-i18n-fixes and kh/alias-i18n-docfix.)
572
-
573
- Extend the alias configuration syntax to allow aliases using
574
- characters outside ASCII alphanumeric (plus '-').
575
-
576
- Will merge to 'master'.
577
- source: <20260218215737.1181147-1-jonatan@jontes.page>
578
-
579
-
695
* hy/diff-lazy-fetch-with-break-fix (2026-02-23) 1 commit
696
(merged to 'next' on 2026-02-25 at afe07ad86c)
697
+ diffcore-break: avoid segfault with freed entries
@@ -590,20 +705,6 @@ Release tarballs are available at:
705
source: <20260224061329.60364-2-hanyang.tony@bytedance.com>
706
707
593
-* ps/history-ergonomics-updates (2026-02-15) 5 commits
594
- (merged to 'next' on 2026-02-19 at 9d5bc4efc5)
595
- + Documentation/git-history: document default for "--update-refs="
596
- + builtin/history: rename "--ref-action=" to "--update-refs="
597
- + builtin/history: replace "--ref-action=print" with "--dry-run"
598
- + builtin/history: check for merges before asking for user input
599
- + builtin/history: perform revwalk checks before asking for user input
600
-
601
- UI improvements for "git history reword".
602
-
603
- Will merge to 'master'.
604
- source: <20260216-b4-pks-history-dry-run-v3-0-c4db58a651fc@pks.im>
605
-
606
-
708
* kh/doc-patch-id-4 (2026-02-14) 3 commits
709
(merged to 'next' on 2026-02-22 at bfae23ac5e)
710
+ doc: patch-id: see also git-cherry(1)
@@ -629,37 +730,6 @@ Release tarballs are available at:
730
source: <doc_am_gitlinks_and_am.messageId.321@msgid.xyz>
731
732
632
-* ps/ci-gitlab-msvc-updates (2026-02-18) 7 commits
633
- (merged to 'next' on 2026-02-20 at b2a8b7bf93)
634
- + gitlab-ci: handle failed tests on MSVC+Meson job
635
- + gitlab-ci: use "run-test-slice-meson.sh"
636
- + ci: make test slicing consistent across Meson/Make
637
- + github: fix Meson tests not executing at all
638
- + meson: fix MERGE_TOOL_DIR with "--no-bin-wrappers"
639
- + ci: don't skip smallest test slice in GitLab
640
- + ci: handle failures of test-slice helper
641
-
642
- CI update.
643
-
644
- Will merge to 'master'.
645
- source: <20260219-b4-pks-ci-meson-improvements-v2-0-6047b8307ab2@pks.im>
646
-
647
-
648
-* ps/tests-wo-iconv-fixes (2026-02-20) 5 commits
649
- (merged to 'next' on 2026-02-20 at 277b2c99aa)
650
- + t6006: don't use iconv(1) without ICONV prereq
651
- + t5550: add ICONV prereq to tests that use "$HTTPD_URL/error"
652
- + t4205: improve handling of ICONV prerequisite
653
- + t40xx: don't use iconv(1) without ICONV prereq
654
- + t: don't set ICONV prereq when iconv(1) is missing
655
-
656
- Some tests assumed "iconv" is available without honoring ICONV
657
- prerequisite, which has been corrected.
658
-
659
- Will merge to 'master'.
660
- source: <20260220-b4-pks-ci-msvc-iconv-fixes-v4-0-e0e6bbcaeb5b@pks.im>
661
-
662
-
733
* pw/meson-doc-mergetool (2026-02-09) 1 commit
734
(merged to 'next' on 2026-02-22 at dfdfff02f8)
735
+ meson: fix building mergetool docs
@@ -748,36 +818,24 @@ Release tarballs are available at:
818
819
820
* ar/config-hooks (2026-02-18) 9 commits
751
- - hook: add -z option to "git hook list"
752
- - hook: allow out-of-repo 'git hook' invocations
753
- - hook: allow event = "" to overwrite previous values
754
- - hook: allow disabling config hooks
755
- - hook: include hooks from the config
756
- - hook: add "git hook list" command
757
- - hook: run a list of hooks to prepare for multihook support
758
- - hook: add internal state alloc/free callbacks
759
- - Merge branch 'ar/run-command-hook-take-2' into ar/config-hooks
821
+ (merged to 'next' on 2026-02-27 at 6a04cca28e)
822
+ + hook: add -z option to "git hook list"
823
+ + hook: allow out-of-repo 'git hook' invocations
824
+ + hook: allow event = "" to overwrite previous values
825
+ + hook: allow disabling config hooks
826
+ + hook: include hooks from the config
827
+ + hook: add "git hook list" command
828
+ + hook: run a list of hooks to prepare for multihook support
829
+ + hook: add internal state alloc/free callbacks
830
+ + Merge branch 'ar/run-command-hook-take-2' into ar/config-hooks
831
(this branch is used by ar/parallel-hooks; uses ar/run-command-hook-take-2.)
832
833
Allow hook commands to be defined (possibly centrally) in the
834
configuration files, and run multiple of them for the same hook
835
event.
836
766
- Will merge to 'next'.
767
- source: <20260218222352.55393-1-adrian.ratiu@collabora.com>
768
-
769
-
770
-* jc/whitespace-incomplete-line (2026-02-04) 1 commit
771
- (merged to 'next' on 2026-02-20 at 1d5f62e778)
772
- + whitespace: symbolic links usually lack LF at the end
773
-
774
- It does not make much sense to apply the "incomplete-line"
775
- whitespace rule to symbolic links, whose contents almost always
776
- lack the final newline. "git apply" and "git diff" are now taught
777
- to exclude them for a change to symbolic links.
778
-
837
Will merge to 'master'.
780
- source: <xmqqpl6hhm96.fsf@gitster.g>
838
+ source: <20260218222352.55393-1-adrian.ratiu@collabora.com>
839
840
841
* ps/meson-gitk-git-gui (2026-02-04) 1 commit
@@ -821,35 +879,6 @@ Release tarballs are available at:
879
source: <20260222002904.1879356-1-adrian.ratiu@collabora.com>
880
881
824
-* jc/checkout-switch-restore (2026-01-29) 2 commits
825
- (merged to 'next' on 2026-02-20 at a386d47625)
826
- + checkout: tell "parse_remote_branch" which command is calling it
827
- + checkout: pass program-readable token to unified "main"
828
-
829
- "git switch <name>", in an attempt to create a local branch <name>
830
- after a remote tracking branch of the same name gave an advise
831
- message to disambiguate using "git checkout", which has been
832
- updated to use "git switch".
833
-
834
- Will merge to 'master'.
835
- source: <20260129190616.645471-1-gitster@pobox.com>
836
-
837
-
838
-* ps/for-each-ref-in-fixes (2026-02-18) 4 commits
839
- (merged to 'next' on 2026-02-19 at 5397753d41)
840
- + bisect: simplify string_list memory handling
841
- + bisect: fix misuse of `refs_for_each_ref_in()`
842
- + pack-bitmap: fix bug with exact ref match in "pack.preferBitmapTips"
843
- + pack-bitmap: deduplicate logic to iterate over preferred bitmap tips
844
- (this branch is used by ps/refs-for-each.)
845
-
846
- A handful of places used refs_for_each_ref_in() API incorrectly,
847
- which has been corrected.
848
-
849
- Will merge to 'master'.
850
- source: <20260219-b4-pks-fix-for-each-ref-in-misuse-v4-0-57ac30172fae@pks.im>
851
-
852
-
882
* ps/object-info-bits-cleanup (2026-02-11) 5 commits
883
(merged to 'next' on 2026-02-22 at 4d702cbecc)
884
+ odb: convert `odb_has_object()` flags into an enum
@@ -1037,31 +1066,20 @@ Release tarballs are available at:
1066
1067
1068
* ob/core-attributesfile-in-repository (2026-02-16) 3 commits
1040
- - environment: move "branch.autoSetupMerge" into `struct repo_config_values`
1041
- - environment: stop using core.sparseCheckout globally
1042
- - environment: stop storing `core.attributesFile` globally
1069
+ (merged to 'next' on 2026-02-27 at 2b2e3a1fa9)
1070
+ + environment: move "branch.autoSetupMerge" into `struct repo_config_values`
1071
+ + environment: stop using core.sparseCheckout globally
1072
+ + environment: stop storing `core.attributesFile` globally
1073
1074
The core.attributesfile is intended to be set per repository, but
1075
were kept track of by a single global variable in-core, which has
1076
been corrected by moving it to per-repository data structure.
1077
1048
- Will merge to 'next'.
1078
+ Will merge to 'master'.
1079
cf. <CAP8UFD2Rz3NMrTayi9yjRk4-51tStaLWKeBVB9RaJMWmiBLqrQ@mail.gmail.com>
1080
source: <cover.1771258573.git.belkid98@gmail.com>
1081
1082
1053
-* lo/repo-info-keys (2026-02-13) 2 commits
1054
- (merged to 'next' on 2026-02-19 at 3a9b510b86)
1055
- + repo: add new flag --keys to git-repo-info
1056
- + repo: rename the output format "keyvalue" to "lines"
1057
- (this branch is used by lo/repo-leftover-bits.)
1058
-
1059
- "git repo info" learns "--keys" action to list known keys.
1060
-
1061
- Will merge to 'master'.
1062
- source: <20260214005818.37349-1-lucasseikioshiro@gmail.com>
1063
-
1064
-
1083
* tb/incremental-midx-part-3.2 (2026-02-24) 17 commits
1084
- midx: enable reachability bitmaps during MIDX compaction
1085
- midx: implement MIDX compaction
@@ -1142,9 +1160,18 @@ Release tarballs are available at:
1160
1161
* kh/alias-i18n-docfix (2026-02-23) 1 commit
1162
. doc: config: fix list continuation in alias section
1145
- (this branch uses jh/alias-i18n.)
1163
1164
Doc mark-up fix.
1165
1149
- Superseded by jh/alias-i18n-fixes?
1150
- source: <20260218215737.1181147-1-jonatan@jontes.page>
1166
+ Superseded by jh/alias-i18n-fixes.
1167
+ source: <followup-alias-i18n.3e0@msgid.xyz>
1168
+
1169
+
1170
+* bc/do-not-reorder-packs-during-fsck (2026-02-22) 1 commit
1171
+ . fsck: do not loop infinitely when processing packs
1172
+
1173
+ Access to packfiles during fsck would reorder the mru list of
1174
+ packs, which causes the fsck to loop forever going over the list.
1175
+
1176
+ Supersided by ps/fsck-stream-from-the-right-object-instance.
1177
+ source: <20260222183710.2963424-1-sandals@crustytoothpaste.net>