What's cooking (2025/11 #03)
Junio C Hamano committed
Nov 7, 2025 at 09:53 UTC
6925194772aa47207fd5d5dc6e40567bb86af00c
1 file changed
+112
-175
whats-cooking.txt
+112
-175
@@ -1,11 +1,11 @@
1
To: git@vger.kernel.org
2
-Subject: What's cooking in git.git (Nov 2025, #02; Thu, 6)
3
-X-master-at: 77b7284ccab768981a2cd08b6b2f164d91201e18
4
-X-next-at: 9fd864c43e7dcfed42e2da05363d2eb4888719f4
2
+Subject: What's cooking in git.git (Nov 2025, #03; Fri, 7)
3
+X-master-at: 4badef0c3503dc29059d678abba7fac0f042bc84
4
+X-next-at: 30608eb744ed5714313f016f8dabdd2811e7cf7c
5
Bcc: lwn@lwn.net, gitster@pobox.com
6
7
-What's cooking in git.git (Nov 2025, #02; Thu, 6)
8
--------------------------------------------------
7
+What's cooking in git.git (Nov 2025, #03; Fri, 7)
8
+--------------------------------------------------
9
10
Here are the topics that have been cooking in my tree. Commits
11
prefixed with '+' are in 'next' (being in 'next' is a sign that a
@@ -53,126 +53,89 @@ Release tarballs are available at:
53
--------------------------------------------------
54
[Graduated to 'master']
55
56
-* cc/doc-submitting-patches-with-ai (2025-10-01) 1 commit
57
- (merged to 'next' on 2025-10-28 at 9b5e0701fa)
58
- + SubmittingPatches: add section about AI
59
-
60
- AI guidelines.
61
- cf. <xmqqv7ki1xf1.fsf@gitster.g>
62
- source: <20251001140310.527097-1-christian.couder@gmail.com>
63
-
64
-
65
-* eb/t1016-hash-transition-fix (2025-10-28) 1 commit
66
- (merged to 'next' on 2025-10-30 at b743410ab6)
67
- + t1016-compatObjectFormat: really freeze time for reproduciblity
68
-
69
- Test fix.
70
- source: <87frb310d2.fsf_-_@email.froward.int.ebiederm.org>
71
-
72
-
73
-* jc/ci-use-macos-14 (2025-11-04) 1 commit
74
- (merged to 'next' on 2025-11-05 at 5fe2c4be6a)
75
- + GitHub CI: macos-13 images are no more
76
-
77
- The version of macos image used in GitHub CI has been updated to
78
- macos-14, as the macos-13 that we have been using got deprecated.
79
- source: <xmqqh5v9o0hb.fsf@gitster.g>
80
-
81
-
82
-* jk/doc-backslash-in-exclude (2025-10-29) 1 commit
83
- (merged to 'next' on 2025-10-30 at 29790121d5)
84
- + doc: document backslash in gitignore patterns
85
-
86
- The patterns used in the .gitignore files use backslash in the way
87
- documented for fnmatch(3); document as such to reduce confusion.
88
- source: <20251029153237.GA1133542@coredump.intra.peff.net>
89
-
90
-
91
-* jk/test-delete-gpgsig-leakfix (2025-10-29) 1 commit
92
- (merged to 'next' on 2025-10-30 at 097810cb65)
93
- + test-tool: fix leak in delete-gpgsig command
56
+* cc/fast-import-export-i18n-cleanup (2025-10-30) 5 commits
57
+ (merged to 'next' on 2025-11-03 at 41a35c3e52)
58
+ + gpg-interface: mark a string for translation
59
+ + fast-import: mark strings for translation
60
+ + fast-export: mark strings for translation
61
+ + gpg-interface: use left shift to define GPG_VERIFY_*
62
+ + gpg-interface: simplify ssh fingerprint parsing
63
95
- Leakfix.
96
- source: <20251029191031.GA1257596@coredump.intra.peff.net>
64
+ Messages from fast-import/export are now marked for i18n.
65
+ source: <20251030123332.3337684-1-christian.couder@gmail.com>
66
67
99
-* jt/repo-structure (2025-10-21) 7 commits
100
- (merged to 'next' on 2025-10-28 at c4d81a2da9)
101
- + builtin/repo: add progress meter for structure stats
102
- + builtin/repo: add keyvalue and nul format for structure stats
103
- + builtin/repo: add object counts in structure output
104
- + builtin/repo: introduce structure subcommand
105
- + ref-filter: export ref_kind_from_refname()
106
- + ref-filter: allow NULL filter pattern
107
- + builtin/repo: rename repo_info() to cmd_repo_info()
108
- (this branch is used by kn/refs-optim-cleanup and ps/ref-peeled-tags.)
68
+* dk/parseopt-optional-filename-fixes (2025-11-04) 6 commits
69
+ (merged to 'next' on 2025-11-04 at 1cb7573414)
70
+ + parseopt: remove unreachable code
71
+ + parseopt: restore const qualifier to parsed filename
72
+ + config: use boolean type for a simple flag
73
+ + parseopt: use boolean type for a simple flag
74
+ + doc: clarify command equivalence comment
75
+ + parseopt: fix :(optional) at command line to only ignore missing files
76
110
- "git repo structure", a new command.
111
- cf. <eesy5qhqzi56qrzv7wlpenxag23l2zykakvpmr6p5rnak6cril@ap3rugp44bcz>
112
- cf. <aPsLS6lbzG27W-C8@pks.im>
113
- source: <20251021182601.2687284-1-jltobler@gmail.com>
77
+ A recently added configuration variable and command line option
78
+ syntax ":(optional)" for values that are of filename type
79
+ inconsistently behaved on an empty file (configuration took it
80
+ happily, while the command line option pretended as if it did not
81
+ exist), which has been corrected.
82
+ source: <cover.1762100242.git.ben.knoble+github@gmail.com>
83
+ source: <xmqq1pmdr9qu.fsf@gitster.g>
84
85
116
-* kh/doc-checkout-markup-fix (2025-10-28) 1 commit
117
- (merged to 'next' on 2025-10-29 at f106c77f74)
118
- + doc: git-checkout: fix placeholder markup
86
+* js/ci-github-actions-update (2025-11-06) 1 commit
87
+ (merged to 'next' on 2025-11-06 at 68957de207)
88
+ + ci: update {download,upload}-artifact Action versions
89
120
- Doc mark-up fix.
121
- source: <v2-cb38c701537.1761675472.git.code@khaugsbakk.name>
90
+ CI updates.
91
+ source: <pull.1996.git.1762437576488.gitgitgadget@gmail.com>
92
93
124
-* qj/doc-my1stcontrib-email-verify (2025-10-27) 1 commit
125
- (merged to 'next' on 2025-10-29 at 33f961f37a)
126
- + MyFirstContribution: add note on confirming patches
94
+* pk/reflog-migrate-message-fix (2025-11-05) 1 commit
95
+ (merged to 'next' on 2025-11-06 at c9c574a496)
96
+ + refs: add missing space in messages
97
128
- The "MyFirstContribution" tutorial tells the reader how to send out
129
- their patches; the section gained a hint to verify the message
130
- reached the mailing list.
131
- source: <20251027111600.1481-1-qjessa662@gmail.com>
98
+ Message fix.
99
+ source: <a8220721-3260-15cb-6960-ca8b6433d7b5@softwolves.pp.se>
100
101
+--------------------------------------------------
102
+[New Topics]
103
134
-* rz/t0450-bisect-doc-update (2025-10-28) 1 commit
135
- (merged to 'next' on 2025-10-31 at f563b543eb)
136
- + bisect: update usage and docs to match each other
104
+* lc/rebase-trailer (2025-11-05) 4 commits
105
+ - rebase: support --trailer
106
+ - trailer: append trailers in-process and drop the fork to `interpret-trailers`
107
+ - trailer: move process_trailers to trailer.h
108
+ - interpret-trailers: factor out buffer-based processing to process_trailers()
109
138
- The help text and manual page of "git bisect" command have been
139
- made consistent with each other.
140
- source: <pull.2084.git.git.1761690461697.gitgitgadget@gmail.com>
110
+ Refactor code paths to run "interpret-trailers" from "git
111
+ commit/tag" and use it in "git rebase".
112
113
+ Comments?
114
+ source: <20251105142944.73061-1-me@linux.beauty>
115
143
-* tu/credential-install (2025-10-25) 1 commit
144
- (merged to 'next' on 2025-10-28 at 43589c4832)
145
- + contrib/credential: add install target
116
147
- Contributed credential helpers (obviously in contrib/) now have "cd
148
- $there && make install" target.
149
- source: <f67b3cbd-a117-a863-37ba-fbba7a2ca17a@mailbox.tu-dresden.de>
117
+* ps/ref-peeled-tags-fixes (2025-11-06) 2 commits
118
+ - object: fix performance regression when peeling tags
119
+ - Merge branch 'ps/ref-peeled-tags' into ps/ref-peeled-tags-fixes
120
+ (this branch uses ps/ref-peeled-tags.)
121
122
+ Another fix-up to "peeled-tags" topic.
123
152
-* tz/test-prepare-gnupghome (2024-07-03) 2 commits
153
- (merged to 'next' on 2025-10-28 at f612107bf9)
154
- + t/lib-gpg: call prepare_gnupghome() in GPG2 prereq
155
- + t/lib-gpg: add prepare_gnupghome() to create GNUPGHOME dir
124
+ Will merge to 'next'.
125
+ source: <20251106-b4-pks-peel-object-performance-regression-v1-1-a386147750b0@pks.im>
126
157
- Tests did not set up GNUPGHOME correctly, which is fixed but some
158
- flaky tests are exposed in t1016, which needs to be addressed
159
- before this topic can move forward.
160
- cf. <ZoV8b2RvYxLOotSJ@teonanacatl.net>
161
- cf. <xmqqbjlump3m.fsf@gitster.g>
162
- cf. <87frb310d2.fsf_-_@email.froward.int.ebiederm.org>
163
- source: <20240703153738.916469-1-tmz@pobox.com>
127
128
+* tu/credential-wincred-makefile-update (2025-11-05) 1 commit
129
+ (merged to 'next' on 2025-11-07 at ed74befe91)
130
+ + wincred: align Makefile with other Makefiles in contrib
131
166
-* xr/ref-debug-remove-on-disk (2025-10-24) 1 commit
167
- (merged to 'next' on 2025-10-29 at 316e4afdbf)
168
- + refs: add missing remove_on_disk implementation for debug backend
132
+ Build procedure for Wincred credential helper has been updated.
133
170
- The "debug" ref-backend was missing a method implementation, which
171
- has been corrected.
172
- source: <pull.2082.git.git.1761295094982.gitgitgadget@gmail.com>
134
+ Will cook in 'next'.
135
+ source: <3869ec21-e20d-cf9b-5913-6389c372a5f0@mailbox.tu-dresden.de>
136
137
--------------------------------------------------
175
-[New Topics]
138
+[Cooking]
139
140
* en/ort-rename-another-fix (2025-11-03) 3 commits
141
- merge-ort: fix failing merges in special corner case
@@ -186,47 +149,29 @@ Release tarballs are available at:
149
source: <pull.1992.git.1762192908.gitgitgadget@gmail.com>
150
151
189
-* dk/parseopt-optional-filename-fixes (2025-11-04) 6 commits
190
- (merged to 'next' on 2025-11-04 at 1cb7573414)
191
- + parseopt: remove unreachable code
192
- + parseopt: restore const qualifier to parsed filename
193
- + config: use boolean type for a simple flag
194
- + parseopt: use boolean type for a simple flag
195
- + doc: clarify command equivalence comment
196
- + parseopt: fix :(optional) at command line to only ignore missing files
197
-
198
- A recently added configuration variable and command line option
199
- syntax ":(optional)" for values that are of filename type
200
- inconsistently behaved on an empty file (configuration took it
201
- happily, while the command line option pretended as if it did not
202
- exist), which has been corrected.
203
-
204
- Will merge to 'master'.
205
- source: <cover.1762100242.git.ben.knoble+github@gmail.com>
206
- source: <xmqq1pmdr9qu.fsf@gitster.g>
207
-
208
-
152
* dk/make-git-contacts-executable (2025-11-04) 1 commit
210
- - perl: also mark git-contacts executable
153
+ (merged to 'next' on 2025-11-07 at 30608eb744)
154
+ + perl: also mark git-contacts executable
155
156
Building "git contacts" script (in contrib/) leaves the resulting
157
file unexecutable, which has been corrected.
158
215
- Will merge to 'next'?
159
+ Will cook in 'next'.
160
source: <7fbb341e8f05fcde3a1543e3bb4e5a3ec1101692.1762280097.git.ben.knoble+github@gmail.com>
161
162
163
* dk/meson-html-dir (2025-11-04) 1 commit
220
- - meson: make GIT_HTML_PATH configurable
164
+ (merged to 'next' on 2025-11-07 at b30cf1f060)
165
+ + meson: make GIT_HTML_PATH configurable
166
167
The build procedure based on meson learned to allow builders to
168
specify the directory to install HTML documents.
169
225
- Will merge to 'next'?
170
+ Will cook in 'next'.
171
source: <385992f6020703558f0ba75a1be6c4f9dae08b83.1762264709.git.ben.knoble+github@gmail.com>
172
173
229
-* kn/maintenance-is-needed (2025-11-04) 7 commits
174
+* kn/maintenance-is-needed (2025-11-06) 7 commits
175
- maintenance: add 'is-needed' subcommand
176
- maintenance: add checking logic in `pack_refs_condition()`
177
- refs: add a `optimize_required` field to `struct ref_storage_be`
@@ -239,17 +184,17 @@ Release tarballs are available at:
184
"git maintenance" command learned "is-needed" subcommand to tell if
185
it is necessary to perform various maintenance tasks.
186
242
- Comments?
243
- source: <20251104-562-add-sub-command-to-check-if-maintenance-is-needed-v2-0-303462a9e4ed@gmail.com>
187
+ Will merge to 'next'?
188
+ source: <20251106-562-add-sub-command-to-check-if-maintenance-is-needed-v3-0-d611a2a95cf5@gmail.com>
189
190
246
-* qj/doc-http-bad-want-response (2025-11-04) 1 commit
191
+* qj/doc-http-bad-want-response (2025-11-05) 1 commit
192
- doc: clarify server behavior for invalid 'want' lines in HTTP protocol
193
194
Doc update.
195
251
- Comments?
252
- source: <20251104100653.2152-1-qjessa662@gmail.com>
196
+ Will merge to 'next'?
197
+ source: <20251105143849.1192-1-qjessa662@gmail.com>
198
199
200
* jc/exclude-with-gitignore (2025-11-04) 1 commit
@@ -268,6 +213,10 @@ Release tarballs are available at:
213
- commit: refactor verify_commit_buffer()
214
- fast-import: refactor finalize_commit_buffer()
215
216
+ "git fast-import" learns "--strip-if-invalid" option to drop
217
+ invalid cryptographic signature from objects.
218
+
219
+ Comments?
220
source: <20251105061918.3688870-1-christian.couder@gmail.com>
221
222
@@ -285,10 +234,12 @@ Release tarballs are available at:
234
- diff: emit_line_ws_markup() if/else style fix
235
- whitespace: correct bit assignment comments
236
237
+ Both "git apply" and "git diff" learn a new whitespace error class,
238
+ "incomplete-line".
239
+
240
+ Comments?
241
source: <20251105213052.1499224-1-gitster@pobox.com>
242
290
---------------------------------------------------
291
-[Cooking]
243
244
* tc/last-modified-active-paths-optimization (2025-10-23) 1 commit
245
(merged to 'next' on 2025-11-03 at 9ab444edfb)
@@ -347,28 +298,14 @@ Release tarballs are available at:
298
source: <20251027004404.2152927-1-sandals@crustytoothpaste.net>
299
300
350
-* ad/blame-diff-algorithm (2025-11-01) 2 commits
301
+* ad/blame-diff-algorithm (2025-11-06) 2 commits
302
- blame: make diff algorithm configurable
303
- xdiff: add 'minimal' to XDF_DIFF_ALGORITHM_MASK
304
305
"git blame" learns "--diff-algorithm=<algo>" option.
306
356
- Ready?
357
- source: <pull.2075.v4.git.git.1762034252.gitgitgadget@gmail.com>
358
-
359
-
360
-* cc/fast-import-export-i18n-cleanup (2025-10-30) 5 commits
361
- (merged to 'next' on 2025-11-03 at 41a35c3e52)
362
- + gpg-interface: mark a string for translation
363
- + fast-import: mark strings for translation
364
- + fast-export: mark strings for translation
365
- + gpg-interface: use left shift to define GPG_VERIFY_*
366
- + gpg-interface: simplify ssh fingerprint parsing
367
-
368
- Messages from fast-import/export are now marked for i18n.
369
-
370
- Will merge to 'master'.
371
- source: <20251030123332.3337684-1-christian.couder@gmail.com>
307
+ Will merge to 'next'?
308
+ source: <pull.2075.v5.git.git.1762468914.gitgitgadget@gmail.com>
309
310
311
* ps/packed-git-in-object-store (2025-10-30) 9 commits
@@ -390,22 +327,6 @@ Release tarballs are available at:
327
source: <20251030-pks-packfiles-store-drop-list-v2-0-84654f080cc0@pks.im>
328
329
393
-* ps/rust-cbindgen (2025-10-24) 6 commits
394
- . rust: generate bindings via cbindgen
395
- . meson: rename Rust library target
396
- . ci: use Debian instead of deprecated i386/ubuntu
397
- . gitlab-ci: backfill missing Linux jobs
398
- . gitlab-ci: reorder Linux job matrix to match GitHub's order
399
- . Merge branch 'ps/ci-rust' into ps/rust-cbindgen
400
-
401
- Introduce cbindgen in the build framework to help interfacing with
402
- Rust.
403
-
404
- More discussion?
405
- cf. <20251024-b4-pks-rust-cbindgen-v2-0-4b4bd4f18490@pks.im>
406
- source: <20251024-b4-pks-rust-cbindgen-v2-0-4b4bd4f18490@pks.im>
407
-
408
-
330
* kn/refs-optim-cleanup (2025-10-20) 4 commits
331
(merged to 'next' on 2025-11-04 at dbab18969a)
332
+ t/pack-refs-tests: move the 'test_done' to callees
@@ -501,7 +422,7 @@ Release tarballs are available at:
422
+ refs: introduce wrapper struct for `each_ref_fn`
423
+ Merge branch 'jt/repo-structure' into ps/ref-peeled-tags
424
+ Merge branch 'tb/incremental-midx-part-3.1' into ps/ref-peeled-tags
504
- (this branch is used by kn/maintenance-is-needed and kn/refs-optim-cleanup.)
425
+ (this branch is used by kn/maintenance-is-needed, kn/refs-optim-cleanup and ps/ref-peeled-tags-fixes.)
426
427
Some ref backend storage can hold not just the object name of an
428
annotated tag, but the object name of the object the tag points at.
@@ -569,17 +490,33 @@ Release tarballs are available at:
490
source: <20251105191650.89975-1-siddharthasthana31@gmail.com>
491
492
572
-* ar/submodule-gitdir-tweak (2025-10-06) 5 commits
573
- - submodule: error out if gitdir name is too long
574
- - submodule: encode gitdir paths to avoid conflicts
575
- - strbuf: bring back is_rfc3986_unreserved
576
- - submodule: add gitdir path config override
493
+* ar/submodule-gitdir-tweak (2025-11-07) 4 commits
494
+ - submodule: fix case-folding gitdir filesystem colisions
495
+ - submodule: add extension to encode gitdir paths
496
+ - builtin/credential-store: move is_rfc3986_unreserved to url.[ch]
497
- submodule--helper: use submodule_name_to_gitdir in add_submodule
498
499
Avoid local submodule repository directory paths overlapping with
500
each other by encoding submodule names before using them as path
501
components.
502
583
- Expecting v4.
584
- cf. <878qh4qxsl.fsf@gentoo.mail-host-address-is-not-set>
585
- source: <20251006112518.3764240-1-adrian.ratiu@collabora.com>
503
+ Comments?
504
+ source: <20251107150547.3272180-1-adrian.ratiu@collabora.com>
505
+
506
+--------------------------------------------------
507
+[Discarded]
508
+
509
+* ps/rust-cbindgen (2025-10-24) 6 commits
510
+ . rust: generate bindings via cbindgen
511
+ . meson: rename Rust library target
512
+ . ci: use Debian instead of deprecated i386/ubuntu
513
+ . gitlab-ci: backfill missing Linux jobs
514
+ . gitlab-ci: reorder Linux job matrix to match GitHub's order
515
+ . Merge branch 'ps/ci-rust' into ps/rust-cbindgen
516
+
517
+ Introduce cbindgen in the build framework to help interfacing with
518
+ Rust.
519
+
520
+ Retracted.
521
+ cf. <aQ3XOTX0AT_eFc5P@pks.im>
522
+ source: <20251024-b4-pks-rust-cbindgen-v2-0-4b4bd4f18490@pks.im>