From 8933d95b25518259e043ebee9eafce4a323281b2 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Mon, 30 Mar 2026 16:28:38 -0700 Subject: [PATCH] What's cooking (2026/03 #12) --- whats-cooking.txt | 710 ++++++++++++++++++++++++---------------------- 1 file changed, 375 insertions(+), 335 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index b24b743837..51e1dd04de 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,10 +1,10 @@ To: git@vger.kernel.org -Subject: What's cooking in git.git (Mar 2026, #11) -X-master-at: 41688c1a2312f62f44435e1a6d03b4b904b5b0ec -X-next-at: 0a8c60e8ae259ec48ddcdbbda0df4b2f04610708 +Subject: What's cooking in git.git (Mar 2026, #12) +X-master-at: 270e10ad6dda3379ea0da7efd11e4fbf2cd7a325 +X-next-at: 0c370356e2245450de215a847afb905bda230d11 Bcc: lwn@lwn.net, gitster@pobox.com -What's cooking in git.git (Mar 2026, #11) +What's cooking in git.git (Mar 2026, #12) ----------------------------------------- Here are the topics that have been cooking in my tree. Commits @@ -46,70 +46,302 @@ Release tarballs are available at: https://www.kernel.org/pub/software/scm/git/ -------------------------------------------------- -[Graduated to 'master'] +[New Topics] + +* sa/cat-file-batch-mailmap-switch (2026-03-29) 1 commit + - cat-file: add mailmap subcommand to --batch-command + + "git cat-file --batch" learns an in-line command "mailmap" + that lets the user toggle use of mailmap. + + Comments? + source: <20260329082808.12609-2-siddharthasthana31@gmail.com> + + +* sp/doc-gitignore-oowt (2026-03-28) 1 commit + - doc: gitignore: clarify pattern base for info/exclude and core.excludesFile + + Doc update. + + Will merge to 'next'. + source: <20260328152233.1140327-1-shreyanshpaliwalcmsmn@gmail.com> + + +* tb/incremental-midx-part-3.3 (2026-03-29) 16 commits + - repack: allow `--write-midx=incremental` without `--geometric` + - repack: introduce `--write-midx=incremental` + - repack: implement incremental MIDX repacking + - packfile: ensure `close_pack_revindex()` frees in-memory revindex + - builtin/repack.c: convert `--write-midx` to an `OPT_CALLBACK` + - repack-geometry: prepare for incremental MIDX repacking + - repack-midx: extract `repack_fill_midx_stdin_packs()` + - repack-midx: factor out `repack_prepare_midx_command()` + - midx: expose `midx_layer_contains_pack()` + - repack: track the ODB source via existing_packs + - midx: support custom `--base` for incremental MIDX writes + - midx: introduce `--checksum-only` for incremental MIDX writes + - midx: use `strvec` for `keep_hashes` + - strvec: introduce `strvec_init_alloc()` + - midx: use `string_list` for retained MIDX files + - midx-write: handle noop writes when converting incremental chains + + The repacking code has been refactored and compaction of MIDX layers + have been implemented, and incremental strategy that does not require + all-into-one repacking has been introduced. + + Needs review. + source: + + +* th/t6101-unhide-git-failures (2026-03-28) 1 commit + - t6101: avoid suppressing git's exit code + + Test cleanup. + + Will merge to 'next'. + source: <20260328135935.180646-1-vikingtc4@gmail.com> + + +* za/t2000-modernise (2026-03-27) 1 commit + - t2000: modernise overall structure + + Test cleanup. + + Will merge to 'next'. + source: <20260327234019.95591-1-zakariyahali100@gmail.com> + + +* jd/read-cache-trace-wo-the-repository (2026-03-30) 1 commit + - read-cache: use istate->repo for trace2 logging -* ps/object-counting (2026-03-12) 7 commits - (merged to 'next' on 2026-03-17 at 8d3d9a1374) - + odb: introduce generic object counting - + odb/source: introduce generic object counting - + object-file: generalize counting objects - + object-file: extract logic to approximate object count - + packfile: extract logic to count number of objects - + odb: stop including "odb/source.h" - + Merge branch 'ps/odb-sources' into ps/object-counting - (this branch is used by ps/odb-generic-object-name-handling.) - - The logic to count objects has been cleaned up. - source: <20260312-b4-pks-odb-source-count-objects-v2-0-5914f69256bf@pks.im> - - -* tb/incremental-midx-part-3.2 (2026-02-24) 17 commits - (merged to 'next' on 2026-03-18 at 7f995e23bb) - + midx: enable reachability bitmaps during MIDX compaction - + midx: implement MIDX compaction - + t/helper/test-read-midx.c: plug memory leak when selecting layer - + midx-write.c: factor fanout layering from `compute_sorted_entries()` - + midx-write.c: enumerate `pack_int_id` values directly - + midx-write.c: extract `fill_pack_from_midx()` - + midx-write.c: introduce `midx_pack_perm()` helper - + midx: do not require packs to be sorted in lexicographic order - + midx-write.c: introduce `struct write_midx_opts` - + midx-write.c: don't use `pack_perm` when assigning `bitmap_pos` - + t/t5319-multi-pack-index.sh: fix copy-and-paste error in t5319.39 - + git-multi-pack-index(1): align SYNOPSIS with 'git multi-pack-index -h' - + git-multi-pack-index(1): remove non-existent incompatibility - + builtin/multi-pack-index.c: make '--progress' a common option - + midx: introduce `midx_get_checksum_hex()` - + midx: rename `get_midx_checksum()` to `midx_get_checksum_hash()` - + midx: mark `get_midx_checksum()` arguments as const - - Further work on incremental repacking using MIDX/bitmap - source: + A handful of inappropriate uses of the_repository have been + rewritten to use the right repository structure instance in the + read-cache.c codepath. + + Will merge to 'next'. + source: + + +* jd/unpack-trees-wo-the-repository (2026-03-30) 1 commit + - unpack-trees: use explicit repository in trace2 calls + + A handful of inappropriate uses of the_repository have been + rewritten to use the right repository structure instance in the + unpack-trees.c codepath. + + Will merge to 'next'. + source: + + +* ps/receive-pack-updateinstead-in-worktree (2026-03-30) 3 commits + - receive-pack: use worktree HEAD for updateInstead + - t5516: clean up cloned and new-wt in denyCurrentBranch and worktrees test + - t5516: test updateInstead with worktree and unborn bare HEAD + + The check in "receive-pack" to prevent a checked out branch from + getting updated via updateInstead mechanism has been corrected. + + Needs review. + source: <20260330111822.165188-1-pabloosabaterr@gmail.com> + + +* ps/setup-wo-the-repository (2026-03-30) 18 commits + - setup: stop using `the_repository` in `init_db()` + - setup: stop using `the_repository` in `create_reference_database()` + - setup: stop using `the_repository` in `initialize_repository_version()` + - setup: stop using `the_repository` in `check_repository_format()` + - setup: stop using `the_repository` in `upgrade_repository_format()` + - setup: stop using `the_repository` in `setup_git_directory()` + - setup: stop using `the_repository` in `setup_git_directory_gently()` + - setup: stop using `the_repository` in `setup_git_env()` + - setup: stop using `the_repository` in `set_git_work_tree()` + - setup: stop using `the_repository` in `setup_work_tree()` + - setup: stop using `the_repository` in `enter_repo()` + - setup: stop using `the_repository` in `verify_non_filename()` + - setup: stop using `the_repository` in `verify_filename()` + - setup: stop using `the_repository` in `path_inside_repo()` + - setup: stop using `the_repository` in `prefix_path()` + - setup: stop using `the_repository` in `is_inside_git_dir()` + - setup: stop using `the_repository` in `is_inside_worktree()` + - setup: replace use of `the_repository` in static functions + + Many uses of the_repository has been updated to use a more + appropriate struct repository instance in setup.c codepath. + + Needs review. + source: <20260330-pks-setup-wo-the-repository-v1-0-0d2e822837aa@pks.im> + + +* qb/doc-git-stash-push-optionality (2026-03-30) 1 commit + - docs: fix "git stash [push]" documentation + + Doc update. + + Will merge to 'next'. + source: + + +* kh/doc-trailers (2026-03-30) 2 commits + - doc: interpret-trailers: explain key format + - doc: interpret-trailers: stop fixating on RFC 822 + + Documentation updates. + + Expecting a reroll. + cf. <5ba0bbcb-25a7-4ad0-ac1d-c86508eaffdd@app.fastmail.com> + source: -------------------------------------------------- -[New Topics] +[Graduated to 'master'] -* jc/test-set-e-clean (2026-03-24) 11 commits - . t9902: make test "set -e" clean - . t5570: make test "set -e" clean - . t940?: make test "set -e" clean - . t9200: make test "set -e" clean - . t7508: make test "set -e" clean - . tests: make svn test "set -e" clean - . t7450: make test "set -e" clean - . t4032: make test "set -e" clean - . t6002: make test "set -e" clean - . t0008: make test "set -e" clean - . test-lib: catch misspelt 'test_expect_successo' - - The test suite harness and many individual test scripts have been - updated to work correctly when 'set -e' is in effect, which helps - detect misspelled test commands. +* ai/t2107-test-path-is-helpers (2026-03-18) 1 commit + (merged to 'next' on 2026-03-23 at 56d10e5f76) + + t2107: modernize path existence check - Comments? - source: <20260325062114.2067946-1-gitster@pobox.com> + Test cleanup. + source: + + +* ej/ref-transaction-hook-preparing (2026-03-16) 1 commit + (merged to 'next' on 2026-03-20 at f9b8fbb0dc) + + refs: add 'preparing' phase to the reference-transaction hook + + The reference-transaction hook was taught to be triggered before + taking locks on references in the "preparing" phase. + source: <20260317023624.43070-2-eric.peijian@gmail.com> +* gi/doc-boolean-config-typofix (2026-03-18) 1 commit + (merged to 'next' on 2026-03-20 at 8810624798) + + doc: add missing space on git-config page + + Doc typofix. + source: <20260318210020.759128-1-gabl@gabl.ink> + + +* jc/rerere-modern-strbuf-handling (2026-03-19) 2 commits + (merged to 'next' on 2026-03-21 at 919b766afc) + + cocci: strbuf.buf is never NULL + + rerere: update to modern representation of empty strbufs + + Code clean-up overdue by 19 years. + source: + source: + + +* jk/diff-highlight-identical-pairs (2026-03-17) 1 commit + (merged to 'next' on 2026-03-20 at a8aa5bd14e) + + contrib/diff-highlight: do not highlight identical pairs + (this branch is used by jk/diff-highlight-more.) + + The handling of the incomplete lines at the end by "git + diff-highlight" has been fixed. + source: <20260317230223.GA716496@coredump.intra.peff.net> + + +* jw/apply-corrupt-location (2026-03-17) 3 commits + (merged to 'next' on 2026-03-23 at 18e9b8f91f) + + apply: report input location in binary and garbage patch errors + + apply: report input location in header parsing errors + + apply: report the location of corrupt patches + + "git apply" now reports the name of the input file along with the + line number when it encounters a corrupt patch, and correctly + resets the line counter when processing multiple patch files. + source: <20260317162321.71812-1-jerrywang183@yahoo.com> + + +* jw/object-name-bitset-to-enum (2026-03-18) 1 commit + (merged to 'next' on 2026-03-23 at 881af371ef) + + object-name: turn INTERPRET_BRANCH_* constants into enum values + + The unsigned integer that is used as an bitset to specify the kind + of branches interpret_branch_name() function has been changed to + use a dedicated enum type. + source: <20260318190942.22595-1-jerrywang183@yahoo.com> + + +* jw/t2203-status-pipe-fix (2026-03-16) 1 commit + (merged to 'next' on 2026-03-23 at 521c6eb44b) + + t2203: avoid suppressing git status exit code + + Test clean-up. + source: <20260317011544.65952-1-jerrywang183@yahoo.com> + + +* kh/doc-interpret-trailers-1 (2026-03-16) 4 commits + (merged to 'next' on 2026-03-20 at 6acc8b5a8a) + + interpret-trailers: use placeholder instead of * + + doc: config: convert trailers section to synopsis style + + doc: interpret-trailers: normalize and fill out options + + doc: interpret-trailers: convert to synopsis style + + Doc updates. + source: + + +* mf/apply-p-no-atoi (2026-03-15) 1 commit + (merged to 'next' on 2026-03-20 at 70a0a4313b) + + apply.c: fix -p argument parsing + + "git apply -p" parses more carefully now. + source: <20260316005120.7079-1-mroik@delayed.space> + + +* mr/merge-file-object-id-worktree-fix (2026-03-10) 1 commit + (merged to 'next' on 2026-03-20 at 68e1ee2045) + + merge-file: fix BUG when --object-id is used in a worktree + + merge-file --object-id used to trigger a BUG when run in a linked + worktree, which has been fixed. + source: + + +* ps/build-tweaks (2026-03-18) 8 commits + (merged to 'next' on 2026-03-20 at fb53cf619a) + + meson: precompile "git-compat-util.h" + + meson: compile compatibility sources separately + + git-compat-util.h: move warning infra to prepare for PCHs + + builds: move build scripts into "tools/" + + contrib: move "update-unicode.sh" script into "tools/" + + contrib: move "coverage-diff.sh" script into "tools/" + + contrib: move "coccinelle/" directory into "tools/" + + Introduce new "tools/" directory + (this branch is used by rs/use-strvec-pushv.) + + Tweak the build infrastructure by moving tools around. + source: <20260319-b4-pks-build-infra-improvements-v3-0-82f5fb3edc3f@pks.im> + + +* rs/ahead-behind-cleanup-optimization (2026-03-19) 1 commit + (merged to 'next' on 2026-03-21 at 5d8b4fa265) + + commit-reach: simplify cleanup of remaining bitmaps in ahead_behind () + + The cleanup of remaining bitmaps in "ahead_behind()" has been + simplified. + source: <21adf042-2bd1-4022-8822-9ed4985122a4@web.de> + + +* rs/prio-queue-to-commit-stack (2026-03-17) 1 commit + (merged to 'next' on 2026-03-20 at 265cb7b28c) + + use commit_stack instead of prio_queue in LIFO mode + + Uses of prio_queue as a LIFO stack of commits have been written + with commit_stack. + source: <05fc946f-6670-46e9-a058-231ee464029d@web.de> + + +* rs/split-index-the-repo-fix (2026-03-19) 1 commit + (merged to 'next' on 2026-03-21 at d66850b2ce) + + split-index: stop using the_repository and the_hash_algo + + split-index.c has been updated to not use the global the_repository + and the_hash_algo variables. + source: <944c2331-4dec-4c98-9059-f41dc204ed86@web.de> + +-------------------------------------------------- +[Cooking] + * jk/t0061-bat-test-update (2026-03-24) 1 commit (merged to 'next' on 2026-03-26 at ffae180124) + t0061: simplify .bat test @@ -145,7 +377,8 @@ Release tarballs are available at: The experimental `git replay` command learned the `--ref=` option to allow specifying which ref to update, overriding the default behavior. - Comments? + Seems to break CI. + cf. source: <20260325-toon-replay-arbitrary-ref-v2-0-553038702c9c@iotcl.com> @@ -171,41 +404,33 @@ Release tarballs are available at: that discarded constness when they return a pointer into a const string to preserve constness. - Comments? + Will merge to 'next'. source: <20260326190243.GA412983@coredump.intra.peff.net> source: <20260326192320.GA418281@coredump.intra.peff.net> -* mf/format-patch-commit-list-format-doc (2026-03-26) 2 commits +* mf/format-patch-commit-list-format-doc (2026-03-27) 3 commits + - format-patch: removing unconditional wrapping - docs: fix --commit-list-format related entries - Merge branch 'mf/format-patch-commit-list-format' into mf/format-patch-commit-list-format-doc (this branch uses mf/format-patch-commit-list-format and mf/format-patch-cover-letter-format.) Doc updates. - Waiting for review responses. - source: <20260326200643.20251-1-mroik@delayed.space> - - -* th/t8003-unhide-git-failures (2026-03-26) 1 commit - - t8003: avoid suppressing git's exit code + Will merge to 'next'. + source: - Test clean-up. - - Will merge to 'next'? - source: <20260326141118.146155-1-vikingtc4@gmail.com> - -* za/t2000-test-path-is-helpers (2026-03-26) 1 commit - - t2000: modernize path checks with test_path_is_* helpers +* th/t8003-unhide-git-failures (2026-03-28) 2 commits + (merged to 'next' on 2026-03-30 at ad41378b07) + + t8003: modernise style + + t8003: avoid suppressing git's exit code Test clean-up. - Will merge to 'next'? - source: <20260326192603.23961-1-zakariyahali100@gmail.com> + Will merge to 'master'. + source: <20260328132955.172262-2-vikingtc4@gmail.com> --------------------------------------------------- -[Cooking] * jt/fast-import-signed-modes (2026-03-26) 5 commits - fast-import: add 'abort-if-invalid' mode to '--signed-tags=' @@ -216,27 +441,28 @@ Release tarballs are available at: Handling of signed commits and tags in fast-import has been made more configurable. + + Needs review. source: <20260326191414.3783974-1-jltobler@gmail.com> -* ps/graph-lane-limit (2026-03-25) 2 commits - - graph: add documentation and tests about --graph-lane-limit +* ps/graph-lane-limit (2026-03-27) 3 commits + - graph: add truncation mark to capped lanes - graph: add --graph-lane-limit option + - graph: limit the graph width to a hard-coded max The graph output from commands like "git log --graph" can now be limited to a specified number of lanes, preventing overly wide output in repositories with many branches. - Expecting a reroll. - cf. - source: <20260325174401.217577-1-pabloosabaterr@gmail.com> + Needs review. + source: <20260328001113.1275291-1-pabloosabaterr@gmail.com> * rs/use-strvec-pushv (2026-03-24) 2 commits (merged to 'next' on 2026-03-24 at 7c6487dcaf) + use strvec_pushv() to add another strvec + Merge branch 'ps/build-tweaks' into rs/use-strvec-pushv - (this branch uses ps/build-tweaks.) Code paths that loop over another array to push each element into a strvec have been rewritten to use strvec_pushv() instead. @@ -283,18 +509,6 @@ Release tarballs are available at: source: <20260322023557.15907-1-jayatheerthkulkarni2005@gmail.com> -* jk/diff-highlight-identical-pairs (2026-03-17) 1 commit - (merged to 'next' on 2026-03-20 at a8aa5bd14e) - + contrib/diff-highlight: do not highlight identical pairs - (this branch is used by jk/diff-highlight-more.) - - The handling of the incomplete lines at the end by "git - diff-highlight" has been fixed. - - Will merge to 'master'. - source: <20260317230223.GA716496@coredump.intra.peff.net> - - * jk/diff-highlight-more (2026-03-22) 9 commits (merged to 'next' on 2026-03-24 at e7b555cbc5) + diff-highlight: fetch all config with one process @@ -306,7 +520,6 @@ Release tarballs are available at: + diff-highlight: drop perl version dependency back to 5.8 + diff-highlight: mention build instructions + Merge branch 'jk/diff-highlight-identical-pairs' into jk/diff-highlight-more - (this branch uses jk/diff-highlight-identical-pairs.) Various updates to contrib/diff-highlight, including documentation updates, test improvements, and color configuration handling. @@ -336,7 +549,7 @@ Release tarballs are available at: source: <20260323-b4-pks-fsck-without-the-repository-v2-0-e8dc79bca651@pks.im> -* tb/stdin-packs-excluded-but-open (2026-03-25) 5 commits +* tb/stdin-packs-excluded-but-open (2026-03-27) 5 commits - repack: mark non-MIDX packs above the split as excluded-open - pack-objects: support excluded-open packs with --stdin-packs - t7704: demonstrate failure with once-cruft objects above the geometric split @@ -346,8 +559,8 @@ Release tarballs are available at: pack-objects's --stdin-packs=follow mode learns to handle excluded-but-open packs. - Will merge to 'next'? - source: + Will merge to 'next'. + source: * yc/path-walk-fix-error-reporting (2026-03-20) 1 commit @@ -391,27 +604,18 @@ Release tarballs are available at: * ds/backfill-revs (2026-03-26) 6 commits - - t5620: test backfill's unknown argument handling - - path-walk: support wildcard pathspecs for blob filtering - - backfill: work with prefix pathspecs - - backfill: accept revision arguments - - t5620: prepare branched repo for revision tests - - revision: include object-name.h + (merged to 'next' on 2026-03-27 at d4703fdd35) + + t5620: test backfill's unknown argument handling + + path-walk: support wildcard pathspecs for blob filtering + + backfill: work with prefix pathspecs + + backfill: accept revision arguments + + t5620: prepare branched repo for revision tests + + revision: include object-name.h `git backfill` learned to accept revision and pathspec arguments. - Will merge to 'next'? - source: - - -* jw/t2203-status-pipe-fix (2026-03-16) 1 commit - (merged to 'next' on 2026-03-23 at 521c6eb44b) - + t2203: avoid suppressing git status exit code - - Test clean-up. - Will merge to 'master'. - source: <20260317011544.65952-1-jerrywang183@yahoo.com> + source: * ps/commit-graph-overflow-fix (2026-03-23) 1 commit @@ -431,88 +635,24 @@ Release tarballs are available at: git replay now supports replaying down to the root commit. - Will merge to 'next'? + Will merge to 'next'. source: <20260324-toon-replay-down-to-root-v2-1-34e723489f6e@iotcl.com> -* mr/merge-file-object-id-worktree-fix (2026-03-10) 1 commit - (merged to 'next' on 2026-03-20 at 68e1ee2045) - + merge-file: fix BUG when --object-id is used in a worktree - - merge-file --object-id used to trigger a BUG when run in a linked - worktree, which has been fixed. - - Will merge to 'master'. - source: - - -* rs/prio-queue-to-commit-stack (2026-03-17) 1 commit - (merged to 'next' on 2026-03-20 at 265cb7b28c) - + use commit_stack instead of prio_queue in LIFO mode - - Uses of prio_queue as a LIFO stack of commits have been written - with commit_stack. - - Will merge to 'master'. - source: <05fc946f-6670-46e9-a058-231ee464029d@web.de> - - -* jw/object-name-bitset-to-enum (2026-03-18) 1 commit - (merged to 'next' on 2026-03-23 at 881af371ef) - + object-name: turn INTERPRET_BRANCH_* constants into enum values - - The unsigned integer that is used as an bitset to specify the kind - of branches interpret_branch_name() function has been changed to - use a dedicated enum type. - - Will merge to 'master'. - source: <20260318190942.22595-1-jerrywang183@yahoo.com> - - -* ai/t2107-test-path-is-helpers (2026-03-18) 1 commit - (merged to 'next' on 2026-03-23 at 56d10e5f76) - + t2107: modernize path existence check - - Test cleanup. - - Will merge to 'master'. - source: - - -* gi/doc-boolean-config-typofix (2026-03-18) 1 commit - (merged to 'next' on 2026-03-20 at 8810624798) - + doc: add missing space on git-config page - - Doc typofix. - - Will merge to 'master'. - source: <20260318210020.759128-1-gabl@gabl.ink> - - -* ua/push-remote-group (2026-03-25) 2 commits +* ua/push-remote-group (2026-03-27) 3 commits + - SQUASH??? - futureproof against the attack of the "main" - push: support pushing to a remote group - remote: move remote group resolution to remote.c "git push" learned to take a "remote group" name to push to, which causes pushes to multiple places, just like "git fetch" would do. - Waiting for a review response. + Expecting a reroll. cf. + cf. source: <20260325190906.1153080-1-usmanakinyemi202@gmail.com> -* jc/rerere-modern-strbuf-handling (2026-03-19) 2 commits - (merged to 'next' on 2026-03-21 at 919b766afc) - + cocci: strbuf.buf is never NULL - + rerere: update to modern representation of empty strbufs - - Code clean-up overdue by 19 years. - - Will merge to 'master'. - source: - source: - - * ps/odb-generic-object-name-handling (2026-03-20) 16 commits - odb: introduce generic `odb_find_abbrev_len()` - object-file: move logic to compute packed abbreviation length @@ -535,21 +675,11 @@ Release tarballs are available at: refactored to be backend-generic, moving logic into the respective object database backends. - Comments? + Will merge to 'next'. + cf. <874ilxm4wp.fsf@toon--20250203-5JQV3.mail-host-address-is-not-set> source: <20260320-b4-pks-odb-source-abbrev-v2-0-fe65dcd8c735@pks.im> -* rs/ahead-behind-cleanup-optimization (2026-03-19) 1 commit - (merged to 'next' on 2026-03-21 at 5d8b4fa265) - + commit-reach: simplify cleanup of remaining bitmaps in ahead_behind () - - The cleanup of remaining bitmaps in "ahead_behind()" has been - simplified. - - Will merge to 'master'. - source: <21adf042-2bd1-4022-8822-9ed4985122a4@web.de> - - * bk/t5315-test-path-is-helpers (2026-03-19) 1 commit (merged to 'next' on 2026-03-24 at f7374e8e70) + t5315: use test_path_is_file for loose-object check @@ -560,17 +690,6 @@ Release tarballs are available at: source: <20260319180803.164335-1-elkhatabibilal@gmail.com> -* rs/split-index-the-repo-fix (2026-03-19) 1 commit - (merged to 'next' on 2026-03-21 at d66850b2ce) - + split-index: stop using the_repository and the_hash_algo - - split-index.c has been updated to not use the global the_repository - and the_hash_algo variables. - - Will merge to 'master'. - source: <944c2331-4dec-4c98-9059-f41dc204ed86@web.de> - - * aa/reap-transport-child-processes (2026-03-12) 1 commit - transport-helper, connect: use clean_on_exit to reap children on abnormal exit @@ -578,22 +697,11 @@ Release tarballs are available at: connection weren't wait(2)ing for their children and letting "init" reap them instead; they have been tightened. - Will merge to 'next' after jk/t0061-bat-test-update settles down. + Will merge to 'next'. cf. <20260325061357.GA3772970@coredump.intra.peff.net> source: <20260312214945.4050010-1-cshung@gmail.com> -* ej/ref-transaction-hook-preparing (2026-03-16) 1 commit - (merged to 'next' on 2026-03-20 at f9b8fbb0dc) - + refs: add 'preparing' phase to the reference-transaction hook - - The reference-transaction hook was taught to be triggered before - taking locks on references in the "preparing" phase. - - Will merge to 'master'. - source: <20260317023624.43070-2-eric.peijian@gmail.com> - - * hn/git-checkout-m-with-stash (2026-03-17) 4 commits - checkout: -m (--merge) uses autostash when switching branches - sequencer: teach autostash apply to take optional conflict marker labels @@ -621,28 +729,15 @@ Release tarballs are available at: * pw/worktree-reduce-the-repository (2026-03-26) 3 commits - - worktree: reject NULL worktree in get_worktree_git_dir() - - worktree add: stop reading ".git/HEAD" - - worktree: remove "the_repository" from is_current_worktree() + (merged to 'next' on 2026-03-30 at f967ececef) + + worktree: reject NULL worktree in get_worktree_git_dir() + + worktree add: stop reading ".git/HEAD" + + worktree: remove "the_repository" from is_current_worktree() Reduce the reference to the_repository in the worktree subsystem. - Will merge to 'next'? - source: - - -* jw/apply-corrupt-location (2026-03-17) 3 commits - (merged to 'next' on 2026-03-23 at 18e9b8f91f) - + apply: report input location in binary and garbage patch errors - + apply: report input location in header parsing errors - + apply: report the location of corrupt patches - - "git apply" now reports the name of the input file along with the - line number when it encounters a corrupt patch, and correctly - resets the line counter when processing multiple patch files. - Will merge to 'master'. - source: <20260317162321.71812-1-jerrywang183@yahoo.com> + source: * mf/format-patch-commit-list-format (2026-03-23) 9 commits @@ -686,47 +781,6 @@ Release tarballs are available at: source: -* mf/apply-p-no-atoi (2026-03-15) 1 commit - (merged to 'next' on 2026-03-20 at 70a0a4313b) - + apply.c: fix -p argument parsing - - "git apply -p" parses more carefully now. - - Will merge to 'master'. - source: <20260316005120.7079-1-mroik@delayed.space> - - -* ps/build-tweaks (2026-03-18) 8 commits - (merged to 'next' on 2026-03-20 at fb53cf619a) - + meson: precompile "git-compat-util.h" - + meson: compile compatibility sources separately - + git-compat-util.h: move warning infra to prepare for PCHs - + builds: move build scripts into "tools/" - + contrib: move "update-unicode.sh" script into "tools/" - + contrib: move "coverage-diff.sh" script into "tools/" - + contrib: move "coccinelle/" directory into "tools/" - + Introduce new "tools/" directory - (this branch is used by rs/use-strvec-pushv.) - - Tweak the build infrastructure by moving tools around. - - Will merge to 'master'. - source: <20260319-b4-pks-build-infra-improvements-v3-0-82f5fb3edc3f@pks.im> - - -* kh/doc-interpret-trailers-1 (2026-03-16) 4 commits - (merged to 'next' on 2026-03-20 at 6acc8b5a8a) - + interpret-trailers: use placeholder instead of * - + doc: config: convert trailers section to synopsis style - + doc: interpret-trailers: normalize and fill out options - + doc: interpret-trailers: convert to synopsis style - - Doc updates. - - Will merge to 'master'. - source: - - * mm/line-log-use-standard-diff-output (2026-03-16) 4 commits - doc: note that -L supports patch formatting and pickaxe options - t4211: add tests for -L with standard diff options @@ -742,24 +796,25 @@ Release tarballs are available at: * ar/config-hook-cleanups (2026-03-25) 13 commits - - hook: reject unknown hook names in git-hook(1) - - hook: show disabled hooks in "git hook list" - - hook: show config scope in git hook list - - hook: introduce hook_config_cache_entry for per-hook data - - t1800: add test to verify hook execution ordering - - hook: make consistent use of friendly-name in docs - - hook: replace hook_list_clear() -> string_list_clear_func() - - hook: detect & emit two more bugs - - hook: rename cb_data_free/alloc -> hook_data_free/alloc - - hook: fix minor style issues - - builtin/receive-pack: properly init receive_hook strbuf - - hook: move unsorted_string_list_remove() to string-list.[ch] - - Merge branch 'ar/config-hooks' into ar/config-hook-cleanups + (merged to 'next' on 2026-03-30 at c128948b16) + + hook: reject unknown hook names in git-hook(1) + + hook: show disabled hooks in "git hook list" + + hook: show config scope in git hook list + + hook: introduce hook_config_cache_entry for per-hook data + + t1800: add test to verify hook execution ordering + + hook: make consistent use of friendly-name in docs + + hook: replace hook_list_clear() -> string_list_clear_func() + + hook: detect & emit two more bugs + + hook: rename cb_data_free/alloc -> hook_data_free/alloc + + hook: fix minor style issues + + builtin/receive-pack: properly init receive_hook strbuf + + hook: move unsorted_string_list_remove() to string-list.[ch] + + Merge branch 'ar/config-hooks' into ar/config-hook-cleanups (this branch is used by ar/parallel-hooks.) Code clean-up around the recent "hooks defined in config" topic. - Will merge to 'next'? + Will merge to 'master'. source: <20260325195503.1139418-1-adrian.ratiu@collabora.com> @@ -865,20 +920,20 @@ Release tarballs are available at: The fsmonitor daemon has been implemented for Linux. - Waiting for the rerolls to slow down? - cf. + Needs review. source: * sa/replay-revert (2026-03-25) 2 commits - - replay: add --revert mode to reverse commit changes - - sequencer: extract revert message formatting into shared function + (merged to 'next' on 2026-03-30 at ef4896a676) + + replay: add --revert mode to reverse commit changes + + sequencer: extract revert message formatting into shared function (this branch is used by tc/replay-ref.) "git replay" (experimental) learns, in addition to "pick" and "replay", a new operating mode "revert". - Will merge to 'next'? + Will merge to 'master'. source: <20260325202354.10628-1-siddharthasthana31@gmail.com> @@ -915,50 +970,22 @@ Release tarballs are available at: source: <20260326101819.1307742-1-adrian.ratiu@collabora.com> -* en/xdiff-cleanup-3 (2026-03-25) 5 commits - - xdiff/xdl_cleanup_records: use unambiguous types +* en/xdiff-cleanup-3 (2026-03-30) 6 commits - xdiff/xdl_cleanup_records: simplify INVESTIGATE handling for clarity - xdiff/xdl_cleanup_records: make setting action easier to follow - xdiff/xdl_cleanup_records: make limits more clear + - xdiff/xdl_cleanup_records: use unambiguous types + - xdiff: use unambiguous types in xdl_bogo_sqrt() - xdiff/xdl_cleanup_records: delete local recs pointer Preparation of the xdiff/ codebase to work with Rust - Needs review? - source: - - -* js/macos-homebrew-forgets-reg-enhanced (2026-03-20) 1 commit - . osx-clang: work around Homebrew's clang lacking REG_ENHANCED - - The build on macOS with Clang is fixed to work around a Homebrew change - that exposed an issue with missing REG_ENHANCED. - - No longer needed? - cf. <6c108696-2d41-4fa1-9662-fbf6db97f767@web.de> - cf. <458ad3c1-96df-4575-ee42-e6eb754f25f6@gmx.de> - cf. - source: + Needs review. + source: -------------------------------------------------- [Discarded] -* js/neuter-sideband (2026-02-03) 6 commits - . sideband: delay sanitizing by default to Git v3.0 - . sideband: offer to configure sanitizing on a per-URL basis - . sideband: add options to allow more control sequences to be passed through - . sideband: do allow ANSI color sequences by default - . sideband: introduce an "escape hatch" to allow control characters - . sideband: mask control characters - - Invalidate control characters in sideband messages, to avoid - terminal state getting messed up. - - Superseded by 'jc/neuter-sideband-fixup', which reuses most of the patches. - cf. - source: - - * bc/rev-parse-parseopt-help-exit-code (2026-03-16) 1 commit . rev-parse: have --parseopt callers exit 0 on --help @@ -969,3 +996,16 @@ Release tarballs are available at: Need to step back and rethink how exit code should look like. cf. <20260317150759.GA9975@coredump.intra.peff.net> source: <20260316220742.1286157-1-sandals@crustytoothpaste.net> + + +* js/macos-homebrew-forgets-reg-enhanced (2026-03-20) 1 commit + . osx-clang: work around Homebrew's clang lacking REG_ENHANCED + + The build on macOS with Clang is fixed to work around a Homebrew change + that exposed an issue with missing REG_ENHANCED. + + No longer needed? + cf. <6c108696-2d41-4fa1-9662-fbf6db97f767@web.de> + cf. <458ad3c1-96df-4575-ee42-e6eb754f25f6@gmx.de> + cf. + source: -- 2.47.3