Subject: bug#6361: 24.0.50; Bug in vc-dir status update for SVN 1.5.x

From: Dan Nicolaescu <[email-masked]>
Date: Sat, 05 Jun 2010 23:41:00 -0400

[email-masked] writes:

>    Subversion 1.6 changed the output of "svn status -r" to include an
> extra column.  The following change (according to git):
>
> 	Author: Dan Nicolaescu <[email-masked]>
> 	Date:   Thu Dec 10 14:24:42 2009 +0000
>
> 	    (vc-svn-after-dir-status): Fix regexp.  (Bug#4741)
>
> accommodates this extra column at the expense of breaking Subversion
> 1.5; files that require update are skipped entirely by
> vc-svn-after-dir-status.  Could we please make the following tweak so
> that it also works for older versions?  (Since Subversion 1.6 is barely
> 15 months old, I assume it was not Dan's intent to drop compatibility.)

It was only intended to fix Bug#4741 with whatever version of
subversion was installed on my system at that time, I had no idea the
output has changed.

By the time emacs-24 is out, subversion 1.6 would be a bit older...

I don't have a strong opinion about this, so if you want to install
this...

>    And since this change has been around for a while, I assume this is
> also broken in 23.2 . . .
>
>    TIA,
>
> 					-- Bob Rogers
> 					   http://www.rgrjr.com/
>
> ------------------------------------------------------------------------
> diff --git a/lisp/vc-svn.el b/lisp/vc-svn.el
> index cd43d42..889a60c 100644
> --- a/lisp/vc-svn.el
> +++ b/lisp/vc-svn.el
> @@ -170,7 +170,7 @@ want to force an empty list of arguments, use t."
>                       (?? . unregistered)
>                       ;; This is what vc-svn-parse-status does.
>                       (?~ . edited)))
> -	(re (if remote "^\\(.\\)...... \\([ *]\\) +\\(?:[-0-9]+\\)?   \\(.*\\)$"
> +	(re (if remote "^\\(.\\)......? \\([ *]\\) +\\(?:[-0-9]+\\)?   \\(.*\\)$"
>  	      ;; Subexp 2 is a dummy in this case, so the numbers match.
>  	      "^\\(.\\)....\\(.\\) \\(.*\\)$"))
>         result)