aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Albinus2020-12-29 15:36:38 +0100
committerMichael Albinus2020-12-29 15:36:38 +0100
commit7fbcca29b883e68b7a92d4bc706aa0a0bd19b5a4 (patch)
treec4678bbacd355c3bf8b01c97170dea56c5fd1357
parentecd9264372a61cf35696288d2d0c8afe77dd084f (diff)
downloademacs-7fbcca29b883e68b7a92d4bc706aa0a0bd19b5a4.tar.gz
emacs-7fbcca29b883e68b7a92d4bc706aa0a0bd19b5a4.zip
Sync with Tramp 2.5.0
* doc/misc/trampver.texi: * lisp/net/trampver.el: Change version to "2.5.0". * test/lisp/net/tramp-tests.el (tramp--test--deftest-direct-async-process): Check, that `make-process' supports file name handlers. Suppress `internal-default-process-sentinel'. (tramp--test-async-shell-command): Set `proc' proper. (tramp-test32-shell-command-direct-async): Tag it :unstable.
-rw-r--r--doc/misc/trampver.texi2
-rw-r--r--lisp/net/tramp-adb.el7
-rw-r--r--lisp/net/trampver.el6
-rw-r--r--test/lisp/net/tramp-tests.el48
4 files changed, 38 insertions, 25 deletions
diff --git a/doc/misc/trampver.texi b/doc/misc/trampver.texi
index dbebbc36812..ba98a7e31fb 100644
--- a/doc/misc/trampver.texi
+++ b/doc/misc/trampver.texi
@@ -8,7 +8,7 @@
8@c In the Tramp GIT, the version numbers are auto-frobbed from 8@c In the Tramp GIT, the version numbers are auto-frobbed from
9@c tramp.el, and the bug report address is auto-frobbed from 9@c tramp.el, and the bug report address is auto-frobbed from
10@c configure.ac. 10@c configure.ac.
11@set trampver 2.5.0-pre 11@set trampver 2.5.0
12@set trampurl https://www.gnu.org/software/tramp/ 12@set trampurl https://www.gnu.org/software/tramp/
13@set tramp-bug-report-address tramp-devel@@gnu.org 13@set tramp-bug-report-address tramp-devel@@gnu.org
14@set emacsver 25.1 14@set emacsver 25.1
diff --git a/lisp/net/tramp-adb.el b/lisp/net/tramp-adb.el
index 9ea72668e7b..2d702b6b0af 100644
--- a/lisp/net/tramp-adb.el
+++ b/lisp/net/tramp-adb.el
@@ -1131,6 +1131,13 @@ This happens for Android >= 4.0."
1131 (if (string-match-p "[[:multibyte:]]" command) 1131 (if (string-match-p "[[:multibyte:]]" command)
1132 ;; Multibyte codepoints with four bytes are not supported at 1132 ;; Multibyte codepoints with four bytes are not supported at
1133 ;; least by toybox. 1133 ;; least by toybox.
1134
1135 ;; <https://android.stackexchange.com/questions/226638/how-to-use-multibyte-file-names-in-adb-shell/232379#232379>
1136 ;; mksh uses UTF-8 internally, but is currently limited to the
1137 ;; BMP (basic multilingua plane), which means U+0000 to
1138 ;; U+FFFD. If you want to use SMP codepoints (U-00010000 to
1139 ;; U-0010FFFD) on the input line, you currently have to disable
1140 ;; the UTF-8 mode (sorry).
1134 (tramp-adb-execute-adb-command vec "shell" command) 1141 (tramp-adb-execute-adb-command vec "shell" command)
1135 1142
1136 (unless neveropen (tramp-adb-maybe-open-connection vec)) 1143 (unless neveropen (tramp-adb-maybe-open-connection vec))
diff --git a/lisp/net/trampver.el b/lisp/net/trampver.el
index 30e5ba8151b..f4e470e5a8c 100644
--- a/lisp/net/trampver.el
+++ b/lisp/net/trampver.el
@@ -7,7 +7,7 @@
7;; Maintainer: Michael Albinus <michael.albinus@gmx.de> 7;; Maintainer: Michael Albinus <michael.albinus@gmx.de>
8;; Keywords: comm, processes 8;; Keywords: comm, processes
9;; Package: tramp 9;; Package: tramp
10;; Version: 2.5.0-pre 10;; Version: 2.5.0
11;; Package-Requires: ((emacs "25.1")) 11;; Package-Requires: ((emacs "25.1"))
12;; Package-Type: multi 12;; Package-Type: multi
13;; URL: https://www.gnu.org/software/tramp/ 13;; URL: https://www.gnu.org/software/tramp/
@@ -40,7 +40,7 @@
40;; ./configure" to change them. 40;; ./configure" to change them.
41 41
42;;;###tramp-autoload 42;;;###tramp-autoload
43(defconst tramp-version "2.5.0-pre" 43(defconst tramp-version "2.5.0"
44 "This version of Tramp.") 44 "This version of Tramp.")
45 45
46;;;###tramp-autoload 46;;;###tramp-autoload
@@ -76,7 +76,7 @@
76;; Check for Emacs version. 76;; Check for Emacs version.
77(let ((x (if (not (string-lessp emacs-version "25.1")) 77(let ((x (if (not (string-lessp emacs-version "25.1"))
78 "ok" 78 "ok"
79 (format "Tramp 2.5.0-pre is not fit for %s" 79 (format "Tramp 2.5.0 is not fit for %s"
80 (replace-regexp-in-string "\n" "" (emacs-version)))))) 80 (replace-regexp-in-string "\n" "" (emacs-version))))))
81 (unless (string-equal "ok" x) (error "%s" x))) 81 (unless (string-equal "ok" x) (error "%s" x)))
82 82
diff --git a/test/lisp/net/tramp-tests.el b/test/lisp/net/tramp-tests.el
index c8756627936..197eed74ee0 100644
--- a/test/lisp/net/tramp-tests.el
+++ b/test/lisp/net/tramp-tests.el
@@ -4475,23 +4475,30 @@ This tests also `make-symbolic-link', `file-truename' and `add-name-to-file'."
4475 "Define ert test `TEST-direct-async' for direct async processes. 4475 "Define ert test `TEST-direct-async' for direct async processes.
4476If UNSTABLE is non-nil, the test is tagged as `:unstable'." 4476If UNSTABLE is non-nil, the test is tagged as `:unstable'."
4477 (declare (indent 1)) 4477 (declare (indent 1))
4478 `(ert-deftest ,(intern (concat (symbol-name test) "-direct-async")) () 4478 ;; `make-process' supports file name handlers since Emacs 27.
4479 ,docstring 4479 (when (let ((file-name-handler-alist '(("" . (lambda (&rest _) t)))))
4480 :tags (if ,unstable '(:expensive-test :unstable) '(:expensive-test)) 4480 (ignore-errors (make-process :file-handler t)))
4481 (skip-unless (tramp--test-enabled)) 4481 `(ert-deftest ,(intern (concat (symbol-name test) "-direct-async")) ()
4482 (let ((default-directory tramp-test-temporary-file-directory) 4482 ,docstring
4483 (ert-test (ert-get-test ',test)) 4483 :tags (if ,unstable '(:expensive-test :unstable) '(:expensive-test))
4484 (tramp-connection-properties 4484 (skip-unless (tramp--test-enabled))
4485 (cons '(nil "direct-async-process" t) tramp-connection-properties))) 4485 (let ((default-directory tramp-test-temporary-file-directory)
4486 (skip-unless (tramp-direct-async-process-p)) 4486 (ert-test (ert-get-test ',test))
4487 ;; For whatever reason, it doesn't cooperate with the "mock" method. 4487 (tramp-connection-properties
4488 (skip-unless (not (tramp--test-mock-p))) 4488 (cons '(nil "direct-async-process" t)
4489 ;; We do expect an established connection already, 4489 tramp-connection-properties)))
4490 ;; `file-truename' does it by side-effect. Suppress 4490 (skip-unless (tramp-direct-async-process-p))
4491 ;; `tramp--test-enabled', in order to keep the connection. 4491 ;; For whatever reason, it doesn't cooperate with the "mock" method.
4492 (cl-letf (((symbol-function #'tramp--test-enabled) (lambda nil t))) 4492 (skip-unless (not (tramp--test-mock-p)))
4493 (file-truename tramp-test-temporary-file-directory) 4493 ;; We do expect an established connection already,
4494 (funcall (ert-test-body ert-test)))))) 4494 ;; `file-truename' does it by side-effect. Suppress
4495 ;; `tramp--test-enabled', in order to keep the connection.
4496 ;; Suppress "Process ... finished" messages.
4497 (cl-letf (((symbol-function #'tramp--test-enabled) (lambda nil t))
4498 ((symbol-function #'internal-default-process-sentinel)
4499 #'ignore))
4500 (file-truename tramp-test-temporary-file-directory)
4501 (funcall (ert-test-body ert-test)))))))
4495 4502
4496(tramp--test--deftest-direct-async-process tramp-test29-start-file-process 4503(tramp--test--deftest-direct-async-process tramp-test29-start-file-process
4497 "Check direct async `start-file-process'.") 4504 "Check direct async `start-file-process'.")
@@ -4704,8 +4711,7 @@ If UNSTABLE is non-nil, the test is tagged as `:unstable'."
4704 (command output-buffer &optional error-buffer input) 4711 (command output-buffer &optional error-buffer input)
4705 "Like `async-shell-command', reading the output. 4712 "Like `async-shell-command', reading the output.
4706INPUT, if non-nil, is a string sent to the process." 4713INPUT, if non-nil, is a string sent to the process."
4707 (async-shell-command command output-buffer error-buffer) 4714 (let ((proc (async-shell-command command output-buffer error-buffer))
4708 (let ((proc (get-buffer-process output-buffer))
4709 (delete-exited-processes t)) 4715 (delete-exited-processes t))
4710 (cl-letf (((symbol-function #'shell-command-sentinel) #'ignore)) 4716 (cl-letf (((symbol-function #'shell-command-sentinel) #'ignore))
4711 (when (stringp input) 4717 (when (stringp input)
@@ -4818,7 +4824,7 @@ INPUT, if non-nil, is a string sent to the process."
4818 (should (= cols async-shell-command-width)))))) 4824 (should (= cols async-shell-command-width))))))
4819 4825
4820(tramp--test--deftest-direct-async-process tramp-test32-shell-command 4826(tramp--test--deftest-direct-async-process tramp-test32-shell-command
4821 "Check direct async `shell-command'.") 4827 "Check direct async `shell-command'." 'unstable)
4822 4828
4823;; This test is inspired by Bug#39067. 4829;; This test is inspired by Bug#39067.
4824(ert-deftest tramp-test32-shell-command-dont-erase-buffer () 4830(ert-deftest tramp-test32-shell-command-dont-erase-buffer ()
@@ -6452,7 +6458,7 @@ process sentinels. They shall not disturb each other."
6452 (ignore-errors (delete-directory tmp-name 'recursive)))))) 6458 (ignore-errors (delete-directory tmp-name 'recursive))))))
6453 6459
6454;; (tramp--test--deftest-direct-async-process tramp-test43-asynchronous-requests 6460;; (tramp--test--deftest-direct-async-process tramp-test43-asynchronous-requests
6455;; "Check parallel direct asynchronous requests.") 6461;; "Check parallel direct asynchronous requests." 'unstable)
6456 6462
6457;; This test is inspired by Bug#29163. 6463;; This test is inspired by Bug#29163.
6458(ert-deftest tramp-test44-auto-load () 6464(ert-deftest tramp-test44-auto-load ()