<pre style='margin:0'>
Blair Zajac (blair) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/eead086a891f0971e28638b45c5fb5330095e491">https://github.com/macports/macports-ports/commit/eead086a891f0971e28638b45c5fb5330095e491</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 eead086a891 npm9: new port based off npm8; add conflicts for npm*.
</span>eead086a891 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit eead086a891f0971e28638b45c5fb5330095e491
</span>Author: Blair Zajac <blair@macports.org>
AuthorDate: Sun Nov 13 14:02:35 2022 -0800

<span style='display:block; white-space:pre;color:#404040;'>    npm9: new port based off npm8; add conflicts for npm*.
</span>---
 devel/npm3/Portfile                                |  2 +-
 devel/npm4/Portfile                                |  2 +-
 devel/npm5/Portfile                                |  2 +-
 devel/npm6/Portfile                                |  2 +-
 devel/npm7/Portfile                                |  2 +-
 devel/npm8/Portfile                                |  4 ++--
 devel/{npm8 => npm9}/Portfile                      | 25 +++++++++++-----------
 devel/npm9/files/patch-lib-commands-update.js.diff | 24 +++++++++++++++++++++
 devel/npm9/files/patch-package.json.diff           | 10 +++++++++
 9 files changed, 53 insertions(+), 20 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/npm3/Portfile b/devel/npm3/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index b895bc17272..fb68806b880 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/npm3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/npm3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,7 +23,7 @@ long_description    npm is a package manager for node. \
</span>                     You can use it to install and publish your node programs. \
                     It manages dependencies and does other cool stuff.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-conflicts           npm4 npm5 npm6 npm7 npm8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts           npm4 npm5 npm6 npm7 npm8 npm9
</span> 
 homepage            http://www.npmjs.org/
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/npm4/Portfile b/devel/npm4/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index e3e9994d889..84c980d3aee 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/npm4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/npm4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,7 +23,7 @@ long_description    npm is a package manager for node. \
</span>                     You can use it to install and publish your node programs. \
                     It manages dependencies and does other cool stuff.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-conflicts           npm3 npm5 npm6 npm7 npm8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts           npm3 npm5 npm6 npm7 npm8 npm9
</span> 
 homepage            http://www.npmjs.org/
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/npm5/Portfile b/devel/npm5/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 956b25f4a9b..f92d93ba786 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/npm5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/npm5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,7 +23,7 @@ long_description    npm is a package manager for node. \
</span>                     You can use it to install and publish your node programs. \
                     It manages dependencies and does other cool stuff.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-conflicts           npm3 npm4 npm6 npm7 npm8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts           npm3 npm4 npm6 npm7 npm8 npm9
</span> 
 homepage            https://www.npmjs.com/
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/npm6/Portfile b/devel/npm6/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 0340b10a43c..ec04c678640 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/npm6/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/npm6/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,7 +15,7 @@ long_description    npm is a package manager for node. \
</span>                     You can use it to install and publish your node programs. \
                     It manages dependencies and does other cool stuff.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-conflicts           npm3 npm4 npm5 npm7 npm8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts           npm3 npm4 npm5 npm7 npm8 npm9
</span> 
 homepage            https://www.npmjs.com/
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/npm7/Portfile b/devel/npm7/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 3f809d1b22f..cbd33676e1f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/npm7/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/npm7/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,7 +15,7 @@ long_description    npm is a package manager for node. \
</span>                     You can use it to install and publish your node programs. \
                     It manages dependencies and does other cool stuff.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-conflicts           npm3 npm4 npm5 npm6 npm8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts           npm3 npm4 npm5 npm6 npm8 npm9
</span> 
 homepage            https://www.npmjs.com/
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/npm8/Portfile b/devel/npm8/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 842278db816..200fdc1cb6f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/npm8/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/npm8/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,7 +15,7 @@ long_description    npm is a package manager for node. \
</span>                     You can use it to install and publish your node programs. \
                     It manages dependencies and does other cool stuff.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-conflicts           npm3 npm4 npm5 npm6 npm7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts           npm3 npm4 npm5 npm6 npm7 npm9
</span> 
 homepage            https://www.npmjs.com/
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -91,4 +91,4 @@ ${prefix}/lib/node_modules/ until you manually delete them.
</span> 
 livecheck.type      regex
 livecheck.url       https://registry.npmjs.org/npm
<span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.regex     {"latest":"(.*?)"}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex     {"next-8":"(.*?)"}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/npm8/Portfile b/devel/npm9/Portfile
</span>similarity index 80%
copy from devel/npm8/Portfile
copy to devel/npm9/Portfile
<span style='display:block; white-space:pre;color:#808080;'>index 842278db816..f1cc6d43e5b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/npm8/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/npm9/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -2,9 +2,9 @@
</span> 
 PortSystem          1.0
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-name                npm8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-version             8.19.3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name                npm9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             9.1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span> categories          devel
 platforms           darwin
 supported_archs     noarch
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,7 +15,7 @@ long_description    npm is a package manager for node. \
</span>                     You can use it to install and publish your node programs. \
                     It manages dependencies and does other cool stuff.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-conflicts           npm3 npm4 npm5 npm6 npm7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts           npm3 npm4 npm5 npm6 npm7 npm8
</span> 
 homepage            https://www.npmjs.com/
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -27,18 +27,18 @@ extract.suffix      .tgz
</span> 
 # Please keep the sha1 - users can use it to validate sha values
 # published on npmjs.org for the package
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  6ba8b8cfaead428bcd1ca7b963aad1f35fd63797 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha1    adb51bf8886d519dd4df162726d0ad157ecfa272 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  634bf4e0dc87be771ebf48a058629960e979a209c20a51ebdbc4897ca6a25260 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    2438883
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  c7e89c09c729bbee748e685d97208385bd299491 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha1    a637d44f052d8b21c7a71ab417981ebe586f387f \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  c5544c32521f07153087d32a06f43992275e23935dbe9548fbd77b53de18ab40 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    2417193
</span> 
 worksrcdir          "package"
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib         path:bin/node:nodejs16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib         path:bin/node:nodejs18
</span> 
 platform darwin {
     if {${os.major} < 13} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        depends_lib-replace path:bin/node:nodejs16 path:bin/node:nodejs14
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-replace path:bin/node:nodejs18 path:bin/node:nodejs14
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -56,14 +56,13 @@ post-patch {
</span>                    ${worksrcpath}/node_modules/mkdirp/bin/cmd.js \
                    ${worksrcpath}/node_modules/node-gyp/bin/node-gyp.js \
                    ${worksrcpath}/node_modules/node-gyp/node_modules/nopt/bin/nopt.js \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                   ${worksrcpath}/node_modules/node-gyp/node_modules/which/bin/node-which \
</span>                    ${worksrcpath}/node_modules/nopt/bin/nopt.js \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   ${worksrcpath}/node_modules/npm-packlist/bin/index.js \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                   ${worksrcpath}/node_modules/opener/bin/opener-bin.js \
</span>                    ${worksrcpath}/node_modules/pacote/lib/bin.js \
                    ${worksrcpath}/node_modules/qrcode-terminal/bin/qrcode-terminal.js \
                    ${worksrcpath}/node_modules/rimraf/bin.js \
                    ${worksrcpath}/node_modules/semver/bin/semver.js \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                   ${worksrcpath}/node_modules/which/bin/node-which] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   ${worksrcpath}/node_modules/which/bin/which.js] {
</span>         reinplace "s|/usr/bin/env node|${prefix}/bin/node|" ${f}
     }
 }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/npm9/files/patch-lib-commands-update.js.diff b/devel/npm9/files/patch-lib-commands-update.js.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..3e5ac0f3653
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/npm9/files/patch-lib-commands-update.js.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,24 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- lib/commands/update.js.orig    1985-10-26 01:15:00.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ lib/commands/update.js 2021-03-23 15:13:13.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -44,6 +44,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ? global
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       : this.npm.prefix
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    // Prevent the npm package in global from updating. Prevent
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    // 'npm update -g' since it'll implicity upgrade npm and also
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    // prevent 'npm update -g npm'.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (this.npm.config.get('global')) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (!args.length || (args.length && args.find(e => e === 'npm'))) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        log.error('update', 'Ignoring attempt to update npm in ' + global);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        log.error('update', 'which is part of the MacPorts npm9 base');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        log.error('update', 'installation. To update npm please run:');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        log.error('update', 'sudo port selfupdate && sudo port upgrade npm9');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        throw new Error('Ignoring attempt to update npm in ' + global +
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        ' which is part of the MacPorts npm9 base' +
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        ' installation.');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (this.npm.config.get('depth')) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       log.warn('update', 'The --depth option no longer has any effect. See RFC0019.\n' +
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         'https://github.com/npm/rfcs/blob/latest/implemented/0019-remove-update-depth-option.md')
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/npm9/files/patch-package.json.diff b/devel/npm9/files/patch-package.json.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..2e0f865b2ea
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/npm9/files/patch-package.json.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- package.json.orig      1985-10-26 01:15:00.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ package.json   2022-11-13 13:14:12.684151167 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -224,7 +224,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     "test": "tap",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     "test-all": "node . run test -ws -iwr --if-present",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     "snap": "tap",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    "prepack": "node . run build -w docs",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     "test:nocleanup": "NO_TEST_CLEANUP=1 node . run test --",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     "sudotest": "sudo node . run run test --",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     "sudotest:nocleanup": "sudo NO_TEST_CLEANUP=1 node . run test --",
</span></pre><pre style='margin:0'>

</pre>