You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by "Peter N. Lundblad" <pe...@famlundblad.se> on 2004/10/14 21:58:44 UTC

Issue #2064

Hi, folks,

I'm trying to solve issue #2064, which is about merge failing to create
symlinks (and expand keywords for that matter). It would be nice to have
this in 1.1.1 if possible, but it is no show-stopper. It's ugly though.

The problem is that the diff editor is designed to provide file
changes/additions in a callback and property changes in another callback.
So, when a file is merged, the old properties are still in effect. What is
necessary to do is to have the file retranslated (keywords expanded and so
on) when properties are merged. The problem is that I find no way outside
of libsvn_wc to do this. I tried svn_wc_merge with identical left and
right files, but that function was too smart. I.e. it didn't expand if the
file wasn't changed. Has anyone got an idea how to solve this? For 1.2, we
can have a public function for this. Maybe we should just punt and
document this as a known pbolem?

//Peter

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Issue #2064

Posted by "Peter N. Lundblad" <pe...@famlundblad.se>.
On Mon, 18 Oct 2004, Ben Collins-Sussman wrote:
>
> On Oct 14, 2004, at 4:58 PM, Peter N. Lundblad wrote:
>
> > I'm trying to solve issue #2064, which is about merge failing to create
> > symlinks (and expand keywords for that matter). It would be nice to
> > have
> > this in 1.1.1 if possible, but it is no show-stopper. It's ugly though.
> >
> > The problem is that the diff editor is designed to provide file
> > changes/additions in a callback and property changes in another
> > callback.
> > So, when a file is merged, the old properties are still in effect.
> > What is
> > necessary to do is to have the file retranslated (keywords expanded
> > and so
> > on) when properties are merged. The problem is that I find no way
> > outside
> > of libsvn_wc to do this. I tried svn_wc_merge with identical left and
> > right files, but that function was too smart. I.e. it didn't expand if
> > the
> > file wasn't changed. Has anyone got an idea how to solve this? For
> > 1.2, we
> > can have a public function for this. Maybe we should just punt and
> > document this as a known pbolem?
>
> Peter:  I fear that this is just a design flaw in the diff/merge
> callback system.  I don't know what to do other than design a new set
> of callbacks make the diff editor use them;  it would have to be a new
> API added in 1.2.  I can't see a 1.1.X solution.  :-(
>
Yes. This is my conclusion. That's why I moved the issue out of the 1.1.x
milestone. I'm thinking of a new svn_wc_dif_callbacks_t that combine
content and prop changes for file adds/changes into one function call.

> I agree that we should somehow announce this bug:  it's a pretty big
> deal that 'svn merge' cannot create symlinks, expand keywords, or
> translate EOLs.
>
It is ugly, but for the symlink case, you can recreate the link by hand,
so there is a workaround. Hmmm, where do we announce known bugs so people
see them easily?

Thanks,
//Peter

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Issue #2064

Posted by Ben Collins-Sussman <su...@collab.net>.
On Oct 14, 2004, at 4:58 PM, Peter N. Lundblad wrote:

> Hi, folks,
>
> I'm trying to solve issue #2064, which is about merge failing to create
> symlinks (and expand keywords for that matter). It would be nice to 
> have
> this in 1.1.1 if possible, but it is no show-stopper. It's ugly though.
>
> The problem is that the diff editor is designed to provide file
> changes/additions in a callback and property changes in another 
> callback.
> So, when a file is merged, the old properties are still in effect. 
> What is
> necessary to do is to have the file retranslated (keywords expanded 
> and so
> on) when properties are merged. The problem is that I find no way 
> outside
> of libsvn_wc to do this. I tried svn_wc_merge with identical left and
> right files, but that function was too smart. I.e. it didn't expand if 
> the
> file wasn't changed. Has anyone got an idea how to solve this? For 
> 1.2, we
> can have a public function for this. Maybe we should just punt and
> document this as a known pbolem?

Peter:  I fear that this is just a design flaw in the diff/merge 
callback system.  I don't know what to do other than design a new set 
of callbacks make the diff editor use them;  it would have to be a new 
API added in 1.2.  I can't see a 1.1.X solution.  :-(

I agree that we should somehow announce this bug:  it's a pretty big 
deal that 'svn merge' cannot create symlinks, expand keywords, or 
translate EOLs.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org