Commit Graph

736 Commits

Author SHA1 Message Date
Zoltan Kochan
2c04ef22c4 Merge branch 'v10' 2025-03-17 15:20:31 +01:00
Zoltan Kochan
cae084888c chore(release): 10.6.4 2025-03-17 14:46:34 +01:00
Zoltan Kochan
e5b7bf4694 fix: dlx with --allow-build flag (#9281)
close #9263
2025-03-14 02:31:02 +01:00
Zoltan Kochan
c1f09d48fa fix: dlx with --allow-build flag (#9281)
close #9263
2025-03-14 02:27:58 +01:00
Zoltan Kochan
3c24d93506 Merge remote-tracking branch 'origin/v10' 2025-03-13 15:47:00 +01:00
Zoltan Kochan
942de71d5d chore(release): 10.6.3 2025-03-13 15:04:57 +01:00
Khải
5f7be645e4 feat(patching): version ranges and strict patches (#9236)
* feat: replace a config

This is a test commit to see if CI fails

* feat: `strictPatches`

* docs: future instruction

* feat: `strictPatches` → `allowPatchFailure`

* docs(changeset): correction

* test: getOptionsFromRootManifest

* fix: allowFailure

* feat: groupPatchedDependencies

* fix: update code after merge

* fix: star spec

* feat: error on invalid ranges

* fix: eslint

* docs: change task

* feat(patching): version ranges

* fix: `verifyPatches`

* refactor: move types to `@pnpm/patching.types`

* docs(changeset): add missing package

* refactor: move `verifyPatches` to `@pnpm/patching.config`

* test: fix

* feat: change error message of unused patches

* refactor: exact options into an interface

* test(patching): version range

* test(patching): allowPatchFailure

* docs: change wording

* docs: change wording

* test(patching): version range error

* test(patching): legacy behavior

* test: don't use star

* test(patching): strict versionless

* test: strictPatches

* chore(deps): `@pnpm/logger` must be peer

* docs: fix grammar

* refactor: rename `blank` to `all`

* refactor: use string

* refactor: use array for `PatchGroup.range`

* refactor: stop re-exporting `allPatchKeys`

* feat: re-export `PatchGroupRangeItem`

* refactor: move error creation into a class

* docs: replace "versionless" with "name-only"

* docs: coherent wordings

* test: exact version overrides range conflict

* test: tweak

* docs: consistent wordings

* docs: correct wordings

* refactor: rename `allowPatchFailure` to `ignorePatchFailures`

* feat: replace `strictPatches` with `ignorePatchFailures`

* docs: legacy behavior

* feat: introduce `allowUnusedPatches`

* docs(changeset): update

* docs: remove outdated comment

* docs: backward-compatibility
2025-03-13 12:13:06 +01:00
Brandon Cheng
b4efd0eca8 refactor: always load all projects into allProjectsGraph (#9259) 2025-03-11 02:59:23 +01:00
Brandon Cheng
cda1c43dad refactor: prune lockfile importers when running pnpm deploy to prepare for allProjectsGraph refactor (#9258)
* feat: support `pruneLockfileImporters` as argument to install

* fix: remove unnecessary importers from filtered lockfile during deploy
2025-03-11 02:52:32 +01:00
Zoltan Kochan
65da4d9e6a chore(release): 10.6.2 2025-03-10 03:15:12 +01:00
Zoltan Kochan
a2d46b4570 chore(release): 10.6.1 2025-03-07 02:29:19 +01:00
Zoltan Kochan
86ff415755 chore(release): 10.6.0 2025-03-06 12:09:26 +01:00
btea
d9d7607cc1 fix: update choice list not show deprecated pkg (#9214)
---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-03-06 02:34:23 +01:00
Zoltan Kochan
d965748ff4 feat: setting config settings via pnpm-workspace.yaml (#9211)
Related discussion: https://github.com/orgs/pnpm/discussions/9037
2025-03-04 15:09:13 +01:00
btea
adb236f1a1 refactor: improve regexp (#9203) 2025-03-02 13:17:09 +01:00
Brandon Cheng
e4eeafdb55 fix: catalog snapshots removed on filtered install with dedupe-peer-dependents=false (#9175)
* test: add catalog test for --filter and dedupe-peer-dependents=false

* fix: disable dedupe-injected-deps when deploying

* fix: catalog snapshots removed with dedupe-peer-dependents=false
2025-03-02 12:42:46 +01:00
Ben McCann
b8b0c687f2 perf: switch to tinyglobby (#9169) 2025-03-02 03:06:12 +01:00
Zoltan Kochan
5e78da2d57 style: order the keys in package.json files 2025-03-01 21:45:13 +01:00
Zoltan Kochan
6a59366248 fix: self-update should not read pnpm settings from current package.json (#9196)
close #9188
close #9183
2025-03-01 13:49:56 +01:00
Zoltan Kochan
70d565cf79 chore(release): 10.5.1 2025-02-26 12:56:43 +01:00
R.P. Pedraza
76973d8c81 feat(link): normalize generated link paths in package.json (#9163) 2025-02-26 02:56:59 +01:00
Zoltan Kochan
0e9fff7bef chore(release): 10.5.0 2025-02-25 12:27:14 +01:00
R.P. Pedraza
529696182f fix: reference root manifest directory instead of the dependent dir (#9132)
* fix: reference root manifest directory instead of the dependent dir

This fixes https://github.com/pnpm/pnpm/issues/9066.

* refactor: link test

* docs: add changeset

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-02-25 02:15:38 +01:00
Brandon Cheng
41dada429b fix: catalog snapshots removed on filtered install with --fix-lockfile (#9152)
close #8639
2025-02-24 02:41:27 +01:00
Brandon Cheng
43681529cf refactor: make frozen install logic clearer (#9148)
* refactor: declare interface for `_install` function result

* refactor: create new function for attempting frozen install

* refactor: early return if frozen-like install is not possible

* refactor: early return in frozenInstall() for empty/missing lockfile

* refactor: return `null` from tryFrozenInstall() if attempt failed

* refactor: add comments to `isFrozenInstallPossible`

* refactor: move tryFrozenInstall out from _install

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-02-23 13:34:07 +01:00
Brandon Cheng
2d16f7a4a9 fix: stale catalog protocol reference on filtered install (#9126)
#8638
2025-02-22 13:22:36 +01:00
Zoltan Kochan
8fcc221394 feat: reading settings from pnpm-workspace.yaml (#9121)
Related discussion: https://github.com/orgs/pnpm/discussions/9037

close #9033
2025-02-22 02:10:43 +01:00
Zoltan Kochan
ee72c62db9 chore(release): 10.4.1 2025-02-16 22:37:26 +01:00
btea
546ab377de fix: --allow-build=<pkg> overlaps with ignoredBuiltDependencies (#9105)
* fix: `--allow-build=<pkg>` overlaps with `ignoredBuiltDependencies`

* feat: update

* fix: update

* test: update

* fix: add hint to the error message

* test: fix

* docs: update changeset

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-02-16 22:07:52 +01:00
Zoltan Kochan
2a6b51f483 chore(release): 10.4.0 2025-02-14 01:18:32 +01:00
Zoltan Kochan
91d46eecd4 feat: add --allow-build=<pkg> to add command (#9086) 2025-02-13 00:43:44 +01:00
Zoltan Kochan
a5b36b7355 fix: don't remove ignored builds list on repeat install (#9083)
close #9045
2025-02-12 01:30:44 +01:00
Zoltan Kochan
1dc2804f7a chore(release): 10.3.0 2025-02-11 00:34:43 +01:00
Zoltan Kochan
f6006f2b4b feat: add an option to fail on unapproved dependency builds (#9071) 2025-02-11 00:26:25 +01:00
Zoltan Kochan
371734043a fix: make the warning about blocked install scripts more prominent (#9067) 2025-02-09 01:34:18 +01:00
Zoltan Kochan
d40dfebdca chore(release): 10.2.1 2025-02-06 20:00:29 +01:00
Zoltan Kochan
9843aedd76 fix: don't read from side-effects cache packages that aren't allowed to be built (#9047)
close #9042
2025-02-06 00:12:54 +01:00
Zoltan Kochan
97e0f5da61 chore(release): 10.2.0 2025-02-03 18:32:38 +01:00
Zoltan Kochan
b5ba5350bf feat(dlx): add an option to dlx for providing a list of deps that are allowed to run install scripts (#9026) 2025-02-03 14:46:28 +01:00
Khải
e8c2b173ca fix(overrides): move invalid peers to prod deps (#9000)
close #8978

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-01-28 18:00:59 +01:00
Zoltan Kochan
c5a0b9ea43 chore(release): 10.1.0 2025-01-26 22:26:45 +01:00
btea
2b49ee77c7 fix: install dependencies execute preprepare and postprepare scripts (#8989)
* fix: install dependencies execute preprepare script

* chore: remove unnecessary code

* fix: postprepare should run

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-01-26 20:31:00 +01:00
Khải
f3ffaed009 feat(install): option to disable fast reinstall (#8977) 2025-01-26 11:53:16 +01:00
Zoltan Kochan
961dc5d29d feat: add ignored-builds command (#8963)
* feat: add ignored-builds command

* test: ignored-builds

* test: ignored-builds

* fix: document the new command

* refactor: update text

* feat: add approve-builds command

* feat: rebuild approved packages

* fix: ignored builds

* feat: add final approval prompt

* test: approve builds

* refactor: approve-builds
2025-01-25 18:51:35 +01:00
btea
7a9473b237 fea: pnpm.ignoredBuiltDependencies for muting warnings about ignored dependency builds (#8958)
close #8935

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-01-12 02:17:44 +01:00
Zoltan Kochan
040e67b88d fix: don't print patched dependencies in list of non-built deps (#8961)
close #8952
2025-01-11 02:20:12 +01:00
Khải
ea58bfdc47 fix(validatePeerDependencies): allow combinations (#8946) 2025-01-08 11:31:37 +01:00
Zoltan Kochan
42ecf04fd0 chore(release): 10.0.0 2025-01-07 15:28:17 +01:00
Khải
26fe99440d feat!: prevent nonsense peerDependencies (#8942)
* feat!: prevent nonsense `peerDependencies`

close #8934

* fix: eslint

* feat: refuse aliases

* feat: only validate packages from the workspace

* refactor: change call signature and error messages

* docs(hint): improve wordings

* docs: add quotes to make it more readable

* test: remove `use-`
2025-01-07 14:55:22 +01:00
Zoltan Kochan
e050221384 fix: pnpm link should keep the indentations in the updated manifest 2025-01-07 02:48:02 +01:00