Commit Graph

300 Commits

Author SHA1 Message Date
NullVoxPopuli
7f9f20227e fix: prevent 'pnpm audit' from crashing with an OOM error (#9290)
* Prevent 'pnpm audit' from crashing with an OOM error by disabling the finding of dependency paths unless opted into

* feat!: remove show paths from audit output

* docs: add changeset

* fix: linting error

close #9280

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2025-03-17 01:11:27 +01:00
Zoltan Kochan
942de71d5d chore(release): 10.6.3 2025-03-13 15:04:57 +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
adb236f1a1 refactor: improve regexp (#9203) 2025-03-02 13:17:09 +01:00
Brandon Cheng
daf47e9d9b feat: support frozen installs in projects using local tarball dependencies (#9190) 2025-03-02 12:55:51 +01:00
Zoltan Kochan
5e78da2d57 style: order the keys in package.json files 2025-03-01 21:45:13 +01:00
Zoltan Kochan
70d565cf79 chore(release): 10.5.1 2025-02-26 12:56:43 +01:00
Zoltan Kochan
0e9fff7bef chore(release): 10.5.0 2025-02-25 12:27:14 +01:00
Zoltan Kochan
ee72c62db9 chore(release): 10.4.1 2025-02-16 22:37:26 +01:00
Zoltan Kochan
44526c3330 refactor: use object.key-sorting (#9117) 2025-02-16 11:59:36 +01:00
Zoltan Kochan
fee898fdcb fix: init-package-manager (#9104)
* fix: init-package-manager

* fix: don't add packageManager=false to package.json

* refactor: create object.key-sorting

* test: fix

* fix: sort fields in package.json
2025-02-16 02:13:07 +01:00
Zoltan Kochan
2a6b51f483 chore(release): 10.4.0 2025-02-14 01:18:32 +01:00
Zoltan Kochan
1dc2804f7a chore(release): 10.3.0 2025-02-11 00:34:43 +01:00
Zoltan Kochan
97e0f5da61 chore(release): 10.2.0 2025-02-03 18:32:38 +01:00
Zoltan Kochan
c5a0b9ea43 chore(release): 10.1.0 2025-01-26 22:26:45 +01:00
v1rtl
acdf26d8cd refactor: replace strip-ansi with built-in util.stripVTControlCharacters (#9009) 2025-01-26 11:44:40 +01:00
Zoltan Kochan
42ecf04fd0 chore(release): 10.0.0 2025-01-07 15:28:17 +01:00
Zoltan Kochan
c5080ded56 chore(release): 10.0.0-rc.3 2025-01-05 13:26:28 +01:00
Zoltan Kochan
e103abe941 chore(release): 10.0.0-rc.2 2024-12-29 02:47:35 +01:00
Zoltan Kochan
b27e7f553a chore(release): 10.0.0-rc.1 2024-12-27 14:20:04 +01:00
Zoltan Kochan
38eb97a8b3 chore(release): libs 2024-12-18 13:40:41 +01:00
Zoltan Kochan
3f0e4f036e feat(lockfile.fs): export writeLockfileFile and convertToLockfileFile (#8735) 2024-12-18 13:25:28 +01:00
Zoltan Kochan
3278c588cd chore(release): 10.0.0-rc.0 2024-12-16 02:31:45 +01:00
Zoltan Kochan
fb9e3b4ee0 feat!: drop lockfile v6 support 2024-12-15 15:38:20 +01:00
Zoltan Kochan
a76da0c53c feat!: remove conversion of lockfile v6 to v9 (#8866) 2024-12-15 14:39:19 +01:00
Zoltan Kochan
d47c4266db perf: faster repeat install (#8838) 2024-12-08 23:42:33 +01:00
Zoltan Kochan
6483b646fe feat: a new setting for injecting workspace packages (#8836) 2024-12-05 17:37:15 +01:00
Zoltan Kochan
3fe70e7897 refactor!: all lib versions should start with pnpm major version 2024-11-29 01:04:45 +01:00
Zoltan Kochan
9fcc7e808e chore(release): 10.0.0-beta.0 2024-11-28 12:35:01 +01:00
btea
74a45696a4 feat: audit displaying ignored count (#8818) 2024-11-28 12:17:55 +01:00
Khải
19d5b51558 feat(exec): check dependencies before running scripts (#8645)
* refactor: break a long line into multiple lines

* feat: cache that tracks workspace structures

* feat: handle hash collisions

* docs(changeset): packages-list-cache

* feat(packages-list-cache): store mtime

* fix(packages-list-cache): JSON5 and YAML manifests

* feat(packages-list-cache): add catalogs

* style: sort fields alphabetically

* fix: actually fix it

* lint: fix

* lint: fix

* test(packages-list-cache): test

* feat(exec): check deps before run scripts

Resolves https://github.com/pnpm/pnpm/issues/8585

* style: fix eslint

* feat: use a single lastValidatedTimestamp

* refactor: rearrange

* perf: don't do pointless comparisons

* perf: optimize non-workspace

* perf: optimize sharedWorkspaceLockfile=false

* perf: remove unnecessary fs reads

* refactor: statManifestFile

* perf: skip comparing manifest to lockfile by stats

* feat: add wantedLockfileDir to error message

* refactor: shorten a function name

* refactor: rename a function

* docs: improve wordings

* feat: export `linkedPackagesAreUpToDate`

* feat: make sure lockfile specs satisfy manifest (wip)

* docs: todo

* fix: projectId

* feat: skip install-related scripts

* fix: type errors

* refactor: use tagged union

* refactor: remove unnecessary type expression

* docs: todo

* feat: add linkedPackagesAreUpToDate (wip)

* refactor: rearrange fields

* refactor: remove a temporary variable

* feat: export `getWorkspacePackagesByDirectory`

* feat: make workspacePackages optional

* feat: complete `linkedPackagesAreUpToDate`

* docs: remove unapplicable todo

* docs: explain why check is skipped

* feat: load allProjects and try again

* refactor: remove unused dependencies

* refactor: remove commented-out code

* refactor: replace `else if` with `return`

* feat: use-case without workspace manifest

* perf: skip unnecessary work

* feat: add a guard

* fix: eslint

* refactor: move code to new package

* refactor: sort dependencies

* test: outline

* refactor: extract assertLockfilesEqual for testing

* test: skip failing tests for now

* fix: eslint

* test: assertLockfilesEqual

* refactor: extract statManifestFile for testing

* test: todo

* test: statManifestFile

* test: shouldRunCheck

* refactor: rename a test file

* test: add

* test: todo

* docs: remove a commented-out code

* test: create groups

* test: todo

* test: add

* test: platform agnostic

* test: remove unnecessary scripts

* test: use `assert.strictEqual` instead

* test: export bin locations

* test: nested `pnpm run`

* test: todo

* test: add `cwd` option to `execPnpmSync`

* test: add

* fix: recursive

* test: add

* test: fix package names

* fix: catalogs comparison

* test: add

* refactor: just use ramda filter

* test: add

* test: mutations

* fix: package.json

* fix: jest

* feat(packages-list): debug logs

* feat: add debug messages

* fix: eslint

* test: check debug messages in other case

* docs: add next step

* test: mtime updates without modification

* docs: correct test description

* test: mtime changes

* test: check should be skipped

* docs: remove fulfilled todos

* fix: remove `.only`

* docs: todo

* docs: correct test names

* test: workspace structure changes

* test: packages list cache

* test: add

* refactor: divide a test file into 2

* docs: consistent wordings

* refactor: clearer error messages

* fix: ignore check in recursive nested scripts

* test: no dependencies

* test: print error messages on failures

* test: improve stdout/stderr in error messages

* docs: consistent wordings

* docs: clarify what did what

* test: nested script

* docs: consistent test descriptions

* docs(changeset): correction

* fix: save catalogs to packages list

* test: catalogs

* test: fix

* test: fix windows

* refactor: remove unused option field

* refactor: prefer `!= null`

* feat: use `node_modules` instead

* refactor: rename a package

* refactor: apply suggestion

* refactor: remove workspaceDir

* refactor: move `shouldRunCheck` to `exec`

* feat: rename config key

* refactor: rename a test dir

* refactor: correct grammar

* refactor: make loadPackagesList sync

* test: multiple lockfiles

* feat: prevent deletion of `node_modules`

* feat: skip checking on filtered install

* fix: accidentally dropping catalogs

* refactor: remove unnecessary `Promise.all`

* refactor: use `virtualStoreDir` from config

* refactor: split `opts` into `ctx` and `opts`

* test: fix

* style: fix eslint

* test: fix windows

* feat(exec): add `verifyDepsBeforeRun` to `exec`

* refactor: sync stat

* feat: stop ignoring filtered install

* test: filtered install

* refactor: rearrange imports

* feat: rename "packages list" to "workspace state"

* test: fix

* fix: workspace state on failed install
2024-11-15 01:01:09 +01:00
Zoltan Kochan
26a910cbf8 chore(release): 10.0.0-alpha.0 2024-10-28 04:16:49 +01:00
Zoltan Kochan
32613a05af Merge remote-tracking branch 'origin/main' into v10 2024-10-28 04:01:43 +01:00
Zoltan Kochan
0309365fda chore(release): 9.12.3 2024-10-28 03:11:09 +01:00
Zoltan Kochan
790ce1e869 Merge branch 'main' into v10 2024-10-25 22:24:10 +02:00
Zoltan Kochan
1dd419cbb4 test: fix killing the registry mock server on teardown (#8695) 2024-10-25 21:24:08 +02:00
Zoltan Kochan
b33f153b36 Merge branch 'main' into v10 2024-10-12 03:21:03 +02:00
Zoltan Kochan
d994f5178b chore(release): 9.12.1 2024-10-07 15:08:25 +02:00
Zoltan Kochan
aae0808b35 Merge remote-tracking branch 'origin/main' into v10 2024-10-05 02:24:28 +02:00
Tommy D. Rossi
17b5088d9a fix: maximum call stack size exceeded error related to circular workspace dependencies (#8599) 2024-10-05 01:36:15 +02:00
Khải
51f3ba1df8 refactor: extract some logics from core/install (#8597) 2024-10-04 04:27:27 +02:00
Zoltan Kochan
5da5e75e08 chore(release): 9.12.0 2024-10-02 12:19:20 +02:00
Zoltan Kochan
e9985b6f21 feat!: default value of virtual-store-dir-max-length set to 60 on Windows (#8556) 2024-09-23 09:30:45 +02:00
Khải
24ad47cfb8 refactor: replace array.reduce (#8537) 2024-09-18 04:41:35 +02:00
Khải
f071d00815 refactor: replace forEach with for-loops (#8535)
* refactor: replace `forEach` with `for`-loops

Changes:
* Most `Object.keys(o).forEach` are replaced by `for in`.
* Most `Array.filter(c).forEach` are replaced by `for of` + `if continue`.
* `return` in `forEach` callbacks are replaced by `continue`.

There may be minor improvement to memory footprint as this change would
reduce the creations of temporary arrays and temporary functions.

* fix: return -> continue

* refactor: remove the commented out code
2024-09-18 03:58:25 +02:00
Zoltan Kochan
fe996fee1d chore(release): 9.10.0 2024-09-09 15:43:02 +02:00
Ian Krieger
d500d9f12e feat(audit): add ability to ignore Github Security Advisory (#8483)
close #6838
2024-09-01 03:10:30 +02:00
Zoltan Kochan
10d8007747 chore(release): 9.9.0 2024-08-26 17:12:28 +02:00