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
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
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 --------------------------------------------------
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
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.
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.
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.
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
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
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
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
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.
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.
210 cf. <CAOLa=ZT4yVEuZXmiTVB2tf0qaTPCPn=0TcJRc89knZQWZBbFTg@mail.gmail.com>
211 source: <20240426152449.228860-1-knayak@gitlab.com>
213 --------------------------------------------------
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
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
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
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
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
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.
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
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.
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.
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.
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.
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.
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.
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.
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.
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
669 Not ready to be reviewed yet.
670 source: <20230824205456.1231371-1-gitster@pobox.com>