unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#32304: 27.0.50; tramp-tests issue with double slash
@ 2018-07-29 15:54 Ken Brown
  2018-07-29 16:27 ` Michael Albinus
  0 siblings, 1 reply; 27+ messages in thread
From: Ken Brown @ 2018-07-29 15:54 UTC (permalink / raw)
  To: 32304

[-- Attachment #1: Type: text/plain, Size: 1253 bytes --]

The following parts of tramp-test04-substitute-in-file-name are failing
on Cygwin (and probably also on MS-Windows, but I can't easily test
that):

(should
    (string-equal
     (substitute-in-file-name "/method:host://foo") "/method:host:/foo"))
(should
    (string-equal (substitute-in-file-name "/method:host:/path///foo") 
"/foo"))
(should
    (string-equal (substitute-in-file-name "/method:host://~foo") "/~foo"))

Here are the corresponding evaluations:

(substitute-in-file-name "/method:host://foo")
"/method:host://foo"

(substitute-in-file-name "/method:host:/path///foo")
"//foo"

(substitute-in-file-name "/method:host://~foo")
"//~foo"

This is a consequence of the fact that Tramp calls
substitute-in-file-name on the local part of the file name:

(substitute-in-file-name "//foo")
"//foo"

(substitute-in-file-name "/path///foo")
"//foo"

(substitute-in-file-name "//~foo")
"//~foo"

"//" has a special meaning at the beginning of a file name on Cygwin and
MS-Windows; see the comment near the beginning of
search_embedded_absfilename.  So I don't think there's a real bug here.
Maybe the expected result of the test should simply be adjusted, as in
the attached patch.  Someone who builds on MS-Windows would have to
check this.

Ken


[-- Attachment #2: 0001-Adjust-expected-results-on-a-tramp-test.patch --]
[-- Type: text/plain, Size: 1961 bytes --]

From 328766e02145fcfcdd54c124ff866ce8f2e15d59 Mon Sep 17 00:00:00 2001
From: Ken Brown <kbrown@cornell.edu>
Date: Sun, 29 Jul 2018 11:45:26 -0400
Subject: [PATCH] Adjust expected results on a tramp test

* test/lisp/net/tramp-tests.el
(tramp-test04-substitute-in-file-name): Adjust the expected
results on Cygwin and MS-Windows, where "//" at the beginning
of a file name has a special meaning.  (Bug#99999)
---
 test/lisp/net/tramp-tests.el | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/test/lisp/net/tramp-tests.el b/test/lisp/net/tramp-tests.el
index 5c5eff8798..a29df1682c 100644
--- a/test/lisp/net/tramp-tests.el
+++ b/test/lisp/net/tramp-tests.el
@@ -1781,9 +1781,15 @@ tramp--test-print-duration
   (should (string-equal (substitute-in-file-name "/method:host:///foo") "/foo"))
   (should
    (string-equal
-    (substitute-in-file-name "/method:host://foo") "/method:host:/foo"))
+    (substitute-in-file-name "/method:host://foo")
+    (if (memq system-type '(cygwin windows-nt))
+        "/method:host://foo"
+      "/method:host:/foo")))
   (should
-   (string-equal (substitute-in-file-name "/method:host:/path///foo") "/foo"))
+   (string-equal (substitute-in-file-name "/method:host:/path///foo")
+                 (if (memq system-type '(cygwin windows-nt))
+                     "//foo"
+                   "/foo")))
   (should
    (string-equal
     (substitute-in-file-name "/method:host:/path//foo") "/method:host:/foo"))
@@ -1804,7 +1810,10 @@ tramp--test-print-duration
     "/method:host:/:/path//foo"))
 
   (should
-   (string-equal (substitute-in-file-name "/method:host://~foo") "/~foo"))
+   (string-equal (substitute-in-file-name "/method:host://~foo")
+                 (if (memq system-type '(cygwin windows-nt))
+                     "//~foo"
+                   "/~foo")))
   (should
    (string-equal
     (substitute-in-file-name "/method:host:/~foo") "/method:host:/~foo"))
-- 
2.17.0


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-29 15:54 bug#32304: 27.0.50; tramp-tests issue with double slash Ken Brown
@ 2018-07-29 16:27 ` Michael Albinus
  2018-07-29 16:47   ` Ken Brown
                     ` (2 more replies)
  0 siblings, 3 replies; 27+ messages in thread
From: Michael Albinus @ 2018-07-29 16:27 UTC (permalink / raw)
  To: Ken Brown; +Cc: 32304

[-- Attachment #1: Type: text/plain, Size: 600 bytes --]

Ken Brown <kbrown@cornell.edu> writes:

Hi Ken,

> "//" has a special meaning at the beginning of a file name on Cygwin and
> MS-Windows; see the comment near the beginning of
> search_embedded_absfilename.  So I don't think there's a real bug here.
> Maybe the expected result of the test should simply be adjusted, as in
> the attached patch.  Someone who builds on MS-Windows would have to
> check this.

Thanks for the report. However, your patch seems just to hide the
problem in tramp-tests.el. Wouldn't it be better to fix this?

What about the appended patch?

> Ken

Best regards, Michael.


[-- Attachment #2: Type: text/plain, Size: 848 bytes --]

diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index d56b09a604..1c1ed7a377 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -3567,8 +3567,11 @@ tramp-handle-substitute-in-file-name
     ;; First, we must replace environment variables.
     (setq filename (tramp-replace-environment-variables filename))
     (with-parsed-tramp-file-name filename nil
-      ;; We do not want to replace environment variables, again.
-      (let (process-environment)
+      ;; "//" has a special meaning at the beginning of a file name on
+      ;; Cygwin and MS-Windows.  And we do not want to replace
+      ;; environment variables, again.
+      (let ((system-type 'not-windows)
+            process-environment)
 	;; Ignore in LOCALNAME everything before "//" or "/~".
 	(when (stringp localname)
 	  (if (string-match "//\\(/\\|~\\)" localname)

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-29 16:27 ` Michael Albinus
@ 2018-07-29 16:47   ` Ken Brown
  2018-07-29 16:55     ` Michael Albinus
  2018-07-30 10:43     ` Michael Albinus
  2018-07-29 17:26   ` Eli Zaretskii
  2018-07-31 14:46   ` Andy Moreton
  2 siblings, 2 replies; 27+ messages in thread
From: Ken Brown @ 2018-07-29 16:47 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32304

On 7/29/2018 12:27 PM, Michael Albinus wrote:

Hi Michael,
> Thanks for the report. However, your patch seems just to hide the
> problem in tramp-tests.el. Wouldn't it be better to fix this?

Yes, absolutely.

> What about the appended patch?

I think something further must be needed.  The test still fails in the 
same way.

Best regards,

Ken





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-29 16:47   ` Ken Brown
@ 2018-07-29 16:55     ` Michael Albinus
  2018-07-29 17:00       ` Ken Brown
  2018-07-30 10:43     ` Michael Albinus
  1 sibling, 1 reply; 27+ messages in thread
From: Michael Albinus @ 2018-07-29 16:55 UTC (permalink / raw)
  To: Ken Brown; +Cc: 32304

Ken Brown <kbrown@cornell.edu> writes:

> Hi Michael,

Hi Ken,

>> What about the appended patch?
>
> I think something further must be needed.  The test still fails in the
> same way.

OK, needs an MS Windows machine for test. Will do when possible;
officially, I'm on vacation this week. (Don't tell my wife my presence
in emacs-devel :-)

> Best regards,
>
> Ken

Best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-29 16:55     ` Michael Albinus
@ 2018-07-29 17:00       ` Ken Brown
  0 siblings, 0 replies; 27+ messages in thread
From: Ken Brown @ 2018-07-29 17:00 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32304

On 7/29/2018 12:55 PM, Michael Albinus wrote:
> OK, needs an MS Windows machine for test. Will do when possible;
> officially, I'm on vacation this week. (Don't tell my wife my presence
> in emacs-devel :-)

Your secret is safe with me.  Enjoy your vacation.

Ken






^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-29 16:27 ` Michael Albinus
  2018-07-29 16:47   ` Ken Brown
@ 2018-07-29 17:26   ` Eli Zaretskii
  2018-07-30  8:26     ` Michael Albinus
  2018-07-31 14:46   ` Andy Moreton
  2 siblings, 1 reply; 27+ messages in thread
From: Eli Zaretskii @ 2018-07-29 17:26 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32304

[-- Attachment #1: Type: text/plain, Size: 802 bytes --]

> From: Michael Albinus <michael.albinus@gmx.de>
> Date: Sun, 29 Jul 2018 18:27:40 +0200
> Cc: 32304@debbugs.gnu.org
> 
> > "//" has a special meaning at the beginning of a file name on Cygwin and
> > MS-Windows; see the comment near the beginning of
> > search_embedded_absfilename.  So I don't think there's a real bug here.
> > Maybe the expected result of the test should simply be adjusted, as in
> > the attached patch.  Someone who builds on MS-Windows would have to
> > check this.
> 
> Thanks for the report. However, your patch seems just to hide the
> problem in tramp-tests.el. Wouldn't it be better to fix this?
> 
> What about the appended patch?

Doesn't seem to help here, in the native MS-Windows build; log
attached.

Can you tell how binding system-type was supposed to solve this?


[-- Attachment #2: tramp-tests.log --]
[-- Type: application/octet-stream, Size: 10667 bytes --]

Running 63 tests (2018-07-29 20:24:27+0300, selector `(not (tag :unstable))')
   failed   1/63  tramp-test00-availability (0.000000 sec)
   passed   2/63  tramp-test01-file-name-syntax (0.000000 sec)
   passed   3/63  tramp-test01-file-name-syntax-separate (0.281250 sec)
   passed   4/63  tramp-test01-file-name-syntax-simplified (0.000000 sec)
   passed   5/63  tramp-test02-file-name-dissect (0.187500 sec)
   passed   6/63  tramp-test02-file-name-dissect-separate (0.281250 sec)
   passed   7/63  tramp-test02-file-name-dissect-simplified (0.062500 sec)
   passed   8/63  tramp-test03-file-name-defaults (0.281250 sec)
  skipped   9/63  tramp-test03-file-name-host-rules (0.000000 sec)
  skipped  10/63  tramp-test03-file-name-method-rules (0.000000 sec)
Test tramp-test04-substitute-in-file-name backtrace:
  signal(ert-test-failed (((should (string-equal (substitute-in-file-n
  ert-fail(((should (string-equal (substitute-in-file-name "/method:ho
  (if (unwind-protect (setq value-2885 (apply fn-2883 args-2884)) (set
  (let (form-description-2887) (if (unwind-protect (setq value-2885 (a
  (let ((value-2885 'ert-form-evaluation-aborted-2886)) (let (form-des
  (let* ((fn-2883 #'string-equal) (args-2884 (condition-case err (let 
  (closure (t) nil (let* ((fn-2878 #'string-equal) (args-2879 (conditi
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name tramp-test04-substitute-in-file-name 
  ert-run-or-rerun-test(#s(ert--stats :selector (not (tag :unstable)) 
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/net/tramp-tests.el" 
  command-line()
  normal-top-level()
Test tramp-test04-substitute-in-file-name condition:
    (ert-test-failed
     ((should
       (string-equal
	(substitute-in-file-name "/method:host://foo")
	"/method:host:/foo"))
      :form
      (string-equal "/method:host://foo" "/method:host:/foo")
      :value nil))
   FAILED  11/63  tramp-test04-substitute-in-file-name (0.000000 sec)
   passed  12/63  tramp-test05-expand-file-name (0.000000 sec)
  skipped  13/63  tramp-test05-expand-file-name-relative (0.000000 sec)
   passed  14/63  tramp-test06-directory-file-name (0.000000 sec)
  skipped  15/63  tramp-test07-file-exists-p (0.000000 sec)
  skipped  16/63  tramp-test08-file-local-copy (0.000000 sec)
  skipped  17/63  tramp-test09-insert-file-contents (0.000000 sec)
  skipped  18/63  tramp-test10-write-region (0.000000 sec)
  skipped  19/63  tramp-test11-copy-file (0.015625 sec)
  skipped  20/63  tramp-test12-rename-file (0.000000 sec)
  skipped  21/63  tramp-test13-make-directory (0.000000 sec)
  skipped  22/63  tramp-test14-delete-directory (0.000000 sec)
  skipped  23/63  tramp-test15-copy-directory (0.000000 sec)
  skipped  24/63  tramp-test16-directory-files (0.140625 sec)
  skipped  25/63  tramp-test16-file-expand-wildcards (0.000000 sec)
  skipped  26/63  tramp-test17-dired-with-wildcards (0.000000 sec)
  skipped  27/63  tramp-test17-insert-directory (0.000000 sec)
  skipped  28/63  tramp-test18-file-attributes (0.000000 sec)
  skipped  29/63  tramp-test19-directory-files-and-attributes (0.000000 sec)
  skipped  30/63  tramp-test20-file-modes (0.000000 sec)
  skipped  31/63  tramp-test21-file-links (0.000000 sec)
  skipped  32/63  tramp-test22-file-times (0.000000 sec)
  skipped  33/63  tramp-test23-visited-file-modtime (0.000000 sec)
  skipped  34/63  tramp-test24-file-acl (0.000000 sec)
  skipped  35/63  tramp-test25-file-selinux (0.000000 sec)
  skipped  36/63  tramp-test26-file-name-completion (0.000000 sec)
  skipped  37/63  tramp-test27-load (0.000000 sec)
  skipped  38/63  tramp-test28-process-file (0.000000 sec)
  skipped  39/63  tramp-test29-start-file-process (0.000000 sec)
  skipped  40/63  tramp-test30-interrupt-process (0.000000 sec)
  skipped  41/63  tramp-test31-shell-command (0.000000 sec)
  skipped  42/63  tramp-test32-environment-variables (0.000000 sec)
  skipped  43/63  tramp-test32-environment-variables-and-port-numbers (0.000000 sec)
  skipped  44/63  tramp-test33-explicit-shell-file-name (0.000000 sec)
  skipped  45/63  tramp-test34-exec-path (0.000000 sec)
  skipped  46/63  tramp-test35-vc-registered (0.000000 sec)
  skipped  47/63  tramp-test36-make-auto-save-file-name (0.000000 sec)
  skipped  48/63  tramp-test37-find-backup-file-name (0.000000 sec)
  skipped  49/63  tramp-test38-make-nearby-temp-file (0.000000 sec)
  skipped  50/63  tramp-test39-special-characters (0.000000 sec)
  skipped  51/63  tramp-test39-special-characters-with-ls (0.000000 sec)
  skipped  52/63  tramp-test39-special-characters-with-perl (0.000000 sec)
  skipped  53/63  tramp-test39-special-characters-with-stat (0.000000 sec)
  skipped  54/63  tramp-test40-utf8 (0.000000 sec)
  skipped  55/63  tramp-test40-utf8-with-ls (0.000000 sec)
  skipped  56/63  tramp-test40-utf8-with-perl (0.000000 sec)
  skipped  57/63  tramp-test40-utf8-with-stat (0.000000 sec)
  skipped  58/63  tramp-test41-file-system-info (0.000000 sec)
Test tramp-test43-auto-load backtrace:
  signal(ert-test-failed (((should (string-match "Tramp loaded: t[\n\r]
  ert-fail(((should (string-match "Tramp loaded: t[\n\r]+" (shell-comma
  (if (unwind-protect (setq value-5650 (apply fn-5648 args-5649)) (set
  (let (form-description-5652) (if (unwind-protect (setq value-5650 (a
  (let ((value-5650 'ert-form-evaluation-aborted-5651)) (let (form-des
  (let* ((fn-5648 #'string-match) (args-5649 (condition-case err (let 
  (let ((default-directory (expand-file-name temporary-file-directory)
  (closure (t) nil (let ((default-directory (expand-file-name temporar
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name tramp-test43-auto-load :documentation
  ert-run-or-rerun-test(#s(ert--stats :selector (not (tag :unstable)) 
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/net/tramp-tests.el" 
  command-line()
  normal-top-level()
Test tramp-test43-auto-load condition:
    (ert-test-failed
     ((should
       (string-match "Tramp loaded: t[
\r]+"
		     (shell-command-to-string ...)))
      :form
      (string-match "Tramp loaded: t[
\r]+" "Tramp loaded: nil
")
      :value nil))
   FAILED  59/63  tramp-test43-auto-load (0.203125 sec)
   passed  60/63  tramp-test43-delay-load (1.875000 sec)
  skipped  61/63  tramp-test43-recursive-load (0.000000 sec)
   passed  62/63  tramp-test43-remote-load-path (1.765625 sec)
Test tramp-test44-unload backtrace:
  signal(ert-test-failed ("`tramp-register-archive-file-name-handler' 
  ert-fail("`tramp-register-archive-file-name-handler' still bound")
  (and (or (and (boundp x) (null (local-variable-if-set-p x))) (and (f
  (closure (t) (x) (and (or (and (boundp x) (null (local-variable-if-s
  mapatoms((closure (t) (x) (and (or (and (boundp x) (null (local-vari
  (progn (unload-feature 'tramp 'force) (let* ((fn-5690 #'featurep) (a
  (if (featurep 'tramp) (progn (unload-feature 'tramp 'force) (let* ((
  (closure (t) nil (let ((value-5683 (gensym "ert-form-evaluation-abor
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name tramp-test44-unload :documentation "C
  ert-run-or-rerun-test(#s(ert--stats :selector (not (tag :unstable)) 
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/net/tramp-tests.el" 
  command-line()
  normal-top-level()
Test tramp-test44-unload condition:
    (ert-test-failed "`tramp-register-archive-file-name-handler' still bound")
   FAILED  63/63  tramp-test44-unload (0.375000 sec)

Ran 63 tests, 12 results as expected, 3 unexpected, 48 skipped (2018-07-29 20:24:37+0300, 9.953125 sec)
1 expected failures

3 unexpected results:
   FAILED  tramp-test04-substitute-in-file-name
   FAILED  tramp-test43-auto-load
   FAILED  tramp-test44-unload

48 skipped results:
  SKIPPED  tramp-test03-file-name-host-rules
  SKIPPED  tramp-test03-file-name-method-rules
  SKIPPED  tramp-test05-expand-file-name-relative
  SKIPPED  tramp-test07-file-exists-p
  SKIPPED  tramp-test08-file-local-copy
  SKIPPED  tramp-test09-insert-file-contents
  SKIPPED  tramp-test10-write-region
  SKIPPED  tramp-test11-copy-file
  SKIPPED  tramp-test12-rename-file
  SKIPPED  tramp-test13-make-directory
  SKIPPED  tramp-test14-delete-directory
  SKIPPED  tramp-test15-copy-directory
  SKIPPED  tramp-test16-directory-files
  SKIPPED  tramp-test16-file-expand-wildcards
  SKIPPED  tramp-test17-dired-with-wildcards
  SKIPPED  tramp-test17-insert-directory
  SKIPPED  tramp-test18-file-attributes
  SKIPPED  tramp-test19-directory-files-and-attributes
  SKIPPED  tramp-test20-file-modes
  SKIPPED  tramp-test21-file-links
  SKIPPED  tramp-test22-file-times
  SKIPPED  tramp-test23-visited-file-modtime
  SKIPPED  tramp-test24-file-acl
  SKIPPED  tramp-test25-file-selinux
  SKIPPED  tramp-test26-file-name-completion
  SKIPPED  tramp-test27-load
  SKIPPED  tramp-test28-process-file
  SKIPPED  tramp-test29-start-file-process
  SKIPPED  tramp-test30-interrupt-process
  SKIPPED  tramp-test31-shell-command
  SKIPPED  tramp-test32-environment-variables
  SKIPPED  tramp-test32-environment-variables-and-port-numbers
  SKIPPED  tramp-test33-explicit-shell-file-name
  SKIPPED  tramp-test34-exec-path
  SKIPPED  tramp-test35-vc-registered
  SKIPPED  tramp-test36-make-auto-save-file-name
  SKIPPED  tramp-test37-find-backup-file-name
  SKIPPED  tramp-test38-make-nearby-temp-file
  SKIPPED  tramp-test39-special-characters
  SKIPPED  tramp-test39-special-characters-with-ls
  SKIPPED  tramp-test39-special-characters-with-perl
  SKIPPED  tramp-test39-special-characters-with-stat
  SKIPPED  tramp-test40-utf8
  SKIPPED  tramp-test40-utf8-with-ls
  SKIPPED  tramp-test40-utf8-with-perl
  SKIPPED  tramp-test40-utf8-with-stat
  SKIPPED  tramp-test41-file-system-info
  SKIPPED  tramp-test43-recursive-load


^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-29 17:26   ` Eli Zaretskii
@ 2018-07-30  8:26     ` Michael Albinus
  0 siblings, 0 replies; 27+ messages in thread
From: Michael Albinus @ 2018-07-30  8:26 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32304

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

> Can you tell how binding system-type was supposed to solve this?

Some functions behave differently depending the system type Emacs is
running on. See for example `shell-quote-argument':

(shell-quote-argument "String with quotation mark \"")

=> "String\\ with\\ quotation\\ mark\\ \\\"" on `gnu/linux'.
=> "^\"String with quotation mark \\^\"^\"" on `windows-nt'

Often, Tramp needs the non-windows kind of result for the remote
host. So it is a common technique in Tramp to force this with
"(let ((system-type 'not-windows)) ...)".

Unfortunately, it doesn't work with `substitute-in-file-name'.  I will
look for another solution.

Best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-29 16:47   ` Ken Brown
  2018-07-29 16:55     ` Michael Albinus
@ 2018-07-30 10:43     ` Michael Albinus
  2018-07-30 12:17       ` Ken Brown
  1 sibling, 1 reply; 27+ messages in thread
From: Michael Albinus @ 2018-07-30 10:43 UTC (permalink / raw)
  To: Ken Brown; +Cc: 32304

[-- Attachment #1: Type: text/plain, Size: 244 bytes --]

Ken Brown <kbrown@cornell.edu> writes:

> Hi Michael,

Hi Ken,

> I think something further must be needed.  The test still fails in the
> same way.

There's another patch, could you pls check?

> Best regards,
>
> Ken

Best regards, Michael.


[-- Attachment #2: Type: text/plain, Size: 1410 bytes --]

diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index d56b09a604..1af2defd58 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -3567,16 +3567,20 @@ tramp-handle-substitute-in-file-name
     ;; First, we must replace environment variables.
     (setq filename (tramp-replace-environment-variables filename))
     (with-parsed-tramp-file-name filename nil
-      ;; We do not want to replace environment variables, again.
+      ;; We do not want to replace environment variables, again.  "//"
+      ;; has a special meaning at the beginning of a file name on
+      ;; Cygwin and MS-Windows, we must remove it.
       (let (process-environment)
 	;; Ignore in LOCALNAME everything before "//" or "/~".
 	(when (stringp localname)
 	  (if (string-match "//\\(/\\|~\\)" localname)
-	      (setq filename (substitute-in-file-name localname))
+	      (setq filename
+                    (replace-regexp-in-string
+                     "\\`/+" "/" (substitute-in-file-name localname)))
 	    (setq filename
 		  (concat (file-remote-p filename)
-			  (tramp-run-real-handler
-			   'substitute-in-file-name (list localname)))))))
+			  (replace-regexp-in-string
+                           "\\`/+" "/" (substitute-in-file-name localname)))))))
       ;; "/m:h:~" does not work for completion.  We use "/m:h:~/".
       (if (and (stringp localname) (string-equal "~" localname))
 	  (concat filename "/")

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-30 10:43     ` Michael Albinus
@ 2018-07-30 12:17       ` Ken Brown
  2018-07-30 14:45         ` Eli Zaretskii
  2018-07-31  4:58         ` Michael Albinus
  0 siblings, 2 replies; 27+ messages in thread
From: Ken Brown @ 2018-07-30 12:17 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32304

On 7/30/2018 6:43 AM, Michael Albinus wrote:

Hi Michael,

> There's another patch, could you pls check?

Yes, that fixes it on Cygwin.  Thanks.

Best regards,

Ken






^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-30 12:17       ` Ken Brown
@ 2018-07-30 14:45         ` Eli Zaretskii
  2018-07-30 20:50           ` Michael Albinus
  2018-07-31  4:58         ` Michael Albinus
  1 sibling, 1 reply; 27+ messages in thread
From: Eli Zaretskii @ 2018-07-30 14:45 UTC (permalink / raw)
  To: Ken Brown; +Cc: 32304, michael.albinus

> From: Ken Brown <kbrown@cornell.edu>
> Date: Mon, 30 Jul 2018 08:17:48 -0400
> Cc: 32304@debbugs.gnu.org
> 
> On 7/30/2018 6:43 AM, Michael Albinus wrote:
> 
> Hi Michael,
> 
> > There's another patch, could you pls check?
> 
> Yes, that fixes it on Cygwin.  Thanks.

The MinGW build also passes, but the other two still fail:

  2 unexpected results:
     FAILED  tramp-test43-auto-load
     FAILED  tramp-test44-unload

Should they be skipped?

Thanks.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-30 14:45         ` Eli Zaretskii
@ 2018-07-30 20:50           ` Michael Albinus
  2018-07-31  2:34             ` Eli Zaretskii
  0 siblings, 1 reply; 27+ messages in thread
From: Michael Albinus @ 2018-07-30 20:50 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32304

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

> The MinGW build also passes, but the other two still fail:
>
>   2 unexpected results:
>      FAILED  tramp-test43-auto-load
>      FAILED  tramp-test44-unload
>
> Should they be skipped?

I would like to see the ERT error messages.

> Thanks.

Best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-30 20:50           ` Michael Albinus
@ 2018-07-31  2:34             ` Eli Zaretskii
  2018-07-31  5:00               ` Michael Albinus
  2018-08-08 13:48               ` Michael Albinus
  0 siblings, 2 replies; 27+ messages in thread
From: Eli Zaretskii @ 2018-07-31  2:34 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32304

[-- Attachment #1: Type: text/plain, Size: 434 bytes --]

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: Ken Brown <kbrown@cornell.edu>,  32304@debbugs.gnu.org
> Date: Mon, 30 Jul 2018 22:50:39 +0200
> 
> > The MinGW build also passes, but the other two still fail:
> >
> >   2 unexpected results:
> >      FAILED  tramp-test43-auto-load
> >      FAILED  tramp-test44-unload
> >
> > Should they be skipped?
> 
> I would like to see the ERT error messages.

The full log is attached.


[-- Attachment #2: tramp-tests.log --]
[-- Type: application/octet-stream, Size: 9214 bytes --]

Running 63 tests (2018-07-30 17:40:44+0300, selector `(not (tag :unstable))')
   failed   1/63  tramp-test00-availability (0.000000 sec)
   passed   2/63  tramp-test01-file-name-syntax (0.000000 sec)
   passed   3/63  tramp-test01-file-name-syntax-separate (0.281250 sec)
   passed   4/63  tramp-test01-file-name-syntax-simplified (0.015625 sec)
   passed   5/63  tramp-test02-file-name-dissect (0.171875 sec)
   passed   6/63  tramp-test02-file-name-dissect-separate (0.265625 sec)
   passed   7/63  tramp-test02-file-name-dissect-simplified (0.062500 sec)
   passed   8/63  tramp-test03-file-name-defaults (0.296875 sec)
  skipped   9/63  tramp-test03-file-name-host-rules (0.000000 sec)
  skipped  10/63  tramp-test03-file-name-method-rules (0.015625 sec)
   passed  11/63  tramp-test04-substitute-in-file-name (0.015625 sec)
   passed  12/63  tramp-test05-expand-file-name (0.000000 sec)
  skipped  13/63  tramp-test05-expand-file-name-relative (0.000000 sec)
   passed  14/63  tramp-test06-directory-file-name (0.015625 sec)
  skipped  15/63  tramp-test07-file-exists-p (0.000000 sec)
  skipped  16/63  tramp-test08-file-local-copy (0.000000 sec)
  skipped  17/63  tramp-test09-insert-file-contents (0.000000 sec)
  skipped  18/63  tramp-test10-write-region (0.000000 sec)
  skipped  19/63  tramp-test11-copy-file (0.000000 sec)
  skipped  20/63  tramp-test12-rename-file (0.000000 sec)
  skipped  21/63  tramp-test13-make-directory (0.000000 sec)
  skipped  22/63  tramp-test14-delete-directory (0.000000 sec)
  skipped  23/63  tramp-test15-copy-directory (0.000000 sec)
  skipped  24/63  tramp-test16-directory-files (0.000000 sec)
  skipped  25/63  tramp-test16-file-expand-wildcards (0.000000 sec)
  skipped  26/63  tramp-test17-dired-with-wildcards (0.000000 sec)
  skipped  27/63  tramp-test17-insert-directory (0.000000 sec)
  skipped  28/63  tramp-test18-file-attributes (0.000000 sec)
  skipped  29/63  tramp-test19-directory-files-and-attributes (0.000000 sec)
  skipped  30/63  tramp-test20-file-modes (0.000000 sec)
  skipped  31/63  tramp-test21-file-links (0.000000 sec)
  skipped  32/63  tramp-test22-file-times (0.000000 sec)
  skipped  33/63  tramp-test23-visited-file-modtime (0.000000 sec)
  skipped  34/63  tramp-test24-file-acl (0.000000 sec)
  skipped  35/63  tramp-test25-file-selinux (0.000000 sec)
  skipped  36/63  tramp-test26-file-name-completion (0.000000 sec)
  skipped  37/63  tramp-test27-load (0.000000 sec)
  skipped  38/63  tramp-test28-process-file (0.000000 sec)
  skipped  39/63  tramp-test29-start-file-process (0.000000 sec)
  skipped  40/63  tramp-test30-interrupt-process (0.000000 sec)
  skipped  41/63  tramp-test31-shell-command (0.000000 sec)
  skipped  42/63  tramp-test32-environment-variables (0.000000 sec)
  skipped  43/63  tramp-test32-environment-variables-and-port-numbers (0.000000 sec)
  skipped  44/63  tramp-test33-explicit-shell-file-name (0.000000 sec)
  skipped  45/63  tramp-test34-exec-path (0.000000 sec)
  skipped  46/63  tramp-test35-vc-registered (0.000000 sec)
  skipped  47/63  tramp-test36-make-auto-save-file-name (0.000000 sec)
  skipped  48/63  tramp-test37-find-backup-file-name (0.000000 sec)
  skipped  49/63  tramp-test38-make-nearby-temp-file (0.000000 sec)
  skipped  50/63  tramp-test39-special-characters (0.000000 sec)
  skipped  51/63  tramp-test39-special-characters-with-ls (0.000000 sec)
  skipped  52/63  tramp-test39-special-characters-with-perl (0.000000 sec)
  skipped  53/63  tramp-test39-special-characters-with-stat (0.000000 sec)
  skipped  54/63  tramp-test40-utf8 (0.000000 sec)
  skipped  55/63  tramp-test40-utf8-with-ls (0.000000 sec)
  skipped  56/63  tramp-test40-utf8-with-perl (0.000000 sec)
  skipped  57/63  tramp-test40-utf8-with-stat (0.000000 sec)
  skipped  58/63  tramp-test41-file-system-info (0.000000 sec)
Test tramp-test43-auto-load backtrace:
  signal(ert-test-failed (((should (string-match "Tramp loaded: t[\n\r]
  ert-fail(((should (string-match "Tramp loaded: t[\n\r]+" (shell-comma
  (if (unwind-protect (setq value-5650 (apply fn-5648 args-5649)) (set
  (let (form-description-5652) (if (unwind-protect (setq value-5650 (a
  (let ((value-5650 'ert-form-evaluation-aborted-5651)) (let (form-des
  (let* ((fn-5648 #'string-match) (args-5649 (condition-case err (let 
  (let ((default-directory (expand-file-name temporary-file-directory)
  (closure (t) nil (let ((default-directory (expand-file-name temporar
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name tramp-test43-auto-load :documentation
  ert-run-or-rerun-test(#s(ert--stats :selector (not (tag :unstable)) 
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/net/tramp-tests.el" 
  command-line()
  normal-top-level()
Test tramp-test43-auto-load condition:
    (ert-test-failed
     ((should
       (string-match "Tramp loaded: t[
\r]+"
		     (shell-command-to-string ...)))
      :form
      (string-match "Tramp loaded: t[
\r]+" "Tramp loaded: nil
")
      :value nil))
   FAILED  59/63  tramp-test43-auto-load (0.203125 sec)
   passed  60/63  tramp-test43-delay-load (1.843750 sec)
  skipped  61/63  tramp-test43-recursive-load (0.000000 sec)
   passed  62/63  tramp-test43-remote-load-path (1.765625 sec)
Test tramp-test44-unload backtrace:
  signal(ert-test-failed ("`tramp-register-archive-file-name-handler' 
  ert-fail("`tramp-register-archive-file-name-handler' still bound")
  (and (or (and (boundp x) (null (local-variable-if-set-p x))) (and (f
  (closure (t) (x) (and (or (and (boundp x) (null (local-variable-if-s
  mapatoms((closure (t) (x) (and (or (and (boundp x) (null (local-vari
  (progn (unload-feature 'tramp 'force) (let* ((fn-5690 #'featurep) (a
  (if (featurep 'tramp) (progn (unload-feature 'tramp 'force) (let* ((
  (closure (t) nil (let ((value-5683 (gensym "ert-form-evaluation-abor
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name tramp-test44-unload :documentation "C
  ert-run-or-rerun-test(#s(ert--stats :selector (not (tag :unstable)) 
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/net/tramp-tests.el" 
  command-line()
  normal-top-level()
Test tramp-test44-unload condition:
    (ert-test-failed "`tramp-register-archive-file-name-handler' still bound")
   FAILED  63/63  tramp-test44-unload (0.359375 sec)

Ran 63 tests, 13 results as expected, 2 unexpected, 48 skipped (2018-07-30 17:40:53+0300, 9.000000 sec)
1 expected failures

2 unexpected results:
   FAILED  tramp-test43-auto-load
   FAILED  tramp-test44-unload

48 skipped results:
  SKIPPED  tramp-test03-file-name-host-rules
  SKIPPED  tramp-test03-file-name-method-rules
  SKIPPED  tramp-test05-expand-file-name-relative
  SKIPPED  tramp-test07-file-exists-p
  SKIPPED  tramp-test08-file-local-copy
  SKIPPED  tramp-test09-insert-file-contents
  SKIPPED  tramp-test10-write-region
  SKIPPED  tramp-test11-copy-file
  SKIPPED  tramp-test12-rename-file
  SKIPPED  tramp-test13-make-directory
  SKIPPED  tramp-test14-delete-directory
  SKIPPED  tramp-test15-copy-directory
  SKIPPED  tramp-test16-directory-files
  SKIPPED  tramp-test16-file-expand-wildcards
  SKIPPED  tramp-test17-dired-with-wildcards
  SKIPPED  tramp-test17-insert-directory
  SKIPPED  tramp-test18-file-attributes
  SKIPPED  tramp-test19-directory-files-and-attributes
  SKIPPED  tramp-test20-file-modes
  SKIPPED  tramp-test21-file-links
  SKIPPED  tramp-test22-file-times
  SKIPPED  tramp-test23-visited-file-modtime
  SKIPPED  tramp-test24-file-acl
  SKIPPED  tramp-test25-file-selinux
  SKIPPED  tramp-test26-file-name-completion
  SKIPPED  tramp-test27-load
  SKIPPED  tramp-test28-process-file
  SKIPPED  tramp-test29-start-file-process
  SKIPPED  tramp-test30-interrupt-process
  SKIPPED  tramp-test31-shell-command
  SKIPPED  tramp-test32-environment-variables
  SKIPPED  tramp-test32-environment-variables-and-port-numbers
  SKIPPED  tramp-test33-explicit-shell-file-name
  SKIPPED  tramp-test34-exec-path
  SKIPPED  tramp-test35-vc-registered
  SKIPPED  tramp-test36-make-auto-save-file-name
  SKIPPED  tramp-test37-find-backup-file-name
  SKIPPED  tramp-test38-make-nearby-temp-file
  SKIPPED  tramp-test39-special-characters
  SKIPPED  tramp-test39-special-characters-with-ls
  SKIPPED  tramp-test39-special-characters-with-perl
  SKIPPED  tramp-test39-special-characters-with-stat
  SKIPPED  tramp-test40-utf8
  SKIPPED  tramp-test40-utf8-with-ls
  SKIPPED  tramp-test40-utf8-with-perl
  SKIPPED  tramp-test40-utf8-with-stat
  SKIPPED  tramp-test41-file-system-info
  SKIPPED  tramp-test43-recursive-load


^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-30 12:17       ` Ken Brown
  2018-07-30 14:45         ` Eli Zaretskii
@ 2018-07-31  4:58         ` Michael Albinus
  1 sibling, 0 replies; 27+ messages in thread
From: Michael Albinus @ 2018-07-31  4:58 UTC (permalink / raw)
  To: Ken Brown; +Cc: 32304

Ken Brown <kbrown@cornell.edu> writes:

> Hi Michael,

Hi Ken,

>> There's another patch, could you pls check?
>
> Yes, that fixes it on Cygwin.  Thanks.

Thanks for testing (also to Eli)! I've committed the patch to master.

> Best regards,
>
> Ken

Best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-31  2:34             ` Eli Zaretskii
@ 2018-07-31  5:00               ` Michael Albinus
  2018-08-08 13:48               ` Michael Albinus
  1 sibling, 0 replies; 27+ messages in thread
From: Michael Albinus @ 2018-07-31  5:00 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32304

Eli Zaretskii <eliz@gnu.org> writes:

>> > The MinGW build also passes, but the other two still fail:
>> >
>> >   2 unexpected results:
>> >      FAILED  tramp-test43-auto-load
>> >      FAILED  tramp-test44-unload
>> >
>> > Should they be skipped?
>> 
>> I would like to see the ERT error messages.
>
> The full log is attached.

Thanks. I will work on it when I have access to an MS Windows machine;
likely next week.

Best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-29 16:27 ` Michael Albinus
  2018-07-29 16:47   ` Ken Brown
  2018-07-29 17:26   ` Eli Zaretskii
@ 2018-07-31 14:46   ` Andy Moreton
  2018-07-31 20:57     ` Michael Albinus
  2 siblings, 1 reply; 27+ messages in thread
From: Andy Moreton @ 2018-07-31 14:46 UTC (permalink / raw)
  To: 32304

On Sun 29 Jul 2018, Michael Albinus wrote:

> Ken Brown <kbrown@cornell.edu> writes:
>
> Hi Ken,
>
>> "//" has a special meaning at the beginning of a file name on Cygwin and
>> MS-Windows; see the comment near the beginning of
>> search_embedded_absfilename.  So I don't think there's a real bug here.

POSIX specifies that "//" is handled in an implementation defined
manner, so Cygwin and Windows are not really special.

See POSIX section 4.13 Pathname Resolution:

    A pathname consisting of a single <slash> shall resolve to the root
    directory of the process. A null pathname shall not be successfully
    resolved. If a pathname begins with two successive <slash> characters,
    the first component following the leading <slash> characters may be
    interpreted in an implementation-defined manner, although more than two
    leading <slash> characters shall be treated as a single <slash>
    character.

<http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_13>







^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-31 14:46   ` Andy Moreton
@ 2018-07-31 20:57     ` Michael Albinus
  2018-07-31 22:07       ` Ken Brown
  0 siblings, 1 reply; 27+ messages in thread
From: Michael Albinus @ 2018-07-31 20:57 UTC (permalink / raw)
  To: Andy Moreton; +Cc: 32304

Andy Moreton <andrewjmoreton@gmail.com> writes:

Hi Andy,

> POSIX specifies that "//" is handled in an implementation defined
> manner, so Cygwin and Windows are not really special.
>
> See POSIX section 4.13 Pathname Resolution:
>
>     A pathname consisting of a single <slash> shall resolve to the root
>     directory of the process. A null pathname shall not be successfully
>     resolved. If a pathname begins with two successive <slash> characters,
>     the first component following the leading <slash> characters may be
>     interpreted in an implementation-defined manner, although more than two
>     leading <slash> characters shall be treated as a single <slash>
>     character.

But the Emacs implementation handles only Cygwin and MS Windows as
special. This is POSIX conform, because it declares this as
implementation specific.

The question is, whether Tramp should follow this. It does

(substitute-in-file-name "/ssh::/a///b") => "/b"

Maybe, it shall return on Cygwin and MS-Windows

(substitute-in-file-name "/ssh::/a///b") => "//b"

Don't know. Is this too sophisticated?

Best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-31 20:57     ` Michael Albinus
@ 2018-07-31 22:07       ` Ken Brown
  2018-08-01 20:51         ` Michael Albinus
  0 siblings, 1 reply; 27+ messages in thread
From: Ken Brown @ 2018-07-31 22:07 UTC (permalink / raw)
  To: Michael Albinus, Andy Moreton; +Cc: 32304

On 7/31/2018 4:57 PM, Michael Albinus wrote:
> The question is, whether Tramp should follow this. It does
> 
> (substitute-in-file-name "/ssh::/a///b") => "/b"

This seems right to me.  After all, the repeated slash is not at the 
beginning of the (total) file name.

> Maybe, it shall return on Cygwin and MS-Windows
> 
> (substitute-in-file-name "/ssh::/a///b") => "//b"

I can't think of any situation where this would be useful.

Ken






^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-31 22:07       ` Ken Brown
@ 2018-08-01 20:51         ` Michael Albinus
  0 siblings, 0 replies; 27+ messages in thread
From: Michael Albinus @ 2018-08-01 20:51 UTC (permalink / raw)
  To: Ken Brown; +Cc: 32304, Andy Moreton

Ken Brown <kbrown@cornell.edu> writes:

> I can't think of any situation where this would be useful.

OK, I don't do anything.

> Ken

Best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-07-31  2:34             ` Eli Zaretskii
  2018-07-31  5:00               ` Michael Albinus
@ 2018-08-08 13:48               ` Michael Albinus
  2018-08-08 14:35                 ` Eli Zaretskii
  1 sibling, 1 reply; 27+ messages in thread
From: Michael Albinus @ 2018-08-08 13:48 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32304

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

>> >   2 unexpected results:
>> >      FAILED  tramp-test43-auto-load
>> >      FAILED  tramp-test44-unload
>> >
>> > Should they be skipped?

I cannot find any MS Windows build of Emacs 27. So I have used the
Cygwin Emacs 27.0.50 I've got recently from Ken.

> The full log is attached.
>
> Test tramp-test43-auto-load condition:
>     (ert-test-failed
>      ((should
>        (string-match "Tramp loaded: t[
> ]+"
> 		     (shell-command-to-string ...)))
>       :form
>       (string-match "Tramp loaded: t[
> ]+" "Tramp loaded: nil
> ")
>       :value nil))
>    FAILED  59/63  tramp-test43-auto-load (0.203125 sec)

This error didn't happen with the Cygnus Emacs :-(

> Test tramp-test44-unload condition:
>     (ert-test-failed "`tramp-register-archive-file-name-handler' still bound")
>    FAILED  63/63  tramp-test44-unload (0.359375 sec)

Cygnus Emacs has reported also an error for this test, but with a
different message. I have fixed this and committed to master, maybe it
is fixed for you as well.

Anyway, for further investigations I'll need an Emacs 27 for MS
Windows. Do you know where I could get a recent one? I have found only
Emacs 26.1 for MS Windows.

Best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-08-08 13:48               ` Michael Albinus
@ 2018-08-08 14:35                 ` Eli Zaretskii
  2018-08-08 14:42                   ` Eli Zaretskii
  2018-08-08 15:26                   ` Michael Albinus
  0 siblings, 2 replies; 27+ messages in thread
From: Eli Zaretskii @ 2018-08-08 14:35 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32304

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: kbrown@cornell.edu,  32304@debbugs.gnu.org
> Date: Wed, 08 Aug 2018 15:48:07 +0200
> 
> Cygnus Emacs has reported also an error for this test, but with a
> different message. I have fixed this and committed to master, maybe it
> is fixed for you as well.

Thanks, will do.

> Anyway, for further investigations I'll need an Emacs 27 for MS
> Windows. Do you know where I could get a recent one?

How recent must "recent" be?  The last snapshot here:

  https://alpha.gnu.org/gnu/emacs/pretest/windows/emacs-27/

is from May 4.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-08-08 14:35                 ` Eli Zaretskii
@ 2018-08-08 14:42                   ` Eli Zaretskii
  2018-08-08 18:06                     ` Michael Albinus
  2018-08-08 15:26                   ` Michael Albinus
  1 sibling, 1 reply; 27+ messages in thread
From: Eli Zaretskii @ 2018-08-08 14:42 UTC (permalink / raw)
  To: michael.albinus; +Cc: 32304

[-- Attachment #1: Type: text/plain, Size: 510 bytes --]

> Date: Wed, 08 Aug 2018 17:35:22 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: 32304@debbugs.gnu.org
> 
> > From: Michael Albinus <michael.albinus@gmx.de>
> > Cc: kbrown@cornell.edu,  32304@debbugs.gnu.org
> > Date: Wed, 08 Aug 2018 15:48:07 +0200
> > 
> > Cygnus Emacs has reported also an error for this test, but with a
> > different message. I have fixed this and committed to master, maybe it
> > is fixed for you as well.
> 
> Thanks, will do.

It still fails, I attach the full log below.

Thanks.


[-- Attachment #2: tramp-tests.log --]
[-- Type: application/octet-stream, Size: 9214 bytes --]

Running 63 tests (2018-08-08 17:40:23+0300, selector `(not (tag :unstable))')
   failed   1/63  tramp-test00-availability (0.000000 sec)
   passed   2/63  tramp-test01-file-name-syntax (0.000000 sec)
   passed   3/63  tramp-test01-file-name-syntax-separate (0.281250 sec)
   passed   4/63  tramp-test01-file-name-syntax-simplified (0.000000 sec)
   passed   5/63  tramp-test02-file-name-dissect (0.203125 sec)
   passed   6/63  tramp-test02-file-name-dissect-separate (0.265625 sec)
   passed   7/63  tramp-test02-file-name-dissect-simplified (0.062500 sec)
   passed   8/63  tramp-test03-file-name-defaults (0.296875 sec)
  skipped   9/63  tramp-test03-file-name-host-rules (0.000000 sec)
  skipped  10/63  tramp-test03-file-name-method-rules (0.000000 sec)
   passed  11/63  tramp-test04-substitute-in-file-name (0.031250 sec)
   passed  12/63  tramp-test05-expand-file-name (0.000000 sec)
  skipped  13/63  tramp-test05-expand-file-name-relative (0.000000 sec)
   passed  14/63  tramp-test06-directory-file-name (0.000000 sec)
  skipped  15/63  tramp-test07-file-exists-p (0.000000 sec)
  skipped  16/63  tramp-test08-file-local-copy (0.000000 sec)
  skipped  17/63  tramp-test09-insert-file-contents (0.000000 sec)
  skipped  18/63  tramp-test10-write-region (0.000000 sec)
  skipped  19/63  tramp-test11-copy-file (0.015625 sec)
  skipped  20/63  tramp-test12-rename-file (0.000000 sec)
  skipped  21/63  tramp-test13-make-directory (0.000000 sec)
  skipped  22/63  tramp-test14-delete-directory (0.000000 sec)
  skipped  23/63  tramp-test15-copy-directory (0.000000 sec)
  skipped  24/63  tramp-test16-directory-files (0.000000 sec)
  skipped  25/63  tramp-test16-file-expand-wildcards (0.000000 sec)
  skipped  26/63  tramp-test17-dired-with-wildcards (0.000000 sec)
  skipped  27/63  tramp-test17-insert-directory (0.000000 sec)
  skipped  28/63  tramp-test18-file-attributes (0.000000 sec)
  skipped  29/63  tramp-test19-directory-files-and-attributes (0.000000 sec)
  skipped  30/63  tramp-test20-file-modes (0.000000 sec)
  skipped  31/63  tramp-test21-file-links (0.000000 sec)
  skipped  32/63  tramp-test22-file-times (0.000000 sec)
  skipped  33/63  tramp-test23-visited-file-modtime (0.000000 sec)
  skipped  34/63  tramp-test24-file-acl (0.000000 sec)
  skipped  35/63  tramp-test25-file-selinux (0.000000 sec)
  skipped  36/63  tramp-test26-file-name-completion (0.015625 sec)
  skipped  37/63  tramp-test27-load (0.000000 sec)
  skipped  38/63  tramp-test28-process-file (0.000000 sec)
  skipped  39/63  tramp-test29-start-file-process (0.000000 sec)
  skipped  40/63  tramp-test30-interrupt-process (0.000000 sec)
  skipped  41/63  tramp-test31-shell-command (0.000000 sec)
  skipped  42/63  tramp-test32-environment-variables (0.000000 sec)
  skipped  43/63  tramp-test32-environment-variables-and-port-numbers (0.000000 sec)
  skipped  44/63  tramp-test33-explicit-shell-file-name (0.000000 sec)
  skipped  45/63  tramp-test34-exec-path (0.000000 sec)
  skipped  46/63  tramp-test35-vc-registered (0.000000 sec)
  skipped  47/63  tramp-test36-make-auto-save-file-name (0.000000 sec)
  skipped  48/63  tramp-test37-find-backup-file-name (0.000000 sec)
  skipped  49/63  tramp-test38-make-nearby-temp-file (0.000000 sec)
  skipped  50/63  tramp-test39-special-characters (0.000000 sec)
  skipped  51/63  tramp-test39-special-characters-with-ls (0.000000 sec)
  skipped  52/63  tramp-test39-special-characters-with-perl (0.000000 sec)
  skipped  53/63  tramp-test39-special-characters-with-stat (0.000000 sec)
  skipped  54/63  tramp-test40-utf8 (0.000000 sec)
  skipped  55/63  tramp-test40-utf8-with-ls (0.000000 sec)
  skipped  56/63  tramp-test40-utf8-with-perl (0.000000 sec)
  skipped  57/63  tramp-test40-utf8-with-stat (0.000000 sec)
  skipped  58/63  tramp-test41-file-system-info (0.000000 sec)
Test tramp-test43-auto-load backtrace:
  signal(ert-test-failed (((should (string-match "Tramp loaded: t[\n\1
  ert-fail(((should (string-match "Tramp loaded: t[\n\15]+" (shell-com
  (if (unwind-protect (setq value-5650 (apply fn-5648 args-5649)) (set
  (let (form-description-5652) (if (unwind-protect (setq value-5650 (a
  (let ((value-5650 'ert-form-evaluation-aborted-5651)) (let (form-des
  (let* ((fn-5648 #'string-match) (args-5649 (condition-case err (let 
  (let ((default-directory (expand-file-name temporary-file-directory)
  (closure (t) nil (let ((default-directory (expand-file-name temporar
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name tramp-test43-auto-load :documentation
  ert-run-or-rerun-test(#s(ert--stats :selector (not ...) :tests [... 
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))))
  command-line-1((#("-L" 0 2 (charset cp862)) #(";." 0 2 (charset cp86
  command-line()
  normal-top-level()
Test tramp-test43-auto-load condition:
    (ert-test-failed
     ((should
       (string-match "Tramp loaded: t[
\r]+"
		     (shell-command-to-string ...)))
      :form
      (string-match "Tramp loaded: t[
\r]+" "Tramp loaded: nil
")
      :value nil))
   FAILED  59/63  tramp-test43-auto-load (0.203125 sec)
   passed  60/63  tramp-test43-delay-load (1.937500 sec)
  skipped  61/63  tramp-test43-recursive-load (0.000000 sec)
   passed  62/63  tramp-test43-remote-load-path (1.765625 sec)
Test tramp-test44-unload backtrace:
  signal(ert-test-failed ("`tramp-register-archive-file-name-handler' 
  ert-fail("`tramp-register-archive-file-name-handler' still b...")
  (and (or (and (boundp x) (null (local-variable-if-set-p x))) (and (f
  (closure (t) (x) (and (or (and (boundp x) (null (local-variable-if-s
  mapatoms((closure (t) (x) (and (or (and (boundp x) (null (local-vari
  (progn (unload-feature 'tramp 'force) (let* ((fn-5690 #'featurep) (a
  (if (featurep 'tramp) (progn (unload-feature 'tramp 'force) (let* ((
  (closure (t) nil (let ((value-5683 (gensym "ert-form-evaluation-abor
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name tramp-test44-unload :documentation "C
  ert-run-or-rerun-test(#s(ert--stats :selector (not ...) :tests [... 
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))))
  command-line-1((#("-L" 0 2 (charset cp862)) #(";." 0 2 (charset cp86
  command-line()
  normal-top-level()
Test tramp-test44-unload condition:
    (ert-test-failed "`tramp-register-archive-file-name-handler' still bound")
   FAILED  63/63  tramp-test44-unload (0.375000 sec)

Ran 63 tests, 13 results as expected, 2 unexpected, 48 skipped (2018-08-08 17:40:38+0300, 15.562500 sec)
1 expected failures

2 unexpected results:
   FAILED  tramp-test43-auto-load
   FAILED  tramp-test44-unload

48 skipped results:
  SKIPPED  tramp-test03-file-name-host-rules
  SKIPPED  tramp-test03-file-name-method-rules
  SKIPPED  tramp-test05-expand-file-name-relative
  SKIPPED  tramp-test07-file-exists-p
  SKIPPED  tramp-test08-file-local-copy
  SKIPPED  tramp-test09-insert-file-contents
  SKIPPED  tramp-test10-write-region
  SKIPPED  tramp-test11-copy-file
  SKIPPED  tramp-test12-rename-file
  SKIPPED  tramp-test13-make-directory
  SKIPPED  tramp-test14-delete-directory
  SKIPPED  tramp-test15-copy-directory
  SKIPPED  tramp-test16-directory-files
  SKIPPED  tramp-test16-file-expand-wildcards
  SKIPPED  tramp-test17-dired-with-wildcards
  SKIPPED  tramp-test17-insert-directory
  SKIPPED  tramp-test18-file-attributes
  SKIPPED  tramp-test19-directory-files-and-attributes
  SKIPPED  tramp-test20-file-modes
  SKIPPED  tramp-test21-file-links
  SKIPPED  tramp-test22-file-times
  SKIPPED  tramp-test23-visited-file-modtime
  SKIPPED  tramp-test24-file-acl
  SKIPPED  tramp-test25-file-selinux
  SKIPPED  tramp-test26-file-name-completion
  SKIPPED  tramp-test27-load
  SKIPPED  tramp-test28-process-file
  SKIPPED  tramp-test29-start-file-process
  SKIPPED  tramp-test30-interrupt-process
  SKIPPED  tramp-test31-shell-command
  SKIPPED  tramp-test32-environment-variables
  SKIPPED  tramp-test32-environment-variables-and-port-numbers
  SKIPPED  tramp-test33-explicit-shell-file-name
  SKIPPED  tramp-test34-exec-path
  SKIPPED  tramp-test35-vc-registered
  SKIPPED  tramp-test36-make-auto-save-file-name
  SKIPPED  tramp-test37-find-backup-file-name
  SKIPPED  tramp-test38-make-nearby-temp-file
  SKIPPED  tramp-test39-special-characters
  SKIPPED  tramp-test39-special-characters-with-ls
  SKIPPED  tramp-test39-special-characters-with-perl
  SKIPPED  tramp-test39-special-characters-with-stat
  SKIPPED  tramp-test40-utf8
  SKIPPED  tramp-test40-utf8-with-ls
  SKIPPED  tramp-test40-utf8-with-perl
  SKIPPED  tramp-test40-utf8-with-stat
  SKIPPED  tramp-test41-file-system-info
  SKIPPED  tramp-test43-recursive-load


^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-08-08 14:35                 ` Eli Zaretskii
  2018-08-08 14:42                   ` Eli Zaretskii
@ 2018-08-08 15:26                   ` Michael Albinus
  2018-08-08 15:57                     ` Eli Zaretskii
  1 sibling, 1 reply; 27+ messages in thread
From: Michael Albinus @ 2018-08-08 15:26 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32304

Eli Zaretskii <eliz@gnu.org> writes:

>> Anyway, for further investigations I'll need an Emacs 27 for MS
>> Windows. Do you know where I could get a recent one?
>
> How recent must "recent" be?  The last snapshot here:
>
>   https://alpha.gnu.org/gnu/emacs/pretest/windows/emacs-27/
>
> is from May 4.

I could swear I've checked there, but maybe I'm dreaming.

Should be sufficient; for my tests I will just replace the tramp* files.

Thanks, and best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-08-08 15:26                   ` Michael Albinus
@ 2018-08-08 15:57                     ` Eli Zaretskii
  0 siblings, 0 replies; 27+ messages in thread
From: Eli Zaretskii @ 2018-08-08 15:57 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32304

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: kbrown@cornell.edu,  32304@debbugs.gnu.org
> Date: Wed, 08 Aug 2018 17:26:00 +0200
> 
> >   https://alpha.gnu.org/gnu/emacs/pretest/windows/emacs-27/
> >
> > is from May 4.
> 
> I could swear I've checked there, but maybe I'm dreaming.

You've probably looked in

  https://alpha.gnu.org/gnu/emacs/windows/

It's tricky ;-)





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-08-08 14:42                   ` Eli Zaretskii
@ 2018-08-08 18:06                     ` Michael Albinus
  2018-08-09 12:24                       ` Michael Albinus
  0 siblings, 1 reply; 27+ messages in thread
From: Michael Albinus @ 2018-08-08 18:06 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32304

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

>    FAILED  59/63  tramp-test43-auto-load (0.203125 sec)

This must be skipped indeed in your case. It uses
tramp-test-temporary-file-directory, which isn't remote here. I've added
the skip form.

>    FAILED  63/63  tramp-test44-unload (0.375000 sec)

This is strange. This test fails only, if most of previous tests didn't
run, like on MS Windows, where almost all tests are skipped. I could
reproduce the error on my GNU/Linux system with

# make -C test tramp-tests SELECTOR='"44"'

This makes it more simple for me to debug. For the time being, I've
tagged the test as :unstable.

Best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-08-08 18:06                     ` Michael Albinus
@ 2018-08-09 12:24                       ` Michael Albinus
  2018-08-09 15:18                         ` Eli Zaretskii
  0 siblings, 1 reply; 27+ messages in thread
From: Michael Albinus @ 2018-08-09 12:24 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32304

Michael Albinus <michael.albinus@gmx.de> writes:

Hi Eli,

>>    FAILED  63/63  tramp-test44-unload (0.375000 sec)
>
> This is strange. This test fails only, if most of previous tests didn't
> run, like on MS Windows, where almost all tests are skipped. I could
> reproduce the error on my GNU/Linux system with
>
> # make -C test tramp-tests SELECTOR='"44"'
>
> This makes it more simple for me to debug. For the time being, I've
> tagged the test as :unstable.

Should be fixed now in master. Could you, pls recheck? (I haven't tested
on MS Windows today)

Thanks, and best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-08-09 12:24                       ` Michael Albinus
@ 2018-08-09 15:18                         ` Eli Zaretskii
  2018-08-10  7:27                           ` Michael Albinus
  0 siblings, 1 reply; 27+ messages in thread
From: Eli Zaretskii @ 2018-08-09 15:18 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32304

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: 32304@debbugs.gnu.org
> Date: Thu, 09 Aug 2018 14:24:33 +0200
> 
> >>    FAILED  63/63  tramp-test44-unload (0.375000 sec)
> >
> > This is strange. This test fails only, if most of previous tests didn't
> > run, like on MS Windows, where almost all tests are skipped. I could
> > reproduce the error on my GNU/Linux system with
> >
> > # make -C test tramp-tests SELECTOR='"44"'
> >
> > This makes it more simple for me to debug. For the time being, I've
> > tagged the test as :unstable.
> 
> Should be fixed now in master. Could you, pls recheck? (I haven't tested
> on MS Windows today)

Thanks, it works now as expected.





^ permalink raw reply	[flat|nested] 27+ messages in thread

* bug#32304: 27.0.50; tramp-tests issue with double slash
  2018-08-09 15:18                         ` Eli Zaretskii
@ 2018-08-10  7:27                           ` Michael Albinus
  0 siblings, 0 replies; 27+ messages in thread
From: Michael Albinus @ 2018-08-10  7:27 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32304-done

Version: 27.1

Eli Zaretskii <eliz@gnu.org> writes:

>> Should be fixed now in master. Could you, pls recheck? (I haven't tested
>> on MS Windows today)
>
> Thanks, it works now as expected.

Thanks for checking, I'm closing the bug.

Best regards, Michael.





^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2018-08-10  7:27 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-29 15:54 bug#32304: 27.0.50; tramp-tests issue with double slash Ken Brown
2018-07-29 16:27 ` Michael Albinus
2018-07-29 16:47   ` Ken Brown
2018-07-29 16:55     ` Michael Albinus
2018-07-29 17:00       ` Ken Brown
2018-07-30 10:43     ` Michael Albinus
2018-07-30 12:17       ` Ken Brown
2018-07-30 14:45         ` Eli Zaretskii
2018-07-30 20:50           ` Michael Albinus
2018-07-31  2:34             ` Eli Zaretskii
2018-07-31  5:00               ` Michael Albinus
2018-08-08 13:48               ` Michael Albinus
2018-08-08 14:35                 ` Eli Zaretskii
2018-08-08 14:42                   ` Eli Zaretskii
2018-08-08 18:06                     ` Michael Albinus
2018-08-09 12:24                       ` Michael Albinus
2018-08-09 15:18                         ` Eli Zaretskii
2018-08-10  7:27                           ` Michael Albinus
2018-08-08 15:26                   ` Michael Albinus
2018-08-08 15:57                     ` Eli Zaretskii
2018-07-31  4:58         ` Michael Albinus
2018-07-29 17:26   ` Eli Zaretskii
2018-07-30  8:26     ` Michael Albinus
2018-07-31 14:46   ` Andy Moreton
2018-07-31 20:57     ` Michael Albinus
2018-07-31 22:07       ` Ken Brown
2018-08-01 20:51         ` Michael Albinus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).