What's cooking (2024/05 #02)
[alt-git.git] / whats-cooking.txt
blob9750a5d52b322ba20a2e2df0aa2e27aee884ab6c
1 To: git@vger.kernel.org
2 Subject: What's cooking in git.git (May 2024, #02; Fri, 3)
3 X-master-at: d4cc1ec35f3bcce816b69986ca41943f6ce21377
4 X-next-at: 7fe29c98d7a84cdef7e95a658d5ebfcb2a8b606b
5 Bcc: lwn@lwn.net, gitster@pobox.com
7 What's cooking in git.git (May 2024, #02; Fri, 3)
8 --------------------------------------------------
10 Here are the topics that have been cooking in my tree.  Commits
11 prefixed with '+' are in 'next' (being in 'next' is a sign that a
12 topic is stable enough to be used and are candidate to be in a
13 future release).  Commits prefixed with '-' are only in 'seen', and
14 aren't considered "accepted" at all and may be annotated with an URL
15 to a message that raises issues but they are no means exhaustive.  A
16 topic without enough support may be discarded after a long period of
17 no activity (of course they can be resubmit when new interests
18 arise).
20 The first batch of topics for the new cycle have graduated to the
21 'master' branch, and the tip of 'next' has been rewound.
23 Copies of the source code to Git live in many repositories, and the
24 following is a list of the ones I push into or their mirrors.  Some
25 repositories have only a subset of branches.
27 With maint, master, next, seen, todo:
29         git://git.kernel.org/pub/scm/git/git.git/
30         git://repo.or.cz/alt-git.git/
31         https://kernel.googlesource.com/pub/scm/git/git/
32         https://github.com/git/git/
33         https://gitlab.com/git-scm/git/
35 With all the integration branches and topics broken out:
37         https://github.com/gitster/git/
39 Even though the preformatted documentation in HTML and man format
40 are not sources, they are published in these repositories for
41 convenience (replace "htmldocs" with "manpages" for the manual
42 pages):
44         git://git.kernel.org/pub/scm/git/git-htmldocs.git/
45         https://github.com/gitster/git-htmldocs.git/
47 Release tarballs are available at:
49         https://www.kernel.org/pub/software/scm/git/
51 --------------------------------------------------
52 [New Topics]
54 * jc/test-workaround-broken-mv (2024-05-02) 1 commit
55  - t/lib-chunk: work around broken "mv" on some vintage of macOS
57  Tests that try to corrupt in-repository files in chunked format did
58  not work well on macOS due to its broken "mv", which has been
59  worked around.
61  Will merge to 'next'.
62  source: <xmqqsez0c6ma.fsf@gitster.g>
65 * jt/port-ci-whitespace-check-to-gitlab (2024-05-03) 5 commits
66  - gitlab-ci: add whitespace error check
67  - ci: make the whitespace report optional
68  - ci: separate whitespace check script
69  - github-ci: fix link to whitespace error
70  - ci: pre-collapse GitLab CI sections
72  The "whitespace check" task that was enabled for GitHub Actions CI
73  has been ported to GitLab CI.
75  Will merge to 'next'?
76  source: <20240503172110.181326-1-jltobler@gmail.com>
79 * jc/no-default-attr-tree-in-bare (2024-05-03) 1 commit
80  - stop using HEAD for attributes in bare repository by default
82  Git 2.43 started using the tree of HEAD as the source of attributes
83  in a bare repository, which has severe performance implications.
84  For now, revert the change, without ripping out a more explicit
85  support for the attr.tree configuration variable.
87  Will merge to 'next'?
88  source: <xmqqzft6aozg.fsf_-_@gitster.g>
91 * jl/git-no-advice (2024-05-03) 3 commits
92  - advice: add --no-advice global option
93  - doc: add spacing around paginate options
94  - doc: clean up usage documentation for --no-* opts
96  A new global "--no-advice" option can be used to disable all advice
97  messages, which is meant to be used only in scripts.
99  Will merge to 'next'.
100  source: <20240503071706.78109-1-james@jamesliu.io>
103 * kn/ref-transaction-symref (2024-05-03) 7 commits
104  - refs: remove `create_symref` and associated dead code
105  - refs: rename `refs_create_symref()` to `refs_update_symref()`
106  - refs: use transaction in `refs_create_symref()`
107  - refs: add support for transactional symref updates
108  - refs: support symrefs in 'reference-transaction' hook
109  - files-backend: extract out `create_symref_lock()`
110  - refs: accept symref values in `ref_transaction_update()`
112  Updates to symbolic refs can now be made as a part of ref
113  transaction.
115  Will merge to 'next'?
116  source: <20240503124115.252413-1-knayak@gitlab.com>
119 * ma/win32-unix-domain-socket (2024-05-03) 1 commit
120  - win32: fix building with NO_UNIX_SOCKETS
122  Build fix.
124  Will merge to 'next'.
125  source: <20240503091427.2808390-1-mh@glandium.org>
128 * ps/config-subcommands (2024-05-03) 14 commits
129  - builtin/config: display subcommand help
130  - builtin/config: introduce "edit" subcommand
131  - builtin/config: introduce "remove-section" subcommand
132  - builtin/config: introduce "rename-section" subcommand
133  - builtin/config: introduce "unset" subcommand
134  - builtin/config: introduce "set" subcommand
135  - builtin/config: introduce "get" subcommand
136  - builtin/config: introduce "list" subcommand
137  - builtin/config: pull out function to handle `--null`
138  - builtin/config: pull out function to handle config location
139  - builtin/config: use `OPT_CMDMODE()` to specify modes
140  - builtin/config: move "fixed-value" option to correct group
141  - builtin/config: move option array around
142  - config: clarify memory ownership when preparing comment strings
144  The operation mode options (like "--get") the "git config" command
145  uses have been deprecated and replaced with subcommands (like "git
146  config get").
148  Will merge to 'next'?
149  source: <cover.1714730169.git.ps@pks.im>
152 * ps/refs-without-the-repository (2024-05-03) 5 commits
153  - refs: remove functions without ref store
154  - cocci: apply rules to rewrite callers of "refs" interfaces
155  - cocci: introduce rules to transform "refs" to pass ref store
156  - refs: add `exclude_patterns` parameter to `for_each_fullref_in()`
157  - refs: introduce missing functions that accept a `struct ref_store`
159  The refs API lost functions that implicitly assumes to work on the
160  primary ref_store by forcing the callers to pass a ref_store as an
161  argument.
163  Will merge to 'next'?
164  source: <cover.1714717057.git.ps@pks.im>
167 * ps/reftable-write-options (2024-05-03) 11 commits
168  - refs/reftable: allow configuring geometric factor
169  - reftable: make the compaction factor configurable
170  - refs/reftable: allow disabling writing the object index
171  - refs/reftable: allow configuring restart interval
172  - reftable: use `uint16_t` to track restart interval
173  - refs/reftable: allow configuring block size
174  - reftable/dump: support dumping a table's block structure
175  - reftable/writer: improve error when passed an invalid block size
176  - reftable/writer: drop static variable used to initialize strbuf
177  - reftable: consistently pass write opts as value
178  - reftable: consistently refer to `reftable_write_options` as `opts`
180  The knobs to tweak how reftable files are written have been made
181  available as configuration variables.
183  Needs review.
184  source: <cover.1714630191.git.ps@pks.im>
187 * tb/attr-limits (2024-05-03) 1 commit
188  - attr.c: move ATTR_MAX_FILE_SIZE check into read_attr_from_buf()
190  The maximum size of attribute files is enforced more consistently.
192  Will merge to 'next'.
193  source: <28f6267709db78ba526d7ed9fc4a734674697c70.1714763555.git.me@ttaylorr.com>
195 --------------------------------------------------
196 [Graduated to 'master']
198 * kn/update-ref-symrefs (2024-04-26) 7 commits
199  - ref: support symrefs in 'reference-transaction' hook
200  - update-ref: add support for 'symref-update' command
201  - update-ref: add support for 'symref-create' command
202  - update-ref: add support for 'symref-delete' command
203  - update-ref: add support for 'symref-verify' command
204  - files-backend: extract out `create_symref_lock`
205  - refs: accept symref values in `ref_transaction[_add]_update`
207  "update-ref" learns to also handle symbolic refs.
209  Expecting a reroll.
210  cf. <CAOLa=ZT4yVEuZXmiTVB2tf0qaTPCPn=0TcJRc89knZQWZBbFTg@mail.gmail.com>
211  source: <20240426152449.228860-1-knayak@gitlab.com>
213 --------------------------------------------------
214 [Cooking]
216 * bb/rgb-12-bit-colors (2024-05-02) 3 commits
217   (merged to 'next' on 2024-05-02 at 7fe29c98d7)
218  + color: add support for 12-bit RGB colors
219  + t/t4026-color: add test coverage for invalid RGB colors
220  + t/t4026-color: remove an extra double quote character
222  The color parsing code learned to handle 12-bit RGB colors, spelled
223  as "#RGB" (in addition to "#RRGGBB" that is already supported).
225  Will merge to 'master'.
226  source: <20240502110331.6347-1-dev+git@drbeat.li>
229 * ds/scalar-reconfigure-all-fix (2024-04-30) 1 commit
230  - scalar: avoid segfault in reconfigure --all
232  Scalar fix.
234  Comments?
235  source: <pull.1724.git.1714496333004.gitgitgadget@gmail.com>
238 * ps/pseudo-ref-terminology (2024-05-02) 10 commits
239  - refs: refuse to write pseudorefs
240  - ref-filter: properly distinuish pseudo and root refs
241  - refs: pseudorefs are no refs
242  - refs: root refs can be symbolic refs
243  - refs: classify HEAD as a root ref
244  - refs: refname `is_special_ref()` to `is_pseudo_ref()`
245  - refs: rename `is_pseudoref()` to `is_root_ref()`
246  - Documentation/glossary: define root refs as refs
247  - Documentation/glossary: clarify limitations of pseudorefs
248  - Documentation/glossary: redefine pseudorefs as special refs
250  Terminology to call various ref-like things are getting
251  straightened out.
253  Comments?
254  source: <cover.1714637671.git.ps@pks.im>
257 * dk/zsh-git-repo-path-fix (2024-04-30) 1 commit
258   (merged to 'next' on 2024-05-02 at 0446d8e63a)
259  + completion: zsh: stop leaking local cache variable
261  Command line completion support for zsh (in contrib/) has been
262  updated to stop exposing internal state to end-user shell
263  interaction.
265  Will merge to 'master'.
266  source: <pull.1725.git.1714513995564.gitgitgadget@gmail.com>
269 * rs/diff-parseopts-cleanup (2024-05-01) 1 commit
270   (merged to 'next' on 2024-05-02 at cd9779c175)
271  + diff-lib: stop calling diff_setup_done() in do_diff_cache()
273  Code clean-up to remove code that is now a noop.
275  Will merge to 'master'.
276  source: <0e96c5a3-7b4d-4c6b-875e-d80e3eb07a00@web.de>
279 * rh/complete-symbolic-ref (2024-04-25) 3 commits
280   (merged to 'next' on 2024-05-01 at 7020ecebe7)
281  + completion: add docs on how to add subcommand completions
282  + completion: improve docs for using __git_complete
283  + completion: add 'symbolic-ref'
285  Command line completion script (in contrib/) learned to complete
286  "git symbolic-ref" a bit better (you need to enable plumbing
287  commands to be completed with GIT_COMPLETION_SHOW_ALL_COMMANDS).
289  Will merge to 'master'.
290  source: <20240425101845.708554-3-rhi@pengutronix.de>
293 * jt/doc-submitting-rerolled-series (2024-04-25) 1 commit
294   (merged to 'next' on 2024-05-01 at 1c5865f11c)
295  + doc: clarify practices for submitting updated patch versions
297  Developer doc update.
299  Will merge to 'master'.
300  source: <20240425213404.133660-1-jltobler@gmail.com>
303 * bc/zsh-compatibility (2024-04-26) 2 commits
304   (merged to 'next' on 2024-05-02 at 10222b2472)
305  + vimdiff: make script and tests work with zsh
306  + t4046: avoid continue in &&-chain for zsh
308  zsh can pretend to be a normal shell pretty well except for some
309  glitches that we tickle in some of our scripts. Work them around
310  so that "vimdiff" and our test suite works well enough with it.
312  Will merge to 'master'.
313  source: <20240426221154.2194139-1-sandals@crustytoothpaste.net>
316 * jc/rev-parse-fatal-doc (2024-05-01) 1 commit
317  - rev-parse: document how --is-* options work outside a repository
319  Doc update.
321  Comments?
322  source: <xmqqplu54fbg.fsf@gitster.g>
325 * ps/undecided-is-not-necessarily-sha1 (2024-04-30) 13 commits
326  . repository: stop setting SHA1 as the default object hash
327  . oss-fuzz/commit-graph: set up hash algorithm
328  . builtin/shortlog: don't set up revisions without repo
329  . builtin/diff: explicitly set hash algo when there is no repo
330  . builtin/bundle: abort "verify" early when there is no repository
331  . builtin/blame: don't access potentially unitialized `the_hash_algo`
332  . builtin/rev-parse: allow shortening to more than 40 hex characters
333  . remote-curl: fix parsing of detached SHA256 heads
334  . attr: fix BUG() when parsing attrs outside of repo
335  . attr: don't recompute default attribute source
336  . parse-options-cb: only abbreviate hashes when hash algo is known
337  . path: move `validate_headref()` to its only user
338  . path: harden validation of HEAD with non-standard hashes
340  Before discovering the repository details, We used to assume SHA-1
341  as the "default" hash function, which has been corrected. Hopefully
342  this will smoke out codepaths that rely on such an unwarranted
343  assumptions.
345  Seems to break t0003 with a NULL the_repository.
347  Ejected out of 'seen' for now.
348  source: <cover.1714371422.git.ps@pks.im>
351 * rj/add-p-typo-reaction (2024-04-30) 2 commits
352   (merged to 'next' on 2024-05-01 at 3016062ebf)
353  + add-patch: response to unknown command
354  + add-patch: do not show UI messages on stderr
356  When the user responds to a prompt given by "git add -p" with an
357  unsupported command, list of available commands were given, which
358  was too much if the user knew what they wanted to type but merely
359  made a typo.  Now the user gets a much shorter error message.
361  Will merge to 'master'.
362  source: <952a9514-3cf1-4601-8f0d-db57adc750c3@gmail.com>
365 * ps/the-index-is-no-more (2024-04-18) 6 commits
366   (merged to 'next' on 2024-05-01 at 7b9a0ab760)
367  + repository: drop `initialize_the_repository()`
368  + repository: drop `the_index` variable
369  + builtin/clone: stop using `the_index`
370  + repository: initialize index in `repo_init()`
371  + builtin: stop using `the_index`
372  + t/helper: stop using `the_index`
374  The singleton index_state instance "the_index" has been eliminated
375  by always instantiating "the_repository" and replacing references
376  to "the_index"  with references to its .index member.
378  Will merge to 'master'.
379  source: <cover.1713442061.git.ps@pks.im>
382 * ps/ci-test-with-jgit (2024-04-12) 13 commits
383   (merged to 'next' on 2024-05-01 at 35e293e618)
384  + t0612: add tests to exercise Git/JGit reftable compatibility
385  + t0610: fix non-portable variable assignment
386  + t06xx: always execute backend-specific tests
387  + ci: install JGit dependency
388  + ci: make Perforce binaries executable for all users
389  + ci: merge scripts which install dependencies
390  + ci: fix setup of custom path for GitLab CI
391  + ci: merge custom PATH directories
392  + ci: convert "install-dependencies.sh" to use "/bin/sh"
393  + ci: drop duplicate package installation for "linux-gcc-default"
394  + ci: skip sudo when we are already root
395  + ci: expose distro name in dockerized GitHub jobs
396  + ci: rename "runs_on_pool" to "distro"
398  Tests to ensure interoperability between reftable written by jgit
399  and our code have been added and enabled in CI.
401  Will merge to 'master'.
402  source: <cover.1712896868.git.ps@pks.im>
405 * pw/rebase-i-error-message (2024-04-08) 2 commits
406  - rebase -i: improve error message when picking merge
407  - rebase -i: pass struct replay_opts to parse_insn_line()
409  When the user adds to "git rebase -i" instruction to "pick" a merge
410  commit, the error experience is not pleasant.  Such an error is now
411  caught earlier in the process that parses the todo list.
413  Expecting a reroll.
414  cf. <88bc0787-e7ae-49e5-99e8-97f6c55ea8c6@gmail.com>
415  source: <pull.1672.v2.git.1712585787.gitgitgadget@gmail.com>
418 * ps/reftable-write-optim (2024-04-08) 11 commits
419   (merged to 'next' on 2024-04-30 at 0667e3c05b)
420  + reftable/block: reuse compressed array
421  + reftable/block: reuse zstream when writing log blocks
422  + reftable/writer: reset `last_key` instead of releasing it
423  + reftable/writer: unify releasing memory
424  + reftable/writer: refactorings for `writer_flush_nonempty_block()`
425  + reftable/writer: refactorings for `writer_add_record()`
426  + refs/reftable: don't recompute committer ident
427  + reftable: remove name checks
428  + refs/reftable: skip duplicate name checks
429  + refs/reftable: perform explicit D/F check when writing symrefs
430  + refs/reftable: fix D/F conflict error message on ref copy
432  Code to write out reftable has seen some optimization and
433  simplification.
435  Will merge to 'master'.
436  source: <cover.1712578837.git.ps@pks.im>
439 * ds/send-email-per-message-block (2024-04-10) 2 commits
440  - send-email: make it easy to discern the messages for each patch
441  - send-email: move newline characters out of a few translatable strings
443  "git send-email" learned to separate its reports on each message it
444  sends out with an extra blank line in between.
446  Comments?
447  source: <cover.1712732383.git.dsimic@manjaro.org>
450 * ew/khash-to-khashl (2024-03-28) 3 commits
451  - khashl: fix ensemble lookups on empty table
452  - treewide: switch to khashl for memory savings
453  - list-objects-filter: use kh_size API
455  The hashtable library "khash.h" has been replaced with "khashl.h"
456  that has better memory usage characteristics.
458  Needs review.
459  cf. <xmqqy1a4ao3t.fsf@gitster.g>
460  source: <20240328101356.300374-1-e@80x24.org>
463 * bc/credential-scheme-enhancement (2024-04-16) 16 commits
464   (merged to 'next' on 2024-05-01 at 789ec5bd35)
465  + credential: add method for querying capabilities
466  + credential-cache: implement authtype capability
467  + t: add credential tests for authtype
468  + credential: add support for multistage credential rounds
469  + t5563: refactor for multi-stage authentication
470  + docs: set a limit on credential line length
471  + credential: enable state capability
472  + credential: add an argument to keep state
473  + http: add support for authtype and credential
474  + docs: indicate new credential protocol fields
475  + credential: add a field called "ephemeral"
476  + credential: gate new fields on capability
477  + credential: add a field for pre-encoded credentials
478  + http: use new headers for each object request
479  + remote-curl: reset headers on new request
480  + credential: add an authtype field
482  The credential helper protocol, together with the HTTP layer, have
483  been enhanced to support authentication schemes different from
484  username & password pair, like Bearer and NTLM.
486  Will merge to 'master'.
487  source: <20240417000240.3611948-1-sandals@crustytoothpaste.net>
490 * tb/pseudo-merge-reachability-bitmap (2024-04-30) 23 commits
491  - t/perf: implement performace tests for pseudo-merge bitmaps
492  - pseudo-merge: implement support for finding existing merges
493  - ewah: `bitmap_equals_ewah()`
494  - pack-bitmap: extra trace2 information
495  - pack-bitmap.c: use pseudo-merges during traversal
496  - t/test-lib-functions.sh: support `--date` in `test_commit_bulk()`
497  - pack-bitmap: implement test helpers for pseudo-merge
498  - ewah: implement `ewah_bitmap_popcount()`
499  - pseudo-merge: implement support for reading pseudo-merge commits
500  - pack-bitmap.c: read pseudo-merge extension
501  - pseudo-merge: scaffolding for reads
502  - pack-bitmap: extract `read_bitmap()` function
503  - pack-bitmap-write.c: write pseudo-merge table
504  - pack-bitmap-write.c: select pseudo-merge commits
505  - pseudo-merge: implement support for selecting pseudo-merge commits
506  - pack-bitmap: make `bitmap_writer_push_bitmapped_commit()` public
507  - pack-bitmap: implement `bitmap_writer_has_bitmapped_object_id()`
508  - pack-bitmap-write: support storing pseudo-merge commits
509  - pseudo-merge.ch: initial commit
510  - pack-bitmap: move some initialization to `bitmap_writer_init()`
511  - pack-bitmap: drop unused `max_bitmaps` parameter
512  - ewah: implement `ewah_bitmap_is_subset()`
513  - Documentation/technical: describe pseudo-merge bitmaps format
515  The pack-bitmap machinery learned to write pseudo-merge bitmaps,
516  which act as imaginary octopus merges covering un-bitmapped
517  reference tips. This enhances bitmap coverage, and thus,
518  performance, for repositories with many references using bitmaps.
520  Needs review.
521  source: <cover.1714422410.git.me@ttaylorr.com>
524 * la/hide-trailer-info (2024-05-02) 11 commits
525  - trailer unit tests: inspect iterator contents
526  - trailer: document parse_trailers() usage
527  - trailer: retire trailer_info_get() from API
528  - trailer: make trailer_info struct private
529  - trailer: make parse_trailers() return trailer_info pointer
530  - interpret-trailers: access trailer_info with new helpers
531  - sequencer: use the trailer iterator
532  - trailer: teach iterator about non-trailer lines
533  - trailer: add unit tests for trailer iterator
534  - Makefile: sort UNIT_TEST_PROGRAMS
535  - Merge branch 'la/format-trailer-info' into la/hide-trailer-info
537  The trailer API has been reshuffled a bit.
539  Will merge to 'next'?
540  source: <pull.1696.v4.git.1714625667.gitgitgadget@gmail.com>
543 * ds/doc-config-reflow (2024-03-14) 1 commit
544  - config.txt: perform some minor reformatting
546  Reflow a paragraph in the documentation source without any effect
547  to the formatted text.
549  Will discard.
550  source: <97bdaf075bf5a68554cca1731eca78aff2662907.1710444774.git.dsimic@manjaro.org>
553 * ie/config-includeif-hostname (2024-03-19) 2 commits
554  - config: learn the "hostname:" includeIf condition
555  - t: add a test helper for getting hostname
557  The conditional inclusion mechanism for configuration files learned
558  to switch on the hostname.
560  Expecting a reroll.
561  cf. <20240319210428.GC1159535@coredump.intra.peff.net>
562  cf. <20240320001934.GA903718@coredump.intra.peff.net>
563  source: <20240319183722.211300-1-ignacio@iencinas.com>
566 * cw/git-std-lib (2024-02-28) 4 commits
567  - SQUASH??? get rid of apparent debugging crufts
568  - test-stdlib: show that git-std-lib is independent
569  - git-std-lib: introduce Git Standard Library
570  - pager: include stdint.h because uintmax_t is used
572  Split libgit.a out to a separate git-std-lib tor easier reuse.
574  Expecting a reroll.
575  source: <cover.1696021277.git.jonathantanmy@google.com>
578 * js/cmake-with-test-tool (2024-04-30) 2 commits
579  - cmake: let `test-tool` run the unit tests, too
580  - Merge branch 'js/unit-test-suite-runner' into js/cmake-with-test-tool
581  (this branch uses js/unit-test-suite-runner.)
583  "test-tool" is now built in CMake build to also run the unit tests.
585  May want to roll it into the base topic.
587  Will merge to 'next' together with the base topic.
588  source: <pull.1666.git.1708038924522.gitgitgadget@gmail.com>
591 * js/unit-test-suite-runner (2024-04-30) 8 commits
592  - ci: use test-tool as unit test runner on Windows
593  - t/Makefile: run unit tests alongside shell tests
594  - unit tests: add rule for running with test-tool
595  - test-tool run-command testsuite: support unit tests
596  - test-tool run-command testsuite: remove hardcoded filter
597  - test-tool run-command testsuite: get shell from env
598  - t0080: turn t-basic unit test into a helper
599  - Merge branch 'jk/unit-tests-buildfix' into js/unit-test-suite-runner
600  (this branch is used by js/cmake-with-test-tool.)
602  The "test-tool" has been taught to run testsuite tests in parallel,
603  bypassing the need to use the "prove" tool.
605  Will merge to 'next' together with js/cmake-with-test-tool?
606  source: <cover.1714506612.git.steadmon@google.com>
609 * bk/complete-dirname-for-am-and-format-patch (2024-01-12) 1 commit
610  - completion: dir-type optargs for am, format-patch
612  Command line completion support (in contrib/) has been
613  updated for a few commands to complete directory names where a
614  directory name is expected.
616  Expecting a reroll.
617  cf. <40c3a824-a961-490b-94d4-4eb23c8f713d@gmail.com>
618  cf. <6683f24e-7e56-489d-be2d-8afe1fc38d2b@gmail.com>
619  source: <d37781c3-6af2-409b-95a8-660a9b92d20b@smtp-relay.sendinblue.com>
622 * bk/complete-send-email (2024-01-12) 1 commit
623  - completion: don't complete revs when --no-format-patch
625  Command line completion support (in contrib/) has been taught to
626  avoid offering revision names as candidates to "git send-email" when
627  the command is used to send pre-generated files.
629  Expecting a reroll.
630  cf. <CAC4O8c88Z3ZqxH2VVaNPpEGB3moL5dJcg3cOWuLWwQ_hLrJMtA@mail.gmail.com>
631  source: <a718b5ee-afb0-44bd-a299-3208fac43506@smtp-relay.sendinblue.com>
634 * tb/path-filter-fix (2024-01-31) 16 commits
635  - bloom: introduce `deinit_bloom_filters()`
636  - commit-graph: reuse existing Bloom filters where possible
637  - object.h: fix mis-aligned flag bits table
638  - commit-graph: new Bloom filter version that fixes murmur3
639  - commit-graph: unconditionally load Bloom filters
640  - bloom: prepare to discard incompatible Bloom filters
641  - bloom: annotate filters with hash version
642  - repo-settings: introduce commitgraph.changedPathsVersion
643  - t4216: test changed path filters with high bit paths
644  - t/helper/test-read-graph: implement `bloom-filters` mode
645  - bloom.h: make `load_bloom_filter_from_graph()` public
646  - t/helper/test-read-graph.c: extract `dump_graph_info()`
647  - gitformat-commit-graph: describe version 2 of BDAT
648  - commit-graph: ensure Bloom filters are read with consistent settings
649  - revision.c: consult Bloom filters for root commits
650  - t/t4216-log-bloom.sh: harden `test_bloom_filters_not_used()`
652  The Bloom filter used for path limited history traversal was broken
653  on systems whose "char" is unsigned; update the implementation and
654  bump the format version to 2.
656  Waiting for a final ack?
657  cf. <ZcFjkfbsBfk7JQIH@nand.local>
658  source: <cover.1706741516.git.me@ttaylorr.com>
661 * jc/rerere-cleanup (2023-08-25) 4 commits
662  - rerere: modernize use of empty strbuf
663  - rerere: try_merge() should use LL_MERGE_ERROR when it means an error
664  - rerere: fix comment on handle_file() helper
665  - rerere: simplify check_one_conflict() helper function
667  Code clean-up.
669  Not ready to be reviewed yet.
670  source: <20230824205456.1231371-1-gitster@pobox.com>