<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>