]> git.ipfire.org Git - thirdparty/git.git/commitdiff
What's cooking (2026/07 #01)
authorJunio C Hamano <gitster@pobox.com>
Wed, 1 Jul 2026 21:30:38 +0000 (14:30 -0700)
committerJunio C Hamano <gitster@pobox.com>
Wed, 1 Jul 2026 21:30:38 +0000 (14:30 -0700)
whats-cooking.txt

index d7be365a6648f94bc626365612d1d3003123f4ea..796789c385e45f7acdffcb52ad83b7103c781282 100644 (file)
@@ -1,23 +1,31 @@
 To: git@vger.kernel.org
-Subject: What's cooking in git.git (Jun 2026, #11)
+Subject: What's cooking in git.git (Jul 2026, #01)
 X-master-at: e9019fcafe0040228b8631c30f97ae1adb61bcdc
 X-next-at: 602f6c329a7d99df269d382df353b4e1bbbbd8aa
 Bcc: lwn@lwn.net, gitster@pobox.com
 
-What's cooking in git.git (Jun 2026, #11)
+What's cooking in git.git (Jul 2026, #01)
 -----------------------------------------
 
 Here are the topics that have been cooking in my tree.  Commits
 prefixed with '+' are in 'next' (being in 'next' is a sign that a
 topic is stable enough to be used and is a candidate to be in a
 future release).  Commits prefixed with '-' are only in 'seen', and
-aren't considered "accepted" at all and may be annotated with a URL
+aren't considered "accepted" at all. They may be annotated with a URL
 to a message that raises issues but they are by no means exhaustive.
 A topic without enough support may be discarded after a long period
-of no activity (of course they can be resubmitted when new interests
-arise).
-
-Git 2.55 (final) has been tagged, with a few last-minute fixes.
+of no activity (of course, it can be resubmitted when new interest
+arises).
+
+Git 2.55 (final) has been tagged.  The next release is tentatively
+called Git 2.56.  This week is the 0th week of the cycle, which is
+time to see if there are any brown paper bag breakages and
+regressions we need to fix.  Next week, I plan to start merging the
+topics that have been cooking in 'next' down to 'master'.  It has
+been customary to rewind 'next' and rebuild it on top of 'master'
+soon after a major release, but IIRC, we didn't do so in Git 2.55;
+perhaps we can do without rebuilding it this cycle as well.  We'll
+see.
 
 Copies of the source code to Git live in many repositories, and the
 following is a list of the ones I push into or their mirrors.  Some
@@ -50,84 +58,167 @@ Release tarballs are available at:
 --------------------------------------------------
 [New Topics]
 
-* tb/repack-geometric-cruft (2026-06-28) 11 commits
- - SQUASH??? bare grep !???
- - repack: support combining '--geometric' with '--cruft'
- - pack-objects: support '--refs-snapshot' with 'follow-reachable'
- - pack-objects: introduce '--stdin-packs=follow-reachable'
- - pack-objects: extract `stdin_packs_add_all_pack_entries()`
- - repack-geometry: drop unused redundant-pack removal
- - repack: delete geometric packs via existing_packs
- - repack: teach MIDX retention about geometric rollups
- - repack: mark geometric progression of packs as retained
- - repack: extract `locate_existing_pack()` helper
- - repack: unconditionally exclude non-kept packs
+* kk/commit-reach-find-all-fix (2026-06-29) 2 commits
+ - commit-reach: guard !FIND_ALL early exit with generation ordering check
+ - t6600: add test for merge-base early exit with clock skew
 
- Teach `git repack` to accept `--geometric` and `--cruft`
together. When both are given, the geometric repack rolls up non-cruft
- packs as usual, while a separate cruft pack is written to collect
unreachable objects.
+ The early-exit optimization in paint_down_to_common() has been gated
on the queue being generation-ordered. This fixes a bug where git
+ merge-base (without --all) could return incorrect results on
repositories with v1 commit graphs and clock skew.
 
- Needs review.
- cf. <xmqqpl1d56dd.fsf@gitster.g>
- source: <cover.1782500507.git.me@ttaylorr.com>
+ Comments?
+ cf. <xmqqa4sdw55v.fsf@gitster.g>
+ source: <pull.2162.git.1782739162.gitgitgadget@gmail.com>
 
 
-* jk/reftable-leakfix (2026-06-28) 1 commit
- - reftable: fix unlikely leak on API error
+* bl/t7412-use-test-path-helpers (2026-06-29) 1 commit
+ - submodule absorbgitdirs tests: use test_* helper functions
 
- Leakfix.
+ t7412 that tests "git submodule absorbgitdirs" has been modernized to
+ use test_path_is_file, test_path_is_dir, and test_path_is_missing
+ helper functions instead of raw "test -[fde]" commands.
 
- Will merge to 'next'?
- cf. <akIPBJLtPqDjQt-A@pks.im>
- source: <20260628090314.GA661068@coredump.intra.peff.net>
+ Waiting for response(s) to review comment(s).
+ cf. <akTKHfKPsP3-Rn31@pks.im>
+ source: <20260630020220.1559190-1-bblima@usp.br>
 
 
-* sg/t3420-do-not-grep-in-missing-file (2021-10-10) 1 commit
 (merged to 'next' on 2026-06-29 at 2bf33c6a40)
- + t3420-rebase-autostash: don't try to grep non-existing files
+* jk/format-patch-leakfix (2026-06-29) 2 commits
- format-patch: fix leak of rev_info in prepare_bases()
+ - t: move LSan errors from stdout to stderr
 
- Test fix.
+ A memory leak in the '--base' handling of 'git format-patch' has been
+ plugged, and the leak-reporting of the test suite when running under a
+ TAP harness has been improved.
 
- Will merge to 'master'.
- source: <20211010172809.1472914-1-szeder.dev@gmail.com>
+ Will merge to 'next'?
+ cf. <akOZy-BygZS8fqPM@pks.im>
+ source: <20260630063944.GA3733670@coredump.intra.peff.net>
+
+
+* ps/setup-split-discovery-and-setup (2026-06-30) 16 commits
+ - setup: mark `set_git_work_tree()` as file-local
+ - setup: pass worktree to `init_db()`
+ - setup: drop redundant configuration of `startup_info->have_repository`
+ - setup: make repository discovery self-contained
+ - setup: propagate prefix via repository discovery
+ - setup: drop static `cwd` variable
+ - setup: move prefix into repository
+ - setup: embed repository format in discovery
+ - setup: introduce explicit repository discovery
+ - setup: split up concerns of `setup_git_env_internal()`
+ - setup: unify setup of shallow file
+ - setup: mark bogus worktree in `apply_repository_format()`
+ - setup: rename `check_repository_format_gently()`
+ - Merge branch 'jk/repo-info-path-keys' into ps/setup-split-discovery-and-setup
+ - Merge branch 'ps/setup-drop-global-state' into ps/setup-split-discovery-and-setup
+ - Merge branch 'ps/refs-onbranch-fixes' into ps/setup-split-discovery-and-setup
+ (this branch uses jk/repo-info-path-keys, ps/refs-onbranch-fixes and ps/setup-drop-global-state.)
+
+ The repository discovery and repository configuration phases, which
+ were previously intertwined in 'setup.c', have been split. Repository
+ discovery now populates a 'struct repo_discovery' without modifying
+ the repository state, and repository configuration takes this
+ structure to initialize the repository, paving the way for clean
+ unification of repository configuration.
 
---------------------------------------------------
-[Graduated to 'master']
+ Needs review.
+ source: <20260630-pks-setup-split-discovery-and-setup-v1-0-13864eb5a032@pks.im>
+
+
+* pw/rebase-drop-notes-with-commit (2026-06-30) 15 commits
+ - amend! sequencer: simplify pick_one_commit()
+ - amend! sequencer: remove unnecessary "or" in pick_one_commit()
+ - fixup! sequencer: never reschedule on failed commit
+ - fixup! sequencer: be more careful with external merge
+ - sequencer: do not record dropped commits as rewritten
+ - sequencer: use an enum to represent result of picking a commit
+ - sequencer: return early from pick_one_commit() on success
+ - sequencer: simplify pick_one_commit()
+ - sequencer: remove unnecessary condition in pick_one_commit()
+ - sequencer: simplify handing of fixup with conflicts
+ - sequencer: remove unnecessary "or" in pick_one_commit()
+ - sequencer: never reschedule on failed commit
+ - sequencer: be more careful with external merge
+ - sequencer: move definition of is_final_fixup()
+ - t3400: restore coverage for note copying with apply backend
+
+ The rebase post-rewrite notes-copying logic has been corrected. When a
+ commit is dropped during rebase (e.g., because its changes are already
+ upstream), we no longer record it as rewritten, preventing its notes
+ from being copied to an unrelated commit.
 
-* jk/t5551-expensive-test-timeouts-fix (2026-06-28) 2 commits
- - t5551: put many-tags case into its own repo
- - t/lib-httpd: bump apache timeout
+ Expecting a reroll.
+ cf. <dce74d17-eefd-40bb-82f3-f6b3179cc2b6@gmail.com>
+ source: <cover.1782833268.git.phillip.wood@dunelm.org.uk>
 
- The Apache timeout in HTTP tests has been increased to prevent test
- failures on heavily loaded CI runners. The tests creating an
- enormous number of refs have been isolated to their own
- repositories to avoid slowing down subsequent tests.
-  cf. <akIPBJLtPqDjQt-A@pks.im>
- source: <20260628075716.GA3525066@coredump.intra.peff.net>
 
+* jk/bloom-leak-fixes (2026-06-30) 3 commits
+ - line-log: drop extra copy of range with bloom filters
+ - revision: avoid leaking bloom keyvecs with multiple traversals
+ - bloom: make bloom-filter slab initialization idempotent
 
-* js/http-https-proxy-fix (2026-06-27) 1 commit
-  (merged to 'next' on 2026-06-28 at a7fdf2ec97)
- + http: accept https:// proxies again
+ Plug various memory leaks in the Bloom-filter code paths that are
+ exposed when running tests with the
+ `GIT_TEST_COMMIT_GRAPH_CHANGED_PATHS=1` environment variable.
 
- We lost ability to use https:// proxies during this cycle; this is
- a hotfix for the regression.
- source: <pull.2161.git.1782580676734.gitgitgadget@gmail.com>
+ Will merge to 'next'?
+ cf. <xmqqo6gqobrt.fsf@gitster.g>
+ source: <20260701063538.GA2579765@coredump.intra.peff.net>
 
 
-* ps/t4216-tap-fix (2026-06-19) 1 commit
-  (merged to 'next' on 2026-06-25 at 42296fc12e)
- + t4216: fix no-op test that breaks TAP output
+* js/ci-dockerized-pid-limit (2026-07-01) 1 commit
+ - ci(dockerized): reduce the PID limit for private repositories
 
- TAP output breakage fix.
- cf. <xmqq8q82fk8r.fsf@gitster.g>
- source: <20260619-pks-t4216-drop-unused-prereq-v1-1-2ce0d7bea088@pks.im>
+ Dockerized CI jobs running in private GitHub repositories have been
+ adjusted to use explicit process and file limits, preventing resource
+ exhaustion errors on private runners.
+
+ Waiting for response(s) to review comment(s).
+ cf. <xmqq5x2yps4c.fsf@gitster.g>
+ source: <pull.2164.git.1782889484346.gitgitgadget@gmail.com>
+
+
+* js/coverity-fixes (2026-07-01) 13 commits
+ - mingw: make exit_process() own the process handle on all paths
+ - fsmonitor: plug token-data leak on early daemon-startup failures
+ - reftable/table: release filter on error path
+ - imap-send: avoid leaking the IMAP upload buffer
+ - worktree: fix resource leaks when branch creation fails
+ - submodule: fix cwd leak in get_superproject_working_tree()
+ - dir: free allocations on parse-error paths in read_one_dir()
+ - line-log: avoid redundant copy that leaks in process_ranges
+ - run_diff_files: avoid memory leak
+ - run-command: avoid close(-1) in start_command() error paths
+ - download_https_uri_to_file(): do not leak fd upon failure
+ - loose: avoid closing invalid fd on error path
+ - load_one_loose_object_map(): fix resource leak
+
+ A collection of fixes for various resource leaks, invalid file
+ descriptor closures, and process handle ownership issues flagged by
+ Coverity.
+
+ Waiting for response(s) to review comment(s).
+ cf. <akTIMM6qLfDNdg-a@pks.im>
+ source: <pull.2163.git.1782889472.gitgitgadget@gmail.com>
 
 --------------------------------------------------
 [Stalled]
 
+* ap/http-redirect-wwwauth-fix (2026-06-02) 1 commit
+ - http: preserve wwwauth_headers across redirects
+
+ When cURL follows a redirect, the WWW-Authenticate headers from the
+ redirect target were lost because credential_from_url() cleared the
+ credential state. This has been fixed by preserving the collected
+ headers across the redirect update.
+
+ Expecting a reroll for too long, stalled.
+ cf. <5144a29d-a53f-4446-beff-e1f549345bf9@nvidia.com>
+ source: <20260602161150.1527493-1-aplattner@nvidia.com>
+
+
 * jt/config-lock-timeout (2026-05-17) 1 commit
  - config: retry acquiring config.lock, configurable via core.configLockTimeout
 
@@ -177,6 +268,49 @@ Release tarballs are available at:
 --------------------------------------------------
 [Cooking]
 
+* tb/repack-geometric-cruft (2026-06-28) 11 commits
+ - SQUASH??? bare grep !???
+ - repack: support combining '--geometric' with '--cruft'
+ - pack-objects: support '--refs-snapshot' with 'follow-reachable'
+ - pack-objects: introduce '--stdin-packs=follow-reachable'
+ - pack-objects: extract `stdin_packs_add_all_pack_entries()`
+ - repack-geometry: drop unused redundant-pack removal
+ - repack: delete geometric packs via existing_packs
+ - repack: teach MIDX retention about geometric rollups
+ - repack: mark geometric progression of packs as retained
+ - repack: extract `locate_existing_pack()` helper
+ - repack: unconditionally exclude non-kept packs
+
+ Teach `git repack` to accept `--geometric` and `--cruft`
+ together. When both are given, the geometric repack rolls up non-cruft
+ packs as usual, while a separate cruft pack is written to collect
+ unreachable objects.
+
+ Expecting a reroll.
+ cf. <akTIMM6qLfDNdg-a@pks.im>
+ source: <cover.1782500507.git.me@ttaylorr.com>
+
+
+* jk/reftable-leakfix (2026-06-28) 1 commit
+ - reftable: fix unlikely leak on API error
+
+ Leakfix.
+
+ Will merge to 'next'.
+ cf. <akIPBJLtPqDjQt-A@pks.im>
+ source: <20260628090314.GA661068@coredump.intra.peff.net>
+
+
+* sg/t3420-do-not-grep-in-missing-file (2021-10-10) 1 commit
+  (merged to 'next' on 2026-06-29 at 2bf33c6a40)
+ + t3420-rebase-autostash: don't try to grep non-existing files
+
+ Test fix.
+
+ Will merge to 'master'.
+ source: <20211010172809.1472914-1-szeder.dev@gmail.com>
+
+
 * ad/gpg-strip-cr-before-lf (2026-06-24) 1 commit
  - gpg-interface: fix strip_cr_before_lf to only remove CR before LF
 
@@ -184,7 +318,7 @@ Release tarballs are available at:
  carriage return characters only when they immediately precede line
  feeds, instead of unconditionally stripping all carriage returns.
 
Needs review.
Will merge to 'next'.
  source: <20260624093618.17456-1-antonio.destefani08@gmail.com>
 
 
@@ -200,8 +334,10 @@ Release tarballs are available at:
  interfaces instead of directly managing tmp_objdir for staging
  incoming objects, bringing it closer to being ODB backend agnostic.
 
Waiting for response(s) to review comment(s).
Expecting a reroll.
  cf. <aju_AmlKVi5UZaiQ@pks.im>
+ cf. <akK05yZ6843K8Vdd@denethor>
+ cf. <akLLB_J-pvJ7iR7c@denethor>
  source: <20260624041920.2601961-1-jltobler@gmail.com>
 
 
@@ -219,7 +355,9 @@ Release tarballs are available at:
  refactoring backend-specific object information retrieval into an
  opt-in struct object_info_source structure.
 
- Needs review.
+ Will merge to 'next'?
+ cf. <akOod6X1a2axIXKZ@pks.im>
+ cf. <xmqqv7b0rmt6.fsf@gitster.g>
  source: <20260624-b4-pks-odb-drop-whence-v1-0-8d1877b790ac@pks.im>
 
 
@@ -252,7 +390,7 @@ Release tarballs are available at:
  "git push origin/main" and "git branch origin main" could both be
  an obvious typo, in which case offer the obvious typofix.
 
- Will merge to 'next'?
+ Will merge to 'next'.
  cf. <xmqqfr272lq7.fsf@gitster.g>
  source: <pull.2331.v3.git.git.1782583345.gitgitgadget@gmail.com>
 
@@ -262,39 +400,39 @@ Release tarballs are available at:
 
  Code clean-up with leakfix for a write file stream.
 
- Needs review.
+ Will merge to 'next'?
+ cf. <akO1mhi2u2PntLbt@pks.im>
  source: <xmqqmrwdxrat.fsf@gitster.g>
 
 
-* ty/migrate-excludes-file (2026-06-27) 1 commit
+* ty/migrate-excludes-file (2026-06-30) 1 commit
  - environment: move excludes_file into repo_config_values
 
  Move excludes_file global variable into per-repository structure.
 
- Waiting for response(s) to review comment(s).
- cf. <xmqqbjcv2h3j.fsf@gitster.g>
- cf. <CAP8UFD3Z0M_1NEXGcAxNZKpRUQiSkHZLTEvNNYushKA_PoPgjA@mail.gmail.com>
- source: <20260627160813.1074201-2-cat@malon.dev>
+ Needs review.
+ source: <20260630164401.2906091-2-cat@malon.dev>
 
 
-* kk/merge-base-exhaustion (2026-06-28) 8 commits
- - commit-reach: move min_generation check into paint_queue_get()
- - commit-reach: terminate merge-base walk when one paint side is exhausted
- - commit-reach: remove unused nonstale_queue dedup wrappers
- - commit-reach: introduce struct paint_state with per-side counters
- - commit-reach: add trace2 instrumentation to paint_down_to_common()
- - t6099, t6600: add side-exhaustion regression tests
- - t6600: add test cases for side-exhaustion edge cases
- - Documentation/technical: add paint-down-to-common doc
+* kk/merge-base-exhaustion (2026-07-01) 10 commits
+ . commit-reach: remove commit-date ordering fallback
+ . commit-reach: move min_generation check into paint_queue_get()
+ . commit-reach: terminate merge-base walk when one paint side is exhausted
+ . commit-reach: introduce struct paint_state with per-side counters
+ . t6600: add clock-skew topologies and step counts for edge cases
+ . commit-reach: add trace2 instrumentation to paint_down_to_common()
+ . t6099, t6600: add side-exhaustion regression tests
+ . t6600: add test cases for side-exhaustion edge cases
+ . test-lib-functions: improve diagnostic output for trace2 data assertions
+ . Documentation/technical: add paint-down-to-common doc
 
  The merge-base computation has been optimized by stopping the walk
  early when one side's exclusive commits in the queue are exhausted,
  yielding significant speedups for queries with one-sided histories.
 
- Expecting a reroll.
- cf. <48bfdb11-2624-4aa6-8fbd-d3f894c33bcc@gmail.com>
- cf. <CAL71e4N92t8170UBW3rMA6B-rEUeOm-R_HSioB957mUKOpwRyQ@mail.gmail.com>
- source: <pull.2149.v4.git.1782649547.gitgitgadget@gmail.com>
+ Needs review.
+ passes t6600 standalone, breaks when merged to 'seen'.
+ source: <pull.2149.v5.git.1782923832.gitgitgadget@gmail.com>
 
 
 * dk/meson-enable-use-nsec-build (2026-06-20) 1 commit
@@ -328,8 +466,7 @@ Release tarballs are available at:
  source: <20260625-pks-connected-generic-promisor-checks-v3-0-7308f3b9dc44@pks.im>
 
 
-* ps/libgit-in-subdir (2026-06-26) 4 commits
- - fixup??? Move libgit.a sources into separate "lib/" directory
+* ps/libgit-in-subdir (2026-06-30) 3 commits
  - Move libgit.a sources into separate "lib/" directory
  - t/helper: prepare "test-example-tap.c" for introduction of "lib/"
  - Merge branch 'ps/odb-source-packed' into ps/libgit-in-subdir
@@ -340,10 +477,8 @@ Release tarballs are available at:
  library code.
 
  Waiting for response(s) to review comment(s).
- cf. <32bb1cf6-1e37-dc0c-dfb2-e78a30763342@gmx.de>
- cf. <xmqqwlvl6sr5.fsf@gitster.g>
- cf. <aj9wcFEb6oCRnfn2@szeder.dev>
- source: <20260622-pks-libgit-in-subdir-v2-0-cb946c51ee7b@pks.im>
+ cf. <cbbb08fc-fd4d-45ef-927b-05ac44602ff1@gmail.com>
+ source: <20260701-pks-libgit-in-subdir-v3-0-5e4860056094@pks.im>
 
 
 * ps/odb-generalize-prepare (2026-06-22) 3 commits
@@ -357,8 +492,8 @@ Release tarballs are available at:
  flag, and a new `odb_prepare()` wrapper has been introduced to
  allow pre-opening object database sources.
 
- Waiting for response(s) to review comment(s).
- cf. <87ldc14i4n.fsf@emacs.iotcl.com>
+ Will merge to 'next'?
+ cf. <87ik704f1j.fsf@emacs.iotcl.com>
  source: <20260622-b4-pks-odb-generalize-prepare-v1-0-d2a5c5d13144@pks.im>
 
 
@@ -371,7 +506,7 @@ Release tarballs are available at:
  and how the resolution of such critiques should be recorded in the
  final commit messages.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <ajjwYGWZ6hQWr600@pks.im>
  source: <xmqqeci0g4mz.fsf@gitster.g>
 
@@ -433,6 +568,7 @@ Release tarballs are available at:
  Waiting for response(s) to review comment(s).
  cf. <xmqqse65zyhw.fsf@gitster.g>
  cf. <akIQLM6xZTHBudWT@pks.im>
+ cf. <3b3af3ef-a043-4af9-964e-429237789c97@gmail.com>
  source: <pull.2337.v6.git.git.1782635349.gitgitgadget@gmail.com>
 
 
@@ -451,12 +587,12 @@ Release tarballs are available at:
  provide a default for the per-remote `remote.<name>.followRemoteHEAD`
  setting.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <xmqqcxxp1j2t.fsf@gitster.g>
  source: <20260619094751.2996804-1-m@lfurio.us>
 
 
-* ps/refs-writing-subcommands (2026-06-17) 5 commits
+* ps/refs-writing-subcommands (2026-06-30) 5 commits
  - builtin/refs: add "rename" subcommand
  - builtin/refs: add "create" subcommand
  - builtin/refs: add "update" subcommand
@@ -467,8 +603,9 @@ Release tarballs are available at:
  "update", and "rename" subcommands to create, delete, update, and
  rename references, respectively.
 
- Needs review.
- source: <20260617-pks-refs-writing-subcommands-v2-0-07f3d18336f9@pks.im>
+ Will merge to 'next'?
+ cf. <xmqqcxx7susi.fsf@gitster.g>
+ source: <20260630-pks-refs-writing-subcommands-v3-0-deb04de1ecef@pks.im>
 
 
 * po/hash-object-size-t (2026-06-16) 6 commits
@@ -484,7 +621,7 @@ Release tarballs are available at:
  and other LLP64 platforms has been improved by converting object header
  buffers and data-handling functions from 'unsigned long' to 'size_t'.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <ajOQthRjhD3hRM9w@pks.im>
  source: <pull.2138.v2.git.1781621398.gitgitgadget@gmail.com>
 
@@ -500,7 +637,7 @@ Release tarballs are available at:
  The trailer sections in SubmittingPatches have been updated to
  encourage use of standard trailers.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <xmqq4ij0vo8f.fsf@gitster.g>
  source: <V3_CV_SubPatches_trailers.9ec@msgid.xyz>
 
@@ -513,7 +650,7 @@ Release tarballs are available at:
  which the path being tracked gets renamed differently in multiple
  history lines, better.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  source: <ajjU4w2B0NlZffw1@collabora.com>
 
 
@@ -554,6 +691,7 @@ Release tarballs are available at:
 
  Waiting for response(s) to review comment(s).
  cf. <aj93BE8MYatQAjoy@szeder.dev>
+ cf. <xmqqqzlpt543.fsf@gitster.g>
  source: <pull.2135.v2.git.1781323575.gitgitgadget@gmail.com>
 
 
@@ -561,7 +699,7 @@ Release tarballs are available at:
   (merged to 'next' on 2026-06-17 at 43ed8b3969)
  + cat-file: speed up default format
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <20260615165326.GA91269@coredump.intra.peff.net>
  source: <5a7ed929-6fe0-496c-83bd-65dee57c2241@web.de>
 
@@ -575,8 +713,8 @@ Release tarballs are available at:
  into prio_queue itself, speeding up commit traversal workflows and
  simplifying callers.
 
- On hold, waiting for kk/prio-queue-get-put-fusion to land first.
- cf. <CAL71e4MYNiScZjTwkApjDAjRh2LM0_SP59h5HCTywV-Pua03tw@mail.gmail.com>
+ Will merge to 'next'?
+ cf. <xmqqh5mjrbgq.fsf@gitster.g>
  source: <pull.2140.v4.git.1780945851.gitgitgadget@gmail.com>
 
 
@@ -591,7 +729,8 @@ Release tarballs are available at:
  connectivity checks across many candidate refs with shared
  history.
 
- Needs review.
+ Comments?
+ cf. <xmqqqzlpulkp.fsf@gitster.g>
  source: <20260612-ref-filter-memoized-contains-v4-0-5ed39fd001dd@gmail.com>
 
 
@@ -608,6 +747,7 @@ Release tarballs are available at:
  cf. <xmqq5x358byf.fsf@gitster.g>
  cf. <b5d70a0b-ef32-49c9-84ba-8a64b7809574@gmail.com>
  cf. <f8b520d1-edeb-9e45-c503-025c8b5833c3@gmx.de>
+ cf. <akOpOXeD_gS5U7rH@pks.im>
  source: <20260626-toon-git-replay-drop-merges-v5-0-5e120738b9d0@iotcl.com>
 
 
@@ -621,13 +761,14 @@ Release tarballs are available at:
  + builtin/init: simplify logic to configure worktree
  + builtin/init: stop modifying global `git_work_tree_cfg` variable
  + Merge branch 'ps/setup-centralize-odb-creation' into ps/setup-drop-global-state
+ (this branch is used by ps/setup-split-discovery-and-setup.)
 
  Continuation of "setup.c" refactoring to drop remaining global state
  (`git_work_tree_cfg`, `is_bare_repository_cfg`). The most notable
  outcome is that `is_bare_repository()` has been updated to no longer
  implicitly rely on `the_repository`.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <airVOrTboNDDGBak@denethor>
  cf. <87ldckyygk.fsf@emacs.iotcl.com>
  source: <20260611-b4-pks-setup-drop-global-state-v2-0-a6f7269c841d@pks.im>
@@ -647,6 +788,7 @@ Release tarballs are available at:
  + setup: stop applying repository format twice
  + setup: inline `check_and_apply_repository_format()`
  + Merge branch 'ps/setup-centralize-odb-creation' into ps/refs-onbranch-fixes
+ (this branch is used by ps/setup-split-discovery-and-setup.)
 
  Reference backend configuration is now loaded lazily to avoid
  recursive calls during repository initialization when "onbranch"
@@ -684,7 +826,7 @@ Release tarballs are available at:
  The packed object source has been refactored into a proper struct
  odb_source.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <ajK2QKdW-TdflfR0@denethor>
  source: <20260617-pks-odb-source-packed-v3-0-b5c7583cd795@pks.im>
 
@@ -698,7 +840,7 @@ Release tarballs are available at:
  their ref iterator, avoiding a loose-ref scaling regression in
  repositories with many unrelated loose references.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <xmqqik7fsv2m.fsf@gitster.g>
  source: <20260612-fix-git-branch-regression-v4-1-f150038c02f4@gmail.com>
 
@@ -713,26 +855,26 @@ Release tarballs are available at:
  been migrated into struct repo_config_values to tie them to
  per-repository configuration state.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <CAP8UFD35Tiy1_fqpjq8P-z=ZhzR3MTiThqfCs977652umRoSEQ@mail.gmail.com>
  cf. <xmqqse6uwdnz.fsf@gitster.g>
  source: <20260610124353.149874-2-cat@malon.dev>
  source: <20260620140957.667820-1-cat@malon.dev>
 
 
-* ps/cat-file-remote-object-info (2026-06-25) 13 commits
+* ps/cat-file-remote-object-info (2026-07-01) 13 commits
  - cat-file: make remote-object-info allow-list dynamic
- - cat-file: validate remote atoms with allow_list
+ - cat-file: validate remote atoms with an allow-list
  - cat-file: add remote-object-info to batch-command
  - transport: add client support for object-info
  - serve: advertise object-info feature
  - fetch-pack: move fetch initialization
- - connect: refactor packet writing
- - fetch-pack: move function to connect.c
- - fetch-pack: prepare function to be moved
- - t1006: split test utility functions into new "lib-cat-file.sh"
+ - connect: make `write_fetch_command_and_capabilities()` more generic
+ - fetch-pack: move `write_fetch_command_and_capabilities()` to connect.c
+ - fetch-pack: drop static `advertise_sid` variable
+ - t1006: split test utility functions into new 'lib-cat-file.sh'
  - cat-file: declare loop counter inside for()
- - git-compat-util: add strtoul_szt() with error handling
+ - git-compat-util: add `strtoumax_szt()` with error handling
  - transport-helper: fix memory leak of helper on disconnect
 
  The `remote-object-info` command has been added to `git cat-file
@@ -745,21 +887,8 @@ Release tarballs are available at:
  inapplicable or unsupported fields.
 
  Waiting for response(s) to review comment(s).
- cf. <CAOLa=ZScS3Gmm5BAgJF69phpaDXGnP_j9jx+bMhn_tfF65RXEg@mail.gmail.com>
- source: <20260625-ps-eric-work-rebase-v14-0-09f7ffe21a53@gmail.com>
-
-
-* ap/http-redirect-wwwauth-fix (2026-06-02) 1 commit
- - http: preserve wwwauth_headers across redirects
-
- When cURL follows a redirect, the WWW-Authenticate headers from the
- redirect target were lost because credential_from_url() cleared the
- credential state. This has been fixed by preserving the collected
- headers across the redirect update.
-
- Expecting a reroll.
- cf. <5144a29d-a53f-4446-beff-e1f549345bf9@nvidia.com>
- source: <20260602161150.1527493-1-aplattner@nvidia.com>
+ cf. <xmqq7bneo9mh.fsf@gitster.g>
+ source: <20260701-ps-eric-work-rebase-v15-0-c88a43b63917@gmail.com>
 
 
 * ps/doc-recommend-b4 (2026-06-15) 3 commits
@@ -772,7 +901,7 @@ Release tarballs are available at:
  documentation has been updated to recommend using it as a
  streamlined method for submitting patches.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <87eci7yomp.fsf@emacs.iotcl.com>
  source: <20260615-pks-b4-v4-0-22cfca8f19c5@pks.im>
 
@@ -823,7 +952,7 @@ Release tarballs are available at:
  faster packaging by falling back to path-walk when bitmaps cannot
  fully satisfy the request.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <xmqqwlvq1qyy.fsf@gitster.g>
  source: <cover.1782082975.git.me@ttaylorr.com>
 
@@ -837,7 +966,8 @@ Release tarballs are available at:
  configuration) has been migrated into 'repo_config_values' to tie it
  to a specific repository instance.
 
- Needs review.
+ Comments?
+ cf. <xmqqcxx9ukvw.fsf@gitster.g>
  source: <20260619162105.648495-1-cat@malon.dev>
 
 
@@ -859,6 +989,7 @@ Release tarballs are available at:
  + repo: add path.gitdir with absolute and relative suffix formatting
  + repo: add path.commondir with absolute and relative suffix formatting
  + path: extract format_path() and use in rev-parse
+ (this branch is used by ps/setup-split-discovery-and-setup.)
 
  The "git repo info" command has been taught new keys to output both
  absolute and relative paths for "gitdir" and "commondir", supported by
@@ -869,7 +1000,7 @@ Release tarballs are available at:
  source: <20260624033748.108281-1-jayatheerthkulkarni2005@gmail.com>
 
 
-* ps/history-drop (2026-06-29) 11 commits
+* ps/history-drop (2026-07-01) 11 commits
  - builtin/history: implement "drop" subcommand
  - builtin/history: split handling of ref updates into two phases
  - replay: expose `replay_result_queue_update()`
@@ -887,7 +1018,7 @@ Release tarballs are available at:
  parent.
 
  Needs review.
- source: <20260629-b4-pks-history-drop-v7-0-6e9392a957d8@pks.im>
+ source: <20260701-b4-pks-history-drop-v8-0-19b5cdf1facd@pks.im>
 
 
 * jk/setup-gitfile-diag-fix (2026-06-16) 1 commit
@@ -898,7 +1029,7 @@ Release tarballs are available at:
  been fixed, avoiding a potential NULL-pointer crash when reporting
  that a .git file does not point to a valid repository.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <xmqqjyry4hax.fsf@gitster.g>
  source: <20260616123516.GA2301231@coredump.intra.peff.net>
 
@@ -931,8 +1062,7 @@ Release tarballs are available at:
  the path with a dot, matching standard shell-completion behavior.
 
  Waiting for response(s) to review comment(s).
- cf. <xmqq1pe0g08t.fsf@gitster.g>
- cf. <xmqqbjd37i4y.fsf@gitster.g>
+ cf. <xmqqik71t3nr.fsf@gitster.g>
  source: <pull.2311.v3.git.git.1781978156.gitgitgadget@gmail.com>
 
 
@@ -968,7 +1098,7 @@ Release tarballs are available at:
  diverged from its push branch has been updated to suggest "git pull
  <remote> <branch>".
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <xmqq7bo6xuok.fsf@gitster.g>
  source: <pull.2301.v4.git.git.1779372367317.gitgitgadget@gmail.com>
 
@@ -1006,7 +1136,7 @@ Release tarballs are available at:
  remotes via the promisor.acceptFromServerURL configuration
  variable.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <877bo7294j.fsf@emacs.iotcl.com>
  cf. <xmqqh5naxwfc.fsf@gitster.g>
  source: <20260527140820.1438165-1-christian.couder@gmail.com>
@@ -1036,7 +1166,7 @@ Release tarballs are available at:
  "ort" merge backend handles merging corrupt trees better by
  aborting when it should.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  cf. <xmqq5x3ldu4h.fsf@gitster.g>
  source: <pull.2096.v2.git.1781419047.gitgitgadget@gmail.com>
 
@@ -1050,7 +1180,7 @@ Release tarballs are available at:
  improved to correctly abbreviate object IDs for more commands and
  avoid misinterpreting refs as object IDs.
 
- Will cook in 'next'.
+ Will merge to 'master'.
  source: <cover.1782230024.git.phillip.wood@dunelm.org.uk>
 
 
@@ -1065,8 +1195,9 @@ Release tarballs are available at:
  appearing falsely related to unrelated commits rendered immediately
  above them.
 
Waiting for response(s) to review comment(s).
Expecting a reroll.
  The peek-ahead approach may need to be scratched.
  cf. <CAN5EUNSj-2hkEBF7N_M6RLsuujDNFNUF3w53zR7SN1_5i2BRyg@mail.gmail.com>
  cf. <CAL71e4OQ_kGb+UwHgikHG236-8BVtc7P9OdpV4i4UzYRCoPczw@mail.gmail.com>
+ cf. <CAN5EUNTQV68_eofa7BGb0BukMe=U2d4-FEVmJwW4dObQ2r6LuA@mail.gmail.com>
  source: <20260620-ps-pre-commit-indent-v6-0-cdc6d8fd5fbc@gmail.com>