rpms/subversion/devel subversion-1.6.9.tar.bz2.asc, NONE, 1.1 .cvsignore, 1.37, 1.38 psvn.el, 1.9, 1.10 sources, 1.45, 1.46 subversion.conf, 1.8, 1.9 subversion.spec, 1.161, 1.162 upstream, 1.30, 1.31 upstream-key.gpg, 1.11, 1.12 subversion-1.6.6.tar.bz2.asc, 1.1, NONE

jorton jorton at fedoraproject.org
Mon Feb 8 21:44:43 UTC 2010


Author: jorton

Update of /cvs/extras/rpms/subversion/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv891

Modified Files:
	.cvsignore psvn.el sources subversion.conf subversion.spec 
	upstream upstream-key.gpg 
Added Files:
	subversion-1.6.9.tar.bz2.asc 
Removed Files:
	subversion-1.6.6.tar.bz2.asc 
Log Message:
* Mon Feb  8 2010 Joe Orton <jorton at redhat.com> - 1.6.9-1
- update to 1.6.9 (#561810)
- fix comments in subversion.conf (#551484)
- update to psvn.el r40299



--- NEW FILE subversion-1.6.9.tar.bz2.asc ---
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEABECAAYFAktXa4MACgkQCwOubk4kUXx7ygCfZhrG1g3yIXJFXzE43cvRa/Km
4twAoIwwFkYnPLScBDJLqV892Nj+66eV
=fTxc
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (FreeBSD)

iEYEABECAAYFAktYGmcACgkQ/P1jBZgh97InrgCgrsdwyhVH3AqraTusUY7rcaZV
8hcAnA26+HHdB2hsV/SOR6vERCrE1Mdk
=72+d
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEABECAAYFAktYI6AACgkQ9o1G+2zNQDjMugCfYS/nx1JBSjek3tSz3PWl5P7M
ngQAoKa6tZEUi90RGDx6g3IRk1JuliWU
=lrHM
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEABECAAYFAktYaNsACgkQokEGqRcG/W6J0gCgwbrbld0pqpQvtHAbD+q1Z2+v
z3QAn3W/MbUedXAGTXFtT6yDEH8tnisC
=DBmT
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEABECAAYFAktYtHQACgkQNR8z5DU+JbxMiQCfdfOVHogW1sZnr0cOCrMBQwD5
FscAni6sZWK+c0eJtAUlyEHQyA4Mh7P7
=WVnC
-----END PGP SIGNATURE-----


Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/subversion/devel/.cvsignore,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -p -r1.37 -r1.38
--- .cvsignore	8 Nov 2009 17:08:47 -0000	1.37
+++ .cvsignore	8 Feb 2010 21:44:42 -0000	1.38
@@ -1,2 +1,3 @@
 subversion-1.6.5.tar.bz2
 subversion-1.6.6.tar.bz2
+subversion-1.6.9.tar.bz2


Index: psvn.el
===================================================================
RCS file: /cvs/extras/rpms/subversion/devel/psvn.el,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -p -r1.9 -r1.10
--- psvn.el	13 Oct 2008 09:49:23 -0000	1.9
+++ psvn.el	8 Feb 2010 21:44:42 -0000	1.10
@@ -1,5 +1,5 @@
 ;;; psvn.el --- Subversion interface for emacs
-;; Copyright (C) 2002-2008 by Stefan Reichoer
+;; Copyright (C) 2002-2009 by Stefan Reichoer
 
 ;; Author: Stefan Reichoer <stefan at xsteve.at>
 ;; $Id$
@@ -22,7 +22,7 @@
 ;;; Commentary
 
 ;; psvn.el is tested with GNU Emacs 21.3 on windows, debian linux,
-;; freebsd5, red hat el4, ubuntu edgy with svn 1.4.0
+;; freebsd5, red hat el4, ubuntu intrepid with svn 1.5.1
 
 ;; psvn.el needs at least svn 1.1.0
 ;; if you upgrade to a higher version, you need to do a fresh checkout
@@ -73,6 +73,7 @@
 ;; e     - svn-status-toggle-edit-cmd-flag
 ;; ?     - svn-status-toggle-hide-unknown
 ;; _     - svn-status-toggle-hide-unmodified
+;; z     - svn-status-toggle-hide-externals
 ;; m     - svn-status-set-user-mark
 ;; u     - svn-status-unset-user-mark
 ;; $     - svn-status-toggle-elide
@@ -103,6 +104,7 @@
 ;; P i   - svn-status-property-ignore-file
 ;; P I   - svn-status-property-ignore-file-extension
 ;; P C-i - svn-status-property-edit-svn-ignore
+;; P X e - svn-status-property-edit-svn-externals
 ;; P k   - svn-status-property-set-keyword-list
 ;; P K i - svn-status-property-set-keyword-id
 ;; P K d - svn-status-property-set-keyword-date
@@ -245,6 +247,7 @@
 (eval-when-compile (require 'dired))
 (eval-when-compile (require 'ediff-util))
 (eval-when-compile (require 'ediff-wind))
+(eval-when-compile (require 'vc-hooks))
 (eval-when-compile (require 'elp))
 (eval-when-compile (require 'pp))
 
@@ -302,6 +305,11 @@ This can be toggled with \\[svn-status-t
 This can be toggled with \\[svn-status-toggle-hide-unmodified]."
   :type 'boolean
   :group 'psvn)
+(defcustom svn-status-hide-externals nil
+  "*Hide external files in `svn-status-buffer-name' buffer.
+This can be toggled with \\[svn-status-toggle-hide-externals]."
+  :type 'boolean
+  :group 'psvn)
 (defcustom svn-status-sort-status-buffer t
   "*Whether to sort the `svn-status-buffer-name' buffer.
 
@@ -414,6 +422,12 @@ Any non-nil value overrides that variabl
 ;; (put 'svn-browse-url-function 'risky-local-variable t)
 ;; already implied by "-function" suffix
 
+(defcustom svn-log-edit-header
+  "## Lines starting with '## ' will be removed from the log message.\n"
+  "*Header content of the *svn-log* buffer"
+  :type 'string
+  :group 'psvn)
+
 (defcustom svn-status-window-alist
   '((diff "*svn-diff*") (log "*svn-log*") (info t) (blame t) (proplist t) (update t))
   "An alist to specify which windows should be used for svn command outputs.
@@ -562,7 +576,7 @@ These link handlers must be registered v
 ;; (put 'svn-log-edit-done-hook 'risky-local-variable t)
 ;; already implied by "-hook" suffix
 
-(defvar svn-post-process-svn-output-hook nil "Hook that can be used to preprocess the output from svn.
+(defvar svn-post-process-svn-output-hook 'svn-fixup-tramp-output-maybe "Hook that can be used to preprocess the output from svn.
 The function `svn-status-remove-control-M' can be useful for that hook")
 
 (when (eq system-type 'windows-nt)
@@ -936,7 +950,7 @@ If POS is nil, use current buffer locati
 (defun svn-substring-no-properties (string &optional from to)
   (if (fboundp 'substring-no-properties)
       (substring-no-properties string from to)
-    (substring string from to)))
+    (substring string (or from 0) to)))
 
 ; xemacs
 ;; Evaluate the defsubst at compile time, so that the byte compiler
@@ -948,6 +962,14 @@ If POS is nil, use current buffer locati
     (defsubst svn-match-string-no-properties (match)
       (buffer-substring-no-properties (match-beginning match) (match-end match)))))
 
+; XEmacs doesn't have a function `help-buffer'
+(eval-and-compile
+  (if (fboundp 'help-buffer)
+      (defalias 'svn-help-buffer 'help-buffer) ; FSF Emacs
+    (defun svn-help-buffer ()
+      (buffer-name (get-buffer-create (help-buffer-name "SVN")))))) ; XEmacs
+
+
 ;; XEmacs 21.4.17 does not have an `alist' widget.  Define a replacement.
 ;; To find out whether the `alist' widget exists, we cannot check just
 ;; (get 'alist 'widget-type), because GNU Emacs 21.4 defines it in
@@ -1010,7 +1032,8 @@ To bind this to a different key, customi
   (define-key svn-global-keymap (kbd "f r") 'svn-file-revert)
   (define-key svn-global-keymap (kbd "c") 'svn-status-commit)
   (define-key svn-global-keymap (kbd "S") 'svn-status-switch-to-status-buffer)
-  (define-key svn-global-keymap (kbd "o") 'svn-status-pop-to-status-buffer))
+  (define-key svn-global-keymap (kbd "o") 'svn-status-pop-to-status-buffer)
+  (define-key svn-global-keymap (kbd "C-k") 'svn-process-kill))
 
 (defvar svn-status-diff-mode-map ()
   "Keymap used in `svn-status-diff-mode' for additional commands that are not defined in diff-mode.")
@@ -1161,13 +1184,14 @@ If there is no .svn directory, examine i
                             (if arg "-u" "")))))
     (save-excursion
       (set-buffer status-buf)
+      (buffer-disable-undo)
       (setq default-directory dir)
       (set-buffer proc-buf)
       (setq default-directory dir
             svn-status-remote (when arg t))
       (set-buffer cur-buf)
       (if want-edit
-          (let (svn-status-edit-svn-command t)
+          (let ((svn-status-edit-svn-command t))
             (svn-run t t 'status "status" svn-status-default-status-arguments status-option))
         (svn-run t t 'status "status" svn-status-default-status-arguments status-option)))))
 
@@ -1196,6 +1220,19 @@ If there is no .svn directory, examine i
 (defun svn-had-user-input-since-asynch-run ()
   (not (equal (recent-keys) svn-pre-run-asynch-recent-keys)))
 
+(defun svn-expand-filename-for-remote-access (file-name)
+  "Convert the given local part of a filename to a full file name to allow accessing remote files"
+  ;; when running svn on a remote host: expand local file names to get full names to access the file on the remote host via emacs
+  (if (and (fboundp 'file-remote-p) (file-remote-p default-directory))
+      (concat (file-remote-p default-directory) file-name)
+    file-name))
+
+(defun svn-local-filename-for-remote-access (file-name)
+  "Convert a full file name to a local file name that can be used for a local svn invocation."
+  (if (and (fboundp 'file-remote-p) (file-remote-p file-name))
+      (tramp-file-name-localname (tramp-dissect-file-name file-name))
+    file-name))
+
 (defun svn-process-environment ()
   "Construct the environment for the svn process.
 It is a combination of `svn-status-svn-environment-var-list' and
@@ -1272,7 +1309,7 @@ The hook svn-pre-run-hook allows to moni
             (setq svn-status-last-commit-author nil)
             (setq svn-status-mode-line-process-status (format " running %s" cmdtype))
             (svn-status-update-mode-line)
-            (sit-for 0.1)
+            (save-excursion (sit-for 0.1))
             (ring-insert svn-last-cmd-ring (list (current-time-string) arglist default-directory))
             (if run-asynchron
                 (progn
@@ -1320,8 +1357,8 @@ The hook svn-pre-run-hook allows to moni
           (replace-match "/")))))
 
 (defun svn-process-sentinel (process event)
+  "Called after a svn process has finished."
   ;;(princ (format "Process: %s had the event `%s'" process event)))
-  ;;(save-excursion
   (let ((act-buf (current-buffer)))
     (when svn-pre-run-mode-line-process
       (with-current-buffer svn-status-pre-run-svn-buffer
@@ -1452,17 +1489,30 @@ The hook svn-pre-run-hook allows to moni
            (while (accept-process-output process 0 100))
            ;; find last error message and show it.
            (goto-char (point-max))
-           (if (re-search-backward "^svn: \\(.*\\)" nil t)
-               (svn-process-handle-error (match-string 1))
+           (if (re-search-backward "^svn: " nil t)
+               (let ((error-strings)
+                     (beginning-of-buffer))
+                 (while (and (looking-at "^svn: ") (not beginning-of-buffer))
+                   (setq error-strings (append error-strings (list (buffer-substring-no-properties (+ 5 (svn-point-at-bol)) (svn-point-at-eol)))))
+                   (setq beginning-of-buffer (bobp))
+                   (forward-line -1))
+                 (svn-process-handle-error (mapconcat 'identity (reverse error-strings) "\n")))
              (message "svn failed: %s" event)))
           (t
            (message "svn process had unknown event: %s" event))
           (svn-status-show-process-output nil t))))
 
 (defvar svn-process-handle-error-msg nil)
+(defvar svn-handle-error-function nil
+  "A function that will be called with an error string received from the svn client.
+When this function resets `svn-process-handle-error-msg' to nil, the default error handling
+(just show the error message) is not executed.")
 (defun svn-process-handle-error (error-msg)
   (let ((svn-process-handle-error-msg error-msg))
-    (electric-helpify 'svn-process-help-with-error-msg)))
+    (when (functionp svn-handle-error-function)
+      (funcall svn-handle-error-function error-msg))
+    (when svn-process-handle-error-msg
+      (electric-helpify 'svn-process-help-with-error-msg))))
 
 (defun svn-process-help-with-error-msg ()
   (interactive)
@@ -1471,9 +1521,9 @@ The hook svn-pre-run-hook allows to moni
                                   "Please unmark all files and position point at the directory you would like to remove.\nThen run commit again."))))))
     (if help-msg
         (save-excursion
-          (with-output-to-temp-buffer (help-buffer)
+          (with-output-to-temp-buffer (svn-help-buffer)
             (princ (format "svn failed: %s\n\n%s" svn-process-handle-error-msg help-msg))))
-      (message "svn failed: %s" svn-process-handle-error-msg))))
+      (message "svn failed:\n%s" svn-process-handle-error-msg))))
 
 
 (defun svn-process-filter (process str)
@@ -1485,17 +1535,17 @@ The hook svn-pre-run-hook allows to moni
     (insert str)
     (save-excursion
       (goto-char (svn-point-at-bol))
-      (when (looking-at "Password for '\\(.+\\)': ")
+      (when (looking-at "Password for '\\(.*\\)': ")
         ;(svn-status-show-process-buffer)
         (let ((passwd (read-passwd
                        (format "Enter svn password for %s: " (match-string 1)))))
           (svn-process-send-string-and-newline passwd t)))
       (when (looking-at "Username: ")
-        (let ((user-name (read-string "Username for svn operation: ")))
+        (let ((user-name (with-local-quit (read-string "Username for svn operation: "))))
           (svn-process-send-string-and-newline user-name)))
       (when (looking-at "(R)eject, accept (t)emporarily or accept (p)ermanently")
         (svn-status-show-process-buffer)
-        (let ((answer (read-string "(R)eject, accept (t)emporarily or accept (p)ermanently? ")))
+        (let ((answer (with-local-quit (read-string "(R)eject, accept (t)emporarily or accept (p)ermanently? "))))
           (svn-process-send-string (substring answer 0 1)))))))
 
 (defun svn-revert-some-buffers (&optional tree)
@@ -1696,10 +1746,10 @@ The results are used to build the `svn-s
                 svn-property-mark (elt svn-marks 1)     ; 2nd column - M,C (properties)
                 svn-wc-locked-mark (elt svn-marks 2)    ; 3rd column - L or blank
                 svn-with-history-mark (elt svn-marks 3) ; 4th column - + or blank
-                svn-switched-mark (elt svn-marks 4)     ; 5th column - S or blank
+                svn-switched-mark (elt svn-marks 4)     ; 5th column - S,X or blank
                 svn-repo-locked-mark (elt svn-marks 5)) ; 6th column - K,O,T,B or blank
           (when svn-status-remote
-              (setq svn-update-mark (elt svn-marks 7))) ; 8th column - * or blank
+            (setq svn-update-mark (elt svn-marks 7)))   ; 8th column - * or blank
           (when (eq svn-property-mark ?\ )     (setq svn-property-mark nil))
           (when (eq svn-wc-locked-mark ?\ )    (setq svn-wc-locked-mark nil))
           (when (eq svn-with-history-mark ?\ ) (setq svn-with-history-mark nil))
@@ -1783,7 +1833,7 @@ The results are used to build the `svn-s
         (setq svn-status-info (sort svn-status-info 'svn-status-sort-predicate))))))
 
 ;;(string-lessp "." "%") => nil
-;(svn-status-sort-predicate '(t t t ".") '(t t t "%")) => t
+;;(svn-status-sort-predicate '(t t t ".") '(t t t "%")) => t
 (defun svn-status-sort-predicate (a b)
   "Return t if A should appear before B in the `svn-status-buffer-name' buffer.
 A and B must be line-info's."
@@ -1809,6 +1859,21 @@ A and B must be line-info's."
         (while (re-search-forward "\r$" (point-max) t)
           (replace-match "" nil nil))))))
 
+(defun svn-fixup-tramp-exit ()
+  "Helper function to handle tramp connections stopping with an exit output."
+  (goto-char (point-max))
+  (when (eq (svn-point-at-bol) (svn-point-at-eol))
+    (forward-line -1))
+  (beginning-of-line)
+  (when (looking-at "exit")
+    (delete-region (point) (svn-point-at-eol))))
+
+(defun svn-fixup-tramp-output-maybe ()
+  "Fixup leftover output when running via tramp"
+  (when (fboundp 'file-remote-p)
+    (when (file-remote-p default-directory)
+      (svn-fixup-tramp-exit))))
+
 (condition-case nil
     ;;(easy-menu-add-item nil '("tools") ["SVN Status" svn-status t] "PCL-CVS")
     (easy-menu-add-item nil '("tools") ["SVN Status" svn-status t])
@@ -1877,10 +1942,10 @@ A and B must be line-info's."
   ;; XEmacs allows simultaneous connections to multiple devices with
   ;; different keyboards.
   (define-key svn-status-mode-map
-              (if (member (kbd "DEL") '([(delete)] [delete]))
-                  [(backspace)]         ; XEmacs
-                (kbd "DEL"))            ; GNU Emacs
-              'svn-status-unset-user-mark-backwards)
+    (if (member (kbd "DEL") '([(delete)] [delete]))
+        [(backspace)]         ; XEmacs
+      (kbd "DEL"))            ; GNU Emacs
+    'svn-status-unset-user-mark-backwards)
   (define-key svn-status-mode-map (kbd "$") 'svn-status-toggle-elide)
   (define-key svn-status-mode-map (kbd "w") 'svn-status-copy-current-line-info)
   (define-key svn-status-mode-map (kbd ".") 'svn-status-goto-root-or-return)
@@ -1888,6 +1953,7 @@ A and B must be line-info's."
   (define-key svn-status-mode-map (kbd "V") 'svn-status-svnversion)
   (define-key svn-status-mode-map (kbd "?") 'svn-status-toggle-hide-unknown)
   (define-key svn-status-mode-map (kbd "_") 'svn-status-toggle-hide-unmodified)
+  (define-key svn-status-mode-map (kbd "z") 'svn-status-toggle-hide-externals)
   (define-key svn-status-mode-map (kbd "a") 'svn-status-add-file)
   (define-key svn-status-mode-map (kbd "A") 'svn-status-add-file-recursively)
   (define-key svn-status-mode-map (kbd "+") 'svn-status-make-directory)
@@ -1954,6 +2020,7 @@ A and B must be line-info's."
   ;; reducing clutter in `where-is'.
   (define-key svn-status-mode-property-map [(control ?i)] 'svn-status-property-edit-svn-ignore)
   (define-key svn-status-mode-property-map (kbd "TAB") 'svn-status-property-edit-svn-ignore)
+  (define-key svn-status-mode-property-map (kbd "Xe") 'svn-status-property-edit-svn-externals)
   (define-key svn-status-mode-property-map (kbd "k") 'svn-status-property-set-keyword-list)
   (define-key svn-status-mode-property-map (kbd "Ki") 'svn-status-property-set-keyword-id)
   (define-key svn-status-mode-property-map (kbd "Kd") 'svn-status-property-set-keyword-date)
@@ -2045,6 +2112,8 @@ A and B must be line-info's."
      ["svn:ignore File Extension..." svn-status-property-ignore-file-extension t]
      ["Edit svn:ignore Property" svn-status-property-edit-svn-ignore t]
      "---"
+     ["Edit svn:externals Property" svn-status-property-edit-svn-externals t]
+     "---"
      ["Edit svn:keywords List" svn-status-property-set-keyword-list t]
      ["Add/Remove Id to/from svn:keywords" svn-status-property-set-keyword-id t]
      ["Add/Remove Date to/from svn:keywords" svn-status-property-set-keyword-date t]
@@ -2100,6 +2169,8 @@ A and B must be line-info's."
      :style toggle :selected svn-status-hide-unknown]
     ["Hide Unmodified" svn-status-toggle-hide-unmodified
      :style toggle :selected svn-status-hide-unmodified]
+    ["Hide Externals" svn-status-toggle-hide-externals
+     :style toggle :selected svn-status-hide-externals]
     ["Show Client versions" svn-status-version t]
     ["Prepare bug report" svn-prepare-bug-report t]
     ))
@@ -2145,7 +2216,7 @@ PREFIX is passed to `popup-menu'."
         (progn
           (setq o (make-overlay begin end))
           (overlay-put o 'face face)
-          (sit-for 0)
+          (save-excursion (sit-for 0))
           (popup-menu menu prefix))
       (delete-overlay o))))
 
@@ -2332,7 +2403,7 @@ history, when it will be \"+\"."
 (defun svn-status-line-info->switched (line-info)
   "Return whether LINE-INFO is switched relative to its parent.
 This is column five of the output from `svn status'.
-The result will be nil or \"S\"."
+The result will be \"S\", \"X\" or nil."
   (nth 10 line-info))
 (defun svn-status-line-info->repo-locked (line-info)
   "Return whether LINE-INFO contains some locking information.
@@ -2349,6 +2420,7 @@ This list holds currently only one eleme
   "Return whether the line is visible or not"
   (or (not (or (svn-status-line-info->hide-because-unknown line-info)
                (svn-status-line-info->hide-because-unmodified line-info)
+               (svn-status-line-info->hide-because-externals line-info)
                (svn-status-line-info->hide-because-custom-hide-function line-info)
                (svn-status-line-info->hide-because-user-elide line-info)))
       (svn-status-line-info->update-available line-info) ;; show the line, if an update is available
@@ -2359,6 +2431,10 @@ This list holds currently only one eleme
   (and svn-status-hide-unknown
        (eq (svn-status-line-info->filemark line-info) ??)))
 
+(defun svn-status-line-info->hide-because-externals (line-info)
+  (and svn-status-hide-externals
+       (eq (svn-status-line-info->filemark line-info) ?X)))
+
 (defun svn-status-line-info->hide-because-custom-hide-function (line-info)
   (and svn-status-custom-hide-function
        (apply svn-status-custom-hide-function (list line-info))))
@@ -2491,26 +2567,27 @@ When called with a prefix argument, togg
         (len-test)
         (elided-list)
         (elide-mark))
-    (while st-info
-      (setq fname (svn-status-line-info->filename (car st-info)))
-      (setq len-fname (length fname))
-      (setq elided-list svn-status-elided-list)
-      (setq elide-mark nil)
-      (while elided-list
-        (setq test (car elided-list))
-        (when (string= test ".")
-          (setq test ""))
-        (setq len-test (length test))
-        (when (and (>= len-fname len-test)
-                   (string= (substring fname 0 len-test) test))
-          (setq elide-mark t)
-          (when (or (string= fname ".")
-                    (and (= len-fname len-test) (svn-status-line-info->directory-p (car st-info))))
-            (setq elide-mark 'directory)))
-        (setq elided-list (cdr elided-list)))
-      ;;(message "fname: %s elide-mark: %S" fname elide-mark)
-      (setcar (nthcdr 1 (svn-status-line-info->ui-status (car st-info))) elide-mark)
-      (setq st-info (cdr st-info))))
+    (when svn-status-elided-list
+      (while st-info
+        (setq fname (svn-status-line-info->filename (car st-info)))
+        (setq len-fname (length fname))
+        (setq elided-list svn-status-elided-list)
+        (setq elide-mark nil)
+        (while elided-list
+          (setq test (car elided-list))
+          (when (string= test ".")
+            (setq test ""))
+          (setq len-test (length test))
+          (when (and (>= len-fname len-test)
+                     (string= (substring fname 0 len-test) test))
+            (setq elide-mark t)
+            (when (or (string= fname ".")
+                      (and (= len-fname len-test) (svn-status-line-info->directory-p (car st-info))))
+              (setq elide-mark 'directory)))
+          (setq elided-list (cdr elided-list)))
+        ;;(message "fname: %s elide-mark: %S" fname elide-mark)
+        (setcar (nthcdr 1 (svn-status-line-info->ui-status (car st-info))) elide-mark)
+        (setq st-info (cdr st-info)))))
   (svn-status-update-buffer))
 
 (defun svn-status-update-with-command-list (cmd-list)
@@ -2794,7 +2871,8 @@ Symbolic links to directories count as d
         (filename  ;; <indentation>file or /path/to/file
                      (concat
                       (if (or svn-status-display-full-path
-                              svn-status-hide-unmodified)
+                              svn-status-hide-unmodified
+                              svn-status-hide-externals)
                           (svn-add-face
                            (let ((dir-name (file-name-as-directory
                                             (svn-status-line-info->directory-containing-line-info
@@ -2859,7 +2937,7 @@ Symbolic links to directories count as d
                                                           ((eq flag ?B) " [ REPO-LOCK-BROKEN ]")
                                                           (t " [ REPO-LOCK-UNKNOWN ]")))
                                                   'svn-status-locked-face)
-                     (svn-status-maybe-add-string (svn-status-line-info->switched line-info)
+                     (svn-status-maybe-add-string (eq (svn-status-line-info->switched line-info) ?S)
                                                   " (switched)" 'svn-status-switched-face)
                      elide-hint)
              'svn-status-marked-face)
@@ -2891,6 +2969,7 @@ Additionally clear the psvn-extra-info f
         (overlay)
         (unmodified-count 0)    ;how many unmodified files are hidden
         (unknown-count 0)       ;how many unknown files are hidden
+        (externals-count 0)     ;how many svn:externals files are hidden
         (custom-hide-count 0)   ;how many files are hidden via svn-status-custom-hide-function
         (marked-count 0)        ;how many files are elided
         (user-elide-count 0)
@@ -2920,12 +2999,15 @@ Additionally clear the psvn-extra-info f
              (setq unknown-count (1+ unknown-count)))
             ((svn-status-line-info->hide-because-unmodified (car st-info))
              (setq unmodified-count (1+ unmodified-count)))
+            ((svn-status-line-info->hide-because-externals (car st-info))
+             (setq externals-count (1+ externals-count)))
             (t
              (svn-insert-line-in-status-buffer (car st-info))))
       (when (svn-status-line-info->has-usermark (car st-info))
         (setq marked-count (+ marked-count 1)))
       (setq overlay (make-overlay start-pos (point)))
       (overlay-put overlay 'svn-info (car st-info))
+      (overlay-put overlay 'evaporate t)
       (setq st-info (cdr st-info)))
     ;; Insert status information at the buffer beginning
     (goto-char (point-min))
@@ -2949,6 +3031,10 @@ Additionally clear the psvn-extra-info f
       (insert
        (format "%d Unmodified file(s) are hidden - press `_' to toggle hiding\n"
                unmodified-count)))
+    (when svn-status-hide-externals
+      (insert
+       (format "%d Externals file(s) are hidden - press `z' to toggle hiding\n"
+               externals-count)))
     (when (> custom-hide-count 0)
       (insert
        (format "%d file(s) are hidden via the svn-status-custom-hide-function\n"
@@ -3188,7 +3274,7 @@ When called from a file buffer provide a
   (cond ((eq major-mode 'svn-status-mode)
          (svn-status-get-line-information))
         (t
-         ;; a fake strukture that contains the buffername for the current buffer
+         ;; a fake structure that contains the buffername for the current buffer
          (svn-status-make-line-info (buffer-file-name (current-buffer))))))
 
 (defun svn-status-select-line ()
@@ -3197,12 +3283,12 @@ When called from a file buffer provide a
   (interactive)
   (let ((info (svn-status-get-line-information)))
     (if info
-        (message "%S hide-because-unknown: %S hide-because-unmodified: %S" info
+        (message "%S hide-because-unknown: %S hide-because-unmodified: %S hide-because-externals: %S" info
                  (svn-status-line-info->hide-because-unknown info)
-                 (svn-status-line-info->hide-because-unmodified info))
+                 (svn-status-line-info->hide-because-unmodified info)
+                 (svn-status-line-info->hide-because-externals info))
       (message "No file on this line"))))
-
-(defun svn-status-ensure-cursor-on-file ()
+ (defun svn-status-ensure-cursor-on-file ()
     "Raise an error unless point is on a valid file."
   (unless (svn-status-get-line-information)
     (error "No file on the current line")))
@@ -3390,13 +3476,15 @@ This means we mark
 * all modified files
 * all files scheduled for addition
 * all files scheduled for deletion
+* all files with modified properties
 
 The last two categories include all copied and moved files.
 If called with a prefix ARG, unmark all such files."
   (interactive "P")
   (svn-status-mark-added arg)
   (svn-status-mark-modified arg)
-  (svn-status-mark-deleted arg))
+  (svn-status-mark-deleted arg)
+  (svn-status-mark-modified-properties arg))
 
 (defun svn-status-unset-all-usermarks ()
   (interactive)
@@ -3455,6 +3543,11 @@ If the function is called with a prefix 
   (setq svn-status-hide-unmodified (not svn-status-hide-unmodified))
   (svn-status-update-buffer))
 
+(defun svn-status-toggle-hide-externals ()
+  (interactive)
+  (setq svn-status-hide-externals (not svn-status-hide-externals))
+  (svn-status-update-buffer))
+
 (defun svn-status-get-file-name-buffer-position (name)
   "Find the buffer position for a file.
 If the file is not found, return nil."
@@ -3551,6 +3644,10 @@ if no files have been marked."
 
 
 (defun svn-status-create-arg-file (file-name prefix file-info-list postfix)
+  "Create an svn client argument file"
+  ;; create the arg file on the remote host when we will run svn on this host!
+  (setq file-name (svn-expand-filename-for-remote-access file-name))
+  ;; (message "svn-status-create-arg-file %s: %s" default-directory file-name)
   (with-temp-file file-name
     (insert prefix)
     (let ((st-info file-info-list))
@@ -4099,22 +4196,29 @@ When called with a prefix argument, ask 
 When called with a negative prefix argument, only update the selected files."
   (interactive "P")
   (let* ((selective-update (or (and (numberp arg) (< arg 0)) (eq arg '-)))
+         (update-extra-arg)
          (rev (when arg (svn-status-read-revision-string
                          (if selective-update
                              (format "Selected entries: Run svn update -r ")
                            (format "Directory: %s: Run svn update -r " default-directory))
                          (if selective-update "HEAD" nil)))))
+    (unless svn-client-version
+      (svn-status-version))
+    (if (and (<= (car svn-client-version) 1) (< (cadr svn-client-version) 5))
+        (setq update-extra-arg (list "--non-interactive")) ;; svn version < 1.5
+      (setq update-extra-arg (list "--accept" "postpone"))) ;; svn version >= 1.5
     (if selective-update
         (progn
           (message "Running svn-update for %s" (svn-status-marked-file-names))
           (svn-run t t 'update "update"
                    (when rev (list "-r" rev))
-                   (list "--non-interactive")
+                   update-extra-arg
                    (svn-status-marked-file-names)))
       (message "Running svn-update for %s" default-directory)
       (svn-run t t 'update "update"
                (when rev (list "-r" rev))
-               (list "--non-interactive") (expand-file-name default-directory)))))
+               update-extra-arg
+               (svn-local-filename-for-remote-access (expand-file-name default-directory))))))
 
 (defun svn-status-commit ()
   "Commit selected files.
@@ -4332,7 +4436,11 @@ static char * data[] = {
 
 (defsubst svn-status-in-vc-mode? ()
   "Is vc-svn active?"
-  (and vc-mode (string-match "^ SVN" (svn-substring-no-properties vc-mode))))
+  (cond
+   ((fboundp 'vc-backend)
+    (eq 'SVN (vc-backend buffer-file-name)))
+   ((and (boundp 'vc-mode) vc-mode)
+    (string-match "^ SVN" (svn-substring-no-properties vc-mode)))))
 
 (when svn-status-fancy-file-state-in-modeline
   (defadvice vc-find-file-hook (after svn-status-vc-svn-find-file-hook activate)
@@ -4831,6 +4939,17 @@ When called with a prefix argument, it i
     (message "Edit svn:ignore on %s" dir)))
 
 
+(defun svn-status-property-edit-svn-externals ()
+  (interactive)
+  (let* ((line-info (svn-status-get-line-information))
+         (dir (if (svn-status-line-info->directory-p line-info)
+                  (svn-status-line-info->filename line-info)
+                (svn-status-get-directory line-info))))
+    (svn-status-property-edit
+     (list (svn-status-find-info-for-file-name dir)) "svn:externals")
+    (message "Edit svn:externals on %s" dir)))
+
+
 (defun svn-status-property-set-keyword-list ()
   "Edit the svn:keywords property on the marked files."
   (interactive)
@@ -4943,22 +5062,22 @@ Commands:
     (set-buffer (get-buffer "*svn-property-edit*"))
     (when (fboundp 'set-buffer-file-coding-system)
       (set-buffer-file-coding-system svn-status-svn-file-coding-system nil))
-    (setq svn-status-temp-file-to-remove
-          (concat svn-status-temp-dir "svn-prop-edit.txt" svn-temp-suffix))
-    (write-region (point-min) (point-max) svn-status-temp-file-to-remove nil 1))
-  (when svn-status-propedit-file-list ; there are files to change properties
-    (svn-status-create-arg-file svn-status-temp-arg-file ""
-                                svn-status-propedit-file-list "")
-    (setq svn-status-propedit-file-list nil)
-    (svn-run async t 'propset "propset"
-             svn-status-propedit-property-name
-             "--targets" svn-status-temp-arg-file
-             (when (eq svn-status-svn-file-coding-system 'utf-8)
-               '("--encoding" "UTF-8"))
-             "-F" (concat svn-status-temp-dir "svn-prop-edit.txt" svn-temp-suffix))
-    (unless async (svn-status-remove-temp-file-maybe)))
-  (when svn-status-pre-propedit-window-configuration
-    (set-window-configuration svn-status-pre-propedit-window-configuration)))
+    (let ((svn-propedit-file-name (concat svn-status-temp-dir "svn-prop-edit.txt" svn-temp-suffix)))
+      (setq svn-status-temp-file-to-remove (svn-expand-filename-for-remote-access svn-propedit-file-name))
+      (write-region (point-min) (point-max) svn-status-temp-file-to-remove nil 1)
+      (when svn-status-propedit-file-list ; there are files to change properties
+        (svn-status-create-arg-file svn-status-temp-arg-file ""
+                                    svn-status-propedit-file-list "")
+        (setq svn-status-propedit-file-list nil)
+        (svn-run async t 'propset "propset"
+                 svn-status-propedit-property-name
+                 "--targets" svn-status-temp-arg-file
+                 (when (eq svn-status-svn-file-coding-system 'utf-8)
+                   '("--encoding" "UTF-8"))
+                 "-F" svn-propedit-file-name)
+        (unless async (svn-status-remove-temp-file-maybe)))
+      (when svn-status-pre-propedit-window-configuration
+        (set-window-configuration svn-status-pre-propedit-window-configuration)))))
 
 (defun svn-prop-edit-svn-diff (arg)
   (interactive "P")
@@ -5050,41 +5169,41 @@ Commands:
   "Finish editing the log message and run svn commit."
   (interactive)
   (svn-status-save-some-buffers)
-  (save-excursion
-    (set-buffer (get-buffer svn-log-edit-buffer-name))
-    (when svn-log-edit-insert-files-to-commit
-      (svn-log-edit-remove-comment-lines))
-    (when (fboundp 'set-buffer-file-coding-system)
-      (set-buffer-file-coding-system svn-status-svn-file-coding-system nil))
-    (when (or svn-log-edit-update-log-entry svn-status-files-to-commit)
-      (setq svn-status-temp-file-to-remove
-            (concat svn-status-temp-dir "svn-log-edit.txt" svn-temp-suffix))
-      (write-region (point-min) (point-max) svn-status-temp-file-to-remove nil 1))
-    (bury-buffer))
-  (if svn-log-edit-update-log-entry
-      (when (y-or-n-p "Update the log entry? ")
-        ;;   svn propset svn:log --revprop -r11672 -F file
-        (svn-run nil t 'propset "propset" "svn:log" "--revprop"
-                     (concat "-r" svn-log-edit-update-log-entry)
-                     "-F" svn-status-temp-file-to-remove)
-        (save-excursion
-          (set-buffer svn-process-buffer-name)
-          (message "%s" (buffer-substring (point-min) (- (point-max) 1)))))
-    (when svn-status-files-to-commit ; there are files to commit
-      (setq svn-status-operated-on-dot
-            (and (= 1 (length svn-status-files-to-commit))
-                 (string= "." (svn-status-line-info->filename (car svn-status-files-to-commit)))))
-      (svn-status-create-arg-file svn-status-temp-arg-file ""
-                                  svn-status-files-to-commit "")
-      (svn-run t t 'commit "commit"
-                   (unless svn-status-recursive-commit "--non-recursive")
-                   "--targets" svn-status-temp-arg-file
-                   "-F" svn-status-temp-file-to-remove
-                   (when (eq svn-status-svn-file-coding-system 'utf-8)
-                     '("--encoding" "UTF-8"))
-                   svn-status-default-commit-arguments))
-    (set-window-configuration svn-status-pre-commit-window-configuration)
-    (message "svn-log editing done")))
+  (let ((svn-logedit-file-name))
+    (save-excursion
+      (set-buffer (get-buffer svn-log-edit-buffer-name))
+      (when svn-log-edit-insert-files-to-commit
+        (svn-log-edit-remove-comment-lines))
+      (when (fboundp 'set-buffer-file-coding-system)
+        (set-buffer-file-coding-system svn-status-svn-file-coding-system nil))
+      (when (or svn-log-edit-update-log-entry svn-status-files-to-commit)
+        (setq svn-log-edit-file-name (concat svn-status-temp-dir "svn-log-edit.txt" svn-temp-suffix))
+        (setq svn-status-temp-file-to-remove (svn-expand-filename-for-remote-access svn-log-edit-file-name))
+        (write-region (point-min) (point-max) svn-status-temp-file-to-remove nil 1))
+      (bury-buffer))
+    (if svn-log-edit-update-log-entry
+        (when (y-or-n-p "Update the log entry? ")
+          ;;   svn propset svn:log --revprop -r11672 -F file
+          (svn-run nil t 'propset "propset" "svn:log" "--revprop"
+                   (concat "-r" svn-log-edit-update-log-entry)
+                   "-F" svn-log-edit-file-name)
+          (save-excursion
+            (set-buffer svn-process-buffer-name)
+            (message "%s" (buffer-substring (point-min) (- (point-max) 1)))))
+      (when svn-status-files-to-commit ; there are files to commit
+        (setq svn-status-operated-on-dot
+              (and (= 1 (length svn-status-files-to-commit))
+                   (string= "." (svn-status-line-info->filename (car svn-status-files-to-commit)))))
+        (svn-status-create-arg-file svn-status-temp-arg-file "" svn-status-files-to-commit "")
+        (svn-run t t 'commit "commit"
+                 (unless svn-status-recursive-commit "--non-recursive")
+                 "--targets" svn-status-temp-arg-file
+                 "-F" svn-log-edit-file-name
+                 (when (eq svn-status-svn-file-coding-system 'utf-8)
+                   '("--encoding" "UTF-8"))
+                 svn-status-default-commit-arguments))
+      (set-window-configuration svn-status-pre-commit-window-configuration)
+      (message "svn-log editing done"))))
 
 (defun svn-log-edit-svn-diff (arg)
   "Show the diff we are about to commit.
@@ -5136,7 +5255,7 @@ If ARG then show diff between some other
   (let ((buf-size (- (point-max) (point-min))))
     (save-excursion
       (goto-char (point-min))
-      (insert "## Lines starting with '## ' will be removed from the log message.\n")
+      (insert svn-log-edit-header)
       (insert "## File(s) to commit"
               (if svn-status-recursive-commit " recursively" "") ":\n")
       (let ((file-list svn-status-files-to-commit))
@@ -5359,7 +5478,8 @@ Commands:
   "Mark the revision at point to be used as diff against revision."
   (interactive)
   (let ((start-pos)
-        (point-at-partner-rev))
+        (point-at-partner-rev)
+        (overlay))
     (dolist (ov (overlays-in (point-min) (point-max)))
       (when (overlay-get ov 'svn-log-partner-revision)
         (setq point-at-partner-rev (and (>= (point) (overlay-start ov))
@@ -5803,23 +5923,33 @@ The optional prefix argument ARG determi
   "Show statistics for the current blame buffer."
   (interactive)
   (let ((author-map (make-hash-table :test 'equal))
+        (revision-map (make-hash-table :test 'equal))
+        (rev-info)
         (author-list)
-        (author))
+        (author)
+        (revision-list)
+        (revision))
     (save-excursion
       (goto-char (point-min))
       (while (not (eobp))
         (dolist (ov (overlays-in (svn-point-at-bol) (line-end-position)))
           (when (overlay-get ov 'svn-blame-line-info)
-            (setq author (cadr (overlay-get ov 'rev-info)))
-            (svn-puthash author
-                         (+ (gethash author author-map 0) 1)
-                         author-map)))
+            (setq rev-info (overlay-get ov 'rev-info))
+            (setq author (cadr rev-info))
+            (setq revision (string-to-number (car rev-info)))
+            (svn-puthash author (+ (gethash author author-map 0) 1) author-map)
+            (svn-puthash revision (+ (gethash revision revision-map 0) 1) revision-map)))
         (forward-line))
       (maphash '(lambda (key value) (add-to-list 'author-list (list key value))) author-map)
+      (maphash '(lambda (key value) (add-to-list 'revision-list (list key value))) revision-map)
       (pop-to-buffer (get-buffer-create (replace-regexp-in-string "svn-blame:" "svn-blame-statistics:" (buffer-name))))
       (erase-buffer)
+      (insert (propertize "Authors:\n" 'face 'font-lock-function-name-face))
       (dolist (line (sort author-list '(lambda (v1 v2) (> (cadr v1) (cadr v2)))))
         (insert (format "%s: %s line%s\n" (car line) (cadr line) (if (eq (cadr line) 1) "" "s"))))
+      (insert (propertize "\nRevisions:\n" 'face 'font-lock-function-name-face))
+      (dolist (line (sort revision-list '(lambda (v1 v2) (< (car v1) (car v2)))))
+        (insert (format "%s: %s line%s\n" (car line) (cadr line) (if (eq (cadr line) 1) "" "s"))))
       (goto-char (point-min)))))
 
 (defun svn-blame-highlight-author-field (ov)


Index: sources
===================================================================
RCS file: /cvs/extras/rpms/subversion/devel/sources,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -p -r1.45 -r1.46
--- sources	8 Nov 2009 18:06:36 -0000	1.45
+++ sources	8 Feb 2010 21:44:42 -0000	1.46
@@ -1 +1 @@
-e5109da756d74c7d98f683f004a539af  subversion-1.6.6.tar.bz2
+9c30a47b1d48664e7afef68bb4834c53  subversion-1.6.9.tar.bz2


Index: subversion.conf
===================================================================
RCS file: /cvs/extras/rpms/subversion/devel/subversion.conf,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -p -r1.8 -r1.9
--- subversion.conf	31 Mar 2009 16:15:40 -0000	1.8
+++ subversion.conf	8 Feb 2010 21:44:42 -0000	1.9
@@ -20,7 +20,7 @@ LoadModule authz_svn_module   modules/mo
 #   # cd /var/www/svn
 #   # svnadmin create stuff   
 #   # chown -R apache.apache stuff
-#   # chcon -R -t -t http_sys_content_rw_t stuff
+#   # chcon -R -t http_sys_content_t stuff
 #
 
 #<Location /repos>


Index: subversion.spec
===================================================================
RCS file: /cvs/extras/rpms/subversion/devel/subversion.spec,v
retrieving revision 1.161
retrieving revision 1.162
diff -u -p -r1.161 -r1.162
--- subversion.spec	25 Jan 2010 21:19:52 -0000	1.161
+++ subversion.spec	8 Feb 2010 21:44:43 -0000	1.162
@@ -16,8 +16,8 @@
 
 Summary: A Modern Concurrent Version Control System
 Name: subversion
-Version: 1.6.6
-Release: 5%{?dist}
+Version: 1.6.9
+Release: 1%{?dist}
 License: ASL 1.1
 Group: Development/Tools
 URL: http://subversion.tigris.org/
@@ -391,6 +391,11 @@ rm -rf ${RPM_BUILD_ROOT}
 %{_mandir}/man1/svn2cl.1*
 
 %changelog
+* Mon Feb  8 2010 Joe Orton <jorton at redhat.com> - 1.6.9-1
+- update to 1.6.9 (#561810)
+- fix comments in subversion.conf (#551484)
+- update to psvn.el r40299
+
 * Mon Jan 25 2010 Ville Skyttä <ville.skytta at iki.fi> - 1.6.6-5
 - Include svn2cl and its man page only in the -svn2cl subpackage (#558598).
 - Do not include bash completion in docs, it's installed.


Index: upstream
===================================================================
RCS file: /cvs/extras/rpms/subversion/devel/upstream,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -p -r1.30 -r1.31
--- upstream	8 Nov 2009 17:08:47 -0000	1.30
+++ upstream	8 Feb 2010 21:44:43 -0000	1.31
@@ -1 +1 @@
-subversion-1.6.6.tar.bz2
+subversion-1.6.9.tar.bz2


Index: upstream-key.gpg
===================================================================
RCS file: /cvs/extras/rpms/subversion/devel/upstream-key.gpg,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -p -r1.11 -r1.12
--- upstream-key.gpg	15 May 2009 09:05:23 -0000	1.11
+++ upstream-key.gpg	8 Feb 2010 21:44:43 -0000	1.12
@@ -1259,3 +1259,504 @@ ePMv0mMRDHwkFCGAYG3VNPTu3kxjqXenc6CArh5U
 9ccVt/By4ioL6XI/gINS5/JCAJ4ixpserlf0PeelTtVrkLpHylWyhg==
 =/QO8
 -----END PGP PUBLIC KEY BLOCK-----
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.10 (GNU/Linux)
+
+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
+=B4XR
+-----END PGP PUBLIC KEY BLOCK-----


--- subversion-1.6.6.tar.bz2.asc DELETED ---



More information about the scm-commits mailing list