* [bug#32095] [PATCH 0/2] Update libuv and node @ 2018-07-08 15:16 Mathieu Lirzin 2018-07-08 15:20 ` [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0 Mathieu Lirzin 2018-09-07 15:13 ` [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0 Mathieu Lirzin 0 siblings, 2 replies; 15+ messages in thread From: Mathieu Lirzin @ 2018-07-08 15:16 UTC (permalink / raw) To: 32095; +Cc: Mathieu Lirzin Node now requires a newer ‘libuv’ and doesn't build without ‘openssl-next’. Mathieu Lirzin (2): gnu: libuv: Update to 1.21.0. gnu: node: Update to 10.6.0. gnu/packages/libevent.scm | 4 ++-- gnu/packages/node.scm | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) -- 2.18.0 ^ permalink raw reply [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0. 2018-07-08 15:16 [bug#32095] [PATCH 0/2] Update libuv and node Mathieu Lirzin @ 2018-07-08 15:20 ` Mathieu Lirzin 2018-07-08 15:20 ` [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0 Mathieu Lirzin ` (2 more replies) 2018-09-07 15:13 ` [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0 Mathieu Lirzin 1 sibling, 3 replies; 15+ messages in thread From: Mathieu Lirzin @ 2018-07-08 15:20 UTC (permalink / raw) To: 32095; +Cc: Mathieu Lirzin * gnu/packages/libevent.scm (libuv): Update to 1.21.0. --- gnu/packages/libevent.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm index 983c8625e..a7cff1571 100644 --- a/gnu/packages/libevent.scm +++ b/gnu/packages/libevent.scm @@ -121,14 +121,14 @@ limited support for fork events.") (define-public libuv (package (name "libuv") - (version "1.19.2") + (version "1.21.0") (source (origin (method url-fetch) (uri (string-append "https://dist.libuv.org/dist/v" version "/libuv-v" version ".tar.gz")) (sha256 (base32 - "1msk9ac1z69whww88ibrwjqkd1apdla6l77cm2fwy5kigq0z5g3w")))) + "0v84fjp5qmzinbrris2gdx1gxll5mi6j6w8zn915k4q6ks9x7ncn")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases -- 2.18.0 ^ permalink raw reply related [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-07-08 15:20 ` [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0 Mathieu Lirzin @ 2018-07-08 15:20 ` Mathieu Lirzin 2018-07-09 14:59 ` Ludovic Courtès 2018-07-09 14:58 ` [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0 Ludovic Courtès 2018-07-09 15:08 ` Ludovic Courtès 2 siblings, 1 reply; 15+ messages in thread From: Mathieu Lirzin @ 2018-07-08 15:20 UTC (permalink / raw) To: 32095; +Cc: Mathieu Lirzin * gnu/packages/node.scm (node): Update to 10.6.0. --- gnu/packages/node.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm index d1de7a536..363c6b845 100644 --- a/gnu/packages/node.scm +++ b/gnu/packages/node.scm @@ -44,14 +44,14 @@ (define-public node (package (name "node") - (version "9.11.1") + (version "10.6.0") (source (origin (method url-fetch) (uri (string-append "https://nodejs.org/dist/v" version "/node-v" version ".tar.gz")) (sha256 (base32 - "1vjh9zvw7wkdz6b0l99ya7mqjk0l8lbg9isr1q8rxwp400dhkk32")) + "0sxkhjkcqpyf5gkv1nw93w2hmkglwy2qzfsdy2hgx3z1pvxfn1w0")) (modules '((guix build utils))) (snippet `(begin @@ -169,7 +169,7 @@ ("icu4c" ,icu4c) ("libuv" ,libuv) ("nghttp2" ,nghttp2 "lib") - ("openssl" ,openssl) + ("openssl" ,openssl-next) ("zlib" ,zlib))) (synopsis "Evented I/O for V8 JavaScript") (description "Node.js is a platform built on Chrome's JavaScript runtime -- 2.18.0 ^ permalink raw reply related [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-07-08 15:20 ` [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0 Mathieu Lirzin @ 2018-07-09 14:59 ` Ludovic Courtès 2018-09-06 23:23 ` Mathieu Lirzin 0 siblings, 1 reply; 15+ messages in thread From: Ludovic Courtès @ 2018-07-09 14:59 UTC (permalink / raw) To: Mathieu Lirzin; +Cc: 32095 Hello, Mathieu Lirzin <mthl@gnu.org> skribis: > * gnu/packages/node.scm (node): Update to 10.6.0. I have it fail its tests like this: --8<---------------cut here---------------start------------->8--- Building addon in /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/load-long-path Building addon in /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/make-callback Building addon in /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/make-callback-domain-warning /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/tools/build-addons.js:58 main(process.argv[3]).catch((err) => setImmediate(() => { throw err; })); ^ Error: Command failed: /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/out/Release/node /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/deps/npm/node_modules/node-gyp/bin/node-gyp.js rebuild --directory=/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/buffer-free-callback Traceback (most recent call last): File "/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/deps/npm/node_modules/node-gyp/gyp/gyp_main.py", line 13, in <module> import gyp File "/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/deps/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 8, in <module> import gyp.input EOFError: EOF read where object expected at ChildProcess.exithandler (child_process.js:291:12) at ChildProcess.emit (events.js:182:13) at maybeClose (internal/child_process.js:961:16) at Process.ChildProcess._handle.onexit (internal/child_process.js:248:5) make[1]: *** [Makefile:345: test/addons/.buildstamp] Error 1 make: *** [Makefile:266: test] Error 2 --8<---------------cut here---------------end--------------->8--- Does this test pass for you? Thanks, Ludo’. ^ permalink raw reply [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-07-09 14:59 ` Ludovic Courtès @ 2018-09-06 23:23 ` Mathieu Lirzin 2018-09-07 11:21 ` Marius Bakke 0 siblings, 1 reply; 15+ messages in thread From: Mathieu Lirzin @ 2018-09-06 23:23 UTC (permalink / raw) To: Ludovic Courtès; +Cc: 32095 Hello, ludo@gnu.org (Ludovic Courtès) writes: > Mathieu Lirzin <mthl@gnu.org> skribis: > >> * gnu/packages/node.scm (node): Update to 10.6.0. > > I have it fail its tests like this: > > Building addon in /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/load-long-path > Building addon in /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/make-callback > Building addon in /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/make-callback-domain-warning > /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/tools/build-addons.js:58 > main(process.argv[3]).catch((err) => setImmediate(() => { throw err; })); > ^ > > Error: Command failed: /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/out/Release/node /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/deps/npm/node_modules/node-gyp/bin/node-gyp.js rebuild --directory=/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/buffer-free-callback > Traceback (most recent call last): > File "/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/deps/npm/node_modules/node-gyp/gyp/gyp_main.py", line 13, in <module> > import gyp > File "/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/deps/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 8, in <module> > import gyp.input > EOFError: EOF read where object expected > > at ChildProcess.exithandler (child_process.js:291:12) > at ChildProcess.emit (events.js:182:13) > at maybeClose (internal/child_process.js:961:16) > at Process.ChildProcess._handle.onexit (internal/child_process.js:248:5) > make[1]: *** [Makefile:345: test/addons/.buildstamp] Error 1 > make: *** [Makefile:266: test] Error 2 > > Does this test pass for you? I am pretty confident it worked before sending the patch. But now it fails with some crypto related errors during ‘make -s jstest’. --8<---------------cut here---------------start------------->8--- === release test-crypto-scrypt === Path: parallel/test-crypto-scrypt /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/common/index.js:752 throw new assert.AssertionError({ ^ AssertionError [ERR_ASSERTION]: Input A expected to strictly equal input B: + expected - actual ... Lines skipped Comparison { - message: 'error:060B50AC:digital envelope routines:EVP_PBE_scrypt:memory limit exceeded', + code: 'ERR_CRYPTO_SCRYPT_INVALID_PARAMETER', + message: 'Invalid scrypt parameter', type: [Function: Error] { ... } } at new AssertionError (internal/assert.js:268:11) at Object.innerFn (/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/common/index.js:752:15) at expectedException (assert.js:489:19) at expectsError (assert.js:577:16) at Function.throws (assert.js:608:3) at Object.expectsError (/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/common/index.js:764:12) at Object.<anonymous> (/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-crypto-scrypt.js:126:10) at Module._compile (internal/modules/cjs/loader.js:689:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10) at Module.load (internal/modules/cjs/loader.js:599:32) Command: out/Release/node /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-crypto-scrypt.js === release test-tls-passphrase === Path: parallel/test-tls-passphrase assert.js:578 throw actual; ^ Error: error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt at Object.createSecureContext (_tls_common.js:144:17) at Object.exports.connect (_tls_wrap.js:1119:48) at /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-tls-passphrase.js:228:7 at getActual (assert.js:497:5) at Function.throws (assert.js:608:24) at Object.<anonymous> (/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-tls-passphrase.js:227:8) at Module._compile (internal/modules/cjs/loader.js:689:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10) at Module.load (internal/modules/cjs/loader.js:599:32) at tryModuleLoad (internal/modules/cjs/loader.js:538:12) Command: out/Release/node /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-tls-passphrase.js === release test-tls-server-verify === Path: parallel/test-tls-server-verify 0 0 connecting with agent1 0 1 connecting with agent2 0 2 connecting with agent3 0 3 connecting with nocert 1 0 connecting with agent1 1 1 connecting with agent2 1 2 connecting with agent3 1 3 connecting with nocert 2 0 connecting with agent1 2 1 connecting with agent2 2 2 connecting with agent3 2 3 connecting with nocert 3 0 connecting with agent1 3 1 connecting with agent2 3 2 connecting with agent3 3 3 connecting with nocert 4 0 connecting with agent1 4 1 connecting with agent2 4 2 connecting with agent3 4 3 connecting with nocert 5 0 connecting with agent1 5 1 connecting with agent2 5 2 connecting with agent3 5 3 connecting with agent4 5 4 connecting with nocert 0 Running 'Do not request certs. Everyone is unauthorized.' 0 - unauthed connection: null 0 - unauthed connection: null 0 - unauthed connection: null 0 0 * unauthed 0 1 * unauthed 0 2 * unauthed 0 - unauthed connection: null 0 3 * unauthed 1 Running 'Allow both authed and unauthed connections with CA1' 1 - authed connection: agent1 1 - unauthed connection: DEPTH_ZERO_SELF_SIGNED_CERT 1 - unauthed connection: UNABLE_TO_VERIFY_LEAF_SIGNATURE 1 0 * authed 1 1 * unauthed 1 2 * unauthed 1 - unauthed connection: UNABLE_TO_GET_ISSUER_CERT 1 3 * unauthed 2 Running 'Do not request certs at connection. Do that later' 2 - connected, renegotiating 2 - authed connection: agent1 2 0 * authed 2 - unauthed connection: null 2 1 * unauthed 2 - unauthed connection: null 2 2 * unauthed 2 - unauthed connection: null 2 3 * unauthed 3 Running 'Allow only authed connections with CA1' 3 - authed connection: agent1 3 0 * authed 4 Running 'Allow only authed connections with CA1 and CA2' 4 - authed connection: agent1 4 0 * authed 4 - authed connection: agent3 4 2 * authed 5 Running 'Allow only certs signed by CA2 but not in the CRL' assert.js:79 throw new AssertionError(obj); ^ AssertionError [ERR_ASSERTION]: 5 2 agent3 rejected, but should NOT have been at ChildProcess.<anonymous> (/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-tls-server-verify.js:232:14) at ChildProcess.emit (events.js:182:13) at Process.ChildProcess._handle.onexit (internal/child_process.js:237:12) Command: out/Release/node /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-tls-server-verify.js [18:56|% 100|+ 2306|- 3]: Done make[1]: *** [Makefile:256: jstest] Error 1 make: *** [Makefile:270: test] Error 2 --8<---------------cut here---------------end--------------->8--- I have tried to build 10.9.0 which has been released and the test suite fails because of network access. --8<---------------cut here---------------start------------->8--- make -s build-addons touch d9f90e808e8e700c15c35c2d7be302e61a333778.intermediate touch 6843310704f7b860e12805ed03c0ca2ab1bcdadb.intermediate LD_LIBRARY_PATH=/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.host:/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../.; mkdir -p /tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/src/node/inspector/protocol; python tools/inspector_protocol/CodeGenerator.py --jinja_dir tools/inspector_protocol/.. --output_base "/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/src/" --config "/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/node_protocol_config.json" LD_LIBRARY_PATH=/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.host:/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../deps/v8/gypfiles; mkdir -p /tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/src/inspector/protocol /tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/include/inspector; python ../third_party/inspector_protocol/CodeGenerator.py --jinja_dir ../third_party --output_base "/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/src/inspector" --config ../src/inspector/inspector_protocol_config.json touch f70a2bc83365ae821b54e7787433d4a600b5cf5e.intermediate LD_LIBRARY_PATH=/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.host:/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../deps/v8/gypfiles; mkdir -p /tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/torque-generated; "/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/torque" ../src/builtins/base.tq ../src/builtins/array.tq ../src/builtins/typed-array.tq -o "/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/torque-generated" npm ERR! code ENOTFOUND npm ERR! errno ENOTFOUND npm ERR! network request to https://registry.npmjs.org/rehype-raw failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443 npm ERR! network This is a problem related to network connectivity. npm ERR! network In most cases you are behind a proxy or have bad network settings. npm ERR! network npm ERR! network If you are behind a proxy, please make sure that the npm ERR! network 'proxy' config is set properly. See: 'npm help config' make[1]: *** [Makefile:1075: tools/doc/node_modules] Error 1 make: *** [Makefile:271: test] Error 2 Test suite failed, dumping logs. --8<---------------cut here---------------end--------------->8--- Anyway I am giving up. Sorry for the delay. -- Mathieu Lirzin GPG: F2A3 8D7E EB2B 6640 5761 070D 0ADE E100 9460 4D37 ^ permalink raw reply [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-09-06 23:23 ` Mathieu Lirzin @ 2018-09-07 11:21 ` Marius Bakke 0 siblings, 0 replies; 15+ messages in thread From: Marius Bakke @ 2018-09-07 11:21 UTC (permalink / raw) To: Mathieu Lirzin, Ludovic Courtès; +Cc: 32095 [-- Attachment #1.1: Type: text/plain, Size: 10467 bytes --] Hello! Mathieu Lirzin <mthl@gnu.org> writes: > Hello, > > ludo@gnu.org (Ludovic Courtès) writes: > >> Mathieu Lirzin <mthl@gnu.org> skribis: >> >>> * gnu/packages/node.scm (node): Update to 10.6.0. >> >> I have it fail its tests like this: >> >> Building addon in /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/load-long-path >> Building addon in /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/make-callback >> Building addon in /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/make-callback-domain-warning >> /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/tools/build-addons.js:58 >> main(process.argv[3]).catch((err) => setImmediate(() => { throw err; })); >> ^ >> >> Error: Command failed: /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/out/Release/node /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/deps/npm/node_modules/node-gyp/bin/node-gyp.js rebuild --directory=/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/addons/buffer-free-callback >> Traceback (most recent call last): >> File "/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/deps/npm/node_modules/node-gyp/gyp/gyp_main.py", line 13, in <module> >> import gyp >> File "/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/deps/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 8, in <module> >> import gyp.input >> EOFError: EOF read where object expected >> >> at ChildProcess.exithandler (child_process.js:291:12) >> at ChildProcess.emit (events.js:182:13) >> at maybeClose (internal/child_process.js:961:16) >> at Process.ChildProcess._handle.onexit (internal/child_process.js:248:5) >> make[1]: *** [Makefile:345: test/addons/.buildstamp] Error 1 >> make: *** [Makefile:266: test] Error 2 >> >> Does this test pass for you? > > I am pretty confident it worked before sending the patch. But now it > fails with some crypto related errors during ‘make -s jstest’. > > --8<---------------cut here---------------start------------->8--- > === release test-crypto-scrypt === > Path: parallel/test-crypto-scrypt > /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/common/index.js:752 > throw new assert.AssertionError({ > ^ > > AssertionError [ERR_ASSERTION]: Input A expected to strictly equal input B: > + expected - actual ... Lines skipped > > Comparison { > - message: 'error:060B50AC:digital envelope routines:EVP_PBE_scrypt:memory limit exceeded', > + code: 'ERR_CRYPTO_SCRYPT_INVALID_PARAMETER', > + message: 'Invalid scrypt parameter', > type: [Function: Error] { > ... > } > } > at new AssertionError (internal/assert.js:268:11) > at Object.innerFn (/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/common/index.js:752:15) > at expectedException (assert.js:489:19) > at expectsError (assert.js:577:16) > at Function.throws (assert.js:608:3) > at Object.expectsError (/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/common/index.js:764:12) > at Object.<anonymous> (/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-crypto-scrypt.js:126:10) > at Module._compile (internal/modules/cjs/loader.js:689:30) > at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10) > at Module.load (internal/modules/cjs/loader.js:599:32) > Command: out/Release/node /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-crypto-scrypt.js > === release test-tls-passphrase === > Path: parallel/test-tls-passphrase > assert.js:578 > throw actual; > ^ > > Error: error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt > at Object.createSecureContext (_tls_common.js:144:17) > at Object.exports.connect (_tls_wrap.js:1119:48) > at /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-tls-passphrase.js:228:7 > at getActual (assert.js:497:5) > at Function.throws (assert.js:608:24) > at Object.<anonymous> (/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-tls-passphrase.js:227:8) > at Module._compile (internal/modules/cjs/loader.js:689:30) > at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10) > at Module.load (internal/modules/cjs/loader.js:599:32) > at tryModuleLoad (internal/modules/cjs/loader.js:538:12) > Command: out/Release/node /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-tls-passphrase.js > === release test-tls-server-verify === > Path: parallel/test-tls-server-verify > 0 0 connecting with agent1 > 0 1 connecting with agent2 > 0 2 connecting with agent3 > 0 3 connecting with nocert > 1 0 connecting with agent1 > 1 1 connecting with agent2 > 1 2 connecting with agent3 > 1 3 connecting with nocert > 2 0 connecting with agent1 > 2 1 connecting with agent2 > 2 2 connecting with agent3 > 2 3 connecting with nocert > 3 0 connecting with agent1 > 3 1 connecting with agent2 > 3 2 connecting with agent3 > 3 3 connecting with nocert > 4 0 connecting with agent1 > 4 1 connecting with agent2 > 4 2 connecting with agent3 > 4 3 connecting with nocert > 5 0 connecting with agent1 > 5 1 connecting with agent2 > 5 2 connecting with agent3 > 5 3 connecting with agent4 > 5 4 connecting with nocert > 0 Running 'Do not request certs. Everyone is unauthorized.' > 0 - unauthed connection: null > 0 - unauthed connection: null > 0 - unauthed connection: null > 0 0 * unauthed > 0 1 * unauthed > 0 2 * unauthed > 0 - unauthed connection: null > 0 3 * unauthed > 1 Running 'Allow both authed and unauthed connections with CA1' > 1 - authed connection: agent1 > 1 - unauthed connection: DEPTH_ZERO_SELF_SIGNED_CERT > 1 - unauthed connection: UNABLE_TO_VERIFY_LEAF_SIGNATURE > 1 0 * authed > 1 1 * unauthed > 1 2 * unauthed > 1 - unauthed connection: UNABLE_TO_GET_ISSUER_CERT > 1 3 * unauthed > 2 Running 'Do not request certs at connection. Do that later' > 2 - connected, renegotiating > 2 - authed connection: agent1 > 2 0 * authed > 2 - unauthed connection: null > 2 1 * unauthed > 2 - unauthed connection: null > 2 2 * unauthed > 2 - unauthed connection: null > 2 3 * unauthed > 3 Running 'Allow only authed connections with CA1' > 3 - authed connection: agent1 > 3 0 * authed > 4 Running 'Allow only authed connections with CA1 and CA2' > 4 - authed connection: agent1 > 4 0 * authed > 4 - authed connection: agent3 > 4 2 * authed > 5 Running 'Allow only certs signed by CA2 but not in the CRL' > assert.js:79 > throw new AssertionError(obj); > ^ > > AssertionError [ERR_ASSERTION]: 5 2 agent3 rejected, but should NOT have been > at ChildProcess.<anonymous> (/tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-tls-server-verify.js:232:14) > at ChildProcess.emit (events.js:182:13) > at Process.ChildProcess._handle.onexit (internal/child_process.js:237:12) > Command: out/Release/node /tmp/guix-build-node-10.6.0.drv-0/node-v10.6.0/test/parallel/test-tls-server-verify.js > [18:56|% 100|+ 2306|- 3]: Done > make[1]: *** [Makefile:256: jstest] Error 1 > make: *** [Makefile:270: test] Error 2 > --8<---------------cut here---------------end--------------->8--- > > I have tried to build 10.9.0 which has been released and the test suite > fails because of network access. > > --8<---------------cut here---------------start------------->8--- > make -s build-addons > touch d9f90e808e8e700c15c35c2d7be302e61a333778.intermediate > touch 6843310704f7b860e12805ed03c0ca2ab1bcdadb.intermediate > LD_LIBRARY_PATH=/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.host:/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../.; mkdir -p /tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/src/node/inspector/protocol; python tools/inspector_protocol/CodeGenerator.py --jinja_dir tools/inspector_protocol/.. --output_base "/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/src/" --config "/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/node_protocol_config.json" > LD_LIBRARY_PATH=/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.host:/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../deps/v8/gypfiles; mkdir -p /tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/src/inspector/protocol /tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/include/inspector; python ../third_party/inspector_protocol/CodeGenerator.py --jinja_dir ../third_party --output_base "/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/src/inspector" --config ../src/inspector/inspector_protocol_config.json > touch f70a2bc83365ae821b54e7787433d4a600b5cf5e.intermediate > LD_LIBRARY_PATH=/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.host:/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../deps/v8/gypfiles; mkdir -p /tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/torque-generated; "/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/torque" ../src/builtins/base.tq ../src/builtins/array.tq ../src/builtins/typed-array.tq -o "/tmp/guix-build-node-10.9.0.drv-0/node-v10.9.0/out/Release/obj/gen/torque-generated" > npm ERR! code ENOTFOUND > npm ERR! errno ENOTFOUND > npm ERR! network request to https://registry.npmjs.org/rehype-raw failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443 > npm ERR! network This is a problem related to network connectivity. > npm ERR! network In most cases you are behind a proxy or have bad network settings. > npm ERR! network > npm ERR! network If you are behind a proxy, please make sure that the > npm ERR! network 'proxy' config is set properly. See: 'npm help config' > make[1]: *** [Makefile:1075: tools/doc/node_modules] Error 1 > make: *** [Makefile:271: test] Error 2 > > Test suite failed, dumping logs. > --8<---------------cut here---------------end--------------->8--- > > Anyway I am giving up. > > Sorry for the delay. I was able to build node on 'core-updates' with this patch: [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1.2: 0001-gnu-node-Update-to-10.9.0.patch --] [-- Type: text/x-patch, Size: 2096 bytes --] From 3f745249f965dce2bc36abc21095b75bb902d11a Mon Sep 17 00:00:00 2001 From: Marius Bakke <mbakke@fastmail.com> Date: Thu, 23 Aug 2018 14:54:32 +0200 Subject: [PATCH] gnu: node: Update to 10.9.0. * gnu/packages/node.scm (node): Update to 10.9.0. [source](uri): Use ".xz" tarball. [arguments]: Set #:test-target. [inputs]: Change OPENSSL to OPENSSL-NEXT. --- gnu/packages/node.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm index d1de7a536..046c61c6d 100644 --- a/gnu/packages/node.scm +++ b/gnu/packages/node.scm @@ -44,14 +44,14 @@ (define-public node (package (name "node") - (version "9.11.1") + (version "10.9.0") (source (origin (method url-fetch) (uri (string-append "https://nodejs.org/dist/v" version - "/node-v" version ".tar.gz")) + "/node-v" version ".tar.xz")) (sha256 (base32 - "1vjh9zvw7wkdz6b0l99ya7mqjk0l8lbg9isr1q8rxwp400dhkk32")) + "00hdachbmcf9pyd1iksprsi5mddwp6z59mb3lr81z8ynfbmzhzni")) (modules '((guix build utils))) (snippet `(begin @@ -82,6 +82,9 @@ "--shared-zlib" "--without-snapshot" "--with-intl=system-icu") + ;; Run only the CI tests. The default check target requires additional + ;; add-ons from NPM not distributed with the source. + #:test-target "test-ci-js" #:phases (modify-phases %standard-phases (add-before 'configure 'patch-files @@ -169,7 +172,7 @@ ("icu4c" ,icu4c) ("libuv" ,libuv) ("nghttp2" ,nghttp2 "lib") - ("openssl" ,openssl) + ("openssl" ,openssl-next) ("zlib" ,zlib))) (synopsis "Evented I/O for V8 JavaScript") (description "Node.js is a platform built on Chrome's JavaScript runtime -- 2.18.0 [-- Attachment #1.3: Type: text/plain, Size: 256 bytes --] I did not push it yet because I was hoping someone with more knowledge of node internals knew what's up with the NPM requirement (and forgot to ping this bug!). On 'master', I think this also requires a newer version of 'libuv'. Can you try it Mathieu? [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply related [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0. 2018-07-08 15:20 ` [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0 Mathieu Lirzin 2018-07-08 15:20 ` [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0 Mathieu Lirzin @ 2018-07-09 14:58 ` Ludovic Courtès 2018-07-09 15:08 ` Ludovic Courtès 2 siblings, 0 replies; 15+ messages in thread From: Ludovic Courtès @ 2018-07-09 14:58 UTC (permalink / raw) To: Mathieu Lirzin; +Cc: 32095 Mathieu Lirzin <mthl@gnu.org> skribis: > * gnu/packages/libevent.scm (libuv): Update to 1.21.0. Applied, thanks! ^ permalink raw reply [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0. 2018-07-08 15:20 ` [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0 Mathieu Lirzin 2018-07-08 15:20 ` [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0 Mathieu Lirzin 2018-07-09 14:58 ` [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0 Ludovic Courtès @ 2018-07-09 15:08 ` Ludovic Courtès 2 siblings, 0 replies; 15+ messages in thread From: Ludovic Courtès @ 2018-07-09 15:08 UTC (permalink / raw) To: Mathieu Lirzin; +Cc: 32095 Mathieu Lirzin <mthl@gnu.org> skribis: > * gnu/packages/libevent.scm (libuv): Update to 1.21.0. Actually this upgrade is not OK as is for ‘master’ because (1) 2,9K packages depend on libuv via CMake, and (2) the upgrade breaks CMake like this: --8<---------------cut here---------------start------------->8--- -- Found LibRHash: /gnu/store/spgvgyl7gc55k0hyn0b0rgzpjg1kb3v2-rhash-1.3.6/lib/librhash.so -- Found ZLIB: /gnu/store/fxiwj2wpp11sif613axdax7gmwzsg6kp-zlib-1.2.11/lib/libz.so (found version "1.2.11") -- Found CURL: /gnu/store/wvd2bm9zqgy2v6yw8cp9id6hw4zlwa4i-curl-7.59.0/lib/libcurl.so (found version "7.59.0") -- Found EXPAT: /gnu/store/70825hjil6070g7cs3mmdnfwmhxgga36-expat-2.2.5/lib/libexpat.so (found version "2.2.5") -- Found LibArchive: /gnu/store/9srbvs17nmh352xxkqadsjan7k5zrwl4-libarchive-3.3.2/lib/libarchive.so (found suitable version "3.3.2", minimum required is "3.0.0") -- Could NOT find LibUV: Found unsuitable version "", but required is at least "1.0.0" (found /gnu/store/bwifrgnryd50lsla5hr3m4ida01gyklc-libuv-1.21.0/lib/libuv.so) CMake Error at CMakeLists.txt:551 (message): CMAKE_USE_SYSTEM_LIBUV is ON but a libuv is not found! Call Stack (most recent call first): CMakeLists.txt:682 (CMAKE_BUILD_UTILITIES) -- Configuring incomplete, errors occurred! See also "/tmp/guix-build-cmake-3.11.0.drv-0/cmake-3.11.0/CMakeFiles/CMakeOutput.log". See also "/tmp/guix-build-cmake-3.11.0.drv-0/cmake-3.11.0/CMakeFiles/CMakeError.log". --------------------------------------------- Error when bootstrapping CMake: Problem while running initial CMake --------------------------------------------- --8<---------------cut here---------------end--------------->8--- I think one way around it, as a first step, is to define libuv-1.21 separately, for use by Node. Could you try that? Thanks in advance, Ludo’. ^ permalink raw reply [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-07-08 15:16 [bug#32095] [PATCH 0/2] Update libuv and node Mathieu Lirzin 2018-07-08 15:20 ` [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0 Mathieu Lirzin @ 2018-09-07 15:13 ` Mathieu Lirzin 2018-09-22 15:08 ` Mathieu Lirzin 1 sibling, 1 reply; 15+ messages in thread From: Mathieu Lirzin @ 2018-09-07 15:13 UTC (permalink / raw) To: Marius Bakke; +Cc: 32095 Marius Bakke <mbakke@fastmail.com> writes: > I was able to build node on 'core-updates' with this patch: Great! On master, the build failed with libuv 1.19.2, however with libuv 1.21.0 both the build and test suite succeed. -- Mathieu Lirzin GPG: F2A3 8D7E EB2B 6640 5761 070D 0ADE E100 9460 4D37 ^ permalink raw reply [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-09-07 15:13 ` [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0 Mathieu Lirzin @ 2018-09-22 15:08 ` Mathieu Lirzin 2018-09-22 15:32 ` Marius Bakke 0 siblings, 1 reply; 15+ messages in thread From: Mathieu Lirzin @ 2018-09-22 15:08 UTC (permalink / raw) To: Marius Bakke; +Cc: 32095 Hello, Mathieu Lirzin <mthl@gnu.org> writes: > On master, the build failed with libuv 1.19.2, however with libuv 1.21.0 > both the build and test suite succeed. Looking at the state of current branches, I think both ‘node’ and ‘libuv’ upgrades can pushed on ‘core-updates-next’. WDYT? -- Mathieu Lirzin GPG: F2A3 8D7E EB2B 6640 5761 070D 0ADE E100 9460 4D37 ^ permalink raw reply [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-09-22 15:08 ` Mathieu Lirzin @ 2018-09-22 15:32 ` Marius Bakke 2018-09-22 16:36 ` Mathieu Lirzin 0 siblings, 1 reply; 15+ messages in thread From: Marius Bakke @ 2018-09-22 15:32 UTC (permalink / raw) To: Mathieu Lirzin; +Cc: 32095 [-- Attachment #1: Type: text/plain, Size: 799 bytes --] Mathieu Lirzin <mthl@gnu.org> writes: > Hello, > > Mathieu Lirzin <mthl@gnu.org> writes: > >> On master, the build failed with libuv 1.19.2, however with libuv 1.21.0 >> both the build and test suite succeed. > > Looking at the state of current branches, I think both ‘node’ and > ‘libuv’ upgrades can pushed on ‘core-updates-next’. > > WDYT? We already have the latest libuv on 'core-updates'. I wanted to push this patch to master actually (with a libuv-1.23 package), but node does not work with OpenSSL 1.1.1: <https://github.com/nodejs/node/issues/18770>. So I wonder if we should downgrade to the 8.12 LTS release, which still supports OpenSSL 1.0, until the OpenSSL situation is sorted. From what I can tell it might take a while. What do you think? [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-09-22 15:32 ` Marius Bakke @ 2018-09-22 16:36 ` Mathieu Lirzin 2018-09-23 13:22 ` Marius Bakke 0 siblings, 1 reply; 15+ messages in thread From: Mathieu Lirzin @ 2018-09-22 16:36 UTC (permalink / raw) To: Marius Bakke; +Cc: 32095 Marius Bakke <mbakke@fastmail.com> writes: > We already have the latest libuv on 'core-updates'. Indeed, I forgot to prune old branches and get confused. > I wanted to push > this patch to master actually (with a libuv-1.23 package), but node does > not work with OpenSSL 1.1.1: > <https://github.com/nodejs/node/issues/18770>. I have read rapidly this thread. IIRC the build for node 10.xx was failing with ‘openssl’ which was the reason of upgrading to ‘openssl-next’ and this issue seems to imply that node fails to run with ‘openssl-next’? Is that correct? Have you recently tried to compile ‘node’ with libuv-1.23 without upgrading the “openssl” input? How did it work? > So I wonder if we should downgrade to the 8.12 LTS release, which still > supports OpenSSL 1.0, until the OpenSSL situation is sorted. From what > I can tell it might take a while. > > What do you think? I think that ideally it would be a good idea to have both the latest and the LTS versions distributed in Guix. So I agree with your solution of downgrading to 8.12 LTS. -- Mathieu Lirzin GPG: F2A3 8D7E EB2B 6640 5761 070D 0ADE E100 9460 4D37 ^ permalink raw reply [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-09-22 16:36 ` Mathieu Lirzin @ 2018-09-23 13:22 ` Marius Bakke 2018-09-23 14:03 ` Mathieu Lirzin 0 siblings, 1 reply; 15+ messages in thread From: Marius Bakke @ 2018-09-23 13:22 UTC (permalink / raw) To: Mathieu Lirzin; +Cc: 32095 [-- Attachment #1.1: Type: text/plain, Size: 4093 bytes --] Mathieu Lirzin <mthl@gnu.org> writes: > Marius Bakke <mbakke@fastmail.com> writes: > >> We already have the latest libuv on 'core-updates'. > > Indeed, I forgot to prune old branches and get confused. > >> I wanted to push >> this patch to master actually (with a libuv-1.23 package), but node does >> not work with OpenSSL 1.1.1: >> <https://github.com/nodejs/node/issues/18770>. > > I have read rapidly this thread. > > IIRC the build for node 10.xx was failing with ‘openssl’ which was the > reason of upgrading to ‘openssl-next’ and this issue seems to imply that > node fails to run with ‘openssl-next’? Is that correct? > > Have you recently tried to compile ‘node’ with libuv-1.23 without > upgrading the “openssl” input? How did it work? Building Node 10.11.0 with OpenSSL@1.0 results in... g++ '-DNODE_ARCH="x64"' '-DNODE_PLATFORM="linux"' '-DNODE_WANT_INTERNALS=1' '-DV8_DEPRECATION_WARNINGS=1' '-DNODE_OPENSSL_SYSTEM_CERT_PATH=""' '-DHAVE_INSPECTOR=1' '-D__POSIX__' '-DNODE_USE_V8_PLATFORM=1' '-DNODE_HAVE_I18N_SUPPORT=1' '-DHAVE_OPENSSL=1' -I../src -I/tmp/guix-build-node-10.11.0.drv-0/node-v10.11.0/out/Release/obj/gen -I/tmp/guix-build-node-10.11.0.drv-0/node-v10.11.0/out/Release/obj/gen/include -I/tmp/guix-build-node-10.11.0.drv-0/node-v10.11.0/out/Release/obj/gen/src -I../deps/v8/include -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -std=gnu++1y -MMD -MF /tmp/guix-build-node-10.11.0.drv-0/node-v10.11.0/out/Release/.deps//tmp/guix-build-node-10.11.0.drv-0/node-v10.11.0/out/Release/obj.target/node_lib/src/node.o.d.raw -c -o /tmp/guix-build-node-10.11.0.drv-0/node-v10.11.0/out/Release/obj.target/node_lib/src/node.o ../src/node.cc In file included from ../src/node.cc:39:0: ../src/node_crypto.h:82:46: error: ‘EVP_MD_CTX_free’ was not declared in this scope using EVPMDPointer = DeleteFnPtr<EVP_MD_CTX, EVP_MD_CTX_free>; ^ ../src/node_crypto.h:82:61: error: template argument 2 is invalid using EVPMDPointer = DeleteFnPtr<EVP_MD_CTX, EVP_MD_CTX_free>; ^ ../src/node_crypto.h:454:25: error: ‘HMAC_CTX_free’ was not declared in this scope DeleteFnPtr<HMAC_CTX, HMAC_CTX_free> ctx_; ^ ../src/node_crypto.h:454:38: error: template argument 2 is invalid DeleteFnPtr<HMAC_CTX, HMAC_CTX_free> ctx_; ^ ../src/node_crypto.h: In constructor ‘node::crypto::Hmac::Hmac(node::Environment*, v8::Local<v8::Object>)’: ../src/node_crypto.h:449:21: error: cannot convert ‘std::nullptr_t’ to ‘int’ in initialization ctx_(nullptr) { ^ ../src/node_crypto.h: At global scope: ../src/node_crypto.h:483:3: error: ‘EVPMDPointer’ does not name a type EVPMDPointer mdctx_; ^ ../src/node_crypto.h: In constructor ‘node::crypto::Hash::Hash(node::Environment*, v8::Local<v8::Object>)’: ../src/node_crypto.h:477:9: error: class ‘node::crypto::Hash’ does not have any field named ‘mdctx_’ mdctx_(nullptr), ^ ../src/node_crypto.h: At global scope: ../src/node_crypto.h:515:3: error: ‘EVPMDPointer’ does not name a type EVPMDPointer mdctx_; ^ make[1]: *** [node_lib.target.mk:181: /tmp/guix-build-node-10.11.0.drv-0/node-v10.11.0/out/Release/obj.target/node_lib/src/node.o] Error 1 >> So I wonder if we should downgrade to the 8.12 LTS release, which still >> supports OpenSSL 1.0, until the OpenSSL situation is sorted. From what >> I can tell it might take a while. >> >> What do you think? > > I think that ideally it would be a good idea to have both the latest and > the LTS versions distributed in Guix. So I agree with your solution of > downgrading to 8.12 LTS. I managed to build Node LTS on 'core-updates' with this patch: [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1.2: 0001-gnu-Add-Node-LTS.patch --] [-- Type: text/x-patch, Size: 4170 bytes --] From 9556fc13a77d2619cfd1e861f0269bccf0a58986 Mon Sep 17 00:00:00 2001 From: Marius Bakke <mbakke@fastmail.com> Date: Sun, 23 Sep 2018 13:12:23 +0200 Subject: [PATCH] gnu: Add Node LTS. * gnu/packages/libevent.scm (libuv-1.19): New public variable. * gnu/packages/node.scm (node)[arguments]: Adjust 'patch-files' phase to ignore missing files. (node-lts): New public variable. --- gnu/packages/libevent.scm | 13 +++++++++++++ gnu/packages/node.scm | 30 +++++++++++++++++++++++++++--- 2 files changed, 40 insertions(+), 3 deletions(-) diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm index bc7f6c670..053824bce 100644 --- a/gnu/packages/libevent.scm +++ b/gnu/packages/libevent.scm @@ -152,6 +152,19 @@ resolution, asynchronous file system operations, and threading primitives.") ;; details. Documentation is CC-BY 4.0 as of 1.12.0; see 'LICENSE-docs'. (license (list expat cc-by4.0)))) +;; Node 8.x require this version. +(define-public libuv-1.19 + (package + (inherit libuv) + (version "1.19.2") + (source (origin + (method url-fetch) + (uri (string-append "https://dist.libuv.org/dist/v" version + "/libuv-v" version ".tar.gz")) + (sha256 + (base32 + "1msk9ac1z69whww88ibrwjqkd1apdla6l77cm2fwy5kigq0z5g3w")))))) + (define-public perl-anyevent (package (name "perl-anyevent") diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm index d1de7a536..50b1c2b34 100644 --- a/gnu/packages/node.scm +++ b/gnu/packages/node.scm @@ -39,7 +39,8 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages tls) - #:use-module (gnu packages web)) + #:use-module (gnu packages web) + #:use-module (srfi srfi-1)) (define-public node (package @@ -86,6 +87,14 @@ (modify-phases %standard-phases (add-before 'configure 'patch-files (lambda* (#:key inputs #:allow-other-keys) + + ;; This phase is inherited by Node LTS, which does not have all + ;; the files listed here. Use this helper for convenience. + (define (delete-if-exists file) + (if (file-exists? file) + (delete-file file) + #t)) + ;; Fix hardcoded /bin/sh references. (substitute* '("lib/child_process.js" "lib/internal/v8_prof_polyfill.js" @@ -103,7 +112,7 @@ ;; FIXME: These tests depend on being able to install eslint. ;; See https://github.com/nodejs/node/issues/17098. - (for-each delete-file + (for-each delete-if-exists '("test/parallel/test-eslint-alphabetize-errors.js" "test/parallel/test-eslint-buffer-constructor.js" "test/parallel/test-eslint-documented-errors.js" @@ -111,7 +120,7 @@ ;; FIXME: These tests fail in the build container, but they don't ;; seem to be indicative of real problems in practice. - (for-each delete-file + (for-each delete-if-exists '("test/async-hooks/test-ttywrap.readstream.js" "test/parallel/test-util-inspect.js" "test/parallel/test-v8-serdes.js" @@ -180,3 +189,18 @@ devices.") (home-page "https://nodejs.org/") (license expat) (properties '((timeout . 3600))))) ; 1 h + +(define-public node-lts + (package + (inherit node) + (version "8.12.0") + (source (origin + (inherit (package-source node)) + (uri (string-append "https://nodejs.org/dist/v" version + "/node-v" version ".tar.xz")) + (sha256 + (base32 + "16j1rrxkhmvpcw689ndw1raql1gz4jqn7n82z55zn63c05cgz7as")))) + (inputs + `(("libuv" ,libuv-1.19) + ,@(alist-delete "libuv" (package-inputs node)))))) -- 2.19.0 [-- Attachment #1.3: Type: text/plain, Size: 125 bytes --] Unfortunately it fails on 'master' because a test requires OpenSSL 1.0.2p. I can arrange to disable the test there. WDYT? [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply related [flat|nested] 15+ messages in thread
* [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-09-23 13:22 ` Marius Bakke @ 2018-09-23 14:03 ` Mathieu Lirzin 2018-09-25 22:45 ` bug#32095: " Marius Bakke 0 siblings, 1 reply; 15+ messages in thread From: Mathieu Lirzin @ 2018-09-23 14:03 UTC (permalink / raw) To: Marius Bakke; +Cc: 32095 Marius Bakke <mbakke@fastmail.com> writes: > I managed to build Node LTS on 'core-updates' with this patch: > > From 9556fc13a77d2619cfd1e861f0269bccf0a58986 Mon Sep 17 00:00:00 2001 > From: Marius Bakke <mbakke@fastmail.com> > Date: Sun, 23 Sep 2018 13:12:23 +0200 > Subject: [PATCH] gnu: Add Node LTS. > > * gnu/packages/libevent.scm (libuv-1.19): New public variable. > * gnu/packages/node.scm (node)[arguments]: Adjust 'patch-files' phase to > ignore missing files. > (node-lts): New public variable. > --- > gnu/packages/libevent.scm | 13 +++++++++++++ > gnu/packages/node.scm | 30 +++++++++++++++++++++++++++--- > 2 files changed, 40 insertions(+), 3 deletions(-) Excellent! The patch looks good to me. -- Mathieu Lirzin GPG: F2A3 8D7E EB2B 6640 5761 070D 0ADE E100 9460 4D37 ^ permalink raw reply [flat|nested] 15+ messages in thread
* bug#32095: [PATCH 2/2] gnu: node: Update to 10.6.0. 2018-09-23 14:03 ` Mathieu Lirzin @ 2018-09-25 22:45 ` Marius Bakke 0 siblings, 0 replies; 15+ messages in thread From: Marius Bakke @ 2018-09-25 22:45 UTC (permalink / raw) To: Mathieu Lirzin; +Cc: 32095-done [-- Attachment #1: Type: text/plain, Size: 1171 bytes --] Mathieu Lirzin <mthl@gnu.org> writes: > Marius Bakke <mbakke@fastmail.com> writes: > >> I managed to build Node LTS on 'core-updates' with this patch: >> >> From 9556fc13a77d2619cfd1e861f0269bccf0a58986 Mon Sep 17 00:00:00 2001 >> From: Marius Bakke <mbakke@fastmail.com> >> Date: Sun, 23 Sep 2018 13:12:23 +0200 >> Subject: [PATCH] gnu: Add Node LTS. >> >> * gnu/packages/libevent.scm (libuv-1.19): New public variable. >> * gnu/packages/node.scm (node)[arguments]: Adjust 'patch-files' phase to >> ignore missing files. >> (node-lts): New public variable. >> --- >> gnu/packages/libevent.scm | 13 +++++++++++++ >> gnu/packages/node.scm | 30 +++++++++++++++++++++++++++--- >> 2 files changed, 40 insertions(+), 3 deletions(-) > > Excellent! The patch looks good to me. It turned out the OpenSSL related test failure when I first tried this on 'master' was due to recently expired TLS certificates, and not due to a difference in OpenSSL version on 'core-updates'. So I pushed another patch to disable tests that require valid TLS certificates (it also caused the current Node package to FTBFS), and then the Node LTS patch to 'master'. Thanks for the review! [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2018-09-25 22:46 UTC | newest] Thread overview: 15+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-07-08 15:16 [bug#32095] [PATCH 0/2] Update libuv and node Mathieu Lirzin 2018-07-08 15:20 ` [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0 Mathieu Lirzin 2018-07-08 15:20 ` [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0 Mathieu Lirzin 2018-07-09 14:59 ` Ludovic Courtès 2018-09-06 23:23 ` Mathieu Lirzin 2018-09-07 11:21 ` Marius Bakke 2018-07-09 14:58 ` [bug#32095] [PATCH 1/2] gnu: libuv: Update to 1.21.0 Ludovic Courtès 2018-07-09 15:08 ` Ludovic Courtès 2018-09-07 15:13 ` [bug#32095] [PATCH 2/2] gnu: node: Update to 10.6.0 Mathieu Lirzin 2018-09-22 15:08 ` Mathieu Lirzin 2018-09-22 15:32 ` Marius Bakke 2018-09-22 16:36 ` Mathieu Lirzin 2018-09-23 13:22 ` Marius Bakke 2018-09-23 14:03 ` Mathieu Lirzin 2018-09-25 22:45 ` bug#32095: " Marius Bakke
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/guix.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.