I thought it would be useful to let users know why Subversion is pausing for a long time where previously it would not have done. I think if I were that user, I would want to know. So I tried the attached patch, printing notifications when it is fetching text-bases.
The result looks like this. [[[ $ command svn up 1991/*.pdf 1994/ Updating '1991/one.pdf': DBG: textbase.c: 75: ### open a new session for hydrating Hydrating text bases . Hydrated 1 text bases At revision 2231. Updating '1991/two.pdf': DBG: textbase.c: 75: ### open a new session for hydrating Hydrating text bases . Hydrated 1 text bases At revision 2231. Updating '1994': DBG: textbase.c: 75: ### open a new session for hydrating Hydrating text bases .... Hydrated 4 text bases At revision 2231. Summary of updates: [...] ]]] The "Hydrated N text bases" are redundant: N equals the number of dots printed in the previous line. This is just for demonstration. So are the indentations and the DBG lines. I thought maybe we would like to show this detail by default, and suppress it when '--quiet' is passed. (Not implemented in this demo patch.) I was also mildly surprised to see that the fetches are not necessarily all grouped together at the start of a high-level operation. Clearly it's doing the 'hydrate' once per explicit target. Actually I remember seeing this in earlier review, then forgetting as it didn't seem important. I don't know if we care. I suppose it is unavoidable that a client's operations might sometimes be grouped like this. Even if the client library API allows the client to pass all targets in one call, a client in general may choose to call the library function once per target. If I were the user, and particularly if I were in a use case where just one huge file is involved, then I would also like to have feedback on the (percentage) feedback through the file fetch. It doesn't look like we have a good way to do that at the moment, but please correct me if I'm wrong. Do we like this? If so, I can clean up the patch a bit and commit it. - Julian
hydrating-notifications-1.patch
Description: Binary data