This series cleans up a whole lot of flow control and makes it possible to extend commit-walkers and http (each individually) in more useful directions. Due to the limitations on what I can test, it could use a bunch more testing before it goes in. In particular, http-push is completely untested, and I haven't really beaten on USE_CURL_MULTI, although it compiles each way. The first patch just makes the http library code easier to work with. The second patch turns the caller-provided global function for making delayed requests into a callback in a chain. The third patch (posted previously) removes obsolete commit-walkers. The fourth patch (posted previously) reworks the commit-walker framework, and makes http-fetch into a commit-walker implementation which can be used from library code. It also turns http-fetch into a (trivial) builtin which calls the walker code with the library walker. Makefile | 37 ++---- builtin-http-fetch.c | 77 +++++++++++++ builtin.h | 1 + fetch.h | 54 --------- git.c | 3 + http-push.c | 25 +--- http-fetch.c => http-walker.c | 245 +++++++++++++++++---------------------- http.c | 50 ++++++++ http.h | 7 +- local-fetch.c | 254 ----------------------------------------- rsh.c | 83 ------------- rsh.h | 7 - ssh-fetch.c | 166 --------------------------- ssh-pull.c | 4 - ssh-push.c | 4 - ssh-upload.c | 143 ----------------------- fetch.c => walker.c | 83 +++++++------- walker.h | 37 ++++++ 18 files changed, 339 insertions(+), 941 deletions(-) -Daniel *This .sig left intentionally blank* - 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