On Apr 8, 2009, at 9:59 AM, Mark Phippard wrote:
> On Wed, Apr 8, 2009 at 10:56 AM, Hyrum K. Wright
> <hyrum_wright_at_mail.utexas.edu> wrote:
>> On Apr 8, 2009, at 9:50 AM, Mark Phippard wrote:
>>> On Wed, Apr 8, 2009 at 10:47 AM, Hyrum K. Wright
>>> <hyrum_wright_at_mail.utexas.edu> wrote:
>>>> As many know, the upgrade process to move existing working copies
>>>> the 1.7 format will be manual. On *any* action, the user will be
>>>> prompted to run 'svn cleanup' to upgrade the format. Trunk
>>>> has preliminary support for this, and we're writing a number of
>>>> in upgrade_tests.py to check different upgrade scenarios.
>>>> The question about what to do with stale logs has been encountered.
>>>> It turns out that converting existing logs into wc-ng-style
>>>> actions is
>>>> a Hard thing, since the log files do not contain any semantic
>>>> information about the actions they perform. Instead of saying
>>>> "install property X for node Y", the log simply says "move file A
>>>> location B", which could mean any number of things. Tracking down
>>>> each log action and giving it sufficient semantic meaning could
>>>> take a
>>>> *significant* amount of resources.
>>>> Because of this difficulty, and the fact that the vast majority of
>>>> people upgrading their working copies are unlikely to have stale
>>>> I'd like to punt on running these logs as part of the upgrade
>>>> process. People would need to run 'svn cleanup' with their old
>>>> clients, prior to running 'svn cleanup' with the new client to
>>>> their working copy.
>>> Can a WC-NG client at least detect this and issue an error?
>>> telling user they have stale logs and need to first clean them up
>>> using an older client? Or checkout a new WC?
>> Yes, detecting the presence of old logs shouldn't be a problem.
> Well I am completely in favor of your proposal. I do not think it
> makes sense to spend a ton of time trying to tackle these fringe cases
> that are fairly low value to begin with. I'd suggest we error out
> with a message that explains they need to first run svn cleanup with
> and older client to remove the stale logs. Presumably this is better
> than upgrading the WC and ignoring these logs.
Sure. Or they can just checkout an completely new working copy with a
1.7 client. Either way, we get a working copy in a known state before
trying to do some acrobatics with it.
Received on 2009-04-08 17:12:11 CEST