What's cooking (2026/07 #08)
parent
ccbb5aad8a
commit
87b88b82c0
|
|
@ -1,10 +1,10 @@
|
|||
To: git@vger.kernel.org
|
||||
Subject: What's cooking in git.git (Jul 2026, #07)
|
||||
X-master-at: 44de1520f08d1dfebc3ab2d9f644208eaa5ac925
|
||||
X-next-at: 700c83d4f35453396241ab93a8de5d321fb3fa83
|
||||
Subject: What's cooking in git.git (Jul 2026, #08)
|
||||
X-master-at: 41365c2a9ba347870b80881c0d67454edd22fd49
|
||||
X-next-at: 94291ce1a99ad9495cc721f5c36f1b96561b32c2
|
||||
Bcc: lwn@lwn.net, gitster@pobox.com
|
||||
|
||||
What's cooking in git.git (Jul 2026, #07)
|
||||
What's cooking in git.git (Jul 2026, #08)
|
||||
-----------------------------------------
|
||||
|
||||
Here are the topics that have been cooking in my tree. Commits
|
||||
|
|
@ -17,7 +17,7 @@ A topic without enough support may be discarded after a long period
|
|||
of no activity (of course, it can be resubmitted when new interest
|
||||
arises).
|
||||
|
||||
The second batch of topics have now graduated to the 'master'
|
||||
The fourth batch of topics have now graduated to the 'master'
|
||||
branch.
|
||||
|
||||
Copies of the source code to Git live in many repositories, and the
|
||||
|
|
@ -49,124 +49,318 @@ Release tarballs are available at:
|
|||
https://www.kernel.org/pub/software/scm/git/
|
||||
|
||||
--------------------------------------------------
|
||||
[Graduated to 'master']
|
||||
[New Topics]
|
||||
|
||||
* jc/history-message-prep-fix (2026-06-29) 1 commit
|
||||
(merged to 'next' on 2026-07-06 at 00534a21ce)
|
||||
+ history: streamline message preparation and plug file stream leak
|
||||
* tl/gitweb-shorten-hashes-with-modes (2026-07-17) 1 commit
|
||||
- gitweb: shorten index hashes with trailing file modes
|
||||
|
||||
A write file stream resource leak has been fixed as part of a code
|
||||
cleanup.
|
||||
The object ID shortening and linking in the 'commitdiff' view of
|
||||
'gitweb' has been corrected to work even when the index line carries
|
||||
a trailing file mode.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <akO1mhi2u2PntLbt@pks.im>
|
||||
source: <xmqqmrwdxrat.fsf@gitster.g>
|
||||
Needs review.
|
||||
source: <SA1PR10MB9977150C823C0751E53B150D5AF1C62@SA1PR10MB997715.namprd10.prod.outlook.com>
|
||||
|
||||
|
||||
* jk/bloom-leak-fixes (2026-06-30) 3 commits
|
||||
(merged to 'next' on 2026-07-08 at 3b9a1cda3f)
|
||||
+ 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
|
||||
* kj/repo-info-more-path-keys (2026-07-17) 7 commits
|
||||
- repo: add path.git-prefix path key
|
||||
- repo: add path.grafts with absolute and relative suffix formatting
|
||||
- repo: add path.index with absolute and relative suffix formatting
|
||||
- repo: add path.hooks with absolute and relative suffix formatting
|
||||
- repo: add path.objects with absolute and relative suffix formatting
|
||||
- repo: add path.superproject-working-tree with absolute and relative suffixes
|
||||
- repo: add path.toplevel with absolute and relative suffix formatting
|
||||
|
||||
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 have been plugged.
|
||||
The 'git repo info' command has been taught more keys to output
|
||||
paths of various repository components (such as the working tree
|
||||
root, superproject working tree, object database, etc.), supporting
|
||||
both absolute and relative path formats.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <b641aed4-ad52-477b-b1d8-9d8e470be46f@gmail.com>
|
||||
cf. <xmqqo6gqobrt.fsf@gitster.g>
|
||||
source: <20260701063538.GA2579765@coredump.intra.peff.net>
|
||||
Needs review.
|
||||
source: <20260717133015.32040-1-jayatheerthkulkarni2005@gmail.com>
|
||||
|
||||
|
||||
* mg/meson-hook-list-buildfix (2026-07-01) 1 commit
|
||||
(merged to 'next' on 2026-07-08 at 10763a0ebc)
|
||||
+ meson: restore hook-list.h to builtin_sources
|
||||
* sk/userdiff-swift (2026-07-17) 1 commit
|
||||
- userdiff: add support for Swift
|
||||
|
||||
A racy build failure under Meson has been corrected by ensuring that
|
||||
the generated header file 'hook-list.h' is built before compiling
|
||||
files in 'builtin_sources' that depend on it.
|
||||
Userdiff patterns for Swift have been added, with support for
|
||||
Swift-specific constructs such as attributes, modifiers, failable
|
||||
initializers, and generics.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <akZGJP1kVtjBFN_e@pks.im>
|
||||
source: <20260701193928.358825-1-floppym@gentoo.org>
|
||||
Waiting for response.
|
||||
cf. <2a3a73c5-5e90-44a3-bf6a-6e98ce5e5a59@kdbg.org>
|
||||
source: <20260717140232.6722-1-diy2903@gmail.com>
|
||||
|
||||
|
||||
* ps/history-drop (2026-07-01) 11 commits
|
||||
(merged to 'next' on 2026-07-08 at 6fb84708a4)
|
||||
+ builtin/history: implement "drop" subcommand
|
||||
+ builtin/history: split handling of ref updates into two phases
|
||||
+ replay: expose `replay_result_queue_update()`
|
||||
+ reset: stop assuming that the caller passes in a clean index
|
||||
+ reset: allow the caller to specify the current HEAD object
|
||||
+ reset: introduce ability to skip updating HEAD
|
||||
+ reset: introduce dry-run mode
|
||||
+ reset: modernize flags passed to `reset_working_tree()`
|
||||
+ reset: rename `reset_head()`
|
||||
+ reset: drop `USE_THE_REPOSITORY_VARIABLE`
|
||||
+ read-cache: split out function to drop unmerged entries to stage 0
|
||||
* ps/odb-move-loose-object-writing (2026-07-17) 10 commits
|
||||
- object-file: move logic to write loose objects
|
||||
- object-file: move `force_object_loose()`
|
||||
- object-file: force objects loose via generic interface
|
||||
- object-file: fix memory leak in `force_object_loose()`
|
||||
- odb: support setting mtime when writing objects
|
||||
- odb: lift object existence check out of the "loose" backend
|
||||
- odb: compute object hash in `odb_write_object_ext()`
|
||||
- t/u-odb-inmemory: implement wrapper for writing objects
|
||||
- odb: compute compat object ID in `odb_write_object_ext()`
|
||||
- Merge branch 'jt/receive-pack-use-odb-transactions' into HEAD
|
||||
(this branch uses jt/receive-pack-use-odb-transactions.)
|
||||
|
||||
The experimental 'git history' command has been taught a new 'drop'
|
||||
subcommand to remove a commit, with its descendants replayed onto its
|
||||
parent.
|
||||
The logic to write loose objects has been refactored and moved from
|
||||
'object-file.c' to the loose backend source file 'odb/source-loose.c',
|
||||
making the loose backend more self-contained. This is achieved by
|
||||
first refactoring 'force_object_loose()' to use generic ODB write
|
||||
interfaces instead of loose-backend internals.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <xmqq1pdmprbk.fsf@gitster.g>
|
||||
cf. <CAP8UFD3OAktVQsLuqBNFH2uhEO31PH8ZF3ZT1ZW8k++XE8YLPw@mail.gmail.com>
|
||||
source: <20260701-b4-pks-history-drop-v8-0-19b5cdf1facd@pks.im>
|
||||
Needs review.
|
||||
source: <20260717-pks-odb-move-loose-object-writing-v1-0-46446a3cb5b7@pks.im>
|
||||
|
||||
|
||||
* ps/odb-drop-whence (2026-07-02) 7 commits
|
||||
(merged to 'next' on 2026-07-08 at f43ee51cc3)
|
||||
+ odb: document object info fields
|
||||
+ odb: drop `whence` field from object info
|
||||
+ treewide: convert users of `whence` to the new source field
|
||||
+ odb: add `source` field to struct object_info_source
|
||||
+ odb: make backend-specific fields optional
|
||||
+ packfile: thread odb_source_packed through packed_object_info()
|
||||
+ Merge branch 'ps/odb-source-packed' into ps/odb-drop-whence
|
||||
(this branch is used by ps/odb-for-each-object-filter.)
|
||||
* pw/rebase-fixup-fixes (2026-07-17) 2 commits
|
||||
- rebase: remember fixup -c after skipping fixup/squash
|
||||
- rebase -i: fix counting of fixups after rebase --skip
|
||||
|
||||
The 'whence' field in 'struct object_info' has been removed. The
|
||||
backend-specific object information retrieval has been refactored into
|
||||
an opt-in 'struct object_info_source' structure.
|
||||
Two bugs in how 'git rebase' handles skipped 'fixup' and 'squash'
|
||||
commands have been fixed. One bug caused an incorrect commit count
|
||||
to be shown in the template message when multiple commands were
|
||||
skipped, and another caused the editor not to be opened when the
|
||||
final command in a chain containing 'fixup -c' was skipped.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <xmqqv7b0rmt6.fsf@gitster.g>
|
||||
source: <20260702-b4-pks-odb-drop-whence-v2-0-b0af7468ad95@pks.im>
|
||||
Needs review.
|
||||
source: <cover.1784304378.git.phillip.wood@dunelm.org.uk>
|
||||
|
||||
|
||||
* ps/refs-writing-subcommands (2026-07-06) 5 commits
|
||||
(merged to 'next' on 2026-07-08 at f001147283)
|
||||
+ builtin/refs: add "rename" subcommand
|
||||
+ builtin/refs: add "create" subcommand
|
||||
+ builtin/refs: add "update" subcommand
|
||||
+ builtin/refs: add "delete" subcommand
|
||||
+ builtin/refs: drop `the_repository`
|
||||
(this branch is used by ps/refs-wo-the-repository.)
|
||||
* tc/last-modified-bloom (2026-07-17) 4 commits
|
||||
- last-modified: keep per-path Bloom filters for wildcard pathspecs
|
||||
- last-modified: check pathspec against Bloom filter first
|
||||
- revision: expose check for paths maybe changed in Bloom filter
|
||||
- revision: move bloom keyvec precondition into function
|
||||
|
||||
The 'git refs' toolbox has been extended with new 'create', 'delete',
|
||||
'update', and 'rename' subcommands to create, delete, update, and
|
||||
rename references, respectively.
|
||||
The 'git last-modified' command has been optimized by using Bloom
|
||||
filters. It now reuses revision walk filtering logic from 'git log'
|
||||
to pre-filter commits, and maintains per-path Bloom filters even
|
||||
when wildcard pathspecs are used.
|
||||
|
||||
Graduated to 'master'.
|
||||
source: <20260706-pks-refs-writing-subcommands-v4-0-d51f6ce7f830@pks.im>
|
||||
Expecting a reroll.
|
||||
cf. <20260718083757.GD22588@coredump.intra.peff.net>
|
||||
cf. <20260718081407.GC22588@coredump.intra.peff.net>
|
||||
cf. <20260718075700.GB22588@coredump.intra.peff.net>
|
||||
cf. <87cxwl1lb4.fsf@emacs.iotcl.com>
|
||||
source: <20260717-toon-speed-up-last-modified-v1-0-410418f18614@iotcl.com>
|
||||
|
||||
|
||||
* rs/blame-abbrev-marks (2026-07-06) 1 commit
|
||||
(merged to 'next' on 2026-07-08 at e4962bd3d5)
|
||||
+ blame: reserve mark column only if necessary
|
||||
* hn/bisect-auto-reset (2026-07-17) 3 commits
|
||||
- bisect: add --auto-reset to leave when done
|
||||
- bisect: let bisect_reset() optionally check out quietly
|
||||
- bisect: read run output from the open descriptor
|
||||
|
||||
The alignment of commit object name abbreviations in 'git blame'
|
||||
output has been optimized to reserve a column for marks (caret,
|
||||
question mark, or asterisk) only when such marks are actually shown.
|
||||
The 'git bisect' command has been taught a '--auto-reset[=<where>]'
|
||||
option that tells the command to automatically run 'git bisect reset'
|
||||
to jump back to the original state or to the found culprit.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <xmqqzf0397u1.fsf@gitster.g>
|
||||
source: <92991b5e-0667-4315-89d5-1514a5499297@web.de>
|
||||
Waiting for response.
|
||||
cf. <1139ae20-f08b-4cf2-b779-42328831e13e@kdbg.org>
|
||||
cf. <b79a479b-d279-4ac9-a368-6eb8edfed937@kdbg.org>
|
||||
source: <pull.2335.v2.git.git.1784312854.gitgitgadget@gmail.com>
|
||||
|
||||
--------------------------------------------------
|
||||
[New Topics]
|
||||
[Graduated to 'master']
|
||||
|
||||
* ih/precompose-flex-array (2026-07-04) 1 commit
|
||||
(merged to 'next' on 2026-07-09 at 737a87f65e)
|
||||
+ precompose_utf8: use a flex array for d_name
|
||||
|
||||
The UTF-8 precomposition wrapper on macOS has been updated to use a
|
||||
flexible array member to represent the name of a directory entry,
|
||||
preventing fortified libc checks from failing when the name is
|
||||
reallocated to be larger than 'NAME_MAX' bytes.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <20260703050800.GA29216@tb-raspi4>
|
||||
source: <20260704233724.16928-1-ihar.hrachyshka@gmail.com>
|
||||
|
||||
|
||||
* jk/git-hash-cleanups (2026-07-07) 8 commits
|
||||
(merged to 'next' on 2026-07-09 at 12a4856545)
|
||||
+ hash: check ctx->active flag in all wrapper functions
|
||||
+ http: use idempotent git_hash_discard()
|
||||
+ csum-file: use idempotent git_hash_discard()
|
||||
+ hash: make git_hash_discard() idempotent
|
||||
+ hash: document function pointers and wrappers
|
||||
+ hash: convert remaining direct function calls
|
||||
+ hash: use git_hash_init() consistently
|
||||
+ Merge branch 'jk/hash-algo-leak-fixes' into jk/git-hash-cleanups
|
||||
(this branch uses jk/hash-algo-leak-fixes.)
|
||||
|
||||
The 'git_hash_*()' wrappers have been updated to be used consistently
|
||||
across the codebase instead of direct calls to members of 'struct
|
||||
git_hash_algo', and 'git_hash_discard()' has been made idempotent to
|
||||
simplify cleanups.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <ak4E4-jmgYFSI75O@pks.im>
|
||||
source: <20260708035235.GA41491@coredump.intra.peff.net>
|
||||
|
||||
|
||||
* jk/hash-algo-leak-fixes (2026-07-02) 9 commits
|
||||
(merged to 'next' on 2026-07-09 at 7db7b74972)
|
||||
+ hash: add platform-specific discard functions
|
||||
+ hash: fix memory leak copying sha256 gcrypt handles
|
||||
+ http: discard hash in dumb-http http_object_request
|
||||
+ check_stream_oid(): discard hash on read error
|
||||
+ patch-id: discard hash when done
|
||||
+ csum-file: provide a function to release checkpoints
|
||||
+ csum-file: always finalize or discard hash
|
||||
+ hash: add discard primitive
|
||||
+ csum-file: drop discard_hashfile()
|
||||
(this branch is used by jk/git-hash-cleanups.)
|
||||
|
||||
Various code paths that initialize a cryptographic hash context but
|
||||
bail out or finish without calling 'git_hash_final()' have been taught
|
||||
to call 'git_hash_discard()' to release allocated resources, fixing
|
||||
memory leaks when Git is built with non-default backends like
|
||||
'OpenSSL' or 'libgcrypt'.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <aktIIKuReMxJmDsi@pks.im>
|
||||
source: <20260702075234.GA1548258@coredump.intra.peff.net>
|
||||
|
||||
|
||||
* js/ci-dockerized-pid-limit (2026-07-04) 1 commit
|
||||
(merged to 'next' on 2026-07-09 at cd80e673a5)
|
||||
+ ci(dockerized): raise the PID limit for private repositories
|
||||
|
||||
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.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <xmqqh5medmzh.fsf@gitster.g>
|
||||
source: <pull.2164.v2.git.1783155124926.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
* js/coverity-fixes (2026-07-05) 12 commits
|
||||
(merged to 'next' on 2026-07-09 at 1823fe297c)
|
||||
+ 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-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
|
||||
|
||||
Various resource leaks, invalid file descriptor closures, and process
|
||||
handle ownership issues flagged by Coverity have been fixed.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <xmqqa4s238lg.fsf@gitster.g>
|
||||
source: <pull.2163.v2.git.1783239870.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
* js/wincred-fixes (2026-07-16) 2 commits
|
||||
(merged to 'next' on 2026-07-16 at 8c5927f06f)
|
||||
+ wincred: prevent silent credential loss when storing OAuth tokens
|
||||
+ wincred: avoid memory corruption when erasing a credential
|
||||
|
||||
The 'wincred' credential helper has been updated to avoid memory
|
||||
corruption when erasing credentials and to prevent silent credential
|
||||
loss when storing OAuth tokens, by correcting buffer allocations and
|
||||
arguments passed to safe-CRT APIs.
|
||||
|
||||
Graduated to 'master'.
|
||||
source: <pull.2182.git.1784212072.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
* mm/sideband-ansi-sgr-colon-fix (2026-05-13) 1 commit
|
||||
(merged to 'next' on 2026-07-09 at fd2b979b73)
|
||||
+ sideband: allow ANSI SGR with colon-separated subfields
|
||||
|
||||
The sideband demultiplexer has been updated to recognize ANSI SGR
|
||||
escape sequences that use colon-separated subfields (e.g., for
|
||||
256-color or true-color codes).
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <8addf7c0-ae39-f1c0-20ab-52114702aaf6@gmx.de>
|
||||
source: <20260513070803.163546-1-grawity@nullroute.lt>
|
||||
|
||||
|
||||
* ps/t-fixes-for-git-test-long (2026-07-05) 9 commits
|
||||
(merged to 'next' on 2026-07-09 at c5b13248c8)
|
||||
+ gitlab-ci: enable "GIT_TEST_LONG"
|
||||
+ gitlab-ci: disable RAM disk on macOS jobs
|
||||
+ t: use `test_bool_env` to parse GIT_TEST_LONG
|
||||
+ t7900: clean up large EXPENSIVE repository
|
||||
+ t7508: skip EXPENSIVE test that is broken without SIZE_T_IS_64BIT
|
||||
+ t5608: reduce maximum disk usage
|
||||
+ t4141: fix inefficient use of dd(1)
|
||||
+ t0021: skip EXPENSIVE test that is broken without SIZE_T_IS_64BIT
|
||||
+ README: add GitLab CI badge to make it more discoverable
|
||||
|
||||
Various test scripts have been updated to clean up large temporary
|
||||
files and repositories, reducing peak disk usage during testing.
|
||||
Also, expensive tests have been disabled on platforms that lack
|
||||
sufficient resources (like 32-bit platforms and Windows CI runners),
|
||||
and the long test suite has been enabled in GitLab CI.
|
||||
|
||||
Graduated to 'master'.
|
||||
cf. <20260707043026.GB677056@coredump.intra.peff.net>
|
||||
source: <20260706-b4-pks-t-fixes-for-GIT-TEST-LONG-v3-0-4f6c5a37fd1f@pks.im>
|
||||
|
||||
--------------------------------------------------
|
||||
[Stalled]
|
||||
|
||||
* kh/doc-trailers (2026-06-10) 10 commits
|
||||
- doc: interpret-trailers: document comment line treatment
|
||||
- doc: interpret-trailers: commit to “trailer block” term
|
||||
- doc: interpret-trailers: join new-trailers again
|
||||
- doc: interpret-trailers: add key format example
|
||||
- doc: interpret-trailers: explain key format
|
||||
- doc: interpret-trailers: explain the format after the intro
|
||||
- doc: interpret-trailers: not just for commit messages
|
||||
- doc: interpret-trailers: use “metadata” in Name as well
|
||||
- doc: interpret-trailers: replace “lines” with “metadata”
|
||||
- doc: interpret-trailers: stop fixating on RFC 822
|
||||
|
||||
Documentation for 'git interpret-trailers' has been updated to explain
|
||||
the format of trailer keys (alphanumeric characters and hyphens),
|
||||
replace outdated terminology, define key terms upfront, and document
|
||||
how comment lines in the input are treated.
|
||||
|
||||
Expecting a reroll for too long, stalled.
|
||||
cf. <729baf6b-53ea-4e8d-95ab-5935667e66c2@app.fastmail.com>
|
||||
source: <V3_CV_doc_int-tr_key_format.8a3@msgid.xyz>
|
||||
|
||||
|
||||
* sn/rebase-update-refs-symrefs (2026-06-03) 1 commit
|
||||
- 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, stalled.
|
||||
cf. <f982c386-e329-4ab0-b695-e540bcb9de3d@gmail.com>
|
||||
source: <pull.2126.v2.git.1780482436865.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
* jt/config-lock-timeout (2026-05-17) 1 commit
|
||||
- config: retry acquiring config.lock, configurable via core.configLockTimeout
|
||||
|
||||
Configuration file locking has been updated to retry for a short
|
||||
period, avoiding failures when multiple processes attempt to update
|
||||
the configuration simultaneously.
|
||||
|
||||
Waiting for response for too long, stalled.
|
||||
cf. <agrIrGwSMFlKTx9x@pks.im>
|
||||
source: <20260517132111.1014901-1-joerg@thalheim.io>
|
||||
|
||||
--------------------------------------------------
|
||||
[Cooking]
|
||||
|
||||
* js/coverity-unchecked-returns-fix (2026-07-14) 11 commits
|
||||
- bisect: handle dup() failure when redirecting stdout
|
||||
|
|
@ -212,8 +406,7 @@ Release tarballs are available at:
|
|||
has been corrected to use 'PRIuMAX' and cast the value to
|
||||
'uintmax_t', to avoid portability issues.
|
||||
|
||||
Will merge to 'next'?
|
||||
cf. <87a4rrxg3r.fsf@gentoo.mail-host-address-is-not-set>
|
||||
Will merge to 'next'.
|
||||
source: <xmqq4ii0ko9t.fsf@gitster.g>
|
||||
|
||||
|
||||
|
|
@ -232,12 +425,13 @@ Release tarballs are available at:
|
|||
* ds/trace2-tolerate-failed-timestamp (2026-07-15) 1 commit
|
||||
- trace2: tolerate failed timestamp formatting
|
||||
|
||||
The trace2 telemetry library has been updated to tolerate failures
|
||||
The 'trace2' telemetry library has been updated to tolerate failures
|
||||
from system calls like 'gettimeofday()' and datetime formatting
|
||||
functions, replacing potential program crashes with blank placeholder
|
||||
timestamps in the traces.
|
||||
|
||||
Needs review.
|
||||
Waiting for response.
|
||||
cf. <alpXW5U6sndZtgqV@com-79390>
|
||||
source: <pull.2178.git.1784131932489.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
|
|
@ -261,34 +455,19 @@ Release tarballs are available at:
|
|||
helper has been simplified by removing the explicit 'count' parameter
|
||||
and relying on the NULL-termination of the array.
|
||||
|
||||
Will merge to 'next'?
|
||||
cf. <alhr2bb0lUTHtvjO@pks.im>
|
||||
cf. <xmqqpl0nhutx.fsf@gitster.g>
|
||||
Will merge to 'next'.
|
||||
source: <935883f3-3be4-4c51-9711-5208b9ef9ca1@web.de>
|
||||
|
||||
|
||||
* js/wincred-fixes (2026-07-16) 2 commits
|
||||
(merged to 'next' on 2026-07-16 at 8c5927f06f)
|
||||
+ wincred: prevent silent credential loss when storing OAuth tokens
|
||||
+ wincred: avoid memory corruption when erasing a credential
|
||||
|
||||
The wincred credential helper has been updated to avoid memory
|
||||
corruption when erasing credentials and to prevent silent
|
||||
credential loss when storing OAuth tokens, by correcting buffer
|
||||
allocations and arguments passed to safe-CRT APIs.
|
||||
|
||||
Will merge to 'master'.
|
||||
source: <pull.2182.git.1784212072.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
* kk/no-walk-pathspec-fix (2026-07-16) 2 commits
|
||||
- revision: fix --no-walk path filtering regression
|
||||
- Merge branch 'kk/streaming-walk-pqueue' into kk/no-walk-pathspec-fix
|
||||
(merged to 'next' on 2026-07-16 at 4dd6fb0e7e)
|
||||
+ revision: fix --no-walk path filtering regression
|
||||
+ Merge branch 'kk/streaming-walk-pqueue' into kk/no-walk-pathspec-fix
|
||||
|
||||
The 'git rev-list --no-walk' command lost pathspec filtering when the
|
||||
streaming walk was refactored, which has been corrected.
|
||||
|
||||
Will merge to 'next'.
|
||||
Will merge to 'master'.
|
||||
source: <pull.2181.git.1784198879711.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
|
|
@ -305,7 +484,7 @@ Release tarballs are available at:
|
|||
'parse_options' API for displaying help, and its SYNOPSIS in the
|
||||
documentation has been standardized to match.
|
||||
|
||||
Needs review.
|
||||
Waiting for response.
|
||||
cf. <xmqq4ihyehyb.fsf@gitster.g>
|
||||
cf. <xmqqcxwmeiwq.fsf@gitster.g>
|
||||
source: <20260716165517.433849-1-christian.couder@gmail.com>
|
||||
|
|
@ -319,7 +498,9 @@ Release tarballs are available at:
|
|||
implicit dependency on the global 'the_repository' variable in
|
||||
'copy.c'.
|
||||
|
||||
Needs review.
|
||||
Will merge to 'next'?
|
||||
cf. <b0df688a-3b26-48f6-8b1c-98530483885e@gmail.com>
|
||||
cf. <xmqqo6g54k7m.fsf@gitster.g>
|
||||
source: <20260716-pks-copy-wo-the-repository-v2-1-8f5e32942929@pks.im>
|
||||
|
||||
|
||||
|
|
@ -333,7 +514,7 @@ Release tarballs are available at:
|
|||
explicitly to refspec-parsing functions and storing it in 'struct
|
||||
refspec'.
|
||||
|
||||
Needs review.
|
||||
Will merge to 'next'.
|
||||
source: <20260716-pks-refspec-wo-the-repository-v1-0-aa40844d067f@pks.im>
|
||||
|
||||
|
||||
|
|
@ -349,86 +530,25 @@ Release tarballs are available at:
|
|||
Calls to 'write(3p)' in 'send_sideband()' and 'cat_blob()' have been
|
||||
refactored to use 'writev(3p)' wrappers to reduce syscall overhead.
|
||||
|
||||
Needs review.
|
||||
Waiting for response.
|
||||
cf. <f8050598-392f-44c9-8d66-0454740a7a12@kdbg.org>
|
||||
cf. <a2676ec6-39d5-4220-8549-10a17daec668@hogyros.de>
|
||||
cf. <xmqqfr1ig0hv.fsf@gitster.g>
|
||||
source: <20260716-pks-reintroduce-writev-v1-0-ea9038c884bc@pks.im>
|
||||
|
||||
|
||||
* sc/wt-status-avoid-quadratic-insertion (2026-07-16) 1 commit
|
||||
- wt-status: avoid quadratic insertion for untracked paths
|
||||
* sc/wt-status-avoid-quadratic-insertion (2026-07-17) 1 commit
|
||||
- wt-status: avoid repeated insertion for untracked paths
|
||||
|
||||
The enumeration of untracked and ignored files in 'git status' has
|
||||
been optimized by avoiding quadratic complexity insertion into string
|
||||
lists, reducing the construction cost from O(n^2) to O(n log n).
|
||||
|
||||
Needs review.
|
||||
source: <20260716185045.229320-1-sahityajb@gmail.com>
|
||||
Will merge to 'next'.
|
||||
(a newer iteration v3 exists as <20260718081449.26747-1-sahityajb@gmail.com>)
|
||||
cf. <20260718083828.GE22588@coredump.intra.peff.net>
|
||||
source: <20260717144620.259031-1-sahityajb@gmail.com>
|
||||
|
||||
--------------------------------------------------
|
||||
[Stalled]
|
||||
|
||||
* kh/doc-trailers (2026-06-10) 10 commits
|
||||
- doc: interpret-trailers: document comment line treatment
|
||||
- doc: interpret-trailers: commit to “trailer block” term
|
||||
- doc: interpret-trailers: join new-trailers again
|
||||
- doc: interpret-trailers: add key format example
|
||||
- doc: interpret-trailers: explain key format
|
||||
- doc: interpret-trailers: explain the format after the intro
|
||||
- doc: interpret-trailers: not just for commit messages
|
||||
- doc: interpret-trailers: use “metadata” in Name as well
|
||||
- doc: interpret-trailers: replace “lines” with “metadata”
|
||||
- doc: interpret-trailers: stop fixating on RFC 822
|
||||
|
||||
Documentation for 'git interpret-trailers' has been updated to explain
|
||||
the format of trailer keys (alphanumeric characters and hyphens),
|
||||
replace outdated terminology, define key terms upfront, and document
|
||||
how comment lines in the input are treated.
|
||||
|
||||
Expecting a reroll for too long, stalled.
|
||||
cf. <729baf6b-53ea-4e8d-95ab-5935667e66c2@app.fastmail.com>
|
||||
source: <V3_CV_doc_int-tr_key_format.8a3@msgid.xyz>
|
||||
|
||||
|
||||
* sn/rebase-update-refs-symrefs (2026-06-03) 1 commit
|
||||
- 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, stalled.
|
||||
cf. <f982c386-e329-4ab0-b695-e540bcb9de3d@gmail.com>
|
||||
source: <pull.2126.v2.git.1780482436865.gitgitgadget@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.
|
||||
|
||||
Will discard.
|
||||
cf. <xmqqmrw2zavx.fsf@gitster.g>
|
||||
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
|
||||
|
||||
Configuration file locking has been updated to retry for a short
|
||||
period, avoiding failures when multiple processes attempt to update
|
||||
the configuration simultaneously.
|
||||
|
||||
Waiting for response for too long, stalled.
|
||||
cf. <agrIrGwSMFlKTx9x@pks.im>
|
||||
source: <20260517132111.1014901-1-joerg@thalheim.io>
|
||||
|
||||
--------------------------------------------------
|
||||
[Cooking]
|
||||
|
||||
* tb/send-pack-no-ref-delta (2026-07-12) 4 commits
|
||||
- send-pack: honor `no-ref-delta` capability
|
||||
|
|
@ -512,7 +632,9 @@ Release tarballs are available at:
|
|||
updated to use the repository-aware variants.
|
||||
|
||||
Waiting for response.
|
||||
cf. <aldYW4TPUqgDMRcf@pks.im>
|
||||
cf. <aldYVPyMl40-Myp0@pks.im>
|
||||
cf. <aldYTuMvN-8EMvYK@pks.im>
|
||||
cf. <3c0a8031-7082-422a-b474-938418682b60@web.de>
|
||||
source: <20260714175956.54601-1-l.s.r@web.de>
|
||||
|
||||
|
||||
|
|
@ -654,28 +776,6 @@ Release tarballs are available at:
|
|||
source: <xmqqpl0xv25e.fsf@gitster.g>
|
||||
|
||||
|
||||
* jk/git-hash-cleanups (2026-07-07) 8 commits
|
||||
(merged to 'next' on 2026-07-09 at 12a4856545)
|
||||
+ hash: check ctx->active flag in all wrapper functions
|
||||
+ http: use idempotent git_hash_discard()
|
||||
+ csum-file: use idempotent git_hash_discard()
|
||||
+ hash: make git_hash_discard() idempotent
|
||||
+ hash: document function pointers and wrappers
|
||||
+ hash: convert remaining direct function calls
|
||||
+ hash: use git_hash_init() consistently
|
||||
+ Merge branch 'jk/hash-algo-leak-fixes' into jk/git-hash-cleanups
|
||||
(this branch uses jk/hash-algo-leak-fixes.)
|
||||
|
||||
The 'git_hash_*()' wrappers have been updated to be used consistently
|
||||
across the codebase instead of direct calls to members of 'struct
|
||||
git_hash_algo', and 'git_hash_discard()' has been made idempotent to
|
||||
simplify cleanups.
|
||||
|
||||
Will merge to 'master'.
|
||||
cf. <ak4E4-jmgYFSI75O@pks.im>
|
||||
source: <20260708035235.GA41491@coredump.intra.peff.net>
|
||||
|
||||
|
||||
* mm/lib-httpd-cgi-safe (2026-07-10) 3 commits
|
||||
- t/README: document writing concurrency-safe helpers
|
||||
- t/lib-httpd: make http-429 first-request check atomic
|
||||
|
|
@ -689,19 +789,6 @@ Release tarballs are available at:
|
|||
source: <pull.2171.v2.git.1783704657.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
* mm/sideband-ansi-sgr-colon-fix (2026-05-13) 1 commit
|
||||
(merged to 'next' on 2026-07-09 at fd2b979b73)
|
||||
+ sideband: allow ANSI SGR with colon-separated subfields
|
||||
|
||||
The sideband demultiplexer has been updated to recognize ANSI SGR
|
||||
escape sequences that use colon-separated subfields (e.g., for
|
||||
256-color or true-color codes).
|
||||
|
||||
Will merge to 'master'.
|
||||
cf. <8addf7c0-ae39-f1c0-20ab-52114702aaf6@gmx.de>
|
||||
source: <20260513070803.163546-1-grawity@nullroute.lt>
|
||||
|
||||
|
||||
* ps/odb-pluggable-housekeeping (2026-07-12) 12 commits
|
||||
- odb: make optimizations pluggable
|
||||
- builtin/gc: fix signedness issues in ODB-related functionality
|
||||
|
|
@ -821,8 +908,7 @@ Release tarballs are available at:
|
|||
the handling of the 'core.packedRefsTimeout' configuration has been
|
||||
moved into the per-repository ref store structure.
|
||||
|
||||
Will merge to 'next'?
|
||||
cf. <xmqqldbbhuh0.fsf@gitster.g>
|
||||
Will merge to 'next'.
|
||||
source: <20260716-pks-refs-wo-the-repository-v3-0-db0a804e0224@pks.im>
|
||||
|
||||
|
||||
|
|
@ -844,7 +930,7 @@ Release tarballs are available at:
|
|||
* ds/sparse-index-ita-crash (2026-07-06) 1 commit
|
||||
- sparse-index: avoid crash on intent-to-add entry outside the cone
|
||||
|
||||
A crash in the sparse-index collapse code when encountering an
|
||||
A crash in the 'sparse-index' collapse code when encountering an
|
||||
invalidated cache-tree node (due to an intent-to-add path) has been
|
||||
fixed by avoiding collapsing such subtrees.
|
||||
|
||||
|
|
@ -923,30 +1009,6 @@ Release tarballs are available at:
|
|||
source: <20260702041759.51572-1-zhihao.yao@njit.edu>
|
||||
|
||||
|
||||
* jk/hash-algo-leak-fixes (2026-07-02) 9 commits
|
||||
(merged to 'next' on 2026-07-09 at 7db7b74972)
|
||||
+ hash: add platform-specific discard functions
|
||||
+ hash: fix memory leak copying sha256 gcrypt handles
|
||||
+ http: discard hash in dumb-http http_object_request
|
||||
+ check_stream_oid(): discard hash on read error
|
||||
+ patch-id: discard hash when done
|
||||
+ csum-file: provide a function to release checkpoints
|
||||
+ csum-file: always finalize or discard hash
|
||||
+ hash: add discard primitive
|
||||
+ csum-file: drop discard_hashfile()
|
||||
(this branch is used by jk/git-hash-cleanups.)
|
||||
|
||||
Various code paths that initialize a cryptographic hash context but
|
||||
bail out or finish without calling 'git_hash_final()' have been taught
|
||||
to call 'git_hash_discard()' to release allocated resources, fixing
|
||||
memory leaks when Git is built with non-default backends like
|
||||
'OpenSSL' or 'libgcrypt'.
|
||||
|
||||
Will merge to 'master'.
|
||||
cf. <aktIIKuReMxJmDsi@pks.im>
|
||||
source: <20260702075234.GA1548258@coredump.intra.peff.net>
|
||||
|
||||
|
||||
* ml/t9811-replace-test-f (2026-07-11) 2 commits
|
||||
(merged to 'next' on 2026-07-15 at ffb7fcad15)
|
||||
+ t9811: replace 'test -f' and '! test -f' with 'test_path_*'
|
||||
|
|
@ -961,43 +1023,6 @@ Release tarballs are available at:
|
|||
source: <20260711160447.99708-1-marcelomlage@usp.br>
|
||||
|
||||
|
||||
* ps/t-fixes-for-git-test-long (2026-07-05) 9 commits
|
||||
(merged to 'next' on 2026-07-09 at c5b13248c8)
|
||||
+ gitlab-ci: enable "GIT_TEST_LONG"
|
||||
+ gitlab-ci: disable RAM disk on macOS jobs
|
||||
+ t: use `test_bool_env` to parse GIT_TEST_LONG
|
||||
+ t7900: clean up large EXPENSIVE repository
|
||||
+ t7508: skip EXPENSIVE test that is broken without SIZE_T_IS_64BIT
|
||||
+ t5608: reduce maximum disk usage
|
||||
+ t4141: fix inefficient use of dd(1)
|
||||
+ t0021: skip EXPENSIVE test that is broken without SIZE_T_IS_64BIT
|
||||
+ README: add GitLab CI badge to make it more discoverable
|
||||
|
||||
Various test scripts have been updated to clean up large temporary
|
||||
files and repositories, reducing peak disk usage during testing.
|
||||
Also, expensive tests have been disabled on platforms that lack
|
||||
sufficient resources (like 32-bit platforms and Windows CI runners),
|
||||
and the long test suite has been enabled in GitLab CI.
|
||||
|
||||
Will merge to 'master'.
|
||||
cf. <20260707043026.GB677056@coredump.intra.peff.net>
|
||||
source: <20260706-b4-pks-t-fixes-for-GIT-TEST-LONG-v3-0-4f6c5a37fd1f@pks.im>
|
||||
|
||||
|
||||
* ih/precompose-flex-array (2026-07-04) 1 commit
|
||||
(merged to 'next' on 2026-07-09 at 737a87f65e)
|
||||
+ precompose_utf8: use a flex array for d_name
|
||||
|
||||
The UTF-8 precomposition wrapper on macOS has been updated to use a
|
||||
flexible array member to represent the name of a directory entry,
|
||||
preventing fortified libc checks from failing when the name is
|
||||
reallocated to be larger than 'NAME_MAX' bytes.
|
||||
|
||||
Will merge to 'master'.
|
||||
cf. <20260703050800.GA29216@tb-raspi4>
|
||||
source: <20260704233724.16928-1-ihar.hrachyshka@gmail.com>
|
||||
|
||||
|
||||
* sn/osxkeychain-rust-universal (2026-07-07) 3 commits
|
||||
(merged to 'next' on 2026-07-10 at fe82b5d188)
|
||||
+ contrib: wire up osxkeychain in contrib/Makefile on macOS
|
||||
|
|
@ -1109,42 +1134,6 @@ Release tarballs are available at:
|
|||
source: <cover.1784128921.git.phillip.wood@dunelm.org.uk>
|
||||
|
||||
|
||||
* js/ci-dockerized-pid-limit (2026-07-04) 1 commit
|
||||
(merged to 'next' on 2026-07-09 at cd80e673a5)
|
||||
+ ci(dockerized): raise the PID limit for private repositories
|
||||
|
||||
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.
|
||||
|
||||
Will merge to 'master'.
|
||||
cf. <xmqqh5medmzh.fsf@gitster.g>
|
||||
source: <pull.2164.v2.git.1783155124926.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
* js/coverity-fixes (2026-07-05) 12 commits
|
||||
(merged to 'next' on 2026-07-09 at 1823fe297c)
|
||||
+ 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-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
|
||||
|
||||
Various resource leaks, invalid file descriptor closures, and process
|
||||
handle ownership issues flagged by Coverity have been fixed.
|
||||
|
||||
Will merge to 'master'.
|
||||
cf. <xmqqa4s238lg.fsf@gitster.g>
|
||||
source: <pull.2163.v2.git.1783239870.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
* tb/repack-geometric-cruft (2026-06-28) 11 commits
|
||||
- SQUASH??? bare grep !???
|
||||
- repack: support combining '--geometric' with '--cruft'
|
||||
|
|
@ -1164,7 +1153,8 @@ Release tarballs are available at:
|
|||
collect unreachable objects.
|
||||
|
||||
Waiting for response.
|
||||
cf. <aj8cOhH6hGVZIFft@nand.local>
|
||||
cf. <xmqq8q8068f7.fsf@gitster.g>
|
||||
cf. <xmqqpl1d56dd.fsf@gitster.g>
|
||||
source: <cover.1782500507.git.me@ttaylorr.com>
|
||||
|
||||
|
||||
|
|
@ -1181,6 +1171,7 @@ Release tarballs are available at:
|
|||
+ object-file: embed transaction flush logic in commit function
|
||||
+ object-file: rename files transaction fsync function
|
||||
+ object-file: rename files transaction prepare function
|
||||
(this branch is used by ps/odb-move-loose-object-writing.)
|
||||
|
||||
'git receive-pack' has been refactored to use ODB transaction
|
||||
interfaces instead of directly managing 'tmp_objdir' for staging
|
||||
|
|
@ -1206,7 +1197,7 @@ Release tarballs are available at:
|
|||
+ oss-fuzz: add fuzzer for parsing reftables
|
||||
+ meson: support building fuzzers with libFuzzer
|
||||
|
||||
The reftable code has been hardened against corrupted tables by
|
||||
The 'reftable' code has been hardened against corrupted tables by
|
||||
fixing out-of-bounds writes, out-of-bounds reads, and abort calls
|
||||
during parsing.
|
||||
|
||||
|
|
@ -1232,20 +1223,10 @@ Release tarballs are available at:
|
|||
'push_default') have been migrated into the per-repository structure.
|
||||
|
||||
Needs review.
|
||||
cf. <xmqq8q7961xe.fsf@gitster.g>
|
||||
source: <20260714032525.1611141-1-cat@malon.dev>
|
||||
|
||||
|
||||
* dk/meson-enable-use-nsec-build (2026-06-20) 1 commit
|
||||
- meson: wire up USE_NSEC build knob
|
||||
|
||||
The 'USE_NSEC' build knob, which enables support for sub-second file
|
||||
timestamp resolution, has been wired up to the Meson build system.
|
||||
|
||||
Will discard.
|
||||
cf. <45F2C180-1DE1-4371-869B-BF605B64E01A@gmail.com>
|
||||
source: <c4c5ade901ff95b0f95939ea818870e4f3d59da1.1781971201.git.ben.knoble+github@gmail.com>
|
||||
|
||||
|
||||
* ps/libgit-in-subdir (2026-07-12) 3 commits
|
||||
. Move libgit.a sources into separate "lib/" directory
|
||||
. t/helper: prepare "test-example-tap.c" for introduction of "lib/"
|
||||
|
|
@ -1366,7 +1347,7 @@ Release tarballs are available at:
|
|||
'git tag --contains', significantly speeding up connectivity checks
|
||||
across many candidate refs with shared history.
|
||||
|
||||
Will merge to 'next'?
|
||||
Will merge to 'next'.
|
||||
cf. <20260716091924.GB1212956@coredump.intra.peff.net>
|
||||
source: <20260612-ref-filter-memoized-contains-v4-0-5ed39fd001dd@gmail.com>
|
||||
|
||||
|
|
@ -1381,24 +1362,24 @@ Release tarballs are available at:
|
|||
drop merge commits and linearize the replayed history, mimicking 'git
|
||||
rebase --no-rebase-merges'.
|
||||
|
||||
Will merge to 'master'?
|
||||
On hold, waiting for response from the author.
|
||||
cf. <xmqq5x2qz42z.fsf@gitster.g>
|
||||
cf. <CABPp-BGzU9KHGF1nipi2HZaa1AiikMKGGaapQzHVH06wO4V1ww@mail.gmail.com>
|
||||
source: <20260707-toon-git-replay-drop-merges-v7-0-808ab9b4afa6@iotcl.com>
|
||||
|
||||
|
||||
* ps/cat-file-remote-object-info (2026-07-15) 13 commits
|
||||
- cat-file: make remote-object-info allow-list dynamic
|
||||
- cat-file: validate remote atoms with an allow-list
|
||||
* ps/cat-file-remote-object-info (2026-07-18) 13 commits
|
||||
- cat-file: make remote-object-info allow-list adapt to the server
|
||||
- cat-file: add remote-object-info to batch-command
|
||||
- transport: add client support for object-info
|
||||
- serve: advertise object-info feature
|
||||
- protocol-caps: check object existence regardless of the attributes requested
|
||||
- fetch-pack: move fetch initialization
|
||||
- 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
|
||||
- fetch-pack: fix hash_algo variable type
|
||||
- t1006: split test utility functions into new 'lib-cat-file.sh'
|
||||
- fetch-pack: use unsigned int for hash_algo variable
|
||||
- fetch-pack: drop the static advertise_sid variable
|
||||
- t1006: extract helper functions into new 'lib-cat-file.sh'
|
||||
- cat-file: declare loop counter inside for()
|
||||
- transport-helper: fix memory leak of helper on disconnect
|
||||
|
||||
|
|
@ -1409,9 +1390,8 @@ Release tarballs are available at:
|
|||
filtered on the client based on server-advertised capabilities,
|
||||
returning empty strings for inapplicable or unsupported fields.
|
||||
|
||||
Expecting a reroll.
|
||||
cf. <DJZM80YDCMQG.SXP22P43W1J3@gmail.com>
|
||||
source: <20260715-ps-eric-work-rebase-v18-0-34d7adb051bb@gmail.com>
|
||||
Needs review.
|
||||
source: <20260718-ps-eric-work-rebase-v20-0-0c13962ac532@gmail.com>
|
||||
|
||||
|
||||
* mm/diff-process-hunks (2026-07-15) 9 commits
|
||||
|
|
@ -1431,7 +1411,7 @@ Release tarballs are available at:
|
|||
while leaving all output formatting (word diff, color, blame, etc.) to
|
||||
Git's standard pipeline.
|
||||
|
||||
Ejected for now, as conflicts badly with mm/line-log-limited-ops.
|
||||
Ejected for now, as it conflicts badly with 'mm/line-log-limited-ops'.
|
||||
|
||||
Expecting a reroll.
|
||||
cf. <xmqq8q7aj3b0.fsf@gitster.g>
|
||||
|
|
@ -1442,16 +1422,16 @@ Release tarballs are available at:
|
|||
* ty/migrate-trust-executable-bit (2026-07-16) 4 commits
|
||||
- environment: move has_symlinks into repo_config_values
|
||||
- environment: move trust_executable_bit into repo_config_values
|
||||
- read-cache: move 'ce_mode_from_stat()' to 'read-cache.c'
|
||||
- read-cache: pass 'repo' to 'ce_mode_from_stat()'
|
||||
- read-cache: remove redundant extern declarations
|
||||
|
||||
The 'trust_executable_bit' (coming from 'core.filemode'
|
||||
configuration) has been migrated into 'repo_config_values' to tie it
|
||||
to a specific repository instance.
|
||||
The 'trust_executable_bit' (coming from the 'core.filemode'
|
||||
configuration) has been migrated into 'struct repo_config_values' to
|
||||
tie it to a specific repository instance.
|
||||
|
||||
Needs review.
|
||||
cf. <xmqqa4rqfzys.fsf@gitster.g>
|
||||
source: <20260716084941.1101918-1-cat@malon.dev>
|
||||
Waiting for response.
|
||||
cf. <xmqq8q7961xe.fsf@gitster.g>
|
||||
source: <20260717063559.1633567-1-cat@malon.dev>
|
||||
|
||||
|
||||
* za/completion-hide-dotfiles (2026-06-20) 2 commits
|
||||
|
|
@ -1503,10 +1483,11 @@ Release tarballs are available at:
|
|||
- branch: add --forked filter for --list mode
|
||||
|
||||
The 'git branch' command has been taught the '--delete-merged' option
|
||||
to remove local branches that are already merged to their tracked
|
||||
to remove local branches that are already merged into their tracked
|
||||
remote-tracking branches.
|
||||
|
||||
Needs review.
|
||||
cf. <xmqqtspvptqc.fsf@gitster.g>
|
||||
source: <pull.2285.v19.git.git.1784053493.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
|
|
@ -1515,9 +1496,11 @@ Release tarballs are available at:
|
|||
- branch: expose helpers for finding the remote owning a tracking ref
|
||||
|
||||
The 'git checkout --track=...' command has been taught to optionally
|
||||
fetch the branch from the remote the new branch will work with.
|
||||
fetch the branch from the remote that the new branch will work with.
|
||||
|
||||
Needs review.
|
||||
Waiting for response for too long, stalled.
|
||||
cf. <xmqq5x37h6fj.fsf@gitster.g>
|
||||
cf. <CAL71e4MiijEiM26TKJcOYT7L4pfQeMM_F2oT3U3igP-wOZm2Ag@mail.gmail.com>
|
||||
source: <pull.2281.v15.git.git.1782338098.gitgitgadget@gmail.com>
|
||||
|
||||
|
||||
|
|
@ -1535,7 +1518,7 @@ Release tarballs are available at:
|
|||
simplification) by indenting them, preventing them from appearing
|
||||
falsely related to unrelated commits rendered immediately above them.
|
||||
|
||||
Will merge to 'next'?
|
||||
Will merge to 'next'.
|
||||
cf. <CA+J6zkQNzEAhhY74qDrOwfFVrshEF7YFxWRRkwE3ttJo15ZbAg@mail.gmail.com>
|
||||
source: <20260714-ps-pre-commit-indent-v12-0-d50938e006df@gmail.com>
|
||||
|
||||
|
|
@ -1577,3 +1560,28 @@ Release tarballs are available at:
|
|||
Retracted.
|
||||
cf. <CAL71e4PRVYfUWc-c+6XHTwtADqrbub9ykbo+rPyramDhJw=Rfg@mail.gmail.com>
|
||||
source: <pull.2132.v3.git.1783532989.gitgitgadget@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.
|
||||
|
||||
Discarded.
|
||||
cf. <xmqqmrw2zavx.fsf@gitster.g>
|
||||
source: <20260602161150.1527493-1-aplattner@nvidia.com>
|
||||
|
||||
|
||||
* dk/meson-enable-use-nsec-build (2026-06-20) 1 commit
|
||||
. meson: wire up USE_NSEC build knob
|
||||
|
||||
The 'USE_NSEC' build knob, which enables support for sub-second file
|
||||
timestamp resolution, has been wired up to the Meson build system.
|
||||
|
||||
Discarded.
|
||||
cf. <xmqqa4rx9mb5.fsf@gitster.g>
|
||||
cf. <45F2C180-1DE1-4371-869B-BF605B64E01A@gmail.com>
|
||||
source: <c4c5ade901ff95b0f95939ea818870e4f3d59da1.1781971201.git.ben.knoble+github@gmail.com>
|
||||
|
|
|
|||
Loading…
Reference in New Issue