On Wed, Apr 15, 2020 at 6:13 PM Junio C Hamano <gitster@xxxxxxxxx> wrote: > * en/fill-directory-exponential (2020-04-01) 12 commits > - completion: fix 'git add' on paths under an untracked directory > - Fix error-prone fill_directory() API; make it only return matches > - dir: replace double pathspec matching with single in treat_directory() > - dir: include DIR_KEEP_UNTRACKED_CONTENTS handling in treat_directory() > - dir: replace exponential algorithm with a linear one > - dir: refactor treat_directory to clarify control flow > - dir: fix confusion based on variable tense > - dir: fix broken comment > - dir: consolidate treat_path() and treat_one_path() > - dir: fix simple typo in comment > - t3000: add more testcases testing a variety of ls-files issues > - t7063: more thorough status checking > > The directory traversal code had redundant recursive calls which > made its performance characteristics exponential with respect to > the depth of the tree, which was corrected. > > Is this ready for 'next'? I think it's as ready as it's going to get. I'm not aware of any current issues, am not planning further work barring a report or further review, and I'm feeling much better about it than when I first submitted it with a bunch of big warnings (though the big warnings it contains in that one commit message are still justified). I'm glad it spent a good long while in pu. My biggest worry with this series is that it might get merged just slightly before a release; I hope it either spends an average amount of time in next and then merges down quickly or else sits in next for a long time and merges at the beginning of the 2.28 cycle. Either way, at $DAYJOB I got a minor victory by getting many volunteers who will take newish git versions (as opposed to the old "please install at least git>=2.20.0), and I'm currently trying to set up a pipeline for them to get new versions easily. This series will be one of the things I include, in order generate more real-world testing.