Hi Junio, I am back from a week off, and wanted to give an update on the status of my outstanding topics. I'll be off next week, too, and then back on July 5th onward. I plan on getting all of the ones with outstanding review comments replied to and/or rerolled tomorrow. On Wed, Jun 14, 2023 at 05:06:50PM -0700, Junio C Hamano wrote: > * tb/pack-bitmap-index-seek (2023-03-20) 6 commits > - pack-bitmap.c: factor out `bitmap_index_seek_commit()` > - pack-bitmap.c: use `bitmap_index_seek()` where possible > - pack-bitmap.c: factor out manual `map_pos` manipulation > - pack-bitmap.c: drop unnecessary 'inline's > - pack-bitmap.c: hide bitmap internals in `read_be32()` > - pack-bitmap.c: hide bitmap internals in `read_u8()` > > Clean-up the pack-bitmap codepath. > > Kicked back to 'seen' out of 'next'. > There is a BUG() on data errors that needs to be fixed. > source: <cover.1679342296.git.me@xxxxxxxxxxxx> Let's discard this one for now. It's not super high up on my to-do list and it's not worth the burden of carrying in 'seen'. > * tb/collect-pack-filenames-fix (2023-06-12) 1 commit > - builtin/repack.c: only collect fully-formed packs > > Avoid breakage of "git pack-objects --cruft" due to inconsistency > between the way the code enumerates packfiles in the repository. > > Will merge to 'next'? > source: <20230607101617.ges6tnMry4E52lDGld43QgtNUsIS4YQq6w-t71hEfkQ@z> Yes, this one is ready to go (and has been running at GitHub for a week or so, for what that's worth ;-)). > * tb/open-midx-bitmap-fallback (2023-06-12) 1 commit > - pack-bitmap.c: gracefully degrade on failure to load MIDX'd pack > > Gracefully deal with a stale MIDX file that lists a packfile that > no longer exists. > > Will merge to 'next'. > source: <f123b68cb8a277fbf105b1789a84b9405a499b79.1686178854.git.me@xxxxxxxxxxxx> Thanks. I am somewhat embarrassed to have not caught that when writing it, but better late than never. > * tb/submodule-null-deref-fix (2023-05-25) 1 commit > (merged to 'next' on 2023-06-13 at 5eb6a7948d) > + builtin/submodule--helper.c: handle missing submodule URLs > > "git submodule" code trusted the data coming from the config (and > the in-tree .gitmodules file) too much without validating, leading > to NULL dereference if the user mucks with a repository (e.g. > submodule.<name>.url is removed). This has been corrected. > > Will merge to 'master'. > source: <ae6cf3fa461b85e346f034371dae56a2790dfa20.1684957882.git.me@xxxxxxxxxxxx> Thanks for picking this one back up post-release. > * tb/refs-exclusion-and-packed-refs (2023-06-12) 16 commits > - ls-refs.c: avoid enumerating hidden refs where possible > - upload-pack.c: avoid enumerating hidden refs where possible > - builtin/receive-pack.c: avoid enumerating hidden references > - refs.h: let `for_each_namespaced_ref()` take excluded patterns > - refs/packed-backend.c: ignore complicated hidden refs rules > - revision.h: store hidden refs in a `strvec` > - refs/packed-backend.c: add trace2 counters for jump list > - refs/packed-backend.c: implement jump lists to avoid excluded pattern(s) > - refs/packed-backend.c: refactor `find_reference_location()` > - refs: plumb `exclude_patterns` argument throughout > - builtin/for-each-ref.c: add `--exclude` option > - ref-filter.c: parameterize match functions over patterns > - ref-filter: add `ref_filter_clear()` > - ref-filter: clear reachable list pointers after freeing > - ref-filter.h: provide `REF_FILTER_INIT` > - refs.c: rename `ref_filter` > > Enumerating refs in the packed-refs file, while excluding refs that > match certain patterns, has been optimized. > source: <cover.1686134440.git.me@xxxxxxxxxxxx> Thanks for your review on this one. I am just getting back from a week of vacation (and then off again next week, then back in early July). I had intended to respond to your review today, but I didn't quite get to it today. On my list for tomorrow, hopefully the rerolled version should be ready to pick up. > * tb/gc-recent-object-hook (2023-06-12) 2 commits > - gc: introduce `gc.recentObjectsHook` > - reachable.c: extract `obj_is_recent()` > > "git pack-objects" learned to invoke a new hook program that > enumerates extra objects to be used as anchoring points to keep > otherwise unreachable objects in cruft packs. > > Will merge to 'next'. > source: <cover.1686178684.git.me@xxxxxxxxxxxx> Thanks. > * tb/pack-bitmap-traversal-with-boundary (2023-05-08) 3 commits > + pack-bitmap.c: use commit boundary during bitmap traversal > + pack-bitmap.c: extract `fill_in_bitmap()` > + object: add object_array initializer helper function > (this branch is used by ds/disable-replace-refs.) > > The object traversal using reachability bitmap done by > "pack-object" has been tweaked to take advantage of the fact that > using "boundary" commits as representative of all the uninteresting > ones can save quite a lot of object enumeration. > > Will merge to 'next'. > source: <cover.1683567065.git.me@xxxxxxxxxxxx> Thanks on this one, too. Thanks, Taylor