Commit Graph

448 Commits

Author SHA1 Message Date
Zoltan Kochan
5a9e34f2bc refactor: create config writer package (#9306)
* refactor: create config writer package

* test: fix

* test: fix

* docs: add changeset

* refactor: update config-writer
2025-03-19 15:56:34 +01:00
Khải
64f6b4f62b fix: remove warnings after approve no builds (#9307)
close #9296

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-03-19 13:09:54 +01:00
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
8238bf4cfb test(dlx): fix 2025-03-17 12:03:33 +01:00
Zoltan Kochan
64a11f2e37 test(dlx): fix 2025-03-17 12:01:29 +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
4885c3708b test(dlx): use @pnpm.e2e/for-testing-pnpm-dlx from @pnpm/registry-mock (#9260)
Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-03-13 03:09:14 +01:00
Khải
57f989ef45 fix(exec): add missing node-options to recursive run (#9264)
* fix(run): add missing `node-options` to `recursive`

Fixes https://github.com/pnpm/pnpm/issues/9180

* refactor: share code

* refactor: remove unused field
2025-03-11 02:52:59 +01:00
Zoltan Kochan
65da4d9e6a chore(release): 10.6.2 2025-03-10 03:15:12 +01:00
Zoltan Kochan
0b0bcfa143 fix: running executable pnpm CLI as a subprocess of pnpm CLI 2025-03-10 02:42:48 +01:00
Zoltan Kochan
a2d46b4570 chore(release): 10.6.1 2025-03-07 02:29:19 +01:00
btea
1e6ae3ea6e fix: approve builds command writes a dependency judgment logic error (#9223)
* fix: approve builds manifest pnpm ignoredBuiltDependencies condition error

* chore: changeset and test

* refactor: tests and changeset

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-03-07 01:52:50 +01:00
Zoltan Kochan
86ff415755 chore(release): 10.6.0 2025-03-06 12:09:26 +01:00
btea
adb236f1a1 refactor: improve regexp (#9203) 2025-03-02 13:17:09 +01:00
R.P. Pedraza
8b3cfe24fe fix: don't abort appprove-builds or err when manifest doesn't exist (#9198)
close: #9202
2025-03-02 03:05:49 +01:00
Zoltan Kochan
5e78da2d57 style: order the keys in package.json files 2025-03-01 21:45:13 +01:00
Zoltan Kochan
3c98460154 style: sort keys in dependencies fields 2025-03-01 15:03:59 +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
Zoltan Kochan
0b31bf00d8 fix: dlx should ignore settings from package.json (#9179)
close #9178
close #9174
2025-02-26 12:55:17 +01:00
Zoltan Kochan
0e9fff7bef chore(release): 10.5.0 2025-02-25 12:27:14 +01:00
Khải
e32b1a29e9 feat: update injected packages after run (#9100)
* feat: update injected packages after run (wip)

close #9081

* refactor: rename field

* feat: injectedPackages (wip)

* feat: findInjectedPackages (wip)

* feat: complete implementation

* test: findInjectedPackages

* docs: changeset

* refactor: be lazy

* chore: set `version` to `1000.0.0-0`

* feat: use hardlinks for injected packages

* refactor: just use `.modules.yaml`

* feat: debug logger

* refactor: `modulesDir` is unnecessary

* test: shouldUpdateInjectedFilesAfterRun

* fix(test): remove the test command

* test: updateInjectedPackagesAfterRun

* fix: eslint

* feat: rename config

* perf: diff to reduce fs operations

* perf: load source map only once

* chore(deps): remove unused dependencies

* fix: eslint

* refactor: use `symlink-dir`

* refactor: move type expr to an alias

* refactor: simplify types

* feat: reuse stats from the directory fetcher

* test: directories and symlinks

* feat: sort alphabetic

* test: diffDir

* test: rename a test

* test: remove nesting

* refactor: rename

* feat: remove buggy symlink support

* test: applyPatch

* docs: correct

* docs: fix

* test: extendFilesMap

* docs: remove outdated comment

* docs: remove unneeded comment

* test: fix

* test: more assertions

* test: DirPatcher

* test: more assertions

* test: more assertions

* test: just use `createDir`

* test: multiple patchers

* test: reuse stat results

* docs: consistent grammar

* test: workaround

* test: fix windows

* refactor: remove single-use `makeParent`

* refactor: remove nonsense test

How could I even misunderstand my own code?!

`Patcher.apply()` will never call stat on the files because they have all
been loaded to calculate `Patcher.patch`.

This test is therefore nonsense.

* feat: rename

* feat: rename again

* feat: remove `boolean`

* fix: broken lockfile

* test: use a fixture for testing sync injected deps

* test: refactor syne injected deps test

* test: refactor sync injected deps test

* test: refactor sync injected deps test

* refactor: rename injected deps to syncer

* refactor: change injected deps logger

* docs: update changeset

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-02-24 02:09:45 +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
Zoltan Kochan
3a71df0588 refactor: use lex-comparator 2025-02-16 14:29:23 +01:00
Zoltan Kochan
0205498322 fix: print warning about ignored builds on repeat install (#9116)
close #9106
close #9111
2025-02-16 03:12:37 +01:00
Zoltan Kochan
2a6b51f483 chore(release): 10.4.0 2025-02-14 01:18:32 +01:00
Zoltan Kochan
4aa6d45e5c feat: approve-builds works with global packages (#9095) 2025-02-13 01:42:49 +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
c52f55af30 refactor: create exec.pnpm-cli-runner (#9064) 2025-02-08 22:34:19 +01:00
Khải
265946bb6d fix: verify-deps-before-run after install --prod|--no-optional (#9055)
close #9019
2025-02-07 12:36:58 +01:00
Zoltan Kochan
d40dfebdca chore(release): 10.2.1 2025-02-06 20:00:29 +01:00
Zoltan Kochan
afbb65495e fix: running approve-builds from a subdirectory of a workspace (#9048) 2025-02-05 23:45:26 +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
btea
5d7192c3de fix: exit approve-builds command when getAutomaticallyIgnoredBuilds return empty list (#9024)
* fix: exit `approve-builds` command when `getAutomaticallyIgnoredBuilds` return empty list

* feat: print an info message when there are no packages to approve

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-02-02 22:02:27 +01:00
Junxiao Shi
c0d1c0191b fix(lifecycle): properly quote args (#9018)
* fix(lifecycle): properly quote args

close #8980
close #7641
2025-01-29 23:32:46 +01:00
Zoltan Kochan
a2a4509af5 fix: sort keys in pnpm.onlyBuiltDependencies 2025-01-29 11:06:23 +01:00
Zoltan Kochan
c5a0b9ea43 chore(release): 10.1.0 2025-01-26 22:26:45 +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
c96eb2b042 fix(lifecycle): skip verify for install hooks (#8957)
close #8954

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-01-10 23:14:27 +01:00
Zoltan Kochan
42ecf04fd0 chore(release): 10.0.0 2025-01-07 15:28:17 +01:00