On Mon, May 29, 2017 at 3:23 AM, Junio C Hamano <[email protected]> wrote:
> * df/dir-iter-remove-subtree (2017-05-29) 5 commits
> . remove_subtree(): reimplement using iterators
> . dir_iterator: rewrite state machine model
> . dir_iterator: refactor dir_iterator_advance
> . remove_subtree(): test removing nested directories
> . dir_iterator: add tests for dir_iterator API
>
> Update the dir-iterator API and use it to reimplement
> remove_subtree().
>
> GSoC microproject.
> Ejected as it conflicts with other topics in flight in a
> non-trivial way.
I see this conflicts with Duy's
fa7e9c0c24637d6b041a2919a33956b68bfd0869 ("files-backend: make reflog
iterator go through per-worktree reflog", 2017-04-19) because his
commit creates a new dir_iterator whose NULL value means something
semantically. This would be perfectly OK with the old dir_iterator API
(where NULL was not a possible return value from dir_iterator_begin()
and could be "reserved" for this case), but will most probably
generate issues with the new API, where NULL can *also* mean we failed
to lstat() the directory we're trying to iterate over[1].
I'll try to address this issue playing with pu, but I'm just wondering
what would be the best way to send this upcoming not-based-on-master
patch to the list. Should I just send it normally and signal it
originates from pu rather than master?
Thanks,
[1]:
https://public-inbox.org/git/[email protected]/T/#m68286d783b5dfbad6921fbf012f685a629645c61