]> git.ipfire.org Git - thirdparty/git.git/commitdiff
What's cooking (2025/07 #05)
authorJunio C Hamano <gitster@pobox.com>
Thu, 17 Jul 2025 21:18:38 +0000 (14:18 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 17 Jul 2025 21:18:38 +0000 (14:18 -0700)
whats-cooking.txt

index dfa8fefb1fd1d0d961e41d638235d8c653b3b530..690a1d577f5cff774c8ea798db609dcfb0ab91a3 100644 (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
-
- 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>
-
+* 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
 
-* 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
+ Documentation updates for "git send-email".
+ source: <20250630180511.499-1-gargaditya08@proton.me>
 
- Drop FreeBSD 4 support and assume we are at least at FreeBSD 6 with
- memmem() supported.
- source: <20250702093736.36074-1-carenas@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
 
-* 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
+ Leakfix with a new and a bit invasive test.
+ cf. <aG2XZYamUv5FWq/W@nand.local>
+ source: <pull.1962.v6.git.git.1751347929.gitgitgadget@gmail.com>
 
- Docfix.
- source: <20250702161951.22908-2-bacs@librecast.net>
 
+* 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
 
-* 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
+ "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>
 
- Use of sysctl() system call to learn the total RAM size used on
- BSDs has been corrected.
- source: <20250707164518.6600-1-carenas@gmail.com>
 
+* 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
 
-* 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
+ Doc update.
+ source: <20250708-b4-pks-pack-refs-document-files-heuristic-v1-1-e28d65a94573@pks.im>
 
- 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>
 
+* 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.)
 
-* 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
+ Code clean-up around object access API.
+ source: <20250701-pks-object-store-wo-the-repository-v6-0-dbf3894ab4e2@pks.im>
 
- "make coccicheck" succeeds even when spatch made suggestions, which
- has been updated to fail in such a case.
- source: <xmqqbjqe77vw.fsf@gitster.g>
 
+* 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
 
-* 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
+ 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>
 
- 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>
 
+* ps/t1006-tap-fix (2025-07-08) 1 commit
+  (merged to 'next' on 2025-07-09 at bbed1acc2a)
+ + t1006: fix broken TAP format
 
-* 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
+ Test fix.
+ source: <20250708-b4-pks-t1006-fix-tap-format-v1-1-c3f837448364@pks.im>
 
- Documentation updates.
- source: <cover.1751382830.git.code@khaugsbakk.name>
 
+* 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
 
-* 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
+ 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>
 
- 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>
+--------------------------------------------------
+[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.)
 
-* 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
+ GIT_TEST_INSTALLED was not honored in the recent topic related to
+ SHA256 hashes, which has been corrected.
 
- "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>
+ Will merge to 'master'.
+ source: <pull.2011.git.git.1752605874596.gitgitgadget@gmail.com>
 
 
-* 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 '\@'
+* pw/config-kvi-remove-path (2025-07-15) 1 commit
+  (merged to 'next' on 2025-07-16 at 3203507b49)
+ + config: remove unneeded struct field
 
- Test fixes.
- source: <20250707-b4-pks-t-perlless-fixes-v1-0-92b2de1c3dd0@pks.im>
+ Remove a redundant member from kvi struct.
 
+ Will merge to 'master'.
+ source: <31724ce432b19088b7c7643654788d8e712b3193.1752588042.git.phillip.wood@dunelm.org.uk>
 
-* 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>
+* 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.
 
-* 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
+ Will merge to 'next', after squashing the fixup in?
+ source: <bc079b3c-a472-4f5d-95ca-390f9de25196@web.de>
 
- Tempfile removal fix in the codepath to sign commits with SSH keys.
- source: <20250707184852.16010-1-redoste@redoste.xyz>
 
+* 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
 
-* 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
+ Document that we do not require "real" name when signing your
+ patches off.
 
- Build fix for FreeBSD.
- source: <e6a80163-47ef-436b-98a6-2ac39c477080@ramsayjones.plus.com>
+ Will merge to 'master'.
+ source: <20250716002523.1392423-1-sandals@crustytoothpaste.net>
 
 
-* 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
+* jc/ci-print-test-failures-fix (2025-07-16) 1 commit
+ - ci: allow github-actions print test failures again
 
- "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>
+ CI fix.
 
+ Comments?
+ source: <xmqqa553alp1.fsf_-_@gitster.g>
 
-* 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>
+* 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.
 
-* 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
+ 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.
 
- Doc fix.
- source: <pull.1940.git.1751737158670.gitgitgadget@gmail.com>
+ Will merge to 'next'?
+ source: <20250717-pks-config-wo-the-repository-v1-0-d888e4a17de1@pks.im>
 
 --------------------------------------------------
-[New Topics]
+[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.