all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#32226: shadowfile test failures
@ 2018-07-20 17:22 Glenn Morris
  2018-07-20 19:08 ` Eli Zaretskii
  2018-07-21 10:33 ` Michael Albinus
  0 siblings, 2 replies; 25+ messages in thread
From: Glenn Morris @ 2018-07-20 17:22 UTC (permalink / raw)
  To: 32226; +Cc: Michael Albinus

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

Package: emacs
Version: 26.1.50
Severity: minor

Hi,

Current emacs-26 branch on rhel 7.5, multiple shadowfile test failures,
please see attached log.


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

Running 10 tests (2018-07-20 07:07:25-0700)
   passed   1/10  shadow-test00-clusters
Test shadow-test01-sites backtrace:
  signal(ert-test-failed (((should (string-equal (system-name) (shadow
  ert-fail(((should (string-equal (system-name) (shadow-site-name prim
  #f(compiled-function () #<bytecode 0x40f4ed>)()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test01-sites :documentation "C
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or (tag :expensi
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
  eval((ert-run-tests-batch-and-exit (quote (not (or (tag :expensive-t
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests" "-
  command-line()
  normal-top-level()
Test shadow-test01-sites condition:
    (ert-test-failed
     ((should
       (string-equal
	(system-name)
	(shadow-site-name primary1)))
      :form
      (string-equal "my.host.com" "/my.host.com:")
      :value nil))
   FAILED   2/10  shadow-test01-sites
Test shadow-test02-files backtrace:
  signal(ert-test-failed (((should (equal (shadow-parse-name file) hup
  ert-fail(((should (equal (shadow-parse-name file) hup)) :form (equal
  #f(compiled-function () #<bytecode 0x4104c1>)()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test02-files :documentation "C
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or (tag :expensi
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
  eval((ert-run-tests-batch-and-exit (quote (not (or (tag :expensive-t
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests" "-
  command-line()
  normal-top-level()
Test shadow-test02-files condition:
    (ert-test-failed
     ((should
       (equal
	(shadow-parse-name file)
	hup))
      :form
      (equal
       (tramp-file-name nil nil nil "/my.host.com:" nil "/tmp/shadowfile-testsgn2IL6" nil)
       (tramp-file-name nil nil nil "my.host.com" nil "/tmp/shadowfile-testsgn2IL6" nil))
      :value nil :explanation
      (list-elt 4
		(arrays-of-different-length 19 17 "/my.host.com:" "my.host.com" first-mismatch-at 0))))
   FAILED   3/10  shadow-test02-files
   passed   4/10  shadow-test03-expand-cluster-in-file-name
Test shadow-test04-contract-file-name backtrace:
  signal(ert-test-failed (((should (string-equal (shadow-contract-file
  ert-fail(((should (string-equal (shadow-contract-file-name file) (co
  #f(compiled-function () #<bytecode 0x4114c1>)()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test04-contract-file-name :doc
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or (tag :expensi
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
  eval((ert-run-tests-batch-and-exit (quote (not (or (tag :expensive-t
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests" "-
  command-line()
  normal-top-level()
Test shadow-test04-contract-file-name condition:
    (ert-test-failed
     ((should
       (string-equal
	(shadow-contract-file-name file)
	(concat "/cluster:" file)))
      :form
      (string-equal "//my.host.com::/tmp/shadowfile-testsoTZaVf" "/cluster:/tmp/shadowfile-testsoTZaVf")
      :value nil))
   FAILED   5/10  shadow-test04-contract-file-name
Test shadow-test05-file-match backtrace:
  signal(ert-test-failed (((should (shadow-file-match (shadow-parse-na
  ert-fail(((should (shadow-file-match (shadow-parse-name (concat (fil
  #f(compiled-function () #<bytecode 0x4120c9>)()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test05-file-match :documentati
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or (tag :expensi
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
  eval((ert-run-tests-batch-and-exit (quote (not (or (tag :expensive-t
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests" "-
  command-line()
  normal-top-level()
Test shadow-test05-file-match condition:
    (ert-test-failed
     ((should
       (shadow-file-match
	(shadow-parse-name ...)
	file))
      :form
      (shadow-file-match
       (tramp-file-name "mock" nil nil "my.host.com" nil "/tmp/shadowfile-testsQREJwm" nil)
       "/tmp/shadowfile-testsQREJwm")
      :value nil))
   FAILED   6/10  shadow-test05-file-match
Test shadow-test06-literal-groups backtrace:
  signal(ert-test-failed (((should (member (format "/%s:%s" cluster1 (
  ert-fail(((should (member (format "/%s:%s" cluster1 (file-local-name
  #f(compiled-function () #<bytecode 0x4128f1>)()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test06-literal-groups :documen
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or (tag :expensi
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
  eval((ert-run-tests-batch-and-exit (quote (not (or (tag :expensive-t
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests" "-
  command-line()
  normal-top-level()
Test shadow-test06-literal-groups condition:
    (ert-test-failed
     ((should
       (member
	(format "/%s:%s" cluster1 ...)
	(car shadow-literal-groups)))
      :form
      (member "/cluster1:/tmp/shadowfile-tests32IRAs"
	      ("/cluster2:/tmp/shadowfile-testsKTOvEy" "/cluster1://my.host.com::/tmp/shadowfile-tests32IRAs"))
      :value nil))
   FAILED   7/10  shadow-test06-literal-groups
Test shadow-test07-regexp-groups backtrace:
  signal(ert-test-failed (((should (member (concat (shadow-site-primar
  ert-fail(((should (member (concat (shadow-site-primary cluster1) (sh
  #f(compiled-function () #<bytecode 0x4134cd>)()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test07-regexp-groups :document
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or (tag :expensi
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
  eval((ert-run-tests-batch-and-exit (quote (not (or (tag :expensive-t
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests" "-
  command-line()
  normal-top-level()
Test shadow-test07-regexp-groups condition:
    (ert-test-failed
     ((should
       (member
	(concat ... ...)
	(car shadow-regexp-groups)))
      :form
      (member "/my.host.com:\\`/tmp/shadowfile-testsGYl5fW\\'"
	      ("/mock:my.host.com:\\`/tmp/shadowfile-testsGYl5fW\\'" "//my.host.com::\\`/tmp/shadowfile-testsGYl5fW\\'"))
      :value nil))
   FAILED   8/10  shadow-test07-regexp-groups
Test shadow-test08-shadow-todo backtrace:
  signal(ert-test-failed (((should (member (cons file (shadow-contract
  ert-fail(((should (member (cons file (shadow-contract-file-name (con
  #f(compiled-function () #<bytecode 0x4138e5>)()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test08-shadow-todo :documentat
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or (tag :expensi
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
  eval((ert-run-tests-batch-and-exit (quote (not (or (tag :expensive-t
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests" "-
  command-line()
  normal-top-level()
Test shadow-test08-shadow-todo condition:
    (ert-test-failed
     ((should
       (member
	(cons file ...)
	shadow-files-to-copy))
      :form
      (member
       ("/tmp/shadowfile-testsp8Ivei" . "/cluster2:/tmp/shadowfile-testsp8Ivei")
       nil)
      :value nil))
   FAILED   9/10  shadow-test08-shadow-todo





WARNING: Can't save shadow todo file; it is locked!
   passed  10/10  shadow-test09-shadow-copy-files

Ran 10 tests, 3 results as expected, 7 unexpected (2018-07-20 07:07:32-0700)

7 unexpected results:
   FAILED  shadow-test01-sites
   FAILED  shadow-test02-files
   FAILED  shadow-test04-contract-file-name
   FAILED  shadow-test05-file-match
   FAILED  shadow-test06-literal-groups
   FAILED  shadow-test07-regexp-groups
   FAILED  shadow-test08-shadow-todo


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

* bug#32226: shadowfile test failures
  2018-07-20 17:22 bug#32226: shadowfile test failures Glenn Morris
@ 2018-07-20 19:08 ` Eli Zaretskii
  2018-07-21 10:36   ` Michael Albinus
  2018-07-21 10:33 ` Michael Albinus
  1 sibling, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2018-07-20 19:08 UTC (permalink / raw)
  To: Glenn Morris; +Cc: 32226, michael.albinus

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

> From: Glenn Morris <rgm@gnu.org>
> Date: Fri, 20 Jul 2018 13:22:32 -0400
> Cc: Michael Albinus <michael.albinus@gmx.de>
> 
> Current emacs-26 branch on rhel 7.5, multiple shadowfile test failures,
> please see attached log.

On Windows I get failures for tests 06 through 09, log attached.


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

Running 10 tests (2018-07-20 22:07:11+0300)
  skipped   1/10  shadow-test00-clusters
  skipped   2/10  shadow-test01-sites
  skipped   3/10  shadow-test02-files
  skipped   4/10  shadow-test03-expand-cluster-in-file-name
  skipped   5/10  shadow-test04-contract-file-name
  skipped   6/10  shadow-test05-file-match
Test shadow-test06-literal-groups backtrace:
  signal(ert-test-failed (((should (member (format "/%s:%s" cluster1 (
  ert-fail(((should (member (format "/%s:%s" cluster1 (file-local-name
  (if (unwind-protect (setq value-449 (apply fn-447 args-448)) (setq f
  (let (form-description-451) (if (unwind-protect (setq value-449 (app
  (let ((value-449 (quote ert-form-evaluation-aborted-450))) (let (for
  (let* ((fn-447 (function member)) (args-448 (condition-case err (let
  (progn (fset (quote read-string) vnew) (if (file-exists-p shadow-inf
  (unwind-protect (progn (fset (quote read-string) vnew) (if (file-exi
  (let* ((vnew (function (lambda (&rest args) (car-safe (prog1 mocked-
  (progn (fset (quote read-from-minibuffer) vnew) (let* ((vnew (functi
  (unwind-protect (progn (fset (quote read-from-minibuffer) vnew) (let
  (let* ((vnew (function (lambda (&rest args) (car-safe (prog1 mocked-
  (unwind-protect (let* ((vnew (function (lambda (&rest args) (car-saf
  (let ((shadow-info-file shadow-test-info-file) (shadow-todo-file sha
  (lambda nil (let ((shadow-info-file shadow-test-info-file) (shadow-t
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test06-literal-groups :documen
  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 (quote (not (tag :unstable)))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/shadowfile-tests.el"
  command-line()
  normal-top-level()
Test shadow-test06-literal-groups condition:
    (ert-test-failed
     ((should
       (member
	(format "/%s:%s" cluster1 ...)
	(car shadow-literal-groups)))
      :form
      (member "/cluster1:c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testst4rfAk"
	      ("/cluster2://HOME-C4E4A596F7::d:/gnu/git/emacs/branch/test/NUL/shadowfile-testsMYJk0u" "/cluster1://HOME-C4E4A596F7::c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testst4rfAk"))
      :value nil))
   FAILED   7/10  shadow-test06-literal-groups
Test shadow-test07-regexp-groups backtrace:
  signal(wrong-type-argument (tramp-file-name nil))
  shadow-make-group("\\`c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-
  shadow-define-regexp-group()
  funcall-interactively(shadow-define-regexp-group)
  call-interactively(shadow-define-regexp-group)
  (progn (set (make-local-variable (quote buffer-file-name)) nil) (cal
  (unwind-protect (progn (set (make-local-variable (quote buffer-file-
  (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn
  (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-b
  (progn (fset (quote read-string) vnew) (if (file-exists-p shadow-inf
  (unwind-protect (progn (fset (quote read-string) vnew) (if (file-exi
  (let* ((vnew (function (lambda (&rest args) (car-safe (prog1 mocked-
  (progn (fset (quote read-from-minibuffer) vnew) (let* ((vnew (functi
  (unwind-protect (progn (fset (quote read-from-minibuffer) vnew) (let
  (let* ((vnew (function (lambda (&rest args) (car-safe (prog1 mocked-
  (unwind-protect (let* ((vnew (function (lambda (&rest args) (car-saf
  (let ((shadow-info-file shadow-test-info-file) (shadow-todo-file sha
  (lambda nil (let ((shadow-info-file shadow-test-info-file) (shadow-t
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test07-regexp-groups :document
  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 (quote (not (tag :unstable)))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/shadowfile-tests.el"
  command-line()
  normal-top-level()
Test shadow-test07-regexp-groups condition:
    (wrong-type-argument tramp-file-name nil)
   FAILED   8/10  shadow-test07-regexp-groups
Test shadow-test08-shadow-todo backtrace:
  file-exists-p(nil)
  (if (file-exists-p file) (progn (delete-file file)))
  (unwind-protect (progn (if (file-exists-p shadow-info-file) (progn (
  (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) 
  (lambda nil (let ((backup-inhibited t) (shadow-info-file shadow-test
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test08-shadow-todo :documentat
  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 (quote (not (tag :unstable)))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/shadowfile-tests.el"
  command-line()
  normal-top-level()
Test shadow-test08-shadow-todo condition:
    (wrong-type-argument stringp nil)
   FAILED   9/10  shadow-test08-shadow-todo
Test shadow-test09-shadow-copy-files backtrace:
  file-exists-p(nil)
  (if (file-exists-p file) (progn (delete-file file)))
  (unwind-protect (progn (if (file-exists-p shadow-info-file) (progn (
  (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) 
  (lambda nil (let ((backup-inhibited t) (shadow-info-file shadow-test
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test09-shadow-copy-files :docu
  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 (quote (not (tag :unstable)))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/shadowfile-tests.el"
  command-line()
  normal-top-level()
Test shadow-test09-shadow-copy-files condition:
    (wrong-type-argument stringp nil)
   FAILED  10/10  shadow-test09-shadow-copy-files

Ran 10 tests, 0 results as expected, 4 unexpected, 6 skipped (2018-07-20 22:07:13+0300)

4 unexpected results:
   FAILED  shadow-test06-literal-groups
   FAILED  shadow-test07-regexp-groups
   FAILED  shadow-test08-shadow-todo
   FAILED  shadow-test09-shadow-copy-files

6 skipped results:
  SKIPPED  shadow-test00-clusters
  SKIPPED  shadow-test01-sites
  SKIPPED  shadow-test02-files
  SKIPPED  shadow-test03-expand-cluster-in-file-name
  SKIPPED  shadow-test04-contract-file-name
  SKIPPED  shadow-test05-file-match


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

* bug#32226: shadowfile test failures
  2018-07-20 17:22 bug#32226: shadowfile test failures Glenn Morris
  2018-07-20 19:08 ` Eli Zaretskii
@ 2018-07-21 10:33 ` Michael Albinus
  2018-07-24 17:44   ` Glenn Morris
  1 sibling, 1 reply; 25+ messages in thread
From: Michael Albinus @ 2018-07-21 10:33 UTC (permalink / raw)
  To: Glenn Morris; +Cc: 32226

Glenn Morris <rgm@gnu.org> writes:

> Hi,

Hi Glenn,

> Current emacs-26 branch on rhel 7.5, multiple shadowfile test failures,
> please see attached log.
> 
>       :form
>       (string-equal "my.host.com" "/my.host.com:")
>       :value nil))
>    FAILED   2/10  shadow-test01-sites

Well, I have used "\\w+" as hostname syntax. I've changed this to
"[-.[:word:]]+", could you pls check whether this works?

Pushed to the emacs-26 branch.

Best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-07-20 19:08 ` Eli Zaretskii
@ 2018-07-21 10:36   ` Michael Albinus
  2018-07-21 12:03     ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Albinus @ 2018-07-21 10:36 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32226

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

> On Windows I get failures for tests 06 through 09, log attached.

... and tests 00 through 05 are skipped. I've forgotten to add the skip
form in the tests.

Fixed in the emacs-26 branch, could you pls check?

Best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-07-21 10:36   ` Michael Albinus
@ 2018-07-21 12:03     ` Eli Zaretskii
  2018-07-21 12:13       ` Michael Albinus
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2018-07-21 12:03 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32226

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: Glenn Morris <rgm@gnu.org>,  32226@debbugs.gnu.org
> Date: Sat, 21 Jul 2018 12:36:57 +0200
> 
> > On Windows I get failures for tests 06 through 09, log attached.
> 
> ... and tests 00 through 05 are skipped. I've forgotten to add the skip
> form in the tests.
> 
> Fixed in the emacs-26 branch, could you pls check?

Now all of the tests are skipped, is this expected?





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

* bug#32226: shadowfile test failures
  2018-07-21 12:03     ` Eli Zaretskii
@ 2018-07-21 12:13       ` Michael Albinus
  2018-07-21 12:25         ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Albinus @ 2018-07-21 12:13 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32226

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

> Now all of the tests are skipped, is this expected?

Yes, it is for MS Windows. See the definition of
shadow-test-remote-temporary-file-directory.

If you know a temporary directory located on a remote host, you could
run

# env REMOTE_TEMPORARY_FILE_DIRECTORY=/plink:host:/tmp make -C test shadowfile-tests

See the explanation of $REMOTE_TEMPORARY_FILE_DIRECTORY in the
Commentary section of tramp-tests.el. Hmm, maybe I should add a similar
Commentary section to shadowfile-tests.el

Best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-07-21 12:13       ` Michael Albinus
@ 2018-07-21 12:25         ` Eli Zaretskii
  2018-07-21 12:48           ` Michael Albinus
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2018-07-21 12:25 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32226

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: rgm@gnu.org,  32226@debbugs.gnu.org
> Date: Sat, 21 Jul 2018 14:13:55 +0200
> 
> > Now all of the tests are skipped, is this expected?
> 
> Yes, it is for MS Windows. See the definition of
> shadow-test-remote-temporary-file-directory.
> 
> If you know a temporary directory located on a remote host, you could
> run
> 
> # env REMOTE_TEMPORARY_FILE_DIRECTORY=/plink:host:/tmp make -C test shadowfile-tests
> 
> See the explanation of $REMOTE_TEMPORARY_FILE_DIRECTORY in the
> Commentary section of tramp-tests.el. Hmm, maybe I should add a similar
> Commentary section to shadowfile-tests.el

Hmm, I'm not sure I follow.  For the test purposes, you are actually
shadowing the files to the current system, right?  If so, the location
of the temporary directory is known, right?

Or am I missing something?





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

* bug#32226: shadowfile test failures
  2018-07-21 12:25         ` Eli Zaretskii
@ 2018-07-21 12:48           ` Michael Albinus
  2018-07-21 13:37             ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Albinus @ 2018-07-21 12:48 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32226

Eli Zaretskii <eliz@gnu.org> writes:

> Hmm, I'm not sure I follow.  For the test purposes, you are actually
> shadowing the files to the current system, right?  If so, the location
> of the temporary directory is known, right?

I do both. I shadow the files to the local system ("/<system-name>:") and
to a remote system ("/method:host:/dir"). For the latter, I mock-up a
remote temporary directory. This is not possible on MS Windows, because
I use "/bin/sh" as connection program to that virtual remote host,
instead of "ssh" or alike.

So you shall declare a usable remote directory via that environment
variable for the MS WIndows case. If you could give me a recipe how to
setup a mock-up method for MS Windows - the better! It has always beaten
me, that the tests do not run out of the box.

The same mechanism is used for filenotify-tests.el and tramp-tests.el.

Best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-07-21 12:48           ` Michael Albinus
@ 2018-07-21 13:37             ` Eli Zaretskii
  2018-07-21 13:56               ` Eli Zaretskii
                                 ` (2 more replies)
  0 siblings, 3 replies; 25+ messages in thread
From: Eli Zaretskii @ 2018-07-21 13:37 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32226

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: rgm@gnu.org,  32226@debbugs.gnu.org
> Date: Sat, 21 Jul 2018 14:48:38 +0200
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > Hmm, I'm not sure I follow.  For the test purposes, you are actually
> > shadowing the files to the current system, right?  If so, the location
> > of the temporary directory is known, right?
> 
> I do both. I shadow the files to the local system ("/<system-name>:") and
> to a remote system ("/method:host:/dir"). For the latter, I mock-up a
> remote temporary directory. This is not possible on MS Windows, because
> I use "/bin/sh" as connection program to that virtual remote host,
> instead of "ssh" or alike.

I don't see why this would be impossible.  The test suite is run from
the MSYS Bash anyway, and if I start Emacs from there, I get this:

  (executable-find "sh")
    => "d:/usr/MSYS/bin/sh.exe"

(even though the directory where sh.exe leaves is not on the
system-wide PATH on my systems, although most other users do place it
on PATH).  So use executable-find to get the absolute file name of the
shell, instead of a literal "/bin/sh", and I think everything else
should "just work", no?

> So you shall declare a usable remote directory via that environment
> variable for the MS WIndows case. If you could give me a recipe how to
> setup a mock-up method for MS Windows - the better!

Does the above fit the bill?  If not, what else is needed for the
mock-up method?





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

* bug#32226: shadowfile test failures
  2018-07-21 13:37             ` Eli Zaretskii
@ 2018-07-21 13:56               ` Eli Zaretskii
  2018-07-21 13:59               ` Michael Albinus
  2018-07-23  9:55               ` Michael Albinus
  2 siblings, 0 replies; 25+ messages in thread
From: Eli Zaretskii @ 2018-07-21 13:56 UTC (permalink / raw)
  To: michael.albinus; +Cc: 32226

> Date: Sat, 21 Jul 2018 16:37:37 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: 32226@debbugs.gnu.org
> 
>   (executable-find "sh")
>     => "d:/usr/MSYS/bin/sh.exe"
> 
> (even though the directory where sh.exe leaves is not on the
                                          ^^^^^^
"lives", ugh.





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

* bug#32226: shadowfile test failures
  2018-07-21 13:37             ` Eli Zaretskii
  2018-07-21 13:56               ` Eli Zaretskii
@ 2018-07-21 13:59               ` Michael Albinus
  2018-07-21 14:21                 ` Eli Zaretskii
  2018-07-23  9:55               ` Michael Albinus
  2 siblings, 1 reply; 25+ messages in thread
From: Michael Albinus @ 2018-07-21 13:59 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32226

Eli Zaretskii <eliz@gnu.org> writes:

> I don't see why this would be impossible.  The test suite is run from
> the MSYS Bash anyway, and if I start Emacs from there, I get this:
>
>   (executable-find "sh")
>     => "d:/usr/MSYS/bin/sh.exe"

The test suite is also run interactively (that's what I do), so it
cannot be guaranteed that (executable-find "sh") gives a non-nil
result. For this case, there is the REMOTE_TEMPORARY_FILE_DIRECTORY trick.

> (even though the directory where sh.exe leaves is not on the
> system-wide PATH on my systems, although most other users do place it
> on PATH).  So use executable-find to get the absolute file name of the
> shell, instead of a literal "/bin/sh", and I think everything else
> should "just work", no?
>
>> So you shall declare a usable remote directory via that environment
>> variable for the MS WIndows case. If you could give me a recipe how to
>> setup a mock-up method for MS Windows - the better!
>
> Does the above fit the bill?  If not, what else is needed for the
> mock-up method?

I will check your proposal next week, when I'm at work. Maybe it works,
but likely I will find only an MS Windows machine which does not offer
any sh.exe - that's Murphy. In that case, I will produce a patch which
you could check.

(All of this shouldn't stop us from closing this bug report, after
confirmation of Glenn)

Thanks, and best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-07-21 13:59               ` Michael Albinus
@ 2018-07-21 14:21                 ` Eli Zaretskii
  2018-07-21 14:41                   ` Michael Albinus
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2018-07-21 14:21 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32226

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: rgm@gnu.org,  32226@debbugs.gnu.org
> Date: Sat, 21 Jul 2018 15:59:21 +0200
> 
> > I don't see why this would be impossible.  The test suite is run from
> > the MSYS Bash anyway, and if I start Emacs from there, I get this:
> >
> >   (executable-find "sh")
> >     => "d:/usr/MSYS/bin/sh.exe"
> 
> The test suite is also run interactively (that's what I do), so it
> cannot be guaranteed that (executable-find "sh") gives a non-nil
> result. For this case, there is the REMOTE_TEMPORARY_FILE_DIRECTORY trick.

We could instead ask people to set explicit-shell-file-name.

> (All of this shouldn't stop us from closing this bug report, after
> confirmation of Glenn)

Right.





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

* bug#32226: shadowfile test failures
  2018-07-21 14:21                 ` Eli Zaretskii
@ 2018-07-21 14:41                   ` Michael Albinus
  0 siblings, 0 replies; 25+ messages in thread
From: Michael Albinus @ 2018-07-21 14:41 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32226

Eli Zaretskii <eliz@gnu.org> writes:

>> The test suite is also run interactively (that's what I do), so it
>> cannot be guaranteed that (executable-find "sh") gives a non-nil
>> result. For this case, there is the REMOTE_TEMPORARY_FILE_DIRECTORY trick.
>
> We could instead ask people to set explicit-shell-file-name.

That's not related directly. REMOTE_TEMPORARY_FILE_DIRECTORY shall be a,
hmm, temporary remote directory. It is useful for testing many
configurations. Before I release a new Tramp version, I run stress tests
for several dozen targets, covering all different connection methods and
configuration winkles, and also different Emacs versions starting with
Emacs 24.

Such a campaign (a script) runs usually longer than 24h, and it never
passes all tests during the first run ...

Using a local sh is interesting only for the default mock-up
method. This is the most boring constellation in my own tests, because
everybody else (and hydra) run those tests already.

Best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-07-21 13:37             ` Eli Zaretskii
  2018-07-21 13:56               ` Eli Zaretskii
  2018-07-21 13:59               ` Michael Albinus
@ 2018-07-23  9:55               ` Michael Albinus
  2018-07-23 15:59                 ` Eli Zaretskii
  2 siblings, 1 reply; 25+ messages in thread
From: Michael Albinus @ 2018-07-23  9:55 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32226

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

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

> Does the above fit the bill?  If not, what else is needed for the
> mock-up method?

I have tried the following patch. It still runs as expected on my
GNU/Linux machine. Could you pls check for MS Windows?

If it works there, I'll commit to the emacs-26 branch (and similar
patches for filenotify-tests.el and tramp-tests.el).


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

diff --git a/test/lisp/shadowfile-tests.el b/test/lisp/shadowfile-tests.el
index 200fb4c58c..e1a260c336 100644
--- a/test/lisp/shadowfile-tests.el
+++ b/test/lisp/shadowfile-tests.el
@@ -19,6 +19,18 @@
 
 ;;; Commentary:
 
+;; Some of the tests require access to a remote host files.  Since
+;; this could be problematic, a mock-up connection method "mock" is
+;; used.  Emulating a remote connection, it simply calls "sh -i".
+;; Tramp's file name handlers still run, so this test is sufficient
+;; except for connection establishing.
+
+;; If you want to test a real Tramp connection, set
+;; $REMOTE_TEMPORARY_FILE_DIRECTORY to a suitable value in order to
+;; overwrite the default value.  If you want to skip tests accessing a
+;; remote host, set this environment variable to "/dev/null" or
+;; whatever is appropriate on your system.
+
 ;; A whole test run can be performed calling the command `shadowfile-test-all'.
 
 ;;; Code:
@@ -27,28 +39,28 @@
 (require 'shadowfile)
 (require 'tramp)
 
-;; There is no default value on w32 systems, which could work out of the box.
 (defconst shadow-test-remote-temporary-file-directory
   (cond
    ((getenv "REMOTE_TEMPORARY_FILE_DIRECTORY"))
-   ((eq system-type 'windows-nt) null-device)
-   (t (add-to-list
-       'tramp-methods
-       '("mock"
-	 (tramp-login-program        "sh")
-	 (tramp-login-args           (("-i")))
-	 (tramp-remote-shell         "/bin/sh")
-	 (tramp-remote-shell-args    ("-c"))
-	 (tramp-connection-timeout   10)))
-      (add-to-list
-       'tramp-default-host-alist
-       `("\\`mock\\'" nil ,(system-name)))
-      ;; Emacs' Makefile sets $HOME to a nonexistent value.  Needed in
-      ;; batch mode only, therefore.  It cannot be
-      ;; `temporary-directory', because the tests with "~" would fail.
-      (unless (and (null noninteractive) (file-directory-p "~/"))
-        (setenv "HOME" invocation-directory))
-      (format "/mock::%s" temporary-file-directory)))
+   ((executable-find "sh")
+    (add-to-list
+     'tramp-methods
+     `("mock"
+       (tramp-login-program        ,(executable-find "sh"))
+       (tramp-login-args           (("-i")))
+       (tramp-remote-shell         ,(executable-find "sh"))
+       (tramp-remote-shell-args    ("-c"))
+       (tramp-connection-timeout   10)))
+    (add-to-list
+     'tramp-default-host-alist
+     `("\\`mock\\'" nil ,(system-name)))
+    ;; Emacs' Makefile sets $HOME to a nonexistent value.  Needed in
+    ;; batch mode only, therefore.  It cannot be
+    ;; `temporary-directory', because the tests with "~" would fail.
+    (unless (and (null noninteractive) (file-directory-p "~/"))
+      (setenv "HOME" invocation-directory))
+    (format "/mock::%s" temporary-file-directory))
+   (t null-device))
   "Temporary directory for Tramp tests.")
 
 (defconst shadow-test-info-file

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

* bug#32226: shadowfile test failures
  2018-07-23  9:55               ` Michael Albinus
@ 2018-07-23 15:59                 ` Eli Zaretskii
  2018-07-23 16:18                   ` Michael Albinus
  2018-07-25 10:48                   ` Michael Albinus
  0 siblings, 2 replies; 25+ messages in thread
From: Eli Zaretskii @ 2018-07-23 15:59 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32226

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

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: rgm@gnu.org,  32226@debbugs.gnu.org
> Date: Mon, 23 Jul 2018 11:55:09 +0200
> 
> I have tried the following patch. It still runs as expected on my
> GNU/Linux machine. Could you pls check for MS Windows?

I ran that in batch mode.  It ran for a while, and then seemed to
hang.  I interrupted it; what ended up in the log file is attached.

Let me know how can I assist you in debugging this.


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

Running 10 tests (2018-07-23 18:52:28+0300)
   passed   1/10  shadow-test00-clusters
   passed   2/10  shadow-test01-sites
Test shadow-test02-files backtrace:
  signal(ert-test-failed (((should (equal (shadow-parse-name (concat "
  ert-fail(((should (equal (shadow-parse-name (concat "/" cluster ":" 
  (if (unwind-protect (setq value-274 (apply fn-272 args-273)) (setq f
  (let (form-description-276) (if (unwind-protect (setq value-274 (app
  (let ((value-274 (quote ert-form-evaluation-aborted-275))) (let (for
  (let* ((fn-272 (function equal)) (args-273 (condition-case err (let 
  (progn (if (file-exists-p shadow-info-file) (progn (delete-file shad
  (unwind-protect (progn (if (file-exists-p shadow-info-file) (progn (
  (let ((shadow-info-file shadow-test-info-file) (shadow-todo-file sha
  (lambda nil (let* ((fn-262 (function file-remote-p)) (args-263 (cond
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test02-files :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 (quote (not (tag :unstable)))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/shadowfile-tests.el"
  command-line()
  normal-top-level()
Test shadow-test02-files condition:
    (ert-test-failed
     ((should
       (equal
	(shadow-parse-name ...)
	hup))
      :form
      (equal
       (tramp-file-name "cluster" nil nil "c" nil "/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz" nil)
       (tramp-file-name nil nil nil "HOME-C4E4A596F7" nil "c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz" nil))
      :value nil :explanation
      (list-elt 1
		(different-types "cluster" nil))))
   FAILED   3/10  shadow-test02-files
Test shadow-test03-expand-cluster-in-file-name backtrace:
  signal(ert-test-failed (((should (string-equal (shadow-expand-cluste
  ert-fail(((should (string-equal (shadow-expand-cluster-in-file-name 
  (if (unwind-protect (setq value-349 (apply fn-347 args-348)) (setq f
  (let (form-description-351) (if (unwind-protect (setq value-349 (app
  (let ((value-349 (quote ert-form-evaluation-aborted-350))) (let (for
  (let* ((fn-347 (function string-equal)) (args-348 (condition-case er
  (progn (if (file-exists-p shadow-info-file) (progn (delete-file shad
  (unwind-protect (progn (if (file-exists-p shadow-info-file) (progn (
  (let ((shadow-info-file shadow-test-info-file) (shadow-todo-file sha
  (lambda nil (let* ((fn-332 (function file-remote-p)) (args-333 (cond
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test03-expand-cluster-in-file-
  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 (quote (not (tag :unstable)))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/shadowfile-tests.el"
  command-line()
  normal-top-level()
Test shadow-test03-expand-cluster-in-file-name condition:
    (ert-test-failed
     ((should
       (string-equal
	(shadow-expand-cluster-in-file-name ...)
	(shadow-expand-cluster-in-file-name ...)))
      :form
      (string-equal "/cluster:c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsaWGmXv" "/HOME-C4E4A596F7:c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsaWGmXv")
      :value nil))
   FAILED   4/10  shadow-test03-expand-cluster-in-file-name
Test shadow-test04-contract-file-name backtrace:
  signal(file-error ("Host `c' looks like a remote host, `cluster' can
  apply(signal (file-error ("Host `c' looks like a remote host, `clust
  (setq value-379 (apply fn-377 args-378))
  (unwind-protect (setq value-379 (apply fn-377 args-378)) (setq form-
  (if (unwind-protect (setq value-379 (apply fn-377 args-378)) (setq f
  (let (form-description-381) (if (unwind-protect (setq value-379 (app
  (let ((value-379 (quote ert-form-evaluation-aborted-380))) (let (for
  (let* ((fn-377 (function string-equal)) (args-378 (condition-case er
  (progn (if (file-exists-p shadow-info-file) (progn (delete-file shad
  (unwind-protect (progn (if (file-exists-p shadow-info-file) (progn (
  (let ((shadow-info-file shadow-test-info-file) (shadow-todo-file sha
  (lambda nil (let* ((fn-367 (function file-remote-p)) (args-368 (cond
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test04-contract-file-name :doc
  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 (quote (not (tag :unstable)))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/shadowfile-tests.el"
  command-line()
  normal-top-level()
Test shadow-test04-contract-file-name condition:
    (file-error "Host `c' looks like a remote host, `cluster' can only use the local host")
   FAILED   5/10  shadow-test04-contract-file-name
Test shadow-test05-file-match backtrace:
  signal(ert-test-failed (((should (shadow-file-match (shadow-parse-na
  ert-fail(((should (shadow-file-match (shadow-parse-name (concat "/cl
  (if (unwind-protect (setq value-414 (apply fn-412 args-413)) (setq f
  (let (form-description-416) (if (unwind-protect (setq value-414 (app
  (let ((value-414 (quote ert-form-evaluation-aborted-415))) (let (for
  (let* ((fn-412 (function shadow-file-match)) (args-413 (condition-ca
  (progn (if (file-exists-p shadow-info-file) (progn (delete-file shad
  (unwind-protect (progn (if (file-exists-p shadow-info-file) (progn (
  (let ((shadow-info-file shadow-test-info-file) (shadow-todo-file sha
  (lambda nil (let* ((fn-392 (function file-remote-p)) (args-393 (cond
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test05-file-match :documentati
  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 (quote (not (tag :unstable)))))
  command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/shadowfile-tests.el"
  command-line()
  normal-top-level()
Test shadow-test05-file-match condition:
    (ert-test-failed
     ((should
       (shadow-file-match
	(shadow-parse-name ...)
	file))
      :form
      (shadow-file-match
       (tramp-file-name "cluster" nil nil "c" nil "/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-tests0bgirO" nil)
       "c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-tests0bgirO")
      :value nil))
   FAILED   6/10  shadow-test05-file-match

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

* bug#32226: shadowfile test failures
  2018-07-23 15:59                 ` Eli Zaretskii
@ 2018-07-23 16:18                   ` Michael Albinus
  2018-07-23 16:39                     ` Eli Zaretskii
  2018-07-25 10:48                   ` Michael Albinus
  1 sibling, 1 reply; 25+ messages in thread
From: Michael Albinus @ 2018-07-23 16:18 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32226

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

> I ran that in batch mode.  It ran for a while, and then seemed to
> hang.  I interrupted it; what ended up in the log file is attached.
>
> Let me know how can I assist you in debugging this.
>
> Running 10 tests (2018-07-23 18:52:28+0300)
>    passed   1/10  shadow-test00-clusters

Well, at least the (executable-find "sh") trick does it. The tests
run. So I will apply it to the three test files I've mentioned
earlier. Emacs-26 or master branch?

>       (equal
>        (tramp-file-name "cluster" nil nil "c" nil "/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz" nil)
>        (tramp-file-name nil nil nil "HOME-C4E4A596F7" nil "c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz" nil))

Obviously an error I need to fix. I'm wondering, whether shadowfile.el
has run ever on MS Windows. I bed, the same error would happen with the
old implementation.

Thanks for testing.

Best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-07-23 16:18                   ` Michael Albinus
@ 2018-07-23 16:39                     ` Eli Zaretskii
  2018-07-23 16:52                       ` Michael Albinus
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2018-07-23 16:39 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32226

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: rgm@gnu.org,  32226@debbugs.gnu.org
> Date: Mon, 23 Jul 2018 18:18:14 +0200
> 
> > Running 10 tests (2018-07-23 18:52:28+0300)
> >    passed   1/10  shadow-test00-clusters
> 
> Well, at least the (executable-find "sh") trick does it. The tests
> run. So I will apply it to the three test files I've mentioned
> earlier. Emacs-26 or master branch?

Emacs-26 is okay in this case, since we are fixing something that is
broken already.

> I'm wondering, whether shadowfile.el has run ever on MS Windows.

I wouldn't count on it.

Thanks.





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

* bug#32226: shadowfile test failures
  2018-07-23 16:39                     ` Eli Zaretskii
@ 2018-07-23 16:52                       ` Michael Albinus
  0 siblings, 0 replies; 25+ messages in thread
From: Michael Albinus @ 2018-07-23 16:52 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32226

Eli Zaretskii <eliz@gnu.org> writes:

>> Well, at least the (executable-find "sh") trick does it. The tests
>> run. So I will apply it to the three test files I've mentioned
>> earlier. Emacs-26 or master branch?
>
> Emacs-26 is okay in this case, since we are fixing something that is
> broken already.

Will do. Rather tomorrow, I'll have the chance to test on MS
Windows. Might happen that the other two test files uncover further
errors on MS Windows ...

>> I'm wondering, whether shadowfile.el has run ever on MS Windows.
>
> I wouldn't count on it.

I don't :-)

> Thanks.

Best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-07-21 10:33 ` Michael Albinus
@ 2018-07-24 17:44   ` Glenn Morris
  2018-07-25 11:22     ` Michael Albinus
  0 siblings, 1 reply; 25+ messages in thread
From: Glenn Morris @ 2018-07-24 17:44 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32226

Michael Albinus wrote:

> Well, I have used "\\w+" as hostname syntax. I've changed this to
> "[-.[:word:]]+", could you pls check whether this works?
>
> Pushed to the emacs-26 branch.

Works for me thanks. Separately, please note that
shadow-test08-shadow-todo has aborted on hydra.nixos.org ever since it
was first added.





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

* bug#32226: shadowfile test failures
  2018-07-23 15:59                 ` Eli Zaretskii
  2018-07-23 16:18                   ` Michael Albinus
@ 2018-07-25 10:48                   ` Michael Albinus
  2018-07-25 14:47                     ` Eli Zaretskii
  1 sibling, 1 reply; 25+ messages in thread
From: Michael Albinus @ 2018-07-25 10:48 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32226

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

> I ran that in batch mode.  It ran for a while, and then seemed to
> hang.  I interrupted it; what ended up in the log file is attached.

I could reproduce it with Emacs 26 on MS Windows.

> Let me know how can I assist you in debugging this.

>       (equal
>        (tramp-file-name "cluster" nil nil "c" nil "/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz" nil)
>        (tramp-file-name nil nil nil "HOME-C4E4A596F7" nil "c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz" nil))

Well, the problem is the syntax of local file names on MS Windows, like
"c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz". shadowfile
uses cluster file names with syntax "/<cluster name>:<local file name>".
If the <local file name> starts with a volume letter, the resulting
string looks like a remote file name, and shadowfile is confused.

Fixing this is not trivial. Is it worth to do it? Again, I doubt that
shadowfile has worked ever on MS Windows; I believe it would be
sufficient to document this restriction.

Best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-07-24 17:44   ` Glenn Morris
@ 2018-07-25 11:22     ` Michael Albinus
  2018-08-12 16:19       ` Michael Albinus
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Albinus @ 2018-07-25 11:22 UTC (permalink / raw)
  To: Glenn Morris; +Cc: 32226

Glenn Morris <rgm@gnu.org> writes:

> Separately, please note that shadow-test08-shadow-todo has aborted on
> hydra.nixos.org ever since it was first added.

No further information, hmm. I've made a small compatibility change in
shadowfile.el, which might fix it, or not. And I've instrumented
shadow-test08-shadow-todo to be more chatty. Let's see.

Best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-07-25 10:48                   ` Michael Albinus
@ 2018-07-25 14:47                     ` Eli Zaretskii
  2018-07-25 15:19                       ` Michael Albinus
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2018-07-25 14:47 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32226

> From: Michael Albinus <michael.albinus@gmx.de>
> Cc: rgm@gnu.org,  32226@debbugs.gnu.org
> Date: Wed, 25 Jul 2018 12:48:50 +0200
> 
> >       (equal
> >        (tramp-file-name "cluster" nil nil "c" nil "/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz" nil)
> >        (tramp-file-name nil nil nil "HOME-C4E4A596F7" nil "c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz" nil))
> 
> Well, the problem is the syntax of local file names on MS Windows, like
> "c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz". shadowfile
> uses cluster file names with syntax "/<cluster name>:<local file name>".
> If the <local file name> starts with a volume letter, the resulting
> string looks like a remote file name, and shadowfile is confused.

Can convert-standard-filename help?  It will convert any colon except
the first one to '!'.

> Fixing this is not trivial. Is it worth to do it? Again, I doubt that
> shadowfile has worked ever on MS Windows; I believe it would be
> sufficient to document this restriction.

It's up to you.  If fixing is indeed hard, I'd hate to get in the way
of your development of threaded Tramp ;-)





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

* bug#32226: shadowfile test failures
  2018-07-25 14:47                     ` Eli Zaretskii
@ 2018-07-25 15:19                       ` Michael Albinus
  0 siblings, 0 replies; 25+ messages in thread
From: Michael Albinus @ 2018-07-25 15:19 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32226

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

>> Well, the problem is the syntax of local file names on MS Windows, like
>> "c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz". shadowfile
>> uses cluster file names with syntax "/<cluster name>:<local file name>".
>> If the <local file name> starts with a volume letter, the resulting
>> string looks like a remote file name, and shadowfile is confused.
>
> Can convert-standard-filename help?  It will convert any colon except
> the first one to '!'.

That was also my first idea. But it doesn't help:
"/myname:c:/DOCUME~1/Zaretzky/LOCALS~1/Temp/shadowfile-testsSe3Hgz" is
regarded as remote file name due to the colon after the drive letter. I
would need to change the notation of cluster file names, something
different from "/name:local name". This would introduce much more
incompatibility for all other shadoefile users. And again, I'm convinced
there hasn't been a shadowfile user on MS Windows ever.

>> Fixing this is not trivial. Is it worth to do it? Again, I doubt that
>> shadowfile has worked ever on MS Windows; I believe it would be
>> sufficient to document this restriction.
>
> It's up to you.  If fixing is indeed hard, I'd hate to get in the way
> of your development of threaded Tramp ;-)

I guess best would be to document this restriction. We can still react,
when furious bug reports arrive us. Which I doubt.

I will add (skip-unless (not (memq system-type '(windows-nt ms-dos))))
to all shadowfile-tests tests in the emacs-26 branch.





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

* bug#32226: shadowfile test failures
  2018-07-25 11:22     ` Michael Albinus
@ 2018-08-12 16:19       ` Michael Albinus
  2018-08-12 23:46         ` Glenn Morris
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Albinus @ 2018-08-12 16:19 UTC (permalink / raw)
  To: Glenn Morris; +Cc: 32226-done

Version: 26.2

> Glenn Morris <rgm@gnu.org> writes:
>
>> Separately, please note that shadow-test08-shadow-todo has aborted on
>> hydra.nixos.org ever since it was first added.
>
> No further information, hmm. I've made a small compatibility change in
> shadowfile.el, which might fix it, or not. And I've instrumented
> shadow-test08-shadow-todo to be more chatty. Let's see.

After weeks of hunting, I could trap it finally. Fixed in master, all
shadowfile-tests tests pass successfully on hydra.

Since I've backported the fix to the emacs-26 branch, I'm closing this
bug for Emacs 26.2.

Best regards, Michael.





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

* bug#32226: shadowfile test failures
  2018-08-12 16:19       ` Michael Albinus
@ 2018-08-12 23:46         ` Glenn Morris
  0 siblings, 0 replies; 25+ messages in thread
From: Glenn Morris @ 2018-08-12 23:46 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 32226

Michael Albinus wrote:

> After weeks of hunting, I could trap it finally. Fixed in master, all
> shadowfile-tests tests pass successfully on hydra.

Quite a saga, well done! :)





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

end of thread, other threads:[~2018-08-12 23:46 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-20 17:22 bug#32226: shadowfile test failures Glenn Morris
2018-07-20 19:08 ` Eli Zaretskii
2018-07-21 10:36   ` Michael Albinus
2018-07-21 12:03     ` Eli Zaretskii
2018-07-21 12:13       ` Michael Albinus
2018-07-21 12:25         ` Eli Zaretskii
2018-07-21 12:48           ` Michael Albinus
2018-07-21 13:37             ` Eli Zaretskii
2018-07-21 13:56               ` Eli Zaretskii
2018-07-21 13:59               ` Michael Albinus
2018-07-21 14:21                 ` Eli Zaretskii
2018-07-21 14:41                   ` Michael Albinus
2018-07-23  9:55               ` Michael Albinus
2018-07-23 15:59                 ` Eli Zaretskii
2018-07-23 16:18                   ` Michael Albinus
2018-07-23 16:39                     ` Eli Zaretskii
2018-07-23 16:52                       ` Michael Albinus
2018-07-25 10:48                   ` Michael Albinus
2018-07-25 14:47                     ` Eli Zaretskii
2018-07-25 15:19                       ` Michael Albinus
2018-07-21 10:33 ` Michael Albinus
2018-07-24 17:44   ` Glenn Morris
2018-07-25 11:22     ` Michael Albinus
2018-08-12 16:19       ` Michael Albinus
2018-08-12 23:46         ` Glenn Morris

Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.