git/builtin
Matthew DeVore cf9ceb5a12 list-objects-filter-options: make filter_spec a string_list
Make the filter_spec string a string_list rather than a raw C string.
The list of strings must be concatted together to make a complete
filter_spec. A future patch will use this capability to build "combine:"
filter specs gradually.

A strbuf would seem to be a more natural choice for this object, but it
unfortunately requires initialization besides just zero'ing out the
memory.  This results in all container structs, and all containers of
those structs, etc., to also require initialization. Initializing them
all would be more cumbersome that simply using a string_list, which
behaves properly when its contents are zero'd.

For the purposes of code simplification, change behavior in how filter
specs are conveyed over the protocol: do not normalize the tree:<depth>
filter specs since there should be no server in existence that supports
tree:# but not tree:#k etc.

Helped-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Matthew DeVore <matvore@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2019-06-28 08:41:53 -07:00
..
add.c add: error appropriately on repository with no commits 2019-04-10 12:52:50 +09:00
am.c Merge branch 'jk/am-i-resolved-fix' 2019-06-17 10:15:15 -07:00
annotate.c
apply.c apply.c: make init_apply_state() take a struct repository 2018-08-13 14:14:44 -07:00
archive.c pack-protocol.txt: accept error packets in any context 2019-01-02 13:05:30 -08:00
bisect--helper.c bisect--helper: verify HEAD could be parsed before continuing 2019-05-28 10:51:01 -07:00
blame.c Merge branch 'sg/blame-in-bare-start-at-head' 2019-04-25 16:41:21 +09:00
branch.c parse_opt_ref_sorting: always use with NONEG flag 2019-03-21 12:03:35 +09:00
bundle.c create_bundle(): drop unused "header" parameter 2019-01-24 12:35:44 -08:00
cat-file.c Merge branch 'jk/loose-object-cache-oid' 2019-02-06 22:05:27 -08:00
check-attr.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
check-ignore.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
check-mailmap.c config: don't include config.h by default 2017-06-15 12:56:22 -07:00
check-ref-format.c Merge branch 'jc/check-ref-format-oor' into maint 2017-11-15 12:04:57 +09:00
checkout-index.c Merge branch 'nd/the-index-final' 2019-02-06 22:05:23 -08:00
checkout.c Merge branch 'nd/checkout-m' 2019-04-25 16:41:14 +09:00
clean.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
clone.c list-objects-filter-options: make filter_spec a string_list 2019-06-28 08:41:53 -07:00
column.c builtin: consistently pass cmd_* prefix to parse_options 2019-05-13 14:22:53 +09:00
commit-graph.c commit-graph verify: detect inability to read the graph 2019-04-01 12:14:50 +09:00
commit-tree.c commit-tree: utilize parse-options api 2019-03-08 10:31:24 +09:00
commit.c Merge branch 'pw/clean-sequencer-state-upon-final-commit' 2019-05-13 23:50:35 +09:00
config.c Merge branch 'jk/save-getenv-result' 2019-01-29 12:47:54 -08:00
count-objects.c rename "alternate_object_database" to "object_directory" 2018-11-13 14:22:02 +09:00
credential.c credential: handle invalid arguments earlier 2017-05-30 14:45:03 +09:00
describe.c Merge branch 'ss/describe-dirty-in-the-right-directory' 2019-02-06 22:05:29 -08:00
diff-files.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
diff-index.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
diff-tree.c Merge branch 'en/combined-all-paths' 2019-03-07 09:59:54 +09:00
diff.c Merge branch 'nd/diff-parseopt-4' 2019-04-25 16:41:12 +09:00
difftool.c Merge branch 'js/difftool-no-index' 2019-05-19 16:45:35 +09:00
fast-export.c fast-export: do automatic reencoding of commit messages only if requested 2019-05-14 16:48:56 +09:00
fetch-pack.c fetch_pack(): drop unused parameters 2019-03-20 18:34:09 +09:00
fetch.c list-objects-filter-options: make filter_spec a string_list 2019-06-28 08:41:53 -07:00
fmt-merge-msg.c Merge branch 'nd/the-index' 2018-10-19 13:34:02 +09:00
for-each-ref.c parse_opt_ref_sorting: always use with NONEG flag 2019-03-21 12:03:35 +09:00
fsck.c Merge branch 'jk/fsck-doc' 2019-03-20 15:16:06 +09:00
gc.c gc: handle & check gc.reflogExpire config 2019-04-01 12:51:51 +09:00
get-tar-commit-id.c builtin/get-tar-commit-id: make hash size independent 2019-04-01 11:57:39 +09:00
grep.c Merge branch 'nd/the-index-final' 2019-02-06 22:05:23 -08:00
hash-object.c builtin: consistently pass cmd_* prefix to parse_options 2019-05-13 14:22:53 +09:00
help.c completion: add more parameter value completion 2019-02-20 12:31:56 -08:00
index-pack.c index-pack: prefetch missing REF_DELTA bases 2019-05-15 11:01:40 +09:00
init-db.c Merge branch 'nd/init-relative-template-fix' 2019-06-13 13:18:46 -07:00
interpret-trailers.c assert NOARG/NONEG behavior of parse-options callbacks 2018-11-06 12:56:29 +09:00
log.c Merge branch 'dl/format-patch-notes-config' 2019-06-13 13:19:42 -07:00
ls-files.c Merge branch 'tg/ls-files-debug-format-fix' 2019-04-25 16:41:20 +09:00
ls-remote.c parse_opt_ref_sorting: always use with NONEG flag 2019-03-21 12:03:35 +09:00
ls-tree.c Merge branch 'nd/attr-pathspec-in-tree-walk' 2019-01-14 15:29:28 -08:00
mailinfo.c
mailsplit.c mailinfo & mailsplit: check for EOF while parsing 2017-05-08 12:18:19 +09:00
merge-base.c Merge branch 'pk/rebase-in-c-4-opts' 2018-11-02 11:04:55 +09:00
merge-file.c assert NOARG/NONEG behavior of parse-options callbacks 2018-11-06 12:56:29 +09:00
merge-index.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
merge-ours.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
merge-recursive.c Merge branch 'nd/the-index-final' 2019-02-06 22:05:23 -08:00
merge-tree.c Merge branch 'nd/the-index-final' 2019-02-06 22:05:23 -08:00
merge.c Merge branch 'vv/merge-squash-with-explicit-commit' 2019-06-17 10:15:17 -07:00
mktag.c object-store: move object access functions to object-store.h 2018-05-16 11:42:03 +09:00
mktree.c mktree: drop unused length parameter 2019-05-13 14:22:54 +09:00
multi-pack-index.c midx: pass a repository pointer 2019-05-07 13:48:41 +09:00
mv.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
name-rev.c name-rev: drop unused parameters from is_better_name() 2019-05-13 14:22:54 +09:00
notes.c Merge branch 'nd/the-index' into md/list-objects-filter-by-depth 2019-01-15 15:38:29 -08:00
pack-objects.c Merge branch 'jk/unused-params-final-batch' 2019-06-13 13:19:34 -07:00
pack-redundant.c object-store: rename and expand packed_git's sha1 member 2019-04-01 11:57:38 +09:00
pack-refs.c Honor core.precomposeUnicode in more places 2019-04-26 10:54:03 +09:00
patch-id.c format-patch: make --base patch-id output stable 2019-05-08 19:27:43 +09:00
prune-packed.c Merge branch 'rj/prune-packed-excess-args' 2019-03-07 09:59:55 +09:00
prune.c prune: check SEEN flag for reachability 2019-02-14 15:25:33 -08:00
pull.c Merge branch 'dl/merge-cleanup-scissors-fix' 2019-05-09 00:37:24 +09:00
push.c Merge branch 'nd/style-opening-brace' 2019-01-18 13:49:52 -08:00
range-diff.c builtin: consistently pass cmd_* prefix to parse_options 2019-05-13 14:22:53 +09:00
read-tree.c cmd_{read,write}_tree: rename "unused" variable that is used 2019-05-13 14:22:53 +09:00
rebase.c Merge branch 'js/rebase-cleanup' 2019-06-13 13:19:40 -07:00
receive-pack.c receive-pack: drop unused "commands" from prepare_shallow_update() 2019-05-13 14:22:54 +09:00
reflog.c Merge branch 'jk/loose-object-cache-oid' 2019-02-06 22:05:27 -08:00
remote-ext.c consistently use "fallthrough" comments in switches 2017-09-22 12:49:57 +09:00
remote-fd.c remote-{ext,fd}: print usage message on invalid arguments 2017-05-30 14:45:04 +09:00
remote.c remove_all_fetch_refspecs(): drop unused "remote" parameter 2019-05-13 14:22:54 +09:00
repack.c repack: enable bitmaps by default on bare repos 2019-03-18 14:09:54 +09:00
replace.c Merge branch 'cc/replace-graft-peel-tags' 2019-05-09 00:37:24 +09:00
rerere.c Merge branch 'nd/the-index' into md/list-objects-filter-by-depth 2019-01-15 15:38:29 -08:00
reset.c Merge branch 'bp/post-index-change-hook' 2019-04-25 16:41:11 +09:00
rev-list.c list-objects-filter-options: make filter_spec a string_list 2019-06-28 08:41:53 -07:00
rev-parse.c cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch 2019-01-24 11:55:06 -08:00
revert.c cherry-pick/revert: add scissors line on merge conflict 2019-04-19 12:05:36 +09:00
rm.c submodule: drop unused prefix parameter from some functions 2019-05-13 14:22:54 +09:00
send-pack.c pack-protocol.txt: accept error packets in any context 2019-01-02 13:05:30 -08:00
shortlog.c Merge branch 'nd/show-gitcomp-compilation-fix' into maint 2018-12-15 12:24:33 +09:00
show-branch.c show-branch: drop unused parameter from show_independent() 2019-05-13 14:22:54 +09:00
show-index.c make show-index a builtin 2018-05-29 00:28:22 +09:00
show-ref.c Merge branch 'en/unicode-in-refnames' 2019-05-19 16:45:30 +09:00
stash.c Merge branch 'jk/unused-params-even-more' 2019-04-25 16:41:12 +09:00
stripspace.c stripspace: allow -s/-c outside git repository 2018-12-26 15:41:47 -08:00
submodule--helper.c Merge branch 'jk/unused-params-final-batch' 2019-06-13 13:19:34 -07:00
symbolic-ref.c refs: rename constant `REF_NODEREF` to `REF_NO_DEREF` 2017-11-06 10:31:08 +09:00
tag.c Merge branch 'dl/warn-tagging-a-tag' 2019-05-19 16:45:26 +09:00
unpack-file.c object-store: move object access functions to object-store.h 2018-05-16 11:42:03 +09:00
unpack-objects.c convert "hashcmp() != 0" to "!hasheq()" 2018-08-29 11:32:49 -07:00
update-index.c fill_stat_cache_info(): prepare for an fsmonitor fix 2019-05-28 12:43:42 -07:00
update-ref.c update-ref: allow --no-deref with --stdin 2018-09-12 15:17:17 -07:00
update-server-info.c parse-options: let OPT__FORCE take optional flags argument 2018-02-09 10:24:50 -08:00
upload-archive.c archive: initialize archivers earlier 2018-10-26 10:17:59 +09:00
upload-pack.c builtin: consistently pass cmd_* prefix to parse_options 2019-05-13 14:22:53 +09:00
var.c config: don't include config.h by default 2017-06-15 12:56:22 -07:00
verify-commit.c verify-commit: simplify parameters to run_gpg_verify() 2019-05-13 14:22:54 +09:00
verify-pack.c config: don't include config.h by default 2017-06-15 12:56:22 -07:00
verify-tag.c ref-filter: use "struct object_id" consistently 2018-04-09 06:14:45 +09:00
worktree.c Merge branch 'nd/worktree-name-sanitization' 2019-06-13 13:19:40 -07:00
write-tree.c cmd_{read,write}_tree: rename "unused" variable that is used 2019-05-13 14:22:53 +09:00