]> git.ipfire.org Git - thirdparty/git.git/commitdiff
What's cooking (2024/03 #02)
authorJunio C Hamano <gitster@pobox.com>
Fri, 8 Mar 2024 01:10:27 +0000 (17:10 -0800)
committerJunio C Hamano <gitster@pobox.com>
Fri, 8 Mar 2024 01:10:27 +0000 (17:10 -0800)
whats-cooking.txt

index 976f3d51c626a0c143b1ea8a279765803e27c0cf..b3895b182e9ddb578d67610b66216cac0c0d4e0d 100644 (file)
@@ -1,10 +1,10 @@
 To: git@vger.kernel.org
-Subject: What's cooking in git.git (Mar 2024, #01; Mon, 4)
-X-master-at: b387623c12f3f4a376e4d35a610fd3e55d7ea907
-X-next-at: de5f6a74cb92fb2d418f67c29f18e8f21f7e420c
+Subject: What's cooking in git.git (Mar 2024, #02; Thu, 7)
+X-master-at: e09f1254c54329773904fe25d7c545a1fb4fa920
+X-next-at: c1ea87d7ee147b4fd526f238b8e20889c532d10d
 Bcc: lwn@lwn.net, gitster@pobox.com
 
-What's cooking in git.git (Mar 2024, #01; Mon, 4)
+What's cooking in git.git (Mar 2024, #02; Thu, 7)
 --------------------------------------------------
 
 Here are the topics that have been cooking in my tree.  Commits
@@ -17,6 +17,8 @@ topic without enough support may be discarded after a long period of
 no activity (of course they can be resubmit when new interests
 arise).
 
+The 'maint' branch now points at the 2.44 maintenance track.
+
 Copies of the source code to Git live in many repositories, and the
 following is a list of the ones I push into or their mirrors.  Some
 repositories have only a subset of branches.
@@ -48,103 +50,104 @@ Release tarballs are available at:
 --------------------------------------------------
 [Graduated to 'master']
 
-* cp/t9146-use-test-path-helpers (2024-02-14) 1 commit
-  (merged to 'next' on 2024-02-21 at 0b8356ef33)
- + t9146: replace test -d/-e/-f with appropriate test_path_is_* function
+* ak/rebase-autosquash (2024-02-27) 1 commit
+  (merged to 'next' on 2024-03-01 at 57a34830b7)
+ + rebase: fix typo in autosquash documentation
 
- Test script clean-up.
- source: <pull.1661.v3.git.1707933048210.gitgitgadget@gmail.com>
+ Originally merged to 'next' on 2024-02-27
 
+ Typofix.
+ source: <pull.1676.git.1709015578890.gitgitgadget@gmail.com>
 
-* ds/doc-send-email-capitalization (2024-02-20) 1 commit
-  (merged to 'next' on 2024-02-21 at c4aac4b993)
- + documentation: send-email: use camel case consistently
 
- Doc update.
- source: <88f1fe08c3047e14090957093ee8d98b0f60cb6c.1708467601.git.dsimic@manjaro.org>
+* cc/rev-list-allow-missing-tips (2024-02-28) 5 commits
+  (merged to 'next' on 2024-03-01 at fd7b109d04)
+ + revision: fix --missing=[print|allow*] for annotated tags
+  (merged to 'next' on 2024-03-01 at ac0fc94378)
+ + rev-list: allow missing tips with --missing=[print|allow*]
+ + t6022: fix 'test' style and 'even though' typo
+ + oidset: refactor oidset_insert_from_set()
+ + revision: clarify a 'return NULL' in get_reference()
+
+ Originally merged to 'next' on 2024-02-28
+
+ "git rev-list --missing=print" has learned to optionally take
+ "--allow-missing-tips", which allows the objects at the starting
+ points to be missing.
+ source: <20240214142513.4002639-1-christian.couder@gmail.com>
 
 
-* hs/rebase-not-in-progress (2024-02-21) 1 commit
-  (merged to 'next' on 2024-02-23 at ce53f5243f)
- + rebase: make warning less passive aggressive
+* eg/add-uflags (2024-02-29) 1 commit
+  (merged to 'next' on 2024-03-01 at 5dbc997561)
+ + add: use unsigned type for collection of bits
 
- Error message update.
- source: <pull.1669.v2.git.1708537097448.gitgitgadget@gmail.com>
+ Originally merged to 'next' on 2024-02-29
 
+ Code clean-up practice.
+ source: <20240229194444.8499-2-giganteeugenio2@gmail.com>
 
-* ja/doc-placeholders-markup-rules (2024-02-21) 1 commit
-  (merged to 'next' on 2024-02-23 at b6761ceeac)
- + doc: clarify the format of placeholders
 
- The way placeholders are to be marked-up in documentation have been
- specified; use "_<placeholder>_" to typeset the word inside a pair
- of <angle-brakets> emphasized.
- source: <pull.1671.git.1708550340094.gitgitgadget@gmail.com>
+* jc/doc-compat-util (2024-02-27) 1 commit
+  (merged to 'next' on 2024-03-01 at 89b76c65d7)
+ + doc: clarify the wording on <git-compat-util.h> requirement
 
+ Originally merged to 'next' on 2024-02-27
 
-* ja/docfixes (2024-02-20) 3 commits
-  (merged to 'next' on 2024-02-21 at 6d778ca672)
- + doc: end sentences with full-stop
- + doc: close unclosed angle-bracket of a placeholder in git-clone doc
- + doc: git-rev-parse: enforce command-line description syntax
+ Clarify wording in the CodingGuidelines that requires <git-compat-util.h>
+ to be the first header file.
+ source: <xmqqle76kdpr.fsf_-_@gitster.g>
 
- Doc update.
- source: <pull.1670.git.1708468374.gitgitgadget@gmail.com>
 
+* jc/no-include-of-compat-util-from-headers (2024-02-24) 1 commit
+  (merged to 'next' on 2024-03-01 at ebb921087e)
+ + compat: drop inclusion of <git-compat-util.h>
 
-* jc/doc-add-placeholder-fix (2024-02-21) 1 commit
-  (merged to 'next' on 2024-02-23 at 6950ff216b)
- + doc: apply the new placeholder rules to git-add documentation
+ Originally merged to 'next' on 2024-02-26
 
- Practice the new mark-up rule for <placeholders> with "git add"
- documentation page.
- source: <xmqqbk89molz.fsf@gitster.g>
+ Header file clean-up.
+ source: <xmqqwmqtli18.fsf@gitster.g>
 
 
-* jw/remote-doc-typofix (2024-02-21) 1 commit
-  (merged to 'next' on 2024-02-23 at fe95873cfa)
- + git-remote.txt: fix typo
+* jc/no-lazy-fetch (2024-02-27) 3 commits
+  (merged to 'next' on 2024-03-01 at 14303cdbfe)
+ + git: extend --no-lazy-fetch to work across subprocesses
+ + git: document GIT_NO_REPLACE_OBJECTS environment variable
+ + git: --no-lazy-fetch option
 
- Docfix.
- source: <20240221083554.5255-1-jwilk@jwilk.net>
+ Originally merged to 'next' on 2024-02-29
 
+ "git --no-lazy-fetch cmd" allows to run "cmd" while disabling lazy
+ fetching of objects from the promisor remote, which may be handy
+ for debugging.
+ source: <xmqq1q8xx38i.fsf@gitster.g>
+ source: <xmqq1q9cl3xv.fsf@gitster.g>
+ source: <xmqq1q9mmtpw.fsf@gitster.g>
 
-* ps/difftool-dir-diff-exit-code (2024-02-20) 1 commit
-  (merged to 'next' on 2024-02-21 at a7bbef5a5f)
- + git-difftool--helper: honor `--trust-exit-code` with `--dir-diff`
 
- "git difftool --dir-diff" learned to honor the "--trust-exit-code"
- option; it used to always exit with 0 and signalled success.
- Acked-by: David Aguilar <davvid@gmail.com>
- cf. <CAJDDKr5+3jszG=psh=kUGDjNCeTDGPSS-qDuN=JAq-3ua=bNDg@mail.gmail.com>
- source: <0fac668f8fc021af9f9c4df5134da59816307ccc.1708423309.git.ps@pks.im>
+* jk/reflog-special-cases-fix (2024-02-26) 3 commits
+  (merged to 'next' on 2024-03-01 at 2b67f6e668)
+ + read_ref_at(): special-case ref@{0} for an empty reflog
+ + get_oid_basic(): special-case ref@{n} for oldest reflog entry
+ + Revert "refs: allow @{n} to work with n-sized reflog"
 
+ Originally merged to 'next' on 2024-02-27
 
-* ps/reflog-list (2024-02-21) 9 commits
-  (merged to 'next' on 2024-02-23 at 7413632239)
- + builtin/reflog: introduce subcommand to list reflogs
- + refs: stop resolving ref corresponding to reflogs
- + refs: drop unused params from the reflog iterator callback
- + refs: always treat iterators as ordered
- + refs/files: sort merged worktree and common reflogs
- + refs/files: sort reflogs returned by the reflog iterator
- + dir-iterator: support iteration in sorted order
- + dir-iterator: pass name to `prepare_next_entry_data()` directly
- + Merge branch 'ps/reftable-backend' into ps/reflog-list
+ The logic to access reflog entries by date and number had ugly
+ corner cases at the boundaries, which have been cleaned up.
+ source: <20240226100010.GA1214708@coredump.intra.peff.net>
 
- "git reflog" learned a "list" subcommand that enumerates known reflogs.
- source: <cover.1708518982.git.ps@pks.im>
 
+* jk/textconv-cache-outside-repo-fix (2024-02-26) 1 commit
+  (merged to 'next' on 2024-03-01 at 8508b83758)
+ + userdiff: skip textconv caching when not in a repository
 
-* tb/multi-pack-verbatim-reuse (2024-02-23) 1 commit
-  (merged to 'next' on 2024-02-23 at 8ee07f1da4)
- + Documentation/config/pack.txt: fix broken AsciiDoc mark-up
+ Originally merged to 'next' on 2024-02-26
 
- Docfix.
- source: <72bb58e5f3b8a5a622394c5ff40426156e122580.1708720255.git.me@ttaylorr.com>
+ The code incorrectly attempted to use textconv cache when asked,
+ even when we are not running in a repository, which has been
+ corrected.
+ source: <20240226102729.GB2685773@coredump.intra.peff.net>
 
---------------------------------------------------
-[New Topics]
 
 * jk/upload-pack-bounded-resources (2024-02-28) 9 commits
   (merged to 'next' on 2024-03-01 at b70b6f0913)
@@ -163,8 +166,6 @@ Release tarballs are available at:
  Various parts of upload-pack has been updated to bound the resource
  consumption relative to the size of the repository to protect from
  abusive clients.
-
- Will merge to 'master'.
  source: <20240228223700.GA1157826@coredump.intra.peff.net>
 
 
@@ -180,395 +181,500 @@ Release tarballs are available at:
  The upload-pack program, when talking over v2, accepted the
  packfile-uris protocol extension from the client, even if it did
  not advertise the capability, which has been corrected.
-
- Will merge to 'master'.
  source: <20240228224625.GA1158651@coredump.intra.peff.net>
 
 
-* es/config-doc-sort-sections (2024-02-29) 1 commit
-  (merged to 'next' on 2024-03-04 at 0752144ed7)
- + docs: sort configuration variable groupings alphabetically
+* js/merge-tree-3-trees (2024-02-23) 7 commits
+  (merged to 'next' on 2024-03-01 at a75dc95f04)
+ + fill_tree_descriptor(): mark error message for translation
+ + cache-tree: avoid an unnecessary check
+ + Always check `parse_tree*()`'s return value
+ + t4301: verify that merge-tree fails on missing blob objects
+ + merge-ort: do check `parse_tree()`'s return value
+ + merge-tree: fail with a non-zero exit code on missing tree objects
+ + merge-tree: accept 3 trees as arguments
 
- Doc updates.
+ Originally merged to 'next' on 2024-02-28
 
- Will merge to 'master'.
- source: <20240229190229.20222-1-ericsunshine@charter.net>
+ "git merge-tree" has learned that the three trees involved in the
+ 3-way merge only need to be trees, not necessarily commits.
+ source: <pull.1647.git.1706277694231.gitgitgadget@gmail.com>
+ source: <pull.1651.v4.git.1708677266.gitgitgadget@gmail.com>
 
 
-* kh/doc-dashed-commands-have-not-worked-for-a-long-time (2024-03-01) 1 commit
-  (merged to 'next' on 2024-03-04 at 7e070c67f9)
- + gitcli: drop mention of “non-dashed form”
+* js/remove-cruft-files (2024-02-26) 1 commit
+  (merged to 'next' on 2024-03-01 at 63100a274b)
+ + neue: remove a bogus empty file
 
- Doc update.
+ Originally merged to 'next' on 2024-02-26
 
- Will merge to 'master'.
- source: <5b34bc4e22816f7f19bd26c15a08fe4c749b72f8.1709316230.git.code@khaugsbakk.name>
+ Remove an empty file that shouldn't have been added in the first
+ place.
+ source: <pull.1674.git.1708958183225.gitgitgadget@gmail.com>
 
 
-* jc/xwrite-cleanup (2024-03-02) 3 commits
- - repack: check error writing to pack-objects subprocess
- - sideband: avoid short write(2)
- - unpack: replace xwrite() loop with write_in_full()
+* jt/commit-redundant-scissors-fix (2024-02-27) 2 commits
+  (merged to 'next' on 2024-03-01 at e5983498f1)
+ + commit: unify logic to avoid multiple scissors lines when merging
+ + commit: avoid redundant scissor line with --cleanup=scissors -v
 
- Uses of xwrite() helper have been audited and updated for better
- error checking and simpler code.
- source: <20240302190348.3946569-1-gitster@pobox.com>
+ Originally merged to 'next' on 2024-02-29
 
+ "git commit -v --cleanup=scissors" used to add the scissors line
+ twice in the log message buffer, which has been corrected.
+ source: <Zd2eLxPelxvP8FDk@localhost>
 
-* jc/test-i18ngrep (2024-03-02) 1 commit
- - test_i18ngrep: hard deprecate and forbid its use
 
- With release 2.44 we got rid of all uses of test_i18ngrep and there
- is no in-flight topic that adds a new use of it.  Make a call to
- test_i18ngrep a hard failure, so that we can remove it at the end
- of this release cycle.
+* kn/for-all-refs (2024-02-23) 6 commits
+  (merged to 'next' on 2024-03-01 at 76a1297ace)
+ + for-each-ref: add new option to include root refs
+ + ref-filter: rename 'FILTER_REFS_ALL' to 'FILTER_REFS_REGULAR'
+ + refs: introduce `refs_for_each_include_root_refs()`
+ + refs: extract out `loose_fill_ref_dir_regular_file()`
+ + refs: introduce `is_pseudoref()` and `is_headref()`
+ + Merge branch 'ps/reftable-backend' into kn/for-all-refs
 
- Comments?
- source: <xmqq5xy4zhdc.fsf@gitster.g>
+ Originally merged to 'next' on 2024-02-27
 
+ "git for-each-ref" learned "--include-root-refs" option to show
+ even the stuff outside the 'refs/' hierarchy.
+ source: <20240223100112.44127-1-karthik.188@gmail.com>
 
-* gt/core-bare-in-templates (2024-03-04) 1 commit
- - setup: remove unnecessary variable
 
- Code simplification.
+* ml/log-merge-with-cherry-pick-and-other-pseudo-heads (2024-02-28) 2 commits
+  (merged to 'next' on 2024-03-01 at 339111ec08)
+ + revision: implement `git log --merge` also for rebase/cherry-pick/revert
+ + revision: ensure MERGE_HEAD is a ref in prepare_show_merge
 
- Will merge to 'next'?
- source: <20240304151811.511780-1-shyamthakkar001@gmail.com>
+ Originally merged to 'next' on 2024-02-29
 
+ "git log --merge" learned to pay attention to CHERRY_PICK_HEAD and
+ other kinds of *_HEAD pseudorefs.
+ source: <20240228-ml-log-merge-with-cherry-pick-and-other-pseudo-heads-v6-0-8ec34c052b39@gmail.com>
 
-* so/clean-dry-run-without-force (2024-03-04) 2 commits
- - clean: further clean-up of implementation around "--force"
- - clean: improve -n and -f implementation and documentation
 
- The implementation in "git clean" that makes "-n" and "-i" ignore
- clean.requireForce has been simplified, together with the
- documentation.
+* pb/ort-make-submodule-conflict-message-an-advice (2024-02-26) 1 commit
+  (merged to 'next' on 2024-03-01 at df880cde2e)
+ + merge-ort: turn submodule conflict suggestions into an advice
 
- Will merge to 'next'.
- source: <87le6ziqzb.fsf_-_@osv.gnss.ru>
- source: <20240303220600.2491792-1-gitster@pobox.com>
+ Originally merged to 'next' on 2024-02-27
 
+ When a merge conflicted at a submodule, merge-ort backend used to
+ unconditionally give a lengthy message to suggest how to resolve
+ it.  Now the message can be squelched as an advice message.
+ source: <pull.1661.v2.git.git.1708954048301.gitgitgadget@gmail.com>
 
-* jh/trace2-missing-def-param-fix (2024-03-04) 4 commits
- - trace2: remove unneeded calls to generate 'def_param' set
- - trace2: emit 'def_param' set with 'cmd_name' event
- - trace2: avoid emitting 'def_param' set more than once
- - t0211: demonstrate missing 'def_param' events for certain commands
 
- Some trace2 events that lacked def_param have learned to show it,
- enriching the output.
+* ps/reftable-repo-init-fix (2024-02-27) 2 commits
+  (merged to 'next' on 2024-03-01 at abbf85051b)
+ + refs/reftable: don't fail empty transactions in repo without HEAD
+ + Merge branch 'ps/remote-helper-repo-initialization-fix' into ps/reftable-repo-init-fix
+ (this branch uses ps/remote-helper-repo-initialization-fix.)
 
- Needs review.
- source: <pull.1679.git.1709566808.gitgitgadget@gmail.com>
+ Originally merged to 'next' on 2024-02-29
 
+ Clear the fallout from a fix for 2.44 regression.
+ source: <95be968e10bd02c64448786e690bbefe5c082577.1709041721.git.ps@pks.im>
 
-* ps/reftable-stack-tempfile (2024-03-04) 4 commits
- - reftable/stack: register compacted tables as tempfiles
- - reftable/stack: register lockfiles during compaction
- - reftable/stack: register new tables as tempfiles
- - lockfile: report when rollback fails
 
- The code in reftable backend that creates new table files works
- better with the tempfile framework to avoid leaving cruft after a
- failure.
+* ps/remote-helper-repo-initialization-fix (2024-02-27) 1 commit
+  (merged to 'next' on 2024-03-01 at 7b79ffbd8f)
+ + builtin/clone: allow remote helpers to detect repo
+ (this branch is used by ps/reftable-repo-init-fix.)
 
- Needs review.
- source: <cover.1709549619.git.ps@pks.im>
+ Originally merged to 'next' on 2024-02-29
 
+ A custom remote helper no longer cannot access the newly created
+ repository during "git clone", which is a regression in Git 2.44.
+ This has been corrected.
+ source: <9d888adf92e9a8af7c18847219f97d3e595e3e36.1709041721.git.ps@pks.im>
 
-* rs/opt-parse-long-fixups (2024-03-03) 6 commits
- - parse-options: rearrange long_name matching code
- - parse-options: normalize arg and long_name before comparison
- - parse-options: detect ambiguous self-negation
- - parse-options: factor out register_abbrev() and struct parsed_option
- - parse-options: set arg of abbreviated option lazily
- - parse-options: recognize abbreviated negated option with arg
 
- The parse-options code that deals with abbreviated long option
- names have been cleaned up.
+* rs/fetch-simplify-with-starts-with (2024-02-26) 1 commit
+  (merged to 'next' on 2024-03-01 at 000e015fff)
+ + fetch: convert strncmp() with strlen() to starts_with()
 
- Needs review.
- source: <20240303121944.20627-1-l.s.r@web.de>
+ Originally merged to 'next' on 2024-02-27
 
+ Code simplification.
+ source: <cb94b938-03f9-4dd3-84c1-f5244ca81be3@web.de>
 
-* sj/t9117-path-is-file (2024-03-04) 1 commit
-  (merged to 'next' on 2024-03-04 at de5f6a74cb)
- + t9117: prefer test_path_* helper functions
 
- GSoC practice to replace "test -f" with "test_path_is_file".
+* rs/name-rev-with-mempool (2024-02-26) 2 commits
+  (merged to 'next' on 2024-03-01 at d53eac1836)
+ + name-rev: use mem_pool_strfmt()
+ + mem-pool: add mem_pool_strfmt()
 
- Will merge to 'master'.
- source: <20240304095436.56399-2-shejialuo@gmail.com>
+ Originally merged to 'next' on 2024-02-27
 
+ Many small allocations "git name-rev" makes have been updated to
+ allocate from a mem-pool.
+ source: <20240225113947.89357-1-l.s.r@web.de>
 
-* vm/t7301-use-test-path-helpers (2024-03-04) 1 commit
- - t7301: use test_path_is_(missing|file)
 
- GSoC practice to replace "test -f" with "test_path_is_file".
+* rs/submodule-prefix-simplify (2024-02-26) 1 commit
+  (merged to 'next' on 2024-03-01 at 05d4d90201)
+ + submodule: use strvec_pushf() for --submodule-prefix
 
- Will merge to 'next'?
- source: <20240304171732.64457-2-vincenzo.mezzela@gmail.com>
+ Originally merged to 'next' on 2024-02-27
 
---------------------------------------------------
-[Cooking]
+ Code simplification.
+ source: <8cd983fb-32b9-41c6-a9e7-a485b190488c@web.de>
 
-* cw/git-std-lib (2024-02-28) 4 commits
- - SQUASH??? get rid of apparent debugging crufts
- - test-stdlib: show that git-std-lib is independent
- - git-std-lib: introduce Git Standard Library
- - pager: include stdint.h because uintmax_t is used
 
- Split libgit.a out to a separate git-std-lib tor easier reuse.
+* sg/upload-pack-error-message-fix (2024-02-26) 1 commit
+  (merged to 'next' on 2024-03-01 at b94664a7a0)
+ + upload-pack: don't send null character in abort message to the client
 
- Needs review.
- source: <cover.1696021277.git.jonathantanmy@google.com>
+ Originally merged to 'next' on 2024-02-27
 
+ An error message from "git upload-pack", which responds to "git
+ fetch" requests, had a trialing NUL in it, which has been
+ corrected.
+ source: <20240225183452.1939334-1-szeder.dev@gmail.com>
 
-* js/merge-base-with-missing-commit (2024-02-29) 11 commits
-  (merged to 'next' on 2024-03-01 at 3e3eabaee9)
- + commit-reach(repo_get_merge_bases_many_dirty): pass on errors
- + commit-reach(repo_get_merge_bases_many): pass on "missing commits" errors
- + commit-reach(get_octopus_merge_bases): pass on "missing commits" errors
- + commit-reach(repo_get_merge_bases): pass on "missing commits" errors
- + commit-reach(get_merge_bases_many_0): pass on "missing commits" errors
- + commit-reach(merge_bases_many): pass on "missing commits" errors
- + commit-reach(paint_down_to_common): start reporting errors
- + commit-reach(paint_down_to_common): prepare for handling shallow commits
- + commit-reach(repo_in_merge_bases_many): report missing commits
- + commit-reach(repo_in_merge_bases_many): optionally expect missing commits
- + commit-reach(paint_down_to_common): plug two memory leaks
+--------------------------------------------------
+[New Topics]
 
- Originally merged to 'next' on 2024-02-29
+* ag/t0010-modernize (2024-03-05) 1 commit
+  (merged to 'next' on 2024-03-07 at 38339abc2d)
+ + tests: modernize the test script t0010-racy-git.sh
 
Make sure failure return from merge_bases_many() is properly caught.
GSoC practice to modernize a test script.
 
- Needs an incremental fix-up.
- cf.<20240301065805.GB2680308@coredump.intra.peff.net>
- source: <pull.1657.v4.git.1709113457.gitgitgadget@gmail.com>
+ Will merge to 'master'.
+ source: <pull.1675.v3.git.1709676557639.gitgitgadget@gmail.com>
 
 
-* eg/add-uflags (2024-02-29) 1 commit
-  (merged to 'next' on 2024-03-01 at 5dbc997561)
- + add: use unsigned type for collection of bits
+* fs/find-end-of-log-message-fix (2024-03-07) 1 commit
+ - wt-status: don't find scissors line beyond buf len
 
- Originally merged to 'next' on 2024-02-29
+ The code to find the effective end of log message can fall into an
+ endless loop, which has been corrected.
 
- Code clean-up practice.
+ Waiting for review response.
+ source: <20240307183743.219951-1-flosch@nutanix.com>
 
- Will merge to 'master'.
- source: <20240229194444.8499-2-giganteeugenio2@gmail.com>
 
+* hd/config-mak-os390 (2024-03-06) 1 commit
+  (merged to 'next' on 2024-03-07 at 289d3ab691)
+ + build: support z/OS (OS/390).
 
-* jc/doc-compat-util (2024-02-27) 1 commit
-  (merged to 'next' on 2024-03-01 at 89b76c65d7)
- + doc: clarify the wording on <git-compat-util.h> requirement
+ Platform specific tweaks for OS/390 has been added to
+ config.mak.uname.
 
- Originally merged to 'next' on 2024-02-27
+ Will merge to 'master'.
+ source: <pull.1663.v4.git.git.1709703857881.gitgitgadget@gmail.com>
+
+
+* jk/core-comment-string (2024-03-07) 15 commits
+ - config: allow multi-byte core.commentChar
+ - environment: drop comment_line_char compatibility macro
+ - wt-status: drop custom comment-char stringification
+ - sequencer: handle multi-byte comment characters when writing todo list
+ - find multi-byte comment chars in unterminated buffers
+ - find multi-byte comment chars in NUL-terminated strings
+ - prefer comment_line_str to comment_line_char for printing
+ - strbuf: accept a comment string for strbuf_add_commented_lines()
+ - strbuf: accept a comment string for strbuf_commented_addf()
+ - strbuf: accept a comment string for strbuf_stripspace()
+ - environment: store comment_line_char as a string
+ - strbuf: avoid shadowing global comment_line_char name
+ - commit: refactor base-case of adjust_comment_line_char()
+ - strbuf: avoid static variables in strbuf_add_commented_lines()
+ - strbuf: simplify comment-handling in add_lines() helper
+
+ core.commentChar used to be limited to a single byte, but has been
+ updated to allow an arbitrary multi-byte sequence.
 
- Clarify wording in the CodingGuidelines that requires <git-compat-util.h>
- to be the first header file.
+ Will merge to 'next'?
+ source: <20240307091407.GA2072522@coredump.intra.peff.net>
 
- Will merge to 'master'.
- source: <xmqqle76kdpr.fsf_-_@gitster.g>
 
+* jk/doc-remote-helpers-markup-fix (2024-03-07) 1 commit
+ - doc/gitremote-helpers: fix missing single-quote
 
-* jc/no-include-of-compat-util-from-headers (2024-02-24) 1 commit
-  (merged to 'next' on 2024-03-01 at ebb921087e)
- + compat: drop inclusion of <git-compat-util.h>
+ Doc mark-up fix.
 
- Originally merged to 'next' on 2024-02-26
+ Will merge to 'next'.
+ source: <20240307084313.GA2072022@coredump.intra.peff.net>
 
- Header file clean-up.
 
- Will merge to 'master'.
- source: <xmqqwmqtli18.fsf@gitster.g>
+* js/build-fuzz-more-often (2024-03-05) 3 commits
+ - SQUASH???
+ - fuzz: link fuzz programs with `make all` on Linux
+ - ci: also define CXX environment variable
 
+ In addition to building the objects needed, try to link the objects
+ that are used in fuzzer tests, to make sure at least they build
+ without bitrot, in Linux CI runs.
 
-* jk/reflog-special-cases-fix (2024-02-26) 3 commits
-  (merged to 'next' on 2024-03-01 at 2b67f6e668)
- + read_ref_at(): special-case ref@{0} for an empty reflog
- + get_oid_basic(): special-case ref@{n} for oldest reflog entry
- + Revert "refs: allow @{n} to work with n-sized reflog"
+ Comments?
+ source: <cover.1709673020.git.steadmon@google.com>
 
- Originally merged to 'next' on 2024-02-27
 
- The logic to access reflog entries by date and number had ugly
- corner cases at the boundaries, which have been cleaned up.
+* kh/branch-ref-syntax-advice (2024-03-05) 5 commits
+  (merged to 'next' on 2024-03-07 at 914f01967b)
+ + branch: advise about ref syntax rules
+ + advice: use double quotes for regular quoting
+ + advice: use backticks for verbatim
+ + advice: make all entries stylistically consistent
+ + t3200: improve test style
 
- Will merge to 'master'.
- source: <20240226100010.GA1214708@coredump.intra.peff.net>
+ When git refuses to create a branch because the proposed branch
+ name is not a valid refname, an advice message is given to refer
+ the user to exact naming rules.
 
+ Will merge to 'master'.
+ source: <cover.1709670287.git.code@khaugsbakk.name>
 
-* jk/textconv-cache-outside-repo-fix (2024-02-26) 1 commit
-  (merged to 'next' on 2024-03-01 at 8508b83758)
- + userdiff: skip textconv caching when not in a repository
 
- Originally merged to 'next' on 2024-02-26
+* kh/doc-commentchar-is-a-byte (2024-03-05) 1 commit
+  (merged to 'next' on 2024-03-06 at 5941655c04)
+ + config: document `core.commentChar` as ASCII-only
 
- The code incorrectly attempted to use textconv cache when asked,
even when we are not running in a repository, which has been
+ The "core.commentChar" configuration variable only allows an ASCII
character, which was not clearly documented, which has been
  corrected.
 
  Will merge to 'master'.
- source: <20240226102729.GB2685773@coredump.intra.peff.net>
+ source: <9633f9be5ddd9ab3df4b79ee934e1ed47e90bd1d.1709656683.git.code@khaugsbakk.name>
 
 
-* js/remove-cruft-files (2024-02-26) 1 commit
-  (merged to 'next' on 2024-03-01 at 63100a274b)
- + neue: remove a bogus empty file
+* ps/reftable-block-search-fix (2024-03-07) 2 commits
+ - reftable/block: fix binary search over restart counter
+ - reftable/record: fix memory leak when decoding object records
 
- Originally merged to 'next' on 2024-02-26
+ The reftable code has its own custom binary search function whose
+ comparison callback has an unusual interface, which caused the
+ binary search to degenerate into a linear search, which has been
+ corrected.
 
- Remove an empty file that shouldn't have been added in the first
- place.
+ Will merge to 'next'?
+ source: <cover.1709843663.git.ps@pks.im>
+
+
+* ps/reftable-reflog-iteration-perf (2024-03-05) 8 commits
+ - refs/reftable: track last log record name via strbuf
+ - reftable/record: use scratch buffer when decoding records
+ - reftable/record: reuse message when decoding log records
+ - reftable/record: reuse refnames when decoding log records
+ - reftable/record: avoid copying author info
+ - reftable/record: convert old and new object IDs to arrays
+ - refs/reftable: reload correct stack when creating reflog iter
+ - Merge branch 'ps/reftable-iteration-perf-part2' into ps/reftable-reflog-iteration-perf
+ (this branch uses ps/reftable-iteration-perf-part2.)
+
+ The code to iterate over reflogs in the reftable has been optimized
+ to reduce memory allocation and deallocation.
+
+ Needs review.
+ source: <cover.1709640322.git.ps@pks.im>
+
+
+* sj/userdiff-c-sharp (2024-03-06) 1 commit
+ - userdiff: better method/property matching for C#
+
+ The userdiff patterns for C# has been updated.
+
+ Needs review.
+ source: <pull.1682.v2.git.git.1709756493673.gitgitgadget@gmail.com>
+
+--------------------------------------------------
+[Cooking]
+
+* es/config-doc-sort-sections (2024-02-29) 1 commit
+  (merged to 'next' on 2024-03-04 at 0752144ed7)
+ + docs: sort configuration variable groupings alphabetically
+
+ Doc updates.
 
  Will merge to 'master'.
- source: <pull.1674.git.1708958183225.gitgitgadget@gmail.com>
+ source: <20240229190229.20222-1-ericsunshine@charter.net>
 
 
-* jt/commit-redundant-scissors-fix (2024-02-27) 2 commits
-  (merged to 'next' on 2024-03-01 at e5983498f1)
- + commit: unify logic to avoid multiple scissors lines when merging
- + commit: avoid redundant scissor line with --cleanup=scissors -v
+* kh/doc-dashed-commands-have-not-worked-for-a-long-time (2024-03-01) 1 commit
+  (merged to 'next' on 2024-03-04 at 7e070c67f9)
+ + gitcli: drop mention of “non-dashed form”
 
- Originally merged to 'next' on 2024-02-29
+ Doc update.
 
- "git commit -v --cleanup=scissors" used to add the scissors line
- twice in the log message buffer, which has been corrected.
+ Will merge to 'master'.
+ source: <5b34bc4e22816f7f19bd26c15a08fe4c749b72f8.1709316230.git.code@khaugsbakk.name>
+
+
+* jc/xwrite-cleanup (2024-03-02) 3 commits
+  (merged to 'next' on 2024-03-07 at 43e66f7e4d)
+ + repack: check error writing to pack-objects subprocess
+ + sideband: avoid short write(2)
+ + unpack: replace xwrite() loop with write_in_full()
+
+ Uses of xwrite() helper have been audited and updated for better
+ error checking and simpler code.
 
  Will merge to 'master'.
- source: <Zd2eLxPelxvP8FDk@localhost>
+ source: <20240302190348.3946569-1-gitster@pobox.com>
 
 
-* pb/ort-make-submodule-conflict-message-an-advice (2024-02-26) 1 commit
-  (merged to 'next' on 2024-03-01 at df880cde2e)
- + merge-ort: turn submodule conflict suggestions into an advice
+* jc/test-i18ngrep (2024-03-02) 1 commit
+  (merged to 'next' on 2024-03-06 at 2c57ebc706)
+ + test_i18ngrep: hard deprecate and forbid its use
 
- Originally merged to 'next' on 2024-02-27
+ With release 2.44 we got rid of all uses of test_i18ngrep and there
+ is no in-flight topic that adds a new use of it.  Make a call to
+ test_i18ngrep a hard failure, so that we can remove it at the end
+ of this release cycle.
+
+ Will merge to 'master'.
+ source: <xmqq5xy4zhdc.fsf@gitster.g>
+
+
+* gt/core-bare-in-templates (2024-03-04) 1 commit
+  (merged to 'next' on 2024-03-06 at e54ac5acf9)
+ + setup: remove unnecessary variable
 
- When a merge conflicted at a submodule, merge-ort backend used to
- unconditionally give a lengthy message to suggest how to resolve
- it.  Now the message can be squelched as an advice message.
+ Code simplification.
 
  Will merge to 'master'.
- source: <pull.1661.v2.git.git.1708954048301.gitgitgadget@gmail.com>
+ source: <20240304151811.511780-1-shyamthakkar001@gmail.com>
 
 
-* rj/complete-worktree-paths-fix (2024-02-27) 1 commit
- - completion: fix __git_complete_worktree_paths
+* so/clean-dry-run-without-force (2024-03-04) 2 commits
+  (merged to 'next' on 2024-03-06 at ccf2e123be)
+ + clean: further clean-up of implementation around "--force"
+ + clean: improve -n and -f implementation and documentation
 
- The logic to complete the command line arguments to "git worktree"
- subcommand (in contrib/) has been updated to correctly honor things
like "git -C dir" etc.
+ The implementation in "git clean" that makes "-n" and "-i" ignore
+ clean.requireForce has been simplified, together with the
documentation.
 
- Comments?
- source: <b8f09e20-d0d3-4e0b-afe2-31affeb61052@gmail.com>
+ Will merge to 'master'.
+ source: <87le6ziqzb.fsf_-_@osv.gnss.ru>
+ source: <20240303220600.2491792-1-gitster@pobox.com>
 
 
-* rs/fetch-simplify-with-starts-with (2024-02-26) 1 commit
-  (merged to 'next' on 2024-03-01 at 000e015fff)
- + fetch: convert strncmp() with strlen() to starts_with()
+* jh/trace2-missing-def-param-fix (2024-03-07) 3 commits
+ - trace2: emit 'def_param' set with 'cmd_name' event
+ - trace2: avoid emitting 'def_param' set more than once
+ - t0211: demonstrate missing 'def_param' events for certain commands
 
- Originally merged to 'next' on 2024-02-27
+ Some trace2 events that lacked def_param have learned to show it,
+ enriching the output.
 
- Code simplification.
+ Reviewed-by: Josh Steadmon <steadmon@google.com>
+ cf. <ZejkVOVQBZhLVfHW@google.com>
 
- Will merge to 'master'.
- source: <cb94b938-03f9-4dd3-84c1-f5244ca81be3@web.de>
+ Will merge to 'next'.
+ source: <pull.1679.v2.git.1709824949.gitgitgadget@gmail.com>
 
 
-* rs/name-rev-with-mempool (2024-02-26) 2 commits
-  (merged to 'next' on 2024-03-01 at d53eac1836)
- + name-rev: use mem_pool_strfmt()
- + mem-pool: add mem_pool_strfmt()
+* ps/reftable-stack-tempfile (2024-03-07) 4 commits
+ - reftable/stack: register compacted tables as tempfiles
+ - reftable/stack: register lockfiles during compaction
+ - reftable/stack: register new tables as tempfiles
+ - lockfile: report when rollback fails
 
- Originally merged to 'next' on 2024-02-27
+ The code in reftable backend that creates new table files works
+ better with the tempfile framework to avoid leaving cruft after a
+ failure.
 
- Many small allocations "git name-rev" makes have been updated to
- allocate from a mem-pool.
+ Will merge to 'next'?
+ source: <cover.1709816483.git.ps@pks.im>
 
- Will merge to 'master'.
- source: <20240225113947.89357-1-l.s.r@web.de>
 
+* rs/opt-parse-long-fixups (2024-03-03) 6 commits
+ - parse-options: rearrange long_name matching code
+ - parse-options: normalize arg and long_name before comparison
+ - parse-options: detect ambiguous self-negation
+ - parse-options: factor out register_abbrev() and struct parsed_option
+ - parse-options: set arg of abbreviated option lazily
+ - parse-options: recognize abbreviated negated option with arg
 
-* rs/submodule-prefix-simplify (2024-02-26) 1 commit
-  (merged to 'next' on 2024-03-01 at 05d4d90201)
- + submodule: use strvec_pushf() for --submodule-prefix
+ The parse-options code that deals with abbreviated long option
+ names have been cleaned up.
 
- Originally merged to 'next' on 2024-02-27
+ Needs review.
+ source: <20240303121944.20627-1-l.s.r@web.de>
 
- Code simplification.
 
- Will merge to 'master'.
- source: <8cd983fb-32b9-41c6-a9e7-a485b190488c@web.de>
+* sj/t9117-path-is-file (2024-03-04) 1 commit
+  (merged to 'next' on 2024-03-04 at de5f6a74cb)
+ + t9117: prefer test_path_* helper functions
 
+ GSoC practice to replace "test -f" with "test_path_is_file".
 
-* rs/t-ctype-simplify (2024-03-03) 4 commits
-  (merged to 'next' on 2024-03-04 at 9bd84a8877)
- + t-ctype: avoid duplicating class names
- + t-ctype: align output of i
- + t-ctype: simplify EOF check
- + t-ctype: allow NUL anywhere in the specification string
+ Will merge to 'master'.
+ source: <20240304095436.56399-2-shejialuo@gmail.com>
 
- Code simplification to one unit-test program.
 
- Will merge to 'master'.
- source: <20240303101330.20187-1-l.s.r@web.de>
+* vm/t7301-use-test-path-helpers (2024-03-06) 1 commit
+  (merged to 'next' on 2024-03-07 at e638654635)
+ + t7301: use test_path_is_(missing|file)
 
+ GSoC practice to replace "test -f" with "test_path_is_file".
 
-* sg/upload-pack-error-message-fix (2024-02-26) 1 commit
-  (merged to 'next' on 2024-03-01 at b94664a7a0)
- + upload-pack: don't send null character in abort message to the client
+ Will merge to 'master'.
+ source: <20240304171732.64457-2-vincenzo.mezzela@gmail.com>
 
- Originally merged to 'next' on 2024-02-27
 
- An error message from "git upload-pack", which responds to "git
- fetch" requests, had a trialing NUL in it, which has been
- corrected.
+* cw/git-std-lib (2024-02-28) 4 commits
+ . SQUASH??? get rid of apparent debugging crufts
+ . test-stdlib: show that git-std-lib is independent
+ . git-std-lib: introduce Git Standard Library
+ . pager: include stdint.h because uintmax_t is used
 
- Will merge to 'master'.
- source: <20240225183452.1939334-1-szeder.dev@gmail.com>
+ Split libgit.a out to a separate git-std-lib tor easier reuse.
 
+ Expecting a reroll.
+ source: <cover.1696021277.git.jonathantanmy@google.com>
 
-* ak/rebase-autosquash (2024-02-27) 1 commit
-  (merged to 'next' on 2024-03-01 at 57a34830b7)
- + rebase: fix typo in autosquash documentation
 
- Originally merged to 'next' on 2024-02-27
+* js/merge-base-with-missing-commit (2024-02-29) 11 commits
+  (merged to 'next' on 2024-03-01 at 3e3eabaee9)
+ + commit-reach(repo_get_merge_bases_many_dirty): pass on errors
+ + commit-reach(repo_get_merge_bases_many): pass on "missing commits" errors
+ + commit-reach(get_octopus_merge_bases): pass on "missing commits" errors
+ + commit-reach(repo_get_merge_bases): pass on "missing commits" errors
+ + commit-reach(get_merge_bases_many_0): pass on "missing commits" errors
+ + commit-reach(merge_bases_many): pass on "missing commits" errors
+ + commit-reach(paint_down_to_common): start reporting errors
+ + commit-reach(paint_down_to_common): prepare for handling shallow commits
+ + commit-reach(repo_in_merge_bases_many): report missing commits
+ + commit-reach(repo_in_merge_bases_many): optionally expect missing commits
+ + commit-reach(paint_down_to_common): plug two memory leaks
 
- Typofix.
+ Originally merged to 'next' on 2024-02-29
 
- Will merge to 'master'.
- source: <pull.1676.git.1709015578890.gitgitgadget@gmail.com>
+ Make sure failure return from merge_bases_many() is properly caught.
 
+ Needs an incremental fix-up.
+ cf.<20240301065805.GB2680308@coredump.intra.peff.net>
+ source: <pull.1657.v4.git.1709113457.gitgitgadget@gmail.com>
 
-* ps/reftable-repo-init-fix (2024-02-27) 2 commits
-  (merged to 'next' on 2024-03-01 at abbf85051b)
- + refs/reftable: don't fail empty transactions in repo without HEAD
- + Merge branch 'ps/remote-helper-repo-initialization-fix' into ps/reftable-repo-init-fix
- (this branch uses ps/remote-helper-repo-initialization-fix.)
 
- Originally merged to 'next' on 2024-02-29
+* rj/complete-worktree-paths-fix (2024-02-27) 1 commit
+  (merged to 'next' on 2024-03-06 at b6ba949383)
+ + completion: fix __git_complete_worktree_paths
 
- Clear the fallout from a fix for 2.44 regression.
+ The logic to complete the command line arguments to "git worktree"
+ subcommand (in contrib/) has been updated to correctly honor things
+ like "git -C dir" etc.
 
  Will merge to 'master'.
- source: <95be968e10bd02c64448786e690bbefe5c082577.1709041721.git.ps@pks.im>
-
+ source: <b8f09e20-d0d3-4e0b-afe2-31affeb61052@gmail.com>
 
-* ps/remote-helper-repo-initialization-fix (2024-02-27) 1 commit
-  (merged to 'next' on 2024-03-01 at 7b79ffbd8f)
- + builtin/clone: allow remote helpers to detect repo
- (this branch is used by ps/reftable-repo-init-fix.)
 
- Originally merged to 'next' on 2024-02-29
+* rs/t-ctype-simplify (2024-03-03) 4 commits
+  (merged to 'next' on 2024-03-04 at 9bd84a8877)
+ + t-ctype: avoid duplicating class names
+ + t-ctype: align output of i
+ + t-ctype: simplify EOF check
+ + t-ctype: allow NUL anywhere in the specification string
 
- A custom remote helper no longer cannot access the newly created
- repository during "git clone", which is a regression in Git 2.44.
- This has been corrected.
+ Code simplification to one unit-test program.
 
  Will merge to 'master'.
- source: <9d888adf92e9a8af7c18847219f97d3e595e3e36.1709041721.git.ps@pks.im>
+ source: <20240303101330.20187-1-l.s.r@web.de>
 
 
 * pw/rebase-i-ignore-cherry-pick-help-environment (2024-02-27) 1 commit
@@ -577,66 +683,72 @@ Release tarballs are available at:
  Code simplification by getting rid of code that sets an environment
  variable that is no longer used.
 
- Comments?
+ Will merge to 'next'.
  source: <pull.1678.git.1709042783847.gitgitgadget@gmail.com>
 
 
-* as/option-names-in-messages (2024-02-16) 5 commits
- - revision.c: trivial fix to message
- builtin/clone.c: trivial fix of message
- builtin/remote.c: trivial fix of error message
- transport-helper.c: trivial fix of error message
- rebase: trivial fix of error message
+* as/option-names-in-messages (2024-03-05) 4 commits
+  (merged to 'next' on 2024-03-07 at 73ab51faba)
+ revision.c: trivial fix to message
+ builtin/clone.c: trivial fix of message
+ builtin/remote.c: trivial fix of error message
+ transport-helper.c: trivial fix of error message
 
  Error message updates.
 
Expecting a reroll.
Will merge to 'master'.
  source: <20240216101647.28837-1-ash@kambanaria.org>
 
 
-* jh/fsmonitor-icase-corner-case-fix (2024-02-26) 14 commits
- - fsmonitor: support case-insensitive events
- - fsmonitor: refactor bit invalidation in refresh callback
- - fsmonitor: trace the new invalidated cache-entry count
- - fsmonitor: return invalided cache-entry count on non-directory event
- - fsmonitor: remove custom loop from non-directory path handler
- - fsmonitor: return invalidated cache-entry count on directory event
- - fsmonitor: move untracked-cache invalidation into helper functions
- - fsmonitor: refactor untracked-cache invalidation
- - dir: create untracked_cache_invalidate_trimmed_path()
- - fsmonitor: refactor refresh callback for non-directory events
- - fsmonitor: clarify handling of directory events in callback helper
- - fsmonitor: refactor refresh callback on directory events
- - t7527: add case-insensitve test for FSMonitor
- - name-hash: add index_dir_find()
+* jh/fsmonitor-icase-corner-case-fix (2024-03-06) 14 commits
+  (merged to 'next' on 2024-03-06 at 356eafea7e)
+ + fsmonitor: support case-insensitive events
+ + fsmonitor: refactor bit invalidation in refresh callback
+ + fsmonitor: trace the new invalidated cache-entry count
+ + fsmonitor: return invalidated cache-entry count on non-directory event
+ + fsmonitor: remove custom loop from non-directory path handler
+ + fsmonitor: return invalidated cache-entry count on directory event
+ + fsmonitor: move untracked-cache invalidation into helper functions
+ + fsmonitor: refactor untracked-cache invalidation
+ + dir: create untracked_cache_invalidate_trimmed_path()
+ + fsmonitor: refactor refresh callback for non-directory events
+ + fsmonitor: clarify handling of directory events in callback helper
+ + fsmonitor: refactor refresh callback on directory events
+ + t7527: add case-insensitve test for FSMonitor
+ + name-hash: add index_dir_find()
 
  FSMonitor client code was confused when FSEvents were given in a
  different case on a case-insensitive filesystem, which has been
  corrected.
 
- Comments?
+ Acked-by: Patrick Steinhardt <ps@pks.im>
+ cf. <ZehofMaSZyUq8S1N@tanuki>
+
+ Will merge to 'master'.
  source: <pull.1662.v3.git.1708983565.gitgitgadget@gmail.com>
 
 
 * ps/reftable-iteration-perf-part2 (2024-03-04) 13 commits
- - refs/reftable: precompute prefix length
- - reftable: allow inlining of a few functions
- - reftable/record: decode keys in place
- - reftable/record: reuse refname when copying
- - reftable/record: reuse refname when decoding
- - reftable/merged: avoid duplicate pqueue emptiness check
- - reftable/merged: circumvent pqueue with single subiter
- - reftable/merged: handle subiter cleanup on close only
- - reftable/merged: remove unnecessary null check for subiters
- - reftable/merged: make subiters own their records
- - reftable/merged: advance subiter on subsequent iteration
- - reftable/merged: make `merged_iter` structure private
- - reftable/pq: use `size_t` to track iterator index
+  (merged to 'next' on 2024-03-06 at e8ba314585)
+ + refs/reftable: precompute prefix length
+ + reftable: allow inlining of a few functions
+ + reftable/record: decode keys in place
+ + reftable/record: reuse refname when copying
+ + reftable/record: reuse refname when decoding
+ + reftable/merged: avoid duplicate pqueue emptiness check
+ + reftable/merged: circumvent pqueue with single subiter
+ + reftable/merged: handle subiter cleanup on close only
+ + reftable/merged: remove unnecessary null check for subiters
+ + reftable/merged: make subiters own their records
+ + reftable/merged: advance subiter on subsequent iteration
+ + reftable/merged: make `merged_iter` structure private
+ + reftable/pq: use `size_t` to track iterator index
+ (this branch is used by ps/reftable-reflog-iteration-perf.)
 
  The code to iterate over refs with the reftable backend has seen
  some optimization.
 
- Will merge to 'next'?
+ Will merge to 'master'.
  source: <cover.1709548907.git.ps@pks.im>
 
 
@@ -651,42 +763,6 @@ Release tarballs are available at:
  source: <pull.1666.git.1708038924522.gitgitgadget@gmail.com>
 
 
-* kn/for-all-refs (2024-02-23) 6 commits
-  (merged to 'next' on 2024-03-01 at 76a1297ace)
- + for-each-ref: add new option to include root refs
- + ref-filter: rename 'FILTER_REFS_ALL' to 'FILTER_REFS_REGULAR'
- + refs: introduce `refs_for_each_include_root_refs()`
- + refs: extract out `loose_fill_ref_dir_regular_file()`
- + refs: introduce `is_pseudoref()` and `is_headref()`
- + Merge branch 'ps/reftable-backend' into kn/for-all-refs
-
- Originally merged to 'next' on 2024-02-27
-
- "git for-each-ref" learned "--include-root-refs" option to show
- even the stuff outside the 'refs/' hierarchy.
-
- Will merge to 'master'.
- source: <20240223100112.44127-1-karthik.188@gmail.com>
-
-
-* jc/no-lazy-fetch (2024-02-27) 3 commits
-  (merged to 'next' on 2024-03-01 at 14303cdbfe)
- + git: extend --no-lazy-fetch to work across subprocesses
- + git: document GIT_NO_REPLACE_OBJECTS environment variable
- + git: --no-lazy-fetch option
-
- Originally merged to 'next' on 2024-02-29
-
- "git --no-lazy-fetch cmd" allows to run "cmd" while disabling lazy
- fetching of objects from the promisor remote, which may be handy
- for debugging.
-
- Will merge to 'master'.
- source: <xmqq1q8xx38i.fsf@gitster.g>
- source: <xmqq1q9cl3xv.fsf@gitster.g>
- source: <xmqq1q9mmtpw.fsf@gitster.g>
-
-
 * js/unit-test-suite-runner (2024-02-23) 8 commits
  - ci: use test-tool as unit test runner on Windows
  - t/Makefile: run unit tests alongside shell tests
@@ -705,71 +781,19 @@ Release tarballs are available at:
  source: <cover.1708728717.git.steadmon@google.com>
 
 
-* cc/rev-list-allow-missing-tips (2024-02-28) 5 commits
-  (merged to 'next' on 2024-03-01 at fd7b109d04)
- + revision: fix --missing=[print|allow*] for annotated tags
-  (merged to 'next' on 2024-03-01 at ac0fc94378)
- + rev-list: allow missing tips with --missing=[print|allow*]
- + t6022: fix 'test' style and 'even though' typo
- + oidset: refactor oidset_insert_from_set()
- + revision: clarify a 'return NULL' in get_reference()
-
- Originally merged to 'next' on 2024-02-28
-
- "git rev-list --missing=print" has learned to optionally take
- "--allow-missing-tips", which allows the objects at the starting
- points to be missing.
-
- Will merge to 'master'.
- source: <20240214142513.4002639-1-christian.couder@gmail.com>
-
-
-* js/merge-tree-3-trees (2024-02-23) 7 commits
-  (merged to 'next' on 2024-03-01 at a75dc95f04)
- + fill_tree_descriptor(): mark error message for translation
- + cache-tree: avoid an unnecessary check
- + Always check `parse_tree*()`'s return value
- + t4301: verify that merge-tree fails on missing blob objects
- + merge-ort: do check `parse_tree()`'s return value
- + merge-tree: fail with a non-zero exit code on missing tree objects
- + merge-tree: accept 3 trees as arguments
-
- Originally merged to 'next' on 2024-02-28
-
- "git merge-tree" has learned that the three trees involved in the
- 3-way merge only need to be trees, not necessarily commits.
-
- Will merge to 'master'.
- source: <pull.1647.git.1706277694231.gitgitgadget@gmail.com>
- source: <pull.1651.v4.git.1708677266.gitgitgadget@gmail.com>
-
-
 * rj/complete-reflog (2024-03-03) 5 commits
- - completion: reflog subcommands and options
- - completion: factor out __git_resolve_builtins
- - completion: introduce __git_find_subcommand
- - completion: reflog show <log-options>
- - completion: reflog with implicit "show"
+  (merged to 'next' on 2024-03-06 at 0f1a25debc)
+ + completion: reflog subcommands and options
+ + completion: factor out __git_resolve_builtins
+ + completion: introduce __git_find_subcommand
+ + completion: reflog show <log-options>
+ + completion: reflog with implicit "show"
 
  The command line completion script (in contrib/) learned to
  complete "git reflog" better.
 
- Will merge to 'next'?
- source: <ea6c8890-9ff3-46c9-b933-6a52083b1001@gmail.com>
-
-
-* ml/log-merge-with-cherry-pick-and-other-pseudo-heads (2024-02-28) 2 commits
-  (merged to 'next' on 2024-03-01 at 339111ec08)
- + revision: implement `git log --merge` also for rebase/cherry-pick/revert
- + revision: ensure MERGE_HEAD is a ref in prepare_show_merge
-
- Originally merged to 'next' on 2024-02-29
-
- "git log --merge" learned to pay attention to CHERRY_PICK_HEAD and
- other kinds of *_HEAD pseudorefs.
-
  Will merge to 'master'.
- source: <20240228-ml-log-merge-with-cherry-pick-and-other-pseudo-heads-v6-0-8ec34c052b39@gmail.com>
+ source: <ea6c8890-9ff3-46c9-b933-6a52083b1001@gmail.com>
 
 
 * bk/complete-dirname-for-am-and-format-patch (2024-01-12) 1 commit
@@ -781,6 +805,7 @@ Release tarballs are available at:
 
  Expecting a reroll.
  cf. <40c3a824-a961-490b-94d4-4eb23c8f713d@gmail.com>
+ cf. <6683f24e-7e56-489d-be2d-8afe1fc38d2b@gmail.com>
  source: <d37781c3-6af2-409b-95a8-660a9b92d20b@smtp-relay.sendinblue.com>
 
 
@@ -797,16 +822,23 @@ Release tarballs are available at:
 
 
 * la/trailer-api (2024-03-01) 9 commits
- - format_trailers_from_commit(): indirectly call trailer_info_get()
- - format_trailer_info(): move "fast path" to caller
- - format_trailers(): use strbuf instead of FILE
- - trailer_info_get(): reorder parameters
- - trailer: move interpret_trailers() to interpret-trailers.c
- - trailer: reorder format_trailers_from_commit() parameters
- - trailer: rename functions to use 'trailer'
- - shortlog: add test for de-duplicating folded trailers
- - trailer: free trailer_info _after_ all related usage
+  (merged to 'next' on 2024-03-06 at f119923ff6)
+ + format_trailers_from_commit(): indirectly call trailer_info_get()
+ + format_trailer_info(): move "fast path" to caller
+ + format_trailers(): use strbuf instead of FILE
+ + trailer_info_get(): reorder parameters
+ + trailer: move interpret_trailers() to interpret-trailers.c
+ + trailer: reorder format_trailers_from_commit() parameters
+ + trailer: rename functions to use 'trailer'
+ + shortlog: add test for de-duplicating folded trailers
+ + trailer: free trailer_info _after_ all related usage
+
+ Trailer API updates.
+
+ Acked-by: Christian Couder <christian.couder@gmail.com>
+ cf. <CAP8UFD1Zd+9q0z1JmfOf60S2vn5-sD3SafDvAJUzRFwHJKcb8A@mail.gmail.com>
 
+ Will merge to 'master'.
  source: <pull.1632.v6.git.1709252086.gitgitgadget@gmail.com>
 
 
@@ -871,7 +903,7 @@ Release tarballs are available at:
 
  Teach a repository to work with both SHA-1 and SHA-256 hash algorithms.
 
- Will merge to and cook in 'next'?
+ Will merge to and cook in 'next'.
  cf. <xmqqv86z5359.fsf@gitster.g>
  source: <878r8l929e.fsf@gmail.froward.int.ebiederm.org>