Source: node-nodemailer Version: 6.4.17-1 Severity: serious Justification: FTBFS on amd64 Tags: bullseye sid ftbfs Usertags: ftbfs-20210120 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-nodemailer > dpkg-buildpackage: info: source version 6.4.17-1 > 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 > dh_auto_clean --buildsystem=nodejs > rm -rf ./node_modules/.cache > dh_clean > dpkg-source -b . > dpkg-source: info: using source format '3.0 (quilt)' > dpkg-source: info: building node-nodemailer using existing > ./node-nodemailer_6.4.17.orig.tar.gz > dpkg-source: info: building node-nodemailer in > node-nodemailer_6.4.17-1.debian.tar.xz > dpkg-source: info: building node-nodemailer in node-nodemailer_6.4.17-1.dsc > debian/rules binary > dh binary > dh_update_autotools_config > dh_autoreconf > dh_auto_configure --buildsystem=nodejs > dh_auto_build --buildsystem=nodejs > No build command found, searching known files > cd ./. && grunt > Can't exec "grunt": No such file or directory at > /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm line 522. > dh_auto_build: warning: ### Command "grunt" failed in . > > dh_auto_build: warning: > ############################################################################ > 1 failures, unable to build automatically. > Install a debian/nodejs/./build or add a "override_dh_auto_build:" target > in debian/rules > ############################################################################ > > dh_auto_build: warning: Aborting auto_build > > Command "grunt" succeeded in . > dh_auto_test --buildsystem=nodejs > mkdir -p node_modules > ln -s ../debian/tests/test_modules/libbase64 node_modules/libbase64 > ln -s ../debian/tests/test_modules/base32.js node_modules/base32.js > ln -s ../debian/tests/test_modules/libmime node_modules/libmime > ln -s ../debian/tests/test_modules/proxy-test-server > node_modules/proxy-test-server > ln -s ../debian/tests/test_modules/libqp node_modules/libqp > ln -s ../debian/tests/test_modules/safer-buffer > node_modules/safer-buffer > ln -s ../debian/tests/test_modules/proxy node_modules/proxy > ln -s ../debian/tests/test_modules/ipv6-normalize > node_modules/ipv6-normalize > ln -s ../debian/tests/test_modules/smtp-server node_modules/smtp-server > ln -s ../. node_modules/nodemailer > /bin/sh -ex debian/tests/pkg-js/test > + set -e > + ln -s .. node_modules/nodemailer > ln: failed to create symbolic link 'node_modules/nodemailer/..': File exists > + true > + mocha --timeout 50000 test/addressparser/addressparser-test.js > test/base64/base64-test.js test/dkim/dkim-test.js > test/dkim/message-parser-test.js test/dkim/relaxed-body-test.js > test/dkim/sign-test.js test/fetch/cookies-test.js test/fetch/fetch-test.js > test/json-transport/json-transport-test.js > test/mail-composer/mail-composer-test.js test/mime-funcs/mime-funcs-test.js > test/mime-funcs/mime-types-test.js test/mime-node/mime-node-test.js > test/qp/qp-test.js test/sendmail/le-windows-test.js > test/sendmail/sendmail-test.js test/ses-transport/ses-transport-test.js > test/shared/shared-test.js test/smtp-connection/http-proxy-client-test.js > test/smtp-connection/smtp-connection-test.js test/smtp-pool/smtp-pool-test.js > test/smtp-transport/smtp-tranport-test.js > test/stream-transport/stream-transport-test.js > test/well-known/well-known-test.js test/xoauth2/xoauth2-test.js > > > #addressparser > ✓ should handle single address correctly > ✓ should handle multiple addresses correctly > ✓ should handle unquoted name correctly > ✓ should handle quoted name correctly > ✓ should handle quoted semicolons correctly > ✓ should handle unquoted name, unquoted address correctly > ✓ should handle emtpy group correctly > ✓ should handle address group correctly > ✓ should handle semicolon as a delimiter > ✓ should handle mixed group correctly > ✓ should flatten mixed group correctly > ✓ semicolon as delimiter should not break group parsing > ✓ should handle name from comment correctly > ✓ should handle skip comment correctly > ✓ should handle missing address correctly > ✓ should handle apostrophe in name correctly > ✓ should handle particularily bad input, unescaped colon correctly > ✓ should handle invalid email address correctly > ✓ should handle unexpected < > ✓ should handle escapes > > Base64 Tests > #encode > ✓ shoud encode UTF-8 string to base64 > ✓ shoud encode Buffer to base64 > #wrap > ✓ should wrap long base64 encoded lines > base64 Streams > ✓ should transform incoming bytes to base64 > ✓ should transform incoming bytes to base64 and back > > DKIM Tests > ✓ should sign message > ✓ should sign large message using cache dir (188ms) > ✓ should sign large message without cache dir (161ms) > ✓ should emit cache error > ✓ should sign large message as Buffer (117ms) > ✓ should sign large message as String (132ms) > > DKIM MessageParser Tests > ✓ should extract header and body > > DKIM RelaxedBody Tests > ✓ Should calculate body hash byte by byte (237ms) > ✓ Should calculate body hash all at once > > DKIM Sign Tests > ✓ should create relaxed headers > ✓ should skip specific headers > ✓ should sign headers > ✓ should sign headers for unicode domain > > Cookie Tests > #getPath > ✓ should return root path > ✓ should return without file > #isExpired > ✓ should match expired cookie > #compare > ✓ should match similar cookies > #add > ✓ should append new cookie > ✓ should update existing cookie > #match > ✓ should check if a cookie matches particular domain and path > ✓ should check if a cookie matches particular domain and path > ✓ should check if a cookie is secure > #parse > ✓ should parse Set-Cookie value > ✓ should ignore invalid expire header > Listing > #list > 1) should return matching cookies for an URL > #get > 2) should return matching cookies for an URL > #set > 3) should set cookie > > Fetch Tests > ✓ should fetch HTTP data > (node:9661) Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment > variable to '0' makes TLS connections and HTTPS requests insecure by > disabling certificate verification. > ✓ should fetch HTTPS data > ✓ should fetch HTTP data with redirects > ✓ should return error for too many redirects > ✓ should fetch HTTP data with custom redirect limit > ✓ should return error for custom redirect limit > ✓ should return disable redirects > ✓ should unzip compressed HTTP data > ✓ should return error for unresolved host > ✓ should return error for invalid status > ✓ should allow invalid status > ✓ should return error for invalid url > ✓ should return timeout error (1001ms) > ✓ should handle basic HTTP auth > ✓ should return error for invalid protocol > ✓ should set cookie value > ✓ should set user agent > ✓ should post data > ✓ should post stream data > ✓ should return error for invalid cert > > JSON Transport Tests > ✓ should return an JSON string > ✓ should return an JSON string for calendar event > > MailComposer unit tests > ✓ should create new MailComposer > #compile > ✓ should use Mixed structure with text and attachment > ✓ should use Mixed structure with multiple attachments > ✓ should create Alternative structure with text and html > ✓ should create Alternative structure with text, watchHtml and html > ✓ should create Alternative structure with text, amp and html > ✓ should create Alternative structure with text, icalEvent and html > ✓ should create Alternative structure using encoded icalEvent > ✓ should create Alternative structure with text, html and cid attachment > ✓ should create Related structure with html and cid attachment > ✓ should create content node with only text > ✓ should create content node with only an attachment > ✓ should create content node with encoded buffer > ✓ should create content node from data url > ✓ should not treat invalid content-type as multipart > ✓ should create the same output > ✓ should use raw input for the message > ✓ should use raw input for different parts > ✓ should discard BCC > ✓ should autodetect text encoding > ✓ should use quoted-printable text encoding > ✓ should use base64 text encoding > ✓ should keep BCC > ✓ should set headers for attachment > ✓ should encode filename > ✓ should keep plaintext for attachment > ✓ should ignore attachment filename > ✓ should add ical alternative > ✓ should use load attachment from file > ✓ should not load attachment from file > > Mime-Funcs Tests > #isPlainText > ✓ should detect plain text > ✓ should return true > ✓ should return false on low bits > ✓ should return false on high bits > #hasLongerLines > ✓ should detect longer lines > #encodeWord > ✓ should encode quoted-printable > ✓ should encode base64 > #encodeWords > ✓ should encode Ascii range > ✓ should split QP on maxLength > ✓ should split base64 on maxLength > #buildHeaderParam > ✓ should return unmodified > ✓ should encode and split ascii > ✓ should encode double byte unicode characters > ✓ should encode and split unicode > ✓ should encode and split filename with dashes > ✓ should encode and decode > #parseHeaderValue > ✓ should handle default value only > ✓ should handle unquoted params > ✓ should handle quoted params > ✓ should handle multi line values > ✓ should handle params only > #_buildHeaderValue > ✓ should build header value > ✓ should handle unicode filename > ✓ should handle dashed filename > ✓ should split emoji filename > ✓ should quote filename with spaces > ✓ should quote filename with special characters > #foldLines > ✓ should Fold long header line > ✓ should Fold flowed text > ✓ should fold one long line > > Mime-Type Tests > #detectExtension > ✓ should detect default extension > ✓ should detect single extension > ✓ should detect first matching extension > #detectMimeType > ✓ should detect default mime type > ✓ should detect single mime type > ✓ should detect first matching mime type > > MimeNode Tests > ✓ should create MimeNode object > ✓ should use default header keys > ✓ should use custom header keys > #createChild > ✓ should create child > #appendChild > ✓ should append child node > #replace > ✓ should replace node > #remove > ✓ should remove node > #setHeader > ✓ should set header > ✓ should set multiple headers with the same key > #addHeader > ✓ should add header > ✓ should set multiple headers with the same key > #getHeader > ✓ should return first matching header value > #setContent > ✓ should set the contents for a node > #build > ✓ should build root node > ✓ should build child node > ✓ should build multipart node > ✓ should build root with generated headers > ✓ should not include bcc missing in output, but in envelope > ✓ should include bcc missing in output and in envelope > ✓ should use set envelope > ✓ should have unicode subject > ✓ should have unicode subject with strange characters > ✓ should keep 7bit text as is > ✓ should prefer base64 > ✓ should force quoted-printable > ✓ should prefer quoted-printable > ✓ should not flow text > ✓ should not flow html > ✓ should use 7bit for html > ✓ should fetch ascii filename > ✓ should set unicode filename > ✓ should set dashed filename > ✓ should encode filename with a space > ✓ should detect content type from filename > ✓ should convert address objects > ✓ should skip empty header > ✓ should not process prepared headers > ✓ should set default transfer encoding for application content > ✓ should not set transfer encoding for multipart content > ✓ should not set transfer encoding for message/ content > ✓ should use from domain for message-id > ✓ should fallback to hostname for message-id > #getEnvelope > ✓ should get envelope > #messageId > ✓ should create and return message-Id > #getAddresses > ✓ should get address object > #_parseAddresses > ✓ should normalize header key > #_normalizeHeaderKey > ✓ should normalize header key > #_handleContentType > ✓ should do nothing on non multipart > ✓ should use provided boundary > ✓ should generate boundary > #_generateBoundary > ✓ should genereate boundary string > #_encodeHeaderValue > ✓ should do noting if possible > ✓ should encode non ascii characters > ✓ should format references > ✓ should format message-id > ✓ should format addresses > #_convertAddresses > ✓ should convert address object to a string > ✓ should keep ascii name as is > ✓ should include name in quotes for special symbols > ✓ should escape quotes > ✓ should mime encode unicode names > #_generateMessageId > ✓ should generate uuid-looking message-id > Attachment streaming > ✓ should pipe URL as an attachment (140ms) > ✓ should reject URL attachment > ✓ should return an error on invalid url > ✓ should pipe file as an attachment > ✓ should reject file as an attachment > ✓ should return an error on invalid file path > ✓ should return a error for an errored stream (101ms) > ✓ should return a stream error (101ms) > #transform > ✓ should pipe through provided stream > #processFunc > ✓ should pipe through provided process function > Raw content > ✓ should return pregenerated content > ✓ should return pregenerated content for a child node > ✓ should return pregenerated content from a stream > ✓ should catch error from a raw stream 1 > ✓ should catch error from a raw stream 2 > > Quoted-Printable Tests > #encode > ✓ shoud encode UTF-8 string to QP > ✓ shoud encode Buffer to QP > #wrap > ✓ should wrap long QP encoded lines > ✓ should wrap line ending with <CR> > QP Streams > ✓ should transform incoming bytes to QP > (node:9661) [DEP0005] DeprecationWarning: Buffer() is deprecated due to > security and usability issues. Please use the Buffer.alloc(), > Buffer.allocUnsafe(), or Buffer.from() methods instead. > ✓ should transform incoming bytes to QP and back > > Sendmail Windows Newlines > ✓ should rewrite all linebreaks (byte by byte) > ✓ should rewrite all linebreaks (all at once) > > Sendmail Transport Tests > ✓ Should expose version number > ✓ Should send message > ✓ Should reject message > ✓ Should return an error > > SES Transport Tests > ✓ should return MessageId > ✓ should sign message with DKIM > ✓ should limit parallel connections (5183ms) > ✓ should rate limit messages (10180ms) > ✓ should rate limit long messages (12112ms) > ✓ should rate limit messages and connections (10237ms) > ✓ detect sending slots on idle events (10197ms) > > Shared Funcs Tests > Logger tests > ✓ Should create a logger > Connection url parser tests > ✓ Should parse connection url > ✓ should not choke on special symbols in auth > Resolver tests > ✓ should set text from html string > ✓ should set text from html buffer > ✓ should set text from a html file > ✓ should set text from an html url > ✓ should set text from redirecting url > ✓ should set text from gzipped url > ✓ should set text from a html stream > ✓ should return an error > ✓ should return encoded string as buffer > data uri tests > ✓ should resolve with mime type and base64 > ✓ should resolve with mime type and plaintext > ✓ should resolve with plaintext > ✓ should resolve with mime type, charset and base64 > #assign tests > ✓ should assign multiple objects to target > #encodeXText tests > ✓ should not encode atom > ✓ should not encode email > ✓ should encode space > ✓ should encode unicode > ✓ should encode low codes > > HTTP Proxy Client Tests > ✓ should connect to a socket through proxy (107ms) > ✓ should connect to a socket through proxy with auth (103ms) > ✓ should should fail auth > > SMTP-Connection Tests > Version test > ✓ Should expose version number > Connection tests > ✓ should connect to unsecure server (108ms) > ✓ should connect to a server and upgrade with STARTTLS (107ms) > ✓ should connect to a server and upgrade with forced STARTTLS (105ms) > ✓ should connect to a server and try to upgrade STARTTLS (102ms) > ✓ should try upgrade with STARTTLS where not advertised (102ms) > ✓ should close connection after STARTTLS (105ms) > ✓ should connect to a secure server (106ms) > ✓ should emit error for invalid port > ✓ should emit error for too large port > ✓ should emit inactivity timeout error (101ms) > ✓ should connect through proxy (107ms) > ✓ should connect through proxy to secure server (105ms) > ✓ should send to unsecure server (149ms) > Login tests > ✓ should login > ✓ should return error for invalid login > ✓ should return error for missing credentials > ✓ should return error for incomplete credentials > xoauth2 login > ✓ should login with xoauth2 string > ✓ should return error for invalid xoauth2 string token > ✓ should login with xoauth2 object > ✓ should fail with xoauth2 object > ✓ should fail with invalid xoauth2 response > custom login > ✓ should login > Send without PIPELINING > ✓ should send only to valid recipients without PIPELINING (47ms) > Send messages > ✓ should send message (43ms) > ✓ should send multiple messages (89ms) > ✓ should send only to valid recipients (87ms) > ✓ should reject all recipients (44ms) > ✓ should reject too large SIZE arguments > ✓ should reject too large message > ✓ should declare SIZE (42ms) > ✓ lmtp should send only to valid recipients (132ms) > ✓ should send using SMTPUTF8 (88ms) > ✓ should send using 8BITMIME (88ms) > ✓ should receive error for 8-bit content without 8BITMIME declaration > (88ms) > ✓ should return error for invalidly formatted recipients > ✓ should return error for no valid recipients (43ms) > ✓ should return error for invalid sender > ✓ should send message string > ✓ should send message buffer > ✓ should send message stream (43ms) > > SMTP Pool Tests > ✓ Should expose version number > ✓ Should detect wellknown data > ✓ should send mail (106ms) > ✓ should send multiple mails (921ms) > ✓ should tolerate connection errors (2238ms) > ✓ should tolerate idle connections and re-assign messages to other > connections (1985ms) > ✓ should call back with connection errors to senders having messages in > flight (352ms) > ✓ should not send more then allowed for one connection (5525ms) > ✓ should send multiple mails with rate limit (25232ms) > ✓ should return pending messages once closed > ✓ should emit idle for free slots in the pool (20196ms) > ✓ Should login and send mail using proxied socket (103ms) > ✓ Should verify connection with success (102ms) > ✓ Should not verify connection > > SMTP Transport Tests > Anonymous sender tests > ✓ Should expose version number > ✓ Should detect wellknown data > ✓ Should fail envelope (103ms) > ✓ Should not fail auth (144ms) > ✓ Should fail auth if forceAuth=true (101ms) > ✓ Should send mail (102ms) > ✓ Should recover unexpeced close during transmission (254ms) > Authenticated sender tests > ✓ Should login and send mail (103ms) > ✓ Should verify connection with success (102ms) > ✓ Should not verify connection > ✓ Should login and send mail using proxied socket (102ms) > > Stream Transport Tests > ✓ Should expose version number > Send as stream > ✓ Should send mail using unix newlines > ✓ Should send mail using windows newlines > Send as buffer > ✓ Should send mail using unix newlines > ✓ Should send mail using windows newlines > > Well-Known Services Tests > #wellKnown > ✓ Should find by key > ✓ Should find by alias > ✓ Should find by domain > ✓ Should find no match > > XOAuth2 tests > ✓ should get an existing access token > ✓ should convert access token to XOAuth2 token > ✓ should get an existing access token, no timeout > ✓ should generate a fresh access token > ✓ should generate a fresh access token with custom method > ✓ should fail generating a fresh access token with custom method > ✓ should generate a fresh access token after timeout (3005ms) > ✓ should emit access token update > ✓ should sign payload > > > 343 passing (2m) > 3 failing > > 1) Cookie Tests > Listing > #list > should return matching cookies for an URL: > > AssertionError: expected [] to deeply equal [ Array(2) ] > + expected - actual > > -[] > +[ > + { > + "domain": ".foo.com" > + "expires": [Date: 2021-01-13T22:23:01.000Z] > + "httponly": true > + "name": "ssid1" > + "path": "/" > + "secure": true > + "value": "Ap4P….GTEq1" > + } > + { > + "domain": "www.foo.com" > + "expires": [Date: 2021-01-13T22:23:01.000Z] > + "httponly": true > + "name": "ssid4" > + "path": "/" > + "secure": true > + "value": "Ap4P….GTEq4" > + } > +] > > at Proxy.assertEql > (/usr/share/nodejs/chai/lib/chai/core/assertions.js:1084:10) > at Proxy.methodWrapper > (/usr/share/nodejs/chai/lib/chai/utils/addMethod.js:57:25) > at Proxy.assertEqual > (/usr/share/nodejs/chai/lib/chai/core/assertions.js:1023:12) > at Proxy.methodWrapper > (/usr/share/nodejs/chai/lib/chai/utils/addMethod.js:57:25) > at Context.<anonymous> (test/fetch/cookies-test.js:332:70) > at callFn (/usr/share/nodejs/mocha/lib/runnable.js:364:21) > at Test.Runnable.run (/usr/share/nodejs/mocha/lib/runnable.js:352:5) > at Runner.runTest (/usr/share/nodejs/mocha/lib/runner.js:677:10) > at /usr/share/nodejs/mocha/lib/runner.js:801:12 > at next (/usr/share/nodejs/mocha/lib/runner.js:594:14) > at /usr/share/nodejs/mocha/lib/runner.js:604:7 > at next (/usr/share/nodejs/mocha/lib/runner.js:486:14) > at Immediate._onImmediate (/usr/share/nodejs/mocha/lib/runner.js:572:5) > at processImmediate (internal/timers.js:461:21) > > 2) Cookie Tests > Listing > #get > should return matching cookies for an URL: > > AssertionError: expected '' to equal 'ssid1=Ap4P….GTEq1; > ssid4=Ap4P….GTEq4' > + expected - actual > > +ssid1=Ap4P….GTEq1; ssid4=Ap4P….GTEq4 > > at Proxy.assertEqual > (/usr/share/nodejs/chai/lib/chai/core/assertions.js:1026:12) > at Proxy.methodWrapper > (/usr/share/nodejs/chai/lib/chai/utils/addMethod.js:57:25) > at Context.<anonymous> (test/fetch/cookies-test.js:357:64) > at callFn (/usr/share/nodejs/mocha/lib/runnable.js:364:21) > at Test.Runnable.run (/usr/share/nodejs/mocha/lib/runnable.js:352:5) > at Runner.runTest (/usr/share/nodejs/mocha/lib/runner.js:677:10) > at /usr/share/nodejs/mocha/lib/runner.js:801:12 > at next (/usr/share/nodejs/mocha/lib/runner.js:594:14) > at /usr/share/nodejs/mocha/lib/runner.js:604:7 > at next (/usr/share/nodejs/mocha/lib/runner.js:486:14) > at Immediate._onImmediate (/usr/share/nodejs/mocha/lib/runner.js:572:5) > at processImmediate (internal/timers.js:461:21) > > 3) Cookie Tests > #set > should set cookie: > > AssertionError: expected [ Array(5) ] to deeply equal [ Array(7) ] > + expected - actual > > "value": "plain" > } > { > "domain": "foo.com" > + "httponly": true > + "name": "ssid" > + "path": "/test" > + "secure": true > + "value": "Ap4P….GTEq" > + } > + { > + "domain": "www.foo.com" > + "httponly": true > + "name": "ssid" > + "path": "/" > + "secure": true > + "value": "Ap4P….GTEq" > + } > + { > + "domain": "foo.com" > "name": "invalid_1" > "path": "/" > "value": "cors" > } > > at Proxy.assertEql > (/usr/share/nodejs/chai/lib/chai/core/assertions.js:1084:10) > at Proxy.methodWrapper > (/usr/share/nodejs/chai/lib/chai/utils/addMethod.js:57:25) > at Proxy.assertEqual > (/usr/share/nodejs/chai/lib/chai/core/assertions.js:1023:12) > at Proxy.methodWrapper > (/usr/share/nodejs/chai/lib/chai/utils/addMethod.js:57:25) > at Context.<anonymous> (test/fetch/cookies-test.js:385:23) > at callFn (/usr/share/nodejs/mocha/lib/runnable.js:364:21) > at Test.Runnable.run (/usr/share/nodejs/mocha/lib/runnable.js:352:5) > at Runner.runTest (/usr/share/nodejs/mocha/lib/runner.js:677:10) > at /usr/share/nodejs/mocha/lib/runner.js:801:12 > at next (/usr/share/nodejs/mocha/lib/runner.js:594:14) > at /usr/share/nodejs/mocha/lib/runner.js:604:7 > at next (/usr/share/nodejs/mocha/lib/runner.js:486:14) > at Immediate._onImmediate (/usr/share/nodejs/mocha/lib/runner.js:572:5) > at processImmediate (internal/timers.js:461:21) > > > > dh_auto_test: error: /bin/sh -ex debian/tests/pkg-js/test returned exit code 3 The full build log is available from: http://qa-logs.debian.net/2021/01/20/node-nodemailer_6.4.17-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! If you reassign this bug to another package, please marking it as 'affects'-ing this package. See https://www.debian.org/Bugs/server-control#affects If you fail to reproduce this, please provide a build log and diff it with me so that we can identify if something relevant changed in the meantime. 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. -- Pkg-javascript-devel mailing list Pkg-javascript-devel@alioth-lists.debian.net https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/pkg-javascript-devel