diff --git a/.yarnrc.yml b/.yarnrc.yml index 95c3a2a76f68..540b81db1c74 100644 --- a/.yarnrc.yml +++ b/.yarnrc.yml @@ -2,6 +2,8 @@ compressionLevel: mixed enableGlobalCache: true +enableTelemetry: false + logFilters: - code: YN0032 level: discard diff --git a/CHANGELOG.md b/CHANGELOG.md index f69c2ac2754a..44a503772dc3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ ## main +### Features + +- `[resolve]` Bump `unrs-resolver` to 1.11.0, remove `jest-pnp-resolver` and unnecessary checks ([#15721](https://github.com/jestjs/jest/pull/15721)) + ### Fixes - `[expect]` Fix `bigint` error ([#15702](https://github.com/jestjs/jest/pull/15702)) diff --git a/e2e/__tests__/__snapshots__/moduleNameMapper.test.ts.snap b/e2e/__tests__/__snapshots__/moduleNameMapper.test.ts.snap index 081a86377d1c..5feed8e2b15a 100644 --- a/e2e/__tests__/__snapshots__/moduleNameMapper.test.ts.snap +++ b/e2e/__tests__/__snapshots__/moduleNameMapper.test.ts.snap @@ -41,7 +41,7 @@ exports[`moduleNameMapper wrong array configuration 1`] = ` 12 | module.exports = () => 'test'; 13 | - at createNoMappedModuleFoundError (../../packages/jest-resolve/build/index.js:1117:17) + at createNoMappedModuleFoundError (../../packages/jest-resolve/build/index.js:1095:17) at Object.require (index.js:10:1) at Object.require (__tests__/index.js:10:20)" `; @@ -71,7 +71,7 @@ exports[`moduleNameMapper wrong configuration 1`] = ` 12 | module.exports = () => 'test'; 13 | - at createNoMappedModuleFoundError (../../packages/jest-resolve/build/index.js:1117:17) + at createNoMappedModuleFoundError (../../packages/jest-resolve/build/index.js:1095:17) at Object.require (index.js:10:1) at Object.require (__tests__/index.js:10:20)" `; diff --git a/e2e/__tests__/__snapshots__/requireMissingExt.test.ts.snap b/e2e/__tests__/__snapshots__/requireMissingExt.test.ts.snap index 1efb257a7d87..35e2c0ade161 100644 --- a/e2e/__tests__/__snapshots__/requireMissingExt.test.ts.snap +++ b/e2e/__tests__/__snapshots__/requireMissingExt.test.ts.snap @@ -26,7 +26,7 @@ exports[`shows a proper error from deep requires 1`] = ` 12 | test('dummy', () => { 13 | expect(1).toBe(1); - at Resolver._throwModNotFoundError (../../packages/jest-resolve/build/index.js:863:11) + at Resolver._throwModNotFoundError (../../packages/jest-resolve/build/index.js:841:11) at Object. (node_modules/discord.js/src/index.js:21:12) at Object.require (__tests__/test.js:10:1)" `; diff --git a/e2e/__tests__/__snapshots__/resolveNoFileExtensions.test.ts.snap b/e2e/__tests__/__snapshots__/resolveNoFileExtensions.test.ts.snap index 6ce161bd49af..c891dddde41c 100644 --- a/e2e/__tests__/__snapshots__/resolveNoFileExtensions.test.ts.snap +++ b/e2e/__tests__/__snapshots__/resolveNoFileExtensions.test.ts.snap @@ -37,7 +37,7 @@ exports[`show error message with matching files 1`] = ` | ^ 9 | - at Resolver._throwModNotFoundError (../../packages/jest-resolve/build/index.js:863:11) + at Resolver._throwModNotFoundError (../../packages/jest-resolve/build/index.js:841:11) at Object.require (index.js:8:18) at Object.require (__tests__/test.js:8:11)" `; diff --git a/e2e/pnp/__tests__/undeclared-dependency.test.js b/e2e/pnp/__tests__/undeclared-dependency.test.js index 6843fa065fc8..e27b2b5b8fa9 100644 --- a/e2e/pnp/__tests__/undeclared-dependency.test.js +++ b/e2e/pnp/__tests__/undeclared-dependency.test.js @@ -9,5 +9,5 @@ it('should surface pnp errors', () => { expect(() => { require('undeclared'); - }).toThrow(expect.objectContaining({code: 'MODULE_NOT_FOUND'})); + }).toThrow("Cannot find module 'unesitent_module__'"); }); diff --git a/packages/jest-resolve/package.json b/packages/jest-resolve/package.json index 99a6ccbc36fe..ad5b2684a17c 100644 --- a/packages/jest-resolve/package.json +++ b/packages/jest-resolve/package.json @@ -22,11 +22,10 @@ "chalk": "^4.1.2", "graceful-fs": "^4.2.11", "jest-haste-map": "workspace:*", - "jest-pnp-resolver": "^1.2.3", "jest-util": "workspace:*", "jest-validate": "workspace:*", "slash": "^3.0.0", - "unrs-resolver": "^1.7.11" + "unrs-resolver": "^1.11.0" }, "devDependencies": { "@types/graceful-fs": "^4.1.9", diff --git a/packages/jest-resolve/src/defaultResolver.ts b/packages/jest-resolve/src/defaultResolver.ts index cbdcb9b92618..38b5be30c61f 100644 --- a/packages/jest-resolve/src/defaultResolver.ts +++ b/packages/jest-resolve/src/defaultResolver.ts @@ -6,8 +6,6 @@ */ import {isBuiltin} from 'module'; -import {fileURLToPath} from 'url'; -import pnpResolver from 'jest-pnp-resolver'; import { type ResolveResult, ResolverFactory, @@ -40,12 +38,6 @@ export interface ResolverOptions extends UpstreamResolveOptions { paths?: Array; /** Current root directory. */ rootDir?: string; - - /** - * @internal Whether to allow the `jest-pnp-resolver` to be used. - * @see https://github.com/arcanis/jest-pnp-resolver/blob/ae8e3992349f3b43d1476572e9315e14358e8944/index.js#L49 - */ - allowPnp?: boolean; } export type SyncResolver = (path: string, options: ResolverOptions) => string; @@ -74,20 +66,11 @@ function baseResolver( options: ResolverOptions, async?: true, ): string | Promise { - // https://github.com/oxc-project/oxc-resolver/issues/565 - // https://github.com/jestjs/jest/issues/15676 + // `builtins` in `unrs-resolver` is static which could be wrong at runtime. if (isBuiltin(path)) { return path; } - if (process.versions.pnp && options.allowPnp !== false) { - return pnpResolver(path, options); - } - - if (path.startsWith('file://')) { - path = fileURLToPath(path); - } - /* eslint-disable prefer-const */ let { basedir, diff --git a/yarn.lock b/yarn.lock index 5b0b6c123f91..2c12f0c5d829 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4607,14 +4607,14 @@ __metadata: languageName: node linkType: hard -"@napi-rs/wasm-runtime@npm:^0.2.10": - version: 0.2.10 - resolution: "@napi-rs/wasm-runtime@npm:0.2.10" +"@napi-rs/wasm-runtime@npm:^0.2.11": + version: 0.2.11 + resolution: "@napi-rs/wasm-runtime@npm:0.2.11" dependencies: "@emnapi/core": "npm:^1.4.3" "@emnapi/runtime": "npm:^1.4.3" "@tybys/wasm-util": "npm:^0.9.0" - checksum: 10/1e4cf77891390825b1756eb5e302035b80c9dd21959417c4e4ed063eacfb6df9f42dfc001bf0fa9c9dbd0a7374342502feaa0a59103e7ea9aa5b318732280a49 + checksum: 10/e30fe3060474c5018e160231df0531d62b5e22f4736ecd49c04ca6cadacb2acf59b9205435794cd5b898e41e2e3ddb6523e93b97799bd1f4d0751557de6e38e4 languageName: node linkType: hard @@ -6777,123 +6777,137 @@ __metadata: languageName: node linkType: hard -"@unrs/resolver-binding-darwin-arm64@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-darwin-arm64@npm:1.7.11" +"@unrs/resolver-binding-android-arm-eabi@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-android-arm-eabi@npm:1.11.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@unrs/resolver-binding-android-arm64@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-android-arm64@npm:1.11.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-darwin-arm64@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-darwin-arm64@npm:1.11.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@unrs/resolver-binding-darwin-x64@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-darwin-x64@npm:1.7.11" +"@unrs/resolver-binding-darwin-x64@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-darwin-x64@npm:1.11.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@unrs/resolver-binding-freebsd-x64@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-freebsd-x64@npm:1.7.11" +"@unrs/resolver-binding-freebsd-x64@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-freebsd-x64@npm:1.11.0" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.7.11" +"@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.11.0" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@unrs/resolver-binding-linux-arm-musleabihf@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.7.11" +"@unrs/resolver-binding-linux-arm-musleabihf@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.11.0" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@unrs/resolver-binding-linux-arm64-gnu@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-arm64-gnu@npm:1.7.11" +"@unrs/resolver-binding-linux-arm64-gnu@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-arm64-gnu@npm:1.11.0" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@unrs/resolver-binding-linux-arm64-musl@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-arm64-musl@npm:1.7.11" +"@unrs/resolver-binding-linux-arm64-musl@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-arm64-musl@npm:1.11.0" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@unrs/resolver-binding-linux-ppc64-gnu@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.7.11" +"@unrs/resolver-binding-linux-ppc64-gnu@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.11.0" conditions: os=linux & cpu=ppc64 & libc=glibc languageName: node linkType: hard -"@unrs/resolver-binding-linux-riscv64-gnu@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-riscv64-gnu@npm:1.7.11" +"@unrs/resolver-binding-linux-riscv64-gnu@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-riscv64-gnu@npm:1.11.0" conditions: os=linux & cpu=riscv64 & libc=glibc languageName: node linkType: hard -"@unrs/resolver-binding-linux-riscv64-musl@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-riscv64-musl@npm:1.7.11" +"@unrs/resolver-binding-linux-riscv64-musl@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-riscv64-musl@npm:1.11.0" conditions: os=linux & cpu=riscv64 & libc=musl languageName: node linkType: hard -"@unrs/resolver-binding-linux-s390x-gnu@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-s390x-gnu@npm:1.7.11" +"@unrs/resolver-binding-linux-s390x-gnu@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-s390x-gnu@npm:1.11.0" conditions: os=linux & cpu=s390x & libc=glibc languageName: node linkType: hard -"@unrs/resolver-binding-linux-x64-gnu@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-x64-gnu@npm:1.7.11" +"@unrs/resolver-binding-linux-x64-gnu@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-x64-gnu@npm:1.11.0" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@unrs/resolver-binding-linux-x64-musl@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-x64-musl@npm:1.7.11" +"@unrs/resolver-binding-linux-x64-musl@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-linux-x64-musl@npm:1.11.0" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@unrs/resolver-binding-wasm32-wasi@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-wasm32-wasi@npm:1.7.11" +"@unrs/resolver-binding-wasm32-wasi@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-wasm32-wasi@npm:1.11.0" dependencies: - "@napi-rs/wasm-runtime": "npm:^0.2.10" + "@napi-rs/wasm-runtime": "npm:^0.2.11" conditions: cpu=wasm32 languageName: node linkType: hard -"@unrs/resolver-binding-win32-arm64-msvc@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-win32-arm64-msvc@npm:1.7.11" +"@unrs/resolver-binding-win32-arm64-msvc@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-win32-arm64-msvc@npm:1.11.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@unrs/resolver-binding-win32-ia32-msvc@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-win32-ia32-msvc@npm:1.7.11" +"@unrs/resolver-binding-win32-ia32-msvc@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-win32-ia32-msvc@npm:1.11.0" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@unrs/resolver-binding-win32-x64-msvc@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-win32-x64-msvc@npm:1.7.11" +"@unrs/resolver-binding-win32-x64-msvc@npm:1.11.0": + version: 1.11.0 + resolution: "@unrs/resolver-binding-win32-x64-msvc@npm:1.11.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -13743,18 +13757,6 @@ __metadata: languageName: unknown linkType: soft -"jest-pnp-resolver@npm:^1.2.3": - version: 1.2.3 - resolution: "jest-pnp-resolver@npm:1.2.3" - peerDependencies: - jest-resolve: "*" - peerDependenciesMeta: - jest-resolve: - optional: true - checksum: 10/db1a8ab2cb97ca19c01b1cfa9a9c8c69a143fde833c14df1fab0766f411b1148ff0df878adea09007ac6a2085ec116ba9a996a6ad104b1e58c20adbf88eed9b2 - languageName: node - linkType: hard - "jest-regex-util@npm:^29.0.0": version: 29.6.3 resolution: "jest-regex-util@npm:29.6.3" @@ -13792,11 +13794,10 @@ __metadata: chalk: "npm:^4.1.2" graceful-fs: "npm:^4.2.11" jest-haste-map: "workspace:*" - jest-pnp-resolver: "npm:^1.2.3" jest-util: "workspace:*" jest-validate: "workspace:*" slash: "npm:^3.0.0" - unrs-resolver: "npm:^1.7.11" + unrs-resolver: "npm:^1.11.0" url: "npm:^0.11.4" languageName: unknown linkType: soft @@ -16241,12 +16242,12 @@ __metadata: languageName: node linkType: hard -"napi-postinstall@npm:^0.2.2": - version: 0.2.4 - resolution: "napi-postinstall@npm:0.2.4" +"napi-postinstall@npm:^0.3.0": + version: 0.3.0 + resolution: "napi-postinstall@npm:0.3.0" bin: napi-postinstall: lib/cli.js - checksum: 10/286785f884b872102fb284847ecc693101f70126b1fc7a97e19293929ce7f08802b41f89398015cce0797070ea3ce6871939a3c1e693c04cf594f7939dbe8cfb + checksum: 10/4cddb80320a895015fd7e566b7c5866197f7bbb808fb37c6f99c4d68138a19d8d801b1025c9fb38f78ff266734fe3a0b4717cf792a4a8f062cfbde5ed7144114 languageName: node linkType: hard @@ -21447,29 +21448,35 @@ __metadata: languageName: node linkType: hard -"unrs-resolver@npm:^1.7.11, unrs-resolver@npm:^1.7.2, unrs-resolver@npm:^1.7.8": - version: 1.7.11 - resolution: "unrs-resolver@npm:1.7.11" - dependencies: - "@unrs/resolver-binding-darwin-arm64": "npm:1.7.11" - "@unrs/resolver-binding-darwin-x64": "npm:1.7.11" - "@unrs/resolver-binding-freebsd-x64": "npm:1.7.11" - "@unrs/resolver-binding-linux-arm-gnueabihf": "npm:1.7.11" - "@unrs/resolver-binding-linux-arm-musleabihf": "npm:1.7.11" - "@unrs/resolver-binding-linux-arm64-gnu": "npm:1.7.11" - "@unrs/resolver-binding-linux-arm64-musl": "npm:1.7.11" - "@unrs/resolver-binding-linux-ppc64-gnu": "npm:1.7.11" - "@unrs/resolver-binding-linux-riscv64-gnu": "npm:1.7.11" - "@unrs/resolver-binding-linux-riscv64-musl": "npm:1.7.11" - "@unrs/resolver-binding-linux-s390x-gnu": "npm:1.7.11" - "@unrs/resolver-binding-linux-x64-gnu": "npm:1.7.11" - "@unrs/resolver-binding-linux-x64-musl": "npm:1.7.11" - "@unrs/resolver-binding-wasm32-wasi": "npm:1.7.11" - "@unrs/resolver-binding-win32-arm64-msvc": "npm:1.7.11" - "@unrs/resolver-binding-win32-ia32-msvc": "npm:1.7.11" - "@unrs/resolver-binding-win32-x64-msvc": "npm:1.7.11" - napi-postinstall: "npm:^0.2.2" +"unrs-resolver@npm:^1.11.0, unrs-resolver@npm:^1.7.2, unrs-resolver@npm:^1.7.8": + version: 1.11.0 + resolution: "unrs-resolver@npm:1.11.0" + dependencies: + "@unrs/resolver-binding-android-arm-eabi": "npm:1.11.0" + "@unrs/resolver-binding-android-arm64": "npm:1.11.0" + "@unrs/resolver-binding-darwin-arm64": "npm:1.11.0" + "@unrs/resolver-binding-darwin-x64": "npm:1.11.0" + "@unrs/resolver-binding-freebsd-x64": "npm:1.11.0" + "@unrs/resolver-binding-linux-arm-gnueabihf": "npm:1.11.0" + "@unrs/resolver-binding-linux-arm-musleabihf": "npm:1.11.0" + "@unrs/resolver-binding-linux-arm64-gnu": "npm:1.11.0" + "@unrs/resolver-binding-linux-arm64-musl": "npm:1.11.0" + "@unrs/resolver-binding-linux-ppc64-gnu": "npm:1.11.0" + "@unrs/resolver-binding-linux-riscv64-gnu": "npm:1.11.0" + "@unrs/resolver-binding-linux-riscv64-musl": "npm:1.11.0" + "@unrs/resolver-binding-linux-s390x-gnu": "npm:1.11.0" + "@unrs/resolver-binding-linux-x64-gnu": "npm:1.11.0" + "@unrs/resolver-binding-linux-x64-musl": "npm:1.11.0" + "@unrs/resolver-binding-wasm32-wasi": "npm:1.11.0" + "@unrs/resolver-binding-win32-arm64-msvc": "npm:1.11.0" + "@unrs/resolver-binding-win32-ia32-msvc": "npm:1.11.0" + "@unrs/resolver-binding-win32-x64-msvc": "npm:1.11.0" + napi-postinstall: "npm:^0.3.0" dependenciesMeta: + "@unrs/resolver-binding-android-arm-eabi": + optional: true + "@unrs/resolver-binding-android-arm64": + optional: true "@unrs/resolver-binding-darwin-arm64": optional: true "@unrs/resolver-binding-darwin-x64": @@ -21504,7 +21511,7 @@ __metadata: optional: true "@unrs/resolver-binding-win32-x64-msvc": optional: true - checksum: 10/9a166442dcaad7083a7402c0eace7e555c20b1d29acc911241a1fb04039cf69d516fd34f1629e37d3c5eb9676d4f7b155d7f3717bc27873467fbea5eda74f865 + checksum: 10/1035136f133edbabfdbffbb498d68e2cd71425f991e303a26f5ecf81c2ebf364761c62460744fba69ebe9a302a958acf9b2ac7d5005b697a1f17991777d23ab6 languageName: node linkType: hard