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.