Version 2 of a patch series that adds some functions to the string_list API. This patch series applies to current master. Thanks for Junio for lots of great feedback. The patch series "Clean up how fetch_pack() handles the heads list" v3, which requires some of the new string_list functionality, works unmodified on top of this version of the patch series. Changes since v1: * Expose a new function, string_list_append_nodup(). This is used in the implementation of string_list_split() and should be generally useful. * Straighten out the API for splitting strings (with help from Junio): * Implement two separate functions, one for splitting strings in place and a second for making copies while splitting a const string. * Redefine maxsplit=0 to mean "copy input string to output list as a single entry" for better consistency. * Add tests for more of the new functionality and simplify some of the other tests. * Various comment and documentation improvements. Michael Haggerty (6): string_list: add function string_list_append_nodup() string_list: add two new functions for splitting strings string_list: add a new function, filter_string_list() string_list: add a new function, string_list_remove_duplicates() string_list: add a function string_list_longest_prefix() api-string-list.txt: initialize the string_list the easy way .gitignore | 1 + Documentation/technical/api-string-list.txt | 67 +++++++++++++-- Makefile | 1 + string-list.c | 123 ++++++++++++++++++++++++++-- string-list.h | 71 ++++++++++++++++ t/t0063-string-list.sh | 121 +++++++++++++++++++++++++++ test-string-list.c | 123 ++++++++++++++++++++++++++++ 7 files changed, 497 insertions(+), 10 deletions(-) create mode 100755 t/t0063-string-list.sh create mode 100644 test-string-list.c -- 1.7.11.3 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html