From 47ea59fad1ea97ffeab7b670f45b99943ce9543b Mon Sep 17 00:00:00 2001 From: npm CLI robot Date: Mon, 13 Jun 2022 23:04:21 -0700 Subject: [PATCH] deps: upgrade npm to 8.12.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/43301 Reviewed-By: Ruy Adorno Reviewed-By: Luigi Pinca Reviewed-By: Tobias Nießen Reviewed-By: Mohammed Keyvanzadeh Reviewed-By: Mestery --- deps/npm/docs/content/commands/npm-adduser.md | 14 ++++ deps/npm/docs/content/commands/npm-bin.md | 2 - deps/npm/docs/content/commands/npm-config.md | 2 - deps/npm/docs/content/commands/npm-diff.md | 2 - deps/npm/docs/content/commands/npm-init.md | 11 +++ .../docs/content/commands/npm-install-test.md | 2 - deps/npm/docs/content/commands/npm-install.md | 2 - deps/npm/docs/content/commands/npm-link.md | 2 - deps/npm/docs/content/commands/npm-ls.md | 2 - .../npm/docs/content/commands/npm-outdated.md | 2 - deps/npm/docs/content/commands/npm-prefix.md | 2 - deps/npm/docs/content/commands/npm-rebuild.md | 2 - deps/npm/docs/content/commands/npm-root.md | 2 - deps/npm/docs/content/commands/npm-update.md | 2 - .../content/configuring-npm/package-json.md | 20 +++++ deps/npm/docs/content/using-npm/config.md | 44 +++++------ deps/npm/docs/content/using-npm/scripts.md | 6 ++ .../npm/docs/output/commands/npm-adduser.html | 13 +++- deps/npm/docs/output/commands/npm-bin.html | 2 - deps/npm/docs/output/commands/npm-config.html | 2 - deps/npm/docs/output/commands/npm-diff.html | 2 - deps/npm/docs/output/commands/npm-init.html | 11 ++- .../output/commands/npm-install-test.html | 2 - .../npm/docs/output/commands/npm-install.html | 2 - deps/npm/docs/output/commands/npm-link.html | 2 - deps/npm/docs/output/commands/npm-ls.html | 4 +- .../docs/output/commands/npm-outdated.html | 2 - deps/npm/docs/output/commands/npm-prefix.html | 2 - .../npm/docs/output/commands/npm-rebuild.html | 2 - deps/npm/docs/output/commands/npm-root.html | 2 - deps/npm/docs/output/commands/npm-update.html | 2 - deps/npm/docs/output/commands/npm.html | 2 +- .../output/configuring-npm/package-json.html | 18 +++++ deps/npm/docs/output/using-npm/config.html | 43 +++++------ deps/npm/docs/output/using-npm/scripts.html | 8 +- deps/npm/lib/commands/adduser.js | 2 + deps/npm/lib/commands/init.js | 45 ++++++++++- deps/npm/lib/commands/version.js | 44 ++++------- deps/npm/lib/utils/config/definitions.js | 9 +-- deps/npm/lib/workspaces/update-workspaces.js | 40 ++++++++++ deps/npm/man/man1/npm-access.1 | 2 +- deps/npm/man/man1/npm-adduser.1 | 17 +++- deps/npm/man/man1/npm-audit.1 | 2 +- deps/npm/man/man1/npm-bin.1 | 5 +- deps/npm/man/man1/npm-bugs.1 | 2 +- deps/npm/man/man1/npm-cache.1 | 2 +- deps/npm/man/man1/npm-ci.1 | 2 +- deps/npm/man/man1/npm-completion.1 | 2 +- deps/npm/man/man1/npm-config.1 | 5 +- deps/npm/man/man1/npm-dedupe.1 | 2 +- deps/npm/man/man1/npm-deprecate.1 | 2 +- deps/npm/man/man1/npm-diff.1 | 5 +- deps/npm/man/man1/npm-dist-tag.1 | 2 +- deps/npm/man/man1/npm-docs.1 | 2 +- deps/npm/man/man1/npm-doctor.1 | 2 +- deps/npm/man/man1/npm-edit.1 | 2 +- deps/npm/man/man1/npm-exec.1 | 2 +- deps/npm/man/man1/npm-explain.1 | 2 +- deps/npm/man/man1/npm-explore.1 | 2 +- deps/npm/man/man1/npm-find-dupes.1 | 2 +- deps/npm/man/man1/npm-fund.1 | 2 +- deps/npm/man/man1/npm-help-search.1 | 2 +- deps/npm/man/man1/npm-help.1 | 2 +- deps/npm/man/man1/npm-hook.1 | 2 +- deps/npm/man/man1/npm-init.1 | 13 +++- deps/npm/man/man1/npm-install-ci-test.1 | 2 +- deps/npm/man/man1/npm-install-test.1 | 5 +- deps/npm/man/man1/npm-install.1 | 5 +- deps/npm/man/man1/npm-link.1 | 5 +- deps/npm/man/man1/npm-logout.1 | 2 +- deps/npm/man/man1/npm-ls.1 | 7 +- deps/npm/man/man1/npm-org.1 | 2 +- deps/npm/man/man1/npm-outdated.1 | 5 +- deps/npm/man/man1/npm-owner.1 | 2 +- deps/npm/man/man1/npm-pack.1 | 2 +- deps/npm/man/man1/npm-ping.1 | 2 +- deps/npm/man/man1/npm-pkg.1 | 2 +- deps/npm/man/man1/npm-prefix.1 | 5 +- deps/npm/man/man1/npm-profile.1 | 2 +- deps/npm/man/man1/npm-prune.1 | 2 +- deps/npm/man/man1/npm-publish.1 | 2 +- deps/npm/man/man1/npm-rebuild.1 | 5 +- deps/npm/man/man1/npm-repo.1 | 2 +- deps/npm/man/man1/npm-restart.1 | 2 +- deps/npm/man/man1/npm-root.1 | 5 +- deps/npm/man/man1/npm-run-script.1 | 2 +- deps/npm/man/man1/npm-search.1 | 2 +- deps/npm/man/man1/npm-set-script.1 | 2 +- deps/npm/man/man1/npm-shrinkwrap.1 | 2 +- deps/npm/man/man1/npm-star.1 | 2 +- deps/npm/man/man1/npm-stars.1 | 2 +- deps/npm/man/man1/npm-start.1 | 2 +- deps/npm/man/man1/npm-stop.1 | 2 +- deps/npm/man/man1/npm-team.1 | 2 +- deps/npm/man/man1/npm-test.1 | 2 +- deps/npm/man/man1/npm-token.1 | 2 +- deps/npm/man/man1/npm-uninstall.1 | 2 +- deps/npm/man/man1/npm-unpublish.1 | 2 +- deps/npm/man/man1/npm-unstar.1 | 2 +- deps/npm/man/man1/npm-update.1 | 5 +- deps/npm/man/man1/npm-version.1 | 2 +- deps/npm/man/man1/npm-view.1 | 2 +- deps/npm/man/man1/npm-whoami.1 | 2 +- deps/npm/man/man1/npm.1 | 4 +- deps/npm/man/man1/npx.1 | 2 +- deps/npm/man/man5/folders.5 | 2 +- deps/npm/man/man5/install.5 | 2 +- deps/npm/man/man5/npm-shrinkwrap-json.5 | 2 +- deps/npm/man/man5/npmrc.5 | 2 +- deps/npm/man/man5/package-json.5 | 30 +++++++- deps/npm/man/man5/package-lock-json.5 | 2 +- deps/npm/man/man7/config.7 | 57 +++++++------- deps/npm/man/man7/developers.7 | 2 +- deps/npm/man/man7/logging.7 | 2 +- deps/npm/man/man7/orgs.7 | 2 +- deps/npm/man/man7/registry.7 | 2 +- deps/npm/man/man7/removal.7 | 2 +- deps/npm/man/man7/scope.7 | 2 +- deps/npm/man/man7/scripts.7 | 12 ++- deps/npm/man/man7/workspaces.7 | 2 +- .../node_modules/@npmcli/arborist/README.md | 2 +- .../node_modules/@npmcli/arborist/lib/edge.js | 7 +- .../@npmcli/arborist/package.json | 2 +- deps/npm/node_modules/glob/common.js | 14 ++-- deps/npm/node_modules/glob/glob.js | 2 +- deps/npm/node_modules/glob/package.json | 5 +- deps/npm/node_modules/glob/sync.js | 6 +- deps/npm/node_modules/libnpmexec/lib/index.js | 2 +- deps/npm/node_modules/libnpmexec/package.json | 2 +- .../make-fetch-happen/lib/remote.js | 6 +- .../make-fetch-happen/package.json | 5 +- deps/npm/node_modules/minimatch/minimatch.js | 5 ++ deps/npm/node_modules/minimatch/package.json | 2 +- .../node-gyp/node_modules/glob/common.js | 2 + .../node-gyp/node_modules/glob/glob.js | 5 +- .../node-gyp/node_modules/glob/package.json | 7 +- .../node-gyp/node_modules/glob/sync.js | 9 ++- deps/npm/node_modules/pacote/README.md | 6 ++ deps/npm/node_modules/pacote/lib/fetcher.js | 52 ++++++------- deps/npm/node_modules/pacote/lib/registry.js | 77 ++++++++++--------- deps/npm/node_modules/pacote/lib/remote.js | 27 +++---- deps/npm/node_modules/pacote/package.json | 5 +- .../rimraf/node_modules/glob/common.js | 2 + .../rimraf/node_modules/glob/glob.js | 5 +- .../rimraf/node_modules/glob/package.json | 7 +- .../rimraf/node_modules/glob/sync.js | 9 ++- deps/npm/package.json | 6 +- .../test/lib/commands/init.js.test.cjs | 49 +++++++++--- .../test/lib/load-all-commands.js.test.cjs | 4 +- .../tap-snapshots/test/lib/npm.js.test.cjs | 4 +- .../lib/utils/config/definitions.js.test.cjs | 10 +-- .../lib/utils/config/describe-all.js.test.cjs | 44 +++++------ deps/npm/test/lib/commands/init.js | 34 ++++++++ 153 files changed, 689 insertions(+), 434 deletions(-) create mode 100644 deps/npm/lib/workspaces/update-workspaces.js diff --git a/deps/npm/docs/content/commands/npm-adduser.md b/deps/npm/docs/content/commands/npm-adduser.md index 06eeb379c4dd88..9f7caeb9cdc90c 100644 --- a/deps/npm/docs/content/commands/npm-adduser.md +++ b/deps/npm/docs/content/commands/npm-adduser.md @@ -87,6 +87,20 @@ npm init --scope=@foo --yes ``` + + + +#### `auth-type` + +* Default: "legacy" +* Type: "legacy", "webauthn", "sso", "saml", or "oauth" +* DEPRECATED: The SSO/SAML/OAuth methods are deprecated and will be removed in + a future version of npm in favor of web-based login. + +What authentication strategy to use with `adduser`/`login`. + +Pass `webauthn` to use a web-based login. + diff --git a/deps/npm/docs/content/commands/npm-bin.md b/deps/npm/docs/content/commands/npm-bin.md index b344ea2fc94159..94b72cfd5c81ce 100644 --- a/deps/npm/docs/content/commands/npm-bin.md +++ b/deps/npm/docs/content/commands/npm-bin.md @@ -34,8 +34,6 @@ Print the folder where npm will install executables. * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-config.md b/deps/npm/docs/content/commands/npm-config.md index 809e42a1be1cdb..28c6003571de5f 100644 --- a/deps/npm/docs/content/commands/npm-config.md +++ b/deps/npm/docs/content/commands/npm-config.md @@ -124,8 +124,6 @@ Not supported by all npm commands. * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-diff.md b/deps/npm/docs/content/commands/npm-diff.md index 7183e4a2b752e3..7dcc8af7c3b4c7 100644 --- a/deps/npm/docs/content/commands/npm-diff.md +++ b/deps/npm/docs/content/commands/npm-diff.md @@ -248,8 +248,6 @@ Treat all files as text in `npm diff`. * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-init.md b/deps/npm/docs/content/commands/npm-init.md index 5a7dd4c97ac60e..35343cceb4aa13 100644 --- a/deps/npm/docs/content/commands/npm-init.md +++ b/deps/npm/docs/content/commands/npm-init.md @@ -253,6 +253,17 @@ This value is not exported to the environment for child processes. +#### `workspaces-update` + +* Default: true +* Type: Boolean + +If set to true, the npm cli will run an update after operations that may +possibly change the workspaces installed to the `node_modules` folder. + + + + #### `include-workspace-root` * Default: false diff --git a/deps/npm/docs/content/commands/npm-install-test.md b/deps/npm/docs/content/commands/npm-install-test.md index 18e374869d5a60..3dd860ea5c6f68 100644 --- a/deps/npm/docs/content/commands/npm-install-test.md +++ b/deps/npm/docs/content/commands/npm-install-test.md @@ -70,8 +70,6 @@ rather than using npm's default semver range operator. * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-install.md b/deps/npm/docs/content/commands/npm-install.md index 318df5780e8dba..d6668a2c2bd0fb 100644 --- a/deps/npm/docs/content/commands/npm-install.md +++ b/deps/npm/docs/content/commands/npm-install.md @@ -460,8 +460,6 @@ rather than using npm's default semver range operator. * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-link.md b/deps/npm/docs/content/commands/npm-link.md index 34c67aa3def81d..975c807c38b348 100644 --- a/deps/npm/docs/content/commands/npm-link.md +++ b/deps/npm/docs/content/commands/npm-link.md @@ -153,8 +153,6 @@ rather than using npm's default semver range operator. * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-ls.md b/deps/npm/docs/content/commands/npm-ls.md index 5ad4593bfa2f6a..ded8c0c0d26ef1 100644 --- a/deps/npm/docs/content/commands/npm-ls.md +++ b/deps/npm/docs/content/commands/npm-ls.md @@ -137,8 +137,6 @@ Output parseable results from commands that write to standard output. For * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-outdated.md b/deps/npm/docs/content/commands/npm-outdated.md index 1bf2de039c3159..6fa026550e7477 100644 --- a/deps/npm/docs/content/commands/npm-outdated.md +++ b/deps/npm/docs/content/commands/npm-outdated.md @@ -150,8 +150,6 @@ Output parseable results from commands that write to standard output. For * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-prefix.md b/deps/npm/docs/content/commands/npm-prefix.md index 6f08e43fa8c0c4..39328bcc88a143 100644 --- a/deps/npm/docs/content/commands/npm-prefix.md +++ b/deps/npm/docs/content/commands/npm-prefix.md @@ -51,8 +51,6 @@ npm prefix -g * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-rebuild.md b/deps/npm/docs/content/commands/npm-rebuild.md index fa5b0cfa97d7c1..52c368c8c513b9 100644 --- a/deps/npm/docs/content/commands/npm-rebuild.md +++ b/deps/npm/docs/content/commands/npm-rebuild.md @@ -42,8 +42,6 @@ will be rebuilt. * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-root.md b/deps/npm/docs/content/commands/npm-root.md index 80545235fc9693..40b58e4b33d0b2 100644 --- a/deps/npm/docs/content/commands/npm-root.md +++ b/deps/npm/docs/content/commands/npm-root.md @@ -41,8 +41,6 @@ echo "Global packages installed in: ${global_node_modules}" * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/commands/npm-update.md b/deps/npm/docs/content/commands/npm-update.md index 55aad182fcafe8..421d04ca3dc583 100644 --- a/deps/npm/docs/content/commands/npm-update.md +++ b/deps/npm/docs/content/commands/npm-update.md @@ -188,8 +188,6 @@ Will also prevent writing to `package-lock.json` if set to `false`. * Default: false * Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. Operates in "global" mode, so that packages are installed into the `prefix` folder instead of the current working directory. See diff --git a/deps/npm/docs/content/configuring-npm/package-json.md b/deps/npm/docs/content/configuring-npm/package-json.md index 0c2047ad9abe08..8b188cfb0b9380 100644 --- a/deps/npm/docs/content/configuring-npm/package-json.md +++ b/deps/npm/docs/content/configuring-npm/package-json.md @@ -643,6 +643,26 @@ git+https://isaacs@github.com/npm/cli.git git://github.com/npm/cli.git#v1.0.27 ``` +When installing from a `git` repository, the presence of certain fields in the +`package.json` will cause npm to believe it needs to perform a build. To do so +your repository will be cloned into a temporary directory, all of its deps +installed, relevant scripts run, and the resulting directory packed and +installed. + +This flow will occur if your git dependency uses `workspaces`, or if any of the +following scripts are present: + +* `build` +* `prepare` +* `prepack` +* `preinstall` +* `install` +* `postinstall` + +If your git repository includes pre-built artifacts, you will likely want to +make sure that none of the above scripts are defined, or your dependency +will be rebuilt for every installation. + #### GitHub URLs As of version 1.1.65, you can refer to GitHub urls as just "foo": diff --git a/deps/npm/docs/content/using-npm/config.md b/deps/npm/docs/content/using-npm/config.md index 12b508582af1c3..6ef854eb6e0ff4 100644 --- a/deps/npm/docs/content/using-npm/config.md +++ b/deps/npm/docs/content/using-npm/config.md @@ -687,6 +687,23 @@ results in no commit being made at all. +#### `global` + +* Default: false +* Type: Boolean + +Operates in "global" mode, so that packages are installed into the `prefix` +folder instead of the current working directory. See +[folders](/configuring-npm/folders) for more on the differences in behavior. + +* packages are installed into the `{prefix}/lib/node_modules` folder, instead + of the current working directory. +* bin files are linked to `{prefix}/bin` +* man pages are linked to `{prefix}/share/man` + + + + #### `global-style` * Default: false @@ -1891,12 +1908,14 @@ When set to `dev` or `development`, this is an alias for `--include=dev`. #### `auth-type` * Default: "legacy" -* Type: "legacy", "sso", "saml", or "oauth" -* DEPRECATED: This method of SSO/SAML/OAuth is deprecated and will be removed - in a future version of npm in favor of web-based login. +* Type: "legacy", "webauthn", "sso", "saml", or "oauth" +* DEPRECATED: The SSO/SAML/OAuth methods are deprecated and will be removed in + a future version of npm in favor of web-based login. What authentication strategy to use with `adduser`/`login`. +Pass `webauthn` to use a web-based login. + @@ -1933,25 +1952,6 @@ Alias for `--include=dev`. -#### `global` - -* Default: false -* Type: Boolean -* DEPRECATED: `--global`, `--local` are deprecated. Use `--location=global` - instead. - -Operates in "global" mode, so that packages are installed into the `prefix` -folder instead of the current working directory. See -[folders](/configuring-npm/folders) for more on the differences in behavior. - -* packages are installed into the `{prefix}/lib/node_modules` folder, instead - of the current working directory. -* bin files are linked to `{prefix}/bin` -* man pages are linked to `{prefix}/share/man` - - - - #### `init.author.email` * Default: "" diff --git a/deps/npm/docs/content/using-npm/scripts.md b/deps/npm/docs/content/using-npm/scripts.md index b37ca593e4ce63..381c0a71812f09 100644 --- a/deps/npm/docs/content/using-npm/scripts.md +++ b/deps/npm/docs/content/using-npm/scripts.md @@ -203,6 +203,12 @@ will default the `start` command to `node server.js`. `prestart` and * `test` * `posttest` +#### [`npm version`](/commands/npm-version) + +* `preversion` +* `version` +* `postversion` + #### A Note on a lack of [`npm uninstall`](/commands/npm-uninstall) scripts While npm v6 had `uninstall` lifecycle scripts, npm v7 does not. Removal of a package can happen for a wide variety of reasons, and there's no clear way to currently give the script enough context to be useful. diff --git a/deps/npm/docs/output/commands/npm-adduser.html b/deps/npm/docs/output/commands/npm-adduser.html index c0b870e534631e..3b8eaa3159dda3 100644 --- a/deps/npm/docs/output/commands/npm-adduser.html +++ b/deps/npm/docs/output/commands/npm-adduser.html @@ -142,7 +142,7 @@

npm-adduser

Table of contents

- +

Synopsis

@@ -204,6 +204,17 @@

scope

+

auth-type

+
    +
  • Default: "legacy"
  • +
  • Type: "legacy", "webauthn", "sso", "saml", or "oauth"
  • +
  • DEPRECATED: The SSO/SAML/OAuth methods are deprecated and will be removed in +a future version of npm in favor of web-based login.
  • +
+

What authentication strategy to use with adduser/login.

+

Pass webauthn to use a web-based login.

+ +

See Also

    diff --git a/deps/npm/docs/output/commands/npm-bin.html b/deps/npm/docs/output/commands/npm-bin.html index 7b957b6014dc44..5961ea7e50fb74 100644 --- a/deps/npm/docs/output/commands/npm-bin.html +++ b/deps/npm/docs/output/commands/npm-bin.html @@ -165,8 +165,6 @@

    global

    • Default: false
    • Type: Boolean
    • -
    • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

    Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-config.html b/deps/npm/docs/output/commands/npm-config.html index e267531fc0462f..184895e036fc0a 100644 --- a/deps/npm/docs/output/commands/npm-config.html +++ b/deps/npm/docs/output/commands/npm-config.html @@ -223,8 +223,6 @@

    global

    • Default: false
    • Type: Boolean
    • -
    • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

    Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-diff.html b/deps/npm/docs/output/commands/npm-diff.html index 7ee9d76d227f8b..13ed989c461801 100644 --- a/deps/npm/docs/output/commands/npm-diff.html +++ b/deps/npm/docs/output/commands/npm-diff.html @@ -334,8 +334,6 @@

    global

    • Default: false
    • Type: Boolean
    • -
    • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

    Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-init.html b/deps/npm/docs/output/commands/npm-init.html index e2e9b01a04ea5d..b25bfec2d4ffe4 100644 --- a/deps/npm/docs/output/commands/npm-init.html +++ b/deps/npm/docs/output/commands/npm-init.html @@ -142,7 +142,7 @@

    npm-init

    Table of contents

    - +

    Synopsis

    @@ -339,6 +339,15 @@

    workspaces

    This value is not exported to the environment for child processes.

    +

    workspaces-update

    +
      +
    • Default: true
    • +
    • Type: Boolean
    • +
    +

    If set to true, the npm cli will run an update after operations that may +possibly change the workspaces installed to the node_modules folder.

    + +

    include-workspace-root

    • Default: false
    • diff --git a/deps/npm/docs/output/commands/npm-install-test.html b/deps/npm/docs/output/commands/npm-install-test.html index fce049dc2c09e5..6306ceb5938558 100644 --- a/deps/npm/docs/output/commands/npm-install-test.html +++ b/deps/npm/docs/output/commands/npm-install-test.html @@ -196,8 +196,6 @@

      global

      • Default: false
      • Type: Boolean
      • -
      • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

      Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-install.html b/deps/npm/docs/output/commands/npm-install.html index ca6ca1ee260f33..509702b5bd4ead 100644 --- a/deps/npm/docs/output/commands/npm-install.html +++ b/deps/npm/docs/output/commands/npm-install.html @@ -522,8 +522,6 @@

      global

      • Default: false
      • Type: Boolean
      • -
      • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

      Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-link.html b/deps/npm/docs/output/commands/npm-link.html index cb43c0478d7015..f7d5f66a9e2bd2 100644 --- a/deps/npm/docs/output/commands/npm-link.html +++ b/deps/npm/docs/output/commands/npm-link.html @@ -251,8 +251,6 @@

      global

      • Default: false
      • Type: Boolean
      • -
      • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

      Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-ls.html b/deps/npm/docs/output/commands/npm-ls.html index 10caff53c3a090..7b1c29f9a80639 100644 --- a/deps/npm/docs/output/commands/npm-ls.html +++ b/deps/npm/docs/output/commands/npm-ls.html @@ -166,7 +166,7 @@

      Description

      the results to only the paths to the packages named. Note that nested packages will also show the paths to the specified packages. For example, running npm ls promzard in npm's source tree will show:

      -
      npm@8.11.0 /path/to/npm
      +
      npm@8.12.1 /path/to/npm
       └─┬ init-package-json@0.0.4
         └── promzard@0.1.5
       
      @@ -246,8 +246,6 @@

      global

      • Default: false
      • Type: Boolean
      • -
      • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

      Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-outdated.html b/deps/npm/docs/output/commands/npm-outdated.html index 15030d60080819..0bdb9f9a66a14a 100644 --- a/deps/npm/docs/output/commands/npm-outdated.html +++ b/deps/npm/docs/output/commands/npm-outdated.html @@ -268,8 +268,6 @@

      global

      • Default: false
      • Type: Boolean
      • -
      • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

      Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-prefix.html b/deps/npm/docs/output/commands/npm-prefix.html index df6960ef97bbcd..2f302144269200 100644 --- a/deps/npm/docs/output/commands/npm-prefix.html +++ b/deps/npm/docs/output/commands/npm-prefix.html @@ -176,8 +176,6 @@

      global

      • Default: false
      • Type: Boolean
      • -
      • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

      Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-rebuild.html b/deps/npm/docs/output/commands/npm-rebuild.html index 84837a3be5d394..f4524f1a4f0baa 100644 --- a/deps/npm/docs/output/commands/npm-rebuild.html +++ b/deps/npm/docs/output/commands/npm-rebuild.html @@ -173,8 +173,6 @@

      global

      • Default: false
      • Type: Boolean
      • -
      • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

      Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-root.html b/deps/npm/docs/output/commands/npm-root.html index c9cc1d4b67843b..e0595fd8e76256 100644 --- a/deps/npm/docs/output/commands/npm-root.html +++ b/deps/npm/docs/output/commands/npm-root.html @@ -170,8 +170,6 @@

      global

      • Default: false
      • Type: Boolean
      • -
      • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

      Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm-update.html b/deps/npm/docs/output/commands/npm-update.html index d0cb6d5f75501b..d88ea8578bacef 100644 --- a/deps/npm/docs/output/commands/npm-update.html +++ b/deps/npm/docs/output/commands/npm-update.html @@ -275,8 +275,6 @@

      global

      • Default: false
      • Type: Boolean
      • -
      • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.

      Operates in "global" mode, so that packages are installed into the prefix folder instead of the current working directory. See diff --git a/deps/npm/docs/output/commands/npm.html b/deps/npm/docs/output/commands/npm.html index 99c109c4e25cfa..040166af65cabb 100644 --- a/deps/npm/docs/output/commands/npm.html +++ b/deps/npm/docs/output/commands/npm.html @@ -149,7 +149,7 @@

      Table of contents

      Version

      -

      8.11.0

      +

      8.12.1

      Description

      npm is the package manager for the Node JavaScript platform. It puts modules in place so that node can find them, and manages dependency diff --git a/deps/npm/docs/output/configuring-npm/package-json.html b/deps/npm/docs/output/configuring-npm/package-json.html index b318eee5795193..d5860ee6e299a1 100644 --- a/deps/npm/docs/output/configuring-npm/package-json.html +++ b/deps/npm/docs/output/configuring-npm/package-json.html @@ -629,6 +629,24 @@

      Git URLs as Dependencies

      git+https://isaacs@github.com/npm/cli.git git://github.com/npm/cli.git#v1.0.27
      +

      When installing from a git repository, the presence of certain fields in the +package.json will cause npm to believe it needs to perform a build. To do so +your repository will be cloned into a temporary directory, all of its deps +installed, relevant scripts run, and the resulting directory packed and +installed.

      +

      This flow will occur if your git dependency uses workspaces, or if any of the +following scripts are present:

      +
        +
      • build
      • +
      • prepare
      • +
      • prepack
      • +
      • preinstall
      • +
      • install
      • +
      • postinstall
      • +
      +

      If your git repository includes pre-built artifacts, you will likely want to +make sure that none of the above scripts are defined, or your dependency +will be rebuilt for every installation.

      GitHub URLs

      As of version 1.1.65, you can refer to GitHub urls as just "foo": "user/foo-project". Just as with git URLs, a commit-ish suffix can be diff --git a/deps/npm/docs/output/using-npm/config.html b/deps/npm/docs/output/using-npm/config.html index ef033b8693e4fd..4ec52124ffe563 100644 --- a/deps/npm/docs/output/using-npm/config.html +++ b/deps/npm/docs/output/using-npm/config.html @@ -142,7 +142,7 @@

      config

      Table of contents

      -
      +

      Description

      @@ -696,6 +696,22 @@

      git-tag-version

      results in no commit being made at all.

      +

      global

      +
        +
      • Default: false
      • +
      • Type: Boolean
      • +
      +

      Operates in "global" mode, so that packages are installed into the prefix +folder instead of the current working directory. See +folders for more on the differences in behavior.

      +
        +
      • packages are installed into the {prefix}/lib/node_modules folder, instead +of the current working directory.
      • +
      • bin files are linked to {prefix}/bin
      • +
      • man pages are linked to {prefix}/share/man
      • +
      + +

      global-style

      • Default: false
      • @@ -1660,11 +1676,12 @@

        also

        auth-type

        • Default: "legacy"
        • -
        • Type: "legacy", "sso", "saml", or "oauth"
        • -
        • DEPRECATED: This method of SSO/SAML/OAuth is deprecated and will be removed -in a future version of npm in favor of web-based login.
        • +
        • Type: "legacy", "webauthn", "sso", "saml", or "oauth"
        • +
        • DEPRECATED: The SSO/SAML/OAuth methods are deprecated and will be removed in +a future version of npm in favor of web-based login.

        What authentication strategy to use with adduser/login.

        +

        Pass webauthn to use a web-based login.

        cache-max

        @@ -1694,24 +1711,6 @@

        dev

        Alias for --include=dev.

        -

        global

        -
          -
        • Default: false
        • -
        • Type: Boolean
        • -
        • DEPRECATED: --global, --local are deprecated. Use --location=global -instead.
        • -
        -

        Operates in "global" mode, so that packages are installed into the prefix -folder instead of the current working directory. See -folders for more on the differences in behavior.

        -
          -
        • packages are installed into the {prefix}/lib/node_modules folder, instead -of the current working directory.
        • -
        • bin files are linked to {prefix}/bin
        • -
        • man pages are linked to {prefix}/share/man
        • -
        - -

        init.author.email

        +

        npm version

        +
          +
        • preversion
        • +
        • version
        • +
        • postversion
        • +

        A Note on a lack of npm uninstall scripts

        While npm v6 had uninstall lifecycle scripts, npm v7 does not. Removal of a package can happen for a wide variety of reasons, and there's no clear way to currently give the script enough context to be useful.

        Reasons for a package removal include:

        diff --git a/deps/npm/lib/commands/adduser.js b/deps/npm/lib/commands/adduser.js index 755abea8eb9ebe..cf467b7a73a5e8 100644 --- a/deps/npm/lib/commands/adduser.js +++ b/deps/npm/lib/commands/adduser.js @@ -3,6 +3,7 @@ const replaceInfo = require('../utils/replace-info.js') const BaseCommand = require('../base-command.js') const authTypes = { legacy: require('../auth/legacy.js'), + webauthn: require('../auth/legacy.js'), oauth: require('../auth/oauth.js'), saml: require('../auth/saml.js'), sso: require('../auth/sso.js'), @@ -14,6 +15,7 @@ class AddUser extends BaseCommand { static params = [ 'registry', 'scope', + 'auth-type', ] static ignoreImplicitWorkspace = true diff --git a/deps/npm/lib/commands/init.js b/deps/npm/lib/commands/init.js index 2a6b6aaddc7e65..4c299e65137bed 100644 --- a/deps/npm/lib/commands/init.js +++ b/deps/npm/lib/commands/init.js @@ -8,13 +8,22 @@ const libexec = require('libnpmexec') const mapWorkspaces = require('@npmcli/map-workspaces') const PackageJson = require('@npmcli/package-json') const log = require('../utils/log-shim.js') +const updateWorkspaces = require('../workspaces/update-workspaces.js') const getLocationMsg = require('../exec/get-workspace-location-msg.js') const BaseCommand = require('../base-command.js') class Init extends BaseCommand { static description = 'Create a package.json file' - static params = ['yes', 'force', 'workspace', 'workspaces', 'include-workspace-root'] + static params = [ + 'yes', + 'force', + 'workspace', + 'workspaces', + 'workspaces-update', + 'include-workspace-root', + ] + static name = 'init' static usage = [ '[--force|-f|--yes|-y|--scope]', @@ -46,11 +55,13 @@ class Init extends BaseCommand { const pkg = await rpj(resolve(this.npm.localPrefix, 'package.json')) const wPath = filterArg => resolve(this.npm.localPrefix, filterArg) + const workspacesPaths = [] // npm-exec style, runs in the context of each workspace filter if (args.length) { for (const filterArg of filters) { const path = wPath(filterArg) await mkdirp(path) + workspacesPaths.push(path) await this.execCreate({ args, path }) await this.setWorkspace({ pkg, workspacePath: path }) } @@ -61,9 +72,13 @@ class Init extends BaseCommand { for (const filterArg of filters) { const path = wPath(filterArg) await mkdirp(path) + workspacesPaths.push(path) await this.template(path) await this.setWorkspace({ pkg, workspacePath: path }) } + + // reify packages once all workspaces have been initialized + await this.update(workspacesPaths) } async execCreate ({ args, path }) { @@ -196,6 +211,34 @@ class Init extends BaseCommand { await pkgJson.save() } + + async update (workspacesPaths) { + // translate workspaces paths into an array containing workspaces names + const workspaces = [] + for (const path of workspacesPaths) { + const pkgPath = resolve(path, 'package.json') + const { name } = await rpj(pkgPath) + .catch(() => ({})) + + if (name) { + workspaces.push(name) + } + } + + const { + config, + flatOptions, + localPrefix, + } = this.npm + + await updateWorkspaces({ + config, + flatOptions, + localPrefix, + npm: this.npm, + workspaces, + }) + } } module.exports = Init diff --git a/deps/npm/lib/commands/version.js b/deps/npm/lib/commands/version.js index ed506f663e89fd..ab59fff5a308cc 100644 --- a/deps/npm/lib/commands/version.js +++ b/deps/npm/lib/commands/version.js @@ -3,9 +3,7 @@ const { resolve } = require('path') const { promisify } = require('util') const readFile = promisify(require('fs').readFile) -const Arborist = require('@npmcli/arborist') -const reifyFinish = require('../utils/reify-finish.js') - +const updateWorkspaces = require('../workspaces/update-workspaces.js') const BaseCommand = require('../base-command.js') class Version extends BaseCommand { @@ -137,32 +135,20 @@ class Version extends BaseCommand { return this.list(results) } - async update (args) { - if (!this.npm.flatOptions.workspacesUpdate || !args.length) { - return - } - - // default behavior is to not save by default in order to avoid - // race condition problems when publishing multiple workspaces - // that have dependencies on one another, it might still be useful - // in some cases, which then need to set --save - const save = this.npm.config.isDefault('save') - ? false - : this.npm.config.get('save') - - // runs a minimalistic reify update, targetting only the workspaces - // that had version updates and skipping fund/audit/save - const opts = { - ...this.npm.flatOptions, - audit: false, - fund: false, - path: this.npm.localPrefix, - save, - } - const arb = new Arborist(opts) - - await arb.reify({ ...opts, update: args }) - await reifyFinish(this.npm, arb) + async update (workspaces) { + const { + config, + flatOptions, + localPrefix, + } = this.npm + + await updateWorkspaces({ + config, + flatOptions, + localPrefix, + npm: this.npm, + workspaces, + }) } } diff --git a/deps/npm/lib/utils/config/definitions.js b/deps/npm/lib/utils/config/definitions.js index 92fbbd1e6dc20e..4c77e375c5ccf3 100644 --- a/deps/npm/lib/utils/config/definitions.js +++ b/deps/npm/lib/utils/config/definitions.js @@ -238,13 +238,15 @@ define('audit-level', { define('auth-type', { default: 'legacy', - type: ['legacy', 'sso', 'saml', 'oauth'], + type: ['legacy', 'webauthn', 'sso', 'saml', 'oauth'], deprecated: ` - This method of SSO/SAML/OAuth is deprecated and will be removed in + The SSO/SAML/OAuth methods are deprecated and will be removed in a future version of npm in favor of web-based login. `, description: ` What authentication strategy to use with \`adduser\`/\`login\`. + + Pass \`webauthn\` to use a web-based login. `, flatten, }) @@ -811,9 +813,6 @@ define('global', { default: false, type: Boolean, short: 'g', - deprecated: ` - \`--global\`, \`--local\` are deprecated. Use \`--location=global\` instead. - `, description: ` Operates in "global" mode, so that packages are installed into the \`prefix\` folder instead of the current working directory. See diff --git a/deps/npm/lib/workspaces/update-workspaces.js b/deps/npm/lib/workspaces/update-workspaces.js new file mode 100644 index 00000000000000..4cba1245ac2e57 --- /dev/null +++ b/deps/npm/lib/workspaces/update-workspaces.js @@ -0,0 +1,40 @@ +'use strict' + +const Arborist = require('@npmcli/arborist') +const reifyFinish = require('../utils/reify-finish.js') + +async function updateWorkspaces ({ + config, + flatOptions, + localPrefix, + npm, + workspaces, +}) { + if (!flatOptions.workspacesUpdate || !workspaces.length) { + return + } + + // default behavior is to not save by default in order to avoid + // race condition problems when publishing multiple workspaces + // that have dependencies on one another, it might still be useful + // in some cases, which then need to set --save + const save = config.isDefault('save') + ? false + : config.get('save') + + // runs a minimalistic reify update, targetting only the workspaces + // that had version updates and skipping fund/audit/save + const opts = { + ...flatOptions, + audit: false, + fund: false, + path: localPrefix, + save, + } + const arb = new Arborist(opts) + + await arb.reify({ ...opts, update: workspaces }) + await reifyFinish(npm, arb) +} + +module.exports = updateWorkspaces diff --git a/deps/npm/man/man1/npm-access.1 b/deps/npm/man/man1/npm-access.1 index 66e859f6a2a6d8..0529f88ac9e172 100644 --- a/deps/npm/man/man1/npm-access.1 +++ b/deps/npm/man/man1/npm-access.1 @@ -1,4 +1,4 @@ -.TH "NPM\-ACCESS" "1" "May 2022" "" "" +.TH "NPM\-ACCESS" "1" "June 2022" "" "" .SH "NAME" \fBnpm-access\fR \- Set access level on published packages .SS Synopsis diff --git a/deps/npm/man/man1/npm-adduser.1 b/deps/npm/man/man1/npm-adduser.1 index 08a78c48e85522..de87ef4df4a199 100644 --- a/deps/npm/man/man1/npm-adduser.1 +++ b/deps/npm/man/man1/npm-adduser.1 @@ -1,4 +1,4 @@ -.TH "NPM\-ADDUSER" "1" "May 2022" "" "" +.TH "NPM\-ADDUSER" "1" "June 2022" "" "" .SH "NAME" \fBnpm-adduser\fR \- Add a registry user account .SS Synopsis @@ -77,6 +77,21 @@ This will also cause \fBnpm init\fP to create a scoped package\. npm init \-\-scope=@foo \-\-yes .fi .RE +.SS \fBauth\-type\fP +.RS 0 +.IP \(bu 2 +Default: "legacy" +.IP \(bu 2 +Type: "legacy", "webauthn", "sso", "saml", or "oauth" +.IP \(bu 2 +DEPRECATED: The SSO/SAML/OAuth methods are deprecated and will be removed in +a future version of npm in favor of web\-based login\. + +.RE +.P +What authentication strategy to use with \fBadduser\fP/\fBlogin\fP\|\. +.P +Pass \fBwebauthn\fP to use a web\-based login\. .SS See Also .RS 0 .IP \(bu 2 diff --git a/deps/npm/man/man1/npm-audit.1 b/deps/npm/man/man1/npm-audit.1 index d84fdd59e583c3..2f2d0b394b6e71 100644 --- a/deps/npm/man/man1/npm-audit.1 +++ b/deps/npm/man/man1/npm-audit.1 @@ -1,4 +1,4 @@ -.TH "NPM\-AUDIT" "1" "May 2022" "" "" +.TH "NPM\-AUDIT" "1" "June 2022" "" "" .SH "NAME" \fBnpm-audit\fR \- Run a security audit .SS Synopsis diff --git a/deps/npm/man/man1/npm-bin.1 b/deps/npm/man/man1/npm-bin.1 index 9c6d2ccf4c7723..a053d7bc882e8e 100644 --- a/deps/npm/man/man1/npm-bin.1 +++ b/deps/npm/man/man1/npm-bin.1 @@ -1,4 +1,4 @@ -.TH "NPM\-BIN" "1" "May 2022" "" "" +.TH "NPM\-BIN" "1" "June 2022" "" "" .SH "NAME" \fBnpm-bin\fR \- Display npm bin folder .SS Synopsis @@ -20,9 +20,6 @@ Print the folder where npm will install executables\. Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-bugs.1 b/deps/npm/man/man1/npm-bugs.1 index 1c1ec8a08e28c1..bee4cd4d01e139 100644 --- a/deps/npm/man/man1/npm-bugs.1 +++ b/deps/npm/man/man1/npm-bugs.1 @@ -1,4 +1,4 @@ -.TH "NPM\-BUGS" "1" "May 2022" "" "" +.TH "NPM\-BUGS" "1" "June 2022" "" "" .SH "NAME" \fBnpm-bugs\fR \- Report bugs for a package in a web browser .SS Synopsis diff --git a/deps/npm/man/man1/npm-cache.1 b/deps/npm/man/man1/npm-cache.1 index 1b5e5a843725b3..42e1998371c0e4 100644 --- a/deps/npm/man/man1/npm-cache.1 +++ b/deps/npm/man/man1/npm-cache.1 @@ -1,4 +1,4 @@ -.TH "NPM\-CACHE" "1" "May 2022" "" "" +.TH "NPM\-CACHE" "1" "June 2022" "" "" .SH "NAME" \fBnpm-cache\fR \- Manipulates packages cache .SS Synopsis diff --git a/deps/npm/man/man1/npm-ci.1 b/deps/npm/man/man1/npm-ci.1 index 70182bf407ae5b..533ec91005862d 100644 --- a/deps/npm/man/man1/npm-ci.1 +++ b/deps/npm/man/man1/npm-ci.1 @@ -1,4 +1,4 @@ -.TH "NPM\-CI" "1" "May 2022" "" "" +.TH "NPM\-CI" "1" "June 2022" "" "" .SH "NAME" \fBnpm-ci\fR \- Clean install a project .SS Synopsis diff --git a/deps/npm/man/man1/npm-completion.1 b/deps/npm/man/man1/npm-completion.1 index 87eb098ce92098..7b6be088ca14cd 100644 --- a/deps/npm/man/man1/npm-completion.1 +++ b/deps/npm/man/man1/npm-completion.1 @@ -1,4 +1,4 @@ -.TH "NPM\-COMPLETION" "1" "May 2022" "" "" +.TH "NPM\-COMPLETION" "1" "June 2022" "" "" .SH "NAME" \fBnpm-completion\fR \- Tab Completion for npm .SS Synopsis diff --git a/deps/npm/man/man1/npm-config.1 b/deps/npm/man/man1/npm-config.1 index 88ffa9aa054c67..2cd7faf69bb333 100644 --- a/deps/npm/man/man1/npm-config.1 +++ b/deps/npm/man/man1/npm-config.1 @@ -1,4 +1,4 @@ -.TH "NPM\-CONFIG" "1" "May 2022" "" "" +.TH "NPM\-CONFIG" "1" "June 2022" "" "" .SH "NAME" \fBnpm-config\fR \- Manage the npm configuration files .SS Synopsis @@ -117,9 +117,6 @@ Not supported by all npm commands\. Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-dedupe.1 b/deps/npm/man/man1/npm-dedupe.1 index c337c715017a57..3f235b273eb79e 100644 --- a/deps/npm/man/man1/npm-dedupe.1 +++ b/deps/npm/man/man1/npm-dedupe.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DEDUPE" "1" "May 2022" "" "" +.TH "NPM\-DEDUPE" "1" "June 2022" "" "" .SH "NAME" \fBnpm-dedupe\fR \- Reduce duplication in the package tree .SS Synopsis diff --git a/deps/npm/man/man1/npm-deprecate.1 b/deps/npm/man/man1/npm-deprecate.1 index 594b1689b73f62..e9ab9bae71a6fb 100644 --- a/deps/npm/man/man1/npm-deprecate.1 +++ b/deps/npm/man/man1/npm-deprecate.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DEPRECATE" "1" "May 2022" "" "" +.TH "NPM\-DEPRECATE" "1" "June 2022" "" "" .SH "NAME" \fBnpm-deprecate\fR \- Deprecate a version of a package .SS Synopsis diff --git a/deps/npm/man/man1/npm-diff.1 b/deps/npm/man/man1/npm-diff.1 index d32c343f064372..753d2863e87106 100644 --- a/deps/npm/man/man1/npm-diff.1 +++ b/deps/npm/man/man1/npm-diff.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DIFF" "1" "May 2022" "" "" +.TH "NPM\-DIFF" "1" "June 2022" "" "" .SH "NAME" \fBnpm-diff\fR \- The registry diff command .SS Synopsis @@ -232,9 +232,6 @@ Treat all files as text in \fBnpm diff\fP\|\. Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-dist-tag.1 b/deps/npm/man/man1/npm-dist-tag.1 index 33166e1c45a244..7e1c14539540d7 100644 --- a/deps/npm/man/man1/npm-dist-tag.1 +++ b/deps/npm/man/man1/npm-dist-tag.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DIST\-TAG" "1" "May 2022" "" "" +.TH "NPM\-DIST\-TAG" "1" "June 2022" "" "" .SH "NAME" \fBnpm-dist-tag\fR \- Modify package distribution tags .SS Synopsis diff --git a/deps/npm/man/man1/npm-docs.1 b/deps/npm/man/man1/npm-docs.1 index e7dc87e834e440..55ad03256ba8aa 100644 --- a/deps/npm/man/man1/npm-docs.1 +++ b/deps/npm/man/man1/npm-docs.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DOCS" "1" "May 2022" "" "" +.TH "NPM\-DOCS" "1" "June 2022" "" "" .SH "NAME" \fBnpm-docs\fR \- Open documentation for a package in a web browser .SS Synopsis diff --git a/deps/npm/man/man1/npm-doctor.1 b/deps/npm/man/man1/npm-doctor.1 index 4c7dd20a9df826..a21a8eef1bee7e 100644 --- a/deps/npm/man/man1/npm-doctor.1 +++ b/deps/npm/man/man1/npm-doctor.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DOCTOR" "1" "May 2022" "" "" +.TH "NPM\-DOCTOR" "1" "June 2022" "" "" .SH "NAME" \fBnpm-doctor\fR \- Check your npm environment .SS Synopsis diff --git a/deps/npm/man/man1/npm-edit.1 b/deps/npm/man/man1/npm-edit.1 index d5e4fd9398fa6d..5c95bb10538b65 100644 --- a/deps/npm/man/man1/npm-edit.1 +++ b/deps/npm/man/man1/npm-edit.1 @@ -1,4 +1,4 @@ -.TH "NPM\-EDIT" "1" "May 2022" "" "" +.TH "NPM\-EDIT" "1" "June 2022" "" "" .SH "NAME" \fBnpm-edit\fR \- Edit an installed package .SS Synopsis diff --git a/deps/npm/man/man1/npm-exec.1 b/deps/npm/man/man1/npm-exec.1 index 1203e1427e0b90..6403191e1c6741 100644 --- a/deps/npm/man/man1/npm-exec.1 +++ b/deps/npm/man/man1/npm-exec.1 @@ -1,4 +1,4 @@ -.TH "NPM\-EXEC" "1" "May 2022" "" "" +.TH "NPM\-EXEC" "1" "June 2022" "" "" .SH "NAME" \fBnpm-exec\fR \- Run a command from a local or remote npm package .SS Synopsis diff --git a/deps/npm/man/man1/npm-explain.1 b/deps/npm/man/man1/npm-explain.1 index 29866d5c36b214..9a3eec6756ddd8 100644 --- a/deps/npm/man/man1/npm-explain.1 +++ b/deps/npm/man/man1/npm-explain.1 @@ -1,4 +1,4 @@ -.TH "NPM\-EXPLAIN" "1" "May 2022" "" "" +.TH "NPM\-EXPLAIN" "1" "June 2022" "" "" .SH "NAME" \fBnpm-explain\fR \- Explain installed packages .SS Synopsis diff --git a/deps/npm/man/man1/npm-explore.1 b/deps/npm/man/man1/npm-explore.1 index 266248676dfacb..f57776e2df6c5a 100644 --- a/deps/npm/man/man1/npm-explore.1 +++ b/deps/npm/man/man1/npm-explore.1 @@ -1,4 +1,4 @@ -.TH "NPM\-EXPLORE" "1" "May 2022" "" "" +.TH "NPM\-EXPLORE" "1" "June 2022" "" "" .SH "NAME" \fBnpm-explore\fR \- Browse an installed package .SS Synopsis diff --git a/deps/npm/man/man1/npm-find-dupes.1 b/deps/npm/man/man1/npm-find-dupes.1 index 4f1652d54bb5bc..32e036cd73ad95 100644 --- a/deps/npm/man/man1/npm-find-dupes.1 +++ b/deps/npm/man/man1/npm-find-dupes.1 @@ -1,4 +1,4 @@ -.TH "NPM\-FIND\-DUPES" "1" "May 2022" "" "" +.TH "NPM\-FIND\-DUPES" "1" "June 2022" "" "" .SH "NAME" \fBnpm-find-dupes\fR \- Find duplication in the package tree .SS Synopsis diff --git a/deps/npm/man/man1/npm-fund.1 b/deps/npm/man/man1/npm-fund.1 index 44d848357d5281..ef77df60ce83d5 100644 --- a/deps/npm/man/man1/npm-fund.1 +++ b/deps/npm/man/man1/npm-fund.1 @@ -1,4 +1,4 @@ -.TH "NPM\-FUND" "1" "May 2022" "" "" +.TH "NPM\-FUND" "1" "June 2022" "" "" .SH "NAME" \fBnpm-fund\fR \- Retrieve funding information .SS Synopsis diff --git a/deps/npm/man/man1/npm-help-search.1 b/deps/npm/man/man1/npm-help-search.1 index f4e9ec4c91e4d5..e9b7f3e34eecab 100644 --- a/deps/npm/man/man1/npm-help-search.1 +++ b/deps/npm/man/man1/npm-help-search.1 @@ -1,4 +1,4 @@ -.TH "NPM\-HELP\-SEARCH" "1" "May 2022" "" "" +.TH "NPM\-HELP\-SEARCH" "1" "June 2022" "" "" .SH "NAME" \fBnpm-help-search\fR \- Search npm help documentation .SS Synopsis diff --git a/deps/npm/man/man1/npm-help.1 b/deps/npm/man/man1/npm-help.1 index 83cb8f92d04db8..1c22611f8e8059 100644 --- a/deps/npm/man/man1/npm-help.1 +++ b/deps/npm/man/man1/npm-help.1 @@ -1,4 +1,4 @@ -.TH "NPM\-HELP" "1" "May 2022" "" "" +.TH "NPM\-HELP" "1" "June 2022" "" "" .SH "NAME" \fBnpm-help\fR \- Get help on npm .SS Synopsis diff --git a/deps/npm/man/man1/npm-hook.1 b/deps/npm/man/man1/npm-hook.1 index 27b8888c8cda20..b90d873b0944d5 100644 --- a/deps/npm/man/man1/npm-hook.1 +++ b/deps/npm/man/man1/npm-hook.1 @@ -1,4 +1,4 @@ -.TH "NPM\-HOOK" "1" "May 2022" "" "" +.TH "NPM\-HOOK" "1" "June 2022" "" "" .SH "NAME" \fBnpm-hook\fR \- Manage registry hooks .SS Synopsis diff --git a/deps/npm/man/man1/npm-init.1 b/deps/npm/man/man1/npm-init.1 index 829b1b4752bdb5..51e9f42f824c75 100644 --- a/deps/npm/man/man1/npm-init.1 +++ b/deps/npm/man/man1/npm-init.1 @@ -1,4 +1,4 @@ -.TH "NPM\-INIT" "1" "May 2022" "" "" +.TH "NPM\-INIT" "1" "June 2022" "" "" .SH "NAME" \fBnpm-init\fR \- Create a package\.json file .SS Synopsis @@ -286,6 +286,17 @@ other things (test, exec, publish, etc\.) will operate on the root project, .RE .P This value is not exported to the environment for child processes\. +.SS \fBworkspaces\-update\fP +.RS 0 +.IP \(bu 2 +Default: true +.IP \(bu 2 +Type: Boolean + +.RE +.P +If set to true, the npm cli will run an update after operations that may +possibly change the workspaces installed to the \fBnode_modules\fP folder\. .SS \fBinclude\-workspace\-root\fP .RS 0 .IP \(bu 2 diff --git a/deps/npm/man/man1/npm-install-ci-test.1 b/deps/npm/man/man1/npm-install-ci-test.1 index aeddd06d146dda..e50f7e90aec027 100644 --- a/deps/npm/man/man1/npm-install-ci-test.1 +++ b/deps/npm/man/man1/npm-install-ci-test.1 @@ -1,4 +1,4 @@ -.TH "NPM\-INSTALL\-CI\-TEST" "1" "May 2022" "" "" +.TH "NPM\-INSTALL\-CI\-TEST" "1" "June 2022" "" "" .SH "NAME" \fBnpm-install-ci-test\fR \- Install a project with a clean slate and run tests .SS Synopsis diff --git a/deps/npm/man/man1/npm-install-test.1 b/deps/npm/man/man1/npm-install-test.1 index e29397bf940453..1e6ece0f47b616 100644 --- a/deps/npm/man/man1/npm-install-test.1 +++ b/deps/npm/man/man1/npm-install-test.1 @@ -1,4 +1,4 @@ -.TH "NPM\-INSTALL\-TEST" "1" "May 2022" "" "" +.TH "NPM\-INSTALL\-TEST" "1" "June 2022" "" "" .SH "NAME" \fBnpm-install-test\fR \- Install package(s) and run tests .SS Synopsis @@ -56,9 +56,6 @@ rather than using npm's default semver range operator\. Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-install.1 b/deps/npm/man/man1/npm-install.1 index 4bb41f2d7b4670..9d720117819769 100644 --- a/deps/npm/man/man1/npm-install.1 +++ b/deps/npm/man/man1/npm-install.1 @@ -1,4 +1,4 @@ -.TH "NPM\-INSTALL" "1" "May 2022" "" "" +.TH "NPM\-INSTALL" "1" "June 2022" "" "" .SH "NAME" \fBnpm-install\fR \- Install a package .SS Synopsis @@ -467,9 +467,6 @@ rather than using npm's default semver range operator\. Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-link.1 b/deps/npm/man/man1/npm-link.1 index 1b982044e48d69..d748d168451826 100644 --- a/deps/npm/man/man1/npm-link.1 +++ b/deps/npm/man/man1/npm-link.1 @@ -1,4 +1,4 @@ -.TH "NPM\-LINK" "1" "May 2022" "" "" +.TH "NPM\-LINK" "1" "June 2022" "" "" .SH "NAME" \fBnpm-link\fR \- Symlink a package folder .SS Synopsis @@ -145,9 +145,6 @@ rather than using npm's default semver range operator\. Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-logout.1 b/deps/npm/man/man1/npm-logout.1 index 8307918100789e..4f37c3f7b0faac 100644 --- a/deps/npm/man/man1/npm-logout.1 +++ b/deps/npm/man/man1/npm-logout.1 @@ -1,4 +1,4 @@ -.TH "NPM\-LOGOUT" "1" "May 2022" "" "" +.TH "NPM\-LOGOUT" "1" "June 2022" "" "" .SH "NAME" \fBnpm-logout\fR \- Log out of the registry .SS Synopsis diff --git a/deps/npm/man/man1/npm-ls.1 b/deps/npm/man/man1/npm-ls.1 index 1efd612984c8dd..2308cc16016a62 100644 --- a/deps/npm/man/man1/npm-ls.1 +++ b/deps/npm/man/man1/npm-ls.1 @@ -1,4 +1,4 @@ -.TH "NPM\-LS" "1" "May 2022" "" "" +.TH "NPM\-LS" "1" "June 2022" "" "" .SH "NAME" \fBnpm-ls\fR \- List installed packages .SS Synopsis @@ -26,7 +26,7 @@ example, running \fBnpm ls promzard\fP in npm's source tree will show: .P .RS 2 .nf -npm@8\.11\.0 /path/to/npm +npm@8\.12\.1 /path/to/npm └─┬ init\-package\-json@0\.0\.4 └── promzard@0\.1\.5 .fi @@ -127,9 +127,6 @@ Output parseable results from commands that write to standard output\. For Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-org.1 b/deps/npm/man/man1/npm-org.1 index 28d623b204b760..b8b606c61d8145 100644 --- a/deps/npm/man/man1/npm-org.1 +++ b/deps/npm/man/man1/npm-org.1 @@ -1,4 +1,4 @@ -.TH "NPM\-ORG" "1" "May 2022" "" "" +.TH "NPM\-ORG" "1" "June 2022" "" "" .SH "NAME" \fBnpm-org\fR \- Manage orgs .SS Synopsis diff --git a/deps/npm/man/man1/npm-outdated.1 b/deps/npm/man/man1/npm-outdated.1 index 03bcf925884496..3d5025e0e04335 100644 --- a/deps/npm/man/man1/npm-outdated.1 +++ b/deps/npm/man/man1/npm-outdated.1 @@ -1,4 +1,4 @@ -.TH "NPM\-OUTDATED" "1" "May 2022" "" "" +.TH "NPM\-OUTDATED" "1" "June 2022" "" "" .SH "NAME" \fBnpm-outdated\fR \- Check for outdated packages .SS Synopsis @@ -159,9 +159,6 @@ Output parseable results from commands that write to standard output\. For Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-owner.1 b/deps/npm/man/man1/npm-owner.1 index 09f488ed8ea57f..312bf22942d6c6 100644 --- a/deps/npm/man/man1/npm-owner.1 +++ b/deps/npm/man/man1/npm-owner.1 @@ -1,4 +1,4 @@ -.TH "NPM\-OWNER" "1" "May 2022" "" "" +.TH "NPM\-OWNER" "1" "June 2022" "" "" .SH "NAME" \fBnpm-owner\fR \- Manage package owners .SS Synopsis diff --git a/deps/npm/man/man1/npm-pack.1 b/deps/npm/man/man1/npm-pack.1 index 94a0df9efc3bb5..028fab69b1af14 100644 --- a/deps/npm/man/man1/npm-pack.1 +++ b/deps/npm/man/man1/npm-pack.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PACK" "1" "May 2022" "" "" +.TH "NPM\-PACK" "1" "June 2022" "" "" .SH "NAME" \fBnpm-pack\fR \- Create a tarball from a package .SS Synopsis diff --git a/deps/npm/man/man1/npm-ping.1 b/deps/npm/man/man1/npm-ping.1 index bf065b16f1573d..643504f3d9a638 100644 --- a/deps/npm/man/man1/npm-ping.1 +++ b/deps/npm/man/man1/npm-ping.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PING" "1" "May 2022" "" "" +.TH "NPM\-PING" "1" "June 2022" "" "" .SH "NAME" \fBnpm-ping\fR \- Ping npm registry .SS Synopsis diff --git a/deps/npm/man/man1/npm-pkg.1 b/deps/npm/man/man1/npm-pkg.1 index 1307a6664b1e64..7ffaf09ccac98c 100644 --- a/deps/npm/man/man1/npm-pkg.1 +++ b/deps/npm/man/man1/npm-pkg.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PKG" "1" "May 2022" "" "" +.TH "NPM\-PKG" "1" "June 2022" "" "" .SH "NAME" \fBnpm-pkg\fR \- Manages your package\.json .SS Synopsis diff --git a/deps/npm/man/man1/npm-prefix.1 b/deps/npm/man/man1/npm-prefix.1 index e053f315ff3d08..b209abac6c74a1 100644 --- a/deps/npm/man/man1/npm-prefix.1 +++ b/deps/npm/man/man1/npm-prefix.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PREFIX" "1" "May 2022" "" "" +.TH "NPM\-PREFIX" "1" "June 2022" "" "" .SH "NAME" \fBnpm-prefix\fR \- Display prefix .SS Synopsis @@ -40,9 +40,6 @@ npm prefix \-g Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-profile.1 b/deps/npm/man/man1/npm-profile.1 index a7a1733b63d179..ffdfbb5af52aab 100644 --- a/deps/npm/man/man1/npm-profile.1 +++ b/deps/npm/man/man1/npm-profile.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PROFILE" "1" "May 2022" "" "" +.TH "NPM\-PROFILE" "1" "June 2022" "" "" .SH "NAME" \fBnpm-profile\fR \- Change settings on your registry profile .SS Synopsis diff --git a/deps/npm/man/man1/npm-prune.1 b/deps/npm/man/man1/npm-prune.1 index a0d23793206b3b..1f91bd1f2352ae 100644 --- a/deps/npm/man/man1/npm-prune.1 +++ b/deps/npm/man/man1/npm-prune.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PRUNE" "1" "May 2022" "" "" +.TH "NPM\-PRUNE" "1" "June 2022" "" "" .SH "NAME" \fBnpm-prune\fR \- Remove extraneous packages .SS Synopsis diff --git a/deps/npm/man/man1/npm-publish.1 b/deps/npm/man/man1/npm-publish.1 index 241f7cffd2045f..dc914cf75cc4c2 100644 --- a/deps/npm/man/man1/npm-publish.1 +++ b/deps/npm/man/man1/npm-publish.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PUBLISH" "1" "May 2022" "" "" +.TH "NPM\-PUBLISH" "1" "June 2022" "" "" .SH "NAME" \fBnpm-publish\fR \- Publish a package .SS Synopsis diff --git a/deps/npm/man/man1/npm-rebuild.1 b/deps/npm/man/man1/npm-rebuild.1 index f3c51a34e49030..8d6d90b10f0871 100644 --- a/deps/npm/man/man1/npm-rebuild.1 +++ b/deps/npm/man/man1/npm-rebuild.1 @@ -1,4 +1,4 @@ -.TH "NPM\-REBUILD" "1" "May 2022" "" "" +.TH "NPM\-REBUILD" "1" "June 2022" "" "" .SH "NAME" \fBnpm-rebuild\fR \- Rebuild a package .SS Synopsis @@ -28,9 +28,6 @@ will be rebuilt\. Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-repo.1 b/deps/npm/man/man1/npm-repo.1 index 7b9993a2fd7b60..453434dbb85818 100644 --- a/deps/npm/man/man1/npm-repo.1 +++ b/deps/npm/man/man1/npm-repo.1 @@ -1,4 +1,4 @@ -.TH "NPM\-REPO" "1" "May 2022" "" "" +.TH "NPM\-REPO" "1" "June 2022" "" "" .SH "NAME" \fBnpm-repo\fR \- Open package repository page in the browser .SS Synopsis diff --git a/deps/npm/man/man1/npm-restart.1 b/deps/npm/man/man1/npm-restart.1 index 9866fa5792cd6d..2f99ee51ed4fc1 100644 --- a/deps/npm/man/man1/npm-restart.1 +++ b/deps/npm/man/man1/npm-restart.1 @@ -1,4 +1,4 @@ -.TH "NPM\-RESTART" "1" "May 2022" "" "" +.TH "NPM\-RESTART" "1" "June 2022" "" "" .SH "NAME" \fBnpm-restart\fR \- Restart a package .SS Synopsis diff --git a/deps/npm/man/man1/npm-root.1 b/deps/npm/man/man1/npm-root.1 index a9143ebe882e2d..3cda79f406879d 100644 --- a/deps/npm/man/man1/npm-root.1 +++ b/deps/npm/man/man1/npm-root.1 @@ -1,4 +1,4 @@ -.TH "NPM\-ROOT" "1" "May 2022" "" "" +.TH "NPM\-ROOT" "1" "June 2022" "" "" .SH "NAME" \fBnpm-root\fR \- Display npm root .SS Synopsis @@ -29,9 +29,6 @@ echo "Global packages installed in: ${global_node_modules}" Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-run-script.1 b/deps/npm/man/man1/npm-run-script.1 index b9e2afb2696852..fc26c71e0310f9 100644 --- a/deps/npm/man/man1/npm-run-script.1 +++ b/deps/npm/man/man1/npm-run-script.1 @@ -1,4 +1,4 @@ -.TH "NPM\-RUN\-SCRIPT" "1" "May 2022" "" "" +.TH "NPM\-RUN\-SCRIPT" "1" "June 2022" "" "" .SH "NAME" \fBnpm-run-script\fR \- Run arbitrary package scripts .SS Synopsis diff --git a/deps/npm/man/man1/npm-search.1 b/deps/npm/man/man1/npm-search.1 index 51fa43b80e73c8..19bebf6c25d2d4 100644 --- a/deps/npm/man/man1/npm-search.1 +++ b/deps/npm/man/man1/npm-search.1 @@ -1,4 +1,4 @@ -.TH "NPM\-SEARCH" "1" "May 2022" "" "" +.TH "NPM\-SEARCH" "1" "June 2022" "" "" .SH "NAME" \fBnpm-search\fR \- Search for packages .SS Synopsis diff --git a/deps/npm/man/man1/npm-set-script.1 b/deps/npm/man/man1/npm-set-script.1 index 85106d95fbc443..d6c6c36f2141bf 100644 --- a/deps/npm/man/man1/npm-set-script.1 +++ b/deps/npm/man/man1/npm-set-script.1 @@ -1,4 +1,4 @@ -.TH "NPM\-SET\-SCRIPT" "1" "May 2022" "" "" +.TH "NPM\-SET\-SCRIPT" "1" "June 2022" "" "" .SH "NAME" \fBnpm-set-script\fR \- Set tasks in the scripts section of package\.json .SS Synopsis diff --git a/deps/npm/man/man1/npm-shrinkwrap.1 b/deps/npm/man/man1/npm-shrinkwrap.1 index fa87fb7e72b2d4..bcfcae2fcc878c 100644 --- a/deps/npm/man/man1/npm-shrinkwrap.1 +++ b/deps/npm/man/man1/npm-shrinkwrap.1 @@ -1,4 +1,4 @@ -.TH "NPM\-SHRINKWRAP" "1" "May 2022" "" "" +.TH "NPM\-SHRINKWRAP" "1" "June 2022" "" "" .SH "NAME" \fBnpm-shrinkwrap\fR \- Lock down dependency versions for publication .SS Synopsis diff --git a/deps/npm/man/man1/npm-star.1 b/deps/npm/man/man1/npm-star.1 index 57f9c5d361f8ec..2ccd4046e42d7e 100644 --- a/deps/npm/man/man1/npm-star.1 +++ b/deps/npm/man/man1/npm-star.1 @@ -1,4 +1,4 @@ -.TH "NPM\-STAR" "1" "May 2022" "" "" +.TH "NPM\-STAR" "1" "June 2022" "" "" .SH "NAME" \fBnpm-star\fR \- Mark your favorite packages .SS Synopsis diff --git a/deps/npm/man/man1/npm-stars.1 b/deps/npm/man/man1/npm-stars.1 index aa290760aad377..91fcb6560b064c 100644 --- a/deps/npm/man/man1/npm-stars.1 +++ b/deps/npm/man/man1/npm-stars.1 @@ -1,4 +1,4 @@ -.TH "NPM\-STARS" "1" "May 2022" "" "" +.TH "NPM\-STARS" "1" "June 2022" "" "" .SH "NAME" \fBnpm-stars\fR \- View packages marked as favorites .SS Synopsis diff --git a/deps/npm/man/man1/npm-start.1 b/deps/npm/man/man1/npm-start.1 index f45e4a2a24c3e7..589ecea4a240a7 100644 --- a/deps/npm/man/man1/npm-start.1 +++ b/deps/npm/man/man1/npm-start.1 @@ -1,4 +1,4 @@ -.TH "NPM\-START" "1" "May 2022" "" "" +.TH "NPM\-START" "1" "June 2022" "" "" .SH "NAME" \fBnpm-start\fR \- Start a package .SS Synopsis diff --git a/deps/npm/man/man1/npm-stop.1 b/deps/npm/man/man1/npm-stop.1 index a7bb25b3a44dd1..19695cc0e04174 100644 --- a/deps/npm/man/man1/npm-stop.1 +++ b/deps/npm/man/man1/npm-stop.1 @@ -1,4 +1,4 @@ -.TH "NPM\-STOP" "1" "May 2022" "" "" +.TH "NPM\-STOP" "1" "June 2022" "" "" .SH "NAME" \fBnpm-stop\fR \- Stop a package .SS Synopsis diff --git a/deps/npm/man/man1/npm-team.1 b/deps/npm/man/man1/npm-team.1 index 05f508427a4a08..b56e3fc7862911 100644 --- a/deps/npm/man/man1/npm-team.1 +++ b/deps/npm/man/man1/npm-team.1 @@ -1,4 +1,4 @@ -.TH "NPM\-TEAM" "1" "May 2022" "" "" +.TH "NPM\-TEAM" "1" "June 2022" "" "" .SH "NAME" \fBnpm-team\fR \- Manage organization teams and team memberships .SS Synopsis diff --git a/deps/npm/man/man1/npm-test.1 b/deps/npm/man/man1/npm-test.1 index 590d9519df51f6..fbbe80d2638e40 100644 --- a/deps/npm/man/man1/npm-test.1 +++ b/deps/npm/man/man1/npm-test.1 @@ -1,4 +1,4 @@ -.TH "NPM\-TEST" "1" "May 2022" "" "" +.TH "NPM\-TEST" "1" "June 2022" "" "" .SH "NAME" \fBnpm-test\fR \- Test a package .SS Synopsis diff --git a/deps/npm/man/man1/npm-token.1 b/deps/npm/man/man1/npm-token.1 index f2e32ea27fdbec..0292cf80135184 100644 --- a/deps/npm/man/man1/npm-token.1 +++ b/deps/npm/man/man1/npm-token.1 @@ -1,4 +1,4 @@ -.TH "NPM\-TOKEN" "1" "May 2022" "" "" +.TH "NPM\-TOKEN" "1" "June 2022" "" "" .SH "NAME" \fBnpm-token\fR \- Manage your authentication tokens .SS Synopsis diff --git a/deps/npm/man/man1/npm-uninstall.1 b/deps/npm/man/man1/npm-uninstall.1 index d918034ba19490..7ffd372951c792 100644 --- a/deps/npm/man/man1/npm-uninstall.1 +++ b/deps/npm/man/man1/npm-uninstall.1 @@ -1,4 +1,4 @@ -.TH "NPM\-UNINSTALL" "1" "May 2022" "" "" +.TH "NPM\-UNINSTALL" "1" "June 2022" "" "" .SH "NAME" \fBnpm-uninstall\fR \- Remove a package .SS Synopsis diff --git a/deps/npm/man/man1/npm-unpublish.1 b/deps/npm/man/man1/npm-unpublish.1 index 20198422799984..ff538299e7c355 100644 --- a/deps/npm/man/man1/npm-unpublish.1 +++ b/deps/npm/man/man1/npm-unpublish.1 @@ -1,4 +1,4 @@ -.TH "NPM\-UNPUBLISH" "1" "May 2022" "" "" +.TH "NPM\-UNPUBLISH" "1" "June 2022" "" "" .SH "NAME" \fBnpm-unpublish\fR \- Remove a package from the registry .SS Synopsis diff --git a/deps/npm/man/man1/npm-unstar.1 b/deps/npm/man/man1/npm-unstar.1 index 1fa7b88c64a5d4..d71bfff266b312 100644 --- a/deps/npm/man/man1/npm-unstar.1 +++ b/deps/npm/man/man1/npm-unstar.1 @@ -1,4 +1,4 @@ -.TH "NPM\-UNSTAR" "1" "May 2022" "" "" +.TH "NPM\-UNSTAR" "1" "June 2022" "" "" .SH "NAME" \fBnpm-unstar\fR \- Remove an item from your favorite packages .SS Synopsis diff --git a/deps/npm/man/man1/npm-update.1 b/deps/npm/man/man1/npm-update.1 index aebe0c88953b90..df54155942bbf6 100644 --- a/deps/npm/man/man1/npm-update.1 +++ b/deps/npm/man/man1/npm-update.1 @@ -1,4 +1,4 @@ -.TH "NPM\-UPDATE" "1" "May 2022" "" "" +.TH "NPM\-UPDATE" "1" "June 2022" "" "" .SH "NAME" \fBnpm-update\fR \- Update packages .SS Synopsis @@ -180,9 +180,6 @@ Will also prevent writing to \fBpackage\-lock\.json\fP if set to \fBfalse\fP\|\. Default: false .IP \(bu 2 Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. .RE .P diff --git a/deps/npm/man/man1/npm-version.1 b/deps/npm/man/man1/npm-version.1 index 444c0709759de0..49717643237826 100644 --- a/deps/npm/man/man1/npm-version.1 +++ b/deps/npm/man/man1/npm-version.1 @@ -1,4 +1,4 @@ -.TH "NPM\-VERSION" "1" "May 2022" "" "" +.TH "NPM\-VERSION" "1" "June 2022" "" "" .SH "NAME" \fBnpm-version\fR \- Bump a package version .SS Synopsis diff --git a/deps/npm/man/man1/npm-view.1 b/deps/npm/man/man1/npm-view.1 index b77c7705667115..efba9ebd6bd696 100644 --- a/deps/npm/man/man1/npm-view.1 +++ b/deps/npm/man/man1/npm-view.1 @@ -1,4 +1,4 @@ -.TH "NPM\-VIEW" "1" "May 2022" "" "" +.TH "NPM\-VIEW" "1" "June 2022" "" "" .SH "NAME" \fBnpm-view\fR \- View registry info .SS Synopsis diff --git a/deps/npm/man/man1/npm-whoami.1 b/deps/npm/man/man1/npm-whoami.1 index d79c448a7a1141..726153e012e6d6 100644 --- a/deps/npm/man/man1/npm-whoami.1 +++ b/deps/npm/man/man1/npm-whoami.1 @@ -1,4 +1,4 @@ -.TH "NPM\-WHOAMI" "1" "May 2022" "" "" +.TH "NPM\-WHOAMI" "1" "June 2022" "" "" .SH "NAME" \fBnpm-whoami\fR \- Display npm username .SS Synopsis diff --git a/deps/npm/man/man1/npm.1 b/deps/npm/man/man1/npm.1 index 6ac72ad35cba3d..45db3c9e53776e 100644 --- a/deps/npm/man/man1/npm.1 +++ b/deps/npm/man/man1/npm.1 @@ -1,10 +1,10 @@ -.TH "NPM" "1" "May 2022" "" "" +.TH "NPM" "1" "June 2022" "" "" .SH "NAME" \fBnpm\fR \- javascript package manager .SS Synopsis .SS Version .P -8\.11\.0 +8\.12\.1 .SS Description .P npm is the package manager for the Node JavaScript platform\. It puts diff --git a/deps/npm/man/man1/npx.1 b/deps/npm/man/man1/npx.1 index 51634bc8e8f9f3..1f8c292bc545d8 100644 --- a/deps/npm/man/man1/npx.1 +++ b/deps/npm/man/man1/npx.1 @@ -1,4 +1,4 @@ -.TH "NPX" "1" "May 2022" "" "" +.TH "NPX" "1" "June 2022" "" "" .SH "NAME" \fBnpx\fR \- Run a command from a local or remote npm package .SS Synopsis diff --git a/deps/npm/man/man5/folders.5 b/deps/npm/man/man5/folders.5 index 74403f97bfccae..925373df6d425e 100644 --- a/deps/npm/man/man5/folders.5 +++ b/deps/npm/man/man5/folders.5 @@ -1,4 +1,4 @@ -.TH "FOLDERS" "5" "May 2022" "" "" +.TH "FOLDERS" "5" "June 2022" "" "" .SH "NAME" \fBfolders\fR \- Folder Structures Used by npm .SS Description diff --git a/deps/npm/man/man5/install.5 b/deps/npm/man/man5/install.5 index 40d8a825c9ef54..e587d17aafef20 100644 --- a/deps/npm/man/man5/install.5 +++ b/deps/npm/man/man5/install.5 @@ -1,4 +1,4 @@ -.TH "INSTALL" "5" "May 2022" "" "" +.TH "INSTALL" "5" "June 2022" "" "" .SH "NAME" \fBinstall\fR \- Download and install node and npm .SS Description diff --git a/deps/npm/man/man5/npm-shrinkwrap-json.5 b/deps/npm/man/man5/npm-shrinkwrap-json.5 index 2928a9bae6cfdb..783976fb6c52b0 100644 --- a/deps/npm/man/man5/npm-shrinkwrap-json.5 +++ b/deps/npm/man/man5/npm-shrinkwrap-json.5 @@ -1,4 +1,4 @@ -.TH "NPM\-SHRINKWRAP\.JSON" "5" "May 2022" "" "" +.TH "NPM\-SHRINKWRAP\.JSON" "5" "June 2022" "" "" .SH "NAME" \fBnpm-shrinkwrap.json\fR \- A publishable lockfile .SS Description diff --git a/deps/npm/man/man5/npmrc.5 b/deps/npm/man/man5/npmrc.5 index 429bcc3875dd50..cce0b9201c7d8e 100644 --- a/deps/npm/man/man5/npmrc.5 +++ b/deps/npm/man/man5/npmrc.5 @@ -1,4 +1,4 @@ -.TH "NPMRC" "5" "May 2022" "" "" +.TH "NPMRC" "5" "June 2022" "" "" .SH "NAME" \fBnpmrc\fR \- The npm config files .SS Description diff --git a/deps/npm/man/man5/package-json.5 b/deps/npm/man/man5/package-json.5 index 47156509747685..17c4c1e322c6b1 100644 --- a/deps/npm/man/man5/package-json.5 +++ b/deps/npm/man/man5/package-json.5 @@ -1,4 +1,4 @@ -.TH "PACKAGE\.JSON" "5" "May 2022" "" "" +.TH "PACKAGE\.JSON" "5" "June 2022" "" "" .SH "NAME" \fBpackage.json\fR \- Specifics of npm's package\.json handling .SS Description @@ -721,6 +721,34 @@ git+https://isaacs@github\.com/npm/cli\.git git://github\.com/npm/cli\.git#v1\.0\.27 .fi .RE +.P +When installing from a \fBgit\fP repository, the presence of certain fields in the +\fBpackage\.json\fP will cause npm to believe it needs to perform a build\. To do so +your repository will be cloned into a temporary directory, all of its deps +installed, relevant scripts run, and the resulting directory packed and +installed\. +.P +This flow will occur if your git dependency uses \fBworkspaces\fP, or if any of the +following scripts are present: +.RS 0 +.IP \(bu 2 +\fBbuild\fP +.IP \(bu 2 +\fBprepare\fP +.IP \(bu 2 +\fBprepack\fP +.IP \(bu 2 +\fBpreinstall\fP +.IP \(bu 2 +\fBinstall\fP +.IP \(bu 2 +\fBpostinstall\fP + +.RE +.P +If your git repository includes pre\-built artifacts, you will likely want to +make sure that none of the above scripts are defined, or your dependency +will be rebuilt for every installation\. .SS GitHub URLs .P As of version 1\.1\.65, you can refer to GitHub urls as just "foo": diff --git a/deps/npm/man/man5/package-lock-json.5 b/deps/npm/man/man5/package-lock-json.5 index 569d9c5ae679d9..9e17a85f750876 100644 --- a/deps/npm/man/man5/package-lock-json.5 +++ b/deps/npm/man/man5/package-lock-json.5 @@ -1,4 +1,4 @@ -.TH "PACKAGE\-LOCK\.JSON" "5" "May 2022" "" "" +.TH "PACKAGE\-LOCK\.JSON" "5" "June 2022" "" "" .SH "NAME" \fBpackage-lock.json\fR \- A manifestation of the manifest .SS Description diff --git a/deps/npm/man/man7/config.7 b/deps/npm/man/man7/config.7 index e3dc9a995216a5..70f6742b10ada1 100644 --- a/deps/npm/man/man7/config.7 +++ b/deps/npm/man/man7/config.7 @@ -1,4 +1,4 @@ -.TH "CONFIG" "7" "May 2022" "" "" +.TH "CONFIG" "7" "June 2022" "" "" .SH "NAME" \fBconfig\fR \- More than you probably want to know about npm configuration .SS Description @@ -739,6 +739,28 @@ Type: Boolean .P Tag the commit when using the \fBnpm version\fP command\. Setting this to false results in no commit being made at all\. +.SS \fBglobal\fP +.RS 0 +.IP \(bu 2 +Default: false +.IP \(bu 2 +Type: Boolean + +.RE +.P +Operates in "global" mode, so that packages are installed into the \fBprefix\fP +folder instead of the current working directory\. See +npm help folders for more on the differences in behavior\. +.RS 0 +.IP \(bu 2 +packages are installed into the \fB{prefix}/lib/node_modules\fP folder, instead +of the current working directory\. +.IP \(bu 2 +bin files are linked to \fB{prefix}/bin\fP +.IP \(bu 2 +man pages are linked to \fB{prefix}/share/man\fP + +.RE .SS \fBglobal\-style\fP .RS 0 .IP \(bu 2 @@ -1975,14 +1997,16 @@ When set to \fBdev\fP or \fBdevelopment\fP, this is an alias for \fB\-\-include= .IP \(bu 2 Default: "legacy" .IP \(bu 2 -Type: "legacy", "sso", "saml", or "oauth" +Type: "legacy", "webauthn", "sso", "saml", or "oauth" .IP \(bu 2 -DEPRECATED: This method of SSO/SAML/OAuth is deprecated and will be removed -in a future version of npm in favor of web\-based login\. +DEPRECATED: The SSO/SAML/OAuth methods are deprecated and will be removed in +a future version of npm in favor of web\-based login\. .RE .P What authentication strategy to use with \fBadduser\fP/\fBlogin\fP\|\. +.P +Pass \fBwebauthn\fP to use a web\-based login\. .SS \fBcache\-max\fP .RS 0 .IP \(bu 2 @@ -2019,31 +2043,6 @@ DEPRECATED: Please use \-\-include=dev instead\. .RE .P Alias for \fB\-\-include=dev\fP\|\. -.SS \fBglobal\fP -.RS 0 -.IP \(bu 2 -Default: false -.IP \(bu 2 -Type: Boolean -.IP \(bu 2 -DEPRECATED: \fB\-\-global\fP, \fB\-\-local\fP are deprecated\. Use \fB\-\-location=global\fP -instead\. - -.RE -.P -Operates in "global" mode, so that packages are installed into the \fBprefix\fP -folder instead of the current working directory\. See -npm help folders for more on the differences in behavior\. -.RS 0 -.IP \(bu 2 -packages are installed into the \fB{prefix}/lib/node_modules\fP folder, instead -of the current working directory\. -.IP \(bu 2 -bin files are linked to \fB{prefix}/bin\fP -.IP \(bu 2 -man pages are linked to \fB{prefix}/share/man\fP - -.RE .SS \fBinit\.author\.email\fP .RS 0 .IP \(bu 2 diff --git a/deps/npm/man/man7/developers.7 b/deps/npm/man/man7/developers.7 index 12e9b535fce56a..e5c163c68062e8 100644 --- a/deps/npm/man/man7/developers.7 +++ b/deps/npm/man/man7/developers.7 @@ -1,4 +1,4 @@ -.TH "DEVELOPERS" "7" "May 2022" "" "" +.TH "DEVELOPERS" "7" "June 2022" "" "" .SH "NAME" \fBdevelopers\fR \- Developer Guide .SS Description diff --git a/deps/npm/man/man7/logging.7 b/deps/npm/man/man7/logging.7 index ea0a7a8f1873b0..821edc2b03add2 100644 --- a/deps/npm/man/man7/logging.7 +++ b/deps/npm/man/man7/logging.7 @@ -1,4 +1,4 @@ -.TH "LOGGING" "7" "May 2022" "" "" +.TH "LOGGING" "7" "June 2022" "" "" .SH "NAME" \fBLogging\fR \- Why, What & How We Log .SS Description diff --git a/deps/npm/man/man7/orgs.7 b/deps/npm/man/man7/orgs.7 index 84c949949dc60c..c713fb501c7c3d 100644 --- a/deps/npm/man/man7/orgs.7 +++ b/deps/npm/man/man7/orgs.7 @@ -1,4 +1,4 @@ -.TH "ORGS" "7" "May 2022" "" "" +.TH "ORGS" "7" "June 2022" "" "" .SH "NAME" \fBorgs\fR \- Working with Teams & Orgs .SS Description diff --git a/deps/npm/man/man7/registry.7 b/deps/npm/man/man7/registry.7 index eff3f31ab64127..2452816cff3ae6 100644 --- a/deps/npm/man/man7/registry.7 +++ b/deps/npm/man/man7/registry.7 @@ -1,4 +1,4 @@ -.TH "REGISTRY" "7" "May 2022" "" "" +.TH "REGISTRY" "7" "June 2022" "" "" .SH "NAME" \fBregistry\fR \- The JavaScript Package Registry .SS Description diff --git a/deps/npm/man/man7/removal.7 b/deps/npm/man/man7/removal.7 index 27bb1de4c99af1..5896b1f07a4c01 100644 --- a/deps/npm/man/man7/removal.7 +++ b/deps/npm/man/man7/removal.7 @@ -1,4 +1,4 @@ -.TH "REMOVAL" "7" "May 2022" "" "" +.TH "REMOVAL" "7" "June 2022" "" "" .SH "NAME" \fBremoval\fR \- Cleaning the Slate .SS Synopsis diff --git a/deps/npm/man/man7/scope.7 b/deps/npm/man/man7/scope.7 index 5d4f0e7270a02b..e519a2b4323913 100644 --- a/deps/npm/man/man7/scope.7 +++ b/deps/npm/man/man7/scope.7 @@ -1,4 +1,4 @@ -.TH "SCOPE" "7" "May 2022" "" "" +.TH "SCOPE" "7" "June 2022" "" "" .SH "NAME" \fBscope\fR \- Scoped packages .SS Description diff --git a/deps/npm/man/man7/scripts.7 b/deps/npm/man/man7/scripts.7 index 2ced12c63d9006..945cb86e9052e8 100644 --- a/deps/npm/man/man7/scripts.7 +++ b/deps/npm/man/man7/scripts.7 @@ -1,4 +1,4 @@ -.TH "SCRIPTS" "7" "May 2022" "" "" +.TH "SCRIPTS" "7" "June 2022" "" "" .SH "NAME" \fBscripts\fR \- How npm handles the "scripts" field .SS Description @@ -289,6 +289,16 @@ will default the \fBstart\fP command to \fBnode server\.js\fP\|\. \fBprestart\f .IP \(bu 2 \fBposttest\fP +.RE +.SS npm help \fBversion\fP +.RS 0 +.IP \(bu 2 +\fBpreversion\fP +.IP \(bu 2 +\fBversion\fP +.IP \(bu 2 +\fBpostversion\fP + .RE .SS A Note on a lack of npm help \fBuninstall\fP scripts .P diff --git a/deps/npm/man/man7/workspaces.7 b/deps/npm/man/man7/workspaces.7 index 494b4068621421..16460caa951cb6 100644 --- a/deps/npm/man/man7/workspaces.7 +++ b/deps/npm/man/man7/workspaces.7 @@ -1,4 +1,4 @@ -.TH "WORKSPACES" "7" "May 2022" "" "" +.TH "WORKSPACES" "7" "June 2022" "" "" .SH "NAME" \fBworkspaces\fR \- Working with workspaces .SS Description diff --git a/deps/npm/node_modules/@npmcli/arborist/README.md b/deps/npm/node_modules/@npmcli/arborist/README.md index e4a58239a0e085..81d79cbf3021b9 100644 --- a/deps/npm/node_modules/@npmcli/arborist/README.md +++ b/deps/npm/node_modules/@npmcli/arborist/README.md @@ -9,7 +9,7 @@ Inspect and manage `node_modules` trees. ![a tree with the word ARBORIST superimposed on it](https://raw.githubusercontent.com/npm/arborist/main/docs/logo.svg?sanitize=true) There's more documentation [in the docs -folder](https://github.com/npm/arborist/tree/main/docs). +folder](https://github.com/npm/cli/tree/latest/workspaces/arborist/docs). ## USAGE diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/edge.js b/deps/npm/node_modules/@npmcli/arborist/lib/edge.js index d72f312569466c..a04404f2265633 100644 --- a/deps/npm/node_modules/@npmcli/arborist/lib/edge.js +++ b/deps/npm/node_modules/@npmcli/arborist/lib/edge.js @@ -92,7 +92,12 @@ class Edge { return false } - return depValid(node, this.spec, this.accept, this.from) + // NOTE: this condition means we explicitly do not support overriding + // bundled or shrinkwrapped dependencies + const spec = (node.hasShrinkwrap || node.inShrinkwrap || node.inBundle) + ? this.rawSpec + : this.spec + return depValid(node, spec, this.accept, this.from) } explain (seen = []) { diff --git a/deps/npm/node_modules/@npmcli/arborist/package.json b/deps/npm/node_modules/@npmcli/arborist/package.json index e6d2d9613c206f..baae74e25ac7b8 100644 --- a/deps/npm/node_modules/@npmcli/arborist/package.json +++ b/deps/npm/node_modules/@npmcli/arborist/package.json @@ -1,6 +1,6 @@ { "name": "@npmcli/arborist", - "version": "5.2.0", + "version": "5.2.1", "description": "Manage node_modules trees", "dependencies": { "@isaacs/string-locale-compare": "^1.1.0", diff --git a/deps/npm/node_modules/glob/common.js b/deps/npm/node_modules/glob/common.js index fc193ee6fbda5d..e094f750472f78 100644 --- a/deps/npm/node_modules/glob/common.js +++ b/deps/npm/node_modules/glob/common.js @@ -13,7 +13,7 @@ function ownProp (obj, field) { var fs = require("fs") var path = require("path") var minimatch = require("minimatch") -var isAbsolute = require("path-is-absolute") +var isAbsolute = require("path").isAbsolute var Minimatch = minimatch.Minimatch function alphasort (a, b) { @@ -88,7 +88,7 @@ function setopts (self, pattern, options) { self.changedCwd = false var cwd = process.cwd() if (!ownProp(options, "cwd")) - self.cwd = cwd + self.cwd = path.resolve(cwd) else { self.cwd = path.resolve(options.cwd) self.changedCwd = self.cwd !== cwd @@ -96,16 +96,18 @@ function setopts (self, pattern, options) { self.root = options.root || path.resolve(self.cwd, "/") self.root = path.resolve(self.root) - if (process.platform === "win32") - self.root = self.root.replace(/\\/g, "/") // TODO: is an absolute `cwd` supposed to be resolved against `root`? // e.g. { cwd: '/test', root: __dirname } === path.join(__dirname, '/test') self.cwdAbs = isAbsolute(self.cwd) ? self.cwd : makeAbs(self, self.cwd) - if (process.platform === "win32") - self.cwdAbs = self.cwdAbs.replace(/\\/g, "/") self.nomount = !!options.nomount + if (process.platform === "win32") { + self.root = self.root.replace(/\\/g, "/") + self.cwd = self.cwd.replace(/\\/g, "/") + self.cwdAbs = self.cwdAbs.replace(/\\/g, "/") + } + // disable comments and negation in Minimatch. // Note that they are not supported in Glob itself anyway. options.nonegate = true diff --git a/deps/npm/node_modules/glob/glob.js b/deps/npm/node_modules/glob/glob.js index 37a4d7e60775a3..2112a957dc5016 100644 --- a/deps/npm/node_modules/glob/glob.js +++ b/deps/npm/node_modules/glob/glob.js @@ -47,7 +47,7 @@ var inherits = require('inherits') var EE = require('events').EventEmitter var path = require('path') var assert = require('assert') -var isAbsolute = require('path-is-absolute') +var isAbsolute = require('path').isAbsolute var globSync = require('./sync.js') var common = require('./common.js') var setopts = common.setopts diff --git a/deps/npm/node_modules/glob/package.json b/deps/npm/node_modules/glob/package.json index 54940cbeb42080..5134253e32226f 100644 --- a/deps/npm/node_modules/glob/package.json +++ b/deps/npm/node_modules/glob/package.json @@ -2,7 +2,7 @@ "author": "Isaac Z. Schlueter (http://blog.izs.me/)", "name": "glob", "description": "a little globber", - "version": "8.0.1", + "version": "8.0.3", "repository": { "type": "git", "url": "git://github.com/isaacs/node-glob.git" @@ -21,8 +21,7 @@ "inflight": "^1.0.4", "inherits": "2", "minimatch": "^5.0.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "once": "^1.3.0" }, "devDependencies": { "memfs": "^3.2.0", diff --git a/deps/npm/node_modules/glob/sync.js b/deps/npm/node_modules/glob/sync.js index c705a9c0291dd9..af4600dd595081 100644 --- a/deps/npm/node_modules/glob/sync.js +++ b/deps/npm/node_modules/glob/sync.js @@ -8,7 +8,7 @@ var Glob = require('./glob.js').Glob var util = require('util') var path = require('path') var assert = require('assert') -var isAbsolute = require('path-is-absolute') +var isAbsolute = require('path').isAbsolute var common = require('./common.js') var setopts = common.setopts var ownProp = common.ownProp @@ -48,7 +48,7 @@ function GlobSync (pattern, options) { } GlobSync.prototype._finish = function () { - assert(this instanceof GlobSync) + assert.ok(this instanceof GlobSync) if (this.realpath) { var self = this this.matches.forEach(function (matchset, index) { @@ -72,7 +72,7 @@ GlobSync.prototype._finish = function () { GlobSync.prototype._process = function (pattern, index, inGlobStar) { - assert(this instanceof GlobSync) + assert.ok(this instanceof GlobSync) // Get the first [n] parts of pattern that are all strings. var n = 0 diff --git a/deps/npm/node_modules/libnpmexec/lib/index.js b/deps/npm/node_modules/libnpmexec/lib/index.js index fbe5c5520c381e..dfe7560120702d 100644 --- a/deps/npm/node_modules/libnpmexec/lib/index.js +++ b/deps/npm/node_modules/libnpmexec/lib/index.js @@ -166,7 +166,7 @@ const exec = async (opts) => { const add = manis .filter(mani => !mani[_localManifest]) .filter(filterMissingPackagesFromInstallDir) - .map(mani => mani._from) + .map(mani => mani._id || mani._from) .sort((a, b) => a.localeCompare(b, 'en')) // no need to install if already present diff --git a/deps/npm/node_modules/libnpmexec/package.json b/deps/npm/node_modules/libnpmexec/package.json index 9fe45c7ef6d049..dfe40b0d9f7ad0 100644 --- a/deps/npm/node_modules/libnpmexec/package.json +++ b/deps/npm/node_modules/libnpmexec/package.json @@ -1,6 +1,6 @@ { "name": "libnpmexec", - "version": "4.0.5", + "version": "4.0.6", "files": [ "bin/", "lib/" diff --git a/deps/npm/node_modules/make-fetch-happen/lib/remote.js b/deps/npm/node_modules/make-fetch-happen/lib/remote.js index 763fc0d48802b1..068c73a8a7a7e3 100644 --- a/deps/npm/node_modules/make-fetch-happen/lib/remote.js +++ b/deps/npm/node_modules/make-fetch-happen/lib/remote.js @@ -52,7 +52,11 @@ const remoteFetch = (request, options) => { if (_opts.integrity && res.status === 200) { // we got a 200 response and the user has specified an expected // integrity value, so wrap the response in an ssri stream to verify it - const integrityStream = ssri.integrityStream({ integrity: _opts.integrity }) + const integrityStream = ssri.integrityStream({ + algorithms: _opts.algorithms, + integrity: _opts.integrity, + size: _opts.size, + }) const pipeline = new CachingMinipassPipeline({ events: ['integrity', 'size'], }, res.body, integrityStream) diff --git a/deps/npm/node_modules/make-fetch-happen/package.json b/deps/npm/node_modules/make-fetch-happen/package.json index 2e6153b99fa0d1..e3d42bb2110d1f 100644 --- a/deps/npm/node_modules/make-fetch-happen/package.json +++ b/deps/npm/node_modules/make-fetch-happen/package.json @@ -1,6 +1,6 @@ { "name": "make-fetch-happen", - "version": "10.1.5", + "version": "10.1.6", "description": "Opinionated, caching, retrying fetch client", "main": "lib/index.js", "files": [ @@ -69,7 +69,8 @@ "tap": { "color": 1, "files": "test/*.js", - "check-coverage": true + "check-coverage": true, + "timeout": 60 }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", diff --git a/deps/npm/node_modules/minimatch/minimatch.js b/deps/npm/node_modules/minimatch/minimatch.js index f3b491dd1073ed..71c96a1fb71cce 100644 --- a/deps/npm/node_modules/minimatch/minimatch.js +++ b/deps/npm/node_modules/minimatch/minimatch.js @@ -168,6 +168,11 @@ class Minimatch { this.options = options this.set = [] this.pattern = pattern + this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || + options.allowWindowsEscape === false + if (this.windowsPathsNoEscape) { + this.pattern = this.pattern.replace(/\\/g, '/') + } this.regexp = null this.negate = false this.comment = false diff --git a/deps/npm/node_modules/minimatch/package.json b/deps/npm/node_modules/minimatch/package.json index 2cc856968c0b29..8e1a84285d38f3 100644 --- a/deps/npm/node_modules/minimatch/package.json +++ b/deps/npm/node_modules/minimatch/package.json @@ -2,7 +2,7 @@ "author": "Isaac Z. Schlueter (http://blog.izs.me)", "name": "minimatch", "description": "a glob matcher in javascript", - "version": "5.0.1", + "version": "5.1.0", "repository": { "type": "git", "url": "git://github.com/isaacs/minimatch.git" diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/common.js b/deps/npm/node_modules/node-gyp/node_modules/glob/common.js index 8e363b6c1f16a1..424c46e1dab1be 100644 --- a/deps/npm/node_modules/node-gyp/node_modules/glob/common.js +++ b/deps/npm/node_modules/node-gyp/node_modules/glob/common.js @@ -110,6 +110,8 @@ function setopts (self, pattern, options) { // Note that they are not supported in Glob itself anyway. options.nonegate = true options.nocomment = true + // always treat \ in patterns as escapes, not path separators + options.allowWindowsEscape = false self.minimatch = new Minimatch(pattern, options) self.options = self.minimatch.options diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/glob.js b/deps/npm/node_modules/node-gyp/node_modules/glob/glob.js index afcf82752c390a..37a4d7e60775a3 100644 --- a/deps/npm/node_modules/node-gyp/node_modules/glob/glob.js +++ b/deps/npm/node_modules/node-gyp/node_modules/glob/glob.js @@ -342,7 +342,10 @@ Glob.prototype._process = function (pattern, index, inGlobStar, cb) { var read if (prefix === null) read = '.' - else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) { + else if (isAbsolute(prefix) || + isAbsolute(pattern.map(function (p) { + return typeof p === 'string' ? p : '[*]' + }).join('/'))) { if (!prefix || !isAbsolute(prefix)) prefix = '/' + prefix read = prefix diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/package.json b/deps/npm/node_modules/node-gyp/node_modules/glob/package.json index cc1a57a896e9eb..5940b649b7e65a 100644 --- a/deps/npm/node_modules/node-gyp/node_modules/glob/package.json +++ b/deps/npm/node_modules/node-gyp/node_modules/glob/package.json @@ -2,7 +2,10 @@ "author": "Isaac Z. Schlueter (http://blog.izs.me/)", "name": "glob", "description": "a little globber", - "version": "7.2.0", + "version": "7.2.3", + "publishConfig": { + "tag": "v7-legacy" + }, "repository": { "type": "git", "url": "git://github.com/isaacs/node-glob.git" @@ -20,7 +23,7 @@ "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" }, diff --git a/deps/npm/node_modules/node-gyp/node_modules/glob/sync.js b/deps/npm/node_modules/node-gyp/node_modules/glob/sync.js index 4f46f90559a0ca..2c4f480192d28d 100644 --- a/deps/npm/node_modules/node-gyp/node_modules/glob/sync.js +++ b/deps/npm/node_modules/node-gyp/node_modules/glob/sync.js @@ -48,7 +48,7 @@ function GlobSync (pattern, options) { } GlobSync.prototype._finish = function () { - assert(this instanceof GlobSync) + assert.ok(this instanceof GlobSync) if (this.realpath) { var self = this this.matches.forEach(function (matchset, index) { @@ -72,7 +72,7 @@ GlobSync.prototype._finish = function () { GlobSync.prototype._process = function (pattern, index, inGlobStar) { - assert(this instanceof GlobSync) + assert.ok(this instanceof GlobSync) // Get the first [n] parts of pattern that are all strings. var n = 0 @@ -109,7 +109,10 @@ GlobSync.prototype._process = function (pattern, index, inGlobStar) { var read if (prefix === null) read = '.' - else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) { + else if (isAbsolute(prefix) || + isAbsolute(pattern.map(function (p) { + return typeof p === 'string' ? p : '[*]' + }).join('/'))) { if (!prefix || !isAbsolute(prefix)) prefix = '/' + prefix read = prefix diff --git a/deps/npm/node_modules/pacote/README.md b/deps/npm/node_modules/pacote/README.md index eac48f69fe39fc..4403ad113a0b5c 100644 --- a/deps/npm/node_modules/pacote/README.md +++ b/deps/npm/node_modules/pacote/README.md @@ -237,6 +237,7 @@ In addition to the common `package.json` fields, manifests include: artifact can be found. * `manifest._from` A normalized form of the spec passed in as an argument. * `manifest._integrity` The integrity value for the package artifact. +* `manifest._id` The canonical spec of this package version: name@version. * `manifest.dist` Registry manifests (those included in a packument) have a `dist` object. Only `tarball` is required, though at least one of `shasum` or `integrity` is almost always present. @@ -274,3 +275,8 @@ For Pacote's purposes, the following fields are relevant: `foo@latest` gets turned into `foo@1.2.3`. * `time` In the full packument, an object mapping version numbers to publication times, for the `opts.before` functionality. + +Pacote adds the following fields, regardless of the accept header: + +* `_cached` Whether the packument was fetched from the network or the local cache. +* `_contentLength` The size of the packument. diff --git a/deps/npm/node_modules/pacote/lib/fetcher.js b/deps/npm/node_modules/pacote/lib/fetcher.js index d88724c5d19731..5f93e703bca4b8 100644 --- a/deps/npm/node_modules/pacote/lib/fetcher.js +++ b/deps/npm/node_modules/pacote/lib/fetcher.js @@ -18,6 +18,7 @@ const removeTrailingSlashes = require('./util/trailing-slashes.js') const getContents = require('@npmcli/installed-package-contents') const readPackageJsonFast = require('read-package-json-fast') const readPackageJson = promisify(require('read-package-json')) +const Minipass = require('minipass') // we only change ownership on unix platforms, and only if uid is 0 const selfOwner = process.getuid && process.getuid() === 0 ? { @@ -105,15 +106,10 @@ class FetcherBase { this[_readPackageJson] = readPackageJsonFast } - // config values: npmjs (default), never, always - // we don't want to mutate the original value - if (opts.replaceRegistryHost !== 'never' - && opts.replaceRegistryHost !== 'always' - ) { - this.replaceRegistryHost = 'npmjs' - } else { - this.replaceRegistryHost = opts.replaceRegistryHost - } + // rrh is a registry hostname or 'never' or 'always' + // defaults to registry.npmjs.org + this.replaceRegistryHost = (!opts.replaceRegistryHost || opts.replaceRegistryHost === 'npmjs') ? + 'registry.npmjs.org' : opts.replaceRegistryHost this.defaultTag = opts.defaultTag || 'latest' this.registry = removeTrailingSlashes(opts.registry || 'https://registry.npmjs.org') @@ -224,18 +220,18 @@ class FetcherBase { } [_istream] (stream) { - // everyone will need one of these, either for verifying or calculating - // We always set it, because we have might only have a weak legacy hex - // sha1 in the packument, and this MAY upgrade it to a stronger algo. - // If we had an integrity, and it doesn't match, then this does not - // override that error; the istream will raise the error before it - // gets to the point of re-setting the integrity. - const istream = ssri.integrityStream(this.opts) - istream.on('integrity', i => this.integrity = i) - stream.on('error', er => istream.emit('error', er)) - - // if not caching this, just pipe through to the istream and return it + // if not caching this, just return it if (!this.opts.cache || !this[_cacheFetches]) { + // instead of creating a new integrity stream, we only piggyback on the + // provided stream's events + if (stream.hasIntegrityEmitter) { + stream.on('integrity', i => this.integrity = i) + return stream + } + + const istream = ssri.integrityStream(this.opts) + istream.on('integrity', i => this.integrity = i) + stream.on('error', err => istream.emit('error', err)) return stream.pipe(istream) } @@ -243,21 +239,23 @@ class FetcherBase { // but then pipe from the original tarball stream into the cache as well. // To do this without losing any data, and since the cacache put stream // is not a passthrough, we have to pipe from the original stream into - // the cache AFTER we pipe into the istream. Since the cache stream + // the cache AFTER we pipe into the middleStream. Since the cache stream // has an asynchronous flush to write its contents to disk, we need to - // defer the istream end until the cache stream ends. - stream.pipe(istream, { end: false }) + // defer the middleStream end until the cache stream ends. + const middleStream = new Minipass() + stream.on('error', err => middleStream.emit('error', err)) + stream.pipe(middleStream, { end: false }) const cstream = cacache.put.stream( this.opts.cache, `pacote:tarball:${this.from}`, this.opts ) + cstream.on('integrity', i => this.integrity = i) + cstream.on('error', err => stream.emit('error', err)) stream.pipe(cstream) - // defer istream end until after cstream - // cache write errors should not crash the fetch, this is best-effort. - cstream.promise().catch(() => {}).then(() => istream.end()) - return istream + cstream.promise().catch(() => {}).then(() => middleStream.end()) + return middleStream } pickIntegrityAlgorithm () { diff --git a/deps/npm/node_modules/pacote/lib/registry.js b/deps/npm/node_modules/pacote/lib/registry.js index 2eb37bceccebc6..c8eb6b02907022 100644 --- a/deps/npm/node_modules/pacote/lib/registry.js +++ b/deps/npm/node_modules/pacote/lib/registry.js @@ -122,11 +122,12 @@ class RegistryFetcher extends Fetcher { } const packument = await this.packument() - const mani = await pickManifest(packument, this.spec.fetchSpec, { + let mani = await pickManifest(packument, this.spec.fetchSpec, { ...this.opts, defaultTag: this.defaultTag, before: this.before, }) + mani = rpj.normalize(mani) /* XXX add ETARGET and E403 revalidation of cached packuments here */ // add _resolved and _integrity from dist object @@ -165,49 +166,53 @@ class RegistryFetcher extends Fetcher { mani._integrity = String(this.integrity) if (dist.signatures) { if (this.opts.verifySignatures) { - if (this.registryKeys) { - // validate and throw on error, then set _signatures - const message = `${mani._id}:${mani._integrity}` - for (const signature of dist.signatures) { - const publicKey = this.registryKeys.filter(key => (key.keyid === signature.keyid))[0] - if (!publicKey) { - throw Object.assign(new Error( - `${mani._id} has a signature with keyid: ${signature.keyid} ` + - 'but no corresponding public key can be found.' - ), { code: 'EMISSINGSIGNATUREKEY' }) - } - const validPublicKey = - !publicKey.expires || (Date.parse(publicKey.expires) > Date.now()) - if (!validPublicKey) { - throw Object.assign(new Error( - `${mani._id} has a signature with keyid: ${signature.keyid} ` + + // validate and throw on error, then set _signatures + const message = `${mani._id}:${mani._integrity}` + for (const signature of dist.signatures) { + const publicKey = this.registryKeys && + this.registryKeys.filter(key => (key.keyid === signature.keyid))[0] + if (!publicKey) { + throw Object.assign(new Error( + `${mani._id} has a registry signature with keyid: ${signature.keyid} ` + + 'but no corresponding public key can be found' + ), { code: 'EMISSINGSIGNATUREKEY' }) + } + const validPublicKey = + !publicKey.expires || (Date.parse(publicKey.expires) > Date.now()) + if (!validPublicKey) { + throw Object.assign(new Error( + `${mani._id} has a registry signature with keyid: ${signature.keyid} ` + `but the corresponding public key has expired ${publicKey.expires}` - ), { code: 'EEXPIREDSIGNATUREKEY' }) - } - const verifier = crypto.createVerify('SHA256') - verifier.write(message) - verifier.end() - const valid = verifier.verify( - publicKey.pemkey, - signature.sig, - 'base64' - ) - if (!valid) { - throw Object.assign(new Error( - 'Integrity checksum signature failed: ' + - `key ${publicKey.keyid} signature ${signature.sig}` - ), { code: 'EINTEGRITYSIGNATURE' }) - } + ), { code: 'EEXPIREDSIGNATUREKEY' }) + } + const verifier = crypto.createVerify('SHA256') + verifier.write(message) + verifier.end() + const valid = verifier.verify( + publicKey.pemkey, + signature.sig, + 'base64' + ) + if (!valid) { + throw Object.assign(new Error( + `${mani._id} has an invalid registry signature with ` + + `keyid: ${publicKey.keyid} and signature: ${signature.sig}` + ), { + code: 'EINTEGRITYSIGNATURE', + keyid: publicKey.keyid, + signature: signature.sig, + resolved: mani._resolved, + integrity: mani._integrity, + }) } - mani._signatures = dist.signatures } - // if no keys, don't set _signatures + mani._signatures = dist.signatures } else { mani._signatures = dist.signatures } } } - this.package = rpj.normalize(mani) + this.package = mani return this.package } diff --git a/deps/npm/node_modules/pacote/lib/remote.js b/deps/npm/node_modules/pacote/lib/remote.js index 14e687805d47a8..6759dbba3ed2f2 100644 --- a/deps/npm/node_modules/pacote/lib/remote.js +++ b/deps/npm/node_modules/pacote/lib/remote.js @@ -4,8 +4,6 @@ const _tarballFromResolved = Symbol.for('pacote.Fetcher._tarballFromResolved') const pacoteVersion = require('../package.json').version const fetch = require('npm-registry-fetch') const Minipass = require('minipass') -// The default registry URL is a string of great magic. -const magicHost = 'https://registry.npmjs.org' const _cacheFetches = Symbol.for('pacote.Fetcher._cacheFetches') const _headers = Symbol('_headers') @@ -14,11 +12,9 @@ class RemoteFetcher extends Fetcher { super(spec, opts) this.resolved = this.spec.fetchSpec const resolvedURL = new URL(this.resolved) - if ( - (this.replaceRegistryHost === 'npmjs' - && resolvedURL.origin === magicHost) - || this.replaceRegistryHost === 'always' - ) { + if (this.replaceRegistryHost !== 'never' + && (this.replaceRegistryHost === 'always' + || this.replaceRegistryHost === resolvedURL.host)) { this.resolved = new URL(resolvedURL.pathname, this.registry).href } @@ -35,6 +31,8 @@ class RemoteFetcher extends Fetcher { [_tarballFromResolved] () { const stream = new Minipass() + stream.hasIntegrityEmitter = true + const fetchOpts = { ...this.opts, headers: this[_headers](), @@ -42,16 +40,19 @@ class RemoteFetcher extends Fetcher { integrity: this.integrity, algorithms: [this.pickIntegrityAlgorithm()], } - fetch(this.resolved, fetchOpts).then(res => { - const hash = res.headers.get('x-local-cache-hash') - if (hash) { - this.integrity = decodeURIComponent(hash) - } + fetch(this.resolved, fetchOpts).then(res => { res.body.on('error', /* istanbul ignore next - exceedingly rare and hard to simulate */ er => stream.emit('error', er) - ).pipe(stream) + ) + + res.body.on('integrity', i => { + this.integrity = i + stream.emit('integrity', i) + }) + + res.body.pipe(stream) }).catch(er => stream.emit('error', er)) return stream diff --git a/deps/npm/node_modules/pacote/package.json b/deps/npm/node_modules/pacote/package.json index 5045e3f06a0788..af100fa8d6bfa2 100644 --- a/deps/npm/node_modules/pacote/package.json +++ b/deps/npm/node_modules/pacote/package.json @@ -1,6 +1,6 @@ { "name": "pacote", - "version": "13.5.0", + "version": "13.6.0", "description": "JavaScript package downloader", "author": "GitHub Inc.", "bin": { @@ -21,8 +21,7 @@ "template-oss-apply": "template-oss-apply --force" }, "tap": { - "timeout": 300, - "coverage-map": "map.js" + "timeout": 300 }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", diff --git a/deps/npm/node_modules/rimraf/node_modules/glob/common.js b/deps/npm/node_modules/rimraf/node_modules/glob/common.js index 8e363b6c1f16a1..424c46e1dab1be 100644 --- a/deps/npm/node_modules/rimraf/node_modules/glob/common.js +++ b/deps/npm/node_modules/rimraf/node_modules/glob/common.js @@ -110,6 +110,8 @@ function setopts (self, pattern, options) { // Note that they are not supported in Glob itself anyway. options.nonegate = true options.nocomment = true + // always treat \ in patterns as escapes, not path separators + options.allowWindowsEscape = false self.minimatch = new Minimatch(pattern, options) self.options = self.minimatch.options diff --git a/deps/npm/node_modules/rimraf/node_modules/glob/glob.js b/deps/npm/node_modules/rimraf/node_modules/glob/glob.js index afcf82752c390a..37a4d7e60775a3 100644 --- a/deps/npm/node_modules/rimraf/node_modules/glob/glob.js +++ b/deps/npm/node_modules/rimraf/node_modules/glob/glob.js @@ -342,7 +342,10 @@ Glob.prototype._process = function (pattern, index, inGlobStar, cb) { var read if (prefix === null) read = '.' - else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) { + else if (isAbsolute(prefix) || + isAbsolute(pattern.map(function (p) { + return typeof p === 'string' ? p : '[*]' + }).join('/'))) { if (!prefix || !isAbsolute(prefix)) prefix = '/' + prefix read = prefix diff --git a/deps/npm/node_modules/rimraf/node_modules/glob/package.json b/deps/npm/node_modules/rimraf/node_modules/glob/package.json index cc1a57a896e9eb..5940b649b7e65a 100644 --- a/deps/npm/node_modules/rimraf/node_modules/glob/package.json +++ b/deps/npm/node_modules/rimraf/node_modules/glob/package.json @@ -2,7 +2,10 @@ "author": "Isaac Z. Schlueter (http://blog.izs.me/)", "name": "glob", "description": "a little globber", - "version": "7.2.0", + "version": "7.2.3", + "publishConfig": { + "tag": "v7-legacy" + }, "repository": { "type": "git", "url": "git://github.com/isaacs/node-glob.git" @@ -20,7 +23,7 @@ "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" }, diff --git a/deps/npm/node_modules/rimraf/node_modules/glob/sync.js b/deps/npm/node_modules/rimraf/node_modules/glob/sync.js index 4f46f90559a0ca..2c4f480192d28d 100644 --- a/deps/npm/node_modules/rimraf/node_modules/glob/sync.js +++ b/deps/npm/node_modules/rimraf/node_modules/glob/sync.js @@ -48,7 +48,7 @@ function GlobSync (pattern, options) { } GlobSync.prototype._finish = function () { - assert(this instanceof GlobSync) + assert.ok(this instanceof GlobSync) if (this.realpath) { var self = this this.matches.forEach(function (matchset, index) { @@ -72,7 +72,7 @@ GlobSync.prototype._finish = function () { GlobSync.prototype._process = function (pattern, index, inGlobStar) { - assert(this instanceof GlobSync) + assert.ok(this instanceof GlobSync) // Get the first [n] parts of pattern that are all strings. var n = 0 @@ -109,7 +109,10 @@ GlobSync.prototype._process = function (pattern, index, inGlobStar) { var read if (prefix === null) read = '.' - else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) { + else if (isAbsolute(prefix) || + isAbsolute(pattern.map(function (p) { + return typeof p === 'string' ? p : '[*]' + }).join('/'))) { if (!prefix || !isAbsolute(prefix)) prefix = '/' + prefix read = prefix diff --git a/deps/npm/package.json b/deps/npm/package.json index f616f038dbf921..fbfabe9365cd03 100644 --- a/deps/npm/package.json +++ b/deps/npm/package.json @@ -1,5 +1,5 @@ { - "version": "8.11.0", + "version": "8.12.1", "name": "npm", "description": "a package manager for JavaScript", "workspaces": [ @@ -90,7 +90,7 @@ "libnpmsearch": "^5.0.2", "libnpmteam": "^4.0.2", "libnpmversion": "^3.0.1", - "make-fetch-happen": "^10.1.5", + "make-fetch-happen": "^10.1.6", "minipass": "^3.1.6", "minipass-pipeline": "^1.2.4", "mkdirp": "^1.0.4", @@ -107,7 +107,7 @@ "npm-user-validate": "^1.0.1", "npmlog": "^6.0.2", "opener": "^1.5.2", - "pacote": "^13.4.1", + "pacote": "^13.6.0", "parse-conflict-json": "^2.0.2", "proc-log": "^2.0.1", "qrcode-terminal": "^0.12.0", diff --git a/deps/npm/tap-snapshots/test/lib/commands/init.js.test.cjs b/deps/npm/tap-snapshots/test/lib/commands/init.js.test.cjs index 9dd0b4b6be36b7..a544b864035417 100644 --- a/deps/npm/tap-snapshots/test/lib/commands/init.js.test.cjs +++ b/deps/npm/tap-snapshots/test/lib/commands/init.js.test.cjs @@ -10,26 +10,53 @@ Array [] ` exports[`test/lib/commands/init.js TAP workspaces no args > should print helper info 1`] = ` +Array [] +` + +exports[`test/lib/commands/init.js TAP workspaces no args, existing folder > should print helper info 1`] = ` +Array [] +` + +exports[`test/lib/commands/init.js TAP workspaces post workspace-init reify > should print helper info 1`] = ` Array [ Array [ String( - This utility will walk you through creating a package.json file. - It only covers the most common items, and tries to guess sensible defaults. - - See \`npm help init\` for definitive documentation on these fields - and exactly what they do. - - Use \`npm install \` afterwards to install a package and - save it as a dependency in the package.json file. - Press ^C at any time to quit. + added 1 package in 100ms ), ], ] ` -exports[`test/lib/commands/init.js TAP workspaces no args, existing folder > should print helper info 1`] = ` -Array [] +exports[`test/lib/commands/init.js TAP workspaces post workspace-init reify > should reify tree on init ws complete 1`] = ` +{ + "name": "top-level", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "top-level", + "workspaces": [ + "a" + ] + }, + "a": { + "version": "1.0.0", + "license": "ISC", + "devDependencies": {} + }, + "node_modules/a": { + "resolved": "a", + "link": true + } + }, + "dependencies": { + "a": { + "version": "file:a" + } + } +} + ` exports[`test/lib/commands/init.js TAP workspaces with arg but missing workspace folder > should print helper info 1`] = ` diff --git a/deps/npm/tap-snapshots/test/lib/load-all-commands.js.test.cjs b/deps/npm/tap-snapshots/test/lib/load-all-commands.js.test.cjs index b8c274b085a7a5..802fa8de935166 100644 --- a/deps/npm/tap-snapshots/test/lib/load-all-commands.js.test.cjs +++ b/deps/npm/tap-snapshots/test/lib/load-all-commands.js.test.cjs @@ -33,6 +33,7 @@ npm adduser Options: [--registry ] [--scope <@scope>] +[--auth-type ] aliases: login, add-user @@ -396,7 +397,7 @@ npm init [<@scope>/] (same as \`npx [<@scope>/]create-\`) Options: [-y|--yes] [-f|--force] [-w|--workspace [-w|--workspace ...]] -[-ws|--workspaces] [--include-workspace-root] +[-ws|--workspaces] [--no-workspaces-update] [--include-workspace-root] aliases: create, innit @@ -523,6 +524,7 @@ npm adduser Options: [--registry ] [--scope <@scope>] +[--auth-type ] aliases: login, add-user diff --git a/deps/npm/tap-snapshots/test/lib/npm.js.test.cjs b/deps/npm/tap-snapshots/test/lib/npm.js.test.cjs index c7c75ce84b6685..d08935a14d1772 100644 --- a/deps/npm/tap-snapshots/test/lib/npm.js.test.cjs +++ b/deps/npm/tap-snapshots/test/lib/npm.js.test.cjs @@ -190,6 +190,7 @@ All commands: Options: [--registry ] [--scope <@scope>] + [--auth-type ] aliases: login, add-user @@ -486,7 +487,7 @@ All commands: Options: [-y|--yes] [-f|--force] [-w|--workspace [-w|--workspace ...]] - [-ws|--workspaces] [--include-workspace-root] + [-ws|--workspaces] [--no-workspaces-update] [--include-workspace-root] aliases: create, innit @@ -601,6 +602,7 @@ All commands: Options: [--registry ] [--scope <@scope>] + [--auth-type ] aliases: login, add-user diff --git a/deps/npm/tap-snapshots/test/lib/utils/config/definitions.js.test.cjs b/deps/npm/tap-snapshots/test/lib/utils/config/definitions.js.test.cjs index b12dccdb76c317..33d6e4fb7a00f7 100644 --- a/deps/npm/tap-snapshots/test/lib/utils/config/definitions.js.test.cjs +++ b/deps/npm/tap-snapshots/test/lib/utils/config/definitions.js.test.cjs @@ -253,11 +253,13 @@ exports[`test/lib/utils/config/definitions.js TAP > config description for auth- #### \`auth-type\` * Default: "legacy" -* Type: "legacy", "sso", "saml", or "oauth" -* DEPRECATED: This method of SSO/SAML/OAuth is deprecated and will be removed - in a future version of npm in favor of web-based login. +* Type: "legacy", "webauthn", "sso", "saml", or "oauth" +* DEPRECATED: The SSO/SAML/OAuth methods are deprecated and will be removed in + a future version of npm in favor of web-based login. What authentication strategy to use with \`adduser\`/\`login\`. + +Pass \`webauthn\` to use a web-based login. ` exports[`test/lib/utils/config/definitions.js TAP > config description for before 1`] = ` @@ -731,8 +733,6 @@ exports[`test/lib/utils/config/definitions.js TAP > config description for globa * Default: false * Type: Boolean -* DEPRECATED: \`--global\`, \`--local\` are deprecated. Use \`--location=global\` - instead. Operates in "global" mode, so that packages are installed into the \`prefix\` folder instead of the current working directory. See diff --git a/deps/npm/tap-snapshots/test/lib/utils/config/describe-all.js.test.cjs b/deps/npm/tap-snapshots/test/lib/utils/config/describe-all.js.test.cjs index cacbe96a74f351..77f2c876841ede 100644 --- a/deps/npm/tap-snapshots/test/lib/utils/config/describe-all.js.test.cjs +++ b/deps/npm/tap-snapshots/test/lib/utils/config/describe-all.js.test.cjs @@ -560,6 +560,23 @@ results in no commit being made at all. +#### \`global\` + +* Default: false +* Type: Boolean + +Operates in "global" mode, so that packages are installed into the \`prefix\` +folder instead of the current working directory. See +[folders](/configuring-npm/folders) for more on the differences in behavior. + +* packages are installed into the \`{prefix}/lib/node_modules\` folder, instead + of the current working directory. +* bin files are linked to \`{prefix}/bin\` +* man pages are linked to \`{prefix}/share/man\` + + + + #### \`global-style\` * Default: false @@ -1764,12 +1781,14 @@ When set to \`dev\` or \`development\`, this is an alias for \`--include=dev\`. #### \`auth-type\` * Default: "legacy" -* Type: "legacy", "sso", "saml", or "oauth" -* DEPRECATED: This method of SSO/SAML/OAuth is deprecated and will be removed - in a future version of npm in favor of web-based login. +* Type: "legacy", "webauthn", "sso", "saml", or "oauth" +* DEPRECATED: The SSO/SAML/OAuth methods are deprecated and will be removed in + a future version of npm in favor of web-based login. What authentication strategy to use with \`adduser\`/\`login\`. +Pass \`webauthn\` to use a web-based login. + @@ -1806,25 +1825,6 @@ Alias for \`--include=dev\`. -#### \`global\` - -* Default: false -* Type: Boolean -* DEPRECATED: \`--global\`, \`--local\` are deprecated. Use \`--location=global\` - instead. - -Operates in "global" mode, so that packages are installed into the \`prefix\` -folder instead of the current working directory. See -[folders](/configuring-npm/folders) for more on the differences in behavior. - -* packages are installed into the \`{prefix}/lib/node_modules\` folder, instead - of the current working directory. -* bin files are linked to \`{prefix}/bin\` -* man pages are linked to \`{prefix}/share/man\` - - - - #### \`init.author.email\` * Default: "" diff --git a/deps/npm/test/lib/commands/init.js b/deps/npm/test/lib/commands/init.js index 82e7e0524cee9b..32816adbc272ee 100644 --- a/deps/npm/test/lib/commands/init.js +++ b/deps/npm/test/lib/commands/init.js @@ -288,6 +288,7 @@ t.test('workspaces', t => { t.teardown(() => { npm._mockOutputs.length = 0 }) + npm._mockOutputs.length = 0 npm.localPrefix = t.testdir({ 'package.json': JSON.stringify({ name: 'top-level', @@ -306,6 +307,39 @@ t.test('workspaces', t => { t.matchSnapshot(npm._mockOutputs, 'should print helper info') }) + t.test('post workspace-init reify', async t => { + const _consolelog = console.log + console.log = () => null + t.teardown(() => { + console.log = _consolelog + npm._mockOutputs.length = 0 + delete npm.flatOptions.workspacesUpdate + }) + npm.started = Date.now() + npm._mockOutputs.length = 0 + npm.flatOptions.workspacesUpdate = true + npm.localPrefix = t.testdir({ + 'package.json': JSON.stringify({ + name: 'top-level', + }), + }) + + const Init = t.mock('../../../lib/commands/init.js', { + ...mocks, + 'init-package-json': (dir, initFile, config, cb) => { + t.equal(dir, resolve(npm.localPrefix, 'a'), 'should use the ws path') + return require('init-package-json')(dir, initFile, config, cb) + }, + }) + const init = new Init(npm) + await init.execWorkspaces([], ['a']) + const output = npm._mockOutputs.map(arr => arr.map(i => i.replace(/[0-9]*ms$/, '100ms'))) + t.matchSnapshot(output, 'should print helper info') + const lockFilePath = resolve(npm.localPrefix, 'package-lock.json') + const lockFile = fs.readFileSync(lockFilePath, { encoding: 'utf8' }) + t.matchSnapshot(lockFile, 'should reify tree on init ws complete') + }) + t.test('no args, existing folder', async t => { t.teardown(() => { npm._mockOutputs.length = 0