Hi Bert,
I don't think this is the way we should implement this.

This patch adds an if before every operation in the update editor that changes 
the working copy. This makes the update editor harder to maintain, while you 
really only need a simple editor implementation that notifies its output to get 
a dry run output.

That would allow the dry run code to be maintained independently without 
obfuscating the existing update editor.

I actually just followed the model used in merge dry run. If I were to implement my own editor, I felt that I would be duplicating a lot of code which already exists in the update editor. (w.r.t conflict detection, property handling and lots more)

Besides: I don't know why the update editor really needs --dry run support. We 
always told our users to use svn status -U, which shows the same information in 
a generally more useful output.

IIRC, status -U doesn't tell the user if there are going to be any text/prop conflicts upon performing the update (which I think is the primary use-case of this dry-run flag), it merely tells you if a file has been modified and if there is a newer version on the server. Moreover, status doesn't accept an -r option.
A dry run update is a nice feature for 'svn' with console notification, but 
implemented this way it doesn't help any other Subversion client, while status 
-U does. Should we improve status -U instead?

I have actually percolated the dry_run parameter all the way to the API. svn_client_update4 accepts this boolean and the notify_func provided by the client does the notification. I don't understand why this wouldn't help any other Subversion client.

Thanks and Regards,
Arwin Arni

Reply via email to