> -----Original Message-----
> From: [email protected] [mailto:[email protected]]
> Sent: donderdag 20 mei 2010 17:11
> To: [email protected]
> Subject: svn commit: r946661 -
> /subversion/trunk/subversion/libsvn_wc/adm_crawler.c
> 
> Author: stsp
> Date: Thu May 20 15:11:07 2010
> New Revision: 946661
> 
> URL: http://svn.apache.org/viewvc?rev=946661&view=rev
> Log:
> Fix issue #2267, "support uncommitted svn:externals properties".
> 
> * subversion/libsvn_wc/adm_crawler.c
>   (read_traversal_info): Rename to ...
>   (read_externals_info): ... this. We've been using an external_func
>    callback instead of a traversal info for some time.
>   (report_revisions_and_depths): Rename local variable CHILDREN to
>    BASE_CHILDREN for clarity (the children come from the BASE tree).
>    If the caller provided an EXTERNAL_FUNC callback, check locally
>    added directories for svn:externals as well and pass them to the
>    callback. The caller will then pull externals into the added directory.

        Hi,

I'm not sure if this really fixes this issue for the common use cases. (And it 
introduces libsvn_client specific support for updates in a libsvn_wc common 
function that is used for more than just this update scenario. E.g. svn status 
-u).

The current code (well; before your patch) applies changes on svn:externals on 
update. By comparing the old and new versions of the svn:externals property it 
can add/remove/switch externals.

Your new code can just add externals, and if the directory is later reverted 
the externals will stay as a detached working copy. (And if a different 
svn:external value is set for a directory you will get some hard to resolve 
issues, that you would never get into with just the old code).


I think fixing issue ##2267 needs a good design instead of a quick and dirty 
fix in one of the fundamental editor helper functions. (E.g. does this break 
backwards compatibility of our APIs somewhere?)


Looking further in the implementation: Why does the code walk the children of 
an added noded, but not the children of the children?

        Bert 


Reply via email to