What's cooking (2025/10 #03)

Junio C Hamano committed Oct 8, 2025 at 13:53 UTC ed415fd51f931ad8ce771672bcac2f9310d220d4
1 file changed +296 -208
whats-cooking.txt
+296 -208
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Oct 2025, #02; Mon, 6)
3 -X-master-at: 45547b60aca32b45d2f1ef93462cf9df28637c13
4 -X-next-at: 787ff6f08aa94a0b11d31482879f7efece126361
2 +Subject: What's cooking in git.git (Oct 2025, #03; Wed, 8)
3 +X-master-at: 60f3f52f17cceefa5299709b189ce6fe2d181e7b
4 +X-next-at: 76037df0d4c651b3a9a2f6bee29233c1598da27c
5 Bcc: lwn@lwn.net, gitster@pobox.com
6
7 -What's cooking in git.git (Oct 2025, #02; Mon, 6)
7 +What's cooking in git.git (Oct 2025, #03; Wed, 8)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -48,6 +48,202 @@ Release tarballs are available at:
48 --------------------------------------------------
49 [New Topics]
50
51 +* cc/fast-import-strip-signed-tags (2025-10-07) 5 commits
52 + - fast-import: add '--signed-tags=<mode>' option
53 + - fast-export: handle all kinds of tag signatures
54 + - t9350: properly count annotated tags
55 + - lib-gpg: allow tests with the GPGSM prereq first
56 + - doc: git-tag: stop focussing on GPG signed tags
57 +
58 + "git fast-import" is taught to handle signed tags, just like it
59 + recently learned to handle signed commits, in different ways.
60 +
61 + Comments?
62 + source: <20251007122958.1089680-1-christian.couder@gmail.com>
63 +
64 +
65 +* ps/ci-rust (2025-10-07) 8 commits
66 + - rust: support for Windows
67 + - ci: verify minimum supported Rust version
68 + - ci: check for common Rust mistakes via Clippy
69 + - rust/varint: add safety comments
70 + - ci: check formatting of our Rust code
71 + - ci: deduplicate calls to `apt-get update`
72 + - Merge branch 'ps/gitlab-ci-windows-improvements' into ps/ci-rust
73 + - Merge branch 'ps/rust-balloon' into ps/ci-rust
74 + (this branch uses ps/gitlab-ci-windows-improvements.)
75 +
76 + CI improvements to handle the recent Rust integration better.
77 +
78 + Comments?
79 + source: <20251007-b4-pks-ci-rust-v1-0-394502abe7ea@pks.im>
80 +
81 +
82 +* ps/ref-peeled-tags (2025-10-07) 13 commits
83 + - ref-filter: parse objects on demand
84 + - ref-filter: detect broken tags when dereferencing them
85 + - refs: don't store peeled object IDs for invalid tags
86 + - object: add flag to `peel_object()` to verify object type
87 + - refs: drop infrastructure to peel via iterators
88 + - refs: drop `current_ref_iter` hack
89 + - builtin/show-ref: convert to use `reference_get_peeled_oid()`
90 + - ref-filter: propagate peeled object ID
91 + - upload-pack: convert to use `reference_get_peeled_oid()`
92 + - refs: expose peeled object ID via the iterator
93 + - refs: refactor reference status flags
94 + - refs: introduce `.ref` field for the base iterator
95 + - refs: introduce wrapper struct for `each_ref_fn`
96 +
97 + Some ref backend storage can hold not just the object name of an
98 + annotated tag, but the object name of the object the tag points at.
99 + The code to handle this information has been streamlined.
100 +
101 + Expecting v2.
102 + cf. <aOZqVAOjVboM3sm3@pks.im>
103 + source: <20251007-b4-pks-ref-filter-skip-parsing-objects-v1-0-916cc7c6886b@pks.im>
104 +
105 +
106 +* ps/remove-packfile-store-get-packs (2025-10-07) 7 commits
107 + - packfile: rename `packfile_store_get_all_packs()`
108 + - packfile: introduce macro to iterate through packs
109 + - packfile: drop `packfile_store_get_packs()`
110 + - builtin/grep: simplify how we preload packs
111 + - builtin/gc: convert to use `packfile_store_get_all_packs()`
112 + - object-name: convert to use `packfile_store_get_all_packs()`
113 + - Merge branch 'tb/incremental-midx-part-3.1' into ps/remove-packfile-store-get-packs
114 + (this branch uses tb/incremental-midx-part-3.1.)
115 +
116 + Two slightly different ways to get at "all the packfiles" in API
117 + has been cleaned up.
118 +
119 + Comments?
120 + source: <20251007-pks-packfiles-convert-get-all-v1-0-428227657a89@pks.im>
121 +
122 +
123 +* tb/doc-submitting-patches (2025-10-07) 2 commits
124 + - SubmittingPatches: guidance for multi-series efforts
125 + - SubmittingPatches: extend release-notes experiment to topic names
126 +
127 + A few more things that patch authors can do to help maintainer to
128 + keep track of their topics better.
129 +
130 + Will merge to 'next'.
131 + source: <cover.1759873165.git.me@ttaylorr.com>
132 +
133 +--------------------------------------------------
134 +[Graduated to 'master']
135 +
136 +* je/doc-push (2025-09-23) 2 commits
137 + (merged to 'next' on 2025-09-29 at 4ff1b675ed)
138 + + doc: git-push: rewrite refspec specification
139 + + doc: git-push: create PUSH RULES section
140 +
141 + Doc updates.
142 + source: <pull.1973.v2.git.1758651049.gitgitgadget@gmail.com>
143 +
144 +
145 +* js/curl-off-t-fixes (2025-09-26) 3 commits
146 + (merged to 'next' on 2025-09-30 at 6d1e5fd288)
147 + + http-push: avoid new compile error
148 + + imap-send: be more careful when casting to `curl_off_t`
149 + + http: offer to cast `size_t` to `curl_off_t` safely
150 +
151 + A few places where an size_t value was cast to curl_off_t without
152 + checking has been updated to use the existing helper function.
153 + source: <pull.1974.v2.git.1758882772.gitgitgadget@gmail.com>
154 +
155 +
156 +* jt/clang-format-foreach-wo-space-before-parenthesis (2025-09-27) 1 commit
157 + (merged to 'next' on 2025-09-30 at c32668ab36)
158 + + clang-format: exclude control macros from SpaceBeforeParens
159 +
160 + Clang-format update to let our control macros formatted the way we
161 + had them traditionally, e.g., "for_each_string_list_item()" without
162 + space before the parentheses.
163 + source: <20250927145049.723341-4-jltobler@gmail.com>
164 +
165 +
166 +* kn/ref-cache-seek-fix (2025-10-01) 1 commit
167 + (merged to 'next' on 2025-10-02 at 5896b8c896)
168 + + refs/ref-cache: fix SEGFAULT when seeking in empty directories
169 +
170 + Handling of an empty subdirectory of .git/refs/ in the ref-files
171 + backend has been corrected.
172 + source: <20251001-583-git-for-each-ref-start-after-v3-1-000f03837a92@gmail.com>
173 +
174 +
175 +* mh/doc-credential-url-prefix (2025-10-01) 1 commit
176 + (merged to 'next' on 2025-10-02 at dd0d9a1c59)
177 + + docs/gitcredentials: describe URL prefix matching
178 +
179 + Doc update to describe a feature that has already been implemented.
180 + source: <pull.1979.git.1759352209657.gitgitgadget@gmail.com>
181 +
182 +
183 +* ml/reflog-write-committer-info-fix (2025-09-30) 1 commit
184 + (merged to 'next' on 2025-10-02 at 9a61d07bac)
185 + + builtin/reflog: respect user config in "write" subcommand
186 +
187 + "git reflog write" did not honor the configured user.name/email
188 + which has been corrected.
189 + source: <20250930195320.23825-1-git@lohmann.sh>
190 +
191 +
192 +* ps/odb-clean-stale-wrappers (2025-09-10) 1 commit
193 + (merged to 'next' on 2025-09-30 at 90f1033b8c)
194 + + odb: drop deprecated wrapper functions
195 +
196 + Code clean-up.
197 + source: <20250910-b4-pks-odb-drop-wrappers-v1-1-6ed660cb1eec@pks.im>
198 +
199 +
200 +* ps/packfile-store (2025-09-23) 16 commits
201 + (merged to 'next' on 2025-09-29 at 342bb57fc2)
202 + + packfile: refactor `get_packed_git_mru()` to work on packfile store
203 + + packfile: refactor `get_all_packs()` to work on packfile store
204 + + packfile: refactor `get_packed_git()` to work on packfile store
205 + + packfile: move `get_multi_pack_index()` into "midx.c"
206 + + packfile: introduce function to load and add packfiles
207 + + packfile: refactor `install_packed_git()` to work on packfile store
208 + + packfile: split up responsibilities of `reprepare_packed_git()`
209 + + packfile: refactor `prepare_packed_git()` to work on packfile store
210 + + packfile: reorder functions to avoid function declaration
211 + + odb: move kept cache into `struct packfile_store`
212 + + odb: move MRU list of packfiles into `struct packfile_store`
213 + + odb: move packfile map into `struct packfile_store`
214 + + odb: move initialization bit into `struct packfile_store`
215 + + odb: move list of packfiles into `struct packfile_store`
216 + + packfile: introduce a new `struct packfile_store`
217 + + Merge branch 'ps/object-store-midx-dedup-info' into ps/packfile-store
218 + (this branch is used by tb/incremental-midx-part-3.1.)
219 +
220 + Code clean-up around the in-core list of all the pack files and
221 + object database(s).
222 + cf. <aNmxQqV3+1Ad12qC@nand.local>
223 + source: <20250923-b4-pks-packfiles-store-v6-0-b48f2a882759@pks.im>
224 +
225 +
226 +* ps/rust-balloon (2025-10-02) 9 commits
227 + (merged to 'next' on 2025-10-02 at fe4cdc2dfa)
228 + + ci: enable Rust for breaking-changes jobs
229 + + ci: convert "pedantic" job into full build with breaking changes
230 + + BreakingChanges: announce Rust becoming mandatory
231 + + varint: reimplement as test balloon for Rust
232 + + varint: use explicit width for integers
233 + + help: report on whether or not Rust is enabled
234 + + Makefile: introduce infrastructure to build internal Rust library
235 + + Makefile: reorder sources after includes
236 + + meson: add infrastructure to build internal Rust library
237 + (this branch is used by ps/ci-rust.)
238 +
239 + Dip our toes a bit to (optionally) use Rust implemented helper
240 + called from our C code.
241 + cf. <aNsQ5UjjbqJr8_Ik@fruit.crustytoothpaste.net>
242 + source: <20251002-b4-pks-rust-breaking-change-v8-0-3a89fd5b1ce7@pks.im>
243 +
244 +--------------------------------------------------
245 +[Cooking]
246 +
247 * en/doc-merge-tree-describe-merge-base (2025-10-02) 1 commit
248 (merged to 'next' on 2025-10-06 at 787ff6f08a)
249 + Documentation/git-merge-tree.adoc: clarify the --merge-base option
@@ -58,7 +254,8 @@ Release tarballs are available at:
254 source: <pull.1980.git.1759444487406.gitgitgadget@gmail.com>
255
256
61 -* je/doc-data-model (2025-10-03) 1 commit
257 +* je/doc-data-model (2025-10-07) 2 commits
258 + - fixup! doc: add a explanation of Git's data model
259 - doc: add a explanation of Git's data model
260
261 Add a new manual that describes the data model.
@@ -78,32 +275,32 @@ Release tarballs are available at:
275 The code in "git add -p" and friends to iterate over hunks was
276 riddled with bugs, which has been corrected.
277
81 - Will merge to 'next'?
278 + Will merge to 'next'.
279 source: <fe8e8097-2b05-4dd2-a754-f59e4ba5f95a@web.de>
280
281
282 * jn/doc-help-translaing-pretty-options (2025-10-05) 1 commit
86 - - doc: do not break sentences into "lego" pieces
283 + (merged to 'next' on 2025-10-08 at 8962b8d1f0)
284 + + doc: do not break sentences into "lego" pieces
285
286 Documentation for "git log --pretty" options has been updated
287 to make it easier to translate.
288
91 - Will merge to 'next'.
289 + Will merge to 'master'.
290 source: <pull.1982.git.1759698724134.gitgitgadget@gmail.com>
291
292
293 * jn/doc-synopsis (2025-10-05) 3 commits
96 - - doc: convert git worktree to synopsis style
97 - - doc: convert git tag to synopsis style
98 - - doc: convert git-stash.adoc to synopis style
294 + (merged to 'next' on 2025-10-08 at fd4f96ff5e)
295 + + doc: convert git worktree to synopsis style
296 + + doc: convert git tag to synopsis style
297 + + doc: convert git-stash.adoc to synopis style
298
299 Doc-mark-up modernization continues.
300
102 - Will merge to 'next'.
301 + Will merge to 'master'.
302 source: <pull.1969.git.1759698702.gitgitgadget@gmail.com>
303
105 ---------------------------------------------------
106 -[Cooking]
304
305 * tb/incremental-midx-part-3.1 (2025-09-29) 51 commits
306 - SQUASH??? play well with other topics by preemptively including "repository.h"
@@ -157,7 +354,7 @@ Release tarballs are available at:
354 - builtin/repack.c: avoid "the_repository" in existing packs API
355 - builtin/repack.c: avoid "the_repository" in `cmd_repack()`
356 - Merge branch 'ps/packfile-store' into tb/incremental-midx-part-3.1
160 - (this branch uses ps/packfile-store.)
357 + (this branch is used by ps/remove-packfile-store-get-packs.)
358
359 Comments?
360 source: <cover.1759097191.git.me@ttaylorr.com>
@@ -173,38 +370,6 @@ Release tarballs are available at:
370 source: <20251001140310.527097-1-christian.couder@gmail.com>
371
372
176 -* kn/ref-cache-seek-fix (2025-10-01) 1 commit
177 - (merged to 'next' on 2025-10-02 at 5896b8c896)
178 - + refs/ref-cache: fix SEGFAULT when seeking in empty directories
179 -
180 - Fix handling of an empty subdirectory of .git/refs/ in the
181 - ref-files backend.
182 -
183 - Will merge to 'master'.
184 - source: <20251001-583-git-for-each-ref-start-after-v3-1-000f03837a92@gmail.com>
185 -
186 -
187 -* mh/doc-credential-url-prefix (2025-10-01) 1 commit
188 - (merged to 'next' on 2025-10-02 at dd0d9a1c59)
189 - + docs/gitcredentials: describe URL prefix matching
190 -
191 - Doc update to describe a feature that has already been implemented.
192 -
193 - Will merge to 'master'.
194 - source: <pull.1979.git.1759352209657.gitgitgadget@gmail.com>
195 -
196 -
197 -* ml/reflog-write-committer-info-fix (2025-09-30) 1 commit
198 - (merged to 'next' on 2025-10-02 at 9a61d07bac)
199 - + builtin/reflog: respect user config in "write" subcommand
200 -
201 - "git reflog write" did not honor the configured user.name/email
202 - which has been corrected.
203 -
204 - Will merge to 'master'.
205 - source: <20250930195320.23825-1-git@lohmann.sh>
206 -
207 -
373 * ps/history (2025-10-01) 13 commits
374 - builtin/history: implement "split" subcommand
375 - cache-tree: allow writing in-memory index as tree
@@ -233,7 +398,7 @@ Release tarballs are available at:
398 and one for xdiff), roll everything into a single libgit.a archive.
399 This would help later effort to FFI into Rust.
400
236 - Will merge to 'next'?
401 + Will merge to 'next'.
402 source: <pull.2065.v2.git.git.1759447647.gitgitgadget@gmail.com>
403
404
@@ -257,6 +422,7 @@ Release tarballs are available at:
422 + gitlab-ci: drop workaround for Python certificate store on Windows
423 + gitlab-ci: ignore failures to disable realtime monitoring
424 + gitlab-ci: dedup instructions to disable realtime monitoring
425 + (this branch is used by ps/ci-rust.)
426
427 GitLab CI improvements.
428
@@ -281,55 +447,46 @@ Release tarballs are available at:
447 - doc: remembering-renames.adoc: fix asciidoc warnings
448 (this branch uses rj/doc-missing-technical-docs.)
449
284 - Documenation mark-up fixes.
450 + Documentation mark-up fixes.
451
286 - Comments?
452 + Expecting v3.
453 + cf. <20251002221233.541844-1-ramsay@ramsayjones.plus.com>
454 source: <20251002221233.541844-1-ramsay@ramsayjones.plus.com>
455
456
290 -* ja/doc-markup-attached-paragraph-fix (2025-09-27) 1 commit
457 +* ja/doc-markup-attached-paragraph-fix (2025-10-07) 2 commits
458 + (merged to 'next' on 2025-10-07 at 5b991a7b14)
459 + + doc: fix indentation of refStorage item in git-config(1)
460 (merged to 'next' on 2025-09-30 at a91ca5db03)
461 + doc: change the markup of paragraphs following a nested list item
462
463 Documentation mark-up fix.
295 -
296 - Expecting an incremental follow-up to avoid regerssion.
297 - cf. <2239952.irdbgypaU6@cayenne>
464 source: <20250927195032.37223-1-jn.avila@free.fr>
465 + source: <20251007082223.GA3336685@coredump.intra.peff.net>
466
467
468 * jc/optional-path (2025-09-28) 4 commits
302 - - parseopt: values of pathname type can be prefixed with :(optional)
303 - - config: values of pathname type can be prefixed with :(optional)
304 - - t7500: fix GIT_EDITOR shell snippet
305 - - t7500: make each piece more independent
469 + (merged to 'next' on 2025-10-08 at a1e8af9952)
470 + + parseopt: values of pathname type can be prefixed with :(optional)
471 + + config: values of pathname type can be prefixed with :(optional)
472 + + t7500: fix GIT_EDITOR shell snippet
473 + + t7500: make each piece more independent
474
475 Configuration variables that take a pathname as a value
476 (e.g. blame.ignorerevsfile) can be marked as optional by prefixing
477 ":(optoinal)" before its value.
478
311 - Will merge to 'next'?
312 - source: <cover.1759094936.git.ben.knoble+github@gmail.com>
313 -
314 -
315 -* jt/clang-format-foreach-wo-space-before-parenthesis (2025-09-27) 1 commit
316 - (merged to 'next' on 2025-09-30 at c32668ab36)
317 - + clang-format: exclude control macros from SpaceBeforeParens
318 -
319 - Clang-format update to let our control macros formatted the way we
320 - had them traditionally, e.g., "for_each_string_list_item()" without
321 - space before the parentheses.
322 -
479 Will merge to 'master'.
324 - source: <20250927145049.723341-4-jltobler@gmail.com>
480 + source: <cover.1759094936.git.ben.knoble+github@gmail.com>
481
482
483 * kh/doc-patch-id-markup-fix (2025-09-29) 1 commit
328 - - doc: patch-id: fix accidental literal blocks
484 + (merged to 'next' on 2025-10-08 at a81dc9f7e6)
485 + + doc: patch-id: fix accidental literal blocks
486
330 - Documenaotin mark-up fix.
487 + Documentation mark-up fix.
488
332 - Will merge to 'next'?
489 + Will merge to 'master'.
490 source: <v2-e5ad12cc3b3.1759178715.git.code@khaugsbakk.name>
491
492
@@ -341,14 +498,16 @@ Release tarballs are available at:
498 in a transaction by default, instead of emitting where each refs
499 should point at and leaving the actual update to another command.
500
344 - Comments?
501 + Expecting v3.
502 + cf. <64b63d62-482d-42b2-8090-60aac8f505d4@gmail.com>
503 source: <20250926230838.35870-2-siddharthasthana31@gmail.com>
504
505
506 * kh/format-patch-range-diff-notes (2025-09-25) 3 commits
349 - - format-patch: handle range-diff on notes correctly for single patches
350 - - revision: add rdiff_log_arg to rev_info
351 - - range-diff: rename other_arg to log_arg
507 + (merged to 'next' on 2025-10-08 at e06aae4166)
508 + + format-patch: handle range-diff on notes correctly for single patches
509 + + revision: add rdiff_log_arg to rev_info
510 + + range-diff: rename other_arg to log_arg
511
512 "git format-patch --range-diff=... --notes=..." did not drive the
513 underlying range-diff with correct --notes parameter, ending up
@@ -356,7 +515,7 @@ Release tarballs are available at:
515 you would get from "git format-patch --notes=..." for a singleton
516 patch.
517
359 - Will merge to 'next'?
518 + Will merge to 'master'.
519 source: <v2-cover.1758819879.git.code@khaugsbakk.name>
520
521
@@ -367,19 +526,22 @@ Release tarballs are available at:
526 - doc: git-pull: move <repository> and <refspec> params
527
528 Documentation updates.
529 +
530 + Will replace with v2.
531 source: <pull.1976.git.1758656702.gitgitgadget@gmail.com>
532
533
534 * je/doc-push-upstream (2025-10-06) 5 commits
374 - - doc: git-push: add explanation of `git push origin main`
375 - - doc: git-push: clarify "what to push"
376 - - doc: git-push: clarify "where to push"
377 - - doc: add an UPSTREAM BRANCHES section to pull/push/fetch
378 - - doc: git-push: clarify intro
535 + (merged to 'next' on 2025-10-08 at 7bda6929b1)
536 + + doc: git-push: add explanation of `git push origin main`
537 + + doc: git-push: clarify "what to push"
538 + + doc: git-push: clarify "where to push"
539 + + doc: add an UPSTREAM BRANCHES section to pull/push/fetch
540 + + doc: git-push: clarify intro
541
542 Documentation updates.
543
382 - Will merge to 'next'?
544 + Will merge to 'master'.
545 source: <pull.1964.v5.git.1759777131.gitgitgadget@gmail.com>
546
547
@@ -407,33 +569,21 @@ Release tarballs are available at:
569 source: <20250927145049.723341-1-jltobler@gmail.com>
570
571
410 -* js/curl-off-t-fixes (2025-09-26) 3 commits
411 - (merged to 'next' on 2025-09-30 at 6d1e5fd288)
412 - + http-push: avoid new compile error
413 - + imap-send: be more careful when casting to `curl_off_t`
414 - + http: offer to cast `size_t` to `curl_off_t` safely
415 -
416 - A few places where an size_t value was cast to curl_off_t without
417 - checking has been updated to use the existing helper function.
418 -
419 - Will merge to 'master'.
420 - source: <pull.1974.v2.git.1758882772.gitgitgadget@gmail.com>
421 -
422 -
423 -* kn/reftable-consistency-checks (2025-10-06) 7 commits
424 - - refs/reftable: add fsck check for checking the table name
425 - - reftable: add code to facilitate consistency checks
426 - - fsck: order 'fsck_msg_type' alphabetically
427 - - Documentation/fsck-msgids: remove duplicate msg id
428 - - reftable: check for trailing newline in 'tables.list'
429 - - refs: move consistency check msg to generic layer
430 - - refs: remove unused headers
572 +* kn/reftable-consistency-checks (2025-10-07) 7 commits
573 + (merged to 'next' on 2025-10-07 at b9f4bd79f9)
574 + + refs/reftable: add fsck check for checking the table name
575 + + reftable: add code to facilitate consistency checks
576 + + fsck: order 'fsck_msg_type' alphabetically
577 + + Documentation/fsck-msgids: remove duplicate msg id
578 + + reftable: check for trailing newline in 'tables.list'
579 + + refs: move consistency check msg to generic layer
580 + + refs: remove unused headers
581
582 The reftable backend learned to sanity check its on-disk data more
583 carefully.
584
435 - Comments?
436 - source: <20251006-228-reftable-introduce-consistency-checks-v5-0-f196d386214f@gmail.com>
585 + Will merge to 'master'.
586 + source: <20251007-228-reftable-introduce-consistency-checks-v6-0-638cff42f0b0@gmail.com>
587
588
589 * bc/sha1-256-interop-01 (2025-10-02) 9 commits
@@ -449,40 +599,43 @@ Release tarballs are available at:
599
600 The beginning of SHA1-SHA256 interoperability work.
601
452 - Will merge to 'next'?
602 + Expecting v3.
603 + cf. <aOA6z-kFCd78XtxX@fruit.crustytoothpaste.net>
604 source: <20251002223855.1022847-1-sandals@crustytoothpaste.net>
605
606
607 * pw/add-p-hunk-splitting-fix (2025-09-25) 2 commits
457 - - add-patch: update hunk splitability after editing
458 - - add -p: mark split hunks as undecided
608 + (merged to 'next' on 2025-10-08 at 3fdb4a84ce)
609 + + add-patch: update hunk splitability after editing
610 + + add -p: mark split hunks as undecided
611
612 Marking a hunk 'selected' in "git add -p" and then splitting made
613 all the split pieces 'selected'; this has been changed to make them
614 all 'undecided', which gives better end-user experience.
615
464 - Will merge to 'next'?
616 + Will merge to 'master'.
617 source: <pull.1863.v3.git.1758813038.gitgitgadget@gmail.com>
618
619
620 * en/xdiff-cleanup (2025-09-26) 12 commits
469 - - xdiff: change type of xdfile_t.changed from char to bool
470 - - xdiff: add macros DISCARD(0), KEEP(1), INVESTIGATE(2) in xprepare.c
471 - - xdiff: rename rchg -> changed in xdfile_t
472 - - xdiff: delete chastore from xdfile_t
473 - - xdiff: delete fields ha, line, size in xdlclass_t in favor of an xrecord_t
474 - - xdiff: delete redundant array xdfile_t.ha
475 - - xdiff: delete struct diffdata_t
476 - - xdiff: delete local variables that alias fields in xrecord_t
477 - - xdiff: delete superfluous function xdl_get_rec() in xemit
478 - - xdiff: delete unnecessary fields from xrecord_t and xdfile_t
479 - - xdiff: delete local variables and initialize/free xdfile_t directly
480 - - xdiff: delete static forward declarations in xprepare
621 + (merged to 'next' on 2025-10-08 at 5bc21d0f06)
622 + + xdiff: change type of xdfile_t.changed from char to bool
623 + + xdiff: add macros DISCARD(0), KEEP(1), INVESTIGATE(2) in xprepare.c
624 + + xdiff: rename rchg -> changed in xdfile_t
625 + + xdiff: delete chastore from xdfile_t
626 + + xdiff: delete fields ha, line, size in xdlclass_t in favor of an xrecord_t
627 + + xdiff: delete redundant array xdfile_t.ha
628 + + xdiff: delete struct diffdata_t
629 + + xdiff: delete local variables that alias fields in xrecord_t
630 + + xdiff: delete superfluous function xdl_get_rec() in xemit
631 + + xdiff: delete unnecessary fields from xrecord_t and xdfile_t
632 + + xdiff: delete local variables and initialize/free xdfile_t directly
633 + + xdiff: delete static forward declarations in xprepare
634
635 A lot of code clean-up of xdiff.
636 Split out of a larger topic.
637
485 - Will merge to 'next'?
638 + Will merge to 'master'.
639 source: <pull.2048.v6.git.git.1758926520.gitgitgadget@gmail.com>
640
641
@@ -497,107 +650,41 @@ Release tarballs are available at:
650 each other by encoding submodule names before using them as path
651 components.
652
500 - Comments?
653 + Expecting v4.
654 + cf. <20251006112518.3764240-1-adrian.ratiu@collabora.com>
655 source: <20251006112518.3764240-1-adrian.ratiu@collabora.com>
656
657
504 -* je/doc-push (2025-09-23) 2 commits
505 - (merged to 'next' on 2025-09-29 at 4ff1b675ed)
506 - + doc: git-push: rewrite refspec specification
507 - + doc: git-push: create PUSH RULES section
508 -
509 - Doc updates.
510 -
511 - Will merge to 'master'.
512 - source: <pull.1973.v2.git.1758651049.gitgitgadget@gmail.com>
513 -
514 -
515 -* ps/odb-clean-stale-wrappers (2025-09-10) 1 commit
516 - (merged to 'next' on 2025-09-30 at 90f1033b8c)
517 - + odb: drop deprecated wrapper functions
518 -
519 - Code clean-up.
520 -
521 - Will merge to 'master'.
522 - source: <20250910-b4-pks-odb-drop-wrappers-v1-1-6ed660cb1eec@pks.im>
523 -
524 -
658 * ps/commit-graph-per-object-source (2025-09-04) 5 commits
526 - - commit-graph: pass graphs that are to be merged as parameter
527 - - commit-graph: return commit graph from `repo_find_commit_pos_in_graph()`
528 - - commit-graph: return the prepared commit graph from `prepare_commit_graph()`
529 - - revision: drop explicit check for commit graph
530 - - blame: drop explicit check for commit graph
659 + (merged to 'next' on 2025-10-07 at 6c9690a649)
660 + + commit-graph: pass graphs that are to be merged as parameter
661 + + commit-graph: return commit graph from `repo_find_commit_pos_in_graph()`
662 + + commit-graph: return the prepared commit graph from `prepare_commit_graph()`
663 + + revision: drop explicit check for commit graph
664 + + blame: drop explicit check for commit graph
665
532 - Declare commit-graph is per object_source, which may not be a good idea.
666 + Code clean-up around commit-graph.
667
534 - Will merge to 'next'.
668 + Will merge to 'master'.
669 cf. <cf7aeda1-297a-4805-b0ae-e379ce11bbcf@gmail.com>
670 cf. <aN5gPoPC4WEYw9CF@pks.im>
671 source: <20250904-b4-pks-commit-graph-via-source-v1-0-d932c2481e1a@pks.im>
672
673
540 -* ps/rust-balloon (2025-10-02) 9 commits
541 - (merged to 'next' on 2025-10-02 at fe4cdc2dfa)
542 - + ci: enable Rust for breaking-changes jobs
543 - + ci: convert "pedantic" job into full build with breaking changes
544 - + BreakingChanges: announce Rust becoming mandatory
545 - + varint: reimplement as test balloon for Rust
546 - + varint: use explicit width for integers
547 - + help: report on whether or not Rust is enabled
548 - + Makefile: introduce infrastructure to build internal Rust library
549 - + Makefile: reorder sources after includes
550 - + meson: add infrastructure to build internal Rust library
551 -
552 - Dip our toes a bit to (optionally) use Rust implemented helper
553 - called from our C code.
554 -
555 - Will merge to 'master'.
556 - cf. <aNsQ5UjjbqJr8_Ik@fruit.crustytoothpaste.net>
557 - source: <20251002-b4-pks-rust-breaking-change-v8-0-3a89fd5b1ce7@pks.im>
558 -
559 -
674 * sj/string-list (2025-10-05) 4 commits
561 - - refs: enable sign compare warnings check
562 - - string-list: change "string_list_find_insert_index" return type to "size_t"
563 - - string-list: replace negative index encoding with "exact_match" parameter
564 - - string-list: use bool instead of int for "exact_match"
675 + (merged to 'next' on 2025-10-08 at cf0fc3ea18)
676 + + refs: enable sign compare warnings check
677 + + string-list: change "string_list_find_insert_index" return type to "size_t"
678 + + string-list: replace negative index encoding with "exact_match" parameter
679 + + string-list: use bool instead of int for "exact_match"
680
681 The "string-list" API function to find where a given string would
682 be inserted got updated so that it can use unrealistically huge
683 array index that would only fit in size_t but not int or ssize_t
684 to achieve unstated goal.
685
571 - Will merge to 'next'?
572 - source: <aONhmrE0otiyZ16f@ArchLinux>
573 -
574 -
575 -* ps/packfile-store (2025-09-23) 16 commits
576 - (merged to 'next' on 2025-09-29 at 342bb57fc2)
577 - + packfile: refactor `get_packed_git_mru()` to work on packfile store
578 - + packfile: refactor `get_all_packs()` to work on packfile store
579 - + packfile: refactor `get_packed_git()` to work on packfile store
580 - + packfile: move `get_multi_pack_index()` into "midx.c"
581 - + packfile: introduce function to load and add packfiles
582 - + packfile: refactor `install_packed_git()` to work on packfile store
583 - + packfile: split up responsibilities of `reprepare_packed_git()`
584 - + packfile: refactor `prepare_packed_git()` to work on packfile store
585 - + packfile: reorder functions to avoid function declaration
586 - + odb: move kept cache into `struct packfile_store`
587 - + odb: move MRU list of packfiles into `struct packfile_store`
588 - + odb: move packfile map into `struct packfile_store`
589 - + odb: move initialization bit into `struct packfile_store`
590 - + odb: move list of packfiles into `struct packfile_store`
591 - + packfile: introduce a new `struct packfile_store`
592 - + Merge branch 'ps/object-store-midx-dedup-info' into ps/packfile-store
593 - (this branch is used by tb/incremental-midx-part-3.1.)
594 -
595 - Code clean-up around the in-core list of all the pack files and
596 - object database(s).
597 -
686 Will merge to 'master'.
599 - cf. <aNmxQqV3+1Ad12qC@nand.local>
600 - source: <20250923-b4-pks-packfiles-store-v6-0-b48f2a882759@pks.im>
687 + source: <aONhmrE0otiyZ16f@ArchLinux>
688
689
690 * ds/sparse-checkout-clean (2025-09-12) 7 commits
@@ -614,8 +701,9 @@ Release tarballs are available at:
701 prune otherwise unused working-tree files that are outside the
702 areas of interest.
703
617 - On hold.
704 + Expecting a (hopefully small) incremental update.
705 cf. <3537e220-44b6-4e37-a568-cef34a2fddfd@gmail.com>
706 + cf. <xmqq5xcpgy9t.fsf@gitster.g>
707 source: <pull.1941.v3.git.1757673011.gitgitgadget@gmail.com>
708
709 --------------------------------------------------