What's cooking (2025/07 #05)

This commit is contained in:
Junio C Hamano
2025-07-17 14:18:38 -07:00
parent f4840fd224
commit 57d47ee7bb

View File

@@ -1,10 +1,10 @@
To: git@vger.kernel.org
Subject: What's cooking in git.git (Jul 2025, #04; Mon, 14)
X-master-at: d30e120486c5e0632d97f3cba79c03efb6dbb3cb
X-next-at: e9779f64349fbcc8d177d055208039877316e652
Subject: What's cooking in git.git (Jul 2025, #05; Thu, 17)
X-master-at: 90c0775e972847832ac8dfa6a14bc4c3abacd914
X-next-at: 6ba607880dc2bbf7e13e5734880ce0f9b87d2670
Bcc: lwn@lwn.net, gitster@pobox.com
What's cooking in git.git (Jul 2025, #04; Mon, 14)
What's cooking in git.git (Jul 2025, #05; Thu, 17)
--------------------------------------------------
Here are the topics that have been cooking in my tree. Commits
@@ -48,198 +48,235 @@ Release tarballs are available at:
--------------------------------------------------
[Graduated to 'master']
* ac/prune-wo-the-repository (2025-07-04) 2 commits
(merged to 'next' on 2025-07-07 at 3dd296a911)
+ builtin/prune: stop depending on 'the_repository'
+ repository: move 'repository_format_precious_objects' to repo scope
* ag/doc-send-email (2025-06-30) 5 commits
(merged to 'next' on 2025-07-09 at cf940e82a1)
+ docs: mention possible options for Proton Mail users
+ docs: add a paragraph explaining the `sendmailCmd` option of sendemail
+ docs: add an OAuth2.0 credential helper for AOL accounts
+ docs: add outlookidfix config option to sendemail documentation
+ docs: link OpenSSL's verify(1) manual page to know about -CAfile and -CApath options
Some code paths in the "git prune" used to ignore passed in
repository object and used the_repository singleton instance
instead, which has been corrected.
source: <cover.1751630981.git.ayu.chandekar@gmail.com>
Documentation updates for "git send-email".
source: <20250630180511.499-1-gargaditya08@proton.me>
* bs/config-mak-freebsd (2025-07-02) 2 commits
(merged to 'next' on 2025-07-07 at d6761aa225)
+ build: retire NO_UINTMAX_T
+ config.mak.uname: set NO_MEMMEM only for functional version
* ly/load-bitmap-leakfix (2025-06-30) 3 commits
(merged to 'next' on 2025-07-08 at 6e6d182a8c)
+ pack-bitmap: add load corrupt bitmap test
+ pack-bitmap: reword comments in test_bitmap_commits()
+ pack-bitmap: fix memory leak if load_bitmap() failed
Drop FreeBSD 4 support and assume we are at least at FreeBSD 6 with
memmem() supported.
source: <20250702093736.36074-1-carenas@gmail.com>
Leakfix with a new and a bit invasive test.
cf. <aG2XZYamUv5FWq/W@nand.local>
source: <pull.1962.v6.git.git.1751347929.gitgitgadget@gmail.com>
* bs/remote-helpers-doc-markup-fix (2025-07-02) 1 commit
(merged to 'next' on 2025-07-07 at 60c2a47d1b)
+ gitremote-helpers.adoc: fix formatting
* ph/fetch-prune-optim (2025-07-01) 3 commits
(merged to 'next' on 2025-07-09 at f0a1daff6a)
+ clean up interface for refs_warn_dangling_symrefs
+ refs: remove old refs_warn_dangling_symref
+ fetch-prune: optimize dangling-ref reporting
Docfix.
source: <20250702161951.22908-2-bacs@librecast.net>
"git fetch --prune" used to be O(n^2) expensive when there are many
refs, which has been corrected.
cf. <20250708013612.GB549007@coredump.intra.peff.net>
source: <20250702011214.2835529-2-phil.hord@gmail.com>
* cb/total-ram-bsd-fix (2025-07-07) 1 commit
(merged to 'next' on 2025-07-07 at d9a7ca747c)
+ builtin/gc: correct total_ram calculation with HAVE_BSD_SYSCTL
* ps/doc-pack-refs-auto-with-files-backend-fix (2025-07-08) 1 commit
(merged to 'next' on 2025-07-09 at 200b4b24a8)
+ docs/git-pack-refs: document heuristic used for packing loose refs
Use of sysctl() system call to learn the total RAM size used on
BSDs has been corrected.
source: <20250707164518.6600-1-carenas@gmail.com>
Doc update.
source: <20250708-b4-pks-pack-refs-document-files-heuristic-v1-1-e28d65a94573@pks.im>
* hy/read-cache-lock-error-fix (2025-07-03) 1 commit
(merged to 'next' on 2025-07-07 at a97a188a9e)
+ read-cache: report lock error when refreshing index
* ps/object-store (2025-07-01) 17 commits
(merged to 'next' on 2025-07-07 at e19db55858)
+ odb: rename `read_object_with_reference()`
+ odb: rename `pretend_object_file()`
+ odb: rename `has_object()`
+ odb: rename `repo_read_object_file()`
+ odb: rename `oid_object_info()`
+ odb: trivial refactorings to get rid of `the_repository`
+ odb: get rid of `the_repository` when handling submodule sources
+ odb: get rid of `the_repository` when handling the primary source
+ odb: get rid of `the_repository` in `for_each()` functions
+ odb: get rid of `the_repository` when handling alternates
+ odb: get rid of `the_repository` in `odb_mkstemp()`
+ odb: get rid of `the_repository` in `assert_oid_type()`
+ odb: get rid of `the_repository` in `find_odb()`
+ odb: introduce parent pointers
+ object-store: rename files to "odb.{c,h}"
+ object-store: rename `object_directory` to `odb_source`
+ object-store: rename `raw_object_store` to `object_database`
(this branch is used by ps/object-file-wo-the-repository and ps/object-store-midx.)
A failure to open the index file for writing due to conflicting
access did not state what went wrong, which has been corrected.
source: <20250703074502.45593-1-hanyang.tony@bytedance.com>
Code clean-up around object access API.
source: <20250701-pks-object-store-wo-the-repository-v6-0-dbf3894ab4e2@pks.im>
* jc/coccicheck-fails-make-when-it-fails (2025-06-23) 1 commit
(merged to 'next' on 2025-07-07 at 0b7affe7cd)
+ coccicheck: fail "make" when it fails
* ps/refs-files-remove-empty-parent (2025-07-08) 1 commit
(merged to 'next' on 2025-07-09 at f726af7117)
+ refs/files: remove empty parent dirs when ref creation fails
"make coccicheck" succeeds even when spatch made suggestions, which
has been updated to fail in such a case.
source: <xmqqbjqe77vw.fsf@gitster.g>
When a ref creation at refs/heads/foo/bar fails, the files backend
now removes refs/heads/foo/ if the directory is otherwise not used.
source: <20250708-b4-pks-reffiles-prune-empty-dirs-on-abort-v1-1-3bae02e4f034@pks.im>
* jk/all-negative-diff-filter-fix (2025-07-03) 1 commit
(merged to 'next' on 2025-07-07 at 139dd3db75)
+ setup_revisions(): turn on diffs for all-negative diff filter
* ps/t1006-tap-fix (2025-07-08) 1 commit
(merged to 'next' on 2025-07-09 at bbed1acc2a)
+ t1006: fix broken TAP format
A diff-filter with negative-only specification like "git log
--diff-filter=d" did not trigger correctly, which has been fixed.
source: <20250703224428.GB1909836@coredump.intra.peff.net>
Test fix.
source: <20250708-b4-pks-t1006-fix-tap-format-v1-1-c3f837448364@pks.im>
* kh/doc-config-subcommands (2025-07-01) 5 commits
(merged to 'next' on 2025-07-07 at b0db48b397)
+ config: mention --url in the synopsis
+ config: use --value instead of value-pattern
+ config: document --[no-]value
+ config: use --value=<pattern> consistently
+ config: document --[no-]show-names
* rs/parse-options-precision (2025-07-09) 7 commits
(merged to 'next' on 2025-07-09 at aefffa21b7)
+ parse-options: add precision handling for OPTION_COUNTUP
+ parse-options: add precision handling for OPTION_BITOP
+ parse-options: add precision handling for OPTION_NEGBIT
+ parse-options: add precision handling for OPTION_BIT
+ parse-options: add precision handling for OPTION_SET_INT
+ parse-options: add precision handling for PARSE_OPT_CMDMODE
+ parse-options: require PARSE_OPT_NOARG for OPTION_BITOP
Documentation updates.
source: <cover.1751382830.git.code@khaugsbakk.name>
* kn/clang-format-updates (2025-07-02) 3 commits
(merged to 'next' on 2025-07-07 at 0b0770e97a)
+ meson: add rule to run 'git clang-format'
+ clang-format: add 'RemoveBracesLLVM' to the main config
+ clang-format: set 'ColumnLimit' to 0
Update ".clang-format" and ".editorconfig" to match our style guide
a bit better.
source: <20250702-525-make-clang-format-more-robust-v3-0-705344f30580@gmail.com>
* mc/netrc-service-names (2025-06-25) 3 commits
(merged to 'next' on 2025-07-07 at e98100afdd)
+ contrib: better support symbolic port names in git-credential-netrc
+ contrib: warn for invalid netrc file ports in git-credential-netrc
+ contrib: use a more portable shebang for git-credential-netrc
"netrc" credential helper has been improved to understand textual
service names (like smtp) in addition to the numeric port numbers
(like 25).
source: <20250625142511.28857-1-maxim@guixotic.coop>
* ps/perlless-test-fixes (2025-07-07) 2 commits
(merged to 'next' on 2025-07-07 at 2c56966ff8)
+ t5333: fix missing terminator for sed(1) 's' command
+ t4150: fix warning printed by awk due to escaped '\@'
Test fixes.
source: <20250707-b4-pks-t-perlless-fixes-v1-0-92b2de1c3dd0@pks.im>
* ps/use-reftable-as-default-in-3.0 (2025-07-04) 2 commits
(merged to 'next' on 2025-07-07 at 3f3402f221)
+ setup: use "reftable" format when experimental features are enabled
+ BreakingChanges: announce switch to "reftable" format
The reftable ref backend has matured enough; Git 3.0 will make it
the default format in a newly created repositories by default.
source: <20250704-pks-reftable-default-backend-v3-0-a1eb63e8442a@pks.im>
* re/ssh-sign-buffer-fix (2025-07-07) 1 commit
(merged to 'next' on 2025-07-07 at 36dad3e4dc)
+ ssh signing: don't detach the filename strbuf from key_file tempfile
Tempfile removal fix in the codepath to sign commits with SSH keys.
source: <20250707184852.16010-1-redoste@redoste.xyz>
* rj/freebsd-sysinfo-build-fix (2025-07-04) 1 commit
(merged to 'next' on 2025-07-07 at bc4cbfd76d)
+ build: fix FreeBSD build when sysinfo compat library installed
Build fix for FreeBSD.
source: <e6a80163-47ef-436b-98a6-2ac39c477080@ramsayjones.plus.com>
* rp/apply-intent-to-add-fix (2025-07-07) 4 commits
(merged to 'next' on 2025-07-07 at 957e3fd081)
+ apply docs: clarify wording for --intent-to-add
+ t4140: test apply --intent-to-add interactions
+ apply: only write intents to add for new files
+ apply: read in the index in --intent-to-add mode
"git apply -N" should start from the current index and register
only new files, but it instead started from an empty index, which
has been corrected.
source: <20250707121534.2933349-1-ray@ameretat.dev>
* sj/string-list (2025-06-28) 8 commits
(merged to 'next' on 2025-07-07 at 5a95dc8007)
+ u-string-list: move "remove duplicates" test to "u-string-list.c"
+ u-string-list: move "filter string" test to "u-string-list.c"
+ u-string-list: move "test_split_in_place" to "u-string-list.c"
+ u-string-list: move "test_split" into "u-string-list.c"
+ string-list: enable sign compare warnings check
+ string-list: return index directly when inserting an existing element
+ string-list: remove unused "insert_at" parameter from add_entry
+ string-list: fix sign compare warnings for loop iterator
Code and test clean-up around string-list API.
source: <aGDAZ6a0-PyXXGmK@ArchLinux>
* ts/merge-orig-head-doc-fix (2025-07-05) 1 commit
(merged to 'next' on 2025-07-07 at 08f4a573e5)
+ docs: correct ORIG_HEAD example in "git merge" documentation
Doc fix.
source: <pull.1940.git.1751737158670.gitgitgadget@gmail.com>
Define .precision to more canned parse-options type to avoid bugs
coming from using a variable with a wrong type to capture the
parsed values.
source: <802eba72-c100-429a-80b7-7a0e8b6559ed@web.de>
--------------------------------------------------
[New Topics]
* kl/test-installed-fix (2025-07-15) 2 commits
(merged to 'next' on 2025-07-16 at 512176f26c)
+ test-lib: respect GIT_TEST_INSTALLED when querying default hash
+ Merge branch 'bc/use-sha256-by-default-in-3.0' into kl/test-installed-fix
(this branch uses bc/use-sha256-by-default-in-3.0.)
GIT_TEST_INSTALLED was not honored in the recent topic related to
SHA256 hashes, which has been corrected.
Will merge to 'master'.
source: <pull.2011.git.git.1752605874596.gitgitgadget@gmail.com>
* pw/config-kvi-remove-path (2025-07-15) 1 commit
(merged to 'next' on 2025-07-16 at 3203507b49)
+ config: remove unneeded struct field
Remove a redundant member from kvi struct.
Will merge to 'master'.
source: <31724ce432b19088b7c7643654788d8e712b3193.1752588042.git.phillip.wood@dunelm.org.uk>
* rs/pop-recent-commit-with-prio-queue (2025-07-16) 4 commits
- fixup! commit: convert pop_most_recent_commit() to prio_queue
- commit: use prio_queue_replace() in pop_most_recent_commit()
- prio-queue: add prio_queue_replace()
- commit: convert pop_most_recent_commit() to prio_queue
The pop_most_recent_commit() function can have quite expensive
worst case performance characteristics, which has been optimized by
using prio-queue data structure.
Will merge to 'next', after squashing the fixup in?
source: <bc079b3c-a472-4f5d-95ca-390f9de25196@web.de>
* bc/contribution-under-non-real-names (2025-07-15) 1 commit
(merged to 'next' on 2025-07-16 at 6ba607880d)
+ SubmittingPatches: allow non-real name contributions
Document that we do not require "real" name when signing your
patches off.
Will merge to 'master'.
source: <20250716002523.1392423-1-sandals@crustytoothpaste.net>
* jc/ci-print-test-failures-fix (2025-07-16) 1 commit
- ci: allow github-actions print test failures again
CI fix.
Comments?
source: <xmqqa553alp1.fsf_-_@gitster.g>
* rj/meson-libexecdir-fix (2025-07-15) 2 commits
(merged to 'next' on 2025-07-16 at 36c2be9510)
+ po/meson.build: add missing 'ga' language code
+ meson: fix installation when -Dlibexexdir is set
Meson-based build did not handle libexecdir setting correctly,
which has been corrected.
Will merge to 'master'.
source: <20250715233239.1539780-1-ramsay@ramsayjones.plus.com>
* ds/sparse-checkout-clean (2025-07-16) 9 commits
- sparse-checkout: make 'clean' clear more files
- t: expand tests around sparse merges and clean
- sparse-index: point users to new 'clean' action
- sparse-checkout: add --verbose option to 'clean'
- dir: add generic "walk all files" helper
- sparse-checkout: match some 'clean' behavior
- sparse-checkout: add basics of 'clean' command
- sparse-checkout: remove use of the_repository
- Merge branch 'ac/deglobal-sparse-variables' into ds/sparse-checkout-clean
(this branch uses ac/deglobal-sparse-variables.)
"git sparse-checkout" subcommand learned a new "clean" action to
prune otherwise unused working-tree files that are outside the
areas of interest.
source: <pull.1941.v2.git.1752716054.gitgitgadget@gmail.com>
* ps/config-wo-the-repository (2025-07-17) 22 commits
- config: fix sign comparison warnings
- config: move Git config parsing into "environment.c"
- config: remove unused `the_repository` wrappers
- config: drop `git_config_set_multivar()` wrapper
- config: drop `git_config_get_multivar_gently()` wrapper
- config: drop `git_config_set_multivar_in_file_gently()` wrapper
- config: drop `git_config_set_in_file_gently()` wrapper
- config: drop `git_config_set()` wrapper
- config: drop `git_config_set_gently()` wrapper
- config: drop `git_config_set_in_file()` wrapper
- config: drop `git_config_get_bool()` wrapper
- config: drop `git_config_get_ulong()` wrapper
- config: drop `git_config_get_int()` wrapper
- config: drop `git_config_get_string()` wrapper
- config: drop `git_config_get_string()` wrapper
- config: drop `git_config_get_string_multi()` wrapper
- config: drop `git_config_get_value()` wrapper
- config: drop `git_config_get_value()` wrapper
- config: drop `git_config_get()` wrapper
- config: drop `git_config_clear()` wrapper
- config: drop `git_config()` wrapper
- Merge branch 'bc/use-sha256-by-default-in-3.0' into ps/config-wo-the-repository
(this branch uses bc/use-sha256-by-default-in-3.0.)
The config API had a set of convenience wrapper functions that
implicitly use the_repository instance; they have been removed and
inlined at the calling sites.
Will merge to 'next'?
source: <20250717-pks-config-wo-the-repository-v1-0-d888e4a17de1@pks.im>
--------------------------------------------------
[Cooking]
* ps/sane-ctype-workaround (2025-07-09) 1 commit
- sane-ctype: fix compiler error on Amazon Linux 2
(merged to 'next' on 2025-07-15 at 21b79228e3)
+ sane-ctype: fix compiler error on Amazon Linux 2
Our <sane-ctype.h> header file relied on that the system-supplied
<ctype.h> header is not later included, which would override our
@@ -247,7 +284,7 @@ Release tarballs are available at:
this by preemptively including <ctype.h> near the beginning of
<sane-ctype.h> ourselves.
Will merge to 'next'.
Will merge to 'master'.
source: <fabacc9bc7ef7d462d1c7198d5edc18c76b82270.1752139420.git.ps@pks.im>
@@ -261,36 +298,38 @@ Release tarballs are available at:
source: <20250708024507.62386-2-rhanneken@pobox.com>
* cb/meson-avoid-broken-macos-pcre2 (2025-07-13) 1 commit
- meson: disable PCRE2 dependency by default in macOS
* cb/meson-avoid-broken-macos-pcre2 (2025-07-16) 1 commit
- meson: work around broken system PCRE2 dependency in macOS
Build fix for macOS.
Will merge to 'next'.
source: <20250713174807.32444-1-carenas@gmail.com>
Still in flux.
source: <20250716193000.44673-1-carenas@gmail.com>
* jb/gpg-program-variable-is-a-pathname (2025-07-11) 1 commit
- gpg-interface: expand gpg.program as a path
(merged to 'next' on 2025-07-14 at b23aee3cb1)
+ gpg-interface: expand gpg.program as a path
The gpg.program configuration variable, which names a pathname to
the (custom) GPG compatible program, can now be spelled with ~tilde
expansion.
Will merge to 'next'.
Will merge to 'master'.
source: <20250711232348.460804-1-jonas.brandstoetter@gmx.at>
* pw/adopt-c99-bool-officially (2025-07-14) 3 commits
- strbuf: convert predicates to return bool
- git-compat-util: convert string predicates to return bool
- CodingGuildlines: allow the use of bool
* pw/adopt-c99-bool-officially (2025-07-16) 3 commits
(merged to 'next' on 2025-07-16 at 62afce02b7)
+ strbuf: convert predicates to return bool
+ git-compat-util: convert string predicates to return bool
+ CodingGuidelines: allow the use of bool
Declare weather-balloon we raised for "bool" type 18 months ago a
success and officially allow using the type in our codebase.
Comments?
source: <cover.1752499610.git.phillip.wood@dunelm.org.uk>
Will merge to 'master'.
source: <cover.1752658700.git.phillip.wood@dunelm.org.uk>
* pw/compound-literal-test-balloon (2025-07-14) 1 commit
@@ -302,39 +341,6 @@ Release tarballs are available at:
Comments?
source: <7ac55a5096c261b706f47ca239c381f71db2b67a.1752499653.git.phillip.wood@dunelm.org.uk>
--------------------------------------------------
[Cooking]
* ps/doc-pack-refs-auto-with-files-backend-fix (2025-07-08) 1 commit
(merged to 'next' on 2025-07-09 at 200b4b24a8)
+ docs/git-pack-refs: document heuristic used for packing loose refs
Doc update.
Will merge to 'master'.
source: <20250708-b4-pks-pack-refs-document-files-heuristic-v1-1-e28d65a94573@pks.im>
* ps/refs-files-remove-empty-parent (2025-07-08) 1 commit
(merged to 'next' on 2025-07-09 at f726af7117)
+ refs/files: remove empty parent dirs when ref creation fails
When a ref creation at refs/heads/foo/bar fails, the files backend
now removes refs/heads/foo/ if the directory is otherwise not used.
Will merge to 'master'.
source: <20250708-b4-pks-reffiles-prune-empty-dirs-on-abort-v1-1-3bae02e4f034@pks.im>
* ps/t1006-tap-fix (2025-07-08) 1 commit
(merged to 'next' on 2025-07-09 at bbed1acc2a)
+ t1006: fix broken TAP format
Test fix.
Will merge to 'master'.
source: <20250708-b4-pks-t1006-fix-tap-format-v1-1-c3f837448364@pks.im>
* pw/3.0-commentchar-auto-deprecation (2025-07-08) 2 commits
- commit: print advice when core.commentString=auto
@@ -349,31 +355,28 @@ Release tarballs are available at:
source: <cover.1751983009.git.phillip.wood@dunelm.org.uk>
* ps/object-store-midx (2025-07-09) 9 commits
* ps/object-store-midx (2025-07-15) 9 commits
- midx: remove now-unused linked list of multi-pack indices
- packfile: stop using linked MIDX list in `get_all_packs()`
- packfile: stop using linked MIDX list in `find_pack_entry()`
- packfile: refactor `get_multi_pack_index()` to work on sources
- midx: track whether we have loaded the MIDX
- midx: stop using linked list when closing MIDX
- packfile: refactor `prepare_packed_git_one()` to work on sources
- midx: start tracking per object database source
- Merge branch 'tb/midx-avoid-cruft-packs' into ps/object-store-midx
- Merge branch 'ps/object-store' into ps/object-store-midx
(this branch uses ps/object-store.)
(this branch uses tb/midx-avoid-cruft-packs.)
Redefine where the multi-pack-index sits in the object subsystem,
which recently was restructured to allow multiple backends that
support a single object source that belongs to one repository. A
midx does span mulitple "object sources".
Expecting responses.
source: <20250709-b4-pks-midx-via-odb-alternate-v1-0-f31150d21331@pks.im>
Comments?
source: <20250715-b4-pks-midx-via-odb-alternate-v2-0-b0ca0b4b516e@pks.im>
* ps/object-file-wo-the-repository (2025-07-09) 20 commits
- object-file: drop USE_THE_REPOSITORY_VARIABLE
- environment: move object creation mode into repo settings
- environment: move compression level into repo settings
* ps/object-file-wo-the-repository (2025-07-16) 17 commits
- object-file: get rid of `the_repository` in index-related functions
- object-file: get rid of `the_repository` in `force_object_loose()`
- object-file: get rid of `the_repository` in `read_loose_object()`
@@ -391,14 +394,11 @@ Release tarballs are available at:
- object-file: stop using `the_hash_algo`
- object-file: fix -Wsign-compare warnings
- Merge branch 'ps/object-store' into ps/object-file-wo-the-repository
(this branch uses ps/object-store.)
Reduce implicit assumption and dependence on the_repository in the
object-file subsystem.
Needs a bit of redoing around the configuration reading.
cf. <32fceddc-c867-4a47-bde8-c873279edbc1@gmail.com>
source: <20250709-pks-object-file-wo-the-repository-v1-0-62627b55707f@pks.im>
source: <20250717-pks-object-file-wo-the-repository-v2-0-36d2cd6c700e@pks.im>
* jk/remote-avoid-overlapping-names (2025-07-08) 1 commit
@@ -447,53 +447,25 @@ Release tarballs are available at:
source: <20250706215039.715732-1-usmanakinyemi202@gmail.com>
* ag/doc-send-email (2025-06-30) 5 commits
(merged to 'next' on 2025-07-09 at cf940e82a1)
+ docs: mention possible options for Proton Mail users
+ docs: add a paragraph explaining the `sendmailCmd` option of sendemail
+ docs: add an OAuth2.0 credential helper for AOL accounts
+ docs: add outlookidfix config option to sendemail documentation
+ docs: link OpenSSL's verify(1) manual page to know about -CAfile and -CApath options
Documentation updates for "git send-email".
Will merge to 'master'.
source: <20250630180511.499-1-gargaditya08@proton.me>
* rs/parse-options-precision (2025-07-09) 7 commits
(merged to 'next' on 2025-07-09 at aefffa21b7)
+ parse-options: add precision handling for OPTION_COUNTUP
+ parse-options: add precision handling for OPTION_BITOP
+ parse-options: add precision handling for OPTION_NEGBIT
+ parse-options: add precision handling for OPTION_BIT
+ parse-options: add precision handling for OPTION_SET_INT
+ parse-options: add precision handling for PARSE_OPT_CMDMODE
+ parse-options: require PARSE_OPT_NOARG for OPTION_BITOP
Define .precision to more canned parse-options type to avoid bugs
coming from using a variable with a wrong type to capture the
parsed values.
Will merge to 'master'.
source: <802eba72-c100-429a-80b7-7a0e8b6559ed@web.de>
* kn/for-each-ref-skip (2025-07-11) 4 commits
- for-each-ref: introduce a '--start-after' option
- refs: selectively set prefix in the seek functions
- ref-cache: remove unused function 'find_ref_entry()'
- refs: expose `ref_iterator` via 'refs.h'
* kn/for-each-ref-skip (2025-07-15) 5 commits
(merged to 'next' on 2025-07-15 at 4ea3c74afd)
+ for-each-ref: introduce a '--start-after' option
+ ref-filter: remove unnecessary else clause
+ refs: selectively set prefix in the seek functions
+ ref-cache: remove unused function 'find_ref_entry()'
+ refs: expose `ref_iterator` via 'refs.h'
"git for-each-ref" learns "--skip-until" option to help
applications that want to page its output.
Will merge to 'next'.
Will merge to 'master'.
cf. <CAP8UFD06KKF0A0WjBSw77A7fKp_pGJGVyw-OPd8-X92h=RSF+w@mail.gmail.com>
source: <20250711-306-git-for-each-ref-pagination-v4-0-ed3303ad5b89@gmail.com>
source: <20250715-306-git-for-each-ref-pagination-v5-0-852d5a2f56e1@gmail.com>
* tc/last-modified (2025-07-09) 3 commits
* tc/last-modified (2025-07-16) 5 commits
- last-modified: support --extended format
- pretty: allow caller to disable indentation
- last-modified: use Bloom filters when available
- t/perf: add last-modified perf script
- last-modified: new subcommand to show when files were last modified
@@ -502,57 +474,45 @@ Release tarballs are available at:
ancestor commit that touched each path.
Comments?
source: <20250630-toon-new-blame-tree-v3-0-3516025dc3bc@iotcl.com>
source: <20250716133206.1787549-1-toon@iotcl.com>
* cb/daemon-reap-children (2025-07-10) 2 commits
- daemon: use sigaction() to install child_handler()
- compat/mingw: allow sigaction(SIGCHLD)
(merged to 'next' on 2025-07-14 at a3574350ff)
+ daemon: use sigaction() to install child_handler()
+ compat/mingw: allow sigaction(SIGCHLD)
Futz with SIGCHLD handling in "git daemon".
Will merge to 'next'?
Will merge to 'master'.
source: <pull.2002.v4.git.git.1752176743.gitgitgadget@gmail.com>
* ac/auto-comment-char-fix (2025-06-30) 1 commit
* ac/auto-comment-char-fix (2025-07-16) 2 commits
- config: set comment_line_str to "#" when core.commentChar=auto
- commit: avoid scanning trailing comments when 'core.commentChar' is "auto"
"git commit" that concludes a conflicted merge failed to notice and remove
existing comment added automatically (like "# Conflicts:") when the
core.commentstring is set to 'auto'.
Expecting a reroll.
cf. <f22e864e-669d-457c-838e-961bbc977c4b@gmail.com>
source: <20250630182527.69167-1-ayu.chandekar@gmail.com>
Will merge to 'next'.
source: <cover.1752665506.git.ayu.chandekar@gmail.com>
* ly/changed-paths-traversal (2025-07-12) 5 commits
- bloom: optimize multiple pathspec items in revision
- revision: make helper for pathspec to bloom keyvec
- bloom: replace struct bloom_key * with struct bloom_keyvec
- bloom: rename function operates on bloom_key
- bloom: add test helper to return murmur3 hash
* ly/changed-paths-traversal (2025-07-14) 5 commits
(merged to 'next' on 2025-07-15 at 45fdb67b92)
+ bloom: optimize multiple pathspec items in revision
+ revision: make helper for pathspec to bloom keyvec
+ bloom: replace struct bloom_key * with struct bloom_keyvec
+ bloom: rename function operates on bloom_key
+ bloom: add test helper to return murmur3 hash
Lift the limitation to use changed-path filter in "git log" so that
it can be used for a pathspec with multiple literal paths.
Will merge to 'next'?
source: <20250712093517.17907-1-yldhome2d2@gmail.com>
* ph/fetch-prune-optim (2025-07-01) 3 commits
(merged to 'next' on 2025-07-09 at f0a1daff6a)
+ clean up interface for refs_warn_dangling_symrefs
+ refs: remove old refs_warn_dangling_symref
+ fetch-prune: optimize dangling-ref reporting
"git fetch --prune" used to be O(n^2) expensive when there are many
refs, which has been corrected.
Will merge to 'master'.
cf. <20250708013612.GB549007@coredump.intra.peff.net>
source: <20250702011214.2835529-2-phil.hord@gmail.com>
source: <20250712093517.17907-1-yldhome2d2@gmail.com>
* bc/use-sha256-by-default-in-3.0 (2025-07-01) 11 commits
@@ -568,6 +528,7 @@ Release tarballs are available at:
+ builtin: use default hash when outside a repository
+ hash: add a constant for the legacy hash algorithm
+ hash: add a constant for the default hash algorithm
(this branch is used by kl/test-installed-fix and ps/config-wo-the-repository.)
Prepare to flip the default hash function to SHA-256.
@@ -575,30 +536,26 @@ Release tarballs are available at:
source: <20250701212237.766774-1-sandals@crustytoothpaste.net>
* lo/repo-info (2025-06-19) 7 commits
. repo-info: add field layout.shallow
. repo-info: add field layout.bare
. repo-info: add the field references.format
. repo-info: add the --allow-empty flag
. repo-info: add plaintext as an output format
. repo-info: add the --format flag
. repo-info: declare the repo-info command
* lo/repo-info (2025-07-14) 4 commits
- repo: add field layout.shallow
- repo: add field layout.bare
- repo: add the field references.format
- repo: declare the repo command
A new subcommand "git repo-info" gives users a way to grab various
A new subcommand "git repo" gives users a way to grab various
repository characteristics.
Expecting a reroll.
cf. <0FEC4502-867F-4B9C-B752-376EF9464983@gmail.com>
source: <20250619225751.99699-1-lucasseikioshiro@gmail.com>
source: <20250714235231.10137-1-lucasseikioshiro@gmail.com>
* cc/fast-import-export-signature-names (2025-07-09) 1 commit
- fast-(import|export): improve on commit signature output format
(merged to 'next' on 2025-07-15 at a6a173da68)
+ fast-(import|export): improve on commit signature output format
Clean up the way how signature on commit objects are exported to
and imported from fast-import stream.
Will merge to 'next'?
Will merge to 'master'.
cf. <CABPp-BHM5afgiUf7GsTPWmrf_tm6mWnvHWMKiZPxApJzN-U8gg@mail.gmail.com>
source: <20250709141253.623563-1-christian.couder@gmail.com>
@@ -606,6 +563,7 @@ Release tarballs are available at:
- environment: remove the global variable 'sparse_expect_files_outside_of_patterns'
- environment: move access to "core.sparsecheckoutcone" into repo_settings
- environment: move access to "core.sparsecheckout" into repo_settings
(this branch is used by ds/sparse-checkout-clean.)
Two global variables related to sparse checkout have been moved to
the repository settings structure.
@@ -640,35 +598,37 @@ Release tarballs are available at:
source: <xmqqv7nyzgp7.fsf@gitster.g>
* ss/compat-bswap-revamp (2025-06-11) 6 commits
- bswap.h: provide a built-in based version of bswap32/64 if possible
- bswap.h: remove optimized x86 version of bswap32/64
- bswap.h: always overwrite ntohl/ntohll macros
- bswap.h: define GIT_LITTLE_ENDIAN on MSVC as little endian
- bswap.h: add support for __BYTE_ORDER__
- Merge branch 'ss/revert-builtin-bswap-stuff' into ss/compat-bswap-revamp
* ss/compat-bswap-revamp (2025-07-15) 6 commits
(merged to 'next' on 2025-07-16 at c8713eca28)
+ bswap.h: provide a built-in based version of bswap32/64 if possible
+ bswap.h: remove optimized x86 version of bswap32/64
+ bswap.h: always overwrite ntohl/ ntohll macros
+ bswap.h: define GIT_LITTLE_ENDIAN on msvc as little endian
+ bswap.h: add support for __BYTE_ORDER__
+ Merge branch 'ss/revert-builtin-bswap-stuff' into ss/compat-bswap-revamp
Clean-up compat/bswap.h mess.
Stalled.
cf. <xmqqo6tv1v1z.fsf@gitster.g>
source: <20250611221444.1567638-1-sebastian@breakpoint.cc>
Will merge to 'master'.
cf. <aHbX4hIKbjO6h1R5@fruit.crustytoothpaste.net>
source: <20250715191230.12081-1-sebastian@breakpoint.cc>
* ja/doc-git-log-markup (2025-07-07) 9 commits
- doc: git-log: convert log config to new doc format
- doc: git-log: convert diff options to new doc format
- doc: git-log: convert pretty formats to new doc format
- doc: git-log: convert pretty options to new doc format
- doc: git-log: convert rev list options to new doc format
- doc: git-log: convert line range format to new doc format
- doc: git-log: convert line range options to new doc format
- doc: git-log convert rev-list-description to new doc format
- doc: convert git-log to new documentation format
(merged to 'next' on 2025-07-14 at 8eb14e9306)
+ doc: git-log: convert log config to new doc format
+ doc: git-log: convert diff options to new doc format
+ doc: git-log: convert pretty formats to new doc format
+ doc: git-log: convert pretty options to new doc format
+ doc: git-log: convert rev list options to new doc format
+ doc: git-log: convert line range format to new doc format
+ doc: git-log: convert line range options to new doc format
+ doc: git-log convert rev-list-description to new doc format
+ doc: convert git-log to new documentation format
Doc mark-up updates.
Will merge to 'next'.
Will merge to 'master'.
source: <pull.1933.v3.git.1751914412.gitgitgadget@gmail.com>
@@ -692,19 +652,6 @@ Release tarballs are available at:
source: <20250605140644.239199-1-kuforiji98@gmail.com>
* ly/load-bitmap-leakfix (2025-06-30) 3 commits
(merged to 'next' on 2025-07-08 at 6e6d182a8c)
+ pack-bitmap: add load corrupt bitmap test
+ pack-bitmap: reword comments in test_bitmap_commits()
+ pack-bitmap: fix memory leak if load_bitmap() failed
Leakfix with a new and a bit invasive test.
Will merge to 'master'.
cf. <aG2XZYamUv5FWq/W@nand.local>
source: <pull.1962.v6.git.git.1751347929.gitgitgadget@gmail.com>
* tb/prepare-midx-pack-cleanup (2025-05-28) 5 commits
- midx: return a `packed_git` pointer from `prepare_midx_pack()`
- midx-write.c: extract inner loop from fill_packs_from_midx()
@@ -746,33 +693,6 @@ Release tarballs are available at:
source: <pull.1915.v3.git.1751128486.gitgitgadget@gmail.com>
* ps/object-store (2025-07-01) 17 commits
(merged to 'next' on 2025-07-07 at e19db55858)
+ odb: rename `read_object_with_reference()`
+ odb: rename `pretend_object_file()`
+ odb: rename `has_object()`
+ odb: rename `repo_read_object_file()`
+ odb: rename `oid_object_info()`
+ odb: trivial refactorings to get rid of `the_repository`
+ odb: get rid of `the_repository` when handling submodule sources
+ odb: get rid of `the_repository` when handling the primary source
+ odb: get rid of `the_repository` in `for_each()` functions
+ odb: get rid of `the_repository` when handling alternates
+ odb: get rid of `the_repository` in `odb_mkstemp()`
+ odb: get rid of `the_repository` in `assert_oid_type()`
+ odb: get rid of `the_repository` in `find_odb()`
+ odb: introduce parent pointers
+ object-store: rename files to "odb.{c,h}"
+ object-store: rename `object_directory` to `odb_source`
+ object-store: rename `raw_object_store` to `object_database`
(this branch is used by ps/object-file-wo-the-repository and ps/object-store-midx.)
Code clean-up around object access API.
Will merge to 'master'.
source: <20250701-pks-object-store-wo-the-repository-v6-0-dbf3894ab4e2@pks.im>
* cc/promisor-remote-capability (2025-06-25) 5 commits
- promisor-remote: use string constants for 'name' and 'url' too
- promisor-remote: allow a client to check fields
@@ -800,6 +720,7 @@ Release tarballs are available at:
+ pack-objects: factor out handling '--stdin-packs'
+ pack-objects: limit scope in 'add_object_entry_from_pack()'
+ pack-objects: use standard option incompatibility functions
(this branch is used by ps/object-store-midx.)
"pack-objects" has been taught to avoid pointing into objects in
cruft packs from midx.