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.
This commit is contained in:
parent
ecd9264372
commit
7fbcca29b8
4 changed files with 38 additions and 25 deletions
|
@ -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.5.0-pre
|
||||
@set trampver 2.5.0
|
||||
@set trampurl https://www.gnu.org/software/tramp/
|
||||
@set tramp-bug-report-address tramp-devel@@gnu.org
|
||||
@set emacsver 25.1
|
||||
|
|
|
@ -1131,6 +1131,13 @@ This happens for Android >= 4.0."
|
|||
(if (string-match-p "[[:multibyte:]]" command)
|
||||
;; Multibyte codepoints with four bytes are not supported at
|
||||
;; least by toybox.
|
||||
|
||||
;; <https://android.stackexchange.com/questions/226638/how-to-use-multibyte-file-names-in-adb-shell/232379#232379>
|
||||
;; mksh uses UTF-8 internally, but is currently limited to the
|
||||
;; BMP (basic multilingua plane), which means U+0000 to
|
||||
;; U+FFFD. If you want to use SMP codepoints (U-00010000 to
|
||||
;; U-0010FFFD) on the input line, you currently have to disable
|
||||
;; the UTF-8 mode (sorry).
|
||||
(tramp-adb-execute-adb-command vec "shell" command)
|
||||
|
||||
(unless neveropen (tramp-adb-maybe-open-connection vec))
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
;; Maintainer: Michael Albinus <michael.albinus@gmx.de>
|
||||
;; Keywords: comm, processes
|
||||
;; Package: tramp
|
||||
;; Version: 2.5.0-pre
|
||||
;; Version: 2.5.0
|
||||
;; Package-Requires: ((emacs "25.1"))
|
||||
;; Package-Type: multi
|
||||
;; URL: https://www.gnu.org/software/tramp/
|
||||
|
@ -40,7 +40,7 @@
|
|||
;; ./configure" to change them.
|
||||
|
||||
;;;###tramp-autoload
|
||||
(defconst tramp-version "2.5.0-pre"
|
||||
(defconst tramp-version "2.5.0"
|
||||
"This version of Tramp.")
|
||||
|
||||
;;;###tramp-autoload
|
||||
|
@ -76,7 +76,7 @@
|
|||
;; Check for Emacs version.
|
||||
(let ((x (if (not (string-lessp emacs-version "25.1"))
|
||||
"ok"
|
||||
(format "Tramp 2.5.0-pre is not fit for %s"
|
||||
(format "Tramp 2.5.0 is not fit for %s"
|
||||
(replace-regexp-in-string "\n" "" (emacs-version))))))
|
||||
(unless (string-equal "ok" x) (error "%s" x)))
|
||||
|
||||
|
|
|
@ -4475,23 +4475,30 @@ This tests also `make-symbolic-link', `file-truename' and `add-name-to-file'."
|
|||
"Define ert test `TEST-direct-async' for direct async processes.
|
||||
If UNSTABLE is non-nil, the test is tagged as `:unstable'."
|
||||
(declare (indent 1))
|
||||
`(ert-deftest ,(intern (concat (symbol-name test) "-direct-async")) ()
|
||||
,docstring
|
||||
:tags (if ,unstable '(:expensive-test :unstable) '(:expensive-test))
|
||||
(skip-unless (tramp--test-enabled))
|
||||
(let ((default-directory tramp-test-temporary-file-directory)
|
||||
(ert-test (ert-get-test ',test))
|
||||
(tramp-connection-properties
|
||||
(cons '(nil "direct-async-process" t) tramp-connection-properties)))
|
||||
(skip-unless (tramp-direct-async-process-p))
|
||||
;; For whatever reason, it doesn't cooperate with the "mock" method.
|
||||
(skip-unless (not (tramp--test-mock-p)))
|
||||
;; We do expect an established connection already,
|
||||
;; `file-truename' does it by side-effect. Suppress
|
||||
;; `tramp--test-enabled', in order to keep the connection.
|
||||
(cl-letf (((symbol-function #'tramp--test-enabled) (lambda nil t)))
|
||||
(file-truename tramp-test-temporary-file-directory)
|
||||
(funcall (ert-test-body ert-test))))))
|
||||
;; `make-process' supports file name handlers since Emacs 27.
|
||||
(when (let ((file-name-handler-alist '(("" . (lambda (&rest _) t)))))
|
||||
(ignore-errors (make-process :file-handler t)))
|
||||
`(ert-deftest ,(intern (concat (symbol-name test) "-direct-async")) ()
|
||||
,docstring
|
||||
:tags (if ,unstable '(:expensive-test :unstable) '(:expensive-test))
|
||||
(skip-unless (tramp--test-enabled))
|
||||
(let ((default-directory tramp-test-temporary-file-directory)
|
||||
(ert-test (ert-get-test ',test))
|
||||
(tramp-connection-properties
|
||||
(cons '(nil "direct-async-process" t)
|
||||
tramp-connection-properties)))
|
||||
(skip-unless (tramp-direct-async-process-p))
|
||||
;; For whatever reason, it doesn't cooperate with the "mock" method.
|
||||
(skip-unless (not (tramp--test-mock-p)))
|
||||
;; We do expect an established connection already,
|
||||
;; `file-truename' does it by side-effect. Suppress
|
||||
;; `tramp--test-enabled', in order to keep the connection.
|
||||
;; Suppress "Process ... finished" messages.
|
||||
(cl-letf (((symbol-function #'tramp--test-enabled) (lambda nil t))
|
||||
((symbol-function #'internal-default-process-sentinel)
|
||||
#'ignore))
|
||||
(file-truename tramp-test-temporary-file-directory)
|
||||
(funcall (ert-test-body ert-test)))))))
|
||||
|
||||
(tramp--test--deftest-direct-async-process tramp-test29-start-file-process
|
||||
"Check direct async `start-file-process'.")
|
||||
|
@ -4704,8 +4711,7 @@ If UNSTABLE is non-nil, the test is tagged as `:unstable'."
|
|||
(command output-buffer &optional error-buffer input)
|
||||
"Like `async-shell-command', reading the output.
|
||||
INPUT, if non-nil, is a string sent to the process."
|
||||
(async-shell-command command output-buffer error-buffer)
|
||||
(let ((proc (get-buffer-process output-buffer))
|
||||
(let ((proc (async-shell-command command output-buffer error-buffer))
|
||||
(delete-exited-processes t))
|
||||
(cl-letf (((symbol-function #'shell-command-sentinel) #'ignore))
|
||||
(when (stringp input)
|
||||
|
@ -4818,7 +4824,7 @@ INPUT, if non-nil, is a string sent to the process."
|
|||
(should (= cols async-shell-command-width))))))
|
||||
|
||||
(tramp--test--deftest-direct-async-process tramp-test32-shell-command
|
||||
"Check direct async `shell-command'.")
|
||||
"Check direct async `shell-command'." 'unstable)
|
||||
|
||||
;; This test is inspired by Bug#39067.
|
||||
(ert-deftest tramp-test32-shell-command-dont-erase-buffer ()
|
||||
|
@ -6452,7 +6458,7 @@ process sentinels. They shall not disturb each other."
|
|||
(ignore-errors (delete-directory tmp-name 'recursive))))))
|
||||
|
||||
;; (tramp--test--deftest-direct-async-process tramp-test43-asynchronous-requests
|
||||
;; "Check parallel direct asynchronous requests.")
|
||||
;; "Check parallel direct asynchronous requests." 'unstable)
|
||||
|
||||
;; This test is inspired by Bug#29163.
|
||||
(ert-deftest tramp-test44-auto-load ()
|
||||
|
|
Loading…
Add table
Reference in a new issue