CVS update by scop packages/unsupported/scop/vc, vc-arch.el ...

xemacs-cvs at xemacs.org xemacs-cvs at xemacs.org
Mon May 14 15:07:15 EDT 2007


  User: scop    
  Date: 07/05/14 21:07:15

  Modified:    packages/unsupported/scop/vc ChangeLog smerge-mode.el
                        vc-arch.el vc-hooks.el vc-rcs.el vc.el
Log:
Sync vc with upstream.

Revision  Changes    Path
1.83      +2 -2      XEmacs/packages/unsupported/scop/STATUS

Index: STATUS
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/unsupported/scop/STATUS,v
retrieving revision 1.82
retrieving revision 1.83
diff -u -p -r1.82 -r1.83
--- STATUS	2007/02/24 22:53:02	1.82
+++ STATUS	2007/05/14 19:07:09	1.83
@@ -13,11 +13,11 @@ ede: Emacs Development Environment, <htt
 - Compiles, I have no idea whether it works or not.
 
 generic-modes: generic.el and generic-x.el from GNU Emacs
-- Up to date with GNU Emacs CVS HEAD as of 2007-02-25.
+- Up to date with GNU Emacs CVS HEAD as of 2007-05-14.
 - Compiles, seems to work, auto-mode-alist and autoloads may need spanking.
 
 vc: vc*.el and a few other related files from GNU Emacs, vc-git.el from git
-- Up to date with GNU Emacs CVS HEAD, git upstream as of 2007-02-25.
+- Up to date with GNU Emacs CVS HEAD, git upstream as of 2007-05-14.
 - Approaching usable state.
 - smerge-mode.el needs work.
 - Pre-2007-02-03 versions used to cause autoload related crashing with



1.72      +4 -0      XEmacs/packages/unsupported/scop/vc/ChangeLog

Index: ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/unsupported/scop/vc/ChangeLog,v
retrieving revision 1.71
retrieving revision 1.72
diff -u -p -r1.71 -r1.72
--- ChangeLog	2007/02/24 22:53:03	1.71
+++ ChangeLog	2007/05/14 19:07:13	1.72
@@ -1,3 +1,7 @@
+2007-05-14  Ville Skyttä  <scop at xemacs.org>
+
+	* *.el: Sync with upstream.
+
 2007-02-25  Ville Skyttä  <scop at xemacs.org>
 
 	* vc-svn.el: Sync with upstream.



1.4       +6 -1      XEmacs/packages/unsupported/scop/vc/smerge-mode.el

Index: smerge-mode.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/unsupported/scop/vc/smerge-mode.el,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -p -r1.3 -r1.4
--- smerge-mode.el	2007/01/28 20:20:54	1.3
+++ smerge-mode.el	2007/05/14 19:07:13	1.4
@@ -350,7 +350,10 @@ according to `smerge-match-conflict'.")
   ;; during font-locking so inhibit-modification-hooks is non-nil, so we
   ;; can't just modify the buffer and expect font-lock to be triggered as in:
   ;; (put-text-property beg end 'smerge-force-highlighting nil)
-  (remove-text-properties beg end '(fontified nil)))
+  (let ((modified (buffer-modified-p)))
+    (remove-text-properties beg end '(fontified nil))
+    ;; XEmacs: restore-buffer-modified-p -> set-buffer-modified-p
+    (set-buffer-modified-p modified)))
 
 (defun smerge-popup-context-menu (event)
   "Pop up the Smerge mode context menu under mouse."
@@ -562,6 +565,8 @@ An error is raised if not inside a confl
 				  (1- other-start) other-start))
 	  t)
       (search-failed (error "Point not in conflict region")))))
+
+(add-to-list 'debug-ignored-errors "Point not in conflict region")
 
 (defun smerge-conflict-overlay (pos)
   "Return the conflict overlay at POS if any."



1.19      +14 -1     XEmacs/packages/unsupported/scop/vc/vc-arch.el

Index: vc-arch.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/unsupported/scop/vc/vc-arch.el,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -p -r1.18 -r1.19
--- vc-arch.el	2007/02/03 13:08:38	1.18
+++ vc-arch.el	2007/05/14 19:07:13	1.19
@@ -113,6 +113,19 @@
 
 (defconst vc-arch-tagline-re "^\\W*arch-tag:[ \t]*\\(.*[^ \t\n]\\)")
 
+(defmacro vc-with-current-file-buffer (file &rest body)
+  (declare (indent 2) (debug t))
+  `(let ((-kill-buf- nil)
+         (-file- ,file))
+     (with-current-buffer (or (find-buffer-visiting -file-)
+                              (setq -kill-buf- (generate-new-buffer " temp")))
+       ;; Avoid find-file-literally since it can do many undesirable extra
+       ;; things (among which, call us back into an infinite loop).
+       (if -kill-buf- (insert-file-contents -file-))
+       (unwind-protect
+           (progn , at body)
+         (if (buffer-live-p -kill-buf-) (kill-buffer -kill-buf-))))))
+
 (defun vc-arch-file-source-p (file)
   "Can return nil, `maybe' or a non-nil value.
 Only the value `maybe' can be trusted :-(."
@@ -126,7 +139,7 @@ Only the value `maybe' can be trusted :-
 	  (concat ".arch-ids/" (file-name-nondirectory file) ".id")
 	  (file-name-directory file)))
 	;; Check the presence of a tagline.
-	(with-current-buffer (find-file-noselect file)
+	(vc-with-current-file-buffer file
 	  (save-excursion
 	    (goto-char (point-max))
 	    (or (re-search-backward vc-arch-tagline-re (- (point) 1000) t)



1.17      +11 -2     XEmacs/packages/unsupported/scop/vc/vc-hooks.el

Index: vc-hooks.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/unsupported/scop/vc/vc-hooks.el,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -p -r1.16 -r1.17
--- vc-hooks.el	2007/02/03 13:08:38	1.16
+++ vc-hooks.el	2007/05/14 19:07:13	1.17
@@ -53,7 +53,9 @@ BACKEND, use `vc-handled-backends'.")
 (defvar vc-header-alist ())
 (make-obsolete-variable 'vc-header-alist 'vc-BACKEND-header)
 
-(defcustom vc-ignore-dir-regexp "\\`\\([\\/][\\/]\\|/net/\\|/afs/\\)\\'"
+(defcustom vc-ignore-dir-regexp
+  ;; Stop SMB, automounter, AFS, and DFS host lookups.
+  "\\`\\(?:[\\/][\\/]\\|/\\(?:net\\|afs\\|\\.\\\.\\.\\)/\\)\\'"
   "Regexp matching directory names that are not under VC's control.
 The default regexp prevents fruitless and time-consuming attempts
 to determine the VC status in directories in which filenames are
@@ -326,10 +328,17 @@ If WITNESS if not found, return nil, oth
   ;; witnesses in /home or in /.
   ;; XEmacs: 2nd arg to `abbreviate-file-name' to match GNU functionality
   (setq file (abbreviate-file-name file t))
-  (let ((root nil))
+  (let ((root nil)
+        (user (nth 2 (file-attributes file))))
     (while (not (or root
                    (equal file (setq file (file-name-directory file)))
                    (null file)
+                   ;; As a heuristic, we stop looking up the hierarchy of
+                   ;; directories as soon as we find a directory belonging
+                   ;; to another user.  This should save us from looking in
+                   ;; things like /net and /afs.  This assumes that all the
+                   ;; files inside a project belong to the same user.
+                   (not (equal user (file-attributes file)))
                    (string-match vc-ignore-dir-regexp file)))
       (if (file-exists-p (expand-file-name witness file))
          (setq root file)



1.11      +5 -4      XEmacs/packages/unsupported/scop/vc/vc-rcs.el

Index: vc-rcs.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/unsupported/scop/vc/vc-rcs.el,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -p -r1.10 -r1.11
--- vc-rcs.el	2007/01/28 20:20:55	1.10
+++ vc-rcs.el	2007/05/14 19:07:13	1.11
@@ -670,6 +670,7 @@ Optional arg REVISION is a revision to a
                              "  "
                              (aref rda 0)
                              ls)
+:vc-annotate-prefix t
                       :vc-rcs-r/d/a rda)))
         (maphash
          (if all-me
@@ -692,9 +693,9 @@ encoded as fractional days."
   "Return the time of the next annotation (as fraction of days)
 systime, or nil if there is none.  Also, reposition point."
   (unless (eobp)
-    (search-forward ": ")
-    (vc-annotate-convert-time
-     (aref (get-text-property (point) :vc-rcs-r/d/a) 1))))
+    (prog1 (vc-annotate-convert-time
+            (aref (get-text-property (point) :vc-rcs-r/d/a) 1))
+      (goto-char (next-single-property-change (point) :vc-annotate-prefix)))))
 
 (defun vc-rcs-annotate-extract-revision-at-line ()
   (aref (get-text-property (point) :vc-rcs-r/d/a) 0))
@@ -911,7 +912,7 @@ Returns: nil            if no headers we
 	  (vc-file-setprop file 'vc-state
 			   (cond
 			    ((eq locking-user 'none) 'up-to-date)
-			    ((string= locking-user (vc-user-login-name file)) 
+			    ((string= locking-user (vc-user-login-name file))
                              'edited)
 			    (t locking-user)))
 	  ;; If the file has headers, we don't want to query the



1.38      +6 -4      XEmacs/packages/unsupported/scop/vc/vc.el

Index: vc.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/unsupported/scop/vc/vc.el,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -p -r1.37 -r1.38
--- vc.el	2007/01/28 20:20:55	1.37
+++ vc.el	2007/05/14 19:07:13	1.38
@@ -2939,7 +2939,11 @@ log entries should be gathered."
   (vc-call-backend (vc-responsible-backend default-directory)
                    'update-changelog args))
 
-(defun vc-default-update-changelog (backend files)
+(defalias 'vc-cvs-update-changelog 'vc-update-changelog-rcs2log)
+(defalias 'vc-rcs-update-changelog 'vc-update-changelog-rcs2log)
+;; FIXME: This should probably be moved to vc-rcs.el and replaced in
+;; vc-cvs.el by code using cvs2cl.
+(defun vc-update-changelog-rcs2log (files)
   "Default implementation of update-changelog.
 Uses `rcs2log' which only works for RCS and CVS."
   ;; FIXME: We (c|sh)ould add support for cvs2cl
@@ -2979,9 +2983,7 @@ Uses `rcs2log' which only works for RCS 
                                     (mapcar
                                      (lambda (f)
                                        (file-relative-name
-                                        (if (file-name-absolute-p f)
-                                            f
-                                          (concat odefault f))))
+                                        (expand-file-name f odefault)))
                                      files)))
                        "done"
 		     (pop-to-buffer (get-buffer-create "*vc*"))





More information about the XEmacs-CVS mailing list