Subject: Re: What's cooking in git.git (Oct 2025, #06; Fri, 17)

From: Patrick Steinhardt <[email-masked]>
Date: Tue, 21 Oct 2025 07:25:35 +0200

On Mon, Oct 20, 2025 at 02:02:52PM -0700, Junio C Hamano wrote:
> * ar/run-command-hook (2025-10-17) 10 commits
>  - receive-pack: convert receive hooks to hook API
>  - receive-pack: convert update hooks to new API
>  - hooks: allow callers to capture output
>  - run-command: allow capturing of collated output
>  - reference-transaction: use hook API instead of run-command
>  - hook: allow overriding the ungroup option
>  - transport: convert pre-push to hook API
>  - hook: convert 'post-rewrite' hook in sequencer.c to hook API
>  - hook: provide stdin via callback
>  - run-command: add stdin callback for parallelization
> 
>  Use hook API to replace ad-hoc invocation of hook scripts with the
>  run_command() API.
> 
>  Comments?
>  source: <[email-masked]>

I'll make sure tho give the current iteration another review today.

> * cc/fast-import-strip-signed-tags (2025-10-13) 5 commits
>  - 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.
> 
>  Will merge to 'next'?
>  source: <[email-masked]>

Should be ready from my point of view. v2 already addressed all of
my comments, and v3 clarified the documentation in one more case. So I'm
happy with this version.

> * ps/ci-rust (2025-10-14) 8 commits
>  - 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
> 
>  CI improvements to handle the recent Rust integration better.
> 
>  Will merge to 'next'?
>  source: <[email-masked]>

I think it should be ready. The 3rd version only saw a single minor
fixup relative to the 2nd one.

> * ps/remove-packfile-store-get-packs (2025-10-09) 7 commits
>  - 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 uses tb/incremental-midx-part-3.1.)
> 
>  Two slightly different ways to get at "all the packfiles" in API
>  has been cleaned up.
> 
>  Comments?
>  source: <[email-masked]>

I think this series should be ready once the below series is merged
down. v2 addressed all of Taylor's feedback and saw another positive
review by Justin.

> * tb/incremental-midx-part-3.1 (2025-10-15) 50 commits
>  - 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 ps/remove-packfile-store-get-packs.)
> 
>  Clean-up "git repack" machinery to prepare for incremental update
>  of midx files.
> 
>  Will merge to 'next'?
>  source: <[email-masked]>

Yeah, I think this one is ready to go.

Thanks!

Patrick