Source: guile-ssh
Version: 0.11.3-2
Severity: serious
Justification: FTBFS on amd64
Tags: bullseye sid ftbfs
Usertags: ftbfs-20200501 ftbfs-bullseye

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.

Relevant part (hopefully):
> make[5]: Entering directory '/<<PKGBUILDDIR>>/tests'
> PASS: log.scm
> PASS: server.scm
> PASS: session.scm
> PASS: client-server.scm
> PASS: popen.scm
> PASS: shell.scm
> PASS: server-client.scm
> PASS: sssh-ssshd.scm
> PASS: key.scm
> PASS: tunnel.scm
> FAIL: dist.scm
> ============================================
>    Guile-SSH 0.11.3: tests/test-suite.log
> ============================================
> 
> # TOTAL: 11
> # PASS:  10
> # SKIP:  0
> # XFAIL: 0
> # FAIL:  1
> # XPASS: 0
> # ERROR: 0
> 
> .. contents:: :depth: 2
> 
> FAIL: dist
> ==========
> 
> %%%% Starting test dist  (Writing full log to "dist.log")
> 
> Some deprecated features have been used.  Set the environment
> variable GUILE_WARN_DEPRECATED to "detailed" and rerun the
> program to get more information.  Set it to "no" to suppress
> this message.
> %%%% Starting test dist  (Writing full log to "dist.log")
> tests/dist.scm:216: FAIL with-ssh
> # of expected passes      18
> # of unexpected failures  1
> 
> Some deprecated features have been used.  Set the environment
> variable GUILE_WARN_DEPRECATED to "detailed" and rerun the
> program to get more information.  Set it to "no" to suppress
> this message.
> cted-value: ((a b) (c d) (e f g))
> Test begin:
>   test-name: "split, 2"
>   source-file: "tests/dist.scm"
>   source-line: 53
>   source-form: (test-equal "split, 2" (quote ((a))) (split (quote (a)) 2))
> Test end:
>   result-kind: pass
>   actual-value: ((a))
>   expected-value: ((a))
> Test begin:
>   test-name: "make-job"
>   source-file: "tests/dist.scm"
>   source-line: 58
>   source-form: (test-assert "make-job" (let* ((s (make-session-for-test)) (n 
> (make-node s)) (data (quote (1 2 3))) (proc (quote (lambda (n) (#{1+}# n)))) 
> (j (make-job (quote map) n data proc))) (and (eq? (job-type j) (quote map)) 
> (eq? (job-node j) n) (eq? (job-data j) data) (eq? (job-proc j) proc))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "set-job-node"
>   source-file: "tests/dist.scm"
>   source-line: 69
>   source-form: (test-assert "set-job-node" (let* ((s (make-session-for-test)) 
> (n1 (make-node s)) (n2 (make-node s)) (data (quote ())) (proc (quote (lambda 
> (n) (#{1+}# n)))) (j1 (make-job (quote map) n1 data proc)) (j2 (set-job-node 
> j1 n2))) (and (not (eq? j1 j2)) (eq? (job-type j1) (job-type j2)) (eq? 
> (job-node j1) n1) (eq? (job-node j2) n2) (eq? (job-data j1) (job-data j2)) 
> (eq? (job-proc j1) (job-proc j2)))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "hand-out-job, invalid type"
>   source-file: "tests/dist.scm"
>   source-line: 84
>   source-form: (test-assert "hand-out-job, invalid type" (begin 
> (set-log-userdata! "hand-out-job, invalid type") (catch #t (lambda () (let 
> ((n (make-node (make-session-for-test)))) (hand-out-job (make-job (quote 
> invalid-job) n (quote ()) (const #t)))) #f) (const #t))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "assign-eval"
>   source-file: "tests/dist.scm"
>   source-line: 89
>   source-form: (test-assert "assign-eval" (let* ((s (make-session-for-test)) 
> (nodes (make-list 2 (make-node s))) (exprs (make-list 10 (quote (lambda (x) 
> (#{1+}# x))))) (jobs (assign-eval nodes exprs))) (and (eq? (length jobs) 2) 
> (eq? (job-type (car jobs)) (quote eval)) (eq? (length (job-proc (car jobs))) 
> 5))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "rrepl-get-result"
>   source-file: "tests/dist.scm"
>   source-line: 103
>   source-form: (test-assert "rrepl-get-result" (receive (result eval-num 
> module-name lang) (call-with-input-string "scheme@(guile-user)> $0 = test" 
> rrepl-get-result) (and (eq? result (quote test)) (= eval-num 0) (string=? 
> module-name "(guile-user)") (string=? lang "scheme"))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "rrepl-get-result, unspecified"
>   source-file: "tests/dist.scm"
>   source-line: 114
>   source-form: (test-assert "rrepl-get-result, unspecified" (receive (result 
> eval-num module-name lang) (call-with-input-string "scheme@(guile-user)> " 
> rrepl-get-result) (and (eq? result *unspecified*) (eq? eval-num 
> *unspecified*) (string=? module-name "(guile-user)") (string=? lang 
> "scheme"))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "rrepl-get-result, error"
>   source-file: "tests/dist.scm"
>   source-line: 123
>   source-form: (test-assert "rrepl-get-result, error" (begin 
> (set-log-userdata! "rrepl-get-result, error") (catch #t (lambda () 
> (call-with-input-string "scheme@(guile-user)> ERROR: error." 
> rrepl-get-result) #f) (lambda (key . args) (if (equal? key (quote 
> node-repl-error)) (let* ((message (cadr args)) (result (string=? message 
> "scheme@(guile-user)> ERROR: error."))) (unless result (format-log/scm (quote 
> nolog) "rrepl-get-result, error" (string-append "Messages do not match: " 
> "expected \"~a\", got \"~a\"") result "scheme@(guile-user)> ERROR: error.")) 
> result) (begin (format-log/scm (quote nolog) "rrepl-get-result, error" 
> (string-append "Errors do not match: " "expected '~a', got '~a' (args: ~a)") 
> (quote node-repl-error) key args) #f))))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "rrepl-get-result, compilation error"
>   source-file: "tests/dist.scm"
>   source-line: 129
>   source-form: (test-assert "rrepl-get-result, compilation error" (begin 
> (set-log-userdata! "rrepl-get-result, compilation error") (catch #t (lambda 
> () (call-with-input-string (string-append "scheme@(guile-user)> While 
> compiling expression:\n" "ERROR: no code for module 
> (module-that-doesnt-exist)") rrepl-get-result) #f) (lambda (key . args) (if 
> (equal? key (quote node-repl-error)) (let* ((message (cadr args)) (result 
> (string=? message "scheme@(guile-user)> While compiling expression:\nERROR: 
> no code for module (module-that-doesnt-exist)"))) (unless result 
> (format-log/scm (quote nolog) "rrepl-get-result, compilation error" 
> (string-append "Messages do not match: " "expected \"~a\", got \"~a\"") 
> result "scheme@(guile-user)> While compiling expression:\nERROR: no code for 
> module (module-that-doesnt-exist)")) result) (begin (format-log/scm (quote 
> nolog) "rrepl-get-result, compilation error" (string-append "Errors do not 
> match: " "expected '~a', got '~a' (args: ~a)") (quote node-repl-error) key 
> args) #f))))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "rrepl-get-result, unbound variable error"
>   source-file: "tests/dist.scm"
>   source-line: 136
>   source-form: (test-assert "rrepl-get-result, unbound variable error" (begin 
> (set-log-userdata! "rrepl-get-result, unbound variable error") (catch #t 
> (lambda () (call-with-input-string (string-append (string-append 
> "scheme@(guile-user)> ;;; socket:9:7: warning: " "possibly unbound variable 
> `e'\nsocket:9:7: " "In procedure #<procedure 1a44920 at socket:9:7 ()>:\n" 
> "socket:9:7: In procedure module-lookup: Unbound variable: e")) 
> rrepl-get-result) #f) (lambda (key . args) (if (equal? key (quote 
> node-repl-error)) (let* ((message (cadr args)) (result (string=? message 
> "scheme@(guile-user)> ;;; socket:9:7: warning: possibly unbound variable 
> `e'\nsocket:9:7: In procedure #<procedure 1a44920 at socket:9:7 
> ()>:\nsocket:9:7: In procedure module-lookup: Unbound variable: e"))) (unless 
> result (format-log/scm (quote nolog) "rrepl-get-result, unbound variable 
> error" (string-append "Messages do not match: " "expected \"~a\", got 
> \"~a\"") result "scheme@(guile-user)> ;;; socket:9:7: warning: possibly 
> unbound variable `e'\nsocket:9:7: In procedure #<procedure 1a44920 at 
> socket:9:7 ()>:\nsocket:9:7: In procedure module-lookup: Unbound variable: 
> e")) result) (begin (format-log/scm (quote nolog) "rrepl-get-result, unbound 
> variable error" (string-append "Errors do not match: " "expected '~a', got 
> '~a' (args: ~a)") (quote node-repl-error) key args) #f))))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "rrepl-get-result, unknown # object error"
>   source-file: "tests/dist.scm"
>   source-line: 149
>   source-form: (test-assert "rrepl-get-result, unknown # object error" (begin 
> (set-log-userdata! "rrepl-get-result, unknown # object error") (catch #t 
> (lambda () (call-with-input-string (string-append "scheme@(guile-user)> $4 = 
> " "#<session #<undefined>@#<undefined>:22 (disconnected) 453fff>") 
> rrepl-get-result) #f) (lambda (key . args) (if (equal? key (quote 
> node-repl-error)) (let* ((message (cadr args)) (result (string=? message 
> "Reader error: scm_lreadr: #<unknown port>:1:3: Unknown # object: (#\\<): 
> scheme@(guile-user)> $4 = #<session #<undefined>@#<undefined>:22 
> (disconnected) 453fff>"))) (unless result (format-log/scm (quote nolog) 
> "rrepl-get-result, unknown # object error" (string-append "Messages do not 
> match: " "expected \"~a\", got \"~a\"") result "Reader error: scm_lreadr: 
> #<unknown port>:1:3: Unknown # object: (#\\<): scheme@(guile-user)> $4 = 
> #<session #<undefined>@#<undefined>:22 (disconnected) 453fff>")) result) 
> (begin (format-log/scm (quote nolog) "rrepl-get-result, unknown # object 
> error" (string-append "Errors do not match: " "expected '~a', got '~a' (args: 
> ~a)") (quote node-repl-error) key args) #f))))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "rrepl-get-result, elisp"
>   source-file: "tests/dist.scm"
>   source-line: 158
>   source-form: (test-assert "rrepl-get-result, elisp" (receive (result 
> eval-num module-name lang) (call-with-input-string "elisp@(guile-user)> $0 = 
> #nil" rrepl-get-result) (and (eq? result (quote #nil)) (= eval-num 0) 
> (string=? module-name "(guile-user)") (string=? lang "elisp"))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "rrepl-get-result, multiple values"
>   source-file: "tests/dist.scm"
>   source-line: 167
>   source-form: (test-assert "rrepl-get-result, multiple values" (receive 
> (result eval-num module-name lang) (call-with-input-string 
> "scheme@(guile-user)> $0 = v1\n$1 = v2" rrepl-get-result) (and (vector? 
> eval-num) (vector? result) (eq? (vector-ref result 0) (quote v1)) (eq? 
> (vector-ref result 1) (quote v2)) (= (vector-ref eval-num 0) 0) (= 
> (vector-ref eval-num 1) 1) (string=? module-name "(guile-user)") (string=? 
> lang "scheme"))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "rrepl-skip-to-prompt, valid input"
>   source-file: "tests/dist.scm"
>   source-line: 181
>   source-form: (test-assert "rrepl-skip-to-prompt, valid input" (begin 
> (call-with-input-string "Enter `,help' for help." (lambda (port) 
> (rrepl-skip-to-prompt port))) #t))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "rrepl-skip-to-prompt, invalid input"
>   source-file: "tests/dist.scm"
>   source-line: 188
>   source-form: (test-assert "rrepl-skip-to-prompt, invalid input" (begin 
> (set-log-userdata! "rrepl-skip-to-prompt, invalid input") (catch #t (lambda 
> () (call-with-input-string "invalid input" (lambda (port) 
> (rrepl-skip-to-prompt port))) #f) (lambda (key . args) (let ((result (equal? 
> key (quote node-error)))) (unless result (format-log/scm (quote nolog) 
> "rrepl-skip-to-prompt, invalid input" (string-append "Errors do not match: " 
> "expected ~a, got ~a (args: ~a)") (quote node-error) key args)) result)))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "node-guile-version, valid response"
>   source-file: "tests/dist.scm"
>   source-line: 193
>   source-form: (test-assert "node-guile-version, valid response" (begin 
> (set-log-userdata! "node-guile-version, valid response") (run-client-test 
> start-server/exec (lambda () (call-with-connected-session (lambda (session) 
> (authenticate-server session) (format-log/scm (quote nolog) "client" 
> "session: ~a" session) (unless (equal? (userauth-none! session) (quote 
> success)) (error "Could not authenticate with a server" session)) (let ((n 
> (make-node session #:start-repl-server? #f))) (string=? (node-guile-version 
> n) "guile (GNU Guile) 2.0.14"))))))))
> Test end:
>   result-kind: pass
>   actual-value: #t
> Test begin:
>   test-name: "with-ssh"
>   source-file: "tests/dist.scm"
>   source-line: 216
>   source-form: (test-assert "with-ssh" (begin (set-log-userdata! "with-ssh") 
> (run-client-test (lambda (server) (server-listen server) (server-set! server 
> (quote log-verbosity) (quote functions)) (let ((session (server-accept 
> server))) (server-handle-key-exchange session) (start-session-loop session 
> (lambda (msg type) (format-log/scm (quote nolog) "server" "msg: ~a; type: ~a" 
> msg type) (case (car type) ((request-channel-open) (let ((c 
> (message-channel-request-open-reply-accept msg))) (format-log/scm (quote 
> nolog) "server" "channel 0: ~a" c) (write-line "Enter `,help' for help." c) 
> (format-log/scm (quote nolog) "server" "channel 1: ~a" c) (usleep 100) (poll 
> c (lambda args (let ((result (read-line c))) (format-log/scm (quote nolog) 
> "server" "sexp: ~a" result) (or (string=? result "(begin (+ 21 21))") (error 
> "Wrong result 1" result))) (let ((result (read-line c))) (format-log/scm 
> (quote nolog) "server" "sexp: ~a" result) (or (string=? result "(newline)") 
> (error "Wrong result 2" result))) (write-line "scheme@(guile-user)> $1 = 
> 42\n" c) (sleep 5) (close c) (while #t (sleep 60)))))) (else 
> (message-reply-success msg))))))) (lambda () (call-with-connected-session 
> (lambda (session) (authenticate-server session) (format-log/scm (quote nolog) 
> "client" "session: ~a" session) (unless (equal? (userauth-none! session) 
> (quote success)) (error "Could not authenticate with a server" session)) (let 
> ((n (make-node session #:start-repl-server? #f))) (= (with-ssh n (+ 21 21)) 
> 42))))))))
> result) (or (string=? result "(newline)") (error "Wrong result 2" result))) 
> (write-line "scheme@(guile-user)> $1 = 42\n" c) (sleep 5) (close c) (while #t 
> (sleep 60)))))) (else (message-reply-success msg))))))) (lambda () 
> (call-with-connected-session (lambda (session) (authenticate-server session) 
> (format-log/scm (quote nolog) "client" "session: ~a" session) (unless (equal? 
> (userauth-none! session) (quote success)) (error "Could not authenticate with 
> a server" session)) (let ((n (make-node session #:start-repl-server? #f))) (= 
> (with-ssh n (+ 21 21)) 42))))))))
> Test end:
>   result-kind: fail
>   actual-value: #f
>   actual-error: (guile-ssh-error "read_from_channel_port" "Error reading from 
> the channel" #<unknown channel (freed) 564c40af72c0> #f)
> Group end: dist
> # of expected passes      18
> # of unexpected failures  1
> FAIL dist.scm (exit status: 1)
> 
> ============================================================================
> Testsuite summary for Guile-SSH 0.11.3
> ============================================================================
> # TOTAL: 11
> # PASS:  10
> # SKIP:  0
> # XFAIL: 0
> # FAIL:  1
> # XPASS: 0
> # ERROR: 0
> ============================================================================
> See tests/test-suite.log
> Please report to poptsov.art...@gmail.com
> ============================================================================
> make[5]: *** [Makefile:656: test-suite.log] Error 1
> make[5]: Leaving directory '/<<PKGBUILDDIR>>/tests'
> make[4]: *** [Makefile:764: check-TESTS] Error 2
> make[4]: Leaving directory '/<<PKGBUILDDIR>>/tests'
> make[3]: *** [Makefile:830: check-am] Error 2
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/tests'
> make[2]: *** [Makefile:414: check-recursive] Error 1
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> dh_auto_test: error: make -j1 check VERBOSE=1 returned exit code 2

The full build log is available from:
   http://qa-logs.debian.net/2020/05/01/guile-ssh_0.11.3-2_unstable.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.

Reply via email to