Message ID | 6bc6fc29681881be3ce767c51a7dd8886b97c169.1687336553.git.lars@6xq.net |
---|---|
State | New |
Headers | show |
Series | [bug#64203] guix: node-build-system: Delete from peerDependencies too. | expand |
Lars-Dominik Braun <lars@6xq.net> writes: > * guix/build/node-build-system.scm (delete-dependencies): Remove supplied > dependencies from peerDependencies field too. > --- > > Hi, > > this is required to build a new RStudio. I’m also validating it does > not break anything here: https://ci.guix.gnu.org/jobset/node-peerdeps LGTM. You can consider adding a note to the commit message that thix needed due to a change in how more recent npm versions deal with peerDependencies. Cheers, - Jelle
Hi, > LGTM. You can consider adding a note to the commit message that thix > needed due to a change in how more recent npm versions deal with > peerDependencies. I don’t know anything about that change in npm unfortunately – this is purely based on observations of failed builds. Do you have further information on this? Thanks, Lars
Lars-Dominik Braun <lars@6xq.net> writes: > Hi, > >> LGTM. You can consider adding a note to the commit message that thix >> needed due to a change in how more recent npm versions deal with >> peerDependencies. > > I don’t know anything about that change in npm unfortunately – this > is purely based on observations of failed builds. Do you have further > information on this? The previous version of node we had packaged guix was v14, which came with npm v6. The most recent version of node we have packaged in guix is v18, which comes with npm v9. From [1]: "In npm versions 3 through 6, peerDependencies were not automatically installed, and would raise a warning if an invalid version of the peer dependency was found in the tree. As of npm v7, peerDependencies are installed by default." HTH! - Jelle [1]: https://docs.npmjs.com/cli/v9/configuring-npm/package-json#peerdependencies:
Hi, > The previous version of node we had packaged guix was v14, which came > with npm v6. The most recent version of node we have packaged in guix is > v18, which comes with npm v9. > > From [1]: "In npm versions 3 through 6, peerDependencies were not > automatically installed, and would raise a warning if an invalid version > of the peer dependency was found in the tree. As of npm v7, > peerDependencies are installed by default." thanks! Pushed to master as 37c2e94cec6cb8b5e0e93e7b6c712c3b187ca5db. Cheers, Lars
diff --git a/guix/build/node-build-system.scm b/guix/build/node-build-system.scm index 93f7efbb2b..fb23894bc1 100644 --- a/guix/build/node-build-system.scm +++ b/guix/build/node-build-system.scm @@ -208,7 +208,8 @@ (define (delete-dependencies absent) (jsobject-update* pkg-meta `("devDependencies" ,delete-from-jsobject (@)) - `("dependencies" ,delete-from-jsobject (@)))))) + `("dependencies" ,delete-from-jsobject (@)) + `("peerDependencies" ,delete-from-jsobject (@)))))) (define* (delete-lockfiles #:key inputs #:allow-other-keys) "Delete 'package-lock.json', 'yarn.lock', and 'npm-shrinkwrap.json', if they