diff --git a/whats-cooking.txt b/whats-cooking.txt index 488f17bb7f..4c7cc65fee 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 (Sep 2026, #05) -X-master-at: 47ce80527c56f462cb97db4ca8125342204d3783 -X-next-at: c61f22dfc455e97989e2dacb2a05d8b8a7b38156 +Subject: What's cooking in git.git (Sep 2026, #06) +X-master-at: 3699d22b59a6ea467ce13edb81b6bdea0398c803 +X-next-at: e81ff29d034235ec9d4a5c4c92f2973999a3f013 Bcc: lwn@lwn.net, gitster@pobox.com -What's cooking in git.git (Sep 2026, #05) +What's cooking in git.git (Sep 2026, #06) ----------------------------------------- Here are the topics that have been cooking in my tree. Commits @@ -51,9 +51,265 @@ Release tarballs are available at: https://www.kernel.org/pub/software/scm/git/ +-------------------------------------------------- +[Graduated to 'master'] + +* as/cherry-pick-no-commit-doc (2026-09-05) 2 commits + (merged to 'next' on 2026-09-09 at 2b9226bbc0) + + doc: cherry-pick: note --no-commit skips CHERRY_PICK_HEAD + + t3507: check no CHERRY_PICK_HEAD after conflicting --no-commit + + The documentation for 'git cherry-pick' has been updated to clarify + that the '--no-commit' option intentionally skips setting the + 'CHERRY_PICK_HEAD' ref. A test has also been added to ensure this + behavior holds even when the operation stops for conflicts. + + Graduated to 'master'. + source: <20260905171332.34670-1-f@lex.la> + + +* bc/maintenance-doc-markup-fix-for-asciidoc (2026-09-09) 1 commit + (merged to 'next' on 2026-09-11 at 9a68d8efd6) + + doc: fix conjoined maintenance strategies in git-config(1) + + Mark-up fix for 'git maintenance' documentation pages. + + Graduated to 'master'. + cf. + source: <20260910-maintenance-doc-bullet-fix-v2-1-3ed1c75e24b2@brighamcampbell.com> + + +* en/no-amend-during-conflicts (2026-09-01) 5 commits + (merged to 'next' on 2026-09-07 at e1faacbfe1) + + commit: refuse partial commits during conflict resolution + + commit: refuse to amend during conflict resolution + + commit: reword the empty-commit rebase amend error + + commit: allow a partial commit when a rebase pick becomes empty + + commit: clarify FROM_REBASE_PICK and is_from_rebase() names + + Teach 'am', 'revert', and 'rebase' that running 'commit --amend' or a + partial 'commit ' makes no sense during operations that stop + and return control to the user to resolve conflicts left in the + working tree, just like 'cherry-pick' and 'merge' do. + + Graduated to 'master'. + cf. <1c3f07e0-63c0-483d-8e46-e4edbdd6991a@gmail.com> + cf. <4ed77ebd-e4ba-4d37-9c92-d987b70135a6@gmail.com> + cf. + source: + + +* jc/history-missing-tree-errorfix (2026-09-02) 1 commit + (merged to 'next' on 2026-09-10 at 36601bf096) + + history: do not dereference NULL when parent tree is missing + + Running "git history" in a corrupt repository can (unsurprisingly) + segfault when a necessary tree object is not found. + + Graduated to 'master'. + cf. + source: <20260903063657.2067303-1-zkd18cjb@mail.ustc.edu.cn> + + +* jc/pathspec-match-const (2026-09-03) 1 commit + (merged to 'next' on 2026-09-07 at 5a00749668) + + pathspec: match and original in pathspec_item are const + (this branch is used by yt/pathspec-negative-prefix.) + + Two members in "struct pathspec_item" were of type "char *", but + nobody updated the string through these pointers. They have been + made "const char *" instead. + + Graduated to 'master'. + cf. <4439BA70-2C03-499D-B3CE-E43700C0A8DA@ytausch.de> + source: + + +* jk/ci-use-system-asciidoctor (2026-09-02) 1 commit + (merged to 'next' on 2026-09-11 at 848ec2e5e1) + + ci: use system asciidoctor + + The CI script to install dependencies for the documentation build + has been updated to install asciidoctor directly via the system + package manager instead of pinning to an older version via gem. + Additionally, an obsolete variable used for retired Azure Pipelines + environments has been removed. + + Graduated to 'master'. + source: <20260902071613.GB641414@coredump.intra.peff.net> + + +* jk/submodule-error-leak (2026-09-01) 2 commits + (merged to 'next' on 2026-09-07 at d3bf064487) + + submodule--helper: free URL when repository setup fails + + repository: make repo_clear() idempotent + + The error path in 'git submodule--helper' has been updated to plug a + memory leak when a repository handle could not be obtained, + leveraging an updated idempotent repo_clear(). + + Graduated to 'master'. + cf. + source: <20260902055117.GA41587@coredump.intra.peff.net> + + +* kh/doc-datamodel (2026-09-05) 4 commits + (merged to 'next' on 2026-09-09 at b951b38ff5) + + doc: datamodel: link to the glossary + + doc: glossary: link four of the terms to gitdatamodel(7) + + doc: git: link to the gitdatamodel(7) tutorial + + doc: git: list gitdatamodel(7) as a concept guide + (this branch is used by ta/command-list-guides-sync-lint.) + + The gitdatamodel documentation page has been linked from a handful + of key documentaiton pages. + + Graduated to 'master'. + cf. + source: + + +* ta/lint-gitlink-older-perl-fix (2026-09-07) 1 commit + (merged to 'next' on 2026-09-10 at 4ca90b4922) + + lint-gitlink: don't use empty lower bound in .{0,8} + + The development helper script to lint gitlink references in the + documentation has been updated to avoid a newer Perl regular + expression syntax that breaks on older Perl versions. + + Graduated to 'master'. + cf. + source: <20260907184858.13475-1-taahol@utu.fi> + + +* tn/fetch-pack-trace-packfile-uri (2026-07-26) 1 commit + (merged to 'next' on 2026-09-08 at dd3c024f52) + + fetch-pack: trace packfile URI downloads + + The process of downloading packfile URIs in protocol v2 has been + instrumented with a Trace2 region. This visibility allows tracking + the cumulative time spent downloading external packs and the number + of advertised URIs without emitting a separate event per pack. + + Graduated to 'master'. + cf. + source: <20260726083310.16180-2-tnyman@openai.com> + -------------------------------------------------- [New Topics] +* hn/range-diff-matched-only (2026-09-11) 1 commit + - range-diff: add --matched-only to skip one-sided commits + + The 'git range-diff' command has been augmented with a + '--matched-only' option to skip commits that are only present on + one side, allowing users to easily focus on only the commits that + have been retained. + + Waiting for response. + cf. + source: + + +* jc/cocci-free-updates (2026-09-11) 2 commits + - cocci: FREE_AND_NULL(E) is safe to call on NULL + - cocci: remove risky "if (!E) free(E)" conversion + + Updates to Coccinelle semantic patches to correctly handle the + 'FREE_AND_NULL()' macro and avoid generating broken transformations + for negated pointer checks. + + Will merge to 'next'? + cf. <96aca004-0df4-4e21-b60a-0288239122cc@web.de> + source: + source: + + +* js/rust-in-windows-ci (2026-09-13) 2 commits + (merged to 'next' on 2026-09-13 at fb3c42e1d9) + + ci(windows): build with Rust + + rust: pick a GCC-compatible Cargo target under MSYS2/MinGW + + Update Windows CI build to support Rust. + + Will merge to 'master'. + cf. + source: + + +* js/mingw-test-fixes-around-perl (2026-09-13) 2 commits + (merged to 'next' on 2026-09-13 at c797ae17e4) + + t9129: skip UTF-8 tests on Windows + + t9700: accommodate for MSYS2 Perl reporting as `cygwin` + + Correct tests that depend on Perl running on MinGW + + Will merge to 'master'. + source: + + +* js/win-cmake-use-ucrt64 (2026-09-13) 1 commit + (merged to 'next' on 2026-09-13 at eab79407f2) + + cmake(windows): accommodate for Git for Windows' migration to UCRT64 + + Windows build switches from MINGW64 to URCR64 runtime starting Git + 2.56.0; switch the cmake based build at the same time. + + Will merge to 'master'. + source: + + +* jt/object-file-batch-fsync-fix (2026-09-13) 2 commits + - object-file: flush transaction packfile before migrating objects + - object-file: lift ODB reprepare out of packfile flush + + When 'core.fsyncMethod' is set to 'batch', the ODB transaction + failed to properly flush large blob packfiles residing in the + temporary directory before migrating the directory's contents to the + main object store. The execution sequence has been corrected by + performing the packfile flush before the temporary directory + migration, averting failure. + + Needs review. + source: + + +* ak/refs-files-root-ref-lock (2026-09-11) 1 commit + - refs/files: avoid packed-refs lock for root ref deletion + + The files backend has been updated to avoid unconditionally locking + the 'packed-refs' file when deleting a root ref (which are never + packed). + + Will merge to 'next'? + cf. + source: <20260912014609.535922-1-skariel@gmail.com> + + +* tb/rerere-wait-for-merge-rr-lock (2026-09-14) 2 commits + - rerere: go on at a conflict when the lock stays busy + - rerere: wait for MERGE_RR.lock, and let the gc skip it + + Instead of failing to record conflicts to be resolved immediately, + wait while "rerere gc" is ongoing. + + Needs review. + source: + + +* tz/doc-pack-refs-and-refs-fixes (2026-09-14) 2 commits + - doc/refs: backtick-quote commands and options consistently + - doc/pack-refs: convert synopsis and options to new style + + Doc updates. + + Expecting a reroll. + cf. <20260914154350.LjUwy8DF@teonanacatl.net> + source: <20260914124630.154107-1-tmz@pobox.com> + +-------------------------------------------------- +[Cooking] + * pp/midx-write-skip-empty (2026-09-08) 1 commit - midx-write: skip writes with no object entries @@ -83,64 +339,6 @@ Release tarballs are available at: cf. source: <20260911171044.GA1609692@coredump.intra.peff.net> --------------------------------------------------- -[Graduated to 'master'] - -* jk/ci-bump-debian-to-12 (2026-09-05) 1 commit - (merged to 'next' on 2026-09-07 at 10f7f0d2c3) - + ci: bump debian-11 job to debian-12 - - The CI job for Debian 11 has been updated to use Debian 12, as the - former is now out of the LTS period. - - Graduated to 'master'. - source: <20260905135822.GA3914811@coredump.intra.peff.net> - - -* jk/ci-use-system-asciidoctor (2026-09-02) 2 commits - (merged to 'next' on 2026-09-08 at e7621b4bad) - + ci: drop ALREADY_HAVE_ASCIIDOCTOR variable - + ci: fix missing Ruby dependency in "documentation" job - - The CI script to install dependencies for the documentation build - has been updated to install asciidoctor directly via the system - package manager instead of pinning to an older version via gem. - Additionally, an obsolete variable used for retired Azure Pipelines - environments has been removed. - - Graduated to 'master'. - cf. - source: <20260902071409.GA641414@coredump.intra.peff.net> - - -* js/mingw-build-updates (2026-09-09) 13 commits - (merged to 'next' on 2026-09-10 at 0ce62cfef4) - + t0060: adjust the code style - + mingw: allow `git.exe` to be used instead of the "Git wrapper" - + mingw: ensure valid CTYPE - + mingw: always define `ETC_*` for MSYS2 environments - + windows: skip linking `git-` for built-ins - + mingw: rely on MSYS2's metadata instead of hard-coding it - + mingw: only enable the MSYS2-specific stuff when compiling in MSYS2 - + mingw: set the prefix and HOST_CPU as per MSYS2's settings - + mingw: avoid over-specifying `--pic-executable` - + mingw: only use -Wl,--large-address-aware for 32-bit builds - + mingw: drop the -D_USE_32BIT_TIME_T option - + mingw: stop hard-coding `CC = gcc` - + mingw: include the Python parts in the build - - A collection of patches from Git for Windows has been upstreamed, - mostly focusing on simplifying and robustifying build configurations - for MinGW/MSYS2, dropping obsolete compatibility options, and allowing - the main 'git.exe' to be used directly without the extra wrapper - process on Windows. - - Graduated to 'master'. - cf. <9f078382-411f-4865-9f01-4fe0b1ee118f@kdbg.org> - source: - --------------------------------------------------- -[Cooking] * vm/advice-config-global-hint (2026-09-10) 4 commits . fixup! advice: introduce advice scoping mechanism @@ -154,22 +352,11 @@ Release tarballs are available at: Waiting for response. cf. + cf. + cf. source: <20260910085353.109373-1-ub4nal@mail.ru> -* ta/lint-gitlink-older-perl-fix (2026-09-07) 1 commit - (merged to 'next' on 2026-09-10 at 4ca90b4922) - + lint-gitlink: don't use empty lower bound in .{0,8} - - The development helper script to lint gitlink references in the - documentation has been updated to avoid a newer Perl regular - expression syntax that breaks on older Perl versions. - - Will merge to 'master'. - cf. - source: <20260907184858.13475-1-taahol@utu.fi> - - * jc/rust-cargo-build-target (2026-09-10) 1 commit - rust: respect CARGO_BUILD_TARGET when locating build output @@ -178,7 +365,7 @@ Release tarballs are available at: to locate it. The build system has been updated to respect the 'CARGO_BUILD_TARGET' environment variable. - Needs review. + Will merge to 'next'? source: <20260910102013.1235066-2-chewi@gentoo.org> @@ -218,7 +405,9 @@ Release tarballs are available at: Additionally, the `--ref-storage-format` option has been updated to accept payloads in the form `://`. - Needs review. + Will merge to 'next'? + cf. + cf. source: <20260909-b4-pks-unify-ref-storage-format-v3-0-ca041fb40ad8@pks.im> @@ -226,7 +415,6 @@ Release tarballs are available at: - lint-docs: check the guide list in command-list.txt - command-list.txt: add gitformat-loose(5) and gitpacking(7) - Merge branch 'kh/doc-datamodel' into ta/command-list-guides-sync-lint - (this branch uses kh/doc-datamodel.) A new linter test has been added to Documentation/lint-manpages.sh to ensure that all non-command manual pages (guides and developer @@ -242,31 +430,26 @@ Release tarballs are available at: * ap/var-broken-down-idents (2026-09-09) 1 commit - var: support broken-down idents, signing key, multiple args, and -z + The 'git var' command has been extended to expose individual + identity components ('GIT_AUTHOR_NAME', etc.) and the commit + signing key, and can now accept multiple variables to query at + once, safely formatting the output with a new '-z' option. + Needs review. source: -* bc/maintenance-doc-markup-fix-for-asciidoc (2026-09-09) 1 commit - (merged to 'next' on 2026-09-11 at 9a68d8efd6) - + doc: fix conjoined maintenance strategies in git-config(1) - - Mark-up fix for 'git maintenance' documentation pages. - - Will merge to 'master'. - cf. - source: <20260910-maintenance-doc-bullet-fix-v2-1-3ed1c75e24b2@brighamcampbell.com> - - * ks/history-commit-leakfix (2026-09-10) 1 commit - builtin/history: unuse the commit buffer after use - Looking good. + Will merge to 'next'? cf. <20260910160254.GB251185@coredump.intra.peff.net> + cf. source: <20260910150021.348548-1-kaartic.sivaraam@gmail.com> -* tc/push-force-if-includes-fixes (2026-09-10) 2 commits - - push: fix --force-if-includes detached HEAD advice +* tc/push-force-if-includes-fixes (2026-09-13) 2 commits + - push: fix --force-if-includes non-branch advice - push: check pushed ref for --force-if-includes The --force-if-includes protection for git push has been updated to @@ -277,63 +460,8 @@ Release tarballs are available at: ref cannot be verified locally. Waiting for response. - cf. - cf. - source: <20260910230506.1631656-1-tyler@tylercipriani.com> - - -* as/cherry-pick-no-commit-doc (2026-09-05) 2 commits - (merged to 'next' on 2026-09-09 at 2b9226bbc0) - + doc: cherry-pick: note --no-commit skips CHERRY_PICK_HEAD - + t3507: check no CHERRY_PICK_HEAD after conflicting --no-commit - - The documentation for 'git cherry-pick' has been updated to clarify - that the '--no-commit' option intentionally skips setting the - 'CHERRY_PICK_HEAD' ref. A test has also been added to ensure this - behavior holds even when the operation stops for conflicts. - - Will merge to 'master'. - source: <20260905171332.34670-1-f@lex.la> - - -* tn/fetch-pack-trace-packfile-uri (2026-07-26) 1 commit - (merged to 'next' on 2026-09-08 at dd3c024f52) - + fetch-pack: trace packfile URI downloads - - The process of downloading packfile URIs in protocol v2 has been - instrumented with a Trace2 region. This visibility allows tracking - the cumulative time spent downloading external packs and the number - of advertised URIs without emitting a separate event per pack. - - Will merge to 'master'. - cf. - source: <20260726083310.16180-2-tnyman@openai.com> - - -* jc/history-missing-tree-errorfix (2026-09-02) 1 commit - (merged to 'next' on 2026-09-10 at 36601bf096) - + history: do not dereference NULL when parent tree is missing - - Running "git history" in a corrupt repository can (unsurprisingly) - segfault when a necessary tree object is not found. - - Will merge to 'master'. - cf. - source: <20260903063657.2067303-1-zkd18cjb@mail.ustc.edu.cn> - - -* jc/pathspec-match-const (2026-09-03) 1 commit - (merged to 'next' on 2026-09-07 at 5a00749668) - + pathspec: match and original in pathspec_item are const - (this branch is used by yt/pathspec-negative-prefix.) - - Two members in "struct pathspec_item" were of type "char *", but - nobody updated the string through these pointers. They have been - made "const char *" instead. - - Will merge to 'master'. - cf. <4439BA70-2C03-499D-B3CE-E43700C0A8DA@ytausch.de> - source: + cf. + source: <20260914040018.76111-1-tyler@tylercipriani.com> * ps/tune-rerere-gc (2026-09-04) 2 commits @@ -376,8 +504,9 @@ Release tarballs are available at: contend for locks or delete open packs while the sequence is in progress. - Waiting for response. - cf. + Expecting a reroll. + cf. + cf. source: @@ -426,20 +555,6 @@ Release tarballs are available at: source: <20260911-pks-odb-registering-in-memory-sources-v3-0-447e6882ed14@pks.im> -* jk/submodule-error-leak (2026-09-01) 2 commits - (merged to 'next' on 2026-09-07 at d3bf064487) - + submodule--helper: free URL when repository setup fails - + repository: make repo_clear() idempotent - - The error path in 'git submodule--helper' has been updated to plug a - memory leak when a repository handle could not be obtained, - leveraging an updated idempotent repo_clear(). - - Will merge to 'master'. - cf. - source: <20260902055117.GA41587@coredump.intra.peff.net> - - * sa/rev-list-missing-only (2026-09-03) 1 commit (merged to 'next' on 2026-09-07 at b21b667619) + rev-list: add --missing-only option to filter output @@ -468,19 +583,17 @@ Release tarballs are available at: source: <761c3f1b-e280-48b1-a2ad-770b68be3434@slotpi01m90> -* yt/pathspec-negative-prefix (2026-09-03) 2 commits - - dir: find common prefix among non-exclude pathspec items +* yt/pathspec-negative-prefix (2026-09-14) 2 commits + - dir: preserve pathspec prefix optimization with leading excludes - dir: do not apply prefix to negative pathspecs - Merge branch 'jc/pathspec-match-const' into yt/pathspec-negative-prefix - (this branch uses jc/pathspec-match-const.) The pathspec matching logic has been updated to avoid out-of-bounds memory accesses when a negative pathspec is shorter than the common prefix of positive pathspecs. - Waiting for response. - cf. - source: <887D6D84-F76E-4DCB-9633-CD78DA02BCC5@ytausch.de> + Needs review. + source: <7CB757FB-1F2D-4EE6-8C31-8C2CD6D42397@ytausch.de> * cc/early-scan-options (2026-09-02) 6 commits @@ -599,57 +712,37 @@ Release tarballs are available at: creation time during clone, which drops the unused ad-hoc alternate writing API, simplifying the object database backend interface. - Waiting for review. + Will merge to 'next'? cf. - cf. - cf. + cf. source: <20260910-pks-odb-write-alternates-at-creation-time-v5-0-8d10c4238edc@pks.im> * ps/odb-pluggable-fsck (2026-09-11) 10 commits - - builtin/fsck: move loose object verification into the loose source - - builtin/fsck: move multi-pack index verification into the packed source - - builtin/fsck: move bitmap verification into the packed source - - builtin/fsck: move reverse index verification into the packed source - - builtin/fsck: move packfile verification into the packed source - - odb: provide infrastructure for pluggable fsck checks - - builtin/fsck: don't check alternates with "--no-full" - - builtin/fsck: de-globalize option handling - - builtin/fsck: merge `fsck_obj_buffer()` and `fsck_obj()` - - builtin/fsck: use `fsck_obj_buffer()` when checking loose objects - - Merge branch 'ps/odb-eagerly-load-alternates' into ps/odb-pluggable-fsck - - Merge branch 'ps/odb-pluggable-pack-generation' into ps/odb-pluggable-fsck + (merged to 'next' on 2026-09-13 at ea4130138d) + + builtin/fsck: move loose object verification into the loose source + + builtin/fsck: move multi-pack index verification into the packed source + + builtin/fsck: move bitmap verification into the packed source + + builtin/fsck: move reverse index verification into the packed source + + builtin/fsck: move packfile verification into the packed source + + odb: provide infrastructure for pluggable fsck checks + + builtin/fsck: don't check alternates with "--no-full" + + builtin/fsck: de-globalize option handling + + builtin/fsck: merge `fsck_obj_buffer()` and `fsck_obj()` + + builtin/fsck: use `fsck_obj_buffer()` when checking loose objects + + Merge branch 'ps/odb-eagerly-load-alternates' into ps/odb-pluggable-fsck + + Merge branch 'ps/odb-pluggable-pack-generation' into ps/odb-pluggable-fsck The consistency checks for the object database (fsck) have been decoupled from the generic builtin implementation and moved into the backend-specific object source layers, making them pluggable for different object storage formats. - Will merge to 'next'? + Will merge to 'master'. cf. source: <20260911-pks-odb-source-fsck-v3-0-ef2fdc085e38@pks.im> -* en/no-amend-during-conflicts (2026-09-01) 5 commits - (merged to 'next' on 2026-09-07 at e1faacbfe1) - + commit: refuse partial commits during conflict resolution - + commit: refuse to amend during conflict resolution - + commit: reword the empty-commit rebase amend error - + commit: allow a partial commit when a rebase pick becomes empty - + commit: clarify FROM_REBASE_PICK and is_from_rebase() names - - Teach 'am', 'revert', and 'rebase' that running 'commit --amend' or a - partial 'commit ' makes no sense during operations that stop - and return control to the user to resolve conflicts left in the - working tree, just like 'cherry-pick' and 'merge' do. - - Will merge to 'master'. - cf. <1c3f07e0-63c0-483d-8e46-e4edbdd6991a@gmail.com> - cf. <4ed77ebd-e4ba-4d37-9c92-d987b70135a6@gmail.com> - cf. - source: - - * as/utimensat-utimes (2026-08-21) 3 commits - compat/posix: drop legacy header and shims - treewide: use utimensat(2) instead of legacy utime(3p) @@ -664,7 +757,7 @@ Release tarballs are available at: source: -* kn/receive-report-hook (2026-09-09) 4 commits +* kn/receive-report-hook (2026-09-10) 4 commits - hook: introduce the receive-report hook - receive-pack: move message generation to separate function - receive-pack: drop static variables to track report status version @@ -674,9 +767,8 @@ Release tarballs are available at: reference updates and allows the server to filter or modify the packet-line status report sent back to the client. - Expecting a reroll. - cf. - source: <20260909-758-introduce-hook-v9-0-3043d417e0ee@gmail.com> + Will merge to 'next'? + source: <20260910-758-introduce-hook-v10-0-06f9c506631c@gmail.com> * ap/http-preserve-wwwauth-redirect (2026-08-19) 1 commit @@ -692,22 +784,6 @@ Release tarballs are available at: source: <20260819-http-preserve-wwwauth-redirect-v2-1-4c61039432b0@nvidia.com> -* kh/doc-datamodel (2026-09-05) 4 commits - (merged to 'next' on 2026-09-09 at b951b38ff5) - + doc: datamodel: link to the glossary - + doc: glossary: link four of the terms to gitdatamodel(7) - + doc: git: link to the gitdatamodel(7) tutorial - + doc: git: list gitdatamodel(7) as a concept guide - (this branch is used by ta/command-list-guides-sync-lint.) - - The gitdatamodel documentation page has been linked from a handful - of key documentaiton pages. - - Will merge to 'master'. - cf. - source: - - * kh/format-rev-more-options (2026-08-18) 5 commits - format-rev: learn --abbrev, --color, and --date - doc: rev-list-options.adoc: factor out --date alts @@ -941,7 +1017,7 @@ Release tarballs are available at: subcommand to fold a range of commits into a single commit, with any descendants replayed on top. - Looking good. + Will merge to 'next'? cf. source: @@ -1001,133 +1077,3 @@ Release tarballs are available at: Expecting a reroll. cf. <8f0a076b-4822-44e2-a842-cc1e39ae1c1d@app.fastmail.com> source: - --------------------------------------------------- -[Discarded] - -* ps/libgit-in-subdir (2026-07-12) 2 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 - - The source files for 'libgit.a' have been moved into a new 'lib/' - directory to clean up the top-level directory and clearly separate - library code. This topic has been ejected for now, as it causes too - many evil merges with other topics. - - Retracted. - cf. - source: <20260713-pks-libgit-in-subdir-v4-0-696240876eb1@pks.im> - - -* hs/rebase-continue-edit (2026-07-21) 1 commit - . rebase: add --[no-]edit to --continue - - Support for skipping the editor when continuing a rebase after - conflict resolution has been added with the '--no-edit' option, and - forcing it with '--edit'. A new configuration variable - 'rebase.noEdit' can be used to set the default behavior. - - Waiting for response for too long, discarded. - cf. - cf. - source: <20260721140443.1809379-2-hugo@hsal.es> - - -* sn/rebase-update-refs-symrefs (2026-07-22) 2 commits - . rebase: guard non-branch symref targets - . rebase: skip branch symref aliases - - 'git rebase --update-refs' has been taught to resolve local branch - symrefs to their referents before queuing updates, ensuring aliases of - the current branch are skipped and duplicate updates are avoided to - prevent failures when branch aliases are present. - - Waiting for response for too long, discarded. - cf. <1eba5fb2-ab76-41e9-955d-e283256ad25d@gmail.com> - source: - - -* tb/pack-with-duplicates (2026-07-24) 5 commits - . pack-bitmap: handle duplicate pack entries during MIDX reuse - . test-tool bitmap: reject packs with duplicate objects - . midx: verify duplicate pack entries by OID and offset - . packfile: recover delta cycles through duplicate entries - . t5308: test reverse indexes with duplicate objects - - The handling of packfiles with duplicate object entries has been - hardened. Specifically, reverse index lookup, delta cycle - recovery, multi-pack-index verification, and pack reuse paths have - been updated to correctly handle or gracefully reject duplicate - entries. - - Waiting for response for too long, discarded. - source: - - -* cl/regexec-macos-leak (2026-07-28) 2 commits - . SQUASH??? - . regexec: work around macOS TRE leak on invalid UTF-8 - - A compatibility workaround has been introduced for macOS to address - a memory leak in the system regex engine when it encounters invalid - multibyte sequences. The workaround segments the input buffer at - invalid byte boundaries and searches each valid segment separately - using regexec(), avoiding the leaking path. - - Waiting for response for too long, discarded. - cf. - cf. - source: <20260728052538.12429-1-chungmin@chungminlee.com> - - -* ps/fetch-packfile-uris-parallel (2026-08-21) 2 commits - . fetch-pack: allow parallelizing packfile URI fetches - . fetch-pack: prepare for threaded fetching of packfile URIs - - The `git fetch` and `git clone` commands have been optimized to - download packfile URIs in parallel when the new - `fetch.packfileURIThreads` configuration is set, significantly - speeding up fetches from servers that advertise multiple packfiles. - - Retracted for now. - cf. - source: <20260821-pks-parallelize-fetching-packfile-uris-v1-0-0df52d9427ce@pks.im> - - -* jc/die-for-incompatible-opts (2026-08-27) 1 commit - . die_for_incompatible_opts(): unbounded number of options - - The die_for_incompatible_opt[234]() family of functions has been - generalized to handle an arbitrary number of mutually exclusive - options via a variadic function. - - Retracted. - cf. - source: - - -* zy/apply-abandoned-header-fix (2026-07-01) 1 commit - . apply: avoid leaking abandoned git-header state - - A candidate 'git diff' header parsed by 'git apply' has been isolated - in a temporary structure, preventing any partially parsed state from - polluting the main patch structure and causing assertions to trip if - the header is ultimately rejected. - - Discarded. - cf. - source: <20260702041759.51572-1-zhihao.yao@njit.edu> - - -* ps/ci-depends-on-ruby (2026-09-01) 1 commit - (merged to 'next' on 2026-09-08 at d0859510f8) - . ci: fix missing Ruby dependency in "documentation" job - - The CI job that builds the documentation failed because it lacked - the 'gem' command. The 'asciidoc' package apparently stopped pulling - in the 'ruby' package as a transitive dependency. The CI script has - been updated to explicitly install 'ruby'. - - Discarded; now a part of jk/ci-use-system-asciidoctor topic. - source: <20260901-b4-pks-ci-fix-documentation-job-v1-1-a8257ee2a9a4@pks.im>