[v2] gnu: node: Update to 6.3.1.

Message ID 20160805110245.10078-1-jlicht@fsfe.org
State New
Headers

Commit Message

Jelle Licht Aug. 5, 2016, 11:02 a.m. UTC
  * gnu/packages/node.scm (node): Update to 6.3.1.
---
 gnu/packages/node.scm | 32 ++++++++++++++------------------
 1 file changed, 14 insertions(+), 18 deletions(-)
  

Comments

Leo Famulari Aug. 7, 2016, 3 a.m. UTC | #1
On Fri, Aug 05, 2016 at 01:02:45PM +0200, Jelle Licht wrote:
>               ;; 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
> -                       '("test/parallel/test-cluster-master-error.js"
> +                       '("test/parallel/test-https-connect-address-family.js"
> +                         "test/parallel/test-tls-connect-address-family.js"

The file names suggest they require a network interface, which is
unavailable in the build environment.

> +                         "test/parallel/test-dgram-membership.js"
> +                         "test/parallel/test-cluster-master-error.js"

I assume the above comment about not being real problems in practice
holds for these tests?

> -         (replace 'patch-shebangs
> -           (lambda* (#:key outputs #:allow-other-keys #:rest all)
> -             ;; Work around <http://bugs.gnu.org/23723>.
> -             (let* ((patch  (assoc-ref %standard-phases 'patch-shebangs))
> -                    (npm    (string-append (assoc-ref outputs "out")
> -                                           "/bin/npm"))
> +         (add-after 'patch-shebangs 'patch-npm-shebang
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let* ((bindir (string-append (assoc-ref outputs "out")
> +                                           "/bin"))
> +                    (npm    (string-append bindir "/npm"))
>                      (target (readlink npm)))
> -               (and (apply patch all)
> -                    (with-directory-excursion (dirname npm)
> -                      ;; Turn NPM into a symlink to TARGET again, which 'npm'
> -                      ;; relies on for the resolution of relative file names
> -                      ;; in JS files.
> -                      (delete-file target)
> -                      (rename-file npm target)
> -                      (symlink target npm)
> -                      #t))))))))
> +               (with-directory-excursion bindir
> +                 (patch-shebang target (list bindir))
> +                 #t)))))))

Will you mention these changes in the commit message?
  
Jelle Licht Aug. 7, 2016, 12:45 p.m. UTC | #2
Leo Famulari <leo@famulari.name> writes:

> On Fri, Aug 05, 2016 at 01:02:45PM +0200, Jelle Licht wrote:
>>               ;; 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
>> -                       '("test/parallel/test-cluster-master-error.js"
>> +                       '("test/parallel/test-https-connect-address-family.js"
>> +                         "test/parallel/test-tls-connect-address-family.js"
>
> The file names suggest they require a network interface, which is
> unavailable in the build environment.
>
>> +                         "test/parallel/test-dgram-membership.js"
>> +                         "test/parallel/test-cluster-master-error.js"
>
> I assume the above comment about not being real problems in practice
> holds for these tests?
>
Yes, this was my conclusion. The tests either required access to a dns
service, or wanted to some things with sockets.

>> -         (replace 'patch-shebangs
>> -           (lambda* (#:key outputs #:allow-other-keys #:rest all)
>> -             ;; Work around <http://bugs.gnu.org/23723>.
>> -             (let* ((patch  (assoc-ref %standard-phases 'patch-shebangs))
>> -                    (npm    (string-append (assoc-ref outputs "out")
>> -                                           "/bin/npm"))
>> +         (add-after 'patch-shebangs 'patch-npm-shebang
>> +           (lambda* (#:key outputs #:allow-other-keys)
>> +             (let* ((bindir (string-append (assoc-ref outputs "out")
>> +                                           "/bin"))
>> +                    (npm    (string-append bindir "/npm"))
>>                      (target (readlink npm)))
>> -               (and (apply patch all)
>> -                    (with-directory-excursion (dirname npm)
>> -                      ;; Turn NPM into a symlink to TARGET again, which 'npm'
>> -                      ;; relies on for the resolution of relative file names
>> -                      ;; in JS files.
>> -                      (delete-file target)
>> -                      (rename-file npm target)
>> -                      (symlink target npm)
>> -                      #t))))))))
>> +               (with-directory-excursion bindir
>> +                 (patch-shebang target (list bindir))
>> +                 #t)))))))
>
> Will you mention these changes in the commit message?
What do you mean by this exactly? The short of it is that a change to
the patch-shebangs phase was merged by way of the core-updates merge,
which no longer necessitated this workaround.

Thanks
- Jelle
  
Leo Famulari Aug. 8, 2016, 9:18 p.m. UTC | #3
On Sun, Aug 07, 2016 at 02:45:20PM +0200, Jelle Licht wrote:
> Leo Famulari <leo@famulari.name> writes:
> >> -         (replace 'patch-shebangs
> >> -           (lambda* (#:key outputs #:allow-other-keys #:rest all)
> >> -             ;; Work around <http://bugs.gnu.org/23723>.
> >> -             (let* ((patch  (assoc-ref %standard-phases 'patch-shebangs))
> >> -                    (npm    (string-append (assoc-ref outputs "out")
> >> -                                           "/bin/npm"))
> >> +         (add-after 'patch-shebangs 'patch-npm-shebang
> >> +           (lambda* (#:key outputs #:allow-other-keys)
> >> +             (let* ((bindir (string-append (assoc-ref outputs "out")
> >> +                                           "/bin"))
> >> +                    (npm    (string-append bindir "/npm"))
> >>                      (target (readlink npm)))
> >> -               (and (apply patch all)
> >> -                    (with-directory-excursion (dirname npm)
> >> -                      ;; Turn NPM into a symlink to TARGET again, which 'npm'
> >> -                      ;; relies on for the resolution of relative file names
> >> -                      ;; in JS files.
> >> -                      (delete-file target)
> >> -                      (rename-file npm target)
> >> -                      (symlink target npm)
> >> -                      #t))))))))
> >> +               (with-directory-excursion bindir
> >> +                 (patch-shebang target (list bindir))
> >> +                 #t)))))))
> >
> > Will you mention these changes in the commit message?
> What do you mean by this exactly? The short of it is that a change to
> the patch-shebangs phase was merged by way of the core-updates merge,
> which no longer necessitated this workaround.

The commit log should mention all changes made in the commit. So, I
think the commit message should have a line like this:

[arguments]: Disable more tests. Update code that does foo.

... where foo is the diff quoted above.
  

Patch

diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm
index 887ef93..4c98799 100644
--- a/gnu/packages/node.scm
+++ b/gnu/packages/node.scm
@@ -37,14 +37,14 @@ 
 (define-public node
   (package
     (name "node")
-    (version "6.0.0")
+    (version "6.3.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "http://nodejs.org/dist/v" version
                                   "/node-v" version ".tar.gz"))
               (sha256
                (base32
-                "0cpw7ng193jgfbw2g1fd0kcglmjjkbj4xb89g00z8zz0lj0nvdbd"))))
+                "1xh883fbhyhgna1vi8xmd6klg4r186lb1h1xr08hn89wy7f48q9z"))))
     (build-system gnu-build-system)
     (arguments
      ;; TODO: Package http_parser and add --shared-http-parser.
@@ -78,7 +78,10 @@ 
              ;; 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
-                       '("test/parallel/test-cluster-master-error.js"
+                       '("test/parallel/test-https-connect-address-family.js"
+                         "test/parallel/test-tls-connect-address-family.js"
+                         "test/parallel/test-dgram-membership.js"
+                         "test/parallel/test-cluster-master-error.js"
                          "test/parallel/test-cluster-master-kill.js"
                          "test/parallel/test-npm-install.js"
                          "test/parallel/test-stdout-close-unref.js"
@@ -101,22 +104,15 @@ 
                              (string-append (assoc-ref inputs "python")
                                             "/bin/python")
                              "configure" flags)))))
-         (replace 'patch-shebangs
-           (lambda* (#:key outputs #:allow-other-keys #:rest all)
-             ;; Work around <http://bugs.gnu.org/23723>.
-             (let* ((patch  (assoc-ref %standard-phases 'patch-shebangs))
-                    (npm    (string-append (assoc-ref outputs "out")
-                                           "/bin/npm"))
+         (add-after 'patch-shebangs 'patch-npm-shebang
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((bindir (string-append (assoc-ref outputs "out")
+                                           "/bin"))
+                    (npm    (string-append bindir "/npm"))
                     (target (readlink npm)))
-               (and (apply patch all)
-                    (with-directory-excursion (dirname npm)
-                      ;; Turn NPM into a symlink to TARGET again, which 'npm'
-                      ;; relies on for the resolution of relative file names
-                      ;; in JS files.
-                      (delete-file target)
-                      (rename-file npm target)
-                      (symlink target npm)
-                      #t))))))))
+               (with-directory-excursion bindir
+                 (patch-shebang target (list bindir))
+                 #t)))))))
     (native-inputs
      `(("python" ,python-2)
        ("perl" ,perl)