From d6922db49dea33ac2bca8b33d24763cc7b2e4cd7 Mon Sep 17 00:00:00 2001 From: Michael Albinus Date: Sun, 29 Dec 2019 13:53:06 +0100 Subject: [PATCH] Sync with Tramp 2.4.3 * doc/misc/trampver.texi: * lisp/net/trampver.el: Change version to "2.4.3". * lisp/net/tramp.el: Bump version. (tramp-handle-shell-command): The temp file for error-buffer is remote. * test/lisp/net/tramp-tests.el (tramp-test30-make-process): Simplify buffer generation. (tramp-test32-shell-command): Extend test. --- doc/misc/trampver.texi | 2 +- lisp/net/tramp.el | 9 ++++++--- lisp/net/trampver.el | 4 ++-- test/lisp/net/tramp-tests.el | 34 ++++++++++++++++++++-------------- 4 files changed, 29 insertions(+), 20 deletions(-) diff --git a/doc/misc/trampver.texi b/doc/misc/trampver.texi index c34d28d3137..be35101e78c 100644 --- a/doc/misc/trampver.texi +++ b/doc/misc/trampver.texi @@ -8,7 +8,7 @@ @c In the Tramp GIT, the version numbers are auto-frobbed from @c tramp.el, and the bug report address is auto-frobbed from @c configure.ac. -@set trampver 2.4.3-pre +@set trampver 2.4.3 @set tramp-bug-report-address tramp-devel@@gnu.org @set emacsver 24.4 diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 36bfe5ef865..cf39aa5ddd4 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -7,8 +7,9 @@ ;; Maintainer: Michael Albinus ;; Keywords: comm, processes ;; Package: tramp -;; Version: 2.4.3-pre +;; Version: 2.4.3 ;; Package-Requires: ((emacs "24.4")) +;; Package-Type: multi ;; URL: https://savannah.gnu.org/projects/tramp ;; This file is part of GNU Emacs. @@ -3681,7 +3682,9 @@ support symbolic links." (setq buffer (if (and (not asynchronous) error-buffer) (with-parsed-tramp-file-name default-directory nil - (list output-buffer (tramp-make-tramp-temp-file v))) + (list output-buffer + (tramp-make-tramp-file-name + v (tramp-make-tramp-temp-file v)))) output-buffer)) (if current-buffer-p @@ -3735,7 +3738,7 @@ support symbolic links." (defun tramp-handle-start-file-process (name buffer program &rest args) "Like `start-file-process' for Tramp files." - ;; `make-process' knows the `:file-error' argument since Emacs 27.1. + ;; `make-process' knows the `:file-handler' argument since Emacs 27.1 only. (tramp-file-name-handler 'make-process :name name diff --git a/lisp/net/trampver.el b/lisp/net/trampver.el index 49eab7fbc86..9c04b6110eb 100644 --- a/lisp/net/trampver.el +++ b/lisp/net/trampver.el @@ -39,7 +39,7 @@ (defvar inhibit-message) ;;;###tramp-autoload -(defconst tramp-version "2.4.3-pre" +(defconst tramp-version "2.4.3" "This version of Tramp.") ;;;###tramp-autoload @@ -73,7 +73,7 @@ ;; Check for Emacs version. (let ((x (if (not (string-lessp emacs-version "24.4")) "ok" - (format "Tramp 2.4.3-pre is not fit for %s" + (format "Tramp 2.4.3 is not fit for %s" (replace-regexp-in-string "\n" "" (emacs-version)))))) (unless (string-equal "ok" x) (error "%s" x))) diff --git a/test/lisp/net/tramp-tests.el b/test/lisp/net/tramp-tests.el index 77b3ea0ad21..cb52d40f8be 100644 --- a/test/lisp/net/tramp-tests.el +++ b/test/lisp/net/tramp-tests.el @@ -2902,8 +2902,7 @@ This tests also `file-directory-p' and `file-accessible-directory-p'." (sort (copy-sequence `(,tmp-name3 ,tmp-name4)) 'string<)))) ;; Cleanup. - (ignore-errors - (delete-directory tmp-name1 'recursive)))))) + (ignore-errors (delete-directory tmp-name1 'recursive)))))) (ert-deftest tramp-test17-insert-directory () "Check `insert-directory'." @@ -4354,8 +4353,7 @@ This tests also `make-symbolic-link', `file-truename' and `add-name-to-file'." ;; Process with stderr. tramp-adb.el doesn't support it (yet). (unless (tramp--test-adb-p) - (let ((stderr - (generate-new-buffer (generate-new-buffer-name "stderr")))) + (let ((stderr (generate-new-buffer "*stderr*"))) (unwind-protect (with-temp-buffer (setq proc @@ -4458,6 +4456,20 @@ This tests also `make-symbolic-link', `file-truename' and `add-name-to-file'." ;; Cleanup. (ignore-errors (delete-file tmp-name))) + ;; Test `shell-command' with error buffer. + (let ((stderr (generate-new-buffer "*stderr*"))) + (unwind-protect + (with-temp-buffer + (shell-command "error" (current-buffer) stderr) + (should (= (point-min) (point-max))) + (should + (string-match + "error:.+not found" + (with-current-buffer stderr (buffer-string))))) + + ;; Cleanup. + (ignore-errors (kill-buffer stderr)))) + ;; Test ordinary `async-shell-command'. (unwind-protect (with-temp-buffer @@ -4475,10 +4487,6 @@ This tests also `make-symbolic-link', `file-truename' and `add-name-to-file'." (while (re-search-forward tramp-display-escape-sequence-regexp nil t) (replace-match "" nil nil)) - ;; There might be a nasty "Process *Async Shell* finished" message. - (goto-char (point-min)) - (forward-line) - (narrow-to-region (point-min) (point)) (should (string-equal (format "%s\n" (file-name-nondirectory tmp-name)) @@ -4505,13 +4513,11 @@ This tests also `make-symbolic-link', `file-truename' and `add-name-to-file'." (while (re-search-forward tramp-display-escape-sequence-regexp nil t) (replace-match "" nil nil)) - ;; There might be a nasty "Process *Async Shell* finished" message. - (goto-char (point-min)) - (forward-line) - (narrow-to-region (point-min) (point)) + ;; We cannot use `string-equal', because tramp-adb.el + ;; echoes also the sent string. (should - (string-equal - (format "%s\n" (file-name-nondirectory tmp-name)) + (string-match + (format "\\`%s" (regexp-quote (file-name-nondirectory tmp-name))) (buffer-string)))) ;; Cleanup. -- 2.39.2