Commit Graph

46 Commits

Author SHA1 Message Date
Zoltan Kochan
db420ab592 refactor(cafs): create a separate function for creating index file path (#8508) 2024-09-08 14:43:09 +02:00
Zoltan Kochan
c92f4bf282 refactor: rename lockfile-walker to lockfile.walker 2024-07-28 01:42:38 +02:00
Zoltan Kochan
c5ef9b0643 refactor: rename filter-utils to lockfile.utils 2024-07-28 01:35:40 +02:00
Zoltan Kochan
797ef0fc46 refactor: rename lockfile-types to lockfile.types 2024-07-27 14:46:23 +02:00
Zoltan Kochan
0406d4ad3d refactor: use a branded type for project root dir paths (#8272) 2024-07-04 13:13:34 +02:00
Zoltan Kochan
dd00eeb18c refactor: normalize dir field names across project objects (#8262) 2024-07-01 11:27:04 +02:00
Zoltan Kochan
9927c2855a refactor(core): workspace packages (#8248)
Make workspace packages optional.
2024-06-30 15:17:07 +02:00
Zoltan Kochan
7c6c923a3d feat: a new option strict-store-pkg-content-check (#8212)
ref #4724
2024-06-16 21:37:58 +02:00
Zoltan Kochan
13e55b2865 fix: a filtered install should update the lockfile first (#8183)
close #8165
2024-06-12 14:49:39 +02:00
Zoltan Kochan
47341e5004 fix: make the peers suffix shorter (#8177)
ref #7079
2024-06-07 23:37:07 +02:00
Zoltan Kochan
3dd30b1909 refactor: create branded type for project ID (#8164) 2024-06-04 18:30:59 +02:00
Zoltan Kochan
c649954e41 refactor: create a separate type for DepPath (#8094) 2024-05-20 16:11:46 +02:00
Zoltan Kochan
9719a42d0e feat: configurable max length of directories inside node_modules/.pnpm (#7994)
close #7355
2024-04-28 11:07:29 +02:00
Khải
a8bc9902b6 refactor(exec): type checking perf (#7911) 2024-04-13 00:18:14 +02:00
Zoltan Kochan
0564745b1d style: use unknown in try/catch (#7709) 2024-03-06 01:47:04 +01:00
Zoltan Kochan
5c20db0dd2 feat!: use the same lockfile format in 1-pkg workspace as in multi-pkg one (#7696) 2024-02-29 10:28:29 +01:00
Nacho Aldama
7733f3a943 feat: support scoped client certificates (#7626)
close #7427

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2024-02-14 12:11:12 +01:00
btea
e79ab3847b chore(dep): update @types/node (#7414)
* chore(dep): update @types/node

* chore: update
2023-12-13 14:06:52 +01:00
Zoltan Kochan
d6592964f0 refactor: rootProjectManifestDir is a required option 2023-10-24 15:14:33 +03:00
Zoltan Kochan
6390033cde perf: use a worker for hard linking directories (#7154) 2023-10-19 17:24:49 +03:00
阿豪
4246f41bed feat(graph-sequencer): add package @pnpm/graph-sequencer (#7168)
---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2023-10-15 22:28:05 +03:00
Zoltan Kochan
4aa41ef3a6 perf(rebuild): only link bins if something was built (#7193) 2023-10-11 17:55:54 +03:00
Zoltan Kochan
d774a3196c feat: onlyBuiltDependenciesFile (#7167)
close #7137
2023-10-08 01:50:47 +03:00
Alvis Tang
12f45a83d2 fix: honor never/only-built-dependencies in workspace setup (#7141)
close #7135
close #5407

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2023-10-03 19:42:13 +03:00
LaicZhang
41b5eb7a5b perf: replace startsWith with === (#7138) 2023-09-27 16:32:05 +03:00
Brandon Cheng
e9aa6f682a chore(deps): update TypeScript 5.1.6 -> 5.2.2 (#7016)
* test: use sha512 integrity in fixtures to fix ci break

* test: update snapshots for sha512 fixture change

* chore(deps): remove unneeded peer dependency exception

The `peerDependencyRules.allowedVersions` exception on
`@typescript-eslint/eslint-plugin` no longer seems to be necessary.
Removing it does not introduce any new peer dependency errors on
`pnpm install`.

I suspect this was needed for the
`eslint-config-standard-with-typescript` dependency in the past, but a
@typescript-eslint/eslint-plugin upgrade made it no longer necessary.

* chore(deps): update @typescript-eslint dependencies 5.62.0 -> 6.5.0

@typescript-eslint 6.5.0 is the first version to introduce support for
TypeScript 5.2.

https://github.com/typescript-eslint/typescript-eslint/releases/tag/v6.5.0

```
=============

WARNING: You are currently running a version of TypeScript which is not officially supported by @typescript-eslint/typescript-estree.

You may find that it works just fine, or you may not.

SUPPORTED TYPESCRIPT VERSIONS: >=3.3.1 <5.2.0

YOUR TYPESCRIPT VERSION: 5.2.2

Please only submit bug reports when using the officially supported version.
```

* chore(deps): update eslint-config-standard-with-typescript 37.0.0 -> 39.0.0

Version 38.0.0 is the first version to support @typescript-eslint v6.
https://github.com/standard/eslint-config-standard-with-typescript/releases/tag/v38.0.0

Otherwise the following error appears.

```
> eslint "src/**/*.ts" "test/**/*.ts" "--fix"

Oops! Something went wrong! :(

ESLint: 8.47.0

Error: ../../.eslintrc.json » @pnpm/eslint-config » eslint-config-standard-with-typescript:
        Configuration for rule "@typescript-eslint/restrict-plus-operands" is invalid:
        Value {"checkCompoundAssignments":true} should NOT have additional properties.

    at ConfigValidator.validateRuleOptions (/Users/gluxon/Developer/pnpm/node_modules/.pnpm/@eslint+eslintrc@2.1.2/node_modules/@eslint/eslintrc/dist/eslintrc.cjs:2039:23)
    at /Users/gluxon/Developer/pnpm/node_modules/.pnpm/@eslint+eslintrc@2.1.2/node_modules/@eslint/eslintrc/dist/eslintrc.cjs:2094:18
```

* chore: remove unnecessary disables for restrict-template-expressions

The `@typescript-eslint/restrict-template-expressions` rule relaxed
what types are allowed in template expressions.

c13ce0b4f7 (diff-b852e1e199d2976eee1183fc84ac12a5d42fc61f0ae4b1c290dd54d621546db0)

Many of these disables were for interpolated values that had an `any`
type.

* chore: remove unnecessary disables for restrict-plus-operands

The original error was:

```
Invalid operand for a '+' operation. Operands must each be a number or string. Got `any`. eslint@typescript-eslint/restrict-plus-operands
```

It look like the newer version now allows `any`.

* style: fix errors of prefer-optional-chain and prefer-nullish-coalescing

The `@typescript-eslint/prefer-optional-chain` and
`@typescript-eslint/prefer-nullish-coalescing` rules got a bit
smarter. This commit applies autofixes. I believe the changes should be
equivalent to what existed before.

Example of the new `@typescript-eslint/prefer-optional-chain` lints.

```
pnpm/pkg-manifest/exportable-manifest/src/index.ts
  71:10  error  Prefer using an optional chain expression instead, as it's more concise and easier to read  @typescript-eslint/prefer-optional-chain
  87:10  error  Prefer using an optional chain expression instead, as it's more concise and easier to read  @typescript-eslint/prefer-optional-chain
```

Example of the new `@typescript-eslint/prefer-nullish-coalescing` lints.

```
pnpm/fs/find-packages/src/index.ts
  32:38  error  Prefer using nullish coalescing operator (`??`) instead of a ternary expression, as it is simpler to read  @typescript-eslint/prefer-nullish-coalescing
```

* chore(deps): update TypeScript 5.1.6 -> 5.2.2

* chore(deps): update @yarnpkg/core->@types/lodash override to 4.14.197

This fixes a compilation error that appears on TypeScript 5.2.2. This
error was fixed in a later version of `@types/lodash`.

https://github.com/DefinitelyTyped/DefinitelyTyped/pull/66123

```
../node_modules/.pnpm/@types+lodash@4.14.181/node_modules/@types/lodash/index.d.ts:45:15 - error TS2428: All declarations of 'WeakMap' must have identical type parameters.

45     interface WeakMap<K extends object, V> { }
                 ~~~~~~~

Found 4 errors.
```
2023-08-31 16:27:01 +03:00
Zoltan Kochan
5ce333519d refactor: rename cafs to store.cafs 2023-07-19 01:53:42 +03:00
Zoltan Kochan
002f6febe4 feat(rebuild): skipIfHasSideEffectsCache (#6796) 2023-07-11 18:48:53 +03:00
Zoltan Kochan
16bbac8d51 fix: rebuild should upload side-effects (#6790) 2023-07-10 22:25:55 +03:00
Zoltan Kochan
dddb8ad713 fix: link local bins created by postinstall scripts (#6728)
close #1801
2023-06-29 11:59:56 +03:00
Zoltan Kochan
955d07394a refactor: rename find-workspace-packages package 2023-06-09 16:27:00 +03:00
Zoltan Kochan
4b97f1f07a perf: don't use await inside loops (#6617) 2023-06-05 12:12:47 +03:00
Zoltan Kochan
9c4ae87bd1 feat: include some settings as fields in the lockfile (#6557)
ref #6312
2023-05-21 02:40:39 +03:00
douglasward
ea28b6f6c7 fix: do not throw MISSING_HOISTED_LOCATIONS for optional packages (#6553)
* do not throw MISSING_HOISTED_LOCATIONS for optional packages

* docs: add changesets

---------

Co-authored-by: Douglas Ward <douglas@giantmonkey.de>
Co-authored-by: Zoltan Kochan <z@kochan.io>
2023-05-17 02:08:37 +03:00
Zoltan Kochan
ee61ca4cb7 style: update eslint (#6236) 2023-03-18 14:57:29 +02:00
Zoltan Kochan
ea460e51e3 Merge branch 'main' into v8 2023-02-20 22:46:24 +02:00
await-ovo
0377d93678 feat: add --report-summary option for pnpm exec and pnpm run (#6098)
close #6008
2023-02-20 03:36:35 +02:00
Zoltan Kochan
8b49472833 Merge branch 'main' into v8 2023-02-19 16:02:45 +02:00
await-ovo
7a0ce1df08 feat!: deploy with local dependencies (#6016)
Co-authored-by: Zoltan Kochan <z@kochan.io>

Close #5911
Close #5961
2023-02-19 04:23:31 +02:00
douglasward
4ed825aa49 fix: don't throw MISSING_HOISTED_LOCATIONS error for skipped packages (#6093)
close #6092
2023-02-19 03:23:17 +02:00
Zoltan Kochan
583e3954be fix: remove suppressImplicitAnyIndexErrors from typescript settings (#5991) 2023-01-28 18:19:26 +02:00
Zoltan Kochan
0055af5898 style: fix 2023-01-11 02:19:41 +02:00
Zoltan Kochan
5c75ff3ec6 fix: rebuild should print a better error message (#5819)
close #5815
2022-12-23 01:36:58 +02:00
Zoltan Kochan
c9d3970e33 fix: rebuild when node-linker is set to hoisted (#5811)
close #5560
2022-12-21 03:07:01 +02:00
Zoltan Kochan
313702d76b refactor: all packages should be in the @pnpm scope (#5785) 2022-12-13 03:46:56 +02:00
Zoltan Kochan
4ca53b0b50 refactor: group projects in different subdirectories (#5659) 2022-11-20 01:35:22 +02:00