mbox series

[v3,00/10] Filter combination

Message ID cover.1560462201.git.matvore@google.com (mailing list archive)
Headers show
Series Filter combination | expand

Message

Matthew DeVore June 13, 2019, 9:51 p.m. UTC
It has been a while since a sent a roll-up. Here are the changes since v2:

 - Re-use more URL-encoding logic in strbuf.c
   * This was partially achieved by changing the helper function to accept a
     function that will indicate whether some character must be escaped.
 - Re-use more URL-decoding logic in url.c
 - changed the filter_spec strbuf to a string_list to avoid explicit
   initialization
 - Remove logic to "expand" tree:#k and tree:#m filter specs since there is no
   server that supports tree:# but does not support tree:#k, as they were
   implemented at the same time.

Thanks,

Matthew DeVore (10):
  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 string_list
  strbuf: give URL-encoding API a char predicate fn
  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/clone.c                     |   8 +-
 builtin/fetch.c                     |   9 +-
 builtin/rev-list.c                  |   6 +-
 cache.h                             |  22 ++
 credential-store.c                  |   9 +-
 fetch-pack.c                        |  20 +-
 http.c                              |   6 +-
 list-objects-filter-options.c       | 267 +++++++++++++++++----
 list-objects-filter-options.h       |  57 ++++-
 list-objects-filter.c               | 345 +++++++++++++++++++++-------
 list-objects-filter.h               |  35 ++-
 list-objects.c                      |  55 ++---
 strbuf.c                            |  15 +-
 strbuf.h                            |   7 +-
 t/t5616-partial-clone.sh            |  19 ++
 t/t6112-rev-list-filters-objects.sh | 194 +++++++++++++++-
 transport-helper.c                  |  10 +-
 transport.c                         |   1 +
 upload-pack.c                       |  13 +-
 url.c                               |   6 +
 url.h                               |   8 +
 22 files changed, 879 insertions(+), 249 deletions(-)

Comments

Junio C Hamano June 14, 2019, 7:50 p.m. UTC | #1
Matthew DeVore <matvore@google.com> writes:

> It has been a while since a sent a roll-up. Here are the changes since v2:
>
>  - Re-use more URL-encoding logic in strbuf.c
>    * This was partially achieved by changing the helper function to accept a
>      function that will indicate whether some character must be escaped.
>  - Re-use more URL-decoding logic in url.c
>  - changed the filter_spec strbuf to a string_list to avoid explicit
>    initialization
>  - Remove logic to "expand" tree:#k and tree:#m filter specs since there is no
>    server that supports tree:# but does not support tree:#k, as they were
>    implemented at the same time.

Since the v2 of this topic, cc/list-objects-filter-wo-sparse-path
was merged to the mainline before Git 2.22 was tagged.  As we won't
be merging this topic to any maintenance track anyway, it is
probably a good time to rebase it on v2.22.0, to avoid unnecessary
conflicts.

Thanks.