From: Junio C Hamano Date: Sat, 7 Feb 2026 21:07:15 +0000 (-0800) Subject: What's cooking (2026/02 #03) X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f22249b912f4af118c76bd933886c6662cd5dc14;p=thirdparty%2Fgit.git What's cooking (2026/02 #03) --- diff --git a/whats-cooking.txt b/whats-cooking.txt index 27427027f2..8a89524b9f 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 (Feb 2026, #02) -X-master-at: b2826b52eb7caff9f4ed6e85ec45e338bf02ad09 -X-next-at: 305ecc6b61d0a123836784173332d185b4630f72 +Subject: What's cooking in git.git (Feb 2026, #03) +X-master-at: 3e0db84c88c57e70ac8be8c196dfa92c5d656fbc +X-next-at: 64333814d3ac6e46b6b9c308a6398a66743a4022 Bcc: lwn@lwn.net, gitster@pobox.com -What's cooking in git.git (Feb 2026, #02) +What's cooking in git.git (Feb 2026, #03) ----------------------------------------- Here are the topics that have been cooking in my tree. Commits @@ -21,8 +21,7 @@ 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 repositories have only a subset of branches. -Git 2.53 has been tagged. Let's wait to see if there are regression -reports from the real world and then start the new cycle. +We will be rewinding the tip of 'next' soonish. With maint, master, next, seen, todo: @@ -48,9 +47,162 @@ Release tarballs are available at: https://www.kernel.org/pub/software/scm/git/ +-------------------------------------------------- +[Graduated to 'master'] + +* aa/add-p-previous-decisions (2026-01-08) 1 commit + (merged to 'next' on 2026-01-21 at 4e2fe2bd9b) + + add -p: show user's hunk decision when selecting hunks + + "git add -p" and friends note what the current status of the hunk + being shown is. + source: + + +* ac/sparse-checkout-string-list-cleanup (2026-01-21) 1 commit + (merged to 'next' on 2026-01-23 at 885244a10d) + + sparse-checkout: optimize string_list construction and add tests to verify deduplication. + + Code clean-up. + source: <20260121130005.72375-1-amishhhaaaa@gmail.com> + + +* ap/http-probe-rpc-use-auth (2026-01-14) 1 commit + (merged to 'next' on 2026-01-23 at 0439366395) + + remote-curl: use auth for probe_rpc() requests too + + HTTP transport failed to authenticate in some code paths, which has + been corrected. + source: <20260114163619.614297-2-aplattner@nvidia.com> + + +* ar/submodule-gitdir-tweak (2026-01-12) 11 commits + (merged to 'next' on 2026-01-23 at ef3c2cab02) + + submodule: detect conflicts with existing gitdir configs + + submodule: hash the submodule name for the gitdir path + + submodule: fix case-folding gitdir filesystem collisions + + submodule--helper: fix filesystem collisions by encoding gitdir paths + + builtin/credential-store: move is_rfc3986_unreserved to url.[ch] + + submodule--helper: add gitdir migration command + + submodule: allow runtime enabling extensions.submodulePathConfig + + submodule: introduce extensions.submodulePathConfig + + builtin/submodule--helper: add gitdir command + + submodule: always validate gitdirs inside submodule_name_to_gitdir + + submodule--helper: use submodule_name_to_gitdir in add_submodule + + Avoid local submodule repository directory paths overlapping with + each other by encoding submodule names before using them as path + components. + cf. + source: <20260112184632.1334495-1-adrian.ratiu@collabora.com> + + +* dd/t5403-modernise (2026-01-12) 2 commits + (merged to 'next' on 2026-01-23 at ca3ceb637e) + + t5403: use test_cmp for post-checkout argument checks + + t5403: introduce check_post_checkout helper function + + Test clean-up. + + +* jk/remote-tracking-ref-leakfix (2026-01-18) 4 commits + (merged to 'next' on 2026-01-21 at 7f0736a973) + + remote: always allocate branch.push_tracking_ref + + remote: fix leak in branch_get_push_1() with invalid "simple" config + + remote: drop const return of tracking_for_push_dest() + + remote: return non-const pointer from error_buf() + (this branch is used by hn/status-compare-with-push.) + + Leakfix. + source: <20260119051858.GA1991308@coredump.intra.peff.net> + + +* lp/diff-stat-utf8-display-width-fix (2026-01-15) 2 commits + (merged to 'next' on 2026-01-23 at 80e7ddce3e) + + t4073: add test for diffstat paths length when containing UTF-8 chars + + diff: improve scaling of filenames in diffstat to handle UTF-8 chars + + The computation of column width made by "git diff --stat" was + confused when pathnames contain non-ASCII characters. + source: + + +* sp/myfirstcontribution-include-update (2026-01-12) 1 commit + (merged to 'next' on 2026-01-23 at 2d039d03ff) + + doc: MyFirstContribution: fix missing dependencies and clarify build steps + + Doc update. + source: <20260112195625.391821-1-shreyanshpaliwalcmsmn@gmail.com> + + +* sp/t5500-cleanup (2026-01-21) 1 commit + (merged to 'next' on 2026-01-23 at d5adc61ce8) + + t5500: simplify test implementation and fix git exit code suppression + + Test clean-up. + source: <20260121130012.888299-1-shreyanshpaliwalcmsmn@gmail.com> + + +* tc/last-modified-options-cleanup (2026-01-20) 4 commits + (merged to 'next' on 2026-01-23 at e514d98b11) + + last-modified: change default max-depth to 0 + + last-modified: document option '--max-depth' + + last-modified: document option '-z' + + last-modified: clarify in the docs the command takes a pathspec + + The "-z" and "--max-depth" documentation (and implementation of + "-z") in the "git last-modified" command have been updated. + source: <20260120-toon-last-modified-zzzz-v3-0-9bffd4968b0e@iotcl.com> + -------------------------------------------------- [New Topics] +* yt/merge-file-outside-a-repository (2026-02-05) 1 commit + - merge-file: honor merge.conflictStyle outside of a repository + + "git merge-file" can be run outside a repository, but it ignored + all configuration, even the per-user ones. The command now uses + available configuration files to find its customization. + + Will merge to 'next'? + source: + + +* sb/merge-ours-sparse (2026-02-06) 2 commits + (merged to 'next' on 2026-02-06 at 64333814d3) + + merge-ours: integrate with sparse-index + + merge-ours: drop USE_THE_REPOSITORY_VARIABLE + + "git merge-ours" is taught to work better in a sparse checkout. + + Will merge to 'master'. + source: + + +* aa/add-p-no-auto-advance (2026-02-06) 3 commits + - add-patch: Allow proper 'git apply' when using the --rework-with-file flag + - add-patch: Allow interfile navigation when selecting hunks + - interactive -p: add new `--rework-with-file` flag to interactive machinery + + "git add -p" learned a new mode that allows the user to revisit a + file that was already dealt with. + + Expecting a reroll. + source: + + +* sd/doc-my1c-api-config-reference-fix (2026-02-05) 1 commit + (merged to 'next' on 2026-02-06 at 222e701dd5) + + doc: fix repo_config documentation reference + + Docfix. + + Will merge to 'master'. + source: <20260206062108.74072-1-valusoutrik@gmail.com> + +-------------------------------------------------- +[Cooking] + * am/doc-github-contributiong-link-to-submittingpatches (2026-01-31) 1 commit (merged to 'next' on 2026-02-04 at 1f4534468b) + .github/CONTRIBUTING.md: link to SubmittingPatches on git-scm.com @@ -71,14 +223,16 @@ Release tarballs are available at: source: <20260202161759.84355-2-hoda.s.salim@gmail.com> -* jc/ci-test-contrib-too (2026-02-05) 2 commits - - ci: avoid ubuntu:rolling in most jobs for now - - test: optionally test contrib in CI +* jc/ci-test-contrib-too (2026-02-06) 2 commits + (merged to 'next' on 2026-02-06 at 2890869b63) + + ci: ubuntu: use GNU coreutils for dirname + + test: optionally test contrib in CI Test contrib/ things in CI to catch breakages before they enter the "next" branch. - Will merge to 'next'? + Will merge to 'master'. + source: <20260207042703.1180704-1-ask+git@howdoi.land> source: @@ -101,7 +255,8 @@ Release tarballs are available at: Allow the directory in which reference backends store their data to be specified. - Needs review. + Expecting a (hopefully small and final) reroll? + cf. source: <20260202-kn-alternate-ref-dir-v4-0-3b30430411e3@gmail.com> @@ -118,29 +273,32 @@ Release tarballs are available at: * jc/diff-highlight-main-master-testfix (2026-02-03) 1 commit - - diff-highlight: allow testing with Git 3.0 breaking changes + (merged to 'next' on 2026-02-05 at 128a77dfe5) + + diff-highlight: allow testing with Git 3.0 breaking changes Test fix (in contrib/) - Will merge to 'next'. + Will merge to 'master'. source: * cs/subtree-reftable-testfix (2026-02-03) 1 commit - - contrib/subtree: fix tests with reftable backend + (merged to 'next' on 2026-02-05 at d953fc69cc) + + contrib/subtree: fix tests with reftable backend Test fix (in contrib/) - Will merge to 'next'. + Will merge to 'master'. source: <20260204043812.814884-3-ask+git@howdoi.land> * tc/memzero-array (2026-02-03) 1 commit - - cocci: extend MEMZERO_ARRAY() rules + (merged to 'next' on 2026-02-05 at 0755d57f09) + + cocci: extend MEMZERO_ARRAY() rules Coccinelle rules update. - Will merge to 'next'. + Will merge to 'master'. source: <20260203102908.749954-1-toon@iotcl.com> @@ -201,8 +359,10 @@ Release tarballs are available at: source: <20260204173328.1601807-1-adrian.ratiu@collabora.com> -* cf/c23-const-preserving-strchr-updates-0 (2026-02-04) 1 commit - - global: constify some pointers that are not written to +* cf/c23-const-preserving-strchr-updates-0 (2026-02-05) 2 commits + (merged to 'next' on 2026-02-06 at ac9d269e5c) + + gpg-interface: remove an unnecessary NULL initialization + + global: constify some pointers that are not written to ISO C23 redefines strchr and friends that tradiotionally took a const pointer and returned a non-const pointer derived from it to @@ -211,16 +371,17 @@ Release tarballs are available at: paths that used non-const pointer to receive their results that did not have to be non-const to adjust. - Will merge to 'next'. + Will merge to 'master'. source: <342b01acd42f1fcaa3abefa38dc589e12ccb1134.1770261829.git.collin.funk1@gmail.com> * mc/doc-send-email-signed-off-by-cc (2026-02-05) 1 commit - - doc: send-email: correct --no-signed-off-by-cc misspelling + (merged to 'next' on 2026-02-06 at 2a3d683680) + + doc: send-email: correct --no-signed-off-by-cc misspelling Docfix. - Will merge to 'next'. + Will merge to 'master'. source: @@ -237,8 +398,6 @@ Release tarballs are available at: Needs review. source: --------------------------------------------------- -[Cooking] * sp/show-index-warn-fallback (2026-01-30) 2 commits (merged to 'next' on 2026-02-04 at 58399695e4) @@ -266,21 +425,22 @@ Release tarballs are available at: * jt/odb-transaction-per-source (2026-02-02) 4 commits - - odb: transparently handle common transaction behavior - - odb: prepare `struct odb_transaction` to become generic - - object-file: rename transaction functions - - odb: store ODB source in `struct odb_transaction` + (merged to 'next' on 2026-02-06 at 9f85ed3c47) + + odb: transparently handle common transaction behavior + + odb: prepare `struct odb_transaction` to become generic + + object-file: rename transaction functions + + odb: store ODB source in `struct odb_transaction` Transaction to create objects (or not) is currently tied to the repository, but in the future a repository can have multiple object sources, which may have different transaction mechanisms. Make the odb transaction API per object source. - Comments? + Will merge to 'master'. source: <20260203001002.2500198-1-jltobler@gmail.com> -* ps/for-each-ref-in-fixes (2026-01-30) 4 commits +* ps/for-each-ref-in-fixes (2026-02-05) 4 commits - bisect: simplify string_list memory handling - bisect: fix misuse of `refs_for_each_ref_in()` - pack-bitmap: fix bug with exact ref match in "pack.preferBitmapTips" @@ -288,7 +448,9 @@ Release tarballs are available at: A handful of places used refs_for_each_ref_in() API incorrectly, which has been corrected. - source: <20260130-b4-pks-fix-for-each-ref-in-misuse-v2-0-0449b198a681@pks.im> + + Will merge to 'next'? + source: <20260206-b4-pks-fix-for-each-ref-in-misuse-v3-0-1e050c3d6a50@pks.im> * ty/perf-3400-optim (2026-01-30) 1 commit @@ -301,7 +463,7 @@ Release tarballs are available at: source: <20260130170123.642344-1-a3205153416@gmail.com> -* ja/doc-synopsis-style-even-more (2026-02-03) 4 commits +* ja/doc-synopsis-style-even-more (2026-02-05) 4 commits - doc: convert git-show to synopsis style - doc: fix some style issues in git-clone and for-each-ref-options - doc: finalize git-clone documentation conversion to synopsis style @@ -310,8 +472,8 @@ Release tarballs are available at: A handful of documentation pages have been modernized to use the "synopsis" style. - Comments? - source: + Will merge to 'next'? + source: * ac/string-list-sort-u-and-tests (2026-01-29) 2 commits @@ -350,16 +512,6 @@ Release tarballs are available at: source: -* sp/t5500-cleanup (2026-01-21) 1 commit - (merged to 'next' on 2026-01-23 at d5adc61ce8) - + t5500: simplify test implementation and fix git exit code suppression - - Test clean-up. - - Will merge to 'master'. - source: <20260121130012.888299-1-shreyanshpaliwalcmsmn@gmail.com> - - * ty/symlinks-use-unsigned-for-bitset (2026-01-21) 1 commit - symlinks: use unsigned int for flags @@ -415,32 +567,6 @@ Release tarballs are available at: source: <20260128213927.3026875-1-adrian.ratiu@collabora.com> -* lp/diff-stat-utf8-display-width-fix (2026-01-15) 2 commits - (merged to 'next' on 2026-01-23 at 80e7ddce3e) - + t4073: add test for diffstat paths length when containing UTF-8 chars - + diff: improve scaling of filenames in diffstat to handle UTF-8 chars - - The computation of column width made by "git diff --stat" was - confused when pathnames contain non-ASCII characters. - - Will merge to 'master'. - source: - - -* jk/remote-tracking-ref-leakfix (2026-01-18) 4 commits - (merged to 'next' on 2026-01-21 at 7f0736a973) - + remote: always allocate branch.push_tracking_ref - + remote: fix leak in branch_get_push_1() with invalid "simple" config - + remote: drop const return of tracking_for_push_dest() - + remote: return non-const pointer from error_buf() - (this branch is used by hn/status-compare-with-push.) - - Leakfix. - - Will merge to 'master'. - source: <20260119051858.GA1991308@coredump.intra.peff.net> - - * yc/histogram-hunk-shift-fix (2025-12-06) 1 commit - xdiff: re-diff shifted change groups when using histogram algorithm @@ -467,44 +593,22 @@ Release tarballs are available at: source: -* tc/last-modified-options-cleanup (2026-01-20) 4 commits - (merged to 'next' on 2026-01-23 at e514d98b11) - + last-modified: change default max-depth to 0 - + last-modified: document option '--max-depth' - + last-modified: document option '-z' - + last-modified: clarify in the docs the command takes a pathspec - - The "-z" and "--max-depth" documentation (and implementation of - "-z") in the "git last-modified" command have been updated. - - Will merge to 'master'. - source: <20260120-toon-last-modified-zzzz-v3-0-9bffd4968b0e@iotcl.com> - - * tc/last-modified-not-a-tree (2026-01-30) 4 commits - - last-modified: verify revision argument is a commit-ish - - last-modified: remove double error message - - last-modified: fix memory leak when more than one commit is given - - last-modified: rewrite error message when more than one commit given + (merged to 'next' on 2026-02-06 at b3dcd27ef8) + + last-modified: verify revision argument is a commit-ish + + last-modified: remove double error message + + last-modified: fix memory leak when more than one commit is given + + last-modified: rewrite error message when more than one commit given Giving "git last-modified" a tree (not a commit-ish) died an uncontrolled death, which has been corrected. - Will merge to 'next'? - source: <20260130-toon-last-modified-tree-v6-0-db827e5df985@iotcl.com> - - -* sp/myfirstcontribution-include-update (2026-01-12) 1 commit - (merged to 'next' on 2026-01-23 at 2d039d03ff) - + doc: MyFirstContribution: fix missing dependencies and clarify build steps - - Doc update. - Will merge to 'master'. - source: <20260112195625.391821-1-shreyanshpaliwalcmsmn@gmail.com> + cf. + source: <20260130-toon-last-modified-tree-v6-0-db827e5df985@iotcl.com> -* cs/add-skip-submodule-ignore-all (2026-01-13) 5 commits +* cs/add-skip-submodule-ignore-all (2026-02-06) 5 commits - Documentation: update add --force option + ignore=all config - tests: fix existing tests when add an ignore=all submodule - tests: t2206-add-submodule-ignored: ignore=all and add --force tests @@ -515,10 +619,8 @@ Release tarballs are available at: submodule..ignore that is set to "all" (and requires "git add -f" to override it). - Expecting a reroll. - cf. - cf. - source: <37fe7956e089394bb1d75f4c8af4a3347b204803.1768376879.git.gitgitgadget@gmail.com> + Comments? + source: * kn/ref-batch-output-error-reporting-fix (2026-01-25) 6 commits @@ -538,24 +640,15 @@ Release tarballs are available at: source: <20260125-633-regression-lost-diagnostic-message-when-pushing-non-commit-objects-to-refs-heads-v5-0-d58f3a9edf98@gmail.com> -* ac/sparse-checkout-string-list-cleanup (2026-01-21) 1 commit - (merged to 'next' on 2026-01-23 at 885244a10d) - + sparse-checkout: optimize string_list construction and add tests to verify deduplication. - - Code clean-up. - - Will merge to 'master'. - source: <20260121130005.72375-1-amishhhaaaa@gmail.com> - - * ps/commit-list-functions-renamed (2026-01-15) 3 commits - - commit: rename `free_commit_list()` to conform to coding guidelines - - commit: rename `reverse_commit_list()` to conform to coding guidelines - - commit: rename `copy_commit_list()` to conform to coding guidelines + (merged to 'next' on 2026-02-06 at f7ef001af4) + + commit: rename `free_commit_list()` to conform to coding guidelines + + commit: rename `reverse_commit_list()` to conform to coding guidelines + + commit: rename `copy_commit_list()` to conform to coding guidelines Rename three functions around the commit_list data structure. - Will merge to 'next'? + Will merge to 'master'. source: <20260115-pks-commit-list-coding-guidelines-v1-0-c58868dbf412@pks.im> @@ -607,16 +700,6 @@ Release tarballs are available at: source: -* dd/t5403-modernise (2026-01-12) 2 commits - (merged to 'next' on 2026-01-23 at ca3ceb637e) - + t5403: use test_cmp for post-checkout argument checks - + t5403: introduce check_post_checkout helper function - - Test clean-up. - - Will merge to 'master'. - - * ag/http-netrc-tests (2026-01-06) 1 commit - t5550: add netrc tests for http 401/403 @@ -650,13 +733,12 @@ Release tarballs are available at: - status: add status.compareBranches config for multiple branch comparisons - refactor format_branch_comparison in preparation - Merge branch 'jk/remote-tracking-ref-leakfix' into hn/status-compare-with-push - (this branch uses jk/remote-tracking-ref-leakfix.) "git status" learned to show comparison between the current branch and its push destination as well as its upstream, when the two are different (i.e., triangular workflow). - Under further discussion? + What's the status of this topic? cf. <20260122220154.GA2107958@coredump.intra.peff.net> source: @@ -670,21 +752,11 @@ Release tarballs are available at: were kept track of by a single global variable in-core, which has been corrected by moving it to per-repository data structure. - Comments? + Breaks fuzz somke test. + cf. source: -* aa/add-p-previous-decisions (2026-01-08) 1 commit - (merged to 'next' on 2026-01-21 at 4e2fe2bd9b) - + add -p: show user's hunk decision when selecting hunks - - "git add -p" and friends notes what the current status of the hunk - being shown is. - - Will merge to 'master'. - source: - - * pt/fsmonitor-linux (2025-12-31) 1 commit - fsmonitor: implement filesystem change listener for Linux @@ -746,28 +818,18 @@ Release tarballs are available at: Allow recording process ID of the process that holds the lock next to a lockfile for diagnosis. - Will mrge to 'next'? + Will merge to 'next'. source: -* ap/http-probe-rpc-use-auth (2026-01-14) 1 commit - (merged to 'next' on 2026-01-23 at 0439366395) - + remote-curl: use auth for probe_rpc() requests too - - HTTP transport failed to authenticate in some code paths, which has - been corrected. - - Will merge to 'master'. - source: <20260114163619.614297-2-aplattner@nvidia.com> - - * lo/repo-info-keys (2026-01-23) 2 commits - repo: add new flag --keys to git-repo-info - repo: rename "keyvalue" to "lines" "git repo info" learns "--keys" action to list known keys. - Comments? + Expecting a reroll. + cf. source: <20260123164900.35092-1-lucasseikioshiro@gmail.com> @@ -854,26 +916,3 @@ Release tarballs are available at: cf. cf. source: <20260113-b4-pks-history-builtin-v11-0-e74ebfa2652d@pks.im> - - -* ar/submodule-gitdir-tweak (2026-01-12) 11 commits - (merged to 'next' on 2026-01-23 at ef3c2cab02) - + submodule: detect conflicts with existing gitdir configs - + submodule: hash the submodule name for the gitdir path - + submodule: fix case-folding gitdir filesystem collisions - + submodule--helper: fix filesystem collisions by encoding gitdir paths - + builtin/credential-store: move is_rfc3986_unreserved to url.[ch] - + submodule--helper: add gitdir migration command - + submodule: allow runtime enabling extensions.submodulePathConfig - + submodule: introduce extensions.submodulePathConfig - + builtin/submodule--helper: add gitdir command - + submodule: always validate gitdirs inside submodule_name_to_gitdir - + submodule--helper: use submodule_name_to_gitdir in add_submodule - - Avoid local submodule repository directory paths overlapping with - each other by encoding submodule names before using them as path - components. - - Will merge to 'master'. - cf. - source: <20260112184632.1334495-1-adrian.ratiu@collabora.com>