diff --git a/.github/workflows/ci-docs.yml b/.github/workflows/ci-docs.yml index dfa32c0ee9ed4..ef583ed2332a7 100644 --- a/.github/workflows/ci-docs.yml +++ b/.github/workflows/ci-docs.yml @@ -29,6 +29,7 @@ jobs: os: ubuntu-latest shell: bash node-version: + - 18.0.0 runs-on: ${{ matrix.platform.os }} defaults: run: diff --git a/.github/workflows/post-dependabot.yml b/.github/workflows/post-dependabot.yml index f488974da3f63..e2411dba05bb3 100644 --- a/.github/workflows/post-dependabot.yml +++ b/.github/workflows/post-dependabot.yml @@ -19,7 +19,7 @@ jobs: - name: Checkout uses: actions/checkout@v3 with: - ref: ${{ github.event.pull_request.head_ref }} + ref: ${{ github.event.pull_request.head.ref }} - name: Setup Git User run: | git config --global user.email "npm-cli+bot@github.com" @@ -43,10 +43,13 @@ jobs: if: contains(steps.metadata.outputs.dependency-names, '@npmcli/template-oss') id: flags run: | - if [[ "${{ steps.metadata.outputs.directory }}" == "/" ]]; then + dependabot_dir="${{ steps.metadata.outputs.directory }}" + if [[ "$dependabot_dir" == "/" ]]; then echo "::set-output name=workspace::-iwr" else - echo "::set-output name=workspace::-w ${{ steps.metadata.outputs.directory }}" + # strip leading slash from directory so it works as a + # a path to the workspace flag + echo "::set-output name=workspace::-w ${dependabot_dir#/}" fi - name: Apply Changes @@ -83,7 +86,7 @@ jobs: # If the previous step failed, then reset the commit and remove any workflow changes # and attempt to commit and push again. This is helpful because we will have a commit # with the correct prefix that we can then --amend with @npmcli/stafftools later. - - name: Commit and push all changes except workflows + - name: Push All Changes Except Workflows if: steps.apply.outputs.changes && steps.push-all.outcome == 'failure' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 87d95eeeaad99..8db7ed9d35b60 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -126,6 +126,7 @@ jobs: RELEASE_COMMENT_ID: ${{ needs.release.outputs.comment-id }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | + node . exec --offline -- template-oss-release-manager node . run rp-pull-request --ignore-scripts -ws -iwr --if-present - name: Commit id: commit diff --git a/.release-please-manifest.json b/.release-please-manifest.json index b36c4d29f6a2d..53a1f52c1e2a9 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,14 +1,14 @@ { - ".": "9.0.0-pre.3", - "workspaces/arborist": "6.0.0-pre.3", + ".": "9.0.0-pre.4", + "workspaces/arborist": "6.0.0-pre.4", "workspaces/libnpmaccess": "7.0.0-pre.1", - "workspaces/libnpmdiff": "5.0.0-pre.1", - "workspaces/libnpmexec": "5.0.0-pre.3", - "workspaces/libnpmfund": "4.0.0-pre.3", + "workspaces/libnpmdiff": "5.0.0-pre.2", + "workspaces/libnpmexec": "5.0.0-pre.4", + "workspaces/libnpmfund": "4.0.0-pre.4", "workspaces/libnpmhook": "9.0.0-pre.0", "workspaces/libnpmorg": "5.0.0-pre.0", - "workspaces/libnpmpack": "5.0.0-pre.1", - "workspaces/libnpmpublish": "7.0.0-pre.1", + "workspaces/libnpmpack": "5.0.0-pre.2", + "workspaces/libnpmpublish": "7.0.0-pre.2", "workspaces/libnpmsearch": "6.0.0-pre.0", "workspaces/libnpmteam": "5.0.0-pre.0", "workspaces/libnpmversion": "4.0.0-pre.0" diff --git a/AUTHORS b/AUTHORS index 0742e96b5462d..8a84d86f4c6d3 100644 --- a/AUTHORS +++ b/AUTHORS @@ -858,3 +858,5 @@ Hafizur046 Michael Rienstra Juan Heyns Michał Kurowski +giovanniPepi +Winter diff --git a/CHANGELOG.md b/CHANGELOG.md index 56800101dc402..0ffd1653ffc80 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,37 @@ # Changelog +## [9.0.0-pre.4](https://github.com/npm/cli/compare/v9.0.0-pre.3...v9.0.0-pre.4) (2022-10-05) + +### Features + +* [`9609e9e`](https://github.com/npm/cli/commit/9609e9eed87c735f0319ac0af265f4d406cbf800) [#5605](https://github.com/npm/cli/pull/5605) use v3 lockfiles by default (#5605) (@fritzy) + +### Bug Fixes + +* [`e4e8ae2`](https://github.com/npm/cli/commit/e4e8ae20aef9e27e57282e87e8757d5b364abb39) libnpmpack: obey foregroundScripts (@winterqt) +* [`07fabc9`](https://github.com/npm/cli/commit/07fabc93007495f0926f4dd24b4350c07d92887d) [#5633](https://github.com/npm/cli/pull/5633) `npm link` should override `--install-links` (#5633) (@fritzy) +* [`02fcbb6`](https://github.com/npm/cli/commit/02fcbb67e6b7cf78cd6dc996570b0ba58132de22) [#5634](https://github.com/npm/cli/pull/5634) ensure Arborist constructor gets passed around everywhere for pacote (#5634) (@nlf) + +### Documentation + +* [`f37caad`](https://github.com/npm/cli/commit/f37caad9e92c50ae949014f6bee6375d9299fb39) [#5606](https://github.com/npm/cli/pull/5606) accurately describe install-links effect on relative paths (#5606) (@lukekarrys) +* [`97c32ed`](https://github.com/npm/cli/commit/97c32ed24d8fa2edcdbb9448839a1f1c9d8fb86f) [#5637](https://github.com/npm/cli/pull/5637) remove link to cache command (#5637) (@wraithgar) +* [`130bc9f`](https://github.com/npm/cli/commit/130bc9fb31fcff956765493a9e3cec668867c30e) [#5626](https://github.com/npm/cli/pull/5626) Remove circular reference (#5626) (@giovanniPepi) + +### Dependencies + +* [`5344d2c`](https://github.com/npm/cli/commit/5344d2ca9ffd1f6db473fd58b46b50179f899ff5) [#5644](https://github.com/npm/cli/pull/5644) `pacote@14.0.0` +* [`6a43b31`](https://github.com/npm/cli/commit/6a43b31eab8bd392ed684d2f906259ddfe0f26b5) `@npmcli/metavuln-calculator@4.0.0` +* [`501f8ca`](https://github.com/npm/cli/commit/501f8ca47bb042f19cdfca4026970caf7160f7f6) [#5640](https://github.com/npm/cli/pull/5640) `semver@7.3.8` (#5640) +* [`8b072dc`](https://github.com/npm/cli/commit/8b072dc113190ed49b296a5f02650b7d8cbf384a) [#5639](https://github.com/npm/cli/pull/5639) `@npmcli/ci-detect@3.0.0` (#5639) +* [`1ebbb44`](https://github.com/npm/cli/commit/1ebbb4454c09891ca2c9f9a11432c4a10ccf8c32) [#5638](https://github.com/npm/cli/pull/5638) `npm-profile@7.0.0` (#5638) +* [Workspace](https://github.com/npm/cli/compare/arborist-v6.0.0-pre.3...arborist-v6.0.0-pre.4): `@npmcli/arborist@6.0.0-pre.4` +* [Workspace](https://github.com/npm/cli/compare/libnpmdiff-v5.0.0-pre.1...libnpmdiff-v5.0.0-pre.2): `libnpmdiff@5.0.0-pre.2` +* [Workspace](https://github.com/npm/cli/compare/libnpmexec-v5.0.0-pre.3...libnpmexec-v5.0.0-pre.4): `libnpmexec@5.0.0-pre.4` +* [Workspace](https://github.com/npm/cli/compare/libnpmfund-v4.0.0-pre.3...libnpmfund-v4.0.0-pre.4): `libnpmfund@4.0.0-pre.4` +* [Workspace](https://github.com/npm/cli/compare/libnpmpack-v5.0.0-pre.1...libnpmpack-v5.0.0-pre.2): `libnpmpack@5.0.0-pre.2` +* [Workspace](https://github.com/npm/cli/compare/libnpmpublish-v7.0.0-pre.1...libnpmpublish-v7.0.0-pre.2): `libnpmpublish@7.0.0-pre.2` + ## [9.0.0-pre.3](https://github.com/npm/cli/compare/v9.0.0-pre.2...v9.0.0-pre.3) (2022-09-30) ### ⚠️ BREAKING CHANGES diff --git a/DEPENDENCIES.md b/DEPENDENCIES.md index 0ce063561c744..c945f9e18637f 100644 --- a/DEPENDENCIES.md +++ b/DEPENDENCIES.md @@ -32,6 +32,7 @@ graph LR; libnpmdiff-->npmcli-template-oss["@npmcli/template-oss"]; libnpmdiff-->pacote; libnpmexec-->bin-links; + libnpmexec-->minify-registry-metadata; libnpmexec-->npm-package-arg; libnpmexec-->npmcli-arborist["@npmcli/arborist"]; libnpmexec-->npmcli-ci-detect["@npmcli/ci-detect"]; @@ -74,6 +75,7 @@ graph LR; libnpmteam-->npm-registry-fetch; libnpmteam-->npmcli-eslint-config["@npmcli/eslint-config"]; libnpmteam-->npmcli-template-oss["@npmcli/template-oss"]; + libnpmversion-->json-parse-even-better-errors; libnpmversion-->npmcli-eslint-config["@npmcli/eslint-config"]; libnpmversion-->npmcli-git["@npmcli/git"]; libnpmversion-->npmcli-run-script["@npmcli/run-script"]; @@ -92,6 +94,7 @@ graph LR; npm-->hosted-git-info; npm-->ini; npm-->init-package-json; + npm-->json-parse-even-better-errors; npm-->libnpmaccess; npm-->libnpmdiff; npm-->libnpmexec; @@ -108,6 +111,8 @@ graph LR; npm-->npm-audit-report; npm-->npm-install-checks; npm-->npm-package-arg; + npm-->npm-packlist; + npm-->npm-pick-manifest; npm-->npm-profile; npm-->npm-registry-fetch; npm-->npm-user-validate; @@ -116,6 +121,7 @@ graph LR; npm-->npmcli-config["@npmcli/config"]; npm-->npmcli-eslint-config["@npmcli/eslint-config"]; npm-->npmcli-fs["@npmcli/fs"]; + npm-->npmcli-git["@npmcli/git"]; npm-->npmcli-map-workspaces["@npmcli/map-workspaces"]; npm-->npmcli-package-json["@npmcli/package-json"]; npm-->npmcli-promise-spawn["@npmcli/promise-spawn"]; @@ -141,6 +147,10 @@ graph LR; npm-package-arg-->semver; npm-package-arg-->validate-npm-package-name; npm-packlist-->ignore-walk; + npm-pick-manifest-->npm-install-checks; + npm-pick-manifest-->npm-normalize-package-bin; + npm-pick-manifest-->npm-package-arg; + npm-pick-manifest-->semver; npm-profile-->npm-registry-fetch; npm-profile-->proc-log; npm-registry-fetch-->make-fetch-happen; @@ -149,9 +159,12 @@ graph LR; npm-registry-fetch-->proc-log; npmcli-arborist-->bin-links; npmcli-arborist-->cacache; + npmcli-arborist-->json-parse-even-better-errors; + npmcli-arborist-->minify-registry-metadata; npmcli-arborist-->nopt; npmcli-arborist-->npm-install-checks; npmcli-arborist-->npm-package-arg; + npmcli-arborist-->npm-pick-manifest; npmcli-arborist-->npm-registry-fetch; npmcli-arborist-->npmcli-eslint-config["@npmcli/eslint-config"]; npmcli-arborist-->npmcli-installed-package-contents["@npmcli/installed-package-contents"]; @@ -180,6 +193,7 @@ graph LR; npmcli-config-->read-package-json-fast; npmcli-config-->semver; npmcli-fs-->semver; + npmcli-git-->npm-pick-manifest; npmcli-git-->npmcli-promise-spawn["@npmcli/promise-spawn"]; npmcli-git-->proc-log; npmcli-git-->semver; @@ -188,8 +202,10 @@ graph LR; npmcli-map-workspaces-->npmcli-name-from-folder["@npmcli/name-from-folder"]; npmcli-map-workspaces-->read-package-json-fast; npmcli-metavuln-calculator-->cacache; + npmcli-metavuln-calculator-->json-parse-even-better-errors; npmcli-metavuln-calculator-->pacote; npmcli-metavuln-calculator-->semver; + npmcli-package-json-->json-parse-even-better-errors; npmcli-promise-spawn-->infer-owner; npmcli-query-->npm-package-arg; npmcli-query-->semver; @@ -203,6 +219,7 @@ graph LR; pacote-->infer-owner; pacote-->npm-package-arg; pacote-->npm-packlist; + pacote-->npm-pick-manifest; pacote-->npm-registry-fetch; pacote-->npmcli-git["@npmcli/git"]; pacote-->npmcli-installed-package-contents["@npmcli/installed-package-contents"]; @@ -212,10 +229,13 @@ graph LR; pacote-->read-package-json-fast; pacote-->read-package-json; pacote-->ssri; + parse-conflict-json-->json-parse-even-better-errors; promzard-->read; read-->mute-stream; + read-package-json-->json-parse-even-better-errors; read-package-json-->normalize-package-data; read-package-json-->npm-normalize-package-bin; + read-package-json-fast-->json-parse-even-better-errors; read-package-json-fast-->npm-normalize-package-bin; readdir-scoped-modules-->dezalgo; unique-filename-->unique-slug; @@ -224,6 +244,8 @@ graph LR; ## all dependencies ```mermaid graph LR; + acorn-globals-->acorn-walk; + acorn-globals-->acorn; agent-base-->debug; agentkeepalive-->debug; agentkeepalive-->depd; @@ -233,14 +255,92 @@ graph LR; ansi-styles-->color-convert; are-we-there-yet-->delegates; are-we-there-yet-->readable-stream; + babel-code-frame-->babel-highlight["@babel/highlight"]; + babel-core-->babel-code-frame["@babel/code-frame"]; + babel-core-->babel-generator["@babel/generator"]; + babel-core-->babel-helper-module-transforms["@babel/helper-module-transforms"]; + babel-core-->babel-helpers["@babel/helpers"]; + babel-core-->babel-parser["@babel/parser"]; + babel-core-->babel-template["@babel/template"]; + babel-core-->babel-traverse["@babel/traverse"]; + babel-core-->babel-types["@babel/types"]; + babel-core-->convert-source-map; + babel-core-->debug; + babel-core-->gensync; + babel-core-->json5; + babel-core-->lodash; + babel-core-->resolve; + babel-core-->semver; + babel-core-->source-map; + babel-generator-->babel-types["@babel/types"]; + babel-generator-->jsesc; + babel-generator-->source-map; + babel-helper-environment-visitor-->babel-types["@babel/types"]; + babel-helper-function-name-->babel-helper-get-function-arity["@babel/helper-get-function-arity"]; + babel-helper-function-name-->babel-template["@babel/template"]; + babel-helper-function-name-->babel-types["@babel/types"]; + babel-helper-get-function-arity-->babel-types["@babel/types"]; + babel-helper-hoist-variables-->babel-types["@babel/types"]; + babel-helper-module-imports-->babel-types["@babel/types"]; + babel-helper-module-transforms-->babel-helper-environment-visitor["@babel/helper-environment-visitor"]; + babel-helper-module-transforms-->babel-helper-module-imports["@babel/helper-module-imports"]; + babel-helper-module-transforms-->babel-helper-simple-access["@babel/helper-simple-access"]; + babel-helper-module-transforms-->babel-helper-split-export-declaration["@babel/helper-split-export-declaration"]; + babel-helper-module-transforms-->babel-helper-validator-identifier["@babel/helper-validator-identifier"]; + babel-helper-module-transforms-->babel-template["@babel/template"]; + babel-helper-module-transforms-->babel-traverse["@babel/traverse"]; + babel-helper-module-transforms-->babel-types["@babel/types"]; + babel-helper-simple-access-->babel-types["@babel/types"]; + babel-helper-split-export-declaration-->babel-types["@babel/types"]; + babel-helpers-->babel-template["@babel/template"]; + babel-helpers-->babel-traverse["@babel/traverse"]; + babel-helpers-->babel-types["@babel/types"]; + babel-highlight-->babel-helper-validator-identifier["@babel/helper-validator-identifier"]; + babel-highlight-->chalk; + babel-highlight-->js-tokens; + babel-plugin-apply-mdx-type-prop-->babel-core["@babel/core"]; + babel-plugin-apply-mdx-type-prop-->babel-helper-plugin-utils["@babel/helper-plugin-utils"]; + babel-plugin-apply-mdx-type-prop-->mdx-js-util["@mdx-js/util"]; + babel-plugin-extract-import-names-->babel-helper-plugin-utils["@babel/helper-plugin-utils"]; + babel-plugin-proposal-object-rest-spread-->babel-core["@babel/core"]; + babel-plugin-proposal-object-rest-spread-->babel-helper-plugin-utils["@babel/helper-plugin-utils"]; + babel-plugin-proposal-object-rest-spread-->babel-plugin-syntax-object-rest-spread["@babel/plugin-syntax-object-rest-spread"]; + babel-plugin-proposal-object-rest-spread-->babel-plugin-transform-parameters["@babel/plugin-transform-parameters"]; + babel-plugin-syntax-jsx-->babel-core["@babel/core"]; + babel-plugin-syntax-jsx-->babel-helper-plugin-utils["@babel/helper-plugin-utils"]; + babel-plugin-syntax-object-rest-spread-->babel-core["@babel/core"]; + babel-plugin-syntax-object-rest-spread-->babel-helper-plugin-utils["@babel/helper-plugin-utils"]; + babel-plugin-transform-parameters-->babel-core["@babel/core"]; + babel-plugin-transform-parameters-->babel-helper-plugin-utils["@babel/helper-plugin-utils"]; + babel-template-->babel-code-frame["@babel/code-frame"]; + babel-template-->babel-parser["@babel/parser"]; + babel-template-->babel-types["@babel/types"]; + babel-traverse-->babel-code-frame["@babel/code-frame"]; + babel-traverse-->babel-generator["@babel/generator"]; + babel-traverse-->babel-helper-environment-visitor["@babel/helper-environment-visitor"]; + babel-traverse-->babel-helper-function-name["@babel/helper-function-name"]; + babel-traverse-->babel-helper-hoist-variables["@babel/helper-hoist-variables"]; + babel-traverse-->babel-helper-split-export-declaration["@babel/helper-split-export-declaration"]; + babel-traverse-->babel-parser["@babel/parser"]; + babel-traverse-->babel-types["@babel/types"]; + babel-traverse-->debug; + babel-traverse-->globals; + babel-types-->babel-helper-validator-identifier["@babel/helper-validator-identifier"]; + babel-types-->to-fast-properties; bin-links-->cmd-shim; bin-links-->mkdirp-infer-owner; bin-links-->npm-normalize-package-bin; bin-links-->read-cmd-shim; bin-links-->rimraf; bin-links-->write-file-atomic; + bindings-->file-uri-to-path; + bl-->buffer; + bl-->inherits; + bl-->readable-stream; brace-expansion-->balanced-match; brace-expansion-->concat-map; + buffer-->base64-js; + buffer-->ieee754; builtins-->semver; cacache-->chownr; cacache-->fs-minipass; @@ -261,24 +361,37 @@ graph LR; cacache-->tar; cacache-->unique-filename; chalk-->ansi-styles; + chalk-->escape-string-regexp; chalk-->supports-color; cidr-regex-->ip-regex; cli-columns-->string-width; cli-columns-->strip-ansi; cli-table3-->colors-colors["@colors/colors"]; cli-table3-->string-width; + cmark-gfm-->bindings; + cmark-gfm-->node-addon-api; + cmark-gfm-->prebuild-install; cmd-shim-->mkdirp-infer-owner; color-convert-->color-name; columnify-->strip-ansi; columnify-->wcwidth; + combined-stream-->delayed-stream; + convert-source-map-->safe-buffer; + cssstyle-->cssom; + data-urls-->abab; + data-urls-->whatwg-mimetype; + data-urls-->whatwg-url; debug-->ms; + decompress-response-->mimic-response; defaults-->clone; + detab-->repeat-string; dezalgo-->asap; dezalgo-->wrappy; docs-->cmark-gfm; docs-->jsdom; docs-->marked-man; docs-->mdx-js-mdx["@mdx-js/mdx"]; + docs-->mkdirp; docs-->npmcli-eslint-config["@npmcli/eslint-config"]; docs-->npmcli-fs["@npmcli/fs"]; docs-->npmcli-promise-spawn["@npmcli/promise-spawn"]; @@ -286,12 +399,22 @@ graph LR; docs-->tap; docs-->which; docs-->yaml; + domexception-->webidl-conversions; encoding-->iconv-lite; + end-of-stream-->once; + escodegen-->esprima; + escodegen-->estraverse; + escodegen-->esutils; + escodegen-->optionator; + escodegen-->source-map; + form-data-->asynckit; + form-data-->combined-stream; + form-data-->mime-types; fs-minipass-->minipass; gauge-->aproba; - gauge-->color-support; gauge-->console-control-strings; gauge-->has-unicode; + gauge-->object-assign; gauge-->signal-exit; gauge-->string-width; gauge-->strip-ansi; @@ -303,7 +426,41 @@ graph LR; glob-->once; glob-->path-is-absolute; has-->function-bind; + hast-to-hyperscript-->comma-separated-tokens; + hast-to-hyperscript-->property-information; + hast-to-hyperscript-->space-separated-tokens; + hast-to-hyperscript-->style-to-object; + hast-to-hyperscript-->types-unist["@types/unist"]; + hast-to-hyperscript-->unist-util-is; + hast-to-hyperscript-->web-namespaces; + hast-util-from-parse5-->hastscript; + hast-util-from-parse5-->property-information; + hast-util-from-parse5-->types-parse5["@types/parse5"]; + hast-util-from-parse5-->vfile-location; + hast-util-from-parse5-->vfile; + hast-util-from-parse5-->web-namespaces; + hast-util-raw-->hast-util-from-parse5; + hast-util-raw-->hast-util-to-parse5; + hast-util-raw-->html-void-elements; + hast-util-raw-->parse5; + hast-util-raw-->types-hast["@types/hast"]; + hast-util-raw-->unist-util-position; + hast-util-raw-->vfile; + hast-util-raw-->web-namespaces; + hast-util-raw-->xtend; + hast-util-raw-->zwitch; + hast-util-to-parse5-->hast-to-hyperscript; + hast-util-to-parse5-->property-information; + hast-util-to-parse5-->web-namespaces; + hast-util-to-parse5-->xtend; + hast-util-to-parse5-->zwitch; + hastscript-->comma-separated-tokens; + hastscript-->hast-util-parse-selector; + hastscript-->property-information; + hastscript-->space-separated-tokens; + hastscript-->types-hast["@types/hast"]; hosted-git-info-->lru-cache; + html-encoding-sniffer-->whatwg-encoding; http-proxy-agent-->agent-base; http-proxy-agent-->debug; http-proxy-agent-->tootallnate-once["@tootallnate/once"]; @@ -321,8 +478,41 @@ graph LR; init-package-json-->semver; init-package-json-->validate-npm-package-license; init-package-json-->validate-npm-package-name; + is-alphanumerical-->is-alphabetical; + is-alphanumerical-->is-decimal; is-cidr-->cidr-regex; is-core-module-->has; + is-fullwidth-code-point-->number-is-nan; + jsdom-->abab; + jsdom-->acorn-globals; + jsdom-->acorn; + jsdom-->canvas; + jsdom-->cssom; + jsdom-->cssstyle; + jsdom-->data-urls; + jsdom-->decimal.js; + jsdom-->domexception; + jsdom-->escodegen; + jsdom-->form-data; + jsdom-->html-encoding-sniffer; + jsdom-->http-proxy-agent; + jsdom-->https-proxy-agent; + jsdom-->is-potential-custom-element-name; + jsdom-->nwsapi; + jsdom-->parse5; + jsdom-->saxes; + jsdom-->symbol-tree; + jsdom-->tough-cookie; + jsdom-->w3c-hr-time; + jsdom-->w3c-xmlserializer; + jsdom-->webidl-conversions; + jsdom-->whatwg-encoding; + jsdom-->whatwg-mimetype; + jsdom-->whatwg-url; + jsdom-->ws; + jsdom-->xml-name-validator; + levn-->prelude-ls; + levn-->type-check; libnpmaccess-->nock; libnpmaccess-->npm-package-arg; libnpmaccess-->npm-registry-fetch; @@ -385,6 +575,7 @@ graph LR; libnpmpack-->npmcli-run-script["@npmcli/run-script"]; libnpmpack-->npmcli-template-oss["@npmcli/template-oss"]; libnpmpack-->pacote; + libnpmpack-->spawk; libnpmpack-->tap; libnpmpublish-->libnpmpack; libnpmpublish-->lodash.clonedeep; @@ -434,6 +625,37 @@ graph LR; make-fetch-happen-->promise-retry; make-fetch-happen-->socks-proxy-agent; make-fetch-happen-->ssri; + marked-man-->marked; + mdast-squeeze-paragraphs-->unist-util-remove; + mdast-util-definitions-->unist-util-visit; + mdast-util-to-hast-->mdast-util-definitions; + mdast-util-to-hast-->mdurl; + mdast-util-to-hast-->types-mdast["@types/mdast"]; + mdast-util-to-hast-->types-unist["@types/unist"]; + mdast-util-to-hast-->unist-builder; + mdast-util-to-hast-->unist-util-generated; + mdast-util-to-hast-->unist-util-position; + mdast-util-to-hast-->unist-util-visit; + mdx-js-mdx-->babel-core["@babel/core"]; + mdx-js-mdx-->babel-plugin-apply-mdx-type-prop; + mdx-js-mdx-->babel-plugin-extract-import-names; + mdx-js-mdx-->babel-plugin-syntax-jsx["@babel/plugin-syntax-jsx"]; + mdx-js-mdx-->babel-plugin-syntax-object-rest-spread["@babel/plugin-syntax-object-rest-spread"]; + mdx-js-mdx-->camelcase-css; + mdx-js-mdx-->detab; + mdx-js-mdx-->hast-util-raw; + mdx-js-mdx-->lodash.uniq; + mdx-js-mdx-->mdast-util-to-hast; + mdx-js-mdx-->mdx-js-util["@mdx-js/util"]; + mdx-js-mdx-->remark-footnotes; + mdx-js-mdx-->remark-mdx; + mdx-js-mdx-->remark-parse; + mdx-js-mdx-->remark-squeeze-paragraphs; + mdx-js-mdx-->style-to-object; + mdx-js-mdx-->unified; + mdx-js-mdx-->unist-builder; + mdx-js-mdx-->unist-util-visit; + mime-types-->mime-db; minimatch-->brace-expansion; minipass-->yallist; minipass-collect-->minipass; @@ -451,6 +673,7 @@ graph LR; mkdirp-infer-owner-->chownr; mkdirp-infer-owner-->infer-owner; mkdirp-infer-owner-->mkdirp; + node-abi-->semver; node-gyp-->env-paths; node-gyp-->glob; node-gyp-->graceful-fs; @@ -510,6 +733,7 @@ graph LR; npm-->npm-audit-report; npm-->npm-install-checks; npm-->npm-package-arg; + npm-->npm-packlist; npm-->npm-pick-manifest; npm-->npm-profile; npm-->npm-registry-fetch; @@ -519,13 +743,13 @@ graph LR; npm-->npmcli-config["@npmcli/config"]; npm-->npmcli-eslint-config["@npmcli/eslint-config"]; npm-->npmcli-fs["@npmcli/fs"]; + npm-->npmcli-git["@npmcli/git"]; npm-->npmcli-map-workspaces["@npmcli/map-workspaces"]; npm-->npmcli-package-json["@npmcli/package-json"]; npm-->npmcli-promise-spawn["@npmcli/promise-spawn"]; npm-->npmcli-run-script["@npmcli/run-script"]; npm-->npmcli-template-oss["@npmcli/template-oss"]; npm-->npmlog; - npm-->octokit-rest["@octokit/rest"]; npm-->opener; npm-->p-map; npm-->pacote; @@ -661,6 +885,12 @@ graph LR; npmlog-->gauge; npmlog-->set-blocking; once-->wrappy; + optionator-->deep-is; + optionator-->fast-levenshtein; + optionator-->levn; + optionator-->prelude-ls; + optionator-->type-check; + optionator-->word-wrap; p-map-->aggregate-error; pacote-->cacache; pacote-->chownr; @@ -686,11 +916,37 @@ graph LR; parse-conflict-json-->json-parse-even-better-errors; parse-conflict-json-->just-diff-apply; parse-conflict-json-->just-diff; + parse-entities-->character-entities-legacy; + parse-entities-->character-entities; + parse-entities-->character-reference-invalid; + parse-entities-->is-alphanumerical; + parse-entities-->is-decimal; + parse-entities-->is-hexadecimal; postcss-selector-parser-->cssesc; postcss-selector-parser-->util-deprecate; + prebuild-install-->detect-libc; + prebuild-install-->expand-template; + prebuild-install-->github-from-package; + prebuild-install-->minimist; + prebuild-install-->mkdirp-classic; + prebuild-install-->napi-build-utils; + prebuild-install-->node-abi; + prebuild-install-->npmlog; + prebuild-install-->pump; + prebuild-install-->rc; + prebuild-install-->simple-get; + prebuild-install-->tar-fs; + prebuild-install-->tunnel-agent; promise-retry-->err-code; promise-retry-->retry; promzard-->read; + property-information-->xtend; + pump-->end-of-stream; + pump-->once; + rc-->deep-extend; + rc-->ini; + rc-->minimist; + rc-->strip-json-comments; read-->mute-stream; read-package-json-->glob; read-package-json-->json-parse-even-better-errors; @@ -698,15 +954,51 @@ graph LR; read-package-json-->npm-normalize-package-bin; read-package-json-fast-->json-parse-even-better-errors; read-package-json-fast-->npm-normalize-package-bin; + readable-stream-->core-util-is; readable-stream-->inherits; + readable-stream-->isarray; + readable-stream-->process-nextick-args; + readable-stream-->safe-buffer; readable-stream-->string_decoder; readable-stream-->util-deprecate; readdir-scoped-modules-->debuglog; readdir-scoped-modules-->dezalgo; readdir-scoped-modules-->graceful-fs; readdir-scoped-modules-->once; + remark-mdx-->babel-core["@babel/core"]; + remark-mdx-->babel-helper-plugin-utils["@babel/helper-plugin-utils"]; + remark-mdx-->babel-plugin-proposal-object-rest-spread["@babel/plugin-proposal-object-rest-spread"]; + remark-mdx-->babel-plugin-syntax-jsx["@babel/plugin-syntax-jsx"]; + remark-mdx-->is-alphabetical; + remark-mdx-->mdx-js-util["@mdx-js/util"]; + remark-mdx-->remark-parse; + remark-mdx-->unified; + remark-parse-->ccount; + remark-parse-->collapse-white-space; + remark-parse-->is-alphabetical; + remark-parse-->is-decimal; + remark-parse-->is-whitespace-character; + remark-parse-->is-word-character; + remark-parse-->markdown-escapes; + remark-parse-->parse-entities; + remark-parse-->repeat-string; + remark-parse-->state-toggle; + remark-parse-->trim-trailing-lines; + remark-parse-->trim; + remark-parse-->unherit; + remark-parse-->unist-util-remove-position; + remark-parse-->vfile-location; + remark-parse-->xtend; + remark-squeeze-paragraphs-->mdast-squeeze-paragraphs; + resolve-->is-core-module; + resolve-->path-parse; + resolve-->supports-preserve-symlinks-flag; rimraf-->glob; + saxes-->xmlchars; semver-->lru-cache; + simple-get-->decompress-response; + simple-get-->once; + simple-get-->simple-concat; smoke-tests-->minify-registry-metadata; smoke-tests-->npmcli-eslint-config["@npmcli/eslint-config"]; smoke-tests-->npmcli-promise-spawn["@npmcli/promise-spawn"]; @@ -724,11 +1016,13 @@ graph LR; spdx-expression-parse-->spdx-exceptions; spdx-expression-parse-->spdx-license-ids; ssri-->minipass; + string-width-->code-point-at; string-width-->emoji-regex; string-width-->is-fullwidth-code-point; string-width-->strip-ansi; string_decoder-->safe-buffer; strip-ansi-->ansi-regex; + style-to-object-->inline-style-parser; supports-color-->has-flag; tar-->chownr; tar-->fs-minipass; @@ -736,16 +1030,62 @@ graph LR; tar-->minizlib; tar-->mkdirp; tar-->yallist; + tar-fs-->chownr; + tar-fs-->mkdirp-classic; + tar-fs-->pump; + tar-fs-->tar-stream; + tar-stream-->bl; + tar-stream-->end-of-stream; + tar-stream-->fs-constants; + tar-stream-->inherits; + tar-stream-->readable-stream; + tough-cookie-->psl; + tough-cookie-->punycode; + tough-cookie-->universalify; + tr46-->punycode; + tunnel-agent-->safe-buffer; + type-check-->prelude-ls; + types-hast-->types-unist["@types/unist"]; + types-mdast-->types-unist["@types/unist"]; + unherit-->inherits; + unherit-->xtend; + unified-->bail; + unified-->extend; + unified-->is-buffer; + unified-->is-plain-obj; + unified-->trough; + unified-->vfile; unique-filename-->unique-slug; unique-slug-->imurmurhash; + unist-util-remove-->unist-util-is; + unist-util-remove-position-->unist-util-visit; + unist-util-stringify-position-->types-unist["@types/unist"]; + unist-util-visit-->types-unist["@types/unist"]; + unist-util-visit-->unist-util-is; + unist-util-visit-->unist-util-visit-parents; + unist-util-visit-parents-->types-unist["@types/unist"]; + unist-util-visit-parents-->unist-util-is; validate-npm-package-license-->spdx-correct; validate-npm-package-license-->spdx-expression-parse; validate-npm-package-name-->builtins; + vfile-->is-buffer; + vfile-->types-unist["@types/unist"]; + vfile-->unist-util-stringify-position; + vfile-->vfile-message; + vfile-message-->types-unist["@types/unist"]; + vfile-message-->unist-util-stringify-position; + w3c-hr-time-->browser-process-hrtime; + w3c-xmlserializer-->xml-name-validator; wcwidth-->defaults; + whatwg-encoding-->iconv-lite; + whatwg-url-->tr46; + whatwg-url-->webidl-conversions; which-->isexe; wide-align-->string-width; write-file-atomic-->imurmurhash; write-file-atomic-->signal-exit; + ws-->bufferutil; + ws-->utf-8-validate; ``` ## npm dependency heirarchy @@ -760,8 +1100,8 @@ packages higher up the chain. - @npmcli/arborist - @npmcli/metavuln-calculator - pacote, libnpmaccess, libnpmhook, libnpmorg, libnpmsearch, libnpmteam, npm-profile - - npm-registry-fetch - - make-fetch-happen, libnpmversion, @npmcli/config, init-package-json - - @npmcli/installed-package-contents, @npmcli/map-workspaces, cacache, @npmcli/git, @npmcli/run-script, read-package-json, @npmcli/query, readdir-scoped-modules, promzard - - npm-bundled, read-package-json-fast, @npmcli/fs, unique-filename, @npmcli/promise-spawn, npm-package-arg, npm-packlist, normalize-package-data, bin-links, nopt, npm-install-checks, npmlog, dezalgo, read - - npm-normalize-package-bin, @npmcli/name-from-folder, semver, @npmcli/move-file, fs-minipass, infer-owner, ssri, unique-slug, proc-log, @npmcli/node-gyp, hosted-git-info, validate-npm-package-name, ignore-walk, minipass-fetch, @npmcli/package-json, cmd-shim, read-cmd-shim, write-file-atomic, abbrev, are-we-there-yet, gauge, parse-conflict-json, wrappy, treeverse, @npmcli/eslint-config, @npmcli/template-oss, @npmcli/disparity-colors, @npmcli/ci-detect, mute-stream, ini, npm-audit-report, npm-user-validate \ No newline at end of file + - npm-registry-fetch, libnpmversion + - @npmcli/git, make-fetch-happen, @npmcli/config, init-package-json + - @npmcli/installed-package-contents, @npmcli/map-workspaces, cacache, npm-pick-manifest, @npmcli/run-script, read-package-json, @npmcli/query, readdir-scoped-modules, promzard + - npm-bundled, read-package-json-fast, @npmcli/fs, unique-filename, @npmcli/promise-spawn, npm-install-checks, npm-package-arg, npm-packlist, normalize-package-data, @npmcli/package-json, bin-links, nopt, npmlog, parse-conflict-json, dezalgo, read + - npm-normalize-package-bin, @npmcli/name-from-folder, json-parse-even-better-errors, semver, @npmcli/move-file, fs-minipass, infer-owner, ssri, unique-slug, hosted-git-info, proc-log, validate-npm-package-name, @npmcli/node-gyp, ignore-walk, minipass-fetch, cmd-shim, read-cmd-shim, write-file-atomic, abbrev, are-we-there-yet, gauge, wrappy, treeverse, @npmcli/eslint-config, @npmcli/template-oss, minify-registry-metadata, @npmcli/disparity-colors, @npmcli/ci-detect, mute-stream, ini, npm-audit-report, npm-user-validate \ No newline at end of file diff --git a/docs/.eslintrc.local.json b/docs/.eslintrc.local.json deleted file mode 100644 index ed467baedee00..0000000000000 --- a/docs/.eslintrc.local.json +++ /dev/null @@ -1 +0,0 @@ -{ "rules": { "import/no-extraneous-dependencies": "off" } } diff --git a/docs/content/commands/npm-audit.md b/docs/content/commands/npm-audit.md index dda1c31c864c4..e08aace0163c1 100644 --- a/docs/content/commands/npm-audit.md +++ b/docs/content/commands/npm-audit.md @@ -456,9 +456,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-cache.md b/docs/content/commands/npm-cache.md index b5eddd46c05a7..68c4faff57582 100644 --- a/docs/content/commands/npm-cache.md +++ b/docs/content/commands/npm-cache.md @@ -87,8 +87,7 @@ verify`. * Default: Windows: `%LocalAppData%\npm-cache`, Posix: `~/.npm` * Type: Path -The location of npm's cache directory. See [`npm -cache`](/commands/npm-cache) +The location of npm's cache directory. diff --git a/docs/content/commands/npm-ci.md b/docs/content/commands/npm-ci.md index af6fc7fcc94e8..fee305618cca3 100644 --- a/docs/content/commands/npm-ci.md +++ b/docs/content/commands/npm-ci.md @@ -364,9 +364,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-dedupe.md b/docs/content/commands/npm-dedupe.md index da9f406d57024..4a7e0ab6b9851 100644 --- a/docs/content/commands/npm-dedupe.md +++ b/docs/content/commands/npm-dedupe.md @@ -311,9 +311,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-find-dupes.md b/docs/content/commands/npm-find-dupes.md index 590c7e2cbd438..af41f5ccb14f2 100644 --- a/docs/content/commands/npm-find-dupes.md +++ b/docs/content/commands/npm-find-dupes.md @@ -235,9 +235,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-install-ci-test.md b/docs/content/commands/npm-install-ci-test.md index 784efdcf46e95..4de56d372fefe 100644 --- a/docs/content/commands/npm-install-ci-test.md +++ b/docs/content/commands/npm-install-ci-test.md @@ -310,9 +310,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-install-test.md b/docs/content/commands/npm-install-test.md index ec69e081f9dee..4dad775e927c9 100644 --- a/docs/content/commands/npm-install-test.md +++ b/docs/content/commands/npm-install-test.md @@ -311,9 +311,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-install.md b/docs/content/commands/npm-install.md index 72bd93fff9ba8..f9d14fb338c9a 100644 --- a/docs/content/commands/npm-install.md +++ b/docs/content/commands/npm-install.md @@ -701,9 +701,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-link.md b/docs/content/commands/npm-link.md index fd6eb69e9b03c..81a31acfa0272 100644 --- a/docs/content/commands/npm-link.md +++ b/docs/content/commands/npm-link.md @@ -387,9 +387,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-ls.md b/docs/content/commands/npm-ls.md index bb7fd5cc06f79..0e01dc3409011 100644 --- a/docs/content/commands/npm-ls.md +++ b/docs/content/commands/npm-ls.md @@ -290,9 +290,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-prune.md b/docs/content/commands/npm-prune.md index 064b0e07e4e7a..6cbfc2ad438cd 100644 --- a/docs/content/commands/npm-prune.md +++ b/docs/content/commands/npm-prune.md @@ -196,9 +196,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-rebuild.md b/docs/content/commands/npm-rebuild.md index 89fbd763555a0..6851b4ddff087 100644 --- a/docs/content/commands/npm-rebuild.md +++ b/docs/content/commands/npm-rebuild.md @@ -166,9 +166,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-uninstall.md b/docs/content/commands/npm-uninstall.md index bea7112ae5719..83b0aa180c040 100644 --- a/docs/content/commands/npm-uninstall.md +++ b/docs/content/commands/npm-uninstall.md @@ -150,9 +150,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/commands/npm-update.md b/docs/content/commands/npm-update.md index 5e21bdeebbb99..985b1a9eb224e 100644 --- a/docs/content/commands/npm-update.md +++ b/docs/content/commands/npm-update.md @@ -438,9 +438,9 @@ This value is not exported to the environment for child processes. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. diff --git a/docs/content/using-npm/config.md b/docs/content/using-npm/config.md index e5d9d081feb4a..79fc84d82804b 100644 --- a/docs/content/using-npm/config.md +++ b/docs/content/using-npm/config.md @@ -307,8 +307,7 @@ See also the `strict-ssl` config. * Default: Windows: `%LocalAppData%\npm-cache`, Posix: `~/.npm` * Type: Path -The location of npm's cache directory. See [`npm -cache`](/commands/npm-cache) +The location of npm's cache directory. @@ -910,9 +909,9 @@ number, if not already set in package.json. * Default: true * Type: Boolean -When set file: protocol dependencies that exist outside of the project root -will be packed and installed as regular dependencies instead of creating a -symlink. This option has no effect on workspaces. +When set file: protocol dependencies will be packed and installed as regular +dependencies instead of creating a symlink. This option has no effect on +workspaces. @@ -1027,8 +1026,8 @@ instead of the current working directory. See #### `lockfile-version` -* Default: Version 2 if no lockfile or current lockfile version less than or - equal to 2, otherwise maintain current lockfile version +* Default: Version 3 if no lockfile, auto-converting v1 lockfiles to v3, + otherwise maintain current lockfile version. * Type: null, 1, 2, 3, "1", "2", or "3" Set the lockfile format version to be used in package-lock.json and @@ -1039,9 +1038,9 @@ is used during the install, resulting in slower and possibly less deterministic installs. Prevents lockfile churn when interoperating with older npm versions. -2: The default lockfile version used by npm version 7. Includes both the -version 1 lockfile data and version 3 lockfile data, for maximum determinism -and interoperability, at the expense of more bytes on disk. +2: The default lockfile version used by npm version 7 and 8. Includes both +the version 1 lockfile data and version 3 lockfile data, for maximum +determinism and interoperability, at the expense of more bytes on disk. 3: Only the new lockfile information introduced in npm version 7. Smaller on disk than lockfile version 2, but not interoperable with older npm versions. diff --git a/docs/package.json b/docs/package.json index adcf96d571507..eb5e16576eaab 100644 --- a/docs/package.json +++ b/docs/package.json @@ -17,18 +17,21 @@ "url": "https://github.com/npm/cli.git", "directory": "docs" }, - "devDependencies": { + "dependencies": { "@mdx-js/mdx": "^1.6.22", - "@npmcli/eslint-config": "^3.1.0", - "@npmcli/fs": "^2.1.0", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/template-oss": "4.4.1", "cmark-gfm": "^0.9.0", "jsdom": "^18.1.0", "marked-man": "^0.7.0", + "mkdirp": "^1.0.4", + "yaml": "^1.10.2" + }, + "devDependencies": { + "@npmcli/eslint-config": "^3.1.0", + "@npmcli/fs": "^2.1.0", + "@npmcli/promise-spawn": "^3.0.0", + "@npmcli/template-oss": "4.5.0", "tap": "^16.0.1", - "which": "^2.0.2", - "yaml": "^1.10.0" + "which": "^2.0.2" }, "author": "GitHub Inc.", "license": "ISC", @@ -64,7 +67,7 @@ ], "ciVersions": "latest", "engines": "^14.17.0 || ^16.13.0 || >=18.0.0", - "version": "4.4.1", + "version": "4.5.0", "content": "../scripts/template-oss/index.js" } } diff --git a/lib/commands/link.js b/lib/commands/link.js index 7bce73ed2bb6f..c9169edc9e5c3 100644 --- a/lib/commands/link.js +++ b/lib/commands/link.js @@ -51,6 +51,8 @@ class Link extends ArboristWorkspaceCmd { { code: 'ELINKGLOBAL' } ) } + // install-links is implicitely false when running `npm link` + this.npm.config.set('install-links', false) // link with no args: symlink the folder to the global location // link with package arg: symlink the global to the local diff --git a/lib/npm.js b/lib/npm.js index 852d91ad3f890..fe2ce5c6b818c 100644 --- a/lib/npm.js +++ b/lib/npm.js @@ -1,3 +1,4 @@ +const Arborist = require('@npmcli/arborist') const EventEmitter = require('events') const { resolve, dirname, join } = require('path') const Config = require('@npmcli/config') @@ -310,6 +311,9 @@ class Npm extends EventEmitter { get flatOptions () { const { flat } = this.config + // the Arborist constructor is used almost everywhere we call pacote, it's easiest + // to attach it to flatOptions so it goes everywhere without having to touch every call + flat.Arborist = Arborist if (this.command) { flat.npmCommand = this.command } diff --git a/lib/utils/config/definitions.js b/lib/utils/config/definitions.js index 5f74eb03b14c8..6d92651eb95f3 100644 --- a/lib/utils/config/definitions.js +++ b/lib/utils/config/definitions.js @@ -326,8 +326,7 @@ define('cache', { `, type: path, description: ` - The location of npm's cache directory. See [\`npm - cache\`](/commands/npm-cache) + The location of npm's cache directory. `, flatten (key, obj, flatOptions) { flatOptions.cache = join(obj.cache, '_cacache') @@ -1070,9 +1069,9 @@ define('install-links', { default: true, type: Boolean, description: ` - When set file: protocol dependencies that exist outside of the project root - will be packed and installed as regular dependencies instead of creating a - symlink. This option has no effect on workspaces. + When set file: protocol dependencies will be packed and installed as + regular dependencies instead of creating a symlink. This option has + no effect on workspaces. `, flatten, }) @@ -1199,9 +1198,8 @@ define('lockfile-version', { default: null, type: [null, 1, 2, 3, '1', '2', '3'], defaultDescription: ` - Version 2 if no lockfile or current lockfile version less than or equal to - 2, otherwise maintain current lockfile version - `, + Version 3 if no lockfile, auto-converting v1 lockfiles to v3, otherwise + maintain current lockfile version.`, description: ` Set the lockfile format version to be used in package-lock.json and npm-shrinkwrap-json files. Possible options are: @@ -1211,8 +1209,8 @@ define('lockfile-version', { deterministic installs. Prevents lockfile churn when interoperating with older npm versions. - 2: The default lockfile version used by npm version 7. Includes both the - version 1 lockfile data and version 3 lockfile data, for maximum + 2: The default lockfile version used by npm version 7 and 8. Includes both + the version 1 lockfile data and version 3 lockfile data, for maximum determinism and interoperability, at the expense of more bytes on disk. 3: Only the new lockfile information introduced in npm version 7. Smaller diff --git a/node_modules/.gitignore b/node_modules/.gitignore index 37530342b697a..3ca5d9de99121 100644 --- a/node_modules/.gitignore +++ b/node_modules/.gitignore @@ -1,10 +1,253 @@ -# Automatically generated to ignore dev deps -/.package-lock.json +# Automatically generated to ignore everything except bundled deps +# Ignore everything by default except this file +/* +!/.gitignore +# Allow all bundled deps +!/@colors/ +/@colors/* +!/@colors/colors +!/@gar/ +/@gar/* +!/@gar/promisify +!/@isaacs/ +/@isaacs/* +!/@isaacs/string-locale-compare +!/@npmcli/ +/@npmcli/* +!/@npmcli/arborist +!/@npmcli/ci-detect +!/@npmcli/config +!/@npmcli/disparity-colors +!/@npmcli/fs +!/@npmcli/git +!/@npmcli/installed-package-contents +!/@npmcli/installed-package-contents/node_modules/ +/@npmcli/installed-package-contents/node_modules/* +!/@npmcli/installed-package-contents/node_modules/npm-bundled +!/@npmcli/map-workspaces +!/@npmcli/metavuln-calculator +!/@npmcli/move-file +!/@npmcli/name-from-folder +!/@npmcli/node-gyp +!/@npmcli/package-json +!/@npmcli/promise-spawn +!/@npmcli/query +!/@npmcli/run-script +!/@tootallnate/ +/@tootallnate/* +!/@tootallnate/once +!/abbrev +!/agent-base +!/agentkeepalive +!/aggregate-error +!/ansi-regex +!/ansi-styles +!/aproba +!/archy +!/are-we-there-yet +!/asap +!/balanced-match +!/bin-links +!/bin-links/node_modules/ +/bin-links/node_modules/* +!/bin-links/node_modules/npm-normalize-package-bin +!/binary-extensions +!/brace-expansion +!/builtins +!/cacache +!/chalk +!/chownr +!/cidr-regex +!/clean-stack +!/cli-columns +!/cli-table3 +!/clone +!/cmd-shim +!/color-convert +!/color-name +!/color-support +!/columnify +!/common-ancestor-path +!/concat-map +!/console-control-strings +!/cssesc +!/debug +!/debug/node_modules/ +/debug/node_modules/* +!/debug/node_modules/ms +!/debuglog +!/defaults +!/delegates +!/depd +!/dezalgo +!/diff +!/emoji-regex +!/encoding +!/env-paths +!/err-code +!/fastest-levenshtein +!/fs-minipass +!/fs.realpath +!/function-bind +!/gauge +!/glob +!/graceful-fs +!/has-flag +!/has-unicode +!/has +!/hosted-git-info +!/http-cache-semantics +!/http-proxy-agent +!/https-proxy-agent +!/humanize-ms +!/iconv-lite +!/ignore-walk +!/imurmurhash +!/indent-string +!/infer-owner +!/inflight +!/inherits +!/ini +!/init-package-json +!/ip-regex +!/ip +!/is-cidr +!/is-core-module +!/is-fullwidth-code-point +!/is-lambda +!/isexe +!/json-parse-even-better-errors +!/json-stringify-nice +!/jsonparse +!/just-diff-apply +!/just-diff +!/libnpmaccess +!/libnpmdiff +!/libnpmexec +!/libnpmfund +!/libnpmhook +!/libnpmorg +!/libnpmpack +!/libnpmpublish +!/libnpmsearch +!/libnpmteam +!/libnpmversion +!/lru-cache +!/make-fetch-happen +!/minimatch +!/minipass-collect +!/minipass-fetch +!/minipass-flush +!/minipass-json-stream +!/minipass-pipeline +!/minipass-sized +!/minipass +!/minizlib +!/mkdirp-infer-owner +!/mkdirp +!/ms +!/mute-stream +!/negotiator +!/node-gyp +!/node-gyp/node_modules/ +/node-gyp/node_modules/* +!/node-gyp/node_modules/brace-expansion +!/node-gyp/node_modules/glob +!/node-gyp/node_modules/minimatch +!/node-gyp/node_modules/nopt +!/nopt +!/normalize-package-data +!/npm-audit-report +!/npm-install-checks +!/npm-normalize-package-bin +!/npm-package-arg +!/npm-packlist +!/npm-pick-manifest +!/npm-pick-manifest/node_modules/ +/npm-pick-manifest/node_modules/* +!/npm-pick-manifest/node_modules/npm-normalize-package-bin +!/npm-profile +!/npm-registry-fetch +!/npm-user-validate +!/npmlog +!/once +!/opener +!/p-map +!/pacote +!/parse-conflict-json +!/path-is-absolute +!/postcss-selector-parser +!/proc-log +!/promise-all-reject-late +!/promise-call-limit +!/promise-inflight +!/promise-retry +!/promzard +!/qrcode-terminal +!/read-cmd-shim +!/read-package-json-fast +!/read-package-json +!/read-package-json/node_modules/ +/read-package-json/node_modules/* +!/read-package-json/node_modules/npm-normalize-package-bin +!/read +!/readable-stream +!/readdir-scoped-modules +!/retry +!/rimraf +!/rimraf/node_modules/ +/rimraf/node_modules/* +!/rimraf/node_modules/brace-expansion +!/rimraf/node_modules/glob +!/rimraf/node_modules/minimatch +!/safe-buffer +!/safer-buffer +!/semver +!/semver/node_modules/ +/semver/node_modules/* +!/semver/node_modules/lru-cache +!/set-blocking +!/signal-exit +!/smart-buffer +!/socks-proxy-agent +!/socks +!/spdx-correct +!/spdx-exceptions +!/spdx-expression-parse +!/spdx-license-ids +!/ssri +!/string_decoder +!/string-width +!/strip-ansi +!/supports-color +!/tar +!/text-table +!/tiny-relative-date +!/treeverse +!/unique-filename +!/unique-slug +!/util-deprecate +!/validate-npm-package-license +!/validate-npm-package-name +!/walk-up-path +!/wcwidth +!/which +!/wide-align +!/wrappy +!/write-file-atomic +!/yallist +# Always ignore some specific patterns within any allowed package +.bin/ +.cache/ package-lock.json CHANGELOG* changelog* +ChangeLog* +Changelog* README* readme* +ReadMe* +Readme* __pycache__ .editorconfig .idea/ @@ -24,601 +267,3 @@ __pycache__ .babelrc* .nyc_output .gitkeep - -/@actions/core -/@actions/http-client -/@babel/code-frame -/@babel/core -/@babel/generator -/@babel/helper-environment-visitor -/@babel/helper-function-name -/@babel/helper-get-function-arity -/@babel/helper-hoist-variables -/@babel/helper-module-imports -/@babel/helper-module-transforms -/@babel/helper-plugin-utils -/@babel/helper-simple-access -/@babel/helper-split-export-declaration -/@babel/helper-validator-identifier -/@babel/helpers -/@babel/highlight -/@babel/parser -/@babel/plugin-proposal-object-rest-spread -/@babel/plugin-syntax-jsx -/@babel/plugin-syntax-object-rest-spread -/@babel/plugin-transform-parameters -/@babel/template -/@babel/traverse -/@babel/types -/@blueoak/list -/@commitlint/cli -/@commitlint/config-conventional -/@commitlint/config-validator -/@commitlint/ensure -/@commitlint/execute-rule -/@commitlint/format -/@commitlint/is-ignored -/@commitlint/lint -/@commitlint/load -/@commitlint/message -/@commitlint/parse -/@commitlint/read -/@commitlint/resolve-extends -/@commitlint/rules -/@commitlint/to-lines -/@commitlint/top-level -/@commitlint/types -/@conventional-commits/parser -/@cspotcode/source-map-support -/@eslint/eslintrc -/@google-automations/git-file-utils -/@humanwhocodes/config-array -/@humanwhocodes/object-schema -/@iarna/toml -/@istanbuljs/load-nyc-config -/@istanbuljs/schema -/@jridgewell/resolve-uri -/@jridgewell/sourcemap-codec -/@jridgewell/trace-mapping -/@lerna/child-process -/@lerna/collect-updates -/@lerna/describe-ref -/@lerna/package -/@lerna/package-graph -/@lerna/prerelease-id-from-version -/@lerna/query-graph -/@lerna/run-topologically -/@lerna/validation-error -/@mdx-js/mdx -/@mdx-js/util -/@npmcli/eslint-config -/@npmcli/template-oss -/@octokit/auth-token -/@octokit/core -/@octokit/endpoint -/@octokit/graphql -/@octokit/openapi-types -/@octokit/plugin-paginate-rest -/@octokit/plugin-request-log -/@octokit/plugin-rest-endpoint-methods -/@octokit/request -/@octokit/request-error -/@octokit/rest -/@octokit/types -/@tsconfig/node10 -/@tsconfig/node12 -/@tsconfig/node14 -/@tsconfig/node16 -/@types/hast -/@types/json5 -/@types/mdast -/@types/minimist -/@types/node -/@types/normalize-package-data -/@types/npm-package-arg -/@types/parse-json -/@types/parse5 -/@types/unist -/@types/yargs -/@types/yargs-parser -/@xmldom/xmldom -/abab -/acorn -/acorn-globals -/acorn-jsx -/acorn-walk -/ajv -/anymatch -/append-transform -/arg -/argparse -/array-find-index -/array-ify -/array-includes -/array.prototype.flat -/arrify -/asn1 -/assert-plus -/async-hook-domain -/async-retry -/asynckit -/aws-sign2 -/aws4 -/babel-plugin-apply-mdx-type-prop -/babel-plugin-extract-import-names -/bail -/base64-js -/bcrypt-pbkdf -/before-after-hook -/benchmark -/bind-obj-methods -/bindings -/bl -/boolbase -/braces -/browser-process-hrtime -/buffer -/buffer-from -/caching-transform -/call-bind -/caller -/callsites -/camelcase -/camelcase-css -/camelcase-keys -/caseless -/ccount -/character-entities -/character-entities-legacy -/character-reference-invalid -/chokidar -/cliui -/cmark-gfm -/code-point-at -/code-suggester -/collapse-white-space -/combined-stream -/comma-separated-tokens -/commondir -/compare-func -/conventional-changelog-angular -/conventional-changelog-conventionalcommits -/conventional-changelog-writer -/conventional-commits-filter -/conventional-commits-parser -/convert-source-map -/core-util-is -/correct-license-metadata -/cosmiconfig -/cosmiconfig-typescript-loader -/coveralls -/create-require -/cross-spawn -/css-select -/css-what -/cssom -/cssstyle -/dargs -/dashdash -/data-urls -/dateformat -/decamelize -/decamelize-keys -/decimal.js -/decompress-response -/deep-extend -/deep-is -/default-require-extensions -/define-properties -/delayed-stream -/deprecation -/detab -/detect-indent -/detect-libc -/docopt -/docs -/doctrine -/dom-serializer -/domelementtype -/domexception -/domhandler -/domutils -/dot-prop -/duplexer -/ecc-jsbn -/end-of-stream -/entities -/error-ex -/es-abstract -/es-shim-unscopables -/es-to-primitive -/es6-error -/escalade -/escape-string-regexp -/escodegen -/eslint -/eslint-import-resolver-node -/eslint-module-utils -/eslint-plugin-es -/eslint-plugin-import -/eslint-plugin-node -/eslint-plugin-promise -/eslint-scope -/eslint-utils -/eslint-visitor-keys -/espree -/esprima -/esquery -/esrecurse -/estraverse -/esutils -/eventemitter3 -/events-to-array -/execa -/expand-template -/extend -/extsprintf -/fast-deep-equal -/fast-json-stable-stringify -/fast-levenshtein -/figures -/file-entry-cache -/file-uri-to-path -/fill-range -/find-cache-dir -/find-up -/findit -/flat-cache -/flatted -/flow-parser -/flow-remove-types -/foreground-child -/forever-agent -/form-data -/fromentries -/fs-access -/fs-constants -/fs-exists-cached -/fs-extra -/fsevents -/function-loop -/function.prototype.name -/functional-red-black-tree -/functions-have-names -/gensync -/get-caller-file -/get-intrinsic -/get-package-type -/get-stream -/get-symbol-description -/getpass -/git-raw-commits -/github-from-package -/glob-parent -/global-dirs -/globals -/handlebars -/har-schema -/har-validator -/hard-rejection -/has-bigints -/has-property-descriptors -/has-symbols -/has-tostringtag -/hasha -/hast-to-hyperscript -/hast-util-from-parse5 -/hast-util-parse-selector -/hast-util-raw -/hast-util-to-parse5 -/hastscript -/he -/html-encoding-sniffer -/html-escaper -/html-void-elements -/http-signature -/human-signals -/ieee754 -/ignore -/import-fresh -/inline-style-parser -/internal-slot -/is-alphabetical -/is-alphanumerical -/is-arrayish -/is-bigint -/is-binary-path -/is-boolean-object -/is-buffer -/is-callable -/is-date-object -/is-decimal -/is-extglob -/is-glob -/is-hexadecimal -/is-negative-zero -/is-number -/is-number-object -/is-obj -/is-plain-obj -/is-plain-object -/is-potential-custom-element-name -/is-regex -/is-shared-array-buffer -/is-stream -/is-string -/is-symbol -/is-text-path -/is-typedarray -/is-weakref -/is-whitespace-character -/is-windows -/is-word-character -/isarray -/isstream -/istanbul-lib-coverage -/istanbul-lib-hook -/istanbul-lib-instrument -/istanbul-lib-processinfo -/istanbul-lib-report -/istanbul-lib-source-maps -/istanbul-reports -/jackspeak -/js-tokens -/js-yaml -/jsbn -/jsdom -/jsesc -/json-parse-errback -/json-schema -/json-schema-traverse -/json-stable-stringify-without-jsonify -/json-stringify-safe -/json5 -/jsonfile -/jsonpath -/JSONStream -/jsprim -/just-deep-map-values -/kind-of -/lcov-parse -/levn -/libtap -/licensee -/lines-and-columns -/load-json-file -/locate-path -/lodash -/lodash.clonedeep -/lodash.flattendeep -/lodash.ismatch -/lodash.merge -/lodash.uniq -/log-driver -/make-dir -/make-error -/map-obj -/markdown-escapes -/marked -/marked-man -/mdast-squeeze-paragraphs -/mdast-util-definitions -/mdast-util-to-hast -/mdurl -/meow -/merge-stream -/mime-db -/mime-types -/mimic-fn -/mimic-response -/min-indent -/minify-registry-metadata -/minimist -/minimist-options -/mkdirp-classic -/modify-values -/napi-build-utils -/natural-compare -/neo-async -/nock -/node-abi -/node-addon-api -/node-fetch -/node-html-parser -/node-modules-regexp -/node-preload -/normalize-path -/npm-license-corrections -/npm-run-path -/nth-check -/null-check -/number-is-nan -/nwsapi -/nyc -/oauth-sign -/object-assign -/object-inspect -/object-keys -/object.assign -/object.getownpropertydescriptors -/object.values -/onetime -/optionator -/own-or -/own-or-env -/p-finally -/p-limit -/p-locate -/p-queue -/p-timeout -/p-try -/package-hash -/parent-module -/parse-diff -/parse-entities -/parse-github-repo-url -/parse-json -/parse5 -/path-exists -/path-key -/path-parse -/path-type -/performance-now -/picomatch -/pify -/pirates -/platform -/prebuild-install -/prelude-ls -/process-nextick-args -/process-on-spawn -/propagate -/property-information -/psl -/pump -/punycode -/q -/qs -/queue-microtask -/quick-lru -/rc -/read-package-tree -/read-pkg -/read-pkg-up -/readdirp -/redent -/regexp.prototype.flags -/regexpp -/release-please -/release-zalgo -/remark-footnotes -/remark-mdx -/remark-parse -/remark-squeeze-paragraphs -/repeat-string -/request -/require-directory -/require-from-string -/require-inject -/require-main-filename -/resolve -/resolve-from -/resolve-global -/run-parallel -/saxes -/shebang-command -/shebang-regex -/side-channel -/simple-concat -/simple-get -/slash -/smoke-tests -/sort-keys -/source-map -/source-map-support -/space-separated-tokens -/spawk -/spawn-wrap -/spdx-compare -/spdx-expression-validate -/spdx-osi -/spdx-ranges -/spdx-whitelisted -/split -/split2 -/sprintf-js -/sshpk -/stack-utils -/state-toggle -/static-eval -/string.prototype.trimend -/string.prototype.trimstart -/strip-bom -/strip-final-newline -/strip-indent -/strip-json-comments -/strong-log-transformer -/style-to-object -/supports-preserve-symlinks-flag -/symbol-tree -/tap -/tap-mocha-reporter -/tap-parser -/tap-yaml -/tar-fs -/tar-stream -/tcompare -/test-exclude -/text-extensions -/through -/through2 -/to-fast-properties -/to-regex-range -/tough-cookie -/tr46 -/trim -/trim-newlines -/trim-trailing-lines -/trivial-deferred -/trough -/ts-node -/tsconfig-paths -/tunnel -/tunnel-agent -/tweetnacl -/type-check -/type-fest -/typescript -/uglify-js -/unbox-primitive -/underscore -/unherit -/unicode-length -/unified -/unist-builder -/unist-util-generated -/unist-util-is -/unist-util-position -/unist-util-remove -/unist-util-remove-position -/unist-util-stringify-position -/unist-util-visit -/unist-util-visit-parents -/universal-user-agent -/universalify -/uri-js -/util-promisify -/uuid -/v8-compile-cache -/v8-compile-cache-lib -/verror -/vfile -/vfile-location -/vfile-message -/vlq -/w3c-hr-time -/w3c-xmlserializer -/web-namespaces -/webidl-conversions -/whatwg-encoding -/whatwg-mimetype -/whatwg-url -/which-boxed-primitive -/which-module -/word-wrap -/wordwrap -/wrap-ansi -/write-json-file -/write-pkg -/ws -/xml-name-validator -/xmlchars -/xpath -/xtend -/y18n -/yaml -/yargs -/yargs-parser -/yn -/yocto-queue -/zwitch diff --git a/node_modules/@npmcli/ci-detect/lib/index.js b/node_modules/@npmcli/ci-detect/lib/index.js index 8be8fe2e6d03b..34755c7f166c3 100644 --- a/node_modules/@npmcli/ci-detect/lib/index.js +++ b/node_modules/@npmcli/ci-detect/lib/index.js @@ -45,6 +45,7 @@ module.exports = () => : process.env.TRAVIS ? 'travis-ci' // aws CodeBuild/CodePipeline : process.env.CODEBUILD_SRC_DIR ? 'aws-codebuild' + : process.env.CI === 'woodpecker' ? 'woodpecker' : process.env.CI === 'true' || process.env.CI === '1' ? 'custom' // Google Cloud Build - it sets almost nothing : process.env.BUILDER_OUTPUT ? 'builder' diff --git a/node_modules/@npmcli/ci-detect/package.json b/node_modules/@npmcli/ci-detect/package.json index c1cf9dc889371..eaf1a3a286429 100644 --- a/node_modules/@npmcli/ci-detect/package.json +++ b/node_modules/@npmcli/ci-detect/package.json @@ -1,41 +1,44 @@ { "name": "@npmcli/ci-detect", - "version": "2.0.0", + "version": "3.0.0", "description": "Detect what kind of CI environment the program is in", "author": "GitHub Inc.", "license": "ISC", "main": "./lib", "scripts": { "test": "tap", - "preversion": "npm test", - "postversion": "npm publish", - "prepublishOnly": "git push origin --follow-tags", - "lint": "eslint '**/*.js'", - "postlint": "npm-template-check", - "template-copy": "npm-template-copy --force", + "lint": "eslint \"**/*.js\"", + "postlint": "template-oss-check", "lintfix": "npm run lint -- --fix", "snap": "tap", - "posttest": "npm run lint" + "posttest": "npm run lint", + "template-oss-apply": "template-oss-apply --force" }, "tap": { - "check-coverage": true + "check-coverage": true, + "nyc-arg": [ + "--exclude", + "tap-snapshots/**" + ] }, "devDependencies": { - "@npmcli/template-oss": "^2.7.1", - "tap": "^15.1.6" + "@npmcli/eslint-config": "^3.0.1", + "@npmcli/template-oss": "4.4.4", + "tap": "^16.0.1" }, "files": [ - "bin", - "lib" + "bin/", + "lib/" ], "repository": { "type": "git", - "url": "git+https://github.com/npm/ci-detect.git" + "url": "https://github.com/npm/ci-detect.git" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" }, "templateOSS": { - "version": "2.7.1" + "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", + "version": "4.4.4" } } diff --git a/node_modules/@npmcli/metavuln-calculator/package.json b/node_modules/@npmcli/metavuln-calculator/package.json index 90b4d2ecddce4..be020f726ff08 100644 --- a/node_modules/@npmcli/metavuln-calculator/package.json +++ b/node_modules/@npmcli/metavuln-calculator/package.json @@ -1,6 +1,6 @@ { "name": "@npmcli/metavuln-calculator", - "version": "4.0.0-pre.0", + "version": "4.0.0", "main": "lib/index.js", "files": [ "bin/", @@ -34,14 +34,14 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "4.4.2", + "@npmcli/template-oss": "4.4.4", "require-inject": "^1.4.4", "tap": "^16.0.1" }, "dependencies": { "cacache": "^16.0.0", "json-parse-even-better-errors": "^2.3.1", - "pacote": "^14.0.0 || ^14.0.0-pre.0", + "pacote": "^14.0.0", "semver": "^7.3.5" }, "engines": { @@ -49,6 +49,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "4.4.2" + "version": "4.4.4" } } diff --git a/node_modules/aggregate-error/readme.md b/node_modules/aggregate-error/readme.md deleted file mode 100644 index 850de98a8e8f4..0000000000000 --- a/node_modules/aggregate-error/readme.md +++ /dev/null @@ -1,61 +0,0 @@ -# aggregate-error [![Build Status](https://travis-ci.org/sindresorhus/aggregate-error.svg?branch=master)](https://travis-ci.org/sindresorhus/aggregate-error) - -> Create an error from multiple errors - - -## Install - -``` -$ npm install aggregate-error -``` - - -## Usage - -```js -const AggregateError = require('aggregate-error'); - -const error = new AggregateError([new Error('foo'), 'bar', {message: 'baz'}]); - -throw error; -/* -AggregateError: - Error: foo - at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:33) - Error: bar - at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:13) - Error: baz - at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:13) - at AggregateError (/Users/sindresorhus/dev/aggregate-error/index.js:19:3) - at Object. (/Users/sindresorhus/dev/aggregate-error/example.js:3:13) - at Module._compile (module.js:556:32) - at Object.Module._extensions..js (module.js:565:10) - at Module.load (module.js:473:32) - at tryModuleLoad (module.js:432:12) - at Function.Module._load (module.js:424:3) - at Module.runMain (module.js:590:10) - at run (bootstrap_node.js:394:7) - at startup (bootstrap_node.js:149:9) -*/ - -for (const individualError of error) { - console.log(individualError); -} -//=> [Error: foo] -//=> [Error: bar] -//=> [Error: baz] -``` - - -## API - -### AggregateError(errors) - -Returns an `Error` that is also an [`Iterable`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Iterators_and_Generators#Iterables) for the individual errors. - -#### errors - -Type: `Array` - -If a string, a new `Error` is created with the string as the error message.
-If a non-Error object, a new `Error` is created with all properties from the object copied over. diff --git a/node_modules/ansi-regex/readme.md b/node_modules/ansi-regex/readme.md deleted file mode 100644 index 4d848bc36f6b8..0000000000000 --- a/node_modules/ansi-regex/readme.md +++ /dev/null @@ -1,78 +0,0 @@ -# ansi-regex - -> Regular expression for matching [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) - - -## Install - -``` -$ npm install ansi-regex -``` - - -## Usage - -```js -const ansiRegex = require('ansi-regex'); - -ansiRegex().test('\u001B[4mcake\u001B[0m'); -//=> true - -ansiRegex().test('cake'); -//=> false - -'\u001B[4mcake\u001B[0m'.match(ansiRegex()); -//=> ['\u001B[4m', '\u001B[0m'] - -'\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true})); -//=> ['\u001B[4m'] - -'\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex()); -//=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007'] -``` - - -## API - -### ansiRegex(options?) - -Returns a regex for matching ANSI escape codes. - -#### options - -Type: `object` - -##### onlyFirst - -Type: `boolean`
-Default: `false` *(Matches any ANSI escape codes in a string)* - -Match only the first ANSI escape. - - -## FAQ - -### Why do you test for codes not in the ECMA 48 standard? - -Some of the codes we run as a test are codes that we acquired finding various lists of non-standard or manufacturer specific codes. We test for both standard and non-standard codes, as most of them follow the same or similar format and can be safely matched in strings without the risk of removing actual string content. There are a few non-standard control codes that do not follow the traditional format (i.e. they end in numbers) thus forcing us to exclude them from the test because we cannot reliably match them. - -On the historical side, those ECMA standards were established in the early 90's whereas the VT100, for example, was designed in the mid/late 70's. At that point in time, control codes were still pretty ungoverned and engineers used them for a multitude of things, namely to activate hardware ports that may have been proprietary. Somewhere else you see a similar 'anarchy' of codes is in the x86 architecture for processors; there are a ton of "interrupts" that can mean different things on certain brands of processors, most of which have been phased out. - - -## Maintainers - -- [Sindre Sorhus](https://github.com/sindresorhus) -- [Josh Junon](https://github.com/qix-) - - ---- - -
- - Get professional support for this package with a Tidelift subscription - -
- - Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. -
-
diff --git a/node_modules/ansi-styles/readme.md b/node_modules/ansi-styles/readme.md deleted file mode 100644 index 24883de808be6..0000000000000 --- a/node_modules/ansi-styles/readme.md +++ /dev/null @@ -1,152 +0,0 @@ -# ansi-styles [![Build Status](https://travis-ci.org/chalk/ansi-styles.svg?branch=master)](https://travis-ci.org/chalk/ansi-styles) - -> [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles) for styling strings in the terminal - -You probably want the higher-level [chalk](https://github.com/chalk/chalk) module for styling your strings. - - - -## Install - -``` -$ npm install ansi-styles -``` - -## Usage - -```js -const style = require('ansi-styles'); - -console.log(`${style.green.open}Hello world!${style.green.close}`); - - -// Color conversion between 16/256/truecolor -// NOTE: If conversion goes to 16 colors or 256 colors, the original color -// may be degraded to fit that color palette. This means terminals -// that do not support 16 million colors will best-match the -// original color. -console.log(style.bgColor.ansi.hsl(120, 80, 72) + 'Hello world!' + style.bgColor.close); -console.log(style.color.ansi256.rgb(199, 20, 250) + 'Hello world!' + style.color.close); -console.log(style.color.ansi16m.hex('#abcdef') + 'Hello world!' + style.color.close); -``` - -## API - -Each style has an `open` and `close` property. - -## Styles - -### Modifiers - -- `reset` -- `bold` -- `dim` -- `italic` *(Not widely supported)* -- `underline` -- `inverse` -- `hidden` -- `strikethrough` *(Not widely supported)* - -### Colors - -- `black` -- `red` -- `green` -- `yellow` -- `blue` -- `magenta` -- `cyan` -- `white` -- `blackBright` (alias: `gray`, `grey`) -- `redBright` -- `greenBright` -- `yellowBright` -- `blueBright` -- `magentaBright` -- `cyanBright` -- `whiteBright` - -### Background colors - -- `bgBlack` -- `bgRed` -- `bgGreen` -- `bgYellow` -- `bgBlue` -- `bgMagenta` -- `bgCyan` -- `bgWhite` -- `bgBlackBright` (alias: `bgGray`, `bgGrey`) -- `bgRedBright` -- `bgGreenBright` -- `bgYellowBright` -- `bgBlueBright` -- `bgMagentaBright` -- `bgCyanBright` -- `bgWhiteBright` - -## Advanced usage - -By default, you get a map of styles, but the styles are also available as groups. They are non-enumerable so they don't show up unless you access them explicitly. This makes it easier to expose only a subset in a higher-level module. - -- `style.modifier` -- `style.color` -- `style.bgColor` - -###### Example - -```js -console.log(style.color.green.open); -``` - -Raw escape codes (i.e. without the CSI escape prefix `\u001B[` and render mode postfix `m`) are available under `style.codes`, which returns a `Map` with the open codes as keys and close codes as values. - -###### Example - -```js -console.log(style.codes.get(36)); -//=> 39 -``` - -## [256 / 16 million (TrueColor) support](https://gist.github.com/XVilka/8346728) - -`ansi-styles` uses the [`color-convert`](https://github.com/Qix-/color-convert) package to allow for converting between various colors and ANSI escapes, with support for 256 and 16 million colors. - -The following color spaces from `color-convert` are supported: - -- `rgb` -- `hex` -- `keyword` -- `hsl` -- `hsv` -- `hwb` -- `ansi` -- `ansi256` - -To use these, call the associated conversion function with the intended output, for example: - -```js -style.color.ansi.rgb(100, 200, 15); // RGB to 16 color ansi foreground code -style.bgColor.ansi.rgb(100, 200, 15); // RGB to 16 color ansi background code - -style.color.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code -style.bgColor.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code - -style.color.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color foreground code -style.bgColor.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color background code -``` - -## Related - -- [ansi-escapes](https://github.com/sindresorhus/ansi-escapes) - ANSI escape codes for manipulating the terminal - -## Maintainers - -- [Sindre Sorhus](https://github.com/sindresorhus) -- [Josh Junon](https://github.com/qix-) - -## For enterprise - -Available as part of the Tidelift Subscription. - -The maintainers of `ansi-styles` and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-ansi-styles?utm_source=npm-ansi-styles&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) diff --git a/node_modules/binary-extensions/readme.md b/node_modules/binary-extensions/readme.md deleted file mode 100644 index 3e25dd835e08b..0000000000000 --- a/node_modules/binary-extensions/readme.md +++ /dev/null @@ -1,41 +0,0 @@ -# binary-extensions - -> List of binary file extensions - -The list is just a [JSON file](binary-extensions.json) and can be used anywhere. - - -## Install - -``` -$ npm install binary-extensions -``` - - -## Usage - -```js -const binaryExtensions = require('binary-extensions'); - -console.log(binaryExtensions); -//=> ['3ds', '3g2', …] -``` - - -## Related - -- [is-binary-path](https://github.com/sindresorhus/is-binary-path) - Check if a filepath is a binary file -- [text-extensions](https://github.com/sindresorhus/text-extensions) - List of text file extensions - - ---- - -
- - Get professional support for this package with a Tidelift subscription - -
- - Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. -
-
diff --git a/node_modules/builtins/Readme.md b/node_modules/builtins/Readme.md deleted file mode 100644 index b1c0007d6f5e4..0000000000000 --- a/node_modules/builtins/Readme.md +++ /dev/null @@ -1,39 +0,0 @@ -# builtins - -[![CI](https://github.com/juliangruber/builtins/actions/workflows/ci.yml/badge.svg)](https://github.com/juliangruber/builtins/actions/workflows/ci.yml) - -List of node.js [builtin modules](http://nodejs.org/api/). - -## Usage - -```js -const builtins = require('builtins') -``` - -Get list of core modules for current Node.js version: - -```js -assert(builtins().includes('http')) -``` - -Get list of core modules for specific Node.js version: - -```js -assert(builtins({ version: '6.0.0' }).includes('http')) -``` - -Get list of core modules present in one or mode Node.js versions: - -```js -assert(builtins({ version: '*' }).includes('worker_threads')) -``` - -Add experimental modules to the list: - -```js -assert(builtins({ experimental: true }).includes('wasi')) -``` - -## License - -MIT diff --git a/node_modules/chalk/readme.md b/node_modules/chalk/readme.md deleted file mode 100644 index a055d21c97ed7..0000000000000 --- a/node_modules/chalk/readme.md +++ /dev/null @@ -1,341 +0,0 @@ -

-
-
- Chalk -
-
-
-

- -> Terminal string styling done right - -[![Build Status](https://travis-ci.org/chalk/chalk.svg?branch=master)](https://travis-ci.org/chalk/chalk) [![Coverage Status](https://coveralls.io/repos/github/chalk/chalk/badge.svg?branch=master)](https://coveralls.io/github/chalk/chalk?branch=master) [![npm dependents](https://badgen.net/npm/dependents/chalk)](https://www.npmjs.com/package/chalk?activeTab=dependents) [![Downloads](https://badgen.net/npm/dt/chalk)](https://www.npmjs.com/package/chalk) [![](https://img.shields.io/badge/unicorn-approved-ff69b4.svg)](https://www.youtube.com/watch?v=9auOCbH5Ns4) [![XO code style](https://img.shields.io/badge/code_style-XO-5ed9c7.svg)](https://github.com/xojs/xo) ![TypeScript-ready](https://img.shields.io/npm/types/chalk.svg) [![run on repl.it](https://repl.it/badge/github/chalk/chalk)](https://repl.it/github/chalk/chalk) - - - -
- ---- - - - ---- - -
- -## Highlights - -- Expressive API -- Highly performant -- Ability to nest styles -- [256/Truecolor color support](#256-and-truecolor-color-support) -- Auto-detects color support -- Doesn't extend `String.prototype` -- Clean and focused -- Actively maintained -- [Used by ~50,000 packages](https://www.npmjs.com/browse/depended/chalk) as of January 1, 2020 - -## Install - -```console -$ npm install chalk -``` - -## Usage - -```js -const chalk = require('chalk'); - -console.log(chalk.blue('Hello world!')); -``` - -Chalk comes with an easy to use composable API where you just chain and nest the styles you want. - -```js -const chalk = require('chalk'); -const log = console.log; - -// Combine styled and normal strings -log(chalk.blue('Hello') + ' World' + chalk.red('!')); - -// Compose multiple styles using the chainable API -log(chalk.blue.bgRed.bold('Hello world!')); - -// Pass in multiple arguments -log(chalk.blue('Hello', 'World!', 'Foo', 'bar', 'biz', 'baz')); - -// Nest styles -log(chalk.red('Hello', chalk.underline.bgBlue('world') + '!')); - -// Nest styles of the same type even (color, underline, background) -log(chalk.green( - 'I am a green line ' + - chalk.blue.underline.bold('with a blue substring') + - ' that becomes green again!' -)); - -// ES2015 template literal -log(` -CPU: ${chalk.red('90%')} -RAM: ${chalk.green('40%')} -DISK: ${chalk.yellow('70%')} -`); - -// ES2015 tagged template literal -log(chalk` -CPU: {red ${cpu.totalPercent}%} -RAM: {green ${ram.used / ram.total * 100}%} -DISK: {rgb(255,131,0) ${disk.used / disk.total * 100}%} -`); - -// Use RGB colors in terminal emulators that support it. -log(chalk.keyword('orange')('Yay for orange colored text!')); -log(chalk.rgb(123, 45, 67).underline('Underlined reddish color')); -log(chalk.hex('#DEADED').bold('Bold gray!')); -``` - -Easily define your own themes: - -```js -const chalk = require('chalk'); - -const error = chalk.bold.red; -const warning = chalk.keyword('orange'); - -console.log(error('Error!')); -console.log(warning('Warning!')); -``` - -Take advantage of console.log [string substitution](https://nodejs.org/docs/latest/api/console.html#console_console_log_data_args): - -```js -const name = 'Sindre'; -console.log(chalk.green('Hello %s'), name); -//=> 'Hello Sindre' -``` - -## API - -### chalk.`