]> git.99rst.org Git - git.git/commitdiff
Merge branch 'ps/odb-for-each-object-filter'
authorJunio C Hamano <redacted>
Wed, 22 Jul 2026 17:30:54 +0000 (10:30 -0700)
committerJunio C Hamano <redacted>
Wed, 22 Jul 2026 17:30:54 +0000 (10:30 -0700)
The object database enumeration interface odb_for_each_object() has
been taught to accept object filters, allowing the underlying backends
to optimize the traversal by using reachability bitmaps when
available.  'git cat-file --batch-all-objects' has been updated to use
this generic interface, simplifying its code and avoiding direct
access to ODB backend internals.

* ps/odb-for-each-object-filter:
  builtin/cat-file: filter objects via object database
  odb: introduce object filters to `odb_for_each_object()`
  pack-bitmap: introduce function to open bitmap for a single source
  pack-bitmap: drop `_1` suffix from functions that open bitmaps
  pack-bitmap: iterate object sources when opening bitmaps
  pack-bitmap: allow aborting iteration of bitmapped objects
  pack-objects: drop unused return value from add_object_entry()
  pack-bitmap: mark object filter as `const`
  odb/source-packed: improve lookup when enumerating objects

1  2 
odb.h
odb/source-packed.c
pack-bitmap.c

diff --cc odb.h
Simple merge
Simple merge
diff --cc pack-bitmap.c
Simple merge
git clone https://git.99rst.org/PROJECT