On Tue, Apr 22, 2025 at 10:55:23PM +0800, shejialuo wrote: > diff --git a/t/helper/test-string-list.c b/t/helper/test-string-list.c > index 262b28c599..6be0cdb8e2 100644 > --- a/t/helper/test-string-list.c > +++ b/t/helper/test-string-list.c > @@ -1,48 +1,9 @@ > -#define DISABLE_SIGN_COMPARE_WARNINGS > - > #include "test-tool.h" > #include "strbuf.h" > #include "string-list.h" > > -/* > - * Parse an argument into a string list. arg should either be a > - * ':'-separated list of strings, or "-" to indicate an empty string > - * list (as opposed to "", which indicates a string list containing a > - * single empty string). list->strdup_strings must be set. > - */ > -static void parse_string_list(struct string_list *list, const char *arg) > -{ > - if (!strcmp(arg, "-")) > - return; > - > - (void)string_list_split(list, arg, ':', -1); > -} > - > -static void write_list_compact(const struct string_list *list) > -{ > - int i; > - if (!list->nr) > - printf("-\n"); > - else { > - printf("%s", list->items[0].string); > - for (i = 1; i < list->nr; i++) > - printf(":%s", list->items[i].string); > - printf("\n"); > - } > -} > - > int cmd__string_list(int argc, const char **argv) > { > - if (argc == 3 && !strcmp(argv[1], "remove_duplicates")) { > - struct string_list list = STRING_LIST_INIT_DUP; > - > - parse_string_list(&list, argv[2]); > - string_list_remove_duplicates(&list, 0); > - write_list_compact(&list); > - string_list_clear(&list, 0); > - return 0; > - } > - > if (argc == 2 && !strcmp(argv[1], "sort")) { > struct string_list list = STRING_LIST_INIT_NODUP; > struct strbuf sb = STRBUF_INIT; I'm a bit surprised that the patch series stops after this patch given that the only remaining subcommand is "sort". Is there a specific reason why you don't also convert that function? If you did we could declare victory by deleting the whole "test-helper string-list" subcommand. It seems that the only reason is p0071, where we benchmark performance of sorting. I dunno... that one is of course not a good fit for our unit testing framework. But it's a bit sad that we cannot remove the whole infra only because of a performance test that nobody ever runs in the first place. Patrick