What's cooking (2024/02 #03)

This commit is contained in:
Junio C Hamano
2024-02-06 15:04:45 -08:00
parent 12caff32f3
commit 111690af4f

View File

@@ -1,10 +1,10 @@
To: git@vger.kernel.org
Subject: What's cooking in git.git (Feb 2024, #02; Fri, 2)
X-master-at: 2a540e432fe5dff3cfa9d3bf7ca56db2ad12ebb9
X-next-at: 8838dd21e8a4ec1324377ffcfa90413844ca3674
Subject: What's cooking in git.git (Feb 2024, #03; Tue, 6)
X-master-at: 235986be822c9f8689be2e9a0b7804d0b1b6d821
X-next-at: 7a6a6b9afef46aae13590758ab4d6e6832820410
Bcc: lwn@lwn.net, gitster@pobox.com
What's cooking in git.git (Feb 2024, #02; Fri, 2)
What's cooking in git.git (Feb 2024, #03; Tue, 6)
--------------------------------------------------
Here are the topics that have been cooking in my tree. Commits
@@ -46,39 +46,26 @@ Release tarballs are available at:
https://www.kernel.org/pub/software/scm/git/
--------------------------------------------------
[Cooking]
[Graduated to 'master']
* jc/t0091-with-unknown-git (2024-01-30) 1 commit
(merged to 'next' on 2024-01-31 at 3dfcad1b18)
+ t0091: allow test in a repository without tags
* cb/use-freebsd-13-2-at-cirrus-ci (2024-01-31) 1 commit
(merged to 'next' on 2024-01-31 at f89dc8a289)
+ ci: update FreeBSD cirrus job
The test did not work when Git was built from a repository without
tags.
Will merge to 'master'.
source: <xmqqv87aabk3.fsf@gitster.g>
Cirrus CI jobs started breaking because we specified version of
FreeBSD that is no longer available, which has been corrected.
source: <20240131191325.33228-1-carenas@gmail.com>
* ps/reftable-backend (2024-02-02) 3 commits
- ci: add jobs to test with the reftable backend
- refs: introduce reftable backend
- Merge branch 'ps/tests-with-ref-files-backend' into ps/reftable-backend
(this branch uses ps/tests-with-ref-files-backend.)
* jc/comment-style-fixes (2024-01-29) 3 commits
(merged to 'next' on 2024-01-30 at a58d48a9ce)
+ reftable/pq_test: comment style fix
+ merge-ort.c: comment style fix
+ builtin/worktree: comment style fixes
Integrate the reftable code into the refs framework as a backend.
Needs review.
source: <cover.1706862705.git.ps@pks.im>
* js/win32-retry-pipe-write-on-enospc (2024-01-30) 1 commit
(merged to 'next' on 2024-01-31 at 60ad589fd0)
+ win32: special-case `ENOSPC` when writing to a pipe
Update to the code that writes to pipes on Windows.
Will merge to 'master'.
source: <pull.1648.git.1706650619950.gitgitgadget@gmail.com>
Rewrite //-comments to /* comments */ in files whose comments
prevalently use the latter.
source: <20240129202839.2234084-1-gitster@pobox.com>
* jc/make-libpath-template (2024-01-31) 2 commits
@@ -89,20 +76,172 @@ Release tarballs are available at:
The Makefile often had to say "-L$(path) -R$(path)" that repeats
the path to the same library directory for link time and runtime.
A Makefile template is used to reduce such repetition.
Will merge to 'master'.
source: <20240131174220.4160560-1-gitster@pobox.com>
* cb/use-freebsd-13-2-at-cirrus-ci (2024-01-31) 1 commit
(merged to 'next' on 2024-01-31 at f89dc8a289)
+ ci: update FreeBSD cirrus job
* jc/reftable-core-fsync (2024-01-30) 2 commits
(merged to 'next' on 2024-01-30 at c3a79b6172)
+ reftable/stack: fsync "tables.list" during compaction
(merged to 'next' on 2024-01-24 at cea12beddb)
+ reftable: honor core.fsync
(this branch is used by ps/reftable-multi-level-indices-fix.)
Cirrus CI jobs started breaking because we specified version of
FreeBSD that is no longer available, which has been corrected.
The write codepath for the reftable data learned to honor
core.fsync configuration.
source: <7bdafc9bd7f53f38a24d69a563615b6ad484e1ba.1706592127.git.ps@pks.im>
Will merge to 'master'.
source: <20240131191325.33228-1-carenas@gmail.com>
* jc/t0091-with-unknown-git (2024-01-30) 1 commit
(merged to 'next' on 2024-01-31 at 3dfcad1b18)
+ t0091: allow test in a repository without tags
The test did not work when Git was built from a repository without
tags.
source: <xmqqv87aabk3.fsf@gitster.g>
* jk/diff-external-with-no-index (2024-01-29) 1 commit
(merged to 'next' on 2024-01-30 at 30c3e9f91d)
+ diff: handle NULL meta-info when spawning external diff
"git diff --no-index file1 file2" segfaulted while invoking the
external diff driver, which has been corrected.
source: <20240129015708.GA1762343@coredump.intra.peff.net>
* js/win32-retry-pipe-write-on-enospc (2024-01-30) 1 commit
(merged to 'next' on 2024-01-31 at 60ad589fd0)
+ win32: special-case `ENOSPC` when writing to a pipe
Update to the code that writes to pipes on Windows.
source: <pull.1648.git.1706650619950.gitgitgadget@gmail.com>
* jt/p4-spell-re-with-raw-string (2024-01-29) 1 commit
(merged to 'next' on 2024-01-30 at 42b03b58eb)
+ git-p4: use raw string literals for regular expressions
"git p4" update to squelch warnings from Python.
source: <pull.1639.v2.git.1706312496608.gitgitgadget@gmail.com>
* kh/maintenance-use-xdg-when-it-should (2024-01-29) 1 commit
(merged to 'next' on 2024-01-30 at c449ac74bf)
+ config: add back code comment
Comment fix.
source: <48d66e94ece3b763acbe933561d82157c02a5f58.1706466321.git.code@khaugsbakk.name>
* ps/reftable-compacted-tables-permission-fix (2024-01-26) 1 commit
(merged to 'next' on 2024-01-29 at dbb06e1571)
+ reftable/stack: adjust permissions of compacted tables
Reftable bugfix.
source: <a211818108053754aca002726d0206623a347952.1706263589.git.ps@pks.im>
* ps/tests-with-ref-files-backend (2024-01-29) 6 commits
(merged to 'next' on 2024-01-30 at 376b9c9c1b)
+ t: mark tests regarding git-pack-refs(1) to be backend specific
+ t5526: break test submodule differently
+ t1419: mark test suite as files-backend specific
+ t1302: make tests more robust with new extensions
+ t1301: mark test for `core.sharedRepository` as reffiles specific
+ t1300: make tests more robust with non-default ref backends
(this branch is used by ps/reftable-backend.)
Prepare existing tests on refs to work better with non-default
backends.
source: <cover.1706525813.git.ps@pks.im>
* rj/test-with-leak-check (2024-01-29) 4 commits
(merged to 'next' on 2024-01-31 at 76e4596666)
+ t0080: mark as leak-free
+ test-lib: check for TEST_PASSES_SANITIZE_LEAK
+ t6113: mark as leak-free
+ t5332: mark as leak-free
More tests that are supposed to pass leak sanitizer are marked as such.
source: <45eb0748-6415-4e52-a54f-8d4e5ad57dde@gmail.com>
* tb/pack-bitmap-drop-unused-struct-member (2024-01-29) 1 commit
(merged to 'next' on 2024-01-30 at f3749b15fc)
+ pack-bitmap: drop unused `reuse_objects`
Code clean-up.
source: <0bbaf9a3591765161872fb71383263edb0c7ef83.1706328008.git.me@ttaylorr.com>
--------------------------------------------------
[New Topics]
* gt/at-is-synonym-for-head-in-add-patch (2024-02-03) 3 commits
- SQUASH???
- add-patch: classify '@' as a synonym for 'HEAD'
- add-patch: remove unnecessary NEEDSWORK comment
Teach "git checkout -p" and friends that "@" is a synonym for
"HEAD".
source: <20240202150434.11256-1-shyamthakkar001@gmail.com>
* js/unit-test-suite-runner (2024-02-03) 7 commits
- t/Makefile: run unit tests alongside shell tests
- unit tests: add rule for running with test-tool
- test-tool run-command testsuite: support unit tests
- test-tool run-command testsuite: remove hardcoded filter
- test-tool run-command testsuite: get shell from env
- t0080: turn t-basic unit test into a helper
- Merge branch 'jk/unit-tests-buildfix' into js/unit-test-suite-runner
(this branch uses jk/unit-tests-buildfix.)
The "test-tool" has been taught to run testsuite tests in parallel,
bypassing the need to use the "prove" tool.
source: <cover.1706921262.git.steadmon@google.com>
* jc/sign-buffer-failure-propagation-fix (2024-02-06) 1 commit
- tag: fix sign_buffer() call to create a signed tag
* js/check-null-from-read-object-file (2024-02-06) 1 commit
- Always check the return value of `repo_read_object_file()`
source: <pull.1650.git.1707143753726.gitgitgadget@gmail.com>
* pb/template-for-single-commit-pr (2024-02-06) 1 commit
- .github/PULL_REQUEST_TEMPLATE.md: add a note about single-commit PRs
source: <pull.1665.v2.git.git.1707225612576.gitgitgadget@gmail.com>
* ps/report-failure-from-git-stash (2024-02-06) 1 commit
- builtin/stash: report failure to write to index
source: <cb098cf88cbfcbf7c4872f8887856629b909cb91.1707197653.git.ps@pks.im>
* tb/multi-pack-reuse-experiment (2024-02-05) 2 commits
- pack-objects: enable multi-pack reuse via `feature.experimental`
- t5332-multi-pack-reuse.sh: extract pack-objects helper functions
source: <cover.1707173415.git.me@ttaylorr.com>
--------------------------------------------------
[Cooking]
* ps/reftable-backend (2024-02-02) 3 commits
- ci: add jobs to test with the reftable backend
- refs: introduce reftable backend
- Merge branch 'ps/tests-with-ref-files-backend' into ps/reftable-backend
Integrate the reftable code into the refs framework as a backend.
Will merge to 'next'.
source: <cover.1706862705.git.ps@pks.im>
* cc/rev-list-allow-missing-tips (2024-02-01) 3 commits
@@ -134,7 +273,7 @@ Release tarballs are available at:
source: <cover.1706782841.git.ps@pks.im>
* ps/reftable-styles (2024-02-01) 9 commits
* ps/reftable-styles (2024-02-06) 9 commits
- reftable/record: improve semantics when initializing records
- reftable/merged: refactor initialization of iterators
- reftable/merged: refactor seeking of records
@@ -147,16 +286,17 @@ Release tarballs are available at:
Code clean-up in various reftable code paths.
Needs review.
source: <cover.1706772591.git.ps@pks.im>
Will merge to 'next'.
source: <cover.1707200355.git.ps@pks.im>
* pb/imap-send-wo-curl-build-fix (2024-02-01) 1 commit
- imap-send: add missing "strbuf.h" include under NO_CURL
(merged to 'next' on 2024-02-05 at 18368f61a7)
+ imap-send: add missing "strbuf.h" include under NO_CURL
Build fix.
Will merge to 'next'.
Will merge to 'master'.
source: <pull.1664.git.git.1706833113569.gitgitgadget@gmail.com>
@@ -183,37 +323,14 @@ Release tarballs are available at:
* jh/sparse-index-expand-to-path-fix (2024-02-02) 1 commit
- sparse-index: pass string length to index_file_exists()
(merged to 'next' on 2024-02-06 at 17ec59dd9a)
+ sparse-index: pass string length to index_file_exists()
A caller called index_file_exists() that takes a string expressed
as <ptr, length> with a wrong length, which has been corrected.
Will merge to 'next'.
source: <pull.1649.git.1706897095273.gitgitgadget@gmail.com>
* jc/comment-style-fixes (2024-01-29) 3 commits
(merged to 'next' on 2024-01-30 at a58d48a9ce)
+ reftable/pq_test: comment style fix
+ merge-ort.c: comment style fix
+ builtin/worktree: comment style fixes
Rewrite //-comments to /* comments */ in files whose comments
prevalently use the latter.
Will merge to 'master'.
source: <20240129202839.2234084-1-gitster@pobox.com>
* jk/diff-external-with-no-index (2024-01-29) 1 commit
(merged to 'next' on 2024-01-30 at 30c3e9f91d)
+ diff: handle NULL meta-info when spawning external diff
"git diff --no-index file1 file2" segfaulted while invoking the
external diff driver, which has been corrected.
Will merge to 'next'.
source: <20240129015708.GA1762343@coredump.intra.peff.net>
source: <pull.1649.git.1706897095273.gitgitgadget@gmail.com>
* jk/unit-tests-buildfix (2024-02-02) 4 commits
@@ -223,6 +340,7 @@ Release tarballs are available at:
+ t/Makefile: get UNIT_TESTS list from C sources
+ Makefile: remove UNIT_TEST_BIN directory with "make clean"
+ Makefile: use mkdir_p_parent_template for UNIT_TEST_BIN
(this branch is used by js/unit-test-suite-runner.)
Build dependency around unit tests has been fixed.
@@ -231,44 +349,30 @@ Release tarballs are available at:
source: <xmqqjznmtjr9.fsf@gitster.g>
* js/merge-tree-3-trees (2024-01-29) 1 commit
* js/merge-tree-3-trees (2024-02-06) 5 commits
- 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
(merged to 'next' on 2024-01-30 at 0c77b04e59)
+ merge-tree: accept 3 trees as arguments
"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'.
Will cook in 'next'
source: <pull.1647.v2.git.1706474063109.gitgitgadget@gmail.com>
* jt/p4-spell-re-with-raw-string (2024-01-29) 1 commit
(merged to 'next' on 2024-01-30 at 42b03b58eb)
+ git-p4: use raw string literals for regular expressions
"git p4" update to squelch warnings from Python.
Will merge to 'master'.
source: <pull.1639.v2.git.1706312496608.gitgitgadget@gmail.com>
* kh/maintenance-use-xdg-when-it-should (2024-01-29) 1 commit
(merged to 'next' on 2024-01-30 at c449ac74bf)
+ config: add back code comment
Comment fix.
Will merge to 'master'.
source: <48d66e94ece3b763acbe933561d82157c02a5f58.1706466321.git.code@khaugsbakk.name>
source: <pull.1651.git.1707212981.gitgitgadget@gmail.com>
* mh/credential-oauth-refresh-token-with-wincred (2024-01-29) 1 commit
- credential/wincred: store oauth_refresh_token
(merged to 'next' on 2024-02-05 at 68880a751a)
+ credential/wincred: store oauth_refresh_token
Teach wincred credential backend to support oauth refresh token the
same way as credential-cache and credential-libsecret backends.
Will merge to 'next'.
Will merge to 'master'.
source: <pull.1534.v3.git.1706477103039.gitgitgadget@gmail.com>
@@ -299,39 +403,6 @@ Release tarballs are available at:
source: <98daf977-dbad-4d3b-a293-6a769895088f@gmail.com>
* rj/test-with-leak-check (2024-01-29) 4 commits
(merged to 'next' on 2024-01-31 at 76e4596666)
+ t0080: mark as leak-free
+ test-lib: check for TEST_PASSES_SANITIZE_LEAK
+ t6113: mark as leak-free
+ t5332: mark as leak-free
More tests that are supposed to pass leak sanitizer are marked as such.
Will merge to 'master'.
source: <45eb0748-6415-4e52-a54f-8d4e5ad57dde@gmail.com>
* tb/pack-bitmap-drop-unused-struct-member (2024-01-29) 1 commit
(merged to 'next' on 2024-01-30 at f3749b15fc)
+ pack-bitmap: drop unused `reuse_objects`
Code clean-up.
Will merge to 'master'.
source: <0bbaf9a3591765161872fb71383263edb0c7ef83.1706328008.git.me@ttaylorr.com>
* ps/reftable-compacted-tables-permission-fix (2024-01-26) 1 commit
(merged to 'next' on 2024-01-29 at dbb06e1571)
+ reftable/stack: adjust permissions of compacted tables
Reftable bugfix.
Will merge to 'master'.
source: <a211818108053754aca002726d0206623a347952.1706263589.git.ps@pks.im>
* jc/index-pack-fsck-levels (2024-02-01) 2 commits
(merged to 'next' on 2024-02-02 at 0e4ef26aa1)
+ index-pack: --fsck-objects to take an optional argument for fsck msgs
@@ -351,28 +422,13 @@ Release tarballs are available at:
- reftable/writer: use correct type to iterate through index entries
- reftable/reader: be more careful about errors in indexed seeks
- Merge branch 'jc/reftable-core-fsync' into ps/reftable-multi-level-indices-fix
(this branch uses jc/reftable-core-fsync.)
Write multi-level indices for reftable has been corrected.
Needs review.
Will merge to 'next'.
source: <cover.1706773842.git.ps@pks.im>
* jc/reftable-core-fsync (2024-01-30) 2 commits
(merged to 'next' on 2024-01-30 at c3a79b6172)
+ reftable/stack: fsync "tables.list" during compaction
(merged to 'next' on 2024-01-24 at cea12beddb)
+ reftable: honor core.fsync
(this branch is used by ps/reftable-multi-level-indices-fix.)
The write codepath for the reftable data learned to honor
core.fsync configuration.
Will merge to 'master'.
source: <7bdafc9bd7f53f38a24d69a563615b6ad484e1ba.1706592127.git.ps@pks.im>
* cp/unit-test-prio-queue (2024-01-22) 1 commit
(merged to 'next' on 2024-02-01 at 38aa6559b0)
+ tests: move t0009-prio-queue.sh to the new unit testing framework
@@ -394,21 +450,6 @@ Release tarballs are available at:
source: <xmqqzfxa9usx.fsf@gitster.g>
* kn/for-all-refs (2024-01-29) 4 commits
(merged to 'next' on 2024-01-30 at e7a9234a8b)
+ for-each-ref: avoid filtering on empty pattern
+ refs: introduce `refs_for_each_all_refs()`
+ refs: extract out `loose_fill_ref_dir_regular_file()`
+ refs: introduce `is_pseudoref()` and `is_headref()`
"git for-each-ref" filters its output with prefixes given from the
command line, but it did not honor an empty string to mean "pass
everything", which has been corrected.
Will merge to 'master'.
source: <20240129113527.607022-1-karthik.188@gmail.com>
* bk/complete-bisect (2024-01-29) 9 commits
- SQUASH???
- completion: add tests for git-bisect
@@ -450,40 +491,40 @@ Release tarballs are available at:
source: <a718b5ee-afb0-44bd-a299-3208fac43506@smtp-relay.sendinblue.com>
* la/trailer-api (2024-01-30) 10 commits
* la/trailer-api (2024-02-06) 28 commits
- trailer: introduce "template" term for readability
- trailer: delete obsolete argument handling code from API
- trailer: move arg handling to interpret-trailers.c
- trailer: prepare to move parse_trailers_from_command_line_args() to builtin
- trailer_set_*(): put out parameter at the end
- trailer: unify "--trailer ..." arg handling
- trailer: deprecate "new_trailer_item" struct from API
- trailer_add_arg_item(): drop new_trailer_item usage
- trailer: add new helper functions to API
- trailer: prepare to delete "parse_trailers_from_command_line_args()"
- trailer: spread usage of "trailer_block" language
- trailer: retire trailer_info_get() from API
- trailer: make trailer_info struct private
- sequencer: use the trailer iterator
- trailer: unify trailer formatting machinery
- trailer: teach iterator about non-trailer lines
- trailer: finish formatting unification
- format_trailer_info(): avoid double-printing the separator
- format_trailer_info(): teach it about opts->trim_empty
- trailer: begin formatting unification
- format_trailer_info(): append newline for non-trailer lines
- format_trailer_info(): drop redundant unfold_value()
- format_trailer_info(): use trailer_item objects
- 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: start preparing for formatting unification
- trailer: move interpret_trailers() to interpret-trailers.c
- trailer: prepare to expose functions as part of API
- shortlog: add test for de-duplicating folded trailers
- trailer: free trailer_info _after_ all related usage
Code clean-up.
Needs review.
cf. <xmqqa5ol409k.fsf@gitster.g>
source: <pull.1632.v3.git.1706664144.gitgitgadget@gmail.com>
* ps/tests-with-ref-files-backend (2024-01-29) 6 commits
(merged to 'next' on 2024-01-30 at 376b9c9c1b)
+ t: mark tests regarding git-pack-refs(1) to be backend specific
+ t5526: break test submodule differently
+ t1419: mark test suite as files-backend specific
+ t1302: make tests more robust with new extensions
+ t1301: mark test for `core.sharedRepository` as reffiles specific
+ t1300: make tests more robust with non-default ref backends
(this branch is used by ps/reftable-backend.)
Prepare existing tests on refs to work better with non-default
backends.
Will merge to 'master'.
source: <cover.1706525813.git.ps@pks.im>
source: <pull.1632.v4.git.1707196348.gitgitgadget@gmail.com>
* cp/apply-core-filemode (2023-12-26) 3 commits
@@ -502,12 +543,13 @@ Release tarballs are available at:
* ja/doc-placeholders-fix (2023-12-26) 2 commits
- doc: enforce placeholders in documentation
- doc: enforce dashes in placeholders
(merged to 'next' on 2024-02-05 at 047da8cbb0)
+ doc: enforce placeholders in documentation
+ doc: enforce dashes in placeholders
Docfix.
Will merge to 'next'.
Will merge to 'master'.
source: <pull.1626.git.1703539287.gitgitgadget@gmail.com>
@@ -520,22 +562,6 @@ Release tarballs are available at:
source: <xmqqzfyjmk02.fsf@gitster.g>
* tb/pair-chunk-expect (2023-11-10) 8 commits
- midx: read `OOFF` chunk with `pair_chunk_expect()`
- midx: read `OIDL` chunk with `pair_chunk_expect()`
- commit-graph: read `BIDX` chunk with `pair_chunk_expect()`
- commit-graph: read `GDAT` chunk with `pair_chunk_expect()`
- commit-graph: read `CDAT` chunk with `pair_chunk_expect()`
- commit-graph: read `OIDL` chunk with `pair_chunk_expect()`
- chunk-format: introduce `pair_chunk_expect()` helper
- Merge branch 'jk/chunk-bounds-more' into HEAD
Further code clean-up.
Needs review.
source: <cover.1699569246.git.me@ttaylorr.com>
* tb/path-filter-fix (2024-01-31) 16 commits
- bloom: introduce `deinit_bloom_filters()`
- commit-graph: reuse existing Bloom filters where possible
@@ -557,6 +583,9 @@ Release tarballs are available at:
The Bloom filter used for path limited history traversal was broken
on systems whose "char" is unsigned; update the implementation and
bump the format version to 2.
Waiting for a final ack?
cf. <ZcFjkfbsBfk7JQIH@nand.local>
source: <cover.1706741516.git.me@ttaylorr.com>
@@ -623,3 +652,37 @@ Release tarballs are available at:
Not ready to be reviewed yet.
source: <20230824205456.1231371-1-gitster@pobox.com>
--------------------------------------------------
[Discarded]
* tb/pair-chunk-expect (2023-11-10) 8 commits
. midx: read `OOFF` chunk with `pair_chunk_expect()`
. midx: read `OIDL` chunk with `pair_chunk_expect()`
. commit-graph: read `BIDX` chunk with `pair_chunk_expect()`
. commit-graph: read `GDAT` chunk with `pair_chunk_expect()`
. commit-graph: read `CDAT` chunk with `pair_chunk_expect()`
. commit-graph: read `OIDL` chunk with `pair_chunk_expect()`
. chunk-format: introduce `pair_chunk_expect()` helper
. Merge branch 'jk/chunk-bounds-more' into HEAD
Further code clean-up.
Retracted for now.
cf. <ZcFjkfbsBfk7JQIH@nand.local>
source: <cover.1699569246.git.me@ttaylorr.com>
* kn/for-all-refs (2024-01-29) 4 commits
(merged to 'next' on 2024-01-30 at e7a9234a8b)
+ for-each-ref: avoid filtering on empty pattern
+ refs: introduce `refs_for_each_all_refs()`
+ refs: extract out `loose_fill_ref_dir_regular_file()`
+ refs: introduce `is_pseudoref()` and `is_headref()`
"git for-each-ref" filters its output with prefixes given from the
command line, but it did not honor an empty string to mean "pass
everything", which has been corrected.
Reverted out of 'next' to revamp its UI.
source: <20240129113527.607022-1-karthik.188@gmail.com>