<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/6847b46cb407d7f894ee7b1d5a59e759e3d6d73e">https://github.com/macports/macports-ports/commit/6847b46cb407d7f894ee7b1d5a59e759e3d6d73e</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 6847b46cb40 npm PG: make a bit more useful
</span>6847b46cb40 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 6847b46cb407d7f894ee7b1d5a59e759e3d6d73e
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Sat Mar 9 12:17:40 2024 +1100
<span style='display:block; white-space:pre;color:#404040;'> npm PG: make a bit more useful
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Add deps in a callback so changing npm.version or npm.nodejs_version
</span><span style='display:block; white-space:pre;color:#404040;'> does something. Clear extract.only instead of overriding the extract
</span><span style='display:block; white-space:pre;color:#404040;'> phase entirely so additional distfiles can be added and extracted if
</span><span style='display:block; white-space:pre;color:#404040;'> ports need that.
</span>---
_resources/port1.0/group/npm-1.0.tcl | 22 +++++++++++++---------
1 file changed, 13 insertions(+), 9 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/_resources/port1.0/group/npm-1.0.tcl b/_resources/port1.0/group/npm-1.0.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index acd78d05318..24396f6232f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/_resources/port1.0/group/npm-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/_resources/port1.0/group/npm-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,37 +5,41 @@
</span> # It essentially imitates what npm install -g does.
options npm.rootname
<span style='display:block; white-space:pre;background:#ffe0e0;'>-default npm.rootname {[option name]}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default npm.rootname {${name}}
</span>
default master_sites {https://registry.npmjs.org/${npm.rootname}/-/}
default distname {${npm.rootname}-${version}}
extract.suffix .tgz
<span style='display:block; white-space:pre;background:#ffe0e0;'>-options npm.nodejs_version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+options npm.nodejs_version npm.version npm.add_dependencies
</span> default npm.nodejs_version 16
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-options npm.version
</span> default npm.version 8
<span style='display:block; white-space:pre;background:#e0ffe0;'>+default npm.add_dependencies yes
</span>
default livecheck.type regex
default livecheck.url {https://registry.npmjs.org/${npm.rootname}/latest}
default livecheck.regex {\\"version\\":\\"(\[^\\"\]+)\\"}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build-append path:bin/npm:npm${npm.version}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib-append path:bin/node:nodejs${npm.nodejs_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc npm_add_dependencies {} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ global npm.version npm.nodejs_version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-delete path:bin/npm:npm${npm.version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-delete path:bin/node:nodejs${npm.nodejs_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append path:bin/npm:npm${npm.version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append path:bin/node:nodejs${npm.nodejs_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+port::register_callback npm_add_dependencies
</span>
# Pass the tarball distfile to 'npm install' directly, since running 'npm
# install' from the extracted directory creates a symlink to the directory
# (which gets removed). Since there's no need to extract the tarball, disable
# the extraction step.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-extract {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+extract.only
</span>
use_configure no
build {}
destroot {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- system "npm install -ddd --global --prefix=${destroot}${prefix} ${distpath}/${distfiles}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system -W ${workpath} "npm install -ddd --global --prefix=${destroot}${prefix} ${distpath}/${distfiles}"
</span> }
</pre><pre style='margin:0'>
</pre>