[Pkg-javascript-devel] Bug#1131668: node-sinon: FTBFS: 1027 passing 4 failing

Santiago Vila sanvila at debian.org
Mon Mar 23 11:55:06 GMT 2026


Package: src:node-sinon
Version: 18.0.0+ds2+~cs75.4.16-2
Severity: serious
Tags: ftbfs forky sid

Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202603/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:node-sinon, so that this is still
visible in the BTS web page for this package.

Thanks.

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean
   dh_auto_clean --buildsystem=nodejs
	rm -rf ./node_modules/.cache ./.nyc_output
	rm -rf nise/node_modules/.cache nise/.nyc_output
	rm -rf sinonjscommons/node_modules/.cache sinonjscommons/.nyc_output
	rm -rf sinonjsfake-timers/node_modules/.cache sinonjsfake-timers/.nyc_output
	rm -rf sinonjsreferee/node_modules/.cache sinonjsreferee/.nyc_output
	rm -rf sinonjsreferee-sinon/node_modules/.cache sinonjsreferee-sinon/.nyc_output
	rm -rf sinonjssamsam/node_modules/.cache sinonjssamsam/.nyc_output
	rm -rf typessinon/node_modules/.cache typessinon/.nyc_output
	rm -rf typessinonjs-fake-timers/node_modules/.cache typessinonjs-fake-timers/.nyc_output
rm ./node_modules/.cache
unlink ./node_modules/diff
rm nise/node_modules/.cache

[... snipped ...]


  getMessage
    undefined returns the 'msg' argument
    when referee[type][name][msg] is a function
      undefined returns the result of calling the function
    when referee[type][name][msg] is non-empty string
      undefined returns that string
    when referee[type][name][msg] is an empty string
      undefined returns the 'msg' argument

  equals
    undefined should be deepEqual from @sinonjs/samsam

  expect
    undefined should be function
    undefined should bind assert.equals to argument
    undefined should fail assertion if a not equals b
    undefined should fail assertion by calling buster.assert.fail
    undefined should emit assertion pass event
    undefined should emit assertion fail event
    undefined should expose refutation as expectation too
    undefined should expose all assertions

  match
    undefined should be createMatcher from @sinonjs/samsam
    with assert.equals
      undefined should pass match.string in object
      undefined should fail match.string in object
      undefined should pass sinon.match.string in object
    with refute.equals
      undefined should pass match.string in object
      undefined should fail match.string in object

  API
    undefined should only have expected properties
    .add
      undefined should be a binary Function named 'add'
    .assert
      undefined should be a binary Function named 'assert'
    .refute
      undefined should be a binary Function named 'refute'
    .expect
      undefined should be a zero-arity Function named 'expect'
    .fail
      undefined should be a binary Function named 'fail'
    .pass
      undefined should be a unary Function named 'pass'
    .verifier
      undefined should be a zero-arity Function named 'verifier'
    .equals
      undefined should be a binary Function named 'equals'
    .match
      undefined should be a binary Function named 'match'
    assertions
      undefined has 'isMap' assertion
      undefined has 'isUint8ClampedArray' assertion
      undefined has 'isURIError' assertion
      undefined has 'isWeakMap' assertion
      undefined has 'isWeakSet' assertion
      undefined has 'json' assertion
      undefined has 'keys' assertion
      undefined has 'less' assertion
      undefined has 'matchJson' assertion
      undefined has 'match' assertion
      undefined has 'near' assertion
      undefined has 'rejects' assertion
      undefined has 'resolves' assertion
      undefined has 'same' assertion
      undefined has 'tagName' assertion

  refute
    undefined allows false
    undefined allows falsy values
    undefined allows false with message
    undefined does not allow true
    undefined does not allow truthy values
    undefined does not allow true with message
    undefined fails with generated message
    undefined fails with custom message
    undefined fails if not passed arguments
    undefined does not throw if not configured to
    when called with wrong number of arguments
      undefined throws an Error
    when calling .toString()
      undefined should return 'referee.refute()'

  verifier
    undefined should increment verify.count on pass
    undefined should increment verify.count on failure
    after call
      undefined should not increment verify.count on assert
      undefined should not increment verify.count on refute
    when called with zero expected argument
      undefined should throw an error
    when called with non-number expected argument
      undefined should throw an error
    when no assertions have been made
      undefined should throw an Error
    when called without an expected value
      undefined should not throw
    when called with an expected value
      when expected === verify.count
        undefined should not throw
      when expected !== verify.count
        undefined should throw an error


  1027 passing (312ms)
  4 failing

  1) refute.isArrayBuffer
       when called with an ArrayBuffer instance
         should fail:

      AssertionError [ERR_ASSERTION]: '[refute.isArrayBuffer] Expected ArrayBuffer {\n' +
  '  [Uint8Contents]: <00 00 00 00 00 00 00 00>,\n' +
  '  [byteLength]: 8\n' +
  '} not to be an ArrayBuffer' == '[refute.isArrayBuffer] Expected ArrayBuffer {\n' +
  '  [Uint8Contents]: <00 00 00 00 00 00 00 00>,\n' +
  '  byteLength: 8\n' +
  '} not to be an ArrayBuffer'
      + expected - actual

       [refute.isArrayBuffer] Expected ArrayBuffer {
         [Uint8Contents]: <00 00 00 00 00 00 00 00>,
      -  [byteLength]: 8
      +  byteLength: 8
       } not to be an ArrayBuffer
      
      at Object.<anonymous> (lib/assertions/is-array-buffer.test.js:87:18)
      at expectedException (node:assert:576:17)
      at expectsError (node:assert:701:21)
      at Function.throws (node:assert:757:3)
      at Context.<anonymous> (lib/assertions/is-array-buffer.test.js:81:14)
      at callFn (/usr/share/nodejs/mocha/lib/runnable.js:366:21)
      at Runnable.run (/usr/share/nodejs/mocha/lib/runnable.js:354:5)
      at Runner.runTest (/usr/share/nodejs/mocha/lib/runner.js:719:10)
      at /usr/share/nodejs/mocha/lib/runner.js:842:12
      at next (/usr/share/nodejs/mocha/lib/runner.js:634:14)
      at /usr/share/nodejs/mocha/lib/runner.js:644:7
      at next (/usr/share/nodejs/mocha/lib/runner.js:527:14)
      at Immediate._onImmediate (/usr/share/nodejs/mocha/lib/runner.js:612:5)
      at process.processImmediate (node:internal/timers:484:21)

  2) assert.isDataView
       should fail for ArrayBuffer:

      AssertionError [ERR_ASSERTION]: '[assert.isDataView] Expected ArrayBuffer {\n' +
  '  [Uint8Contents]: <00 00 00 00 00 00 00 00>,\n' +
  '  [byteLength]: 8\n' +
  '} to be a DataView' == '[assert.isDataView] Expected ArrayBuffer {\n' +
  '  [Uint8Contents]: <00 00 00 00 00 00 00 00>,\n' +
  '  byteLength: 8\n' +
  '} to be a DataView'
      + expected - actual

       [assert.isDataView] Expected ArrayBuffer {
         [Uint8Contents]: <00 00 00 00 00 00 00 00>,
      -  [byteLength]: 8
      +  byteLength: 8
       } to be a DataView
      
      at Object.<anonymous> (lib/assertions/is-data-view.test.js:26:16)
      at expectedException (node:assert:576:17)
      at expectsError (node:assert:701:21)
      at Function.throws (node:assert:757:3)
      at Context.<anonymous> (lib/assertions/is-data-view.test.js:20:12)
      at callFn (/usr/share/nodejs/mocha/lib/runnable.js:366:21)
      at Runnable.run (/usr/share/nodejs/mocha/lib/runnable.js:354:5)
      at Runner.runTest (/usr/share/nodejs/mocha/lib/runner.js:719:10)
      at /usr/share/nodejs/mocha/lib/runner.js:842:12
      at next (/usr/share/nodejs/mocha/lib/runner.js:634:14)
      at /usr/share/nodejs/mocha/lib/runner.js:644:7
      at next (/usr/share/nodejs/mocha/lib/runner.js:527:14)
      at Immediate._onImmediate (/usr/share/nodejs/mocha/lib/runner.js:612:5)
      at process.processImmediate (node:internal/timers:484:21)

  3) refute.isDataView
       should fail for DataView:

      AssertionError [ERR_ASSERTION]: '[refute.isDataView] Expected DataView {\n' +
  '  [byteLength]: 8,\n' +
  '  [byteOffset]: 0,\n' +
  '  [buffer]: ArrayBuffer {\n' +
  '    [Uint8Contents]: <00 00 00 00 00 00 00 00>,\n' +
  '    [byteLength]: 8\n' +
  '  }\n' +
  '} not to be a DataView' == '[refute.isDataView] Expected DataView {\n' +
  '  byteLength: 8,\n' +
  '  byteOffset: 0,\n' +
  '  buffer: ArrayBuffer {\n' +
  '    [Uint8Contents]: <00 00 00 00 00 00 00 00>,\n' +
  '    byteLength: 8\n' +
  '  }\n' +
  '} not to be a DataView'
      + expected - actual

       [refute.isDataView] Expected DataView {
      -  [byteLength]: 8,
      -  [byteOffset]: 0,
      -  [buffer]: ArrayBuffer {
      +  byteLength: 8,
      +  byteOffset: 0,
      +  buffer: ArrayBuffer {
           [Uint8Contents]: <00 00 00 00 00 00 00 00>,
      -    [byteLength]: 8
      +    byteLength: 8
         }
       } not to be a DataView
      
      at Object.<anonymous> (lib/assertions/is-data-view.test.js:121:16)
      at expectedException (node:assert:576:17)
      at expectsError (node:assert:701:21)
      at Function.throws (node:assert:757:3)
      at Context.<anonymous> (lib/assertions/is-data-view.test.js:115:12)
      at callFn (/usr/share/nodejs/mocha/lib/runnable.js:366:21)
      at Runnable.run (/usr/share/nodejs/mocha/lib/runnable.js:354:5)
      at Runner.runTest (/usr/share/nodejs/mocha/lib/runner.js:719:10)
      at /usr/share/nodejs/mocha/lib/runner.js:842:12
      at next (/usr/share/nodejs/mocha/lib/runner.js:634:14)
      at /usr/share/nodejs/mocha/lib/runner.js:644:7
      at next (/usr/share/nodejs/mocha/lib/runner.js:527:14)
      at Immediate._onImmediate (/usr/share/nodejs/mocha/lib/runner.js:612:5)
      at process.processImmediate (node:internal/timers:484:21)

  4) refute.isDataView
       should fail with custom message:

      AssertionError [ERR_ASSERTION]: '[refute.isDataView] ce1d6d74-060d-4655-b008-00b6cdfe1298: Expected DataView {\n' +
  '  [byteLength]: 8,\n' +
  '  [byteOffset]: 0,\n' +
  '  [buffer]: ArrayBuffer {\n' +
  '    [Uint8Contents]: <00 00 00 00 00 00 00 00>,\n' +
  '    [byteLength]: 8\n' +
  '  }\n' +
  '} not to be a DataView' == '[refute.isDataView] ce1d6d74-060d-4655-b008-00b6cdfe1298: Expected DataView {\n' +
  '  byteLength: 8,\n' +
  '  byteOffset: 0,\n' +
  '  buffer: ArrayBuffer {\n' +
  '    [Uint8Contents]: <00 00 00 00 00 00 00 00>,\n' +
  '    byteLength: 8\n' +
  '  }\n' +
  '} not to be a DataView'
      + expected - actual

       [refute.isDataView] ce1d6d74-060d-4655-b008-00b6cdfe1298: Expected DataView {
      -  [byteLength]: 8,
      -  [byteOffset]: 0,
      -  [buffer]: ArrayBuffer {
      +  byteLength: 8,
      +  byteOffset: 0,
      +  buffer: ArrayBuffer {
           [Uint8Contents]: <00 00 00 00 00 00 00 00>,
      -    [byteLength]: 8
      +    byteLength: 8
         }
       } not to be a DataView
      
      at Object.<anonymous> (lib/assertions/is-data-view.test.js:163:16)
      at expectedException (node:assert:576:17)
      at expectsError (node:assert:701:21)
      at Function.throws (node:assert:757:3)
      at Context.<anonymous> (lib/assertions/is-data-view.test.js:157:12)
      at callFn (/usr/share/nodejs/mocha/lib/runnable.js:366:21)
      at Runnable.run (/usr/share/nodejs/mocha/lib/runnable.js:354:5)
      at Runner.runTest (/usr/share/nodejs/mocha/lib/runner.js:719:10)
      at /usr/share/nodejs/mocha/lib/runner.js:842:12
      at next (/usr/share/nodejs/mocha/lib/runner.js:634:14)
      at /usr/share/nodejs/mocha/lib/runner.js:644:7
      at next (/usr/share/nodejs/mocha/lib/runner.js:527:14)
      at Immediate._onImmediate (/usr/share/nodejs/mocha/lib/runner.js:612:5)
      at process.processImmediate (node:internal/timers:484:21)



dh_auto_test: error: cd ./sinonjsreferee && sh -ex ../debian/nodejs/sinonjsreferee/test returned exit code 4
make: *** [debian/rules:8: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
--------------------------------------------------------------------------------



More information about the Pkg-javascript-devel mailing list