On 5/31/2019 8:35 PM, Matthew DeVore wrote:
Here is a roll-up with hopefully all comments applied or responded to. Notable
changes since the last one include:
- Added an ALLOC_GROW_BY which is used twice by this patchset to make growing
arrays safer and cleaner
- Cleaned up the URL-encoding by (1) using hex_to_bytes rather than rolling my
own helpers and (2) making error-string-generation non-conditional
- Switched to an array-based data structure rather than a linked list for both
LOFC_COMBINE filter spec objects and the filter object itself
- Changed the list_objects_filter API to be cleaner to use
- Changed test cases to use sparse:oid= rather than sparse:path= since the
latter is being disabled.
Thank you,
Matthew DeVore (9):
list-objects-filter: make API easier to use
list-objects-filter: put omits set in filter struct
list-objects-filter-options: always supply *errbuf
list-objects-filter: implement composite filters
list-objects-filter-options: move error check up
list-objects-filter-options: make filter_spec a strbuf
list-objects-filter-options: allow mult. --filter
list-objects-filter-options: clean up use of ALLOC_GROW
list-objects-filter-options: make parser void
Documentation/rev-list-options.txt | 16 ++
builtin/rev-list.c | 2 +-
cache.h | 22 ++
list-objects-filter-options.c | 264 ++++++++++++++++++---
list-objects-filter-options.h | 32 ++-
list-objects-filter.c | 345 +++++++++++++++++++++-------
list-objects-filter.h | 35 ++-
list-objects.c | 55 ++---
t/t5616-partial-clone.sh | 19 ++
t/t6112-rev-list-filters-objects.sh | 197 +++++++++++++++-
transport.c | 1 +
upload-pack.c | 4 +-
12 files changed, 816 insertions(+), 176 deletions(-)
This looks much nicer.
Thanks
Jeff