[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: [PATCH] RE: Commit strips common prefix instead of current directory (Issue #3168) (2/3)

From: Bert Huijben <bert_at_qqmail.nl>
Date: Thu, 15 May 2008 03:07:32 +0200

> -----Original Message-----
> From: Karl Fogel [mailto:kfogel_at_red-bean.com]
> Sent: woensdag 14 mei 2008 22:19
> To: Bert Huijben
> Cc: Bert Huijben; 'Daniel Shahaf'; dev_at_subversion.tigris.org; 'Mark
> Phippard'
> Subject: Re: [PATCH] RE: Commit strips common prefix instead of current
> directory (Issue #3168) (2/3)
>
> "Bert Huijben" <bert_at_qqmail.nl> writes:
> > [[[
> > Move the creation of final display paths to the CLI notification
> > handler, to make sure notifications always receive a valid path in
> the
> > path field.
> >
> > [...]
>
> This patch causes virtually every command-line regression test to fail.

Okay, after talking on irc I found an essential part of patch 2 was missing
which I had in my working copy when testing. The missing part is the patch
to notify.c which restores the non-absolute behavior for the CLI.

I recreated the patch with the tweaks you applied and attached it to this
message

> Did you run 'make check' before posting? :-)

As I told on IRC, I ran an alternative test script which for most actions
immediately calls into libsvn_client and uses absolute paths in most cases.

Since then I updated my build environment to run the fsfs checks of
win-tests.py which pass on the new version. (I have a few local test
failures on onrelated parts; but those are the same with and without this
patch.. Probably generated by the static compilation patches used for
building SharpSvn).

(I will send another patch to fix a Windows Vista issue on running the tests
in a few days)

> I assume that it was not your goal to always produce absolute paths in
> svn output? If it was, we'd better discuss some more; I think in most
> circumstances that is not what users want. I'm trying to locate the
> mail where you described a proposed new behavior, actually...

No it was not. But the code making the paths non-absolute was missing ;)

> Below is the exact patch I tested with. It's the same as the patch you
> posted, just with a couple of documentation tweaks.

The new patch is your patch (from your mail) with the patch of
subversion/svn/notify.c (from my original patch) regenerated on trunk of a
few hours ago.

> [[[
> Move the creation of final display paths to the CLI notification
> handler, to make sure notifications always receive a valid path in the
> path field.
>
> Patch by: Bert Huijben <b.huijben_at_competence.biz>
>
> * subversion/include/svn_wc.h
> (svn_wc_notify_t): New field path_prefix.
>
> * subversion/libsvn_wc/util.c
> (svn_wc_create_notify, svn_wc_dup_notify): Handle new path_prefix
> field.
>
> * subversion/libsvn_client/client.h
> (svn_client__do_commit): Document the new handling of
> notify_path_prefix.
>
> * subversion/libsvn_client/commit_util.c
> (svn_client__do_commit, do_item_commit) Remove local handling of
> notify_path_prefix. Instead pass path_prefix to the notification
> handler.
>
> * subversion/svn/notify.c
> (notify): Use the new path_prefix to split the first part of the path
> if it matches the specified prefix. Don't bother testing for urls
> as the path is documented to be a local path.
> ]]]
(I think this should still apply to the new version)

To answer your other mail:
Patch 3 should be a 100% standalone patch. Patch 3 might only need some
further tweaking if the CLI behavior should change (which I don't expect).

        Bert

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org

Received on 2008-05-15 10:29:14 CEST

This is an archived mail posted to the Subversion Dev mailing list.