Source: node-vinyl-fs Version: 3.0.3-4 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): > dpkg-buildpackage > ----------------- > > Command: dpkg-buildpackage -us -uc -sa -rfakeroot > dpkg-buildpackage: info: source package node-vinyl-fs > dpkg-buildpackage: info: source version 3.0.3-4 > dpkg-buildpackage: info: source distribution unstable > dpkg-buildpackage: info: source changed by Xavier Guimard <y...@debian.org> > dpkg-source --before-build . > dpkg-buildpackage: info: host architecture amd64 > debian/rules clean > dh clean --with nodejs > dh_auto_clean --buildsystem=nodejs > rm -rf ./node_modules/.cache > rm -rf append-buffer/node_modules/.cache > rm -rf buffer-equal/node_modules/.cache > rm -rf define-properties/node_modules/.cache > rm -rf fs-mkdirp-stream/node_modules/.cache > rm -rf has-symbols/node_modules/.cache > rm -rf is-utf8/node_modules/.cache > rm -rf lead/node_modules/.cache > rm -rf now-and-later/node_modules/.cache > rm -rf object-assign/node_modules/.cache > rm -rf object-keys/node_modules/.cache > rm -rf remove-bom-buffer/node_modules/.cache > rm -rf remove-bom-stream/node_modules/.cache > rm -rf resolve-options/node_modules/.cache > rm -rf to-through/node_modules/.cache > rm -rf value-or-function/node_modules/.cache > rm -rf vinyl-sourcemap/node_modules/.cache > dh_clean > dpkg-source -b . > dpkg-source: info: using source format '3.0 (quilt)' > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-append-buffer.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-buffer-equal.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-define-properties.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-fs-mkdirp-stream.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-has-symbols.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-is-utf8.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-lead.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-now-and-later.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-object-assign.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-object-keys.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-remove-bom-buffer.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-remove-bom-stream.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-resolve-options.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-to-through.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-value-or-function.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig-vinyl-sourcemap.tar.gz > dpkg-source: info: building node-vinyl-fs using existing > ./node-vinyl-fs_3.0.3.orig.tar.gz > dpkg-source: info: using patch list from debian/patches/series > dpkg-source: info: building node-vinyl-fs in > node-vinyl-fs_3.0.3-4.debian.tar.xz > dpkg-source: info: building node-vinyl-fs in node-vinyl-fs_3.0.3-4.dsc > debian/rules binary > dh binary --with nodejs > dh_update_autotools_config > dh_autoreconf > dh_auto_configure --buildsystem=nodejs > mkdir node_modules > ln -s ../append-buffer node_modules/append-buffer > ln -s ../buffer-equal node_modules/buffer-equal > ln -s ../define-properties node_modules/define-properties > ln -s ../fs-mkdirp-stream node_modules/fs-mkdirp-stream > ln -s ../has-symbols node_modules/has-symbols > ln -s ../is-utf8 node_modules/is-utf8 > ln -s ../lead node_modules/lead > ln -s ../now-and-later node_modules/now-and-later > ln -s ../object-assign node_modules/object.assign > ln -s ../object-keys node_modules/object-keys > ln -s ../remove-bom-buffer node_modules/remove-bom-buffer > ln -s ../remove-bom-stream node_modules/remove-bom-stream > ln -s ../resolve-options node_modules/resolve-options > ln -s ../to-through node_modules/to-through > ln -s ../value-or-function node_modules/value-or-function > ln -s ../vinyl-sourcemap node_modules/vinyl-sourcemap > dh_auto_build --buildsystem=nodejs > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > No build command found, searching known files > dh_auto_test --buildsystem=nodejs > /bin/sh -e debian/tests/pkg-js/test > > > .dest() with custom modes > ✓ sets the mode of a written buffer file if set on the vinyl object > ✓ sets the sticky bit on the mode of a written stream file if set on the > vinyl object > ✓ sets the mode of a written stream file if set on the vinyl object > ✓ sets the mode of a written directory if set on the vinyl object > ✓ sets sticky bit on the mode of a written directory if set on the vinyl > object > ✓ writes new files with the mode specified in options > ✓ updates the file mode to match the vinyl mode > ✓ updates the directory mode to match the vinyl mode > ✓ uses different modes for files and directories > ✓ does not fchmod a matching file > ✓ sees a file with special chmod (setuid/setgid/sticky) as distinct > ✓ reports fchmod errors > > .dest() with custom owner > 1) calls fchown when the uid and/or gid are provided on the vinyl stat > ✓ does not call fchown when the uid and gid provided on the vinyl stat > are invalid > > .dest() with symlinks > ✓ creates symlinks when `file.isSymbolic()` is true > ✓ does not create symlinks when `file.isSymbolic()` is false > ✓ errors if missing a `.symlink` property > ✓ emits Vinyl files that are (still) symbolic > ✓ can create relative links > ✓ (*nix) creates a link for a directory > - (windows) creates a junction for a directory > - (windows) options can disable junctions for a directory > - (windows) options can disable junctions for a directory (as a function) > ✓ (*nix) can create relative links for directories > ✓ (*nix) receives a virtual symbolic directory and creates a symlink > - (windows) receives a virtual symbolic directory and creates a symlink > - (windows) relativeSymlinks option is ignored when junctions are used > - (windows) supports relativeSymlinks option when link is not for a > directory > - (windows) can create relative links for directories when junctions are > disabled > ✓ does not overwrite links with overwrite option set to false > ✓ overwrites links with overwrite option set to true > ✓ does not overwrite links with overwrite option set to a function that > returns false > ✓ overwrites links with overwrite option set to a function that returns > true > > .dest() with custom times > ✓ does not call futimes when no mtime is provided on the vinyl stat > ✓ calls futimes when an mtime is provided on the vinyl stat > ✓ does not call futimes when provided mtime on the vinyl stat is invalid > ✓ calls futimes when provided mtime on the vinyl stat is valid but > provided atime is invalid > ✓ writes file atime and mtime using the vinyl stat > > .dest() > ✓ throws on no folder argument > ✓ throws on empty string folder argument > ✓ accepts the sourcemap option as true > ✓ accepts the sourcemap option as a string > ✓ inlines sourcemaps when option is true > ✓ generates an extra File when option is a string > ✓ passes through writes with cwd > ✓ passes through writes with default cwd > ✓ does not write null files > ✓ writes buffer files to the right folder with relative cwd > ✓ writes buffer files to the right folder with function and relative cwd > ✓ writes buffer files to the right folder > ✓ writes streaming files to the right folder > ✓ writes large streaming files to the right folder > ✓ writes directories to the right folder > ✓ allows piping multiple dests in streaming mode > ✓ writes new files with the default user mode > ✓ reports i/o errors > ✓ reports stat errors > ✓ does not overwrite files with overwrite option set to false > ✓ overwrites files with overwrite option set to true > ✓ does not overwrite files with overwrite option set to a function that > returns false > ✓ overwrites files with overwrite option set to a function that returns > true > ✓ appends content with append option set to true > ✓ appends content with append option set to a function that returns true > ✓ emits a finish event > ✓ does not get clogged by highWaterMark > ✓ allows backpressure when piped to another, slower stream (6013ms) > ✓ respects data listeners on destination stream > ✓ sinks the stream if all the readable event handlers are removed > ✓ sinks the stream if all the data event handlers are removed > ✓ successfully processes files with streaming contents > ✓ errors when a non-Vinyl object is emitted > ✓ errors when a buffer-mode stream is piped to it > ✓ errors if we cannot mkdirp > ✓ errors if vinyl object is a directory and we cannot mkdirp > ✓ does not error if vinyl object is a directory and we cannot open it > ✓ errors if vinyl object is a directory and open errors > ✓ errors if content stream errors > ✓ does not pass options on to through2 > ✓ does not marshall a Vinyl object with isSymbolic method > ✓ marshalls a Vinyl object without isSymbolic to a newer Vinyl > > isOwner > ✓ uses process.geteuid() when available > ✓ uses process.getuid() when geteuid() is not available > ✓ returns false when non-root and non-owner > ✓ returns true when owner and non-root > ✓ returns true when non-owner but root > > isValidUnixId > ✓ returns true if the given id is a valid unix id > ✓ returns false if the given id is not a number > ✓ returns false when the given id is less than 0 > > getFlags > ✓ returns wx if overwrite is false and append is false > ✓ returns w if overwrite is true and append is false > ✓ returns ax if overwrite is false and append is true > ✓ returns a if overwrite is true and append is true > > isFatalOverwriteError > ✓ returns false if not given any error > ✓ returns true if code != EEXIST > ✓ returns false if code == EEXIST and flags == wx > ✓ returns false if code == EEXIST and flags == ax > ✓ returns true if error.code == EEXIST and flags == w > ✓ returns true if error.code == EEXIST and flags == a > > isFatalUnlinkError > ✓ returns false if not given any error > ✓ returns false if code == ENOENT > ✓ returns true if code != ENOENT > > getModeDiff > ✓ returns 0 if both modes are the same > ✓ returns 0 if vinyl mode is not a number > ✓ returns a value greater than 0 if modes are different > ✓ returns the proper diff > ✓ does not matter the order of diffing > ✓ includes the sticky/setuid/setgid bits > > getTimesDiff > ✓ returns undefined if vinyl mtime is not a valid date > ✓ returns undefined if vinyl mtime & atime are both equal to counterparts > ✓ returns undefined if vinyl mtimes equals the counterpart and atimes are > null > ✓ returns a diff object if mtimes do not match > ✓ returns a diff object if atimes do not match > ✓ returns the fs atime if the vinyl atime is invalid > ✓ makes atime diff undefined if fs and vinyl atime are invalid > > getOwnerDiff > ✓ returns undefined if vinyl uid & gid are invalid > ✓ returns undefined if vinyl uid & gid are both equal to counterparts > ✓ returns a diff object if uid or gid do not match > ✓ returns the fs uid if the vinyl uid is invalid > ✓ returns the fs gid if the vinyl gid is invalid > ✓ returns undefined if fs and vinyl uid are invalid > ✓ returns undefined if fs and vinyl gid are invalid > > closeFd > ✓ calls the callback with propagated error if fd is not a number > ✓ calls the callback with propagated error if close succeeds > ✓ calls the callback with no error if close succeeds & no propagated error > > writeFile > ✓ writes a file to the filesystem, does not close and returns the fd > ✓ defaults to writing files with 0666 mode > ✓ accepts a different mode in options > ✓ defaults to opening files with write flag > ✓ accepts a different flags in options > ✓ appends to a file if append flag is given > ✓ does not pass a file descriptor if open call errors > ✓ passes a file descriptor if write call errors > ✓ passes an error if called with string as data > ✓ does not error on SlowBuffer > ✓ does not error if options is falsey > > reflectStat > ✓ passes the error if stat fails > ✓ updates the vinyl with filesystem stats > > reflectLinkStat > ✓ passes the error if lstat fails > ✓ updates the vinyl with filesystem symbolic stats > > updateMetadata > ✓ passes the error if fstat fails > ✓ updates the vinyl object with fs stats > ✓ does not touch the fs if nothing to update > ✓ does not touch the fs if process is not owner of the file > ✓ updates times on fs and vinyl object if there is a diff > ✓ forwards futimes error and descriptor upon error > ✓ updates the mode on fs and vinyl object if there is a diff > ✓ updates the sticky bit on mode on fs and vinyl object if there is a diff > ✓ forwards fchmod error and descriptor upon error > ✓ updates the mode & times on fs and vinyl object if there is a diff > ✓ forwards fchmod error and descriptor through futimes if there is a time > diff > > createWriteStream > ✓ accepts just a file path and writes to it > ✓ accepts just a file path and writes a large file to it > ✓ accepts flags option > ✓ accepts append flag as option & places cursor at the end > ✓ accepts mode option > ✓ uses default file mode if no mode options > ✓ accepts a flush function that is called before close emitted > ✓ can specify flush without options argument > ✓ passes the file descriptor to flush > ✓ passes a callback to flush to call when work is done (251ms) > ✓ emits an error if open fails > ✓ emits an error if write fails > > integrations > ✓ (*nix) sources a directory, creates a symlink and copies it > - (windows) sources a directory, creates a junction and copies it > ✓ (*nix) sources a symlink and copies it > - (windows) sources a directory symlink and copies it > - (windows) sources a junction and copies it > > .dest() on not owned files > Test files not owned by root. > Test files not readable/writable by non-owners. > Please run the following commands and try again: > sudo chown root /<<PKGBUILDDIR>>/test/fixtures/not-owned/not-owned.txt > sudo chmod 666 /<<PKGBUILDDIR>>/test/fixtures/not-owned/not-owned.txt > - does not error if mtime is different > - does not error if mode is different > > .src() with symlinks > ✓ resolves symlinks correctly > ✓ resolves directory symlinks correctly > ✓ resolves nested symlinks to directories correctly > ✓ preserves file symlinks with resolveSymlinks option set to false > ✓ preserves directory symlinks with resolveSymlinks option set to false > ✓ receives a file with symbolic link stats when resolveSymlinks is a > function > ✓ only calls resolveSymlinks once-per-file if it is a function > > .src() > ✓ throws on invalid glob (empty) > ✓ throws on invalid glob (empty string) > ✓ throws on invalid glob (number) > ✓ throws on invalid glob (nested array) > ✓ throws on invalid glob (empty string in array) > ✓ throws on invalid glob (empty array) > ✓ emits an error on file not existing > ✓ passes through writes > ✓ removes BOM from utf8-encoded files by default > ✓ does not remove BOM from utf8-encoded files if option is false > ✓ does not remove anything that looks like a utf8-encoded BOM from > utf16be-encoded files > ✓ does not remove anything that looks like a utf8-encoded BOM from > utf16be-encoded files with streaming contents > ✓ does not remove anything that looks like a utf8-encoded BOM from > utf16le-encoded files > ✓ does not remove anything that looks like a utf8-encoded BOM from > utf16le-encoded files with streaming contents > ✓ globs files with default settings > ✓ globs files with default settings and relative cwd > ✓ globs a directory with default settings > ✓ globs a directory with default settings and relative cwd > ✓ streams a directory with default settings > ✓ streams file with with no contents using read: false option > ✓ streams a file changed after since > ✓ does not stream a file changed before since > ✓ streams a file with streaming contents > ✓ can be used as a through stream and adds new files to the end > ✓ can be used at beginning and in the middle > ✓ does not pass options on to through2 > > symlink stream > ✓ throws on no folder argument > ✓ throws on empty string folder argument > ✓ passes through writes with cwd > ✓ passes through writes with default cwd > ✓ creates a link to the right folder with relative cwd > ✓ creates a link to the right folder with function and relative cwd > ✓ creates a link for a file with buffered contents > ✓ can create relative links > ✓ creates a link for a file with streaming contents > ✓ emits Vinyl objects that are symbolic > ✓ (*nix) creates a link for a directory > - (windows) creates a junction for a directory > - (windows) options can disable junctions for a directory > - (windows) options can disable junctions for a directory (as a function) > ✓ (*nix) can create relative links for directories > - (windows) relativeSymlinks option is ignored when junctions are used > - (windows) supports relativeSymlinks option when link is not for a > directory > - (windows) can create relative links for directories when junctions are > disabled > ✓ reports IO errors > ✓ does not overwrite links with overwrite option set to false > ✓ overwrites links with overwrite option set to true > ✓ does not overwrite links with overwrite option set to a function that > returns false > ✓ overwrites links with overwrite option set to a function that returns > true > ✓ emits an end event > ✓ emits a finish event > ✓ errors when a non-Vinyl object is emitted > ✓ errors when a buffer-mode stream is piped to it > ✓ does not get clogged by highWaterMark > ✓ allows backpressure when piped to another, slower stream (6009ms) > ✓ sinks the stream if all the readable event handlers are removed > ✓ sinks the stream if all the data event handlers are removed > ✓ does not pass options on to through2 > ✓ does not marshall a Vinyl object with isSymbolic method > ✓ marshalls a Vinyl object without isSymbolic to a newer Vinyl > > > 217 passing (13s) > 18 pending > 1 failing > > 1) .dest() with custom owner > calls fchown when the uid and/or gid are provided on the vinyl stat: > > Uncaught Error: Expected 0 to equal 1 > + expected - actual > > -0 > +1 > > at assert (debian/tests/test_modules/expect/lib/assert.js:29:9) > at Expectation.toEqual > (debian/tests/test_modules/expect/lib/Expectation.js:81:30) > at assert (test/dest-owner.js:49:38) > at ConcatStream.<anonymous> > (/usr/lib/nodejs/concat-stream/index.js:37:43) > at finishMaybe (_stream_writable.js:646:14) > at endWritable (_stream_writable.js:663:3) > at ConcatStream.Writable.end (_stream_writable.js:594:5) > at Pumpify.onend > (/usr/share/nodejs/readable-stream/lib/_stream_readable.js:627:10) > at endReadableNT > (/usr/share/nodejs/readable-stream/lib/_stream_readable.js:1077:12) > at process._tickCallback (internal/process/next_tick.js:63:19) > > > > dh_auto_test: error: /bin/sh -e debian/tests/pkg-js/test returned exit code 1 The full build log is available from: http://qa-logs.debian.net/2020/03/21/node-vinyl-fs_3.0.3-4_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.