]> git.ipfire.org Git - thirdparty/git.git/commitdiff
What's cooking (2025/10 #12)
authorJunio C Hamano <gitster@pobox.com>
Thu, 30 Oct 2025 20:10:31 +0000 (13:10 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 30 Oct 2025 20:10:31 +0000 (13:10 -0700)
whats-cooking.txt

index b4432e314b2a02f3e558256aace24c0602667196..563bb068b633443faac354ed18ed444179a87798 100644 (file)
@@ -1,10 +1,10 @@
 To: git@vger.kernel.org
-Subject: What's cooking in git.git (Oct 2025, #11; Tue, 28)
-X-master-at: 57da342c786f59eaeb436c18635cc1c7597733d9
-X-next-at: a50a493c49d755bf293be8b21ea65208572816ae
+Subject: What's cooking in git.git (Oct 2025, #12; Thu, 30)
+X-master-at: a99f379adf116d53eb11957af5bab5214915f91d
+X-next-at: c1ab5b90caafe0e01395e0937868c10fd1c06ddf
 Bcc: lwn@lwn.net, gitster@pobox.com
 
-What's cooking in git.git (Oct 2025, #11; Tue, 28)
+What's cooking in git.git (Oct 2025, #12; Thu, 30)
 --------------------------------------------------
 
 Here are the topics that have been cooking in my tree.  Commits
@@ -48,102 +48,267 @@ Release tarballs are available at:
 --------------------------------------------------
 [Graduated to 'master']
 
-* cc/fast-import-strip-signed-tags (2025-10-13) 5 commits
-  (merged to 'next' on 2025-10-22 at c25f8aa54a)
- + fast-import: add '--signed-tags=<mode>' option
- + fast-export: handle all kinds of tag signatures
- + t9350: properly count annotated tags
- + lib-gpg: allow tests with GPGSM or GPGSSH prereq first
- + doc: git-tag: stop focusing on GPG signed tags
-
- "git fast-import" is taught to handle signed tags, just like it
- recently learned to handle signed commits, in different ways.
- source: <20251013084857.1646783-1-christian.couder@gmail.com>
-
-
-* ds/sparse-checkout-clean (2025-10-20) 8 commits
-  (merged to 'next' on 2025-10-20 at afc50f3401)
- + sparse-index: improve advice message instructions
-  (merged to 'next' on 2025-09-25 at 00b296f153)
- + t: expand tests around sparse merges and clean
- + sparse-index: point users to new 'clean' action
- + sparse-checkout: add --verbose option to 'clean'
- + dir: add generic "walk all files" helper
- + sparse-checkout: match some 'clean' behavior
- + sparse-checkout: add basics of 'clean' command
- + sparse-checkout: remove use of the_repository
-
- "git sparse-checkout" subcommand learned a new "clean" action to
- prune otherwise unused working-tree files that are outside the
- areas of interest.
- source: <pull.1941.v3.git.1757673011.gitgitgadget@gmail.com>
-
-
-* ps/ci-rust (2025-10-14) 8 commits
-  (merged to 'next' on 2025-10-22 at 89129fa777)
- + rust: support for Windows
- + ci: verify minimum supported Rust version
- + ci: check for common Rust mistakes via Clippy
- + rust/varint: add safety comments
- + ci: check formatting of our Rust code
- + ci: deduplicate calls to `apt-get update`
- + Merge branch 'ps/gitlab-ci-windows-improvements' into ps/ci-rust
- + Merge branch 'ps/rust-balloon' into ps/ci-rust
- (this branch is used by ps/rust-cbindgen and qj/doc-first-contrib-check-lore.)
-
- CI improvements to handle the recent Rust integration better.
- source: <20251015-b4-pks-ci-rust-v3-0-13810af33bd5@pks.im>
+* ey/commit-graph-changed-paths-config (2025-10-17) 1 commit
+  (merged to 'next' on 2025-10-23 at 48fd936ff1)
+ + commit-graph: add new config for changed-paths & recommend it in scalar
+
+ A new configuration variable commitGraph.changedPaths allows to
+ turn "--changed-paths" on by default for "git commit-graph".
+ source: <pull.1983.v2.git.1760734739642.gitgitgadget@gmail.com>
+
+
+* kf/log-shortlog-completion-fix (2025-10-20) 1 commit
+  (merged to 'next' on 2025-10-24 at 2300659a0a)
+ + completion: complete some 'git log' options
+
+ "git shortlog" knows "--committer" and "--author" options, which
+ the command line completion (in contrib/) did not handle well,
+ which has been corrected.
+ source: <pull.2073.v2.git.git.1760981577441.gitgitgadget@gmail.com>
+
+
+* ly/diff-name-only-with-diff-from-content (2025-10-19) 3 commits
+  (merged to 'next' on 2025-10-24 at 237c19e4e6)
+ + diff: stop output garbled message in dry run mode
+ + Merge branch 'jc/diff-from-contents-fix' into ly/diff-name-only-with-diff-from-content
+ + Merge branch 'jk/diff-from-contents-fix' into ly/diff-name-only-with-diff-from-content
+ (this branch is used by jk/diff-patch-dry-run-cleanup.)
+
+ Regression fixes for a topic that has already been merged.
+ source: <20251019163024.18939-1-yldhome2d2@gmail.com>
+
+
+* ob/gpg-interface-cleanup (2025-10-23) 2 commits
+  (merged to 'next' on 2025-10-24 at ce6d041635)
+ + gpg-interface: do not use misdesigned strbuf_split*()
+ + gpg-interface: do not use misdesigned strbuf_split*()
+
+ strbuf_split*() to split a string into multiple strbufs is often a
+ wrong API to use.  A few uses of it have been removed by
+ simplifying the code.
+ cf. <CAP8UFD1fousSKKduFAaZrsV9REnOaRDOQYcqB+rTQ0Ys60OWGA@mail.gmail.com>
+ source: <cover.1761217100.git.belkid98@gmail.com>
+
+
+* ps/remove-packfile-store-get-packs (2025-10-09) 7 commits
+  (merged to 'next' on 2025-10-24 at e2f6fba6fe)
+ + packfile: rename `packfile_store_get_all_packs()`
+ + packfile: introduce macro to iterate through packs
+ + packfile: drop `packfile_store_get_packs()`
+ + builtin/grep: simplify how we preload packs
+ + builtin/gc: convert to use `packfile_store_get_all_packs()`
+ + object-name: convert to use `packfile_store_get_all_packs()`
+ + Merge branch 'tb/incremental-midx-part-3.1' into ps/remove-packfile-store-get-packs
+ (this branch is used by ps/packed-git-in-object-store.)
+
+ Two slightly different ways to get at "all the packfiles" in API
+ has been cleaned up.
+ source: <20251009-pks-packfiles-convert-get-all-v2-0-0d73b87ce711@pks.im>
+
+
+* ps/symlink-symref-deprecation (2025-10-14) 1 commit
+  (merged to 'next' on 2025-10-24 at b37ca35280)
+ + refs/files: deprecate writing symrefs as symbolic links
+
+ "Symlink symref" has been added to the list of things that will
+ disappear at Git 3.0 boundary.
+ source: <20251015-pks-ref-files-deprecate-symbolic-links-v2-1-0529ba48db41@pks.im>
+
+
+* rz/bisect-help-unknown (2025-10-22) 1 commit
+  (merged to 'next' on 2025-10-24 at d0633ab14d)
+ + bisect: fix handling of `help` and invalid subcommands
+
+ "git bisect" command did not react correctly to "git bisect help"
+ and "git bisect unknown", which has been corrected.
+ source: <pull.2078.git.git.1761122173126.gitgitgadget@gmail.com>
+
+
+* tb/incremental-midx-part-3.1 (2025-10-15) 50 commits
+  (merged to 'next' on 2025-10-22 at e78054f5a0)
+ + builtin/repack.c: clean up unused `#include`s
+ + repack: move `write_cruft_pack()` out of the builtin
+ + repack: move `write_filtered_pack()` out of the builtin
+ + repack: move `pack_kept_objects` to `struct pack_objects_args`
+ + repack: move `finish_pack_objects_cmd()` out of the builtin
+ + builtin/repack.c: pass `write_pack_opts` to `finish_pack_objects_cmd()`
+ + repack: extract `write_pack_opts_is_local()`
+ + repack: move `find_pack_prefix()` out of the builtin
+ + builtin/repack.c: use `write_pack_opts` within `write_cruft_pack()`
+ + builtin/repack.c: introduce `struct write_pack_opts`
+ + repack: 'write_midx_included_packs' API from the builtin
+ + builtin/repack.c: inline packs within `write_midx_included_packs()`
+ + builtin/repack.c: pass `repack_write_midx_opts` to `midx_included_packs`
+ + builtin/repack.c: inline `remove_redundant_bitmaps()`
+ + builtin/repack.c: reorder `remove_redundant_bitmaps()`
+ + repack: keep track of MIDX pack names using existing_packs
+ + builtin/repack.c: use a string_list for 'midx_pack_names'
+ + builtin/repack.c: extract opts struct for 'write_midx_included_packs()'
+ + builtin/repack.c: remove ref snapshotting from builtin
+ + repack: remove pack_geometry API from the builtin
+ + builtin/repack.c: pass 'packdir' to `pack_geometry_remove_redundant()`
+ + builtin/repack.c: pass 'pack_kept_objects' to `pack_geometry_init()`
+ + builtin/repack.c: rename various pack_geometry functions
+ + builtin/repack.c: remove "repack_promisor_objects()" from the builtin
+ + builtin/repack.c: pass "packtmp" to `repack_promisor_objects()`
+ + repack: remove 'generated_pack' API from the builtin
+ + builtin/repack.c: provide pack locations to `generated_pack_install()`
+ + builtin/repack.c: pass "packtmp" to `generated_pack_populate()`
+ + builtin/repack.c: factor out "generated_pack_install"
+ + builtin/repack.c: rename "struct generated_pack_data"
+ + repack: remove 'existing_packs' API from the builtin
+ + builtin/repack.c: avoid unnecessary numeric casts in existing_packs
+ + builtin/repack.c: pass "packdir" when removing packs
+ + repack: remove 'remove_redundant_pack' from the builtin
+ + builtin/repack.c: rename many 'struct existing_packs' functions
+ + repack: remove 'prepare_pack_objects' from the builtin
+ + repack: move 'delta_base_offset' to 'struct pack_objects_args'
+ + builtin/repack.c: pass both pack_objects args to repack_config
+ + repack: introduce new compilation unit
+ + builtin/repack.c: avoid using `hash_to_hex()` in pack geometry
+ + builtin/repack.c: avoid "the_hash_algo" in `finish_pack_objects_cmd()`
+ + builtin/repack: avoid "the_hash_algo" in `repack_promisor_objects()`
+ + builtin/repack.c: avoid "the_hash_algo" in `write_oid()`
+ + builtin/repack.c: avoid "the_hash_algo" when deleting packs
+ + builtin/repack.c: avoid "the_repository" when repacking promisor objects
+ + builtin/repack.c: avoid "the_repository" when removing packs
+ + builtin/repack.c: avoid "the_repository" when taking a ref snapshot
+ + builtin/repack.c: avoid "the_repository" in existing packs API
+ + builtin/repack.c: avoid "the_repository" in `cmd_repack()`
+ + Merge branch 'ps/packfile-store' into tb/incremental-midx-part-3.1
+ (this branch is used by kn/refs-optim-cleanup, ps/maintenance-geometric, ps/packed-git-in-object-store, ps/ref-peeled-tags and ps/remove-packfile-store-get-packs.)
+
+ Clean-up "git repack" machinery to prepare for incremental update
+ of midx files.
+ source: <cover.1760567210.git.me@ttaylorr.com>
 
 --------------------------------------------------
 [New Topics]
 
+* kh/doc-checkout-markup-fix (2025-10-28) 1 commit
+  (merged to 'next' on 2025-10-29 at f106c77f74)
+ + doc: git-checkout: fix placeholder markup
+
+ Doc mark-up fix.
+
+ Will merge to 'master'.
+ source: <v2-cb38c701537.1761675472.git.code@khaugsbakk.name>
+
+
+* rz/t0450-bisect-doc-update (2025-10-28) 1 commit
+ - bisect: update usage and docs to match each other
+
+ The help text and manual page of "git bisect" command have been
+ made consistent with each other.
+
+ Will merge to 'next'.
+ source: <pull.2084.git.git.1761690461697.gitgitgadget@gmail.com>
+
+
+* bc/sha1-256-interop-02 (2025-10-29) 15 commits
+ - SQUASH??? downgrade build.rs syntax
+ - object-file-convert: always make sure object ID algo is valid
+ - rust: add a small wrapper around the hashfile code
+ - rust: add a new binary loose object map format
+ - rust: add functionality to hash an object
+ - rust: add a build.rs script for tests
+ - hash: expose hash context functions to Rust
+ - write-or-die: add an fsync component for the loose object map
+ - csum-file: define hashwrite's count as a uint32_t
+ - hash: add a function to look up hash algo structs
+ - rust: add a hash algorithm abstraction
+ - rust: add a ObjectID struct
+ - hash: use uint32_t for object_id algorithm
+ - conversion: don't crash when no destination algo
+ - repository: require Rust support for interoperability
+
+ The code to maintain mapping between object names in multiple hash
+ functions is being added, written in Rust.
+
+ Expecting a reroll.
+ source: <20251027004404.2152927-1-sandals@crustytoothpaste.net>
+
+
+* jk/doc-backslash-in-exclude (2025-10-29) 1 commit
+  (merged to 'next' on 2025-10-30 at 29790121d5)
+ + doc: document backslash in gitignore patterns
+
+ The patterns used in the .gitignore files use backslash in the way
+ documented for fnmatch(3); document as such to reduce confusion.
+
+ Will merge to 'master'.
+ source: <20251029153237.GA1133542@coredump.intra.peff.net>
+
+
+* jk/test-delete-gpgsig-leakfix (2025-10-29) 1 commit
+  (merged to 'next' on 2025-10-30 at 097810cb65)
+ + test-tool: fix leak in delete-gpgsig command
+
+ Leakfix.
+
+ Will merge to 'master'.
+ source: <20251029191031.GA1257596@coredump.intra.peff.net>
+
+--------------------------------------------------
+[Cooking]
+
 * qj/doc-my1stcontrib-email-verify (2025-10-27) 1 commit
- - MyFirstContribution: add note on confirming patches
+  (merged to 'next' on 2025-10-29 at 33f961f37a)
+ + MyFirstContribution: add note on confirming patches
 
  The "MyFirstContribution" tutorial tells the reader how to send out
  their patches; the section gained a hint to verify the message
  reached the mailing list.
 
- Will merge to 'next'.
+ Will merge to 'master'.
  source: <20251027111600.1481-1-qjessa662@gmail.com>
 
 
 * xr/ref-debug-remove-on-disk (2025-10-24) 1 commit
- - refs: add missing remove_on_disk implementation for debug backend
+  (merged to 'next' on 2025-10-29 at 316e4afdbf)
+ + refs: add missing remove_on_disk implementation for debug backend
 
  The "debug" ref-backend was missing a method implementation, which
  has been corrected.
 
- Will merge to 'next'.
+ Will merge to 'master'.
  source: <pull.2082.git.git.1761295094982.gitgitgadget@gmail.com>
 
 
 * ad/blame-diff-algorithm (2025-10-28) 1 commit
  - blame: make diff algorithm configurable
 
+ "git blame" learns "--diff-algorithm=<algo>" option.
+
+ Expecting a reroll.
+ cf. <fde3dae1-bb11-45e8-9211-50ae003ca497@gmail.com>
  source: <pull.2075.v2.git.git.1761658643278.gitgitgadget@gmail.com>
 
 
-* cc/fast-import-export-i18n-cleanup (2025-10-28) 5 commits
+* cc/fast-import-export-i18n-cleanup (2025-10-30) 5 commits
  - gpg-interface: mark a string for translation
  - fast-import: mark strings for translation
  - fast-export: mark strings for translation
  - gpg-interface: use left shift to define GPG_VERIFY_*
  - gpg-interface: simplify ssh fingerprint parsing
 
- source: <20251028081232.3068147-1-christian.couder@gmail.com>
+ Messages from fast-import/export are now marked for i18n.
+
+ Will merge to 'next'?
+ source: <20251030123332.3337684-1-christian.couder@gmail.com>
 
 
 * eb/t1016-hash-transition-fix (2025-10-28) 1 commit
- - t1016-compatObjectFormat: really freeze time for reproduciblity
+  (merged to 'next' on 2025-10-30 at b743410ab6)
+ + t1016-compatObjectFormat: really freeze time for reproduciblity
 
+ Test fix.
+
+ Will merge to 'master'.
  source: <87frb310d2.fsf_-_@email.froward.int.ebiederm.org>
 
 
-* ps/packed-git-in-object-store (2025-10-28) 9 commits
+* ps/packed-git-in-object-store (2025-10-30) 9 commits
  - packfile: track packs via the MRU list exclusively
  - packfile: always add packfiles to MRU when adding a pack
  - packfile: move list of packs into the packfile store
@@ -153,12 +318,13 @@ Release tarballs are available at:
  - packfile: move the MRU list into the packfile store
  - packfile: use a `strmap` to store packs by name
  - Merge branch 'ps/remove-packfile-store-get-packs' into ps/packed-git-in-object-store
- (this branch uses ps/remove-packfile-store-get-packs and tb/incremental-midx-part-3.1.)
 
- source: <20251028-pks-packfiles-store-drop-list-v1-0-1a3b82030a7a@pks.im>
+ The list of packfiles used in a running Git process is moved from
+ the object-database layer down to object-store layer.
+
+ Will merge to 'next'?
+ source: <20251030-pks-packfiles-store-drop-list-v2-0-84654f080cc0@pks.im>
 
---------------------------------------------------
-[Cooking]
 
 * tu/credential-install (2025-10-25) 1 commit
   (merged to 'next' on 2025-10-28 at 43589c4832)
@@ -179,7 +345,6 @@ Release tarballs are available at:
  + diff: drop save/restore of color_moved in dry-run mode
  + diff: send external diff output to diff_options.file
  + Merge branch 'ly/diff-name-only-with-diff-from-content' into jk/diff-patch-dry-run-cleanup
- (this branch uses ly/diff-name-only-with-diff-from-content.)
 
  Finishing touches to fixes to the recent regression in "git diff -w
  --quiet" and anything that needs to internally generate patch to
@@ -195,7 +360,7 @@ Release tarballs are available at:
 
  Doc update.
 
Comments?
Will merge to 'next'?
  source: <20251024-b4-pks-rust-cbindgen-v2-0-4b4bd4f18490@pks.im>
 
 
@@ -223,42 +388,6 @@ Release tarballs are available at:
  source: <13529bee-1e02-4c20-9461-6569312bfe4f@web.de>
 
 
-* ey/commit-graph-changed-paths-config (2025-10-17) 1 commit
-  (merged to 'next' on 2025-10-23 at 48fd936ff1)
- + commit-graph: add new config for changed-paths & recommend it in scalar
-
- A new configuration variable commitGraph.changedPaths allows to
- turn "--changed-paths" on by default for "git commit-graph".
-
- Will merge to 'master'.
- source: <pull.1983.v2.git.1760734739642.gitgitgadget@gmail.com>
-
-
-* ob/gpg-interface-cleanup (2025-10-23) 2 commits
-  (merged to 'next' on 2025-10-24 at ce6d041635)
- + gpg-interface: do not use misdesigned strbuf_split*()
- + gpg-interface: do not use misdesigned strbuf_split*()
-
- strbuf_split*() to split a string into multiple strbufs is often a
- wrong API to use.  A few uses of it have been removed by
- simplifying the code.
-
- Will merge to 'master'.
- cf. <CAP8UFD1fousSKKduFAaZrsV9REnOaRDOQYcqB+rTQ0Ys60OWGA@mail.gmail.com>
- source: <cover.1761217100.git.belkid98@gmail.com>
-
-
-* rz/bisect-help-unknown (2025-10-22) 1 commit
-  (merged to 'next' on 2025-10-24 at d0633ab14d)
- + bisect: fix handling of `help` and invalid subcommands
-
- "git bisect" command did not react correctly to "git bisect help"
- and "git bisect unknown", which has been corrected.
-
- Will merge to 'master'.
- source: <pull.2078.git.git.1761122173126.gitgitgadget@gmail.com>
-
-
 * ps/rust-cbindgen (2025-10-24) 6 commits
  - rust: generate bindings via cbindgen
  - meson: rename Rust library target
@@ -271,7 +400,8 @@ Release tarballs are available at:
  Introduce cbindgen in the build framework to help interfacing with
  Rust.
 
- Another dependency in an ecosystem that is not mature yet complicates things a bit too much?
+ More discussion?
+ cf. <20251024-b4-pks-rust-cbindgen-v2-0-4b4bd4f18490@pks.im>
  source: <20251024-b4-pks-rust-cbindgen-v2-0-4b4bd4f18490@pks.im>
 
 
@@ -287,24 +417,12 @@ Release tarballs are available at:
  source: <20251026154036.GA2173430@coredump.intra.peff.net>
 
 
-* kf/log-shortlog-completion-fix (2025-10-20) 1 commit
-  (merged to 'next' on 2025-10-24 at 2300659a0a)
- + completion: complete some 'git log' options
-
- "git shortlog" knows "--committer" and "--author" options, which
- the command line completion (in contrib/) did not handle well,
- which has been corrected.
-
- Will merge to 'master'.
- source: <pull.2073.v2.git.git.1760981577441.gitgitgadget@gmail.com>
-
-
 * kn/refs-optim-cleanup (2025-10-20) 4 commits
  - t/pack-refs-tests: move the 'test_done' to callees
  - refs: rename 'pack_refs_opts' to 'refs_optimize_opts'
  - refs: move to using the '.optimize' functions
  - Merge branch 'ps/ref-peeled-tags' into kn/refs-optim-cleanup
- (this branch uses jt/repo-structure, ps/ref-peeled-tags and tb/incremental-midx-part-3.1.)
+ (this branch uses jt/repo-structure and ps/ref-peeled-tags.)
 
  Code clean-up.
 
@@ -322,32 +440,20 @@ Release tarballs are available at:
  source: <20251026225409.46647-1-lucasseikioshiro@gmail.com>
 
 
-* ly/diff-name-only-with-diff-from-content (2025-10-19) 3 commits
-  (merged to 'next' on 2025-10-24 at 237c19e4e6)
- + diff: stop output garbled message in dry run mode
- + Merge branch 'jc/diff-from-contents-fix' into ly/diff-name-only-with-diff-from-content
- + Merge branch 'jk/diff-from-contents-fix' into ly/diff-name-only-with-diff-from-content
- (this branch is used by jk/diff-patch-dry-run-cleanup.)
-
- Regression fixes for a topic that has already been merged.
-
- Will merge to 'master'.
- source: <20251019163024.18939-1-yldhome2d2@gmail.com>
-
-
 * jt/repo-structure (2025-10-21) 7 commits
- - builtin/repo: add progress meter for structure stats
- - builtin/repo: add keyvalue and nul format for structure stats
- - builtin/repo: add object counts in structure output
- - builtin/repo: introduce structure subcommand
- - ref-filter: export ref_kind_from_refname()
- - ref-filter: allow NULL filter pattern
- - builtin/repo: rename repo_info() to cmd_repo_info()
+  (merged to 'next' on 2025-10-28 at c4d81a2da9)
+ + builtin/repo: add progress meter for structure stats
+ + builtin/repo: add keyvalue and nul format for structure stats
+ + builtin/repo: add object counts in structure output
+ + builtin/repo: introduce structure subcommand
+ + ref-filter: export ref_kind_from_refname()
+ + ref-filter: allow NULL filter pattern
+ + builtin/repo: rename repo_info() to cmd_repo_info()
  (this branch is used by kn/refs-optim-cleanup and ps/ref-peeled-tags.)
 
  "git repo structure", a new command.
 
- Will merge to 'next'.
+ Will merge to 'master'.
  cf. <eesy5qhqzi56qrzv7wlpenxag23l2zykakvpmr6p5rnak6cril@ap3rugp44bcz>
  cf. <aPsLS6lbzG27W-C8@pks.im>
  source: <20251021182601.2687284-1-jltobler@gmail.com>
@@ -368,7 +474,6 @@ Release tarballs are available at:
  + builtin/gc: make `too_many_loose_objects()` reusable without GC config
  + builtin/gc: remove global `repack` variable
  + Merge branch 'tb/incremental-midx-part-3.1' into ps/maintenance-geometric
- (this branch uses tb/incremental-midx-part-3.1.)
 
  "git maintenance" command learns the "geometric" strategy where it
  avoids doing maintenance tasks that rebuilds everything from
@@ -379,7 +484,7 @@ Release tarballs are available at:
  source: <20251027-pks-maintenance-geometric-strategy-v4-0-18049e4a0adf@pks.im>
 
 
-* en/xdiff-cleanup-2 (2025-10-15) 9 commits
+* en/xdiff-cleanup-2 (2025-10-29) 10 commits
  - xdiff: rename rindex -> reference_index
  - xdiff: change rindex from long to size_t in xdfile_t
  - xdiff: make xdfile_t.nreff a size_t instead of long
@@ -389,9 +494,12 @@ Release tarballs are available at:
  - xdiff: use size_t for xrecord_t.size
  - xdiff: make xrecord_t.ptr a uint8_t instead of char
  - xdiff: use ssize_t for dstart/dend, make them last in xdfile_t
+ - doc: define unambiguous type mappings across C and Rust
 
  Code clean-up.
- source: <pull.2070.git.git.1760563101.gitgitgadget@gmail.com>
+
+ Comments?
+ source: <pull.2070.v2.git.git.1761776388.gitgitgadget@gmail.com>
 
 
 * ar/run-command-hook (2025-10-17) 10 commits
@@ -426,17 +534,6 @@ Release tarballs are available at:
  source: <pull.1991.git.1760731558.gitgitgadget@gmail.com>
 
 
-* ps/symlink-symref-deprecation (2025-10-14) 1 commit
-  (merged to 'next' on 2025-10-24 at b37ca35280)
- + refs/files: deprecate writing symrefs as symbolic links
-
- "Symlink symref" has been added to the list of things that will
- disappear at Git 3.0 boundary.
-
- Will merge to 'master'.
- source: <20251015-pks-ref-files-deprecate-symbolic-links-v2-1-0529ba48db41@pks.im>
-
-
 * kh/doc-patch-id-1 (2025-10-13) 2 commits
   (merged to 'next' on 2025-10-26 at e284077116)
  + doc: patch-id: convert to the modern synopsis style
@@ -447,14 +544,15 @@ Release tarballs are available at:
 
 
 * tz/test-prepare-gnupghome (2024-07-03) 2 commits
- - t/lib-gpg: call prepare_gnupghome() in GPG2 prereq
- - t/lib-gpg: add prepare_gnupghome() to create GNUPGHOME dir
+  (merged to 'next' on 2025-10-28 at f612107bf9)
+ + t/lib-gpg: call prepare_gnupghome() in GPG2 prereq
+ + t/lib-gpg: add prepare_gnupghome() to create GNUPGHOME dir
 
  Tests did not set up GNUPGHOME correctly, which is fixed but some
  flaky tests are exposed in t1016, which needs to be addressed
  before this topic can move forward.
 
- Will merge to 'next'.
+ Will merge to 'master'.
  cf. <ZoV8b2RvYxLOotSJ@teonanacatl.net>
  cf. <xmqqbjlump3m.fsf@gitster.g>
  cf. <87frb310d2.fsf_-_@email.froward.int.ebiederm.org>
@@ -478,7 +576,7 @@ Release tarballs are available at:
  - refs: introduce wrapper struct for `each_ref_fn`
  - Merge branch 'jt/repo-structure' into ps/ref-peeled-tags
  - Merge branch 'tb/incremental-midx-part-3.1' into ps/ref-peeled-tags
- (this branch is used by kn/refs-optim-cleanup; uses jt/repo-structure and tb/incremental-midx-part-3.1.)
+ (this branch is used by kn/refs-optim-cleanup; uses jt/repo-structure.)
 
  Some ref backend storage can hold not just the object name of an
  annotated tag, but the object name of the object the tag points at.
@@ -488,24 +586,6 @@ Release tarballs are available at:
  source: <20251023-b4-pks-ref-filter-skip-parsing-objects-v4-0-2be68ce82c9a@pks.im>
 
 
-* ps/remove-packfile-store-get-packs (2025-10-09) 7 commits
-  (merged to 'next' on 2025-10-24 at e2f6fba6fe)
- + packfile: rename `packfile_store_get_all_packs()`
- + packfile: introduce macro to iterate through packs
- + packfile: drop `packfile_store_get_packs()`
- + builtin/grep: simplify how we preload packs
- + builtin/gc: convert to use `packfile_store_get_all_packs()`
- + object-name: convert to use `packfile_store_get_all_packs()`
- + Merge branch 'tb/incremental-midx-part-3.1' into ps/remove-packfile-store-get-packs
- (this branch is used by ps/packed-git-in-object-store; uses tb/incremental-midx-part-3.1.)
-
- Two slightly different ways to get at "all the packfiles" in API
- has been cleaned up.
-
- Will merge to 'master'.
- source: <20251009-pks-packfiles-convert-get-all-v2-0-0d73b87ce711@pks.im>
-
-
 * je/doc-data-model (2025-10-27) 1 commit
  - doc: add an explanation of Git's data model
 
@@ -515,67 +595,6 @@ Release tarballs are available at:
  source: <pull.1981.v4.git.1761593537924.gitgitgadget@gmail.com>
 
 
-* tb/incremental-midx-part-3.1 (2025-10-15) 50 commits
-  (merged to 'next' on 2025-10-22 at e78054f5a0)
- + builtin/repack.c: clean up unused `#include`s
- + repack: move `write_cruft_pack()` out of the builtin
- + repack: move `write_filtered_pack()` out of the builtin
- + repack: move `pack_kept_objects` to `struct pack_objects_args`
- + repack: move `finish_pack_objects_cmd()` out of the builtin
- + builtin/repack.c: pass `write_pack_opts` to `finish_pack_objects_cmd()`
- + repack: extract `write_pack_opts_is_local()`
- + repack: move `find_pack_prefix()` out of the builtin
- + builtin/repack.c: use `write_pack_opts` within `write_cruft_pack()`
- + builtin/repack.c: introduce `struct write_pack_opts`
- + repack: 'write_midx_included_packs' API from the builtin
- + builtin/repack.c: inline packs within `write_midx_included_packs()`
- + builtin/repack.c: pass `repack_write_midx_opts` to `midx_included_packs`
- + builtin/repack.c: inline `remove_redundant_bitmaps()`
- + builtin/repack.c: reorder `remove_redundant_bitmaps()`
- + repack: keep track of MIDX pack names using existing_packs
- + builtin/repack.c: use a string_list for 'midx_pack_names'
- + builtin/repack.c: extract opts struct for 'write_midx_included_packs()'
- + builtin/repack.c: remove ref snapshotting from builtin
- + repack: remove pack_geometry API from the builtin
- + builtin/repack.c: pass 'packdir' to `pack_geometry_remove_redundant()`
- + builtin/repack.c: pass 'pack_kept_objects' to `pack_geometry_init()`
- + builtin/repack.c: rename various pack_geometry functions
- + builtin/repack.c: remove "repack_promisor_objects()" from the builtin
- + builtin/repack.c: pass "packtmp" to `repack_promisor_objects()`
- + repack: remove 'generated_pack' API from the builtin
- + builtin/repack.c: provide pack locations to `generated_pack_install()`
- + builtin/repack.c: pass "packtmp" to `generated_pack_populate()`
- + builtin/repack.c: factor out "generated_pack_install"
- + builtin/repack.c: rename "struct generated_pack_data"
- + repack: remove 'existing_packs' API from the builtin
- + builtin/repack.c: avoid unnecessary numeric casts in existing_packs
- + builtin/repack.c: pass "packdir" when removing packs
- + repack: remove 'remove_redundant_pack' from the builtin
- + builtin/repack.c: rename many 'struct existing_packs' functions
- + repack: remove 'prepare_pack_objects' from the builtin
- + repack: move 'delta_base_offset' to 'struct pack_objects_args'
- + builtin/repack.c: pass both pack_objects args to repack_config
- + repack: introduce new compilation unit
- + builtin/repack.c: avoid using `hash_to_hex()` in pack geometry
- + builtin/repack.c: avoid "the_hash_algo" in `finish_pack_objects_cmd()`
- + builtin/repack: avoid "the_hash_algo" in `repack_promisor_objects()`
- + builtin/repack.c: avoid "the_hash_algo" in `write_oid()`
- + builtin/repack.c: avoid "the_hash_algo" when deleting packs
- + builtin/repack.c: avoid "the_repository" when repacking promisor objects
- + builtin/repack.c: avoid "the_repository" when removing packs
- + builtin/repack.c: avoid "the_repository" when taking a ref snapshot
- + builtin/repack.c: avoid "the_repository" in existing packs API
- + builtin/repack.c: avoid "the_repository" in `cmd_repack()`
- + Merge branch 'ps/packfile-store' into tb/incremental-midx-part-3.1
- (this branch is used by kn/refs-optim-cleanup, ps/maintenance-geometric, ps/packed-git-in-object-store, ps/ref-peeled-tags and ps/remove-packfile-store-get-packs.)
-
- Clean-up "git repack" machinery to prepare for incremental update
- of midx files.
-
- Will merge to 'master'.
- source: <cover.1760567210.git.me@ttaylorr.com>
-
-
 * cc/doc-submitting-patches-with-ai (2025-10-01) 1 commit
   (merged to 'next' on 2025-10-28 at 9b5e0701fa)
  + SubmittingPatches: add section about AI
@@ -620,7 +639,7 @@ Release tarballs are available at:
  source: <a203b35538847f3c9358a5ae26fb4ebea5734cfc.1759420102.git.msuchanek@suse.de>
 
 
-* sa/replay-atomic-ref-updates (2025-10-22) 3 commits
+* sa/replay-atomic-ref-updates (2025-10-28) 3 commits
  - replay: add replay.refAction config option
  - replay: make atomic ref updates the default behavior
  - replay: use die_for_incompatible_opt2() for option validation
@@ -630,9 +649,8 @@ Release tarballs are available at:
  in a transaction by default, instead of emitting where each refs
  should point at and leaving the actual update to another command.
 
- Expecting a (hopefully small and final) reroll.
- cf. <xmqqzf9encl1.fsf@gitster.g>
- source: <20251022185045.29256-1-siddharthasthana31@gmail.com>
+ Reroll exists.
+ source: <20251028214609.10041-1-siddharthasthana31@gmail.com>
 
 
 * ar/submodule-gitdir-tweak (2025-10-06) 5 commits