Commit Graph

10132 Commits

Author SHA1 Message Date
Vedant Madane
1df570b468 feat: show available workspace versions on mismatch (#10466) 2026-01-16 20:17:02 +01:00
Johan Quan Vo
d75628a612 fix: use tarball URL returned in package metadata (#10431)
close #10254
2026-01-16 20:10:59 +01:00
Zoltan Kochan
49d85a3e3a fix: remove redundant ports from registry URL during normalization (#10470) 2026-01-16 20:10:08 +01:00
Zoltan Kochan
3e70e2e703 docs: add AI agent guides (#10469) 2026-01-16 20:09:05 +01:00
Tensorworker
916b26b63c fix: prevent implicit root exclusion when user filters are provided (#10465)
* fix: prevent implicit root exclusion when user filters are provided

* docs: add changeset

* test: remove redundant init

---------

Co-authored-by: tensorworker <tensorworker@proton.me>
Co-authored-by: Zoltan Kochan <z@kochan.io>
2026-01-16 20:08:59 +01:00
Oleg Pustovit
85416ea581 fix(run): fail when no packages have script in filtered recursive run (#10437)
* fix(run): fail when no packages have script in filtered recursive run

Previously, `pnpm run -r <script>` and `pnpm run --filter <filter> <script>`
would silently succeed with exit code 0 when no packages had the specified
script, as long as a filter was used. This was inconsistent with the
documentation which states "If none of the packages have the command, the
command fails."

This change makes the command fail with ERR_PNPM_RECURSIVE_RUN_NO_SCRIPT in
all cases where no packages have the script, regardless of whether a filter
is used. The `--if-present` flag can be used to suppress this error.

close #6844
2026-01-16 01:53:37 +01:00
Zoltan Kochan
6ca07ffbe6 fix: normalize Windows backslash path traversal attempts in tarball entry filenames
to prevent security vulnerabilities.
2026-01-16 01:53:31 +01:00
Zoltan Kochan
8afbb15984 fix: prevent path traversal by validating bin names 2026-01-16 01:53:24 +01:00
btea
6e4b09415f fix: make catalog protocol matching error messages clearer (#10052)
* fix: verify in advance whether the specifier that the catalog pkg is valid

* fix: update error message

* test: update

* Update resolving/default-resolver/src/index.ts

Co-authored-by: Brandon Cheng <gluxon@users.noreply.github.com>

---------

Co-authored-by: Brandon Cheng <gluxon@users.noreply.github.com>
2026-01-16 01:53:08 +01:00
Zoltan Kochan
9cbba288fc fix(exec): preserve user execution cwd (#10445)
close #5759
close #10403
2026-01-16 01:52:31 +01:00
Sam Chung
80a608008a revert: "fix: try not to make network requests with prefer offline" (#10423)
* Revert "fix: try not to make network requests with prefer offline (#10334)"

This reverts commit 1bc6b5ac2c.

* Add changeset

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2026-01-12 13:41:32 +01:00
Zoltan Kochan
91a241e692 chore(release): 10.28.0 v10.28.0 2026-01-09 23:47:40 +01:00
Zoltan Kochan
80f7061e35 docs: update copyright year in LICENSE file 2026-01-09 19:58:43 +01:00
Brandon Cheng
ff4747f6c2 feat: improve filtered install performance
with an optimistic lookup of package metadata from store (#10408)
2026-01-09 19:56:51 +01:00
Zoltan Kochan
7e0879443b fix: prevent circular symlinks in projects registry (#10432)
close #10411
2026-01-09 19:29:17 +01:00
Zoltan Kochan
1f847120f0 chore: ignore not relevant vulnerability 2026-01-07 01:55:46 +01:00
Zoltan Kochan
a9784fb3df revert: "chore: upgrade qs to 6.14.1 (#10389)"
This reverts commit 787ed46577.
2026-01-07 01:22:18 +01:00
Dasa Paddock
6d58b102a9 feat(hooks): add beforePacking hook (v10) (#10414)
* feat(hooks): add `beforePacking` hook (#10303)

* feat(hooks): add `readPackageForPublishing` hook

* feat: pass project `dir` parameter to `readPackageForPublishing` hook

* chore: cleanup

* fix: add support for multiple pnpmfiles

* test: readPackageForPublishing hook

* test: add more tests

* test: small update

* refactor: pass in `hooks` as an option

* test: pass in `hooks` as an option

* test: small update

* chore: rename `readPackageForPublishing` to `beforePacking`

* test: fix
2026-01-07 01:21:50 +01:00
Brandon Cheng
787ed46577 chore: upgrade qs to 6.14.1 (#10389) 2026-01-04 17:05:03 +01:00
Zoltan Kochan
31a95b0559 chore: update pnpm 2026-01-04 16:46:04 +01:00
Zoltan Kochan
f022a1b29a fix: setting requiredScripts in pnpm-workspace.yaml (#10404)
close #10261
2026-01-04 16:45:44 +01:00
Zoltan Kochan
6bdba72ad3 chore(release): 10.27.0 v10.27.0 2025-12-30 21:49:41 +01:00
Zoltan Kochan
512f18817d fix: git dependencies respect dangerouslyAllowAllBuilds (#10387)
close #10376
2025-12-30 19:02:47 +01:00
Zoltan Kochan
fa2a02b29e test: fix 2025-12-30 18:40:05 +01:00
Junius Chen
1c1053308f fix(store): return only directory names when clean expired cache (#10384)
* fix(store): return only directory names when clean expired cache

* docs: add changeset

* test: clean dlx cache

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-12-30 18:03:48 +01:00
Zoltan Kochan
99e1adab52 feat: add validation to tokenHelper settings to disallow environment variables 2025-12-30 18:03:38 +01:00
Phantom
c23bdf7311 feat(cli): skip package manager check when using --global option (#10368)
Add warning when package manager check is skipped due to --global flag

close #10367
2025-12-29 02:08:06 +01:00
Brandon Cheng
6eb43b356c fix: pnpm add incorrectly modifies a catalog entry in pnpm-workspace.yaml to its exact version (#10370)
* refactor: factor out a `getRealNameAndSpec` function

* test: `pnpm add` does not modify existing catalog entries

* fix: resolve preferred version without mutating bare specifier

close #9759
2025-12-29 02:07:59 +01:00
Brandon Cheng
5d983ba175 fix: handle npm aliases without a bare specifier in unwrapPackageName (#10374)
* refactor: factor out a `getRealNameAndSpec` function

* fix: handle npm aliases without a bare specifier in `unwrapPackageName`

* Fix formatting in unwrapPackageName.ts
2025-12-29 02:07:53 +01:00
Brandon Cheng
25d7e790f8 refactor: factor out a getRealNameAndSpec function (#10369) 2025-12-29 02:07:46 +01:00
btea
3f2c5f4d39 feat: add trustPolicyIgnoreAfter (#10359)
* feat: add `trustPolicyIgnoreAfter`

* Update .changeset/big-lies-pump.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* refactor: npm-resolver

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-12-28 02:03:56 +01:00
Zoltan Kochan
b1ea7e09bd test: skip 2025-12-27 16:09:21 +01:00
Zoltan Kochan
9a2393f67e feat: enable injected local packages to work with global virtual store (#10366)
* feat: enable injected local packages to work with global virtual store

by leveraging `pkgLocationsByDepPath` for `file:` dependencies.

* fix: populate `pkgLocationsByDepPath` directly for directory dependencies in the graph builder

* refactor: store directory dependencies as a Map instead of an object

* refactor: improve file: dependency target directory resolution

by prioritizing `directoryDepsByDepPath` and providing a lockfile fallback.

* refactor: remove `pkgLocationsByDepPath` from hoisted dependency graph generation parameters

* test: fix

* test: fix

* refactor: simplify directory lookup for injected workspace packages

by directly using the dependency graph

* refactor: move extendProjectsWithTargetDirs to headless module and update imports

* refactor: make `directoryDepsByDepPath` required

in `LockfileToDepGraphOptions` and remove its nullish coalescing in headless

* refactor: directory dependency tracking

by renaming `directoryDepsByDepPath` to `injectionTargetsByDepPath`
and extracting related logic, and remove an unused export.

* docs: add changesets

* fix: implemented CR suggestions
2025-12-27 12:28:09 +01:00
Zoltan Kochan
c78216e0bb test: fix on Windows 2025-12-27 12:27:52 +01:00
Zoltan Kochan
0958027f88 feat: enhance store prune to clean global virtual store (#10360)
* feat: enhance `store prune` to clean global virtual store

`pnpm store prune` will now clean the global virtual store
via a new project registry and mark-and-sweep garbage collection.

* test: add store prune test for transitive dependency preservation

* refactor: extract global virtual store pruning logic to a new file

* fix: improve symlink handling in global virtual store pruning

* fix: optimize removal of unreachable packages in global virtual store

* fix: refine project registry error handling

Throw `PnpmError` for inaccessible projects
and specifically clean up stale symlinks for `ENOENT` errors.

* test: create virtual store with install command

* refactor: standardize global virtual store directory structure

by placing unscoped packages under an `@` scope.

* test: update store prune tests to use `toContain` and `not.toContain` assertions`

* fix: linting issues

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: implemented CR suggestions

* fix: revert not needed change

* fix: use `is-subdir` to accurately determine if symlink targets

are within the global virtual store.

* revert: changes in package.json files

* test: add `--config.ci=false` to store prune tests
2025-12-26 02:07:48 +01:00
Zoltan Kochan
afb8a3d635 fix: update unscoped package storage location in virtual global store (#10363) 2025-12-26 02:01:44 +01:00
Zoltan Kochan
8ec7939657 chore(release): 10.26.2 v10.26.2 2025-12-23 14:34:19 +01:00
Zoltan Kochan
1e5643fcda test: making the rebuild tests stable 2025-12-23 13:39:41 +01:00
Zoltan Kochan
644c97a1de test: fix 2025-12-23 13:39:35 +01:00
Zoltan Kochan
f9d53286e5 fix: compile 2025-12-23 12:45:14 +01:00
Zoltan Kochan
914f2e5e3e fix: linking commands of engines (#10354)
close #10244
2025-12-23 12:31:42 +01:00
Zoltan Kochan
c70accc134 refactor: binary fetcher 2025-12-23 12:31:36 +01:00
Zoltan Kochan
cdd1fcd1fc fix(git-resolver): installing git-hosted dependency using annotated tags (#10349)
close #10335
2025-12-23 12:31:19 +01:00
月正海角
71624c9384 feat: improve error message for versions not meeting minimumReleaseAge (#10350)
close #10307
2025-12-23 12:31:08 +01:00
Zoltan Kochan
02476121b8 ci: increase timeout for pnpm install step 2025-12-23 12:30:34 +01:00
btea
cb9f72c658 fix: install absolute path pkg failed (#9888) 2025-12-23 12:30:07 +01:00
Sam Chung
080857a3b9 fix: try not to make network requests with prefer offline (#10334) 2025-12-23 12:29:41 +01:00
Zoltan Kochan
7f4ff92602 test: making tests in plugin-commands-audit stable (#10346) 2025-12-23 12:29:28 +01:00
Zoltan Kochan
97faa0b5e1 test: fix 2025-12-22 13:37:23 +01:00
Zoltan Kochan
4986c46b48 chore(release): 10.26.1 v10.26.1 2025-12-19 01:48:40 +01:00