Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: npm/cli
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v9.7.2
Choose a base ref
...
head repository: npm/cli
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v9.8.0
Choose a head ref
  • 10 commits
  • 101 files changed
  • 5 contributors

Commits on Jun 26, 2023

  1. chore: normalize line endings and symlinks

    This makes it possible to do a fresh clone of this repo in Windows, and
    be able to run the resetdeps command successfully and then have a clean
    git status. We now check for a clean git status in during CI in Windows
    which was previously excluded.
    
    The changes required were to:
    - Delete our workspace symlinks from node_modules and add a step to
      resetdeps that will do a platform dependent symlink before the initial
      reification
    - Add line ending normalization to our `.gitattributes` file and commit
      the result. Git will store text with LF line endings automatically,
      except for some files like `cmd` scripts that need to be `crlf` and
      shell scripts that need to be `lf`.
    - Update workflows to call `node scripts/resetdeps.js` directly since a
      fresh clone of the repo wont have any symlinks in place, so any
      `node .` command will fail due to missing workspaces.
    
    Ref: npm/statusboard#562
    lukekarrys authored and wraithgar committed Jun 26, 2023
    Copy the full SHA
    a2fa41e View commit details
  2. chore: run all windows shims tests

    lukekarrys authored and wraithgar committed Jun 26, 2023
    Copy the full SHA
    332dec3 View commit details
  3. feat: add ps1 scripts (#6548)

    * add ps1 scripts
    
    Resolves UNC path issues because powershell.exe
    supports UNC, while cmd.exe doesn't.
    (Which is why npm.cmd doesn't work within
    UNC paths, even under powershell)
    
    Resolves #6280
    
    * fixup: add tests and prefix for ps1 scripts
    
    ---------
    
    Co-authored-by: Luke Karrys <luke@lukekarrys.com>
    mribbons and lukekarrys authored Jun 26, 2023
    Copy the full SHA
    89b2741 View commit details

Commits on Jun 30, 2023

  1. feat: SLSA 1.0 provenance statement (#6613)

    Generates a SLSA 1.0 compliant provenance statement for packages
    published from GitHub Actions.
    
    Signed-off-by: Brian DeHamer <bdehamer@github.com>
    bdehamer authored Jun 30, 2023
    Copy the full SHA
    5baf6a2 View commit details

Commits on Jul 3, 2023

  1. deps: sigstore@1.7.0 (#6623)

    Signed-off-by: Brian DeHamer <bdehamer@github.com>
    bdehamer authored Jul 3, 2023
    Copy the full SHA
    9238682 View commit details

Commits on Jul 5, 2023

  1. chore: fix publish test in a git worktree (#6627)

    The git detection doesn't work in a git worktree
    wraithgar authored Jul 5, 2023
    1
    Copy the full SHA
    690c9fc View commit details
  2. 1
    Copy the full SHA
    b252164 View commit details
  3. Copy the full SHA
    c61e037 View commit details
  4. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    67459e7 View commit details
  5. chore: release 9.8.0

    github-actions[bot] authored and wraithgar committed Jul 5, 2023

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    b1c3256 View commit details
Showing with 1,336 additions and 738 deletions.
  1. +27 −2 .gitattributes
  2. +3 −1 .github/workflows/audit.yml
  3. +6 −3 .github/workflows/ci-libnpmaccess.yml
  4. +6 −3 .github/workflows/ci-libnpmdiff.yml
  5. +6 −3 .github/workflows/ci-libnpmexec.yml
  6. +6 −3 .github/workflows/ci-libnpmfund.yml
  7. +6 −3 .github/workflows/ci-libnpmhook.yml
  8. +6 −3 .github/workflows/ci-libnpmorg.yml
  9. +6 −3 .github/workflows/ci-libnpmpack.yml
  10. +6 −3 .github/workflows/ci-libnpmpublish.yml
  11. +6 −3 .github/workflows/ci-libnpmsearch.yml
  12. +6 −3 .github/workflows/ci-libnpmteam.yml
  13. +6 −3 .github/workflows/ci-libnpmversion.yml
  14. +6 −3 .github/workflows/ci-npmcli-arborist.yml
  15. +6 −3 .github/workflows/ci-npmcli-config.yml
  16. +10 −5 .github/workflows/ci-npmcli-docs.yml
  17. +6 −3 .github/workflows/ci-npmcli-mock-globals.yml
  18. +6 −3 .github/workflows/ci-npmcli-mock-registry.yml
  19. +6 −3 .github/workflows/ci-npmcli-smoke-tests.yml
  20. +9 −4 .github/workflows/ci-release.yml
  21. +47 −5 .github/workflows/ci.yml
  22. +3 −1 .github/workflows/create-node-pr.yml
  23. +2 −2 .github/workflows/node-integration.yml
  24. +3 −1 .github/workflows/pull-request.yml
  25. +6 −2 .github/workflows/release.yml
  26. +7 −7 .release-please-manifest.json
  27. +1 −0 AUTHORS
  28. +18 −0 CHANGELOG.md
  29. +0 −2 DEPENDENCIES.md
  30. +22 −5 bin/npm
  31. +19 −19 bin/npm.cmd
  32. +35 −0 bin/npm.ps1
  33. +22 −5 bin/npx
  34. +20 −20 bin/npx.cmd
  35. +35 −0 bin/npx.ps1
  36. +7 −0 docs/lib/content/commands/npm-pkg.md
  37. +8 −0 lib/commands/pkg.js
  38. +2 −13 node_modules/.gitignore
  39. +0 −1 node_modules/@npmcli/arborist
  40. +0 −1 node_modules/@npmcli/config
  41. +119 −53 node_modules/@npmcli/package-json/lib/index.js
  42. +84 −4 node_modules/@npmcli/package-json/lib/normalize.js
  43. +1 −1 node_modules/@npmcli/package-json/package.json
  44. +4 −8 node_modules/@sigstore/tuf/package.json
  45. +0 −1 node_modules/libnpmaccess
  46. +0 −1 node_modules/libnpmdiff
  47. +0 −1 node_modules/libnpmexec
  48. +0 −1 node_modules/libnpmfund
  49. +0 −1 node_modules/libnpmhook
  50. +0 −1 node_modules/libnpmorg
  51. +0 −1 node_modules/libnpmpack
  52. +0 −1 node_modules/libnpmpublish
  53. +0 −1 node_modules/libnpmsearch
  54. +0 −1 node_modules/libnpmteam
  55. +0 −1 node_modules/libnpmversion
  56. BIN node_modules/qrcode-terminal/example/basic.png
  57. +0 −48 node_modules/sigstore/dist/merkle/digest.js
  58. +0 −22 node_modules/sigstore/dist/merkle/index.js
  59. +0 −78 node_modules/sigstore/dist/merkle/verify.js
  60. +1 −1 node_modules/sigstore/dist/sigstore-utils.js
  61. +21 −3 node_modules/sigstore/dist/sigstore.js
  62. +9 −1 node_modules/sigstore/dist/tlog/verify/index.js
  63. +109 −0 node_modules/sigstore/dist/tlog/verify/merkle.js
  64. +32 −35 node_modules/sigstore/dist/types/sigstore/index.js
  65. +15 −0 node_modules/sigstore/dist/types/sigstore/validate.js
  66. +5 −12 node_modules/sigstore/package.json
  67. +0 −1 node_modules/sigstore/store/public-good-instance-root.json
  68. +50 −35 package-lock.json
  69. +9 −9 package.json
  70. +54 −49 scripts/bundle-and-gitignore-deps.js
  71. +5 −4 scripts/dependency-graph.js
  72. +0 −4 scripts/npm-cli-repos.txt
  73. +14 −8 scripts/resetdeps.js
  74. +3 −1 scripts/template-oss/_step-deps.yml
  75. +0 −1 scripts/template-oss/_step-test.yml
  76. +1 −1 scripts/template-oss/ci-npmcli-docs.yml
  77. +21 −0 scripts/template-oss/ci.yml
  78. +2 −2 scripts/template-oss/node-integration.yml
  79. +2 −2 scripts/update-authors.js
  80. +6 −1 scripts/util.js
  81. +2 −0 tap-snapshots/test/lib/docs.js.test.cjs
  82. +201 −93 test/bin/windows-shims.js
  83. +18 −0 test/lib/commands/pkg.js
  84. +1 −1 test/lib/commands/publish.js
  85. +14 −0 workspaces/arborist/CHANGELOG.md
  86. +1 −2 workspaces/arborist/lib/arborist/reify.js
  87. +2 −2 workspaces/arborist/package.json
  88. +9 −6 workspaces/arborist/test/fixtures/index.js
  89. +31 −31 workspaces/arborist/test/fixtures/tap-with-yarn-lock/node_modules/json-schema/package.json
  90. +6 −0 workspaces/libnpmdiff/CHANGELOG.md
  91. +2 −2 workspaces/libnpmdiff/package.json
  92. +6 −0 workspaces/libnpmexec/CHANGELOG.md
  93. +2 −2 workspaces/libnpmexec/package.json
  94. +6 −0 workspaces/libnpmfund/CHANGELOG.md
  95. +2 −2 workspaces/libnpmfund/package.json
  96. +6 −0 workspaces/libnpmpack/CHANGELOG.md
  97. +2 −2 workspaces/libnpmpack/package.json
  98. +6 −0 workspaces/libnpmpublish/CHANGELOG.md
  99. +37 −45 workspaces/libnpmpublish/lib/provenance.js
  100. +1 −1 workspaces/libnpmpublish/package.json
  101. +12 −10 workspaces/libnpmpublish/test/publish.js
29 changes: 27 additions & 2 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,2 +1,27 @@
/node_modules/** linguist-generated=false
/package-lock.json linguist-generated=false
# normalize all line endings by default
* text=auto

# our shell/bin scripts always need to be LF
/bin/* text eol=lf
/workspaces/arborist/bin/index.js text eol=lf
/configure text eol=lf

# our cmd scripts always need to be CRLF
/bin/*.cmd text eol=crlf

# ignore all line endings in node_modules since we dont control that
/node_modules/** -text

# the files we write should be LF so they can be generated cross platform
/node_modules/.gitignore text eol=lf
/workspaces/arborist/test/fixtures/.gitignore text eol=lf
/DEPENDENCIES.md text eol=lf
/AUTHORS text eol=lf

# fixture tarballs should be treated as binary
/workspaces/*/test/fixtures/**/*.tgz binary

# these hint to GitHub to show these files as not generated so they default to
# showing the full diff in pull requests
/node_modules/** linguist-generated=false
/package-lock.json linguist-generated=false
4 changes: 3 additions & 1 deletion .github/workflows/audit.yml
Original file line number Diff line number Diff line change
@@ -28,8 +28,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps -- --package-lock
run: node scripts/resetdeps.js --package-lock
- name: Run Production Audit
run: node . audit --omit=dev
- name: Run Full Audit
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmaccess.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmaccess
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmaccess
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmdiff.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmdiff
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmdiff
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmexec.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmexec
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmexec
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmfund.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmfund
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmfund
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmhook.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmhook
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmhook
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmorg.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmorg
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmorg
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmpack.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmpack
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmpack
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmpublish.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmpublish
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmpublish
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmsearch.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmsearch
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmsearch
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmteam.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmteam
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmteam
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-libnpmversion.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w libnpmversion
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w libnpmversion
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
9 changes: 6 additions & 3 deletions .github/workflows/ci-npmcli-arborist.yml
Original file line number Diff line number Diff line change
@@ -37,8 +37,10 @@ jobs:
with:
node-version: 18.x
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Lint
run: node . run lint --ignore-scripts -w @npmcli/arborist
- name: Post Lint
@@ -83,12 +85,13 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Check Git Status
run: node scripts/git-dirty.js
- name: Reset Deps
run: node . run resetdeps
run: node scripts/resetdeps.js
- name: Add Problem Matcher
run: echo "::add-matcher::.github/matchers/tap.json"
- name: Test
run: node . test --ignore-scripts -w @npmcli/arborist
- name: Check Git Status
if: matrix && matrix.platform.os != 'windows-latest'
run: node scripts/git-dirty.js
Loading