[Pkg-javascript-devel] Bug#954597: node-libnpx: FTBFS: dh_auto_test: error: /bin/sh -e debian/tests/pkg-js/test returned exit code 123

Lucas Nussbaum lucas at debian.org
Sun Mar 22 08:21:20 GMT 2020


Source: node-libnpx
Version: 10.2.1-1
Severity: serious
Justification: FTBFS on amd64
Tags: bullseye sid ftbfs
Usertags: ftbfs-20200321 ftbfs-bullseye

Hi,

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

Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> tail -n +2 README.md | marked-man --manual 'User Commands' --version libnpx@$(dpkg-parsechangelog -S version) > libnpx.1
> make[1]: Leaving directory '/<<PKGBUILDDIR>>'
>    dh_auto_test --buildsystem=nodejs
> 	/bin/sh -e debian/tests/pkg-js/test
> TAP version 13
> # Subtest: test/child.js
>     # Subtest: escapeArg on *nix
>         ok 1 - standard arg left intact
>         ok 2 - '-escaped on *nix
>         ok 3 - paths escaped as usual
>         1..3
>     ok 1 - escapeArg on *nix # time=4.332ms
>     
>     # Subtest: escapeArg on win32
>         ok 1 - standard arg escaped
>         ok 2 - "-escaped on win32
>         ok 3 - paths escaped as usual
>         1..3
>     ok 2 - escapeArg on win32 # time=1.232ms
>     
>     # Subtest: exec
>         ok 1 - command string concatenated
>         ok 2 - options received!
>         ok 3 - unix-style escapes
>         ok 4 - win32-style escapes
>         ok 5 - got error
>         1..5
>     ok 3 - exec # time=10.984ms
>     
>     # Subtest: exec (integration)
>         ok 1 - node ran successfully
>         ok 2 - got the exit code from subproc
>         1..2
>     ok 4 - exec (integration) # time=900.968ms
>     
>     # Subtest: spawn
>         ok 1 - should be equivalent
>         ok 2 - got the exit code from
>         1..2
>     ok 5 - spawn # time=920.396ms
>     
>     # Subtest: runCommand with command arg
>         ok 1 - should be equivalent
>         ok 2 - got the exit code from subproc
>         ok 3 - error message reports ENOENT
>         ok 4 - "not found" has code 127
>         1..4
>     ok 6 - runCommand with command arg # time=901.134ms
>     
>     # Subtest: runCommand with opts.command
>         ok 1 - should be equivalent
>         1..1
>     ok 7 - runCommand with opts.command # time=453.162ms
>     
>     # Subtest: runCommand with opts.call and opts.shell
>         ok 1 - should be equivalent
>         1..1
>     ok 8 - runCommand with opts.call and opts.shell # time=446.37ms
>     
>     1..8
>     # time=3648.719ms
> ok 1 - test/child.js # time=4189.334ms
> 
> # Subtest: test/get-prefix.js
>     # Subtest: navigates out of `node_modules` without fs nav
>         ok 1 - navigates out of node_modules
>         1..1
>     ok 1 - navigates out of `node_modules` without fs nav # time=3.833ms
>     
>     # Subtest: detects if currently in an npm package using package.json
>         ok 1 - current dir worked out
>         1..1
>     ok 2 - detects if currently in an npm package using package.json # time=2.776ms
>     
>     # Subtest: detects if currently in an npm package using node_modules
>         ok 1 - current dir worked out
>         1..1
>     ok 3 - detects if currently in an npm package using node_modules # time=0.946ms
>     
>     # Subtest: returns false if no package was found in parent dirs
>         ok 1 - returned the false
>         1..1
>     ok 4 - returns false if no package was found in parent dirs # time=0.808ms
>     
>     # Subtest: navigates up the filesystem until it finds a package
>         ok 1 - navigated all the way up
>         1..1
>     ok 5 - navigates up the filesystem until it finds a package # time=1.555ms
>     
>     # Subtest: doesn't go too far while navigating up
>         ok 1 - stopped before root
>         1..1
>     ok 6 - doesn't go too far while navigating up # time=1.656ms
>     
>     # Subtest: fileExists unit
>         ok 1 - existing stat returned
>         ok 2 - missing file succeeds with falsy
>         ok 3 - other errors thrown
>         1..3
>     ok 7 - fileExists unit # time=4.073ms
>     
>     # Subtest: isRootPath unit
>         ok 1 - detected root on windows
>         ok 2 - detected non-root on windows
>         ok 3 - detected root on darwin
>         ok 4 - detected non-root on darwin
>         ok 5 - detected root on linux
>         ok 6 - detected non-root on linux
>         1..6
>     ok 8 - isRootPath unit # time=2.08ms
>     
>     1..8
>     # time=48.346ms
> ok 2 - test/get-prefix.js # time=593.419ms
> 
> # Subtest: test/guess-command-name.js
>     # Subtest: guesses unscoped registry binaries
>         ok 1 - should be equal
>         1..1
>     ok 1 - guesses unscoped registry binaries # time=21.873ms
>     
>     # Subtest: guesses scoped registry binaries
>         ok 1 - should be equal
>         1..1
>     ok 2 - guesses scoped registry binaries # time=1.196ms
>     
>     # Subtest: guesses hosted git binaries
>         ok 1 - should be equal
>         ok 2 - should be equal
>         1..2
>     ok 3 - guesses hosted git binaries # time=5.797ms
>     
>     # Subtest: guesses git binaries
>         ok 1 - should be equal
>         ok 2 - should be equal
>         1..2
>     ok 4 - guesses git binaries # time=1.722ms
>     
>     # Subtest: leaves local directory/file commands intact
>         ok 1 - should be equal
>         ok 2 - should be equal
>         ok 3 - should be equal
>         ok 4 - should be equal
>         1..4
>     ok 5 - leaves local directory/file commands intact # time=2.01ms
>     
>     # Subtest: guesses remote tarballs
>         ok 1 - should be equal
>         ok 2 - should be equal
>         ok 3 - should be equal
>         1..3
>     ok 6 - guesses remote tarballs # time=1.894ms
>     
>     # Subtest: guesses local tarballs
>         ok 1 - should be equal
>         ok 2 - should be equal
>         ok 3 - should be equal
>         1..3
>     ok 7 - guesses local tarballs # time=1.227ms
>     
>     # Subtest: warns when something could not be guessed
>         ok 1 - should match pattern provided
>         1..1
>     ok 8 - warns when something could not be guessed # time=22.387ms
>     
>     1..8
>     # time=80.158ms
> ok 3 - test/guess-command-name.js # time=614.088ms
> 
> # Subtest: test/index.js
>     # Subtest: npx --shell-auto-fallback
>         ok 1 - command succeeded
>         ok 2 - got shell code in output
>         1..2
>     ok 1 - npx --shell-auto-fallback # time=501.584ms
>     
>     # Subtest: npx no command
>         ok 1 - got 1 as exit code
>         ok 2 - got a useful error message
>         ok 3 - npx help printed
>         1..3
>     ok 2 - npx no command # time=536.757ms
>     
>     # Subtest: npx existing subcommand
>         ok 1 - no stderr output
>         ok 2 - got output from command
>         1..2
>     ok 3 - npx existing subcommand # time=466.077ms
>     
>     # Subtest: installPackages unit
>         not ok 1 - ENOENT: no such file or directory, stat '/usr/lib/nodejs/npm/bin/npm-cli.js'
>           ---
>           errno: -2
>           code: ENOENT
>           syscall: stat
>           path: /usr/lib/nodejs/npm/bin/npm-cli.js
>           test: installPackages unit
>           ...
>         
>         1..1
>         # failed 1 test
>     not ok 4 - installPackages unit # time=16.122ms
>     
>     # Subtest: getNpmCache
>         not ok 1 - ENOENT: no such file or directory, stat '/usr/lib/nodejs/npm/bin/npm-cli.js'
>           ---
>           errno: -2
>           code: ENOENT
>           syscall: stat
>           path: /usr/lib/nodejs/npm/bin/npm-cli.js
>           test: getNpmCache
>           ...
>         
>         1..1
>         # failed 1 test
>     not ok 5 - getNpmCache # time=4.994ms
>     
>     # Subtest: findNodeScript
>         ok 1 - existing returned as-is on *nix
>         ok 2 - files that are not standalone node scripts are false
>         ok 3 - no node script found if existing is null
>         ok 4 - resolved dir dep to index.js
>         ok 5 - close error rethrown
>         1..5
>     ok 6 - findNodeScript # time=9.642ms
>     
>     ok 7 - noisy npx with --quiet arg on windows # SKIP Only on Windows does the path to the downloaded module get printed
>     ok 8 - nice error message when no binaries on windows # SKIP Only on Windows is the error message inscrutable
>     ok 9 - --node-arg works on Windows # SKIP Only on Windows does --node-arg have issues
>     1..9
>     # failed 2 of 9 tests
>     # skip: 3
>     # time=1544.657ms
> not ok 4 - test/index.js # time=2090.678ms
>   ---
>   timeout: 30000
>   file: test/index.js
>   command: /usr/bin/node
>   args:
>     - test/index.js
>   stdio:
>     - 0
>     - pipe
>     - 2
>   cwd: /<<PKGBUILDDIR>>
>   exitCode: 1
>   ...
> 
> # Subtest: test/parse-args.js
>     # Subtest: parses basic command
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equal
>         ok 6 - should be equivalent
>         1..6
>     ok 1 - parses basic command # time=5.484ms
>     
>     # Subtest: parses command with version
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         1..4
>     ok 2 - parses command with version # time=22.524ms
>     
>     # Subtest: parses command opts
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 3 - parses command opts # time=1.13ms
>     
>     # Subtest: parses scoped package command opts
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 4 - parses scoped package command opts # time=1.284ms
>     
>     # Subtest: ignores options after command
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 5 - ignores options after command # time=1.014ms
>     
>     # Subtest: assumes unknown args before cmd have values and ignores them
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 6 - assumes unknown args before cmd have values and ignores them # time=30.963ms
>     
>     # Subtest: parses package option
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 7 - parses package option # time=2.443ms
>     
>     # Subtest: parses multiple package options
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 8 - parses multiple package options # time=2.169ms
>     
>     # Subtest: does not parse -c
>         ok 1 - stays unparsed
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 9 - does not parse -c # time=1.844ms
>     
>     # Subtest: uses -p even with -c
>         ok 1 - should be equivalent
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 10 - uses -p even with -c # time=1.96ms
>     
>     # Subtest: -p prevents command parsing
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 11 - -p prevents command parsing # time=1.997ms
>     
>     # Subtest: -- stops option parsing but still does command
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 12 - -- stops option parsing but still does command # time=2.065ms
>     
>     # Subtest: -- still respects -p
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - should be equivalent
>         1..5
>     ok 13 - -- still respects -p # time=2.018ms
>     
>     # Subtest: allows configuration of npm binary
>         ok 1 - should be equal
>         1..1
>     ok 14 - allows configuration of npm binary # time=1.529ms
>     
>     # Subtest: treats directory-type commands specially
>         ok 1 - should be equal
>         ok 2 - should be equivalent
>         ok 3 - should be equal
>         ok 4 - should be equal
>         ok 5 - expect truthy value
>         ok 6 - should be equal
>         ok 7 - expect truthy value
>         ok 8 - should be equivalent
>         ok 9 - should be equal
>         ok 10 - should be equal
>         1..10
>     ok 15 - treats directory-type commands specially # time=3.713ms
>     
>     # Subtest: -n and --node-arg special parsing rules
>         ok 1 - should match pattern provided
>         ok 2 - should match pattern provided
>         ok 3 - should match pattern provided
>         ok 4 - should match pattern provided
>         ok 5 - should match pattern provided
>         ok 6 - should match pattern provided
>         ok 7 - should match pattern provided
>         ok 8 - should match pattern provided
>         ok 9 - should match pattern provided
>         ok 10 - should match pattern provided
>         1..10
>     ok 16 - -n and --node-arg special parsing rules # time=15.295ms
>     
>     1..16
>     # time=127.789ms
> ok 5 - test/parse-args.js # time=659.445ms
> 
> # Subtest: test/util.js
>     # Subtest: promisify with existing util.promisify
>         ok 1 - used existing promisify fn
>         1..1
>     ok 1 - promisify with existing util.promisify # time=3.979ms
>     
>     # Subtest: promisify without existing util.promisify
>         ok 1 - got a thenable
>         ok 2 - value passed through successfully
>         ok 3 - got the error!
>         1..3
>     ok 2 - promisify without existing util.promisify # time=3.246ms
>     
>     1..2
>     # time=14.542ms
> ok 6 - test/util.js # time=544.749ms
> 
> 1..6
> # failed 1 of 6 tests
> # time=8709.964ms
> dh_auto_test: error: /bin/sh -e debian/tests/pkg-js/test returned exit code 123

The full build log is available from:
   http://qa-logs.debian.net/2020/03/21/node-libnpx_10.2.1-1_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.



More information about the Pkg-javascript-devel mailing list