From a419ca7e29d021259303cff90c04e82fb2f55db9 Mon Sep 17 00:00:00 2001 From: Luke Karrys Date: Tue, 29 Mar 2022 15:59:20 -0700 Subject: [PATCH] deps: @npmcli/template-oss@3.2.2 - add some basic tests for docs - make dockhand script work on windows - cleanup main CI to match template-oss - add a git status check for cli ci tests - use resetdeps for ci steps --- .github/workflows/ci-docs.yml | 73 ++++++++-- .github/workflows/ci.yml | 130 +++++++----------- .../workflows/release-please-libnpmaccess.yml | 2 +- .../workflows/release-please-libnpmdiff.yml | 2 +- .../workflows/release-please-libnpmexec.yml | 2 +- .../workflows/release-please-libnpmfund.yml | 2 +- .../workflows/release-please-libnpmhook.yml | 2 +- .../workflows/release-please-libnpmorg.yml | 2 +- .../workflows/release-please-libnpmpack.yml | 2 +- .../release-please-libnpmpublish.yml | 2 +- .../workflows/release-please-libnpmsearch.yml | 2 +- .../workflows/release-please-libnpmteam.yml | 2 +- .../release-please-libnpmversion.yml | 2 +- .../release-please-npmcli-arborist.yml | 2 +- .gitignore | 1 - Makefile | 28 ++-- docs/.gitignore | 4 +- docs/bin/config.json | 5 + docs/{ => bin}/dockhand.js | 78 +++++------ docs/{ => bin}/template.html | 0 docs/config.json | 5 - docs/package.json | 32 +++-- docs/test/index.js | 39 +++++- netlify.toml | 4 - package-lock.json | 85 +++++++----- package.json | 6 +- scripts/resetdeps.sh | 6 +- workspaces/arborist/package.json | 4 +- workspaces/libnpmaccess/package.json | 4 +- workspaces/libnpmdiff/package.json | 4 +- workspaces/libnpmexec/package.json | 4 +- workspaces/libnpmfund/package.json | 4 +- workspaces/libnpmhook/package.json | 4 +- workspaces/libnpmorg/package.json | 4 +- workspaces/libnpmpack/package.json | 4 +- workspaces/libnpmpublish/package.json | 4 +- workspaces/libnpmsearch/package.json | 4 +- workspaces/libnpmteam/package.json | 4 +- workspaces/libnpmversion/package.json | 4 +- 39 files changed, 305 insertions(+), 263 deletions(-) create mode 100644 docs/bin/config.json rename docs/{ => bin}/dockhand.js (81%) rename docs/{ => bin}/template.html (100%) delete mode 100644 docs/config.json delete mode 100644 netlify.toml diff --git a/.github/workflows/ci-docs.yml b/.github/workflows/ci-docs.yml index c7e9cf2ba65b9..897d9c66f4872 100644 --- a/.github/workflows/ci-docs.yml +++ b/.github/workflows/ci-docs.yml @@ -1,3 +1,5 @@ +# This file is automatically added by @npmcli/template-oss. Do not edit. + name: CI - docs on: @@ -22,26 +24,67 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 + - name: Setup git user + run: | + git config --global user.email "ops+npm-cli@npmjs.com" + git config --global user.name "npm cli ops bot" - uses: actions/setup-node@v3 with: node-version: 16.x - - run: | - node ./bin/npm-cli.js install --ignore-scripts --no-audit - node ./bin/npm-cli.js rebuild - - run: node ./bin/npm-cli.js run lint -w docs - env: - DEPLOY_VERSION: testing + - name: Update npm to latest + run: npm i --prefer-online --no-fund --no-audit -g npm@latest + - run: npm -v + - run: npm i --ignore-scripts + - run: npm run lint -w docs - check_docs: - runs-on: ubuntu-latest + test: + strategy: + fail-fast: false + matrix: + node-version: + - 12.13.0 + - 12.x + - 14.15.0 + - 14.x + - 16.0.0 + - 16.x + platform: + - os: ubuntu-latest + shell: bash + - os: macos-latest + shell: bash + - os: windows-latest + shell: cmd + runs-on: ${{ matrix.platform.os }} + defaults: + run: + shell: ${{ matrix.platform.shell }} steps: - uses: actions/checkout@v3 + - name: Setup git user + run: | + git config --global user.email "ops+npm-cli@npmjs.com" + git config --global user.name "npm cli ops bot" - uses: actions/setup-node@v3 with: - node-version: 16.x - - run: | - node ./bin/npm-cli.js install --ignore-scripts --no-audit - - name: Rebuild the docs - run: make freshdocs - - name: Git should not be dirty - run: node scripts/git-dirty.js + node-version: ${{ matrix.node-version }} + - name: Update to workable npm (windows) + # node 12 and 14 ship with npm@6, which is known to fail when updating itself in windows + if: matrix.platform.os == 'windows-latest' && (startsWith(matrix.node-version, '12.') || startsWith(matrix.node-version, '14.')) + run: | + curl -sO https://registry.npmjs.org/npm/-/npm-7.5.4.tgz + tar xf npm-7.5.4.tgz + cd package + node lib/npm.js install --no-fund --no-audit -g ..\npm-7.5.4.tgz + cd .. + rmdir /s /q package + - name: Update npm to 7 + # If we do test on npm 10 it needs npm7 + if: startsWith(matrix.node-version, '10.') + run: npm i --prefer-online --no-fund --no-audit -g npm@7 + - name: Update npm to latest + if: ${{ !startsWith(matrix.node-version, '10.') }} + run: npm i --prefer-online --no-fund --no-audit -g npm@latest + - run: npm -v + - run: npm i --ignore-scripts + - run: npm test --ignore-scripts -w docs diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8df4fdc48479e..a410fb6dc60c5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,149 +1,115 @@ -name: Node CI +name: CI - cli on: + workflow_dispatch: pull_request: branches: - '*' push: branches: - latest - workflow_dispatch: jobs: lint: runs-on: ubuntu-latest steps: - # Checkout the npm/cli repo - - uses: actions/checkout@v2 - - name: Use Node.js 14.x - uses: actions/setup-node@v2 + - uses: actions/checkout@v3 + - name: Use Node.js 16.x + uses: actions/setup-node@v3 with: - node-version: 14.x + node-version: 16.x cache: npm - - name: Install dependencies - run: | - node ./bin/npm-cli.js install --ignore-scripts --no-audit - node ./bin/npm-cli.js rebuild - - name: Run linting - run: node ./bin/npm-cli.js run posttest - env: - DEPLOY_VERSION: testing + - run: node ./bin/npm-cli.js run resetdeps + - run: node ./bin/npm-cli.js run lint check_docs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - name: Use Node.js 14.x - uses: actions/setup-node@v2 + - uses: actions/checkout@v3 + - name: Use Node.js 16.x + uses: actions/setup-node@v3 with: - node-version: 14.x + node-version: 16.x cache: npm - - name: Install dependencies - run: | - node ./bin/npm-cli.js install --ignore-scripts --no-audit - - name: Rebuild the docs - run: make freshdocs - - name: Git should not be dirty - run: node scripts/git-dirty.js - + - run: node ./bin/npm-cli.js run resetdeps + - run: make freshdocs + - run: node scripts/git-dirty.js licenses: runs-on: ubuntu-latest steps: - # Checkout the npm/cli repo - - uses: actions/checkout@v2 - - name: Use Node.js 14.x - uses: actions/setup-node@v2 + - uses: actions/checkout@v3 + - name: Use Node.js 16.x + uses: actions/setup-node@v3 with: - node-version: 14.x + node-version: 16.x cache: npm - - name: Install dependencies - run: | - node ./bin/npm-cli.js install --ignore-scripts --no-audit - node ./bin/npm-cli.js rebuild - - name: Validate licenses - run: node ./bin/npm-cli.js run licenses + - run: node ./bin/npm-cli.js run resetdeps + - run: node ./bin/npm-cli.js run licenses smoke-tests: strategy: fail-fast: false matrix: - node-version: [12.x, 14.x, 16.x] + node-version: + - 12.x + - 14.x + - 16.x platform: - os: ubuntu-latest shell: bash - os: macos-latest shell: bash - os: windows-latest - shell: bash - - os: windows-latest - shell: powershell - + shell: cmd runs-on: ${{ matrix.platform.os }} defaults: run: shell: ${{ matrix.platform.shell }} - steps: - # Checkout the npm/cli repo - - uses: actions/checkout@v2 - - # Installs the specific version of Node.js + - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} cache: npm - - # Run the installer script - - name: Install dependencies - run: | - node ./bin/npm-cli.js install --ignore-scripts --no-audit - node ./bin/npm-cli.js rebuild - - # Run the smoke tests - - name: Run Smoke tests - run: node ./bin/npm-cli.js run --ignore-scripts smoke-tests -- --no-check-coverage -t600 -Rbase -c - env: - DEPLOY_VERSION: testing + - run: node ./bin/npm-cli.js run resetdeps + - run: node ./bin/npm-cli.js run smoke-tests --ignore-scripts + - name: git status + if: matrix.platform.os != 'windows-latest' + run: node scripts/git-dirty.js test: strategy: fail-fast: false matrix: - node-version: ['12.13.0', 12.x, '14.15.0', 14.x, '16.0.0', 16.x] + node-version: + - 12.13.0 + - 12.x + - 14.15.0 + - 14.x + - 16.0.0 + - 16.x platform: - os: ubuntu-latest shell: bash - os: macos-latest shell: bash - os: windows-latest - shell: bash - - os: windows-latest - shell: powershell - + shell: cmd runs-on: ${{ matrix.platform.os }} defaults: run: shell: ${{ matrix.platform.shell }} - steps: - # Checkout the npm/cli repo - - uses: actions/checkout@v2 - - # Installs the specific version of Node.js + - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} cache: npm - - # Run the installer script - - name: Install dependencies - run: | - node ./bin/npm-cli.js install --ignore-scripts --no-audit - node ./bin/npm-cli.js rebuild - - # Run the tests - - name: Run Tap tests - run: node ./bin/npm-cli.js run test --ignore-scripts -- -t600 -Rbase -c + - run: node ./bin/npm-cli.js run resetdeps + - run: node ./bin/npm-cli.js run test --ignore-scripts + - name: git status + if: matrix.platform.os != 'windows-latest' + run: node scripts/git-dirty.js diff --git a/.github/workflows/release-please-libnpmaccess.yml b/.github/workflows/release-please-libnpmaccess.yml index 5660926218e3d..ae798bcb894dc 100644 --- a/.github/workflows/release-please-libnpmaccess.yml +++ b/.github/workflows/release-please-libnpmaccess.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmaccess + path: workspaces/libnpmaccess changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-libnpmdiff.yml b/.github/workflows/release-please-libnpmdiff.yml index 5f64a0668dfe5..4f9a0673acff1 100644 --- a/.github/workflows/release-please-libnpmdiff.yml +++ b/.github/workflows/release-please-libnpmdiff.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmdiff + path: workspaces/libnpmdiff changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-libnpmexec.yml b/.github/workflows/release-please-libnpmexec.yml index 5467b3db30f5c..7beb1148a699b 100644 --- a/.github/workflows/release-please-libnpmexec.yml +++ b/.github/workflows/release-please-libnpmexec.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmexec + path: workspaces/libnpmexec changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-libnpmfund.yml b/.github/workflows/release-please-libnpmfund.yml index b87ea3b850fdc..c89a94ecf9b2a 100644 --- a/.github/workflows/release-please-libnpmfund.yml +++ b/.github/workflows/release-please-libnpmfund.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmfund + path: workspaces/libnpmfund changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-libnpmhook.yml b/.github/workflows/release-please-libnpmhook.yml index 761fbc9d15506..a5863b1cfc5e4 100644 --- a/.github/workflows/release-please-libnpmhook.yml +++ b/.github/workflows/release-please-libnpmhook.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmhook + path: workspaces/libnpmhook changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-libnpmorg.yml b/.github/workflows/release-please-libnpmorg.yml index 7841c0ef5f43c..9352c64e22154 100644 --- a/.github/workflows/release-please-libnpmorg.yml +++ b/.github/workflows/release-please-libnpmorg.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmorg + path: workspaces/libnpmorg changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-libnpmpack.yml b/.github/workflows/release-please-libnpmpack.yml index 236f1e0b89e95..669bc7162b07b 100644 --- a/.github/workflows/release-please-libnpmpack.yml +++ b/.github/workflows/release-please-libnpmpack.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmpack + path: workspaces/libnpmpack changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-libnpmpublish.yml b/.github/workflows/release-please-libnpmpublish.yml index 2d7240dfab524..82b4ad0e27101 100644 --- a/.github/workflows/release-please-libnpmpublish.yml +++ b/.github/workflows/release-please-libnpmpublish.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmpublish + path: workspaces/libnpmpublish changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-libnpmsearch.yml b/.github/workflows/release-please-libnpmsearch.yml index f22825d4618d7..9c22260a92281 100644 --- a/.github/workflows/release-please-libnpmsearch.yml +++ b/.github/workflows/release-please-libnpmsearch.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmsearch + path: workspaces/libnpmsearch changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-libnpmteam.yml b/.github/workflows/release-please-libnpmteam.yml index 9fae3a057b5a7..5437a9e2c804a 100644 --- a/.github/workflows/release-please-libnpmteam.yml +++ b/.github/workflows/release-please-libnpmteam.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmteam + path: workspaces/libnpmteam changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-libnpmversion.yml b/.github/workflows/release-please-libnpmversion.yml index ee1e11e5058a4..3225687078dd0 100644 --- a/.github/workflows/release-please-libnpmversion.yml +++ b/.github/workflows/release-please-libnpmversion.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/libnpmversion + path: workspaces/libnpmversion changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.github/workflows/release-please-npmcli-arborist.yml b/.github/workflows/release-please-npmcli-arborist.yml index 84a42eca01c06..651ea71b24bc4 100644 --- a/.github/workflows/release-please-npmcli-arborist.yml +++ b/.github/workflows/release-please-npmcli-arborist.yml @@ -19,7 +19,7 @@ jobs: with: release-type: node monorepo-tags: true - paths: workspaces/arborist + path: workspaces/arborist changelog-types: > [ {"type":"feat","section":"Features","hidden":false}, diff --git a/.gitignore b/.gitignore index fbb4d9a9fe3d8..c42e815c421e4 100644 --- a/.gitignore +++ b/.gitignore @@ -29,7 +29,6 @@ !/LICENSE !/make.bat !/Makefile -!/netlify.toml !/package-lock.json !/package.json !/README.md diff --git a/Makefile b/Makefile index 2eabe68db3385..ae1cc97a02ee8 100644 --- a/Makefile +++ b/Makefile @@ -32,27 +32,23 @@ docs: mandocs htmldocs # don't regenerate the snapshot if we're generating # snapshots, since presumably we just did that. -mandocs: dev-deps $(mandocs) +mandocs: deps $(mandocs) @ ! [ "$${npm_lifecycle_event}" = "snap" ] && \ ! [ "$${npm_lifecycle_event}" = "postsnap" ] && \ TAP_SNAPSHOT=1 node test/lib/utils/config/definitions.js || true $(version_mandocs): package.json -htmldocs: dev-deps - node bin/npm-cli.js rebuild +htmldocs: deps node bin/npm-cli.js run -w docs build -clean: docs-clean gitclean +clean: docsclean gitclean -docsclean: docs-clean - -docs-clean: +docsclean: rm -rf man -## build-time dependencies for the documentation -dev-deps: - node bin/npm-cli.js install --no-audit --ignore-scripts +deps: + node bin/npm-cli.js run resetdeps ## targets for man files, these are encouraged to be only built by running `make docs` or `make mandocs` man/man1/%.1: docs/content/commands/%.md scripts/docs-build.js @@ -87,11 +83,11 @@ freshdocs: touch scripts/config-doc.js make docs -test: dev-deps +test: deps node bin/npm-cli.js test -smoke-tests: dev-deps - node bin/npm-cli.js run smoke-tests -- --no-check-coverage +smoke-tests: deps + node bin/npm-cli.js run smoke-tests ls-ok: node . ls --production >/dev/null @@ -105,12 +101,10 @@ uninstall: link: uninstall node bin/npm-cli.js link -f --ignore-scripts -prune: - node bin/npm-cli.js run resetdeps +prune: deps node bin/npm-cli.js prune --production --no-save --no-audit @[[ "$(shell git status -s)" != "" ]] && echo "ERR: found unpruned files" && exit 1 || echo "git status is clean" - publish: gitclean ls-ok link test smoke-tests docs prune @git push origin :v$(shell node bin/npm-cli.js --no-timing -v) 2>&1 || true git push origin $(BRANCH) &&\ @@ -120,4 +114,4 @@ publish: gitclean ls-ok link test smoke-tests docs prune release: gitclean ls-ok docs prune @bash scripts/release.sh -.PHONY: all latest install dev link docs clean uninstall test man docs-clean docsclean release ls-ok dev-deps prune freshdocs +.PHONY: all latest install dev link docs clean uninstall test man docsclean release ls-ok deps prune freshdocs diff --git a/docs/.gitignore b/docs/.gitignore index 27a0f6c59762b..823857bf98764 100644 --- a/docs/.gitignore +++ b/docs/.gitignore @@ -16,9 +16,7 @@ !/CHANGELOG* !/.eslintrc.js !/.gitignore -!/config.json +!/bin/ !/content/ -!/dockhand.js !/nav.yml !/package.json -!/template.html diff --git a/docs/bin/config.json b/docs/bin/config.json new file mode 100644 index 0000000000000..c9f183e4e787c --- /dev/null +++ b/docs/bin/config.json @@ -0,0 +1,5 @@ +{ + "github_repo": "npm/cli", + "github_branch": "latest", + "github_path": "docs/content" +} diff --git a/docs/dockhand.js b/docs/bin/dockhand.js similarity index 81% rename from docs/dockhand.js rename to docs/bin/dockhand.js index d1e64f93542d8..4b359e1b65940 100644 --- a/docs/dockhand.js +++ b/docs/bin/dockhand.js @@ -7,22 +7,27 @@ const cmark = require('cmark-gfm') const mdx = require('@mdx-js/mdx') const mkdirp = require('mkdirp') const jsdom = require('jsdom') -const npm = require('../lib/npm.js') +const npm = require('../../lib/npm.js') -const config = require('./config.json') +const run = async function (rootDir) { + const dir = (...p) => path.join(rootDir, '..', ...p) -const docsRoot = __dirname -const inputRoot = path.join(docsRoot, 'content') -const outputRoot = path.join(docsRoot, 'output') + const config = require(dir('bin', 'config.json')) + const template = fs.readFileSync(dir('bin', 'template.html'), 'utf-8') + const nav = yaml.parse(fs.readFileSync(dir('nav.yml'), 'utf-8')) -const template = fs.readFileSync('template.html').toString() - -const run = async function () { try { - const navPaths = await getNavigationPaths() - const fsPaths = await renderFilesystemPaths() - - if (!ensureNavigationComplete(navPaths, fsPaths)) { + const navPaths = getNavigationPaths(nav) + const fsPaths = await renderFilesystemPaths({ + input: dir('content'), + output: dir('output'), + config, + template, + }) + + const navErrors = ensureNavigationComplete(navPaths, fsPaths) + if (navErrors) { + console.error(navErrors) process.exit(1) } } catch (error) { @@ -30,7 +35,7 @@ const run = async function () { } } -run() +run(__dirname) function ensureNavigationComplete (navPaths, fsPaths) { const unmatchedNav = {} @@ -41,7 +46,8 @@ function ensureNavigationComplete (navPaths, fsPaths) { } for (let fsPath of fsPaths) { - fsPath = '/' + fsPath.replace(/\.md$/, '') + fsPath = path.sep + fsPath.replace(/\.md$/, '') + fsPath = fsPath.split(path.sep).join(path.posix.sep) if (unmatchedNav[fsPath]) { delete unmatchedNav[fsPath] @@ -50,8 +56,9 @@ function ensureNavigationComplete (navPaths, fsPaths) { } } - const missingNav = Object.keys(unmatchedNav).sort() - const missingFs = Object.keys(unmatchedFs).sort() + const toKeys = (v) => Object.keys(v).sort().map((p) => p.split(path.posix.sep).join(path.sep)) + const missingNav = toKeys(unmatchedNav) + const missingFs = toKeys(unmatchedFs) if (missingNav.length > 0 || missingFs.length > 0) { let message = 'Error: documentation navigation (nav.yml) does not match filesystem.\n' @@ -59,8 +66,8 @@ function ensureNavigationComplete (navPaths, fsPaths) { if (missingNav.length > 0) { message += '\nThe following path(s) exist on disk but are not present in nav.yml:\n\n' - for (const nav of missingNav) { - message += ` ${nav}\n` + for (const n of missingNav) { + message += ` ${n}\n` } } @@ -74,27 +81,16 @@ function ensureNavigationComplete (navPaths, fsPaths) { message += '\nUpdate nav.yml to ensure that all files are listed in the appropriate place.' - console.error(message) - - return false + return message } - - return true } -function getNavigationPaths () { - const navFilename = path.join(docsRoot, 'nav.yml') - const nav = yaml.parse(fs.readFileSync(navFilename).toString(), 'utf8') - - return walkNavigation(nav) -} - -function walkNavigation (entries) { +function getNavigationPaths (entries) { const paths = [] for (const entry of entries) { if (entry.children) { - paths.push(...walkNavigation(entry.children)) + paths.push(...getNavigationPaths(entry.children)) } else { paths.push(entry.url) } @@ -103,24 +99,20 @@ function walkNavigation (entries) { return paths } -async function renderFilesystemPaths () { - return await walkFilesystem(inputRoot) -} - -async function walkFilesystem (root, dirRelative) { +async function renderFilesystemPaths ({ input, output, ...opts }, dirRelative = null) { const paths = [] - const dirPath = dirRelative ? path.join(root, dirRelative) : root + const dirPath = dirRelative ? path.join(input, dirRelative) : input const children = fs.readdirSync(dirPath) for (const childFilename of children) { const childRelative = dirRelative ? path.join(dirRelative, childFilename) : childFilename - const childPath = path.join(root, childRelative) + const childPath = path.join(input, childRelative) if (fs.lstatSync(childPath).isDirectory()) { - paths.push(...(await walkFilesystem(root, childRelative))) + paths.push(...(await renderFilesystemPaths({ input, output, ...opts }, childRelative))) } else { - await renderFile(childRelative) + await renderFile(input, output, childRelative, opts) paths.push(childRelative) } } @@ -128,8 +120,8 @@ async function walkFilesystem (root, dirRelative) { return paths } -async function renderFile (childPath) { - const inputPath = path.join(inputRoot, childPath) +async function renderFile (root, outputRoot, childPath, { template, config }) { + const inputPath = path.join(root, childPath) if (!inputPath.match(/\.md$/)) { console.log(`warning: unknown file type ${inputPath}, ignored`) diff --git a/docs/template.html b/docs/bin/template.html similarity index 100% rename from docs/template.html rename to docs/bin/template.html diff --git a/docs/config.json b/docs/config.json deleted file mode 100644 index 08df95ae4a76d..0000000000000 --- a/docs/config.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "github_repo": "npm/cli", - "github_branch": "latest", - "github_path": "docs/content" -} diff --git a/docs/package.json b/docs/package.json index 85a14a2695305..d3e61cb34c2c9 100644 --- a/docs/package.json +++ b/docs/package.json @@ -4,14 +4,14 @@ "version": "1.0.0", "private": true, "scripts": { - "build": "node dockhand", + "build": "node bin/dockhand", + "prebuild": "node .. rebuild cmark-gfm", "lint": "eslint \"**/*.js\"", "postlint": "template-oss-check", "template-oss-apply": "template-oss-apply --force", "lintfix": "npm run lint -- --fix", "preversion": "npm test", - "postversion": "npm publish", - "prepublishOnly": "git push origin --follow-tags", + "postversion": "git push origin --follow-tags", "snap": "tap", "test": "tap", "posttest": "npm run lint" @@ -24,7 +24,9 @@ "devDependencies": { "@mdx-js/mdx": "^1.6.22", "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/fs": "^2.1.0", + "@npmcli/promise-spawn": "^1.3.2", + "@npmcli/template-oss": "3.2.2", "cmark-gfm": "^0.9.0", "jsdom": "^18.1.0", "marked-man": "^0.7.0", @@ -32,26 +34,28 @@ "yaml": "^1.10.0" }, "author": "GitHub Inc.", + "license": "ISC", "files": [ + "bin/", "content/", - "config.json", - "dockhand.js", - "nav.yml", - "template.html" + "nav.yml" ], "engines": { "node": "^12.13.0 || ^14.15.0 || >=16.0.0" }, + "tap": { + "statements": 81, + "branches": 72, + "functions": 80, + "lines": 81 + }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "workspaceRepo": false, "distPaths": [ + "bin/", "content/", - "config.json", - "dockhand.js", - "nav.yml", - "template.html" + "nav.yml" ], - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/docs/test/index.js b/docs/test/index.js index ee0fee2b775ac..cee4cc3ab8cff 100644 --- a/docs/test/index.js +++ b/docs/test/index.js @@ -1,3 +1,40 @@ const t = require('tap') +const spawn = require('@npmcli/promise-spawn') +const fs = require('@npmcli/fs') +const { resolve, join } = require('path') -t.ok(1) +const cwd = resolve(__dirname, '..') +const output = join(cwd, 'output') +const cli = require.resolve(resolve(cwd, '..')) + +const rmOutput = () => fs.rm(output, { recursive: true, force: true }).catch(() => {}) + +const spawnNpm = (args, opts) => { + // remove npm config when spawning so config set by test commands don't interfere + const env = Object.entries(process.env) + .filter(([k]) => !k.toLowerCase().startsWith('npm_config_')) + + return spawn('node', [cli, ...args], { + env: Object.fromEntries(env), + stdioString: true, + ...opts, + }) +} + +t.test('docs', async (t) => { + t.teardown(rmOutput) + + await rmOutput() + t.rejects(() => fs.stat(output)) + + // calling run build will rebuild cmark-gfm with a prebuild script + const docs = await spawnNpm(['run', 'build'], { cwd }) + + t.equal(docs.code, 0) + t.ok((await fs.stat(output)).isDirectory()) +}) + +t.test('files used by documention repo', async (t) => { + t.ok((await fs.stat(join(cwd, 'content'))).isDirectory()) + t.ok((await fs.stat(join(cwd, 'nav.yml'))).isFile()) +}) diff --git a/netlify.toml b/netlify.toml deleted file mode 100644 index 508b089d8c9c0..0000000000000 --- a/netlify.toml +++ /dev/null @@ -1,4 +0,0 @@ -[build] - base = "docs" - command = "npm run build" - publish = "output" diff --git a/package-lock.json b/package-lock.json index 5ce8ed996e704..7a3e86db194dc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -166,7 +166,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "licensee": "^8.2.0", "nock": "^13.2.4", "spawk": "^1.7.1", @@ -178,10 +178,13 @@ }, "docs": { "version": "1.0.0", + "license": "ISC", "devDependencies": { "@mdx-js/mdx": "^1.6.22", "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/fs": "^2.1.0", + "@npmcli/promise-spawn": "^1.3.2", + "@npmcli/template-oss": "3.2.2", "cmark-gfm": "^0.9.0", "jsdom": "^18.1.0", "marked-man": "^0.7.0", @@ -854,8 +857,9 @@ }, "node_modules/@npmcli/fs": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.0.tgz", + "integrity": "sha512-DmfBvNXGaetMxj9LTp8NAN9vEidXURrf5ZTslQzEAi/6GbW+4yjaLFQc6Tue5cpZ9Frlk4OBo/Snf1Bh/S7qTQ==", "inBundle": true, - "license": "ISC", "dependencies": { "@gar/promisify": "^1.1.3", "semver": "^7.3.5" @@ -976,8 +980,9 @@ }, "node_modules/@npmcli/promise-spawn": { "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz", + "integrity": "sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg==", "inBundle": true, - "license": "ISC", "dependencies": { "infer-owner": "^1.0.4" } @@ -997,9 +1002,9 @@ } }, "node_modules/@npmcli/template-oss": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/template-oss/-/template-oss-3.2.1.tgz", - "integrity": "sha512-enyoSZduklFsYFonIV2Q65ux+TteiPmQ2CaFbMGW69EdRqnOfySAMY3nMoxJRJOFbfBIj0dSLxaiFFwhKzwpWw==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/template-oss/-/template-oss-3.2.2.tgz", + "integrity": "sha512-jhqthwI5OvhXRuShc87gpDuu5JCbKT7ByEsXrYkW+aaRLvniGwiX/7GNjEPX2Jt7B+5lLG66MVqc+A8MMpdWSA==", "dev": true, "hasInstallScript": true, "dependencies": { @@ -1016,7 +1021,7 @@ "npm-package-arg": "^9.0.1", "proc-log": "^2.0.0", "semver": "^7.3.5", - "yaml": "^2.0.0-10" + "yaml": "^2.0.0-11" }, "bin": { "template-oss-apply": "bin/apply.js", @@ -9533,7 +9538,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "benchmark": "^2.1.4", "chalk": "^4.1.0", "minify-registry-metadata": "^2.1.0", @@ -9556,7 +9561,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.2.4", "tap": "^15.1.0" }, @@ -9579,7 +9584,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "tap": "^15.0.9" }, "engines": { @@ -9605,7 +9610,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "bin-links": "^3.0.0", "tap": "^15.0.6" }, @@ -9621,7 +9626,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "tap": "^15.0.9" }, "engines": { @@ -9637,7 +9642,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.2.4", "tap": "^15.1.0" }, @@ -9654,7 +9659,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "minipass": "^3.1.1", "nock": "^13.2.4", "tap": "^15.0.0" @@ -9673,7 +9678,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.0.7", "tap": "^15.0.0" }, @@ -9693,7 +9698,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "libnpmpack": "^4.0.0", "lodash.clonedeep": "^4.5.0", "nock": "^13.2.4", @@ -9711,7 +9716,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.2.4", "tap": "^15" }, @@ -9728,7 +9733,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.2.4", "tap": "^15" }, @@ -9749,7 +9754,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "require-inject": "^1.4.4", "tap": "^15" }, @@ -10174,7 +10179,7 @@ "@npmcli/node-gyp": "^1.0.3", "@npmcli/package-json": "^1.0.1", "@npmcli/run-script": "^3.0.0", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "benchmark": "^2.1.4", "bin-links": "^3.0.0", "cacache": "^16.0.0", @@ -10241,6 +10246,8 @@ }, "@npmcli/fs": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.0.tgz", + "integrity": "sha512-DmfBvNXGaetMxj9LTp8NAN9vEidXURrf5ZTslQzEAi/6GbW+4yjaLFQc6Tue5cpZ9Frlk4OBo/Snf1Bh/S7qTQ==", "requires": { "@gar/promisify": "^1.1.3", "semver": "^7.3.5" @@ -10320,6 +10327,8 @@ }, "@npmcli/promise-spawn": { "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz", + "integrity": "sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg==", "requires": { "infer-owner": "^1.0.4" } @@ -10334,9 +10343,9 @@ } }, "@npmcli/template-oss": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@npmcli/template-oss/-/template-oss-3.2.1.tgz", - "integrity": "sha512-enyoSZduklFsYFonIV2Q65ux+TteiPmQ2CaFbMGW69EdRqnOfySAMY3nMoxJRJOFbfBIj0dSLxaiFFwhKzwpWw==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/template-oss/-/template-oss-3.2.2.tgz", + "integrity": "sha512-jhqthwI5OvhXRuShc87gpDuu5JCbKT7ByEsXrYkW+aaRLvniGwiX/7GNjEPX2Jt7B+5lLG66MVqc+A8MMpdWSA==", "dev": true, "requires": { "@npmcli/fs": "^2.0.1", @@ -10352,7 +10361,7 @@ "npm-package-arg": "^9.0.1", "proc-log": "^2.0.0", "semver": "^7.3.5", - "yaml": "^2.0.0-10" + "yaml": "^2.0.0-11" }, "dependencies": { "yaml": { @@ -11064,7 +11073,9 @@ "requires": { "@mdx-js/mdx": "^1.6.22", "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/fs": "^2.1.0", + "@npmcli/promise-spawn": "^1.3.2", + "@npmcli/template-oss": "3.2.2", "cmark-gfm": "^0.9.0", "jsdom": "^18.1.0", "marked-man": "^0.7.0", @@ -12351,7 +12362,7 @@ "version": "file:workspaces/libnpmaccess", "requires": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "aproba": "^2.0.0", "minipass": "^3.1.1", "nock": "^13.2.4", @@ -12366,7 +12377,7 @@ "@npmcli/disparity-colors": "^1.0.1", "@npmcli/eslint-config": "^3.0.1", "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "binary-extensions": "^2.2.0", "diff": "^5.0.0", "minimatch": "^3.0.4", @@ -12383,7 +12394,7 @@ "@npmcli/ci-detect": "^2.0.0", "@npmcli/eslint-config": "^3.0.1", "@npmcli/run-script": "^3.0.0", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "bin-links": "^3.0.0", "chalk": "^4.1.0", "mkdirp-infer-owner": "^2.0.0", @@ -12402,7 +12413,7 @@ "requires": { "@npmcli/arborist": "^5.0.0", "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "tap": "^15.0.9" } }, @@ -12410,7 +12421,7 @@ "version": "file:workspaces/libnpmhook", "requires": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "aproba": "^2.0.0", "nock": "^13.2.4", "npm-registry-fetch": "^13.0.0", @@ -12421,7 +12432,7 @@ "version": "file:workspaces/libnpmorg", "requires": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "aproba": "^2.0.0", "minipass": "^3.1.1", "nock": "^13.2.4", @@ -12434,7 +12445,7 @@ "requires": { "@npmcli/eslint-config": "^3.0.1", "@npmcli/run-script": "^3.0.0", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.0.7", "npm-package-arg": "^9.0.1", "pacote": "^13.0.5", @@ -12445,7 +12456,7 @@ "version": "file:workspaces/libnpmpublish", "requires": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "libnpmpack": "^4.0.0", "lodash.clonedeep": "^4.5.0", "nock": "^13.2.4", @@ -12461,7 +12472,7 @@ "version": "file:workspaces/libnpmsearch", "requires": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.2.4", "npm-registry-fetch": "^13.0.0", "tap": "^15" @@ -12471,7 +12482,7 @@ "version": "file:workspaces/libnpmteam", "requires": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "aproba": "^2.0.0", "nock": "^13.2.4", "npm-registry-fetch": "^13.0.0", @@ -12484,7 +12495,7 @@ "@npmcli/eslint-config": "^3.0.1", "@npmcli/git": "^3.0.0", "@npmcli/run-script": "^3.0.0", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "json-parse-even-better-errors": "^2.3.1", "proc-log": "^2.0.0", "require-inject": "^1.4.4", diff --git a/package.json b/package.json index 193a9d5723685..249948be11eed 100644 --- a/package.json +++ b/package.json @@ -203,7 +203,7 @@ ], "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "licensee": "^8.2.0", "nock": "^13.2.4", "spawk": "^1.7.1", @@ -226,7 +226,7 @@ "lint-all": "npm run lint --if-present --workspaces --include-workspace-root", "prelint": "rimraf test/npm_cache*", "resetdeps": "bash scripts/resetdeps.sh", - "smoke-tests": "tap smoke-tests/index.js" + "smoke-tests": "tap smoke-tests/index.js --no-coverage" }, "tap": { "test-env": [ @@ -240,7 +240,7 @@ "templateOSS": { "rootRepo": false, "rootModule": false, - "version": "3.2.1" + "version": "3.2.2" }, "license": "Artistic-2.0", "engines": { diff --git a/scripts/resetdeps.sh b/scripts/resetdeps.sh index 957987731d422..a8527f8591aab 100755 --- a/scripts/resetdeps.sh +++ b/scripts/resetdeps.sh @@ -2,7 +2,9 @@ set -e set -x rm -rf node_modules +rm -rf docs/node_modules +rm -rf "workspaces/*/node_modules" git checkout node_modules -node . i --ignore-scripts --no-audit -node . rebuild --ignore-scripts --no-audit +node . i --ignore-scripts --no-audit --no-fund +node . rebuild --ignore-scripts node scripts/bundle-and-gitignore-deps.js diff --git a/workspaces/arborist/package.json b/workspaces/arborist/package.json index 77c76821b5106..ec45dc1747433 100644 --- a/workspaces/arborist/package.json +++ b/workspaces/arborist/package.json @@ -40,7 +40,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "benchmark": "^2.1.4", "chalk": "^4.1.0", "minify-registry-metadata": "^2.1.0", @@ -101,6 +101,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmaccess/package.json b/workspaces/libnpmaccess/package.json index 9efc850760049..68ac1c28902f7 100644 --- a/workspaces/libnpmaccess/package.json +++ b/workspaces/libnpmaccess/package.json @@ -20,7 +20,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.2.4", "tap": "^15.1.0" }, @@ -49,6 +49,6 @@ ], "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmdiff/package.json b/workspaces/libnpmdiff/package.json index eff595823a1b7..eeddaf09fdc77 100644 --- a/workspaces/libnpmdiff/package.json +++ b/workspaces/libnpmdiff/package.json @@ -49,7 +49,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "tap": "^15.0.9" }, "dependencies": { @@ -64,6 +64,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmexec/package.json b/workspaces/libnpmexec/package.json index f40ee4b4384d4..7245f15b2ed91 100644 --- a/workspaces/libnpmexec/package.json +++ b/workspaces/libnpmexec/package.json @@ -51,7 +51,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "bin-links": "^3.0.0", "tap": "^15.0.6" }, @@ -71,6 +71,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmfund/package.json b/workspaces/libnpmfund/package.json index 99795bf43d08c..ddc95f2f0a3b7 100644 --- a/workspaces/libnpmfund/package.json +++ b/workspaces/libnpmfund/package.json @@ -48,7 +48,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "tap": "^15.0.9" }, "dependencies": { @@ -59,6 +59,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmhook/package.json b/workspaces/libnpmhook/package.json index 552bc019ac6df..4071d38ee5250 100644 --- a/workspaces/libnpmhook/package.json +++ b/workspaces/libnpmhook/package.json @@ -43,7 +43,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.2.4", "tap": "^15.1.0" }, @@ -52,6 +52,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmorg/package.json b/workspaces/libnpmorg/package.json index 9096f799b7ee6..58ca5ec42e3af 100644 --- a/workspaces/libnpmorg/package.json +++ b/workspaces/libnpmorg/package.json @@ -34,7 +34,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "minipass": "^3.1.1", "nock": "^13.2.4", "tap": "^15.0.0" @@ -55,6 +55,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmpack/package.json b/workspaces/libnpmpack/package.json index a76b859d4b4a5..4ee093c74d616 100644 --- a/workspaces/libnpmpack/package.json +++ b/workspaces/libnpmpack/package.json @@ -29,7 +29,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.0.7", "tap": "^15.0.0" }, @@ -50,6 +50,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmpublish/package.json b/workspaces/libnpmpublish/package.json index 3828f35794bc0..bb911039e309c 100644 --- a/workspaces/libnpmpublish/package.json +++ b/workspaces/libnpmpublish/package.json @@ -31,7 +31,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "libnpmpack": "^4.0.0", "lodash.clonedeep": "^4.5.0", "nock": "^13.2.4", @@ -56,6 +56,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmsearch/package.json b/workspaces/libnpmsearch/package.json index 9d44e4057f61b..7bf69ecb8af45 100644 --- a/workspaces/libnpmsearch/package.json +++ b/workspaces/libnpmsearch/package.json @@ -32,7 +32,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.2.4", "tap": "^15" }, @@ -51,6 +51,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmteam/package.json b/workspaces/libnpmteam/package.json index 70a6e0a366726..7f8ee98f2868d 100644 --- a/workspaces/libnpmteam/package.json +++ b/workspaces/libnpmteam/package.json @@ -19,7 +19,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "nock": "^13.2.4", "tap": "^15" }, @@ -45,6 +45,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } } diff --git a/workspaces/libnpmversion/package.json b/workspaces/libnpmversion/package.json index 980a86bc0c3ca..2a3a7716a13e2 100644 --- a/workspaces/libnpmversion/package.json +++ b/workspaces/libnpmversion/package.json @@ -32,7 +32,7 @@ }, "devDependencies": { "@npmcli/eslint-config": "^3.0.1", - "@npmcli/template-oss": "3.2.1", + "@npmcli/template-oss": "3.2.2", "require-inject": "^1.4.4", "tap": "^15" }, @@ -49,6 +49,6 @@ }, "templateOSS": { "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.", - "version": "3.2.1" + "version": "3.2.2" } }