On Tue, Jun 26, 2012 at 01:58:56PM +0000, Mark Bertenshaw wrote:
> Hi -
> I have just cleared up a build issue which resulted from upgrading from Subversion 1.6.5 and 1.7.5. There is a point in the process where we add any newly created component logs with:
> SVN ADD -q $APPROOT/LOGS/*
> In both versions of Subversion, this raises an error saying that the log file is already under version control. That's fine - the NANT script doesn't care about that. However, it seems that whilst 1.6.5 simply raised a warning for this process, 1.7.5 actually sets a return code of 1. NANT interprets this as an error, and the build process fails.
> Was this change by design? I would prefer not to have to ignore errors in NANT, because it is feasible that other errors could occur and we would be none the wiser. On the other hand, I can't find an option for SVN ADD which says "ignore versioned files". I could write a script filtering by SVN STATUS, but this would be inelegant. At the moment, I am just ignoring errors for the NANT entry that calls SVN ADD.
The exit code was deliberately changed for 1.7 so that scripts can detect
whether they're trying to add files that don't exist or are already
under version control.
In some scripting situations this is a good thing. In your situation it's
probably a change for the worse... cannot make everyone happy :(
There was also some inconsistency in exit codes that svn subcommands
returned in cases such as this, and with the new behaviour it is
at least consistent across all subcommands.
Received on 2012-06-26 16:44:42 CEST