Commit Graph

84 Commits

Author SHA1 Message Date
Zoltan Kochan
5d059765a8 chore(release): libs 2024-07-29 15:58:56 +02:00
Sung Ye In
9899576573 fix: run node-gyp rebuild when a project has a binding.gyp file (#8325)
close #8293

---------

Co-authored-by: Zoltan Kochan <z@kochan.io>
2024-07-29 15:10:34 +02:00
Zoltan Kochan
3b82169faf chore(release): 9.6.0 2024-07-22 01:41:03 +02:00
Khải
0ef168b77d feat: per-package node version (#8277)
close #6720
2024-07-13 14:08:57 +02:00
Zoltan Kochan
07a7ac4a93 chore(release): 9.5.0 2024-07-07 18:27:55 +02:00
Zoltan Kochan
a3d5f609d0 chore(release): 9.5.0-beta.1 2024-07-04 15:54:08 +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
79830ff0b9 chore: use catalogs 2024-06-27 21:18:27 +02:00
Zoltan Kochan
7678113d79 chore: use catalogs (#8249) 2024-06-27 17:22:38 +02:00
Zoltan Kochan
347c79a8cd chore(release): 9.4.0 2024-06-17 17:44:19 +02:00
Zoltan Kochan
1e5985a937 chore(release): 9.2.0 2024-06-05 14:46:23 +02:00
Brandon Cheng
c7e1b6fae8 chore: configure TypeScript project references for tests (#8128)
* refactor: store link values before converting to references

* fix: use .sort() without localeCompare

https://github.com/pnpm/pnpm/pull/8128#discussion_r1614031566

> Nit, but you probably just want to call sort without a comparison
> function; these are already strings and locale compare is not a good
> comparison for anything but human readable strings since it will
> differ on different people's machines based on their language setting.
> I've hit this too many times before for code gen.

* feat: configure meta-updater to write test/tsconfig.json files

* fix: relative imports for __typings__

* chore: `pnpm run meta-updater`

* fix: explicitly use test/tsconfig.json for ts-jest
2024-05-31 12:48:13 +02:00
Brandon Cheng
5de89d81a6 chore: remove top-level composite property from tsconfig.json files (#8130)
* chore: remove no-op composite property

* chore: remove top-level composite property from existing files
2024-05-28 02:37:40 +02:00
Zoltan Kochan
838b7f0125 chore(release): libs 2024-05-22 00:24:34 +02:00
Zoltan Kochan
355ccd1243 chore(release): libs 2024-05-21 14:46:39 +02:00
Zoltan Kochan
c8655b465e chore(release): libs 2024-05-12 01:57:58 +02:00
Zoltan Kochan
65df252783 chore(release): 9.0.3 2024-04-18 18:27:04 +02:00
Brandon Cheng
bfadc0af12 fix: error when script-shell is configured to a .bat or .cmd file (#7945) 2024-04-18 17:34:15 +02:00
Zoltan Kochan
090922c85c chore: update @pnpm/npm-lifecycle 2024-04-16 01:51:06 +02:00
Zoltan Kochan
7b8701cb62 fix: update deps (#7913) 2024-04-13 10:40:50 +02:00
Khải
a8bc9902b6 refactor(exec): type checking perf (#7911) 2024-04-13 00:18:14 +02:00
Zoltan Kochan
43bd75c5b8 chore(release): libs 2024-04-09 17:14:05 +02:00
Zoltan Kochan
857c0547ac fix(deps): update 2024-02-12 22:46:58 +01:00
Zoltan Kochan
82aac81163 fix: update @pnpm/npm-lifecycle 2024-02-12 22:21:12 +01:00
Zoltan Kochan
1fc7c86778 Merge branch 'v8' 2024-01-27 16:55:07 +01:00
Zoltan Kochan
778efe2022 chore(release): 8.15.0 2024-01-27 16:48:08 +01:00
Zoltan Kochan
793d523103 Merge branch 'v8' 2024-01-22 10:14:47 +01:00
Zoltan Kochan
b93bc1aa41 chore(release): 8.14.2 2024-01-22 10:10:27 +01:00
Zoltan Kochan
6e3b75a42f chore(release): 9.0.0-alpha.0 2024-01-08 19:12:45 +01:00
Zoltan Kochan
43cdd87c0c feat!: drop Node.js 16 support 2024-01-08 11:57:44 +01:00
Brandon Cheng
a2f5f5c990 test: fix file system race conditions in tests by switching to an IPC server (#7472)
* test: create new @pnpm/test-ipc-server private util package

* test: use @pnpm/test-ipc-server for previously refactored tests

* test: use @pnpm/test-ipc-server for tests using json-append

* test: change how --no-bail is passed to avoid passing it to scripts

This test began failing after the conversion to use
`@pnpm/test-echo-server` since the `--no-bail` script was being passed
to scripts.

Changing how --no-bail is configured to fix this test.

* test: use @pnpm/test-ipc-server in exec/lifecycle fixture tests

* test: use @pnpm/test-ipc-server in pkg-manager/headless fixture tests

* test: use @pnpm/test-ipc-server in exec/prepare-package fixture tests

* test: switch pnpm test from json-append to @pnpm.e2e/hello-world-js-bin

* test: fix and re-enable 'rebuild multiple packages in correct order'

The pnpm-workspace.yaml file didn't contain all packages, causing:

```
2023-12-22T02:24:46.2277155Z FAIL test/recursive.ts
2023-12-22T02:24:46.2277881Z   ● rebuild multiple packages in correct order
2023-12-22T02:24:46.2278348Z
2023-12-22T02:24:46.2278734Z     expect(received).toStrictEqual(expected) // deep equality
2023-12-22T02:24:46.2279302Z
2023-12-22T02:24:46.2279517Z     - Expected  - 1
2023-12-22T02:24:46.2279932Z     + Received  + 0
2023-12-22T02:24:46.2280186Z
2023-12-22T02:24:46.2280791Z       Array [
2023-12-22T02:24:46.2281256Z         "project-1",
2023-12-22T02:24:46.2281733Z     -   "project-2",
2023-12-22T02:24:46.2282135Z       ]
2023-12-22T02:24:46.2282334Z
2023-12-22T02:24:46.2282475Z       216 |   }, [])
2023-12-22T02:24:46.2282870Z       217 |
2023-12-22T02:24:46.2283788Z     > 218 |   expect(server1.getMessages()).toStrictEqual(['project-1', 'project-2'])
2023-12-22T02:24:46.2284725Z           |                                 ^
2023-12-22T02:24:46.2285802Z       219 |   expect(server2.getMessages()).toStrictEqual(['project-1', 'project-3'])
2023-12-22T02:24:46.2286683Z       220 | })
2023-12-22T02:24:46.2287049Z       221 |
2023-12-22T02:24:46.2287269Z
2023-12-22T02:24:46.2287588Z       at Object.<anonymous> (test/recursive.ts:218:33)
```
2024-01-01 16:40:03 +01:00
Zoltan Kochan
568860daae chore(release): 8.13.1 2023-12-26 15:39:22 +01:00
Zoltan Kochan
74e8f474f3 chore(release): libs 2023-12-14 16:15:57 +01:00
Zoltan Kochan
df9eade77c chore(release): 8.10.3 2023-11-12 14:02:55 +02:00
Zoltan Kochan
101829de7c chore(release): 8.10.1 2023-11-01 14:30:03 +02:00
Zoltan Kochan
fc858f6a51 chore(release): libs 2023-11-01 12:34:02 +02:00
Zoltan Kochan
3eeb16fdc6 chore(release): 8.10.0 2023-10-27 17:29:20 +03:00
Zoltan Kochan
d4ac491c53 fix: wrongful ELIFECYCLE error on program termination 2023-10-27 16:52:15 +03:00
Zoltan Kochan
b90029432d chore(release): 8.10.0-0 2023-10-24 15:54:22 +03:00
Zoltan Kochan
733d612ad1 test: check spelling with cspell (#7229) 2023-10-20 15:58:27 +03:00
Zoltan Kochan
49bb3653e7 chore(release): libs 2023-10-17 13:15:57 +03:00
Zoltan Kochan
7daf0be5d1 chore(release): 8.9.2 2023-10-16 02:07:45 +03:00
Andrea Culot
84f81c9ae3 fix: do not run node-gyp rebuild if preinstall lifecycle script is present (#7206) 2023-10-15 23:36:42 +03:00
Zoltan Kochan
3ad2ec63eb chore(release): libs 2023-10-08 17:21:51 +03:00
Zoltan Kochan
3ed5a7cd44 chore(release): libs 2023-09-13 12:32:41 +03:00
Zoltan Kochan
9caa33d535 feat: new option for disabling local directory dependencies relinking (#7083)
Removed `disableRelinkFromStore` and `relinkLocalDirDeps`. Replaced them with `disableRelinkLocalDirDeps`.
2023-09-13 12:23:03 +03:00
Zoltan Kochan
10cb4b3245 chore(release): 8.7.5 2023-09-11 15:15:09 +03:00
Zoltan Kochan
d194baeb50 chore(release): 8.7.4 2023-09-06 01:08:56 +03:00
Zoltan Kochan
89302a4d30 chore(release): 8.7.2 2023-09-04 15:45:36 +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