diff --git a/.eslintrc.cjs b/.eslintrc.cjs index c22fcecb4c0d..5a573f07e1cb 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -235,6 +235,15 @@ module.exports = { 'jest/prefer-to-have-length': 'off', }, }, + // snapshot in an example needs to keep escapes + { + files: [ + '**/2017-02-21-jest-19-immersive-watch-mode-test-platform-improvements.md/**', + ], + rules: { + 'no-useless-escape': 'off', + }, + }, // snapshots in examples plus inline snapshots need to keep backtick { diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index b9111207f03a..39abe409fe23 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -82,6 +82,8 @@ jobs: run: yarn lint - name: run prettier run: yarn lint:prettier:ci + - name: check changelog + run: yarn check-changelog - name: check copyright headers run: yarn check-copyright-headers diff --git a/CHANGELOG.md b/CHANGELOG.md index 472efe9b8e45..6b48115c48cb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,25 @@ ### Performance +## 29.4.2 + +### Features + +- `[@jest/core]` Instrument significant lifecycle events with [`performance.mark()`](https://nodejs.org/docs/latest-v16.x/api/perf_hooks.html#performancemarkname-options) ([#13859](https://github.com/facebook/jest/pull/13859)) + +### Fixes + +- `[expect, @jest/expect]` Provide type of `actual` as a generic argument to `Matchers` to allow better-typed extensions ([#13848](https://github.com/facebook/jest/pull/13848)) +- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#13847](https://github.com/facebook/jest/pull/13847)) +- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#13853](https://github.com/facebook/jest/pull/13853)) +- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#13853](https://github.com/facebook/jest/pull/13853)) +- `[jest-worker]` Ignore IPC messages not intended for Jest ([#13543](https://github.com/facebook/jest/pull/13543)) + +### Chore & Maintenance + +- `[*]` make sure to exclude `.eslintcache` from published module ([#13832](https://github.com/facebook/jest/pull/13832)) +- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#13857](https://github.com/facebook/jest/pull/13857)) + ## 29.4.1 ### Features @@ -288,7 +307,7 @@ ### Fixes -- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#12763](https://github.com/facebook/jest/pull/12899)) +- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#12899](https://github.com/facebook/jest/pull/12899)) - `[jest-docblock]` Handle multiline comments in parseWithComments ([#12845](https://github.com/facebook/jest/pull/12845)) - `[jest-mock]` Improve `spyOn` error messages ([#12901](https://github.com/facebook/jest/pull/12901)) - `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#12912](https://github.com/facebook/jest/pull/12912)) @@ -766,7 +785,7 @@ ### Features -- `[@jest/fake-timers]` Flush callbacks scheduled with `requestAnimationFrame` every 16ms when using legacy timers. ([#11523](https://github.com/facebook/jest/pull/11567)) +- `[@jest/fake-timers]` Flush callbacks scheduled with `requestAnimationFrame` every 16ms when using legacy timers. ([#11567](https://github.com/facebook/jest/pull/11567)) - `[pretty-format]` Use `globalThis` (with polyfill if required) to bring support for esbuild's browser bundling mode ([#11569](https://github.com/facebook/jest/pull/11569)) ### Fixes @@ -853,7 +872,7 @@ - `[jest-runtime]` Detect reexports from CJS as named exports in ESM ([#10988](https://github.com/facebook/jest/pull/10988)) - `[jest-runtime]` Support for async code transformations ([#11191](https://github.com/facebook/jest/pull/11191) & [#11220](https://github.com/facebook/jest/pull/11220)) - `[jest-snapshot]` [**BREAKING**] Make prettier optional for inline snapshots - fall back to string replacement ([#7792](https://github.com/facebook/jest/pull/7792) & [#11192](https://github.com/facebook/jest/pull/11192)) -- `[jest-snapshot]` [**BREAKING**] Run transforms over `snapshotResolver` ([#8751](https://github.com/facebook/jest/pull/8829)) +- `[jest-snapshot]` [**BREAKING**] Run transforms over `snapshotResolver` ([#8829](https://github.com/facebook/jest/pull/8829)) - `[jest-transform]` Pass config options defined in Jest's config to transformer's `process` and `getCacheKey` functions ([#10926](https://github.com/facebook/jest/pull/10926)) - `[jest-transform]` Add support for transformers written in ESM ([#11163](https://github.com/facebook/jest/pull/11163)) - `[jest-transform]` [**BREAKING**] Do not export `ScriptTransformer` class, instead export the async function `createScriptTransformer` ([#11163](https://github.com/facebook/jest/pull/11163)) @@ -1101,7 +1120,7 @@ - `[jest-core]` Don't report ELDHistogram as open handle ([#10417](https://github.com/facebook/jest/pull/10417)) - `[jest-matcher-utils]` Fix diffing object contain readonly symbol key object ([#10414](https://github.com/facebook/jest/pull/10414)) -- `[jest-reporters]` Fixes notify reporter on Linux (using notify-send) ([#10393](https://github.com/facebook/jest/pull/10400)) +- `[jest-reporters]` Fixes notify reporter on Linux (using notify-send) ([#10400](https://github.com/facebook/jest/pull/10400)) - `[jest-snapshot]` Correctly handles arrays and property matchers in snapshots ([#10404](https://github.com/facebook/jest/pull/10404)) ## 26.4.0 @@ -1150,7 +1169,7 @@ - `[jest-haste-map]` Watchman crawler now includes dotfiles ([#10075](https://github.com/facebook/jest/pull/10075)) - `[jest-worker]` Added support for workers to send custom messages to parent in jest-worker ([#10293](https://github.com/facebook/jest/pull/10293)) - `[jest-worker]` Support passing `resourceLimits` ([#10335](https://github.com/facebook/jest/pull/10335)) -- `[pretty-format]` Added support for serializing custom elements (web components) ([#10217](https://github.com/facebook/jest/pull/10237)) +- `[pretty-format]` Added support for serializing custom elements (web components) ([#10237](https://github.com/facebook/jest/pull/10237)) ### Fixes @@ -1567,7 +1586,7 @@ - `[expect]` Display equal values for ReturnedWith similar to CalledWith ([#8791](https://github.com/facebook/jest/pull/8791)) - `[expect, jest-snapshot]` Change color from green for some args in matcher hints ([#8812](https://github.com/facebook/jest/pull/8812)) - `[jest-snapshot]` Highlight substring differences when matcher fails, part 3 ([#8569](https://github.com/facebook/jest/pull/8569)) -- `[jest-core]` Improve report when snapshots are obsolete ([#8448](https://github.com/facebook/jest/pull/8665)) +- `[jest-core]` Improve report when snapshots are obsolete ([#8665](https://github.com/facebook/jest/pull/8665)) - `[jest-cli]` Improve chai support (with detailed output, to match jest exceptions) ([#8454](https://github.com/facebook/jest/pull/8454)) - `[*]` Manage the global timeout with `--testTimeout` command line argument. ([#8456](https://github.com/facebook/jest/pull/8456)) - `[pretty-format]` Render custom displayName of memoized components ([#8546](https://github.com/facebook/jest/pull/8546)) @@ -1856,7 +1875,7 @@ We skipped 24.2.0 because a draft was accidentally published. Please use `24.3.0 - `[jest-docblock]`: Migrate to TypeScript ([#7836](https://github.com/facebook/jest/pull/7836)) - `[jest-each]`: Migrate to Typescript ([#8007](https://github.com/facebook/jest/pull/8007)) - `[jest-each]`: Refactor into multiple files with better types ([#8018](https://github.com/facebook/jest/pull/8018)) -- `[jest-environment-jsdom]`: Migrate to TypeScript ([#7985](https://github.com/facebook/jest/pull/8003)) +- `[jest-environment-jsdom]`: Migrate to TypeScript ([#8003](https://github.com/facebook/jest/pull/8003)) - `[jest-environment-node]`: Migrate to TypeScript ([#7985](https://github.com/facebook/jest/pull/7985)) - `[jest-get-type]`: Migrate to TypeScript ([#7818](https://github.com/facebook/jest/pull/7818)) - `[jest-haste-map]`: Migrate to TypeScript ([#7854](https://github.com/facebook/jest/pull/7854), [#7951](https://github.com/facebook/jest/pull/7951)) @@ -1879,7 +1898,7 @@ We skipped 24.2.0 because a draft was accidentally published. Please use `24.3.0 - `[jest-watcher]`: Migrate to TypeScript ([#7843](https://github.com/facebook/jest/pull/7843)) - `[jest-worker]`: Migrate to TypeScript ([#7853](https://github.com/facebook/jest/pull/7853)) - `[jest]`: Migrate to TypeScript ([#8024](https://github.com/facebook/jest/pull/8024)) -- `[pretty-format]`: Migrate to TypeScript ([#7809](https://github.com/facebook/jest/pull/7809), [#7809](https://github.com/facebook/jest/pull/7972)) +- `[pretty-format]`: Migrate to TypeScript ([#7809](https://github.com/facebook/jest/pull/7809), [#7972](https://github.com/facebook/jest/pull/7972)) ### Performance @@ -2173,7 +2192,7 @@ We skipped 24.2.0 because a draft was accidentally published. Please use `24.3.0 - `[jest-jasmine2]` Use prettier through `require` instead of `localRequire`. Fixes `matchInlineSnapshot` where prettier dependencies like `path` and `fs` are mocked with `jest.mock`. ([#6776](https://github.com/facebook/jest/pull/6776)) - `[docs]` Fix contributors link ([#6711](https://github.com/facebook/jest/pull/6711)) - `[website]` Fix website versions page to link to correct language ([#6734](https://github.com/facebook/jest/pull/6734)) -- `[expect]` Update `toContain` suggestion to contain equal message ([#6792](https://github.com/facebook/jest/pull/6810)) +- `[expect]` Update `toContain` suggestion to contain equal message ([#6810](https://github.com/facebook/jest/pull/6810)) ## 23.4.1 @@ -2314,7 +2333,7 @@ We skipped 24.2.0 because a draft was accidentally published. Please use `24.3.0 - `[jest-runtime]` Prevent modules from marking themselves as their own parent ([#5235](https://github.com/facebook/jest/issues/5235)) - `[jest-mock]` Add support for auto-mocking generator functions ([#5983](https://github.com/facebook/jest/pull/5983)) - `[expect]` Add support for async matchers ([#5919](https://github.com/facebook/jest/pull/5919)) -- `[expect]` Suggest toContainEqual ([#5948](https://github.com/facebook/jest/pull/5953)) +- `[expect]` Suggest toContainEqual ([#5953](https://github.com/facebook/jest/pull/5953)) - `[jest-config]` Export Jest's default options ([#5948](https://github.com/facebook/jest/pull/5948)) - `[jest-editor-support]` Move `coverage` to `ProjectWorkspace.collectCoverage` ([#5929](https://github.com/facebook/jest/pull/5929)) - `[jest-editor-support]` Add `coverage` option to runner ([#5836](https://github.com/facebook/jest/pull/5836)) @@ -2392,7 +2411,7 @@ We skipped 24.2.0 because a draft was accidentally published. Please use `24.3.0 - `[docs]` Add explanation on how to mock methods not implemented in JSDOM - `[jest-jasmine2]` Simplify `Env.execute` and TreeProcessor to setup and clean resources for the top suite the same way as for all of the children suites ([#5885](https://github.com/facebook/jest/pull/5885)) - `[babel-jest]` [**BREAKING**] Always return object from transformer ([#5991](https://github.com/facebook/jest/pull/5991)) -- `[*]` Run Prettier on compiled output ([#5858](https://github.com/facebook/jest/pull/3497)) +- `[*]` Run Prettier on compiled output ([#5858](https://github.com/facebook/jest/pull/5858)) - `[jest-cli]` Add fileChange hook for plugins ([#5708](https://github.com/facebook/jest/pull/5708)) - `[docs]` Add docs on using `jest.mock(...)` ([#5648](https://github.com/facebook/jest/pull/5648)) - `[docs]` Mention Jest Puppeteer Preset ([#5722](https://github.com/facebook/jest/pull/5722)) @@ -2478,7 +2497,7 @@ We skipped 24.2.0 because a draft was accidentally published. Please use `24.3.0 ### Fixes - `[babel-jest]` Revert "Remove retainLines from babel-jest" ([#5496](https://github.com/facebook/jest/pull/5496)) -- `[jest-docblock]` Support multiple of the same `@pragma`. ([#5154](https://github.com/facebook/jest/pull/5502)) +- `[jest-docblock]` Support multiple of the same `@pragma`. ([#5502](https://github.com/facebook/jest/pull/5502)) ### Features @@ -2662,7 +2681,7 @@ We skipped 24.2.0 because a draft was accidentally published. Please use `24.3.0 - `[pretty-format]` Fix errors when identity-obj-proxy mocks CSS Modules ([#4935](https://github.com/facebook/jest/pull/4935)) - `[babel-jest]` Fix support for namespaced babel version 7 ([#4918](https://github.com/facebook/jest/pull/4918)) - `[expect]` fix .toThrow for promises ([#4884](https://github.com/facebook/jest/pull/4884)) -- `[jest-docblock]` pragmas should preserve urls ([#4837](https://github.com/facebook/jest/pull/4629)) +- `[jest-docblock]` pragmas should preserve urls ([#4837](https://github.com/facebook/jest/pull/4837)) - `[jest-cli]` Check if `npm_lifecycle_script` calls Jest directly ([#4629](https://github.com/facebook/jest/pull/4629)) - `[jest-cli]` Fix --showConfig to show all configs ([#4494](https://github.com/facebook/jest/pull/4494)) - `[jest-cli]` Throw if `maxWorkers` doesn't have a value ([#4591](https://github.com/facebook/jest/pull/4591)) diff --git a/docs/ExpectAPI.md b/docs/ExpectAPI.md index 87aa7c37b0c3..4f206f5cf8bb 100644 --- a/docs/ExpectAPI.md +++ b/docs/ExpectAPI.md @@ -1262,7 +1262,7 @@ These helper functions and properties can be found on `this` inside a custom tes #### `this.equals(a, b, customTesters?)` -This is a deep-equality function that will return `true` if two objects have the same values (recursively). It optionally takes a list of custom equality testers to apply to the deep equality checks. If you use this function, pass through the custom testers your tester is given so further equality checks `equals` applies can also use custom testers the test author may have configured. See the example in the [Recursive custom equality testers][#recursivecustomequalitytesters] section for more details. +This is a deep-equality function that will return `true` if two objects have the same values (recursively). It optionally takes a list of custom equality testers to apply to the deep equality checks. If you use this function, pass through the custom testers your tester is given so further equality checks `equals` applies can also use custom testers the test author may have configured. See the example in the [Recursive custom equality testers](#recursive-custom-equality-testers) section for more details. #### Matchers vs Testers diff --git a/docs/Webpack.md b/docs/Webpack.md index 84b8944b7c4f..699ef4c9f805 100644 --- a/docs/Webpack.md +++ b/docs/Webpack.md @@ -202,7 +202,7 @@ For more complex webpack configurations, you may also want to investigate projec In addition to installing `babel-jest` as described earlier, you'll need to add `@babel/preset-env` like so: ```bash npm2yarn - npm install --save-dev @babel/preset-env +npm install --save-dev @babel/preset-env ``` Then, you'll want to configure Babel as follows: diff --git a/e2e/__tests__/__snapshots__/nativeEsm.test.ts.snap b/e2e/__tests__/__snapshots__/nativeEsm.test.ts.snap index e98ffe6d8f5b..1e8b6bd6ed39 100644 --- a/e2e/__tests__/__snapshots__/nativeEsm.test.ts.snap +++ b/e2e/__tests__/__snapshots__/nativeEsm.test.ts.snap @@ -40,6 +40,14 @@ Time: <> Ran all test suites matching /native-esm.test.js/i." `; +exports[`support re-exports from CJS of core module 1`] = ` +"Test Suites: 1 passed, 1 total +Tests: 1 passed, 1 total +Snapshots: 0 total +Time: <> +Ran all test suites matching /native-esm-core-cjs-reexport.test.js/i." +`; + exports[`supports top-level await 1`] = ` "Test Suites: 1 passed, 1 total Tests: 1 passed, 1 total diff --git a/e2e/__tests__/__snapshots__/timeouts.test.ts.snap b/e2e/__tests__/__snapshots__/timeouts.test.ts.snap index 45abed912e71..70a79392c7cc 100644 --- a/e2e/__tests__/__snapshots__/timeouts.test.ts.snap +++ b/e2e/__tests__/__snapshots__/timeouts.test.ts.snap @@ -41,3 +41,11 @@ Snapshots: 0 total Time: <> Ran all test suites." `; + +exports[`exceeds the timeout specifying that \`done\` has not been called 1`] = ` +"Test Suites: 1 failed, 1 total +Tests: 1 failed, 1 total +Snapshots: 0 total +Time: <> +Ran all test suites." +`; diff --git a/e2e/__tests__/nativeEsm.test.ts b/e2e/__tests__/nativeEsm.test.ts index 47ee045d0a3e..be7e41600409 100644 --- a/e2e/__tests__/nativeEsm.test.ts +++ b/e2e/__tests__/nativeEsm.test.ts @@ -68,6 +68,20 @@ onNodeVersions('>=16.9.0', () => { }); }); +test('support re-exports from CJS of core module', () => { + const {exitCode, stderr, stdout} = runJest( + DIR, + ['native-esm-core-cjs-reexport.test.js'], + {nodeOptions: '--experimental-vm-modules --no-warnings'}, + ); + + const {summary} = extractSummary(stderr); + + expect(summary).toMatchSnapshot(); + expect(stdout).toBe(''); + expect(exitCode).toBe(0); +}); + test('runs WebAssembly (Wasm) test with native ESM', () => { const {exitCode, stderr, stdout} = runJest(DIR, ['native-esm-wasm.test.js'], { nodeOptions: '--experimental-vm-modules --no-warnings', diff --git a/e2e/__tests__/timeouts.test.ts b/e2e/__tests__/timeouts.test.ts index 0e28573f7185..b15f08bf6270 100644 --- a/e2e/__tests__/timeouts.test.ts +++ b/e2e/__tests__/timeouts.test.ts @@ -107,3 +107,24 @@ test('does not exceed the command line testTimeout', () => { expect(summary).toMatchSnapshot(); expect(exitCode).toBe(0); }); + +test('exceeds the timeout specifying that `done` has not been called', () => { + writeFiles(DIR, { + '__tests__/a-banana.js': ` + jest.setTimeout(20); + + test('banana', (done) => { + expect(1 + 1).toBe(2); + }); + `, + 'package.json': '{}', + }); + + const {stderr, exitCode} = runJest(DIR, ['-w=1', '--ci=false']); + const {rest, summary} = extractSummary(stderr); + expect(rest).toMatch( + /(jest\.setTimeout|Exceeded timeout\.while waiting for `done()` to be called)/, + ); + expect(summary).toMatchSnapshot(); + expect(exitCode).toBe(1); +}); diff --git a/e2e/__tests__/transform.test.ts b/e2e/__tests__/transform.test.ts index b171f6dc7528..c577a0f6e323 100644 --- a/e2e/__tests__/transform.test.ts +++ b/e2e/__tests__/transform.test.ts @@ -21,7 +21,7 @@ import runJest, {json as runWithJson} from '../runJest'; describe('babel-jest', () => { const dir = path.resolve(__dirname, '..', 'transform/babel-jest'); - beforeEach(() => { + beforeAll(() => { runYarnInstall(dir); }); @@ -270,6 +270,7 @@ describe('transform-testrunner', () => { const dir = path.resolve(__dirname, '../transform/transform-testrunner'); it('should transform testRunner', () => { + runYarnInstall(dir); const {json, stderr} = runWithJson(dir, ['--no-cache']); expect(stderr).toMatch(/PASS/); expect(json.success).toBe(true); @@ -333,6 +334,7 @@ describe('transform-esm-runner', () => { describe('transform-esm-testrunner', () => { const dir = path.resolve(__dirname, '../transform/transform-esm-testrunner'); + runYarnInstall(dir); test('runs test with native ESM', () => { const {json, stderr} = runWithJson(dir, ['--no-cache'], { nodeOptions: '--experimental-vm-modules --no-warnings', diff --git a/e2e/native-esm/__tests__/native-esm-core-cjs-reexport.test.js b/e2e/native-esm/__tests__/native-esm-core-cjs-reexport.test.js new file mode 100644 index 000000000000..a64a487c0804 --- /dev/null +++ b/e2e/native-esm/__tests__/native-esm-core-cjs-reexport.test.js @@ -0,0 +1,12 @@ +/** + * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +import {Constants} from '../coreReexport.js'; + +test('can reexport core CJS requires', () => { + expect(Constants).toHaveProperty('TLS1_VERSION'); +}); diff --git a/e2e/native-esm/__tests__/native-esm.test.js b/e2e/native-esm/__tests__/native-esm.test.js index 4b253fe6bca1..c452fda7d313 100644 --- a/e2e/native-esm/__tests__/native-esm.test.js +++ b/e2e/native-esm/__tests__/native-esm.test.js @@ -46,6 +46,7 @@ test('should support importing node core modules', () => { expect(JSON.parse(readFileSync(packageJsonPath, 'utf8'))).toEqual({ devDependencies: { 'discord.js': '14.3.0', + 'iso-constants': '^0.1.2', yargs: '^17.5.1', }, jest: { diff --git a/e2e/native-esm/coreReexport.js b/e2e/native-esm/coreReexport.js new file mode 100644 index 000000000000..173727f9a442 --- /dev/null +++ b/e2e/native-esm/coreReexport.js @@ -0,0 +1,10 @@ +/** + * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +import isoConstants from 'iso-constants'; + +export const Constants = isoConstants; diff --git a/e2e/native-esm/package.json b/e2e/native-esm/package.json index 60993c0776ca..7ef4ed423ae8 100644 --- a/e2e/native-esm/package.json +++ b/e2e/native-esm/package.json @@ -2,6 +2,7 @@ "type": "module", "devDependencies": { "discord.js": "14.3.0", + "iso-constants": "^0.1.2", "yargs": "^17.5.1" }, "jest": { diff --git a/e2e/native-esm/yarn.lock b/e2e/native-esm/yarn.lock index 1cacfd5f1c46..fdea0dbf3934 100644 --- a/e2e/native-esm/yarn.lock +++ b/e2e/native-esm/yarn.lock @@ -234,6 +234,13 @@ __metadata: languageName: node linkType: hard +"iso-constants@npm:^0.1.2": + version: 0.1.2 + resolution: "iso-constants@npm:0.1.2" + checksum: 5e59939d03b4603d9426704c4dea8c41a4db14a91e34273a1b129aa84e265d6a63456d3543e3be85f47cdf350be5359bd31c59566e5084bdaee618dc65843804 + languageName: node + linkType: hard + "lodash.snakecase@npm:^4.1.1": version: 4.1.1 resolution: "lodash.snakecase@npm:4.1.1" @@ -287,6 +294,7 @@ __metadata: resolution: "root-workspace-0b6124@workspace:." dependencies: discord.js: 14.3.0 + iso-constants: ^0.1.2 yargs: ^17.5.1 languageName: unknown linkType: soft diff --git a/e2e/transform/transform-esm-testrunner/package.json b/e2e/transform/transform-esm-testrunner/package.json index 813b6f4b1533..98a9c1941859 100644 --- a/e2e/transform/transform-esm-testrunner/package.json +++ b/e2e/transform/transform-esm-testrunner/package.json @@ -1,5 +1,8 @@ { "type": "module", + "dependencies": { + "@jest/test-result": "link:../../../packages/jest-test-result" + }, "jest": { "rootDir": "./", "testRunner": "/test-runner.mjs" diff --git a/e2e/transform/transform-esm-testrunner/yarn.lock b/e2e/transform/transform-esm-testrunner/yarn.lock new file mode 100644 index 000000000000..60cff675bab4 --- /dev/null +++ b/e2e/transform/transform-esm-testrunner/yarn.lock @@ -0,0 +1,19 @@ +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + +__metadata: + version: 6 + +"@jest/test-result@link:../../../packages/jest-test-result::locator=root-workspace-0b6124%40workspace%3A.": + version: 0.0.0-use.local + resolution: "@jest/test-result@link:../../../packages/jest-test-result::locator=root-workspace-0b6124%40workspace%3A." + languageName: node + linkType: soft + +"root-workspace-0b6124@workspace:.": + version: 0.0.0-use.local + resolution: "root-workspace-0b6124@workspace:." + dependencies: + "@jest/test-result": "link:../../../packages/jest-test-result" + languageName: unknown + linkType: soft diff --git a/e2e/transform/transform-testrunner/package.json b/e2e/transform/transform-testrunner/package.json index 9386da74e3dd..02e19607e326 100644 --- a/e2e/transform/transform-testrunner/package.json +++ b/e2e/transform/transform-testrunner/package.json @@ -5,6 +5,7 @@ }, "dependencies": { "@babel/preset-env": "^7.0.0", - "@babel/preset-typescript": "^7.0.0" + "@babel/preset-typescript": "^7.0.0", + "@jest/test-result": "link:../../../packages/jest-test-result" } } diff --git a/e2e/transform/transform-testrunner/yarn.lock b/e2e/transform/transform-testrunner/yarn.lock new file mode 100644 index 000000000000..836965b70deb --- /dev/null +++ b/e2e/transform/transform-testrunner/yarn.lock @@ -0,0 +1,1731 @@ +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + +__metadata: + version: 6 + cacheKey: 8 + +"@babel/code-frame@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/code-frame@npm:7.18.6" + dependencies: + "@babel/highlight": ^7.18.6 + checksum: 195e2be3172d7684bf95cff69ae3b7a15a9841ea9d27d3c843662d50cdd7d6470fd9c8e64be84d031117e4a4083486effba39f9aef6bbb2c89f7f21bcfba33ba + languageName: node + linkType: hard + +"@babel/compat-data@npm:^7.17.7, @babel/compat-data@npm:^7.20.1, @babel/compat-data@npm:^7.20.5": + version: 7.20.14 + resolution: "@babel/compat-data@npm:7.20.14" + checksum: 6c9efe36232094e4ad0b70d165587f21ca718e5d011f7a52a77a18502a7524e90e2855aa5a2e086395bcfd21bd2c7c99128dcd8d9fdffe94316b72acf5c66f2c + languageName: node + linkType: hard + +"@babel/generator@npm:^7.20.7": + version: 7.20.14 + resolution: "@babel/generator@npm:7.20.14" + dependencies: + "@babel/types": ^7.20.7 + "@jridgewell/gen-mapping": ^0.3.2 + jsesc: ^2.5.1 + checksum: 5f6aa2d86af26e76d276923a5c34191124a119b16ee9ccc34aef654a7dec84fbd7d2daed2e6458a6a06bf87f3661deb77c9fea59b8f67faff5c90793c96d76d6 + languageName: node + linkType: hard + +"@babel/helper-annotate-as-pure@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/helper-annotate-as-pure@npm:7.18.6" + dependencies: + "@babel/types": ^7.18.6 + checksum: 88ccd15ced475ef2243fdd3b2916a29ea54c5db3cd0cfabf9d1d29ff6e63b7f7cd1c27264137d7a40ac2e978b9b9a542c332e78f40eb72abe737a7400788fc1b + languageName: node + linkType: hard + +"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.18.6": + version: 7.18.9 + resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.18.9" + dependencies: + "@babel/helper-explode-assignable-expression": ^7.18.6 + "@babel/types": ^7.18.9 + checksum: b4bc214cb56329daff6cc18a7f7a26aeafb55a1242e5362f3d47fe3808421f8c7cd91fff95d6b9b7ccb67e14e5a67d944e49dbe026942bfcbfda19b1c72a8e72 + languageName: node + linkType: hard + +"@babel/helper-compilation-targets@npm:^7.17.7, @babel/helper-compilation-targets@npm:^7.18.9, @babel/helper-compilation-targets@npm:^7.20.0, @babel/helper-compilation-targets@npm:^7.20.7": + version: 7.20.7 + resolution: "@babel/helper-compilation-targets@npm:7.20.7" + dependencies: + "@babel/compat-data": ^7.20.5 + "@babel/helper-validator-option": ^7.18.6 + browserslist: ^4.21.3 + lru-cache: ^5.1.1 + semver: ^6.3.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 8c32c873ba86e2e1805b30e0807abd07188acbe00ebb97576f0b09061cc65007f1312b589eccb4349c5a8c7f8bb9f2ab199d41da7030bf103d9f347dcd3a3cf4 + languageName: node + linkType: hard + +"@babel/helper-create-class-features-plugin@npm:^7.18.6, @babel/helper-create-class-features-plugin@npm:^7.20.12, @babel/helper-create-class-features-plugin@npm:^7.20.5, @babel/helper-create-class-features-plugin@npm:^7.20.7": + version: 7.20.12 + resolution: "@babel/helper-create-class-features-plugin@npm:7.20.12" + dependencies: + "@babel/helper-annotate-as-pure": ^7.18.6 + "@babel/helper-environment-visitor": ^7.18.9 + "@babel/helper-function-name": ^7.19.0 + "@babel/helper-member-expression-to-functions": ^7.20.7 + "@babel/helper-optimise-call-expression": ^7.18.6 + "@babel/helper-replace-supers": ^7.20.7 + "@babel/helper-skip-transparent-expression-wrappers": ^7.20.0 + "@babel/helper-split-export-declaration": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 1e9ed4243b75278fa24deb40dc62bf537b79307987223a2d2d2ae5abf7ba6dc8435d6e3bb55d52ceb30d3e1eba88e7eb6a1885a8bb519e5cfc3e9dedb97d43e6 + languageName: node + linkType: hard + +"@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.20.5": + version: 7.20.5 + resolution: "@babel/helper-create-regexp-features-plugin@npm:7.20.5" + dependencies: + "@babel/helper-annotate-as-pure": ^7.18.6 + regexpu-core: ^5.2.1 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 7f29c3cb7447cca047b0d394f8ab98e4923d00e86a7afa56e5df9770c48ec107891505d2d1f06b720ecc94ed24bf58d90986cc35fe4a43b549eb7b7a5077b693 + languageName: node + linkType: hard + +"@babel/helper-define-polyfill-provider@npm:^0.3.3": + version: 0.3.3 + resolution: "@babel/helper-define-polyfill-provider@npm:0.3.3" + dependencies: + "@babel/helper-compilation-targets": ^7.17.7 + "@babel/helper-plugin-utils": ^7.16.7 + debug: ^4.1.1 + lodash.debounce: ^4.0.8 + resolve: ^1.14.2 + semver: ^6.1.2 + peerDependencies: + "@babel/core": ^7.4.0-0 + checksum: 8e3fe75513302e34f6d92bd67b53890e8545e6c5bca8fe757b9979f09d68d7e259f6daea90dc9e01e332c4f8781bda31c5fe551c82a277f9bc0bec007aed497c + languageName: node + linkType: hard + +"@babel/helper-environment-visitor@npm:^7.18.9": + version: 7.18.9 + resolution: "@babel/helper-environment-visitor@npm:7.18.9" + checksum: b25101f6162ddca2d12da73942c08ad203d7668e06663df685634a8fde54a98bc015f6f62938e8554457a592a024108d45b8f3e651fd6dcdb877275b73cc4420 + languageName: node + linkType: hard + +"@babel/helper-explode-assignable-expression@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/helper-explode-assignable-expression@npm:7.18.6" + dependencies: + "@babel/types": ^7.18.6 + checksum: 225cfcc3376a8799023d15dc95000609e9d4e7547b29528c7f7111a0e05493ffb12c15d70d379a0bb32d42752f340233c4115bded6d299bc0c3ab7a12be3d30f + languageName: node + linkType: hard + +"@babel/helper-function-name@npm:^7.18.9, @babel/helper-function-name@npm:^7.19.0": + version: 7.19.0 + resolution: "@babel/helper-function-name@npm:7.19.0" + dependencies: + "@babel/template": ^7.18.10 + "@babel/types": ^7.19.0 + checksum: eac1f5db428ba546270c2b8d750c24eb528b8fcfe50c81de2e0bdebf0e20f24bec688d4331533b782e4a907fad435244621ca2193cfcf80a86731299840e0f6e + languageName: node + linkType: hard + +"@babel/helper-hoist-variables@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/helper-hoist-variables@npm:7.18.6" + dependencies: + "@babel/types": ^7.18.6 + checksum: fd9c35bb435fda802bf9ff7b6f2df06308a21277c6dec2120a35b09f9de68f68a33972e2c15505c1a1a04b36ec64c9ace97d4a9e26d6097b76b4396b7c5fa20f + languageName: node + linkType: hard + +"@babel/helper-member-expression-to-functions@npm:^7.20.7": + version: 7.20.7 + resolution: "@babel/helper-member-expression-to-functions@npm:7.20.7" + dependencies: + "@babel/types": ^7.20.7 + checksum: cec17aab7e964830b0146e575bd141127032319f26ed864a65b35abd75ad618d264d3e11449b9b4e29cfd95bb1a7e774afddd4884fdcc29c36ac9cbd2b66359f + languageName: node + linkType: hard + +"@babel/helper-module-imports@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/helper-module-imports@npm:7.18.6" + dependencies: + "@babel/types": ^7.18.6 + checksum: f393f8a3b3304b1b7a288a38c10989de754f01d29caf62ce7c4e5835daf0a27b81f3ac687d9d2780d39685aae7b55267324b512150e7b2be967b0c493b6a1def + languageName: node + linkType: hard + +"@babel/helper-module-transforms@npm:^7.18.6, @babel/helper-module-transforms@npm:^7.20.11": + version: 7.20.11 + resolution: "@babel/helper-module-transforms@npm:7.20.11" + dependencies: + "@babel/helper-environment-visitor": ^7.18.9 + "@babel/helper-module-imports": ^7.18.6 + "@babel/helper-simple-access": ^7.20.2 + "@babel/helper-split-export-declaration": ^7.18.6 + "@babel/helper-validator-identifier": ^7.19.1 + "@babel/template": ^7.20.7 + "@babel/traverse": ^7.20.10 + "@babel/types": ^7.20.7 + checksum: 29319ebafa693d48756c6ba0d871677bb0037e0da084fbe221a17c38d57093fc8aa38543c07d76e788266a937976e37ab4901971ca7f237c5ab45f524b9ecca0 + languageName: node + linkType: hard + +"@babel/helper-optimise-call-expression@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/helper-optimise-call-expression@npm:7.18.6" + dependencies: + "@babel/types": ^7.18.6 + checksum: e518fe8418571405e21644cfb39cf694f30b6c47b10b006609a92469ae8b8775cbff56f0b19732343e2ea910641091c5a2dc73b56ceba04e116a33b0f8bd2fbd + languageName: node + linkType: hard + +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.16.7, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.18.9, @babel/helper-plugin-utils@npm:^7.19.0, @babel/helper-plugin-utils@npm:^7.20.2, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": + version: 7.20.2 + resolution: "@babel/helper-plugin-utils@npm:7.20.2" + checksum: f6cae53b7fdb1bf3abd50fa61b10b4470985b400cc794d92635da1e7077bb19729f626adc0741b69403d9b6e411cddddb9c0157a709cc7c4eeb41e663be5d74b + languageName: node + linkType: hard + +"@babel/helper-remap-async-to-generator@npm:^7.18.9": + version: 7.18.9 + resolution: "@babel/helper-remap-async-to-generator@npm:7.18.9" + dependencies: + "@babel/helper-annotate-as-pure": ^7.18.6 + "@babel/helper-environment-visitor": ^7.18.9 + "@babel/helper-wrap-function": ^7.18.9 + "@babel/types": ^7.18.9 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 4be6076192308671b046245899b703ba090dbe7ad03e0bea897bb2944ae5b88e5e85853c9d1f83f643474b54c578d8ac0800b80341a86e8538264a725fbbefec + languageName: node + linkType: hard + +"@babel/helper-replace-supers@npm:^7.18.6, @babel/helper-replace-supers@npm:^7.20.7": + version: 7.20.7 + resolution: "@babel/helper-replace-supers@npm:7.20.7" + dependencies: + "@babel/helper-environment-visitor": ^7.18.9 + "@babel/helper-member-expression-to-functions": ^7.20.7 + "@babel/helper-optimise-call-expression": ^7.18.6 + "@babel/template": ^7.20.7 + "@babel/traverse": ^7.20.7 + "@babel/types": ^7.20.7 + checksum: b8e0087c9b0c1446e3c6f3f72b73b7e03559c6b570e2cfbe62c738676d9ebd8c369a708cf1a564ef88113b4330750a50232ee1131d303d478b7a5e65e46fbc7c + languageName: node + linkType: hard + +"@babel/helper-simple-access@npm:^7.20.2": + version: 7.20.2 + resolution: "@babel/helper-simple-access@npm:7.20.2" + dependencies: + "@babel/types": ^7.20.2 + checksum: ad1e96ee2e5f654ffee2369a586e5e8d2722bf2d8b028a121b4c33ebae47253f64d420157b9f0a8927aea3a9e0f18c0103e74fdd531815cf3650a0a4adca11a1 + languageName: node + linkType: hard + +"@babel/helper-skip-transparent-expression-wrappers@npm:^7.20.0": + version: 7.20.0 + resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.20.0" + dependencies: + "@babel/types": ^7.20.0 + checksum: 34da8c832d1c8a546e45d5c1d59755459ffe43629436707079989599b91e8c19e50e73af7a4bd09c95402d389266731b0d9c5f69e372d8ebd3a709c05c80d7dd + languageName: node + linkType: hard + +"@babel/helper-split-export-declaration@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/helper-split-export-declaration@npm:7.18.6" + dependencies: + "@babel/types": ^7.18.6 + checksum: c6d3dede53878f6be1d869e03e9ffbbb36f4897c7cc1527dc96c56d127d834ffe4520a6f7e467f5b6f3c2843ea0e81a7819d66ae02f707f6ac057f3d57943a2b + languageName: node + linkType: hard + +"@babel/helper-string-parser@npm:^7.19.4": + version: 7.19.4 + resolution: "@babel/helper-string-parser@npm:7.19.4" + checksum: b2f8a3920b30dfac81ec282ac4ad9598ea170648f8254b10f475abe6d944808fb006aab325d3eb5a8ad3bea8dfa888cfa6ef471050dae5748497c110ec060943 + languageName: node + linkType: hard + +"@babel/helper-validator-identifier@npm:^7.18.6, @babel/helper-validator-identifier@npm:^7.19.1": + version: 7.19.1 + resolution: "@babel/helper-validator-identifier@npm:7.19.1" + checksum: 0eca5e86a729162af569b46c6c41a63e18b43dbe09fda1d2a3c8924f7d617116af39cac5e4cd5d431bb760b4dca3c0970e0c444789b1db42bcf1fa41fbad0a3a + languageName: node + linkType: hard + +"@babel/helper-validator-option@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/helper-validator-option@npm:7.18.6" + checksum: f9cc6eb7cc5d759c5abf006402180f8d5e4251e9198197428a97e05d65eb2f8ae5a0ce73b1dfd2d35af41d0eb780627a64edf98a4e71f064eeeacef8de58f2cf + languageName: node + linkType: hard + +"@babel/helper-wrap-function@npm:^7.18.9": + version: 7.20.5 + resolution: "@babel/helper-wrap-function@npm:7.20.5" + dependencies: + "@babel/helper-function-name": ^7.19.0 + "@babel/template": ^7.18.10 + "@babel/traverse": ^7.20.5 + "@babel/types": ^7.20.5 + checksum: 11a6fc28334368a193a9cb3ad16f29cd7603bab958433efc82ebe59fa6556c227faa24f07ce43983f7a85df826f71d441638442c4315e90a554fe0a70ca5005b + languageName: node + linkType: hard + +"@babel/highlight@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/highlight@npm:7.18.6" + dependencies: + "@babel/helper-validator-identifier": ^7.18.6 + chalk: ^2.0.0 + js-tokens: ^4.0.0 + checksum: 92d8ee61549de5ff5120e945e774728e5ccd57fd3b2ed6eace020ec744823d4a98e242be1453d21764a30a14769ecd62170fba28539b211799bbaf232bbb2789 + languageName: node + linkType: hard + +"@babel/parser@npm:^7.20.13, @babel/parser@npm:^7.20.7": + version: 7.20.13 + resolution: "@babel/parser@npm:7.20.13" + bin: + parser: ./bin/babel-parser.js + checksum: 7eb2e3d9d9ad5e24b087c88d137f5701d94f049e28b9dce9f3f5c6d4d9b06a0d7c43b9106f1c02df8a204226200e0517de4bc81a339768a4ebd4c59107ea93a4 + languageName: node + linkType: hard + +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 845bd280c55a6a91d232cfa54eaf9708ec71e594676fe705794f494bb8b711d833b752b59d1a5c154695225880c23dbc9cab0e53af16fd57807976cd3ff41b8d + languageName: node + linkType: hard + +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.18.9": + version: 7.20.7 + resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.20.7" + dependencies: + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/helper-skip-transparent-expression-wrappers": ^7.20.0 + "@babel/plugin-proposal-optional-chaining": ^7.20.7 + peerDependencies: + "@babel/core": ^7.13.0 + checksum: d610f532210bee5342f5b44a12395ccc6d904e675a297189bc1e401cc185beec09873da523466d7fec34ae1574f7a384235cba1ccc9fe7b89ba094167897c845 + languageName: node + linkType: hard + +"@babel/plugin-proposal-async-generator-functions@npm:^7.20.1": + version: 7.20.7 + resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.20.7" + dependencies: + "@babel/helper-environment-visitor": ^7.18.9 + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/helper-remap-async-to-generator": ^7.18.9 + "@babel/plugin-syntax-async-generators": ^7.8.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 111109ee118c9e69982f08d5e119eab04190b36a0f40e22e873802d941956eee66d2aa5a15f5321e51e3f9aa70a91136451b987fe15185ef8cc547ac88937723 + languageName: node + linkType: hard + +"@babel/plugin-proposal-class-properties@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-proposal-class-properties@npm:7.18.6" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.18.6 + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 49a78a2773ec0db56e915d9797e44fd079ab8a9b2e1716e0df07c92532f2c65d76aeda9543883916b8e0ff13606afeffa67c5b93d05b607bc87653ad18a91422 + languageName: node + linkType: hard + +"@babel/plugin-proposal-class-static-block@npm:^7.18.6": + version: 7.20.7 + resolution: "@babel/plugin-proposal-class-static-block@npm:7.20.7" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.20.7 + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/plugin-syntax-class-static-block": ^7.14.5 + peerDependencies: + "@babel/core": ^7.12.0 + checksum: ce1f3e8fd96437d820aa36323b7b3a0cb65b5f2600612665129880d5a4eb7194ce6a298ed2a5a4d3a9ea49bd33089ab95503c4c5b3ba9cea251a07d1706453d9 + languageName: node + linkType: hard + +"@babel/plugin-proposal-dynamic-import@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-proposal-dynamic-import@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + "@babel/plugin-syntax-dynamic-import": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 96b1c8a8ad8171d39e9ab106be33bde37ae09b22fb2c449afee9a5edf3c537933d79d963dcdc2694d10677cb96da739cdf1b53454e6a5deab9801f28a818bb2f + languageName: node + linkType: hard + +"@babel/plugin-proposal-export-namespace-from@npm:^7.18.9": + version: 7.18.9 + resolution: "@babel/plugin-proposal-export-namespace-from@npm:7.18.9" + dependencies: + "@babel/helper-plugin-utils": ^7.18.9 + "@babel/plugin-syntax-export-namespace-from": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 84ff22bacc5d30918a849bfb7e0e90ae4c5b8d8b65f2ac881803d1cf9068dffbe53bd657b0e4bc4c20b4db301b1c85f1e74183cf29a0dd31e964bd4e97c363ef + languageName: node + linkType: hard + +"@babel/plugin-proposal-json-strings@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-proposal-json-strings@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + "@babel/plugin-syntax-json-strings": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 25ba0e6b9d6115174f51f7c6787e96214c90dd4026e266976b248a2ed417fe50fddae72843ffb3cbe324014a18632ce5648dfac77f089da858022b49fd608cb3 + languageName: node + linkType: hard + +"@babel/plugin-proposal-logical-assignment-operators@npm:^7.18.9": + version: 7.20.7 + resolution: "@babel/plugin-proposal-logical-assignment-operators@npm:7.20.7" + dependencies: + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: cdd7b8136cc4db3f47714d5266f9e7b592a2ac5a94a5878787ce08890e97c8ab1ca8e94b27bfeba7b0f2b1549a026d9fc414ca2196de603df36fb32633bbdc19 + languageName: node + linkType: hard + +"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 949c9ddcdecdaec766ee610ef98f965f928ccc0361dd87cf9f88cf4896a6ccd62fce063d4494778e50da99dea63d270a1be574a62d6ab81cbe9d85884bf55a7d + languageName: node + linkType: hard + +"@babel/plugin-proposal-numeric-separator@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-proposal-numeric-separator@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + "@babel/plugin-syntax-numeric-separator": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f370ea584c55bf4040e1f78c80b4eeb1ce2e6aaa74f87d1a48266493c33931d0b6222d8cee3a082383d6bb648ab8d6b7147a06f974d3296ef3bc39c7851683ec + languageName: node + linkType: hard + +"@babel/plugin-proposal-object-rest-spread@npm:^7.20.2": + version: 7.20.7 + resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.20.7" + dependencies: + "@babel/compat-data": ^7.20.5 + "@babel/helper-compilation-targets": ^7.20.7 + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/plugin-syntax-object-rest-spread": ^7.8.3 + "@babel/plugin-transform-parameters": ^7.20.7 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 1329db17009964bc644484c660eab717cb3ca63ac0ab0f67c651a028d1bc2ead51dc4064caea283e46994f1b7221670a35cbc0b4beb6273f55e915494b5aa0b2 + languageName: node + linkType: hard + +"@babel/plugin-proposal-optional-catch-binding@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-proposal-optional-catch-binding@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7b5b39fb5d8d6d14faad6cb68ece5eeb2fd550fb66b5af7d7582402f974f5bc3684641f7c192a5a57e0f59acfae4aada6786be1eba030881ddc590666eff4d1e + languageName: node + linkType: hard + +"@babel/plugin-proposal-optional-chaining@npm:^7.18.9, @babel/plugin-proposal-optional-chaining@npm:^7.20.7": + version: 7.20.7 + resolution: "@babel/plugin-proposal-optional-chaining@npm:7.20.7" + dependencies: + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/helper-skip-transparent-expression-wrappers": ^7.20.0 + "@babel/plugin-syntax-optional-chaining": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 274b8932335bd064ca24cf1a4da2b2c20c92726d4bfa8b0cb5023857479b8481feef33505c16650c7b9239334e5c6959babc924816324c4cf223dd91c7ca79bc + languageName: node + linkType: hard + +"@babel/plugin-proposal-private-methods@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-proposal-private-methods@npm:7.18.6" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.18.6 + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 22d8502ee96bca99ad2c8393e8493e2b8d4507576dd054490fd8201a36824373440106f5b098b6d821b026c7e72b0424ff4aeca69ed5f42e48f029d3a156d5ad + languageName: node + linkType: hard + +"@babel/plugin-proposal-private-property-in-object@npm:^7.18.6": + version: 7.20.5 + resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.20.5" + dependencies: + "@babel/helper-annotate-as-pure": ^7.18.6 + "@babel/helper-create-class-features-plugin": ^7.20.5 + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/plugin-syntax-private-property-in-object": ^7.14.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 513b5e0e2c1b2846be5336cf680e932ae17924ef885aa1429e1a4f7924724bdd99b15f28d67187d0a006d5f18a0c4b61d96c3ecb4902fed3c8fe2f0abfc9753a + languageName: node + linkType: hard + +"@babel/plugin-proposal-unicode-property-regex@npm:^7.18.6, @babel/plugin-proposal-unicode-property-regex@npm:^7.4.4": + version: 7.18.6 + resolution: "@babel/plugin-proposal-unicode-property-regex@npm:7.18.6" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.18.6 + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: a8575ecb7ff24bf6c6e94808d5c84bb5a0c6dd7892b54f09f4646711ba0ee1e1668032b3c43e3e1dfec2c5716c302e851ac756c1645e15882d73df6ad21ae951 + languageName: node + linkType: hard + +"@babel/plugin-syntax-async-generators@npm:^7.8.4": + version: 7.8.4 + resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7ed1c1d9b9e5b64ef028ea5e755c0be2d4e5e4e3d6cf7df757b9a8c4cfa4193d268176d0f1f7fbecdda6fe722885c7fda681f480f3741d8a2d26854736f05367 + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-properties@npm:^7.12.13": + version: 7.12.13 + resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" + dependencies: + "@babel/helper-plugin-utils": ^7.12.13 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 24f34b196d6342f28d4bad303612d7ff566ab0a013ce89e775d98d6f832969462e7235f3e7eaf17678a533d4be0ba45d3ae34ab4e5a9dcbda5d98d49e5efa2fc + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-static-block@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": ^7.14.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 3e80814b5b6d4fe17826093918680a351c2d34398a914ce6e55d8083d72a9bdde4fbaf6a2dcea0e23a03de26dc2917ae3efd603d27099e2b98380345703bf948 + languageName: node + linkType: hard + +"@babel/plugin-syntax-dynamic-import@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ce307af83cf433d4ec42932329fad25fa73138ab39c7436882ea28742e1c0066626d224e0ad2988724c82644e41601cef607b36194f695cb78a1fcdc959637bd + languageName: node + linkType: hard + +"@babel/plugin-syntax-export-namespace-from@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-export-namespace-from@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 85740478be5b0de185228e7814451d74ab8ce0a26fcca7613955262a26e99e8e15e9da58f60c754b84515d4c679b590dbd3f2148f0f58025f4ae706f1c5a5d4a + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-assertions@npm:^7.20.0": + version: 7.20.0 + resolution: "@babel/plugin-syntax-import-assertions@npm:7.20.0" + dependencies: + "@babel/helper-plugin-utils": ^7.19.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 6a86220e0aae40164cd3ffaf80e7c076a1be02a8f3480455dddbae05fda8140f429290027604df7a11b3f3f124866e8a6d69dbfa1dda61ee7377b920ad144d5b + languageName: node + linkType: hard + +"@babel/plugin-syntax-json-strings@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: bf5aea1f3188c9a507e16efe030efb996853ca3cadd6512c51db7233cc58f3ac89ff8c6bdfb01d30843b161cfe7d321e1bf28da82f7ab8d7e6bc5464666f354a + languageName: node + linkType: hard + +"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: aff33577037e34e515911255cdbb1fd39efee33658aa00b8a5fd3a4b903585112d037cce1cc9e4632f0487dc554486106b79ccd5ea63a2e00df4363f6d4ff886 + languageName: node + linkType: hard + +"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 87aca4918916020d1fedba54c0e232de408df2644a425d153be368313fdde40d96088feed6c4e5ab72aac89be5d07fef2ddf329a15109c5eb65df006bf2580d1 + languageName: node + linkType: hard + +"@babel/plugin-syntax-numeric-separator@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 01ec5547bd0497f76cc903ff4d6b02abc8c05f301c88d2622b6d834e33a5651aa7c7a3d80d8d57656a4588f7276eba357f6b7e006482f5b564b7a6488de493a1 + languageName: node + linkType: hard + +"@babel/plugin-syntax-object-rest-spread@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: fddcf581a57f77e80eb6b981b10658421bc321ba5f0a5b754118c6a92a5448f12a0c336f77b8abf734841e102e5126d69110a306eadb03ca3e1547cab31f5cbf + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 910d90e72bc90ea1ce698e89c1027fed8845212d5ab588e35ef91f13b93143845f94e2539d831dc8d8ededc14ec02f04f7bd6a8179edd43a326c784e7ed7f0b9 + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-chaining@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: eef94d53a1453361553c1f98b68d17782861a04a392840341bc91780838dd4e695209c783631cf0de14c635758beafb6a3a65399846ffa4386bff90639347f30 + languageName: node + linkType: hard + +"@babel/plugin-syntax-private-property-in-object@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": ^7.14.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b317174783e6e96029b743ccff2a67d63d38756876e7e5d0ba53a322e38d9ca452c13354a57de1ad476b4c066dbae699e0ca157441da611117a47af88985ecda + languageName: node + linkType: hard + +"@babel/plugin-syntax-top-level-await@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": ^7.14.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: bbd1a56b095be7820029b209677b194db9b1d26691fe999856462e66b25b281f031f3dfd91b1619e9dcf95bebe336211833b854d0fb8780d618e35667c2d0d7e + languageName: node + linkType: hard + +"@babel/plugin-syntax-typescript@npm:^7.20.0": + version: 7.20.0 + resolution: "@babel/plugin-syntax-typescript@npm:7.20.0" + dependencies: + "@babel/helper-plugin-utils": ^7.19.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 6189c0b5c32ba3c9a80a42338bd50719d783b20ef29b853d4f03929e971913d3cefd80184e924ae98ad6db09080be8fe6f1ffde9a6db8972523234f0274d36f7 + languageName: node + linkType: hard + +"@babel/plugin-transform-arrow-functions@npm:^7.18.6": + version: 7.20.7 + resolution: "@babel/plugin-transform-arrow-functions@npm:7.20.7" + dependencies: + "@babel/helper-plugin-utils": ^7.20.2 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b43cabe3790c2de7710abe32df9a30005eddb2050dadd5d122c6872f679e5710e410f1b90c8f99a2aff7b614cccfecf30e7fd310236686f60d3ed43fd80b9847 + languageName: node + linkType: hard + +"@babel/plugin-transform-async-to-generator@npm:^7.18.6": + version: 7.20.7 + resolution: "@babel/plugin-transform-async-to-generator@npm:7.20.7" + dependencies: + "@babel/helper-module-imports": ^7.18.6 + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/helper-remap-async-to-generator": ^7.18.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: fe9ee8a5471b4317c1b9ea92410ace8126b52a600d7cfbfe1920dcac6fb0fad647d2e08beb4fd03c630eb54430e6c72db11e283e3eddc49615c68abd39430904 + languageName: node + linkType: hard + +"@babel/plugin-transform-block-scoped-functions@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0a0df61f94601e3666bf39f2cc26f5f7b22a94450fb93081edbed967bd752ce3f81d1227fefd3799f5ee2722171b5e28db61379234d1bb85b6ec689589f99d7e + languageName: node + linkType: hard + +"@babel/plugin-transform-block-scoping@npm:^7.20.2": + version: 7.20.14 + resolution: "@babel/plugin-transform-block-scoping@npm:7.20.14" + dependencies: + "@babel/helper-plugin-utils": ^7.20.2 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: acf7bf7314022732e70b0b9c3cdc0fd9d158423d01d09436f020b6f87e7c63292790e1fa34fdcc7388ec453dd5e59f664d4fb3bec5e5694ff28e810baa0c9659 + languageName: node + linkType: hard + +"@babel/plugin-transform-classes@npm:^7.20.2": + version: 7.20.7 + resolution: "@babel/plugin-transform-classes@npm:7.20.7" + dependencies: + "@babel/helper-annotate-as-pure": ^7.18.6 + "@babel/helper-compilation-targets": ^7.20.7 + "@babel/helper-environment-visitor": ^7.18.9 + "@babel/helper-function-name": ^7.19.0 + "@babel/helper-optimise-call-expression": ^7.18.6 + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/helper-replace-supers": ^7.20.7 + "@babel/helper-split-export-declaration": ^7.18.6 + globals: ^11.1.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 4cf55ad88e52c7c66a991add4c8e1c3324384bd52df7085962d396879561456a44352e5ab1725cc80f4e83737a2931e847c4a96c7aa4a549357f23631ff31799 + languageName: node + linkType: hard + +"@babel/plugin-transform-computed-properties@npm:^7.18.9": + version: 7.20.7 + resolution: "@babel/plugin-transform-computed-properties@npm:7.20.7" + dependencies: + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/template": ^7.20.7 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: be70e54bda8b469146459f429e5f2bd415023b87b2d5af8b10e48f465ffb02847a3ed162ca60378c004b82db848e4d62e90010d41ded7e7176b6d8d1c2911139 + languageName: node + linkType: hard + +"@babel/plugin-transform-destructuring@npm:^7.20.2": + version: 7.20.7 + resolution: "@babel/plugin-transform-destructuring@npm:7.20.7" + dependencies: + "@babel/helper-plugin-utils": ^7.20.2 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: bd8affdb142c77662037215e37128b2110a786c92a67e1f00b38223c438c1610bd84cbc0386e9cd3479245ea811c5ca6c9838f49be4729b592159a30ce79add2 + languageName: node + linkType: hard + +"@babel/plugin-transform-dotall-regex@npm:^7.18.6, @babel/plugin-transform-dotall-regex@npm:^7.4.4": + version: 7.18.6 + resolution: "@babel/plugin-transform-dotall-regex@npm:7.18.6" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.18.6 + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: cbe5d7063eb8f8cca24cd4827bc97f5641166509e58781a5f8aa47fb3d2d786ce4506a30fca2e01f61f18792783a5cb5d96bf5434c3dd1ad0de8c9cc625a53da + languageName: node + linkType: hard + +"@babel/plugin-transform-duplicate-keys@npm:^7.18.9": + version: 7.18.9 + resolution: "@babel/plugin-transform-duplicate-keys@npm:7.18.9" + dependencies: + "@babel/helper-plugin-utils": ^7.18.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 220bf4a9fec5c4d4a7b1de38810350260e8ea08481bf78332a464a21256a95f0df8cd56025f346238f09b04f8e86d4158fafc9f4af57abaef31637e3b58bd4fe + languageName: node + linkType: hard + +"@babel/plugin-transform-exponentiation-operator@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.18.6" + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor": ^7.18.6 + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7f70222f6829c82a36005508d34ddbe6fd0974ae190683a8670dd6ff08669aaf51fef2209d7403f9bd543cb2d12b18458016c99a6ed0332ccedb3ea127b01229 + languageName: node + linkType: hard + +"@babel/plugin-transform-for-of@npm:^7.18.8": + version: 7.18.8 + resolution: "@babel/plugin-transform-for-of@npm:7.18.8" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ca64c623cf0c7a80ab6f07ebd3e6e4ade95e2ae806696f70b43eafe6394fa8ce21f2b1ffdd15df2067f7363d2ecfe26472a97c6c774403d2163fa05f50c98f17 + languageName: node + linkType: hard + +"@babel/plugin-transform-function-name@npm:^7.18.9": + version: 7.18.9 + resolution: "@babel/plugin-transform-function-name@npm:7.18.9" + dependencies: + "@babel/helper-compilation-targets": ^7.18.9 + "@babel/helper-function-name": ^7.18.9 + "@babel/helper-plugin-utils": ^7.18.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 62dd9c6cdc9714704efe15545e782ee52d74dc73916bf954b4d3bee088fb0ec9e3c8f52e751252433656c09f744b27b757fc06ed99bcde28e8a21600a1d8e597 + languageName: node + linkType: hard + +"@babel/plugin-transform-literals@npm:^7.18.9": + version: 7.18.9 + resolution: "@babel/plugin-transform-literals@npm:7.18.9" + dependencies: + "@babel/helper-plugin-utils": ^7.18.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 3458dd2f1a47ac51d9d607aa18f3d321cbfa8560a985199185bed5a906bb0c61ba85575d386460bac9aed43fdd98940041fae5a67dff286f6f967707cff489f8 + languageName: node + linkType: hard + +"@babel/plugin-transform-member-expression-literals@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-member-expression-literals@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 35a3d04f6693bc6b298c05453d85ee6e41cc806538acb6928427e0e97ae06059f97d2f07d21495fcf5f70d3c13a242e2ecbd09d5c1fcb1b1a73ff528dcb0b695 + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-amd@npm:^7.19.6": + version: 7.20.11 + resolution: "@babel/plugin-transform-modules-amd@npm:7.20.11" + dependencies: + "@babel/helper-module-transforms": ^7.20.11 + "@babel/helper-plugin-utils": ^7.20.2 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 23665c1c20c8f11c89382b588fb9651c0756d130737a7625baeaadbd3b973bc5bfba1303bedffa8fb99db1e6d848afb01016e1df2b69b18303e946890c790001 + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-commonjs@npm:^7.19.6": + version: 7.20.11 + resolution: "@babel/plugin-transform-modules-commonjs@npm:7.20.11" + dependencies: + "@babel/helper-module-transforms": ^7.20.11 + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/helper-simple-access": ^7.20.2 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ddd0623e2ad4b5c0faaa0ae30d3407a3fa484d911c968ed33cfb1b339ac3691321c959db60b66dc136dbd67770fff586f7e48a7ce0d7d357f92d6ef6fb7ed1a7 + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-systemjs@npm:^7.19.6": + version: 7.20.11 + resolution: "@babel/plugin-transform-modules-systemjs@npm:7.20.11" + dependencies: + "@babel/helper-hoist-variables": ^7.18.6 + "@babel/helper-module-transforms": ^7.20.11 + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/helper-validator-identifier": ^7.19.1 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 4546c47587f88156d66c7eb7808e903cf4bb3f6ba6ac9bc8e3af2e29e92eb9f0b3f44d52043bfd24eb25fa7827fd7b6c8bfeac0cac7584e019b87e1ecbd0e673 + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-umd@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-modules-umd@npm:7.18.6" + dependencies: + "@babel/helper-module-transforms": ^7.18.6 + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c3b6796c6f4579f1ba5ab0cdcc73910c1e9c8e1e773c507c8bb4da33072b3ae5df73c6d68f9126dab6e99c24ea8571e1563f8710d7c421fac1cde1e434c20153 + languageName: node + linkType: hard + +"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.19.1": + version: 7.20.5 + resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.20.5" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.20.5 + "@babel/helper-plugin-utils": ^7.20.2 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 528c95fb1087e212f17e1c6456df041b28a83c772b9c93d2e407c9d03b72182b0d9d126770c1d6e0b23aab052599ceaf25ed6a2c0627f4249be34a83f6fae853 + languageName: node + linkType: hard + +"@babel/plugin-transform-new-target@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-new-target@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: bd780e14f46af55d0ae8503b3cb81ca86dcc73ed782f177e74f498fff934754f9e9911df1f8f3bd123777eed7c1c1af4d66abab87c8daae5403e7719a6b845d1 + languageName: node + linkType: hard + +"@babel/plugin-transform-object-super@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-object-super@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + "@babel/helper-replace-supers": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0fcb04e15deea96ae047c21cb403607d49f06b23b4589055993365ebd7a7d7541334f06bf9642e90075e66efce6ebaf1eb0ef066fbbab802d21d714f1aac3aef + languageName: node + linkType: hard + +"@babel/plugin-transform-parameters@npm:^7.20.1, @babel/plugin-transform-parameters@npm:^7.20.7": + version: 7.20.7 + resolution: "@babel/plugin-transform-parameters@npm:7.20.7" + dependencies: + "@babel/helper-plugin-utils": ^7.20.2 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 6ffe0dd9afb2d2b9bc247381aa2e95dd9997ff5568a0a11900528919a4e073ac68f46409431455badb8809644d47cff180045bc2b9700e3f36e3b23554978947 + languageName: node + linkType: hard + +"@babel/plugin-transform-property-literals@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-property-literals@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 1c16e64de554703f4b547541de2edda6c01346dd3031d4d29e881aa7733785cd26d53611a4ccf5353f4d3e69097bb0111c0a93ace9e683edd94fea28c4484144 + languageName: node + linkType: hard + +"@babel/plugin-transform-regenerator@npm:^7.18.6": + version: 7.20.5 + resolution: "@babel/plugin-transform-regenerator@npm:7.20.5" + dependencies: + "@babel/helper-plugin-utils": ^7.20.2 + regenerator-transform: ^0.15.1 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 13164861e71fb23d84c6270ef5330b03c54d5d661c2c7468f28e21c4f8598558ca0c8c3cb1d996219352946e849d270a61372bc93c8fbe9676e78e3ffd0dea07 + languageName: node + linkType: hard + +"@babel/plugin-transform-reserved-words@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-reserved-words@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0738cdc30abdae07c8ec4b233b30c31f68b3ff0eaa40eddb45ae607c066127f5fa99ddad3c0177d8e2832e3a7d3ad115775c62b431ebd6189c40a951b867a80c + languageName: node + linkType: hard + +"@babel/plugin-transform-shorthand-properties@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-shorthand-properties@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b8e4e8acc2700d1e0d7d5dbfd4fdfb935651913de6be36e6afb7e739d8f9ca539a5150075a0f9b79c88be25ddf45abb912fe7abf525f0b80f5b9d9860de685d7 + languageName: node + linkType: hard + +"@babel/plugin-transform-spread@npm:^7.19.0": + version: 7.20.7 + resolution: "@babel/plugin-transform-spread@npm:7.20.7" + dependencies: + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/helper-skip-transparent-expression-wrappers": ^7.20.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8ea698a12da15718aac7489d4cde10beb8a3eea1f66167d11ab1e625033641e8b328157fd1a0b55dd6531933a160c01fc2e2e61132a385cece05f26429fd0cc2 + languageName: node + linkType: hard + +"@babel/plugin-transform-sticky-regex@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-sticky-regex@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 68ea18884ae9723443ffa975eb736c8c0d751265859cd3955691253f7fee37d7a0f7efea96c8a062876af49a257a18ea0ed5fea0d95a7b3611ce40f7ee23aee3 + languageName: node + linkType: hard + +"@babel/plugin-transform-template-literals@npm:^7.18.9": + version: 7.18.9 + resolution: "@babel/plugin-transform-template-literals@npm:7.18.9" + dependencies: + "@babel/helper-plugin-utils": ^7.18.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 3d2fcd79b7c345917f69b92a85bdc3ddd68ce2c87dc70c7d61a8373546ccd1f5cb8adc8540b49dfba08e1b82bb7b3bbe23a19efdb2b9c994db2db42906ca9fb2 + languageName: node + linkType: hard + +"@babel/plugin-transform-typeof-symbol@npm:^7.18.9": + version: 7.18.9 + resolution: "@babel/plugin-transform-typeof-symbol@npm:7.18.9" + dependencies: + "@babel/helper-plugin-utils": ^7.18.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e754e0d8b8a028c52e10c148088606e3f7a9942c57bd648fc0438e5b4868db73c386a5ed47ab6d6f0594aae29ee5ffc2ffc0f7ebee7fae560a066d6dea811cd4 + languageName: node + linkType: hard + +"@babel/plugin-transform-typescript@npm:^7.18.6": + version: 7.20.13 + resolution: "@babel/plugin-transform-typescript@npm:7.20.13" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.20.12 + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/plugin-syntax-typescript": ^7.20.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0b0c3a3e53268d4feb35eb17d57873f2488392e404a0b32735d51c49b08462dc738ebd860f0ff3a3dc5cd1b1fa70340bb6c072239c86afca635831b930593b3b + languageName: node + linkType: hard + +"@babel/plugin-transform-unicode-escapes@npm:^7.18.10": + version: 7.18.10 + resolution: "@babel/plugin-transform-unicode-escapes@npm:7.18.10" + dependencies: + "@babel/helper-plugin-utils": ^7.18.9 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f5baca55cb3c11bc08ec589f5f522d85c1ab509b4d11492437e45027d64ae0b22f0907bd1381e8d7f2a436384bb1f9ad89d19277314242c5c2671a0f91d0f9cd + languageName: node + linkType: hard + +"@babel/plugin-transform-unicode-regex@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-transform-unicode-regex@npm:7.18.6" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.18.6 + "@babel/helper-plugin-utils": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: d9e18d57536a2d317fb0b7c04f8f55347f3cfacb75e636b4c6fa2080ab13a3542771b5120e726b598b815891fc606d1472ac02b749c69fd527b03847f22dc25e + languageName: node + linkType: hard + +"@babel/preset-env@npm:^7.0.0": + version: 7.20.2 + resolution: "@babel/preset-env@npm:7.20.2" + dependencies: + "@babel/compat-data": ^7.20.1 + "@babel/helper-compilation-targets": ^7.20.0 + "@babel/helper-plugin-utils": ^7.20.2 + "@babel/helper-validator-option": ^7.18.6 + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": ^7.18.6 + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.18.9 + "@babel/plugin-proposal-async-generator-functions": ^7.20.1 + "@babel/plugin-proposal-class-properties": ^7.18.6 + "@babel/plugin-proposal-class-static-block": ^7.18.6 + "@babel/plugin-proposal-dynamic-import": ^7.18.6 + "@babel/plugin-proposal-export-namespace-from": ^7.18.9 + "@babel/plugin-proposal-json-strings": ^7.18.6 + "@babel/plugin-proposal-logical-assignment-operators": ^7.18.9 + "@babel/plugin-proposal-nullish-coalescing-operator": ^7.18.6 + "@babel/plugin-proposal-numeric-separator": ^7.18.6 + "@babel/plugin-proposal-object-rest-spread": ^7.20.2 + "@babel/plugin-proposal-optional-catch-binding": ^7.18.6 + "@babel/plugin-proposal-optional-chaining": ^7.18.9 + "@babel/plugin-proposal-private-methods": ^7.18.6 + "@babel/plugin-proposal-private-property-in-object": ^7.18.6 + "@babel/plugin-proposal-unicode-property-regex": ^7.18.6 + "@babel/plugin-syntax-async-generators": ^7.8.4 + "@babel/plugin-syntax-class-properties": ^7.12.13 + "@babel/plugin-syntax-class-static-block": ^7.14.5 + "@babel/plugin-syntax-dynamic-import": ^7.8.3 + "@babel/plugin-syntax-export-namespace-from": ^7.8.3 + "@babel/plugin-syntax-import-assertions": ^7.20.0 + "@babel/plugin-syntax-json-strings": ^7.8.3 + "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 + "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 + "@babel/plugin-syntax-numeric-separator": ^7.10.4 + "@babel/plugin-syntax-object-rest-spread": ^7.8.3 + "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 + "@babel/plugin-syntax-optional-chaining": ^7.8.3 + "@babel/plugin-syntax-private-property-in-object": ^7.14.5 + "@babel/plugin-syntax-top-level-await": ^7.14.5 + "@babel/plugin-transform-arrow-functions": ^7.18.6 + "@babel/plugin-transform-async-to-generator": ^7.18.6 + "@babel/plugin-transform-block-scoped-functions": ^7.18.6 + "@babel/plugin-transform-block-scoping": ^7.20.2 + "@babel/plugin-transform-classes": ^7.20.2 + "@babel/plugin-transform-computed-properties": ^7.18.9 + "@babel/plugin-transform-destructuring": ^7.20.2 + "@babel/plugin-transform-dotall-regex": ^7.18.6 + "@babel/plugin-transform-duplicate-keys": ^7.18.9 + "@babel/plugin-transform-exponentiation-operator": ^7.18.6 + "@babel/plugin-transform-for-of": ^7.18.8 + "@babel/plugin-transform-function-name": ^7.18.9 + "@babel/plugin-transform-literals": ^7.18.9 + "@babel/plugin-transform-member-expression-literals": ^7.18.6 + "@babel/plugin-transform-modules-amd": ^7.19.6 + "@babel/plugin-transform-modules-commonjs": ^7.19.6 + "@babel/plugin-transform-modules-systemjs": ^7.19.6 + "@babel/plugin-transform-modules-umd": ^7.18.6 + "@babel/plugin-transform-named-capturing-groups-regex": ^7.19.1 + "@babel/plugin-transform-new-target": ^7.18.6 + "@babel/plugin-transform-object-super": ^7.18.6 + "@babel/plugin-transform-parameters": ^7.20.1 + "@babel/plugin-transform-property-literals": ^7.18.6 + "@babel/plugin-transform-regenerator": ^7.18.6 + "@babel/plugin-transform-reserved-words": ^7.18.6 + "@babel/plugin-transform-shorthand-properties": ^7.18.6 + "@babel/plugin-transform-spread": ^7.19.0 + "@babel/plugin-transform-sticky-regex": ^7.18.6 + "@babel/plugin-transform-template-literals": ^7.18.9 + "@babel/plugin-transform-typeof-symbol": ^7.18.9 + "@babel/plugin-transform-unicode-escapes": ^7.18.10 + "@babel/plugin-transform-unicode-regex": ^7.18.6 + "@babel/preset-modules": ^0.1.5 + "@babel/types": ^7.20.2 + babel-plugin-polyfill-corejs2: ^0.3.3 + babel-plugin-polyfill-corejs3: ^0.6.0 + babel-plugin-polyfill-regenerator: ^0.4.1 + core-js-compat: ^3.25.1 + semver: ^6.3.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ece2d7e9c7789db6116e962b8e1a55eb55c110c44c217f0c8f6ffea4ca234954e66557f7bd019b7affadf7fbb3a53ccc807e93fc935aacd48146234b73b6947e + languageName: node + linkType: hard + +"@babel/preset-modules@npm:^0.1.5": + version: 0.1.5 + resolution: "@babel/preset-modules@npm:0.1.5" + dependencies: + "@babel/helper-plugin-utils": ^7.0.0 + "@babel/plugin-proposal-unicode-property-regex": ^7.4.4 + "@babel/plugin-transform-dotall-regex": ^7.4.4 + "@babel/types": ^7.4.4 + esutils: ^2.0.2 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8430e0e9e9d520b53e22e8c4c6a5a080a12b63af6eabe559c2310b187bd62ae113f3da82ba33e9d1d0f3230930ca702843aae9dd226dec51f7d7114dc1f51c10 + languageName: node + linkType: hard + +"@babel/preset-typescript@npm:^7.0.0": + version: 7.18.6 + resolution: "@babel/preset-typescript@npm:7.18.6" + dependencies: + "@babel/helper-plugin-utils": ^7.18.6 + "@babel/helper-validator-option": ^7.18.6 + "@babel/plugin-transform-typescript": ^7.18.6 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7fe0da5103eb72d3cf39cf3e138a794c8cdd19c0b38e3e101507eef519c46a87a0d6d0e8bc9e28a13ea2364001ebe7430b9d75758aab4c3c3a8db9a487b9dc7c + languageName: node + linkType: hard + +"@babel/runtime@npm:^7.8.4": + version: 7.20.13 + resolution: "@babel/runtime@npm:7.20.13" + dependencies: + regenerator-runtime: ^0.13.11 + checksum: 09b7a97a05c80540db6c9e4ddf8c5d2ebb06cae5caf3a87e33c33f27f8c4d49d9c67a2d72f1570e796045288fad569f98a26ceba0c4f5fad2af84b6ad855c4fb + languageName: node + linkType: hard + +"@babel/template@npm:^7.18.10, @babel/template@npm:^7.20.7": + version: 7.20.7 + resolution: "@babel/template@npm:7.20.7" + dependencies: + "@babel/code-frame": ^7.18.6 + "@babel/parser": ^7.20.7 + "@babel/types": ^7.20.7 + checksum: 2eb1a0ab8d415078776bceb3473d07ab746e6bb4c2f6ca46ee70efb284d75c4a32bb0cd6f4f4946dec9711f9c0780e8e5d64b743208deac6f8e9858afadc349e + languageName: node + linkType: hard + +"@babel/traverse@npm:^7.20.10, @babel/traverse@npm:^7.20.5, @babel/traverse@npm:^7.20.7": + version: 7.20.13 + resolution: "@babel/traverse@npm:7.20.13" + dependencies: + "@babel/code-frame": ^7.18.6 + "@babel/generator": ^7.20.7 + "@babel/helper-environment-visitor": ^7.18.9 + "@babel/helper-function-name": ^7.19.0 + "@babel/helper-hoist-variables": ^7.18.6 + "@babel/helper-split-export-declaration": ^7.18.6 + "@babel/parser": ^7.20.13 + "@babel/types": ^7.20.7 + debug: ^4.1.0 + globals: ^11.1.0 + checksum: 30ca6e0bd18233fda48fa09315efd14dfc61dcf5b8fa3712b343bfc61b32bc63b5e85ea1773cc9576c9b293b96f46b4589aaeb0a52e1f3eeac4edc076d049fc7 + languageName: node + linkType: hard + +"@babel/types@npm:^7.18.6, @babel/types@npm:^7.18.9, @babel/types@npm:^7.19.0, @babel/types@npm:^7.20.0, @babel/types@npm:^7.20.2, @babel/types@npm:^7.20.5, @babel/types@npm:^7.20.7, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": + version: 7.20.7 + resolution: "@babel/types@npm:7.20.7" + dependencies: + "@babel/helper-string-parser": ^7.19.4 + "@babel/helper-validator-identifier": ^7.19.1 + to-fast-properties: ^2.0.0 + checksum: b39af241f0b72bba67fd6d0d23914f6faec8c0eba8015c181cbd5ea92e59fc91a52a1ab490d3520c7dbd19ddb9ebb76c476308f6388764f16d8201e37fae6811 + languageName: node + linkType: hard + +"@jest/test-result@link:../../../packages/jest-test-result::locator=root-workspace-0b6124%40workspace%3A.": + version: 0.0.0-use.local + resolution: "@jest/test-result@link:../../../packages/jest-test-result::locator=root-workspace-0b6124%40workspace%3A." + languageName: node + linkType: soft + +"@jridgewell/gen-mapping@npm:^0.3.2": + version: 0.3.2 + resolution: "@jridgewell/gen-mapping@npm:0.3.2" + dependencies: + "@jridgewell/set-array": ^1.0.1 + "@jridgewell/sourcemap-codec": ^1.4.10 + "@jridgewell/trace-mapping": ^0.3.9 + checksum: 1832707a1c476afebe4d0fbbd4b9434fdb51a4c3e009ab1e9938648e21b7a97049fa6009393bdf05cab7504108413441df26d8a3c12193996e65493a4efb6882 + languageName: node + linkType: hard + +"@jridgewell/resolve-uri@npm:3.1.0": + version: 3.1.0 + resolution: "@jridgewell/resolve-uri@npm:3.1.0" + checksum: b5ceaaf9a110fcb2780d1d8f8d4a0bfd216702f31c988d8042e5f8fbe353c55d9b0f55a1733afdc64806f8e79c485d2464680ac48a0d9fcadb9548ee6b81d267 + languageName: node + linkType: hard + +"@jridgewell/set-array@npm:^1.0.1": + version: 1.1.2 + resolution: "@jridgewell/set-array@npm:1.1.2" + checksum: 69a84d5980385f396ff60a175f7177af0b8da4ddb81824cb7016a9ef914eee9806c72b6b65942003c63f7983d4f39a5c6c27185bbca88eb4690b62075602e28e + languageName: node + linkType: hard + +"@jridgewell/sourcemap-codec@npm:1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.10": + version: 1.4.14 + resolution: "@jridgewell/sourcemap-codec@npm:1.4.14" + checksum: 61100637b6d173d3ba786a5dff019e1a74b1f394f323c1fee337ff390239f053b87266c7a948777f4b1ee68c01a8ad0ab61e5ff4abb5a012a0b091bec391ab97 + languageName: node + linkType: hard + +"@jridgewell/trace-mapping@npm:^0.3.9": + version: 0.3.17 + resolution: "@jridgewell/trace-mapping@npm:0.3.17" + dependencies: + "@jridgewell/resolve-uri": 3.1.0 + "@jridgewell/sourcemap-codec": 1.4.14 + checksum: 9d703b859cff5cd83b7308fd457a431387db5db96bd781a63bf48e183418dd9d3d44e76b9e4ae13237f6abeeb25d739ec9215c1d5bfdd08f66f750a50074a339 + languageName: node + linkType: hard + +"ansi-styles@npm:^3.2.1": + version: 3.2.1 + resolution: "ansi-styles@npm:3.2.1" + dependencies: + color-convert: ^1.9.0 + checksum: d85ade01c10e5dd77b6c89f34ed7531da5830d2cb5882c645f330079975b716438cd7ebb81d0d6e6b4f9c577f19ae41ab55f07f19786b02f9dfd9e0377395665 + languageName: node + linkType: hard + +"babel-plugin-polyfill-corejs2@npm:^0.3.3": + version: 0.3.3 + resolution: "babel-plugin-polyfill-corejs2@npm:0.3.3" + dependencies: + "@babel/compat-data": ^7.17.7 + "@babel/helper-define-polyfill-provider": ^0.3.3 + semver: ^6.1.1 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7db3044993f3dddb3cc3d407bc82e640964a3bfe22de05d90e1f8f7a5cb71460011ab136d3c03c6c1ba428359ebf635688cd6205e28d0469bba221985f5c6179 + languageName: node + linkType: hard + +"babel-plugin-polyfill-corejs3@npm:^0.6.0": + version: 0.6.0 + resolution: "babel-plugin-polyfill-corejs3@npm:0.6.0" + dependencies: + "@babel/helper-define-polyfill-provider": ^0.3.3 + core-js-compat: ^3.25.1 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 470bb8c59f7c0912bd77fe1b5a2e72f349b3f65bbdee1d60d6eb7e1f4a085c6f24b2dd5ab4ac6c2df6444a96b070ef6790eccc9edb6a2668c60d33133bfb62c6 + languageName: node + linkType: hard + +"babel-plugin-polyfill-regenerator@npm:^0.4.1": + version: 0.4.1 + resolution: "babel-plugin-polyfill-regenerator@npm:0.4.1" + dependencies: + "@babel/helper-define-polyfill-provider": ^0.3.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ab0355efbad17d29492503230387679dfb780b63b25408990d2e4cf421012dae61d6199ddc309f4d2409ce4e9d3002d187702700dd8f4f8770ebbba651ed066c + languageName: node + linkType: hard + +"browserslist@npm:^4.21.3, browserslist@npm:^4.21.4": + version: 4.21.4 + resolution: "browserslist@npm:4.21.4" + dependencies: + caniuse-lite: ^1.0.30001400 + electron-to-chromium: ^1.4.251 + node-releases: ^2.0.6 + update-browserslist-db: ^1.0.9 + bin: + browserslist: cli.js + checksum: 4af3793704dbb4615bcd29059ab472344dc7961c8680aa6c4bb84f05340e14038d06a5aead58724eae69455b8fade8b8c69f1638016e87e5578969d74c078b79 + languageName: node + linkType: hard + +"caniuse-lite@npm:^1.0.30001400": + version: 1.0.30001449 + resolution: "caniuse-lite@npm:1.0.30001449" + checksum: f1b395f0a5495c1931c53f58441e0db79b8b0f8ef72bb6d241d13c49b05827630efe6793d540610e0a014d8fdda330dd42f981c82951bd4bdcf635480e1a0102 + languageName: node + linkType: hard + +"chalk@npm:^2.0.0": + version: 2.4.2 + resolution: "chalk@npm:2.4.2" + dependencies: + ansi-styles: ^3.2.1 + escape-string-regexp: ^1.0.5 + supports-color: ^5.3.0 + checksum: ec3661d38fe77f681200f878edbd9448821924e0f93a9cefc0e26a33b145f1027a2084bf19967160d11e1f03bfe4eaffcabf5493b89098b2782c3fe0b03d80c2 + languageName: node + linkType: hard + +"color-convert@npm:^1.9.0": + version: 1.9.3 + resolution: "color-convert@npm:1.9.3" + dependencies: + color-name: 1.1.3 + checksum: fd7a64a17cde98fb923b1dd05c5f2e6f7aefda1b60d67e8d449f9328b4e53b228a428fd38bfeaeb2db2ff6b6503a776a996150b80cdf224062af08a5c8a3a203 + languageName: node + linkType: hard + +"color-name@npm:1.1.3": + version: 1.1.3 + resolution: "color-name@npm:1.1.3" + checksum: 09c5d3e33d2105850153b14466501f2bfb30324a2f76568a408763a3b7433b0e50e5b4ab1947868e65cb101bb7cb75029553f2c333b6d4b8138a73fcc133d69d + languageName: node + linkType: hard + +"core-js-compat@npm:^3.25.1": + version: 3.27.2 + resolution: "core-js-compat@npm:3.27.2" + dependencies: + browserslist: ^4.21.4 + checksum: 4574d4507de8cba9a75e37401b3ca6e5908ab066ec717e3b34866d25f623e1aa614fb886e10973be64a6250f325dcba6809e4fae4ed43375cc3e4276c5514c13 + languageName: node + linkType: hard + +"debug@npm:^4.1.0, debug@npm:^4.1.1": + version: 4.3.4 + resolution: "debug@npm:4.3.4" + dependencies: + ms: 2.1.2 + peerDependenciesMeta: + supports-color: + optional: true + checksum: 3dbad3f94ea64f34431a9cbf0bafb61853eda57bff2880036153438f50fb5a84f27683ba0d8e5426bf41a8c6ff03879488120cf5b3a761e77953169c0600a708 + languageName: node + linkType: hard + +"electron-to-chromium@npm:^1.4.251": + version: 1.4.284 + resolution: "electron-to-chromium@npm:1.4.284" + checksum: be496e9dca6509dbdbb54dc32146fc99f8eb716d28a7ee8ccd3eba0066561df36fc51418d8bd7cf5a5891810bf56c0def3418e74248f51ea4a843d423603d10a + languageName: node + linkType: hard + +"escalade@npm:^3.1.1": + version: 3.1.1 + resolution: "escalade@npm:3.1.1" + checksum: a3e2a99f07acb74b3ad4989c48ca0c3140f69f923e56d0cba0526240ee470b91010f9d39001f2a4a313841d237ede70a729e92125191ba5d21e74b106800b133 + languageName: node + linkType: hard + +"escape-string-regexp@npm:^1.0.5": + version: 1.0.5 + resolution: "escape-string-regexp@npm:1.0.5" + checksum: 6092fda75c63b110c706b6a9bfde8a612ad595b628f0bd2147eea1d3406723020810e591effc7db1da91d80a71a737a313567c5abb3813e8d9c71f4aa595b410 + languageName: node + linkType: hard + +"esutils@npm:^2.0.2": + version: 2.0.3 + resolution: "esutils@npm:2.0.3" + checksum: 22b5b08f74737379a840b8ed2036a5fb35826c709ab000683b092d9054e5c2a82c27818f12604bfc2a9a76b90b6834ef081edbc1c7ae30d1627012e067c6ec87 + languageName: node + linkType: hard + +"function-bind@npm:^1.1.1": + version: 1.1.1 + resolution: "function-bind@npm:1.1.1" + checksum: b32fbaebb3f8ec4969f033073b43f5c8befbb58f1a79e12f1d7490358150359ebd92f49e72ff0144f65f2c48ea2a605bff2d07965f548f6474fd8efd95bf361a + languageName: node + linkType: hard + +"globals@npm:^11.1.0": + version: 11.12.0 + resolution: "globals@npm:11.12.0" + checksum: 67051a45eca3db904aee189dfc7cd53c20c7d881679c93f6146ddd4c9f4ab2268e68a919df740d39c71f4445d2b38ee360fc234428baea1dbdfe68bbcb46979e + languageName: node + linkType: hard + +"has-flag@npm:^3.0.0": + version: 3.0.0 + resolution: "has-flag@npm:3.0.0" + checksum: 4a15638b454bf086c8148979aae044dd6e39d63904cd452d970374fa6a87623423da485dfb814e7be882e05c096a7ccf1ebd48e7e7501d0208d8384ff4dea73b + languageName: node + linkType: hard + +"has@npm:^1.0.3": + version: 1.0.3 + resolution: "has@npm:1.0.3" + dependencies: + function-bind: ^1.1.1 + checksum: b9ad53d53be4af90ce5d1c38331e712522417d017d5ef1ebd0507e07c2fbad8686fffb8e12ddecd4c39ca9b9b47431afbb975b8abf7f3c3b82c98e9aad052792 + languageName: node + linkType: hard + +"is-core-module@npm:^2.9.0": + version: 2.11.0 + resolution: "is-core-module@npm:2.11.0" + dependencies: + has: ^1.0.3 + checksum: f96fd490c6b48eb4f6d10ba815c6ef13f410b0ba6f7eb8577af51697de523e5f2cd9de1c441b51d27251bf0e4aebc936545e33a5d26d5d51f28d25698d4a8bab + languageName: node + linkType: hard + +"js-tokens@npm:^4.0.0": + version: 4.0.0 + resolution: "js-tokens@npm:4.0.0" + checksum: 8a95213a5a77deb6cbe94d86340e8d9ace2b93bc367790b260101d2f36a2eaf4e4e22d9fa9cf459b38af3a32fb4190e638024cf82ec95ef708680e405ea7cc78 + languageName: node + linkType: hard + +"jsesc@npm:^2.5.1": + version: 2.5.2 + resolution: "jsesc@npm:2.5.2" + bin: + jsesc: bin/jsesc + checksum: 4dc190771129e12023f729ce20e1e0bfceac84d73a85bc3119f7f938843fe25a4aeccb54b6494dce26fcf263d815f5f31acdefac7cc9329efb8422a4f4d9fa9d + languageName: node + linkType: hard + +"jsesc@npm:~0.5.0": + version: 0.5.0 + resolution: "jsesc@npm:0.5.0" + bin: + jsesc: bin/jsesc + checksum: b8b44cbfc92f198ad972fba706ee6a1dfa7485321ee8c0b25f5cedd538dcb20cde3197de16a7265430fce8277a12db066219369e3d51055038946039f6e20e17 + languageName: node + linkType: hard + +"lodash.debounce@npm:^4.0.8": + version: 4.0.8 + resolution: "lodash.debounce@npm:4.0.8" + checksum: a3f527d22c548f43ae31c861ada88b2637eb48ac6aa3eb56e82d44917971b8aa96fbb37aa60efea674dc4ee8c42074f90f7b1f772e9db375435f6c83a19b3bc6 + languageName: node + linkType: hard + +"lru-cache@npm:^5.1.1": + version: 5.1.1 + resolution: "lru-cache@npm:5.1.1" + dependencies: + yallist: ^3.0.2 + checksum: c154ae1cbb0c2206d1501a0e94df349653c92c8cbb25236d7e85190bcaf4567a03ac6eb43166fabfa36fd35623694da7233e88d9601fbf411a9a481d85dbd2cb + languageName: node + linkType: hard + +"ms@npm:2.1.2": + version: 2.1.2 + resolution: "ms@npm:2.1.2" + checksum: 673cdb2c3133eb050c745908d8ce632ed2c02d85640e2edb3ace856a2266a813b30c613569bf3354fdf4ea7d1a1494add3bfa95e2713baa27d0c2c71fc44f58f + languageName: node + linkType: hard + +"node-releases@npm:^2.0.6": + version: 2.0.8 + resolution: "node-releases@npm:2.0.8" + checksum: b1ab02c0d5d8e081bf9537232777a7a787dc8fef07f70feabe70a344599b220fe16462f746ac30f3eed5a58549445ad69368964d12a1f8b3b764f6caab7ba34a + languageName: node + linkType: hard + +"path-parse@npm:^1.0.7": + version: 1.0.7 + resolution: "path-parse@npm:1.0.7" + checksum: 49abf3d81115642938a8700ec580da6e830dde670be21893c62f4e10bd7dd4c3742ddc603fe24f898cba7eb0c6bc1777f8d9ac14185d34540c6d4d80cd9cae8a + languageName: node + linkType: hard + +"picocolors@npm:^1.0.0": + version: 1.0.0 + resolution: "picocolors@npm:1.0.0" + checksum: a2e8092dd86c8396bdba9f2b5481032848525b3dc295ce9b57896f931e63fc16f79805144321f72976383fc249584672a75cc18d6777c6b757603f372f745981 + languageName: node + linkType: hard + +"regenerate-unicode-properties@npm:^10.1.0": + version: 10.1.0 + resolution: "regenerate-unicode-properties@npm:10.1.0" + dependencies: + regenerate: ^1.4.2 + checksum: b1a8929588433ab8b9dc1a34cf3665b3b472f79f2af6ceae00d905fc496b332b9af09c6718fb28c730918f19a00dc1d7310adbaa9b72a2ec7ad2f435da8ace17 + languageName: node + linkType: hard + +"regenerate@npm:^1.4.2": + version: 1.4.2 + resolution: "regenerate@npm:1.4.2" + checksum: 3317a09b2f802da8db09aa276e469b57a6c0dd818347e05b8862959c6193408242f150db5de83c12c3fa99091ad95fb42a6db2c3329bfaa12a0ea4cbbeb30cb0 + languageName: node + linkType: hard + +"regenerator-runtime@npm:^0.13.11": + version: 0.13.11 + resolution: "regenerator-runtime@npm:0.13.11" + checksum: 27481628d22a1c4e3ff551096a683b424242a216fee44685467307f14d58020af1e19660bf2e26064de946bad7eff28950eae9f8209d55723e2d9351e632bbb4 + languageName: node + linkType: hard + +"regenerator-transform@npm:^0.15.1": + version: 0.15.1 + resolution: "regenerator-transform@npm:0.15.1" + dependencies: + "@babel/runtime": ^7.8.4 + checksum: 2d15bdeadbbfb1d12c93f5775493d85874dbe1d405bec323da5c61ec6e701bc9eea36167483e1a5e752de9b2df59ab9a2dfff6bf3784f2b28af2279a673d29a4 + languageName: node + linkType: hard + +"regexpu-core@npm:^5.2.1": + version: 5.2.2 + resolution: "regexpu-core@npm:5.2.2" + dependencies: + regenerate: ^1.4.2 + regenerate-unicode-properties: ^10.1.0 + regjsgen: ^0.7.1 + regjsparser: ^0.9.1 + unicode-match-property-ecmascript: ^2.0.0 + unicode-match-property-value-ecmascript: ^2.1.0 + checksum: 87c56815e20d213848d38f6b047ba52f0d632f36e791b777f59327e8d350c0743b27cc25feab64c0eadc9fe9959dde6b1261af71108a9371b72c8c26beda05ef + languageName: node + linkType: hard + +"regjsgen@npm:^0.7.1": + version: 0.7.1 + resolution: "regjsgen@npm:0.7.1" + checksum: 7cac399921c58db8e16454869283ff66871531180218064fa938ac05c11c2976792a00706c3c78bbc625e1d793ca373065ea90564e06189a751a7b4ae33acadc + languageName: node + linkType: hard + +"regjsparser@npm:^0.9.1": + version: 0.9.1 + resolution: "regjsparser@npm:0.9.1" + dependencies: + jsesc: ~0.5.0 + bin: + regjsparser: bin/parser + checksum: 5e1b76afe8f1d03c3beaf9e0d935dd467589c3625f6d65fb8ffa14f224d783a0fed4bf49c2c1b8211043ef92b6117313419edf055a098ed8342e340586741afc + languageName: node + linkType: hard + +"resolve@npm:^1.14.2": + version: 1.22.1 + resolution: "resolve@npm:1.22.1" + dependencies: + is-core-module: ^2.9.0 + path-parse: ^1.0.7 + supports-preserve-symlinks-flag: ^1.0.0 + bin: + resolve: bin/resolve + checksum: 07af5fc1e81aa1d866cbc9e9460fbb67318a10fa3c4deadc35c3ad8a898ee9a71a86a65e4755ac3195e0ea0cfbe201eb323ebe655ce90526fd61917313a34e4e + languageName: node + linkType: hard + +"resolve@patch:resolve@^1.14.2#~builtin": + version: 1.22.1 + resolution: "resolve@patch:resolve@npm%3A1.22.1#~builtin::version=1.22.1&hash=c3c19d" + dependencies: + is-core-module: ^2.9.0 + path-parse: ^1.0.7 + supports-preserve-symlinks-flag: ^1.0.0 + bin: + resolve: bin/resolve + checksum: 5656f4d0bedcf8eb52685c1abdf8fbe73a1603bb1160a24d716e27a57f6cecbe2432ff9c89c2bd57542c3a7b9d14b1882b73bfe2e9d7849c9a4c0b8b39f02b8b + languageName: node + linkType: hard + +"root-workspace-0b6124@workspace:.": + version: 0.0.0-use.local + resolution: "root-workspace-0b6124@workspace:." + dependencies: + "@babel/preset-env": ^7.0.0 + "@babel/preset-typescript": ^7.0.0 + "@jest/test-result": "link:../../../packages/jest-test-result" + languageName: unknown + linkType: soft + +"semver@npm:^6.1.1, semver@npm:^6.1.2, semver@npm:^6.3.0": + version: 6.3.0 + resolution: "semver@npm:6.3.0" + bin: + semver: ./bin/semver.js + checksum: 1b26ecf6db9e8292dd90df4e781d91875c0dcc1b1909e70f5d12959a23c7eebb8f01ea581c00783bbee72ceeaad9505797c381756326073850dc36ed284b21b9 + languageName: node + linkType: hard + +"supports-color@npm:^5.3.0": + version: 5.5.0 + resolution: "supports-color@npm:5.5.0" + dependencies: + has-flag: ^3.0.0 + checksum: 95f6f4ba5afdf92f495b5a912d4abee8dcba766ae719b975c56c084f5004845f6f5a5f7769f52d53f40e21952a6d87411bafe34af4a01e65f9926002e38e1dac + languageName: node + linkType: hard + +"supports-preserve-symlinks-flag@npm:^1.0.0": + version: 1.0.0 + resolution: "supports-preserve-symlinks-flag@npm:1.0.0" + checksum: 53b1e247e68e05db7b3808b99b892bd36fb096e6fba213a06da7fab22045e97597db425c724f2bbd6c99a3c295e1e73f3e4de78592289f38431049e1277ca0ae + languageName: node + linkType: hard + +"to-fast-properties@npm:^2.0.0": + version: 2.0.0 + resolution: "to-fast-properties@npm:2.0.0" + checksum: be2de62fe58ead94e3e592680052683b1ec986c72d589e7b21e5697f8744cdbf48c266fa72f6c15932894c10187b5f54573a3bcf7da0bfd964d5caf23d436168 + languageName: node + linkType: hard + +"unicode-canonical-property-names-ecmascript@npm:^2.0.0": + version: 2.0.0 + resolution: "unicode-canonical-property-names-ecmascript@npm:2.0.0" + checksum: 39be078afd014c14dcd957a7a46a60061bc37c4508ba146517f85f60361acf4c7539552645ece25de840e17e293baa5556268d091ca6762747fdd0c705001a45 + languageName: node + linkType: hard + +"unicode-match-property-ecmascript@npm:^2.0.0": + version: 2.0.0 + resolution: "unicode-match-property-ecmascript@npm:2.0.0" + dependencies: + unicode-canonical-property-names-ecmascript: ^2.0.0 + unicode-property-aliases-ecmascript: ^2.0.0 + checksum: 1f34a7434a23df4885b5890ac36c5b2161a809887000be560f56ad4b11126d433c0c1c39baf1016bdabed4ec54829a6190ee37aa24919aa116dc1a5a8a62965a + languageName: node + linkType: hard + +"unicode-match-property-value-ecmascript@npm:^2.1.0": + version: 2.1.0 + resolution: "unicode-match-property-value-ecmascript@npm:2.1.0" + checksum: 8d6f5f586b9ce1ed0e84a37df6b42fdba1317a05b5df0c249962bd5da89528771e2d149837cad11aa26bcb84c35355cb9f58a10c3d41fa3b899181ece6c85220 + languageName: node + linkType: hard + +"unicode-property-aliases-ecmascript@npm:^2.0.0": + version: 2.1.0 + resolution: "unicode-property-aliases-ecmascript@npm:2.1.0" + checksum: 243524431893649b62cc674d877bd64ef292d6071dd2fd01ab4d5ad26efbc104ffcd064f93f8a06b7e4ec54c172bf03f6417921a0d8c3a9994161fe1f88f815b + languageName: node + linkType: hard + +"update-browserslist-db@npm:^1.0.9": + version: 1.0.10 + resolution: "update-browserslist-db@npm:1.0.10" + dependencies: + escalade: ^3.1.1 + picocolors: ^1.0.0 + peerDependencies: + browserslist: ">= 4.21.0" + bin: + browserslist-lint: cli.js + checksum: 12db73b4f63029ac407b153732e7cd69a1ea8206c9100b482b7d12859cd3cd0bc59c602d7ae31e652706189f1acb90d42c53ab24a5ba563ed13aebdddc5561a0 + languageName: node + linkType: hard + +"yallist@npm:^3.0.2": + version: 3.1.1 + resolution: "yallist@npm:3.1.1" + checksum: 48f7bb00dc19fc635a13a39fe547f527b10c9290e7b3e836b9a8f1ca04d4d342e85714416b3c2ab74949c9c66f9cebb0473e6bc353b79035356103b47641285d + languageName: node + linkType: hard diff --git a/e2e/tsconfig.json b/e2e/tsconfig.json index c3053b6da00f..dba558ebe941 100644 --- a/e2e/tsconfig.json +++ b/e2e/tsconfig.json @@ -3,5 +3,6 @@ "compilerOptions": { "rootDir": "./" }, - "include": ["./**/*"] + "include": ["./**/*"], + "references": [{"path": "../packages/test-utils"}] } diff --git a/examples/angular/package.json b/examples/angular/package.json index cb64e7476e6d..5c9fa12e7bfd 100644 --- a/examples/angular/package.json +++ b/examples/angular/package.json @@ -27,6 +27,7 @@ "babel-jest": "workspace:^", "babel-plugin-transform-typescript-metadata": "*", "jest": "workspace:^", + "jest-environment-jsdom": "workspace:^", "jest-zone-patch": "*" } } diff --git a/examples/jquery/package.json b/examples/jquery/package.json index c7808e236cae..7952a710b6c7 100644 --- a/examples/jquery/package.json +++ b/examples/jquery/package.json @@ -6,7 +6,8 @@ "@babel/core": "^7.11.6", "@babel/preset-env": "^7.1.0", "babel-jest": "workspace:^", - "jest": "workspace:^" + "jest": "workspace:^", + "jest-environment-jsdom": "workspace:^" }, "dependencies": { "jquery": "^3.2.1" diff --git a/examples/react-testing-library/package.json b/examples/react-testing-library/package.json index add96f0e461d..51cd90ed24cc 100644 --- a/examples/react-testing-library/package.json +++ b/examples/react-testing-library/package.json @@ -12,7 +12,8 @@ "@babel/preset-react": "^7.12.1", "@testing-library/react": "^13.4.0", "babel-jest": "workspace:^", - "jest": "workspace:^" + "jest": "workspace:^", + "jest-environment-jsdom": "workspace:^" }, "scripts": { "test": "jest" diff --git a/examples/react/package.json b/examples/react/package.json index b6edcbfcc6c5..1d9d615fcb0f 100644 --- a/examples/react/package.json +++ b/examples/react/package.json @@ -11,7 +11,8 @@ "@babel/preset-env": "^7.1.0", "@babel/preset-react": "^7.12.1", "babel-jest": "workspace:^", - "jest": "workspace:^" + "jest": "workspace:^", + "jest-environment-jsdom": "workspace:^" }, "scripts": { "test": "jest" diff --git a/examples/typescript/package.json b/examples/typescript/package.json index 18b1a3582142..9dbc0dac8306 100644 --- a/examples/typescript/package.json +++ b/examples/typescript/package.json @@ -14,7 +14,8 @@ "@babel/preset-typescript": "^7.0.0", "@jest/globals": "workspace:^", "babel-jest": "workspace:^", - "jest": "workspace:^" + "jest": "workspace:^", + "jest-environment-jsdom": "workspace:^" }, "scripts": { "test": "jest" diff --git a/lerna.json b/lerna.json index 06e8963b9d71..f42f355140ce 100644 --- a/lerna.json +++ b/lerna.json @@ -8,5 +8,5 @@ "syncWorkspaceLock": true } }, - "version": "29.4.1" + "version": "29.4.2" } diff --git a/package.json b/package.json index 987661ef2016..bf5568503c6e 100644 --- a/package.json +++ b/package.json @@ -26,6 +26,7 @@ "@typescript-eslint/parser": "^5.14.0", "ansi-regex": "^5.0.1", "ansi-styles": "^5.0.0", + "babel-jest": "workspace:^", "camelcase": "^6.2.0", "chalk": "^4.0.0", "chokidar": "^3.3.0", @@ -38,13 +39,12 @@ "eslint-plugin-import": "^2.6.0", "eslint-plugin-jest": "^27.1.0", "eslint-plugin-jsdoc": "^39.3.6", - "eslint-plugin-local": "^1.0.0", + "eslint-plugin-local": "link:./.eslintplugin", "eslint-plugin-markdown": "^3.0.0", "eslint-plugin-prettier": "^4.0.0", "execa": "^5.0.0", "find-process": "^1.4.1", "glob": "^8.0.0", - "globby": "^11.0.1", "graceful-fs": "^4.2.9", "isbinaryfile": "^5.0.0", "istanbul-lib-coverage": "^3.0.0", @@ -58,6 +58,7 @@ "jest-serializer-ansi-escapes": "^2.0.1", "jest-silent-reporter": "^0.5.0", "jest-snapshot": "workspace:^", + "jest-util": "workspace:^", "jest-watch-typeahead": "^2.2.0", "jquery": "^3.2.1", "js-yaml": "^4.1.0", @@ -68,7 +69,6 @@ "p-limit": "^3.1.0", "pkg-dir": "^5.0.0", "prettier": "^2.1.1", - "progress": "^2.0.0", "promise": "^8.0.2", "read-pkg": "^5.2.0", "resolve": "^1.20.0", @@ -89,6 +89,7 @@ "build:js": "node ./scripts/build.mjs", "build:ts": "node ./scripts/buildTs.mjs", "bundle:ts": "node ./scripts/bundleTs.mjs", + "check-changelog": "node ./scripts/checkChangelog.mjs", "check-copyright-headers": "node ./scripts/checkCopyrightHeaders.mjs", "clean-all": "yarn clean-e2e && yarn build-clean && rimraf './packages/*/node_modules' && rimraf './node_modules'", "clean-e2e": "node ./scripts/cleanE2e.mjs", diff --git a/packages/babel-jest/.npmignore b/packages/babel-jest/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/babel-jest/.npmignore +++ b/packages/babel-jest/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/babel-jest/package.json b/packages/babel-jest/package.json index 7ab741edc2ef..d2e0d67e99fb 100644 --- a/packages/babel-jest/package.json +++ b/packages/babel-jest/package.json @@ -1,7 +1,7 @@ { "name": "babel-jest", "description": "Jest plugin to use babel for transformation.", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/babel-jest/src/__tests__/tsconfig.json b/packages/babel-jest/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/babel-jest/src/__tests__/tsconfig.json +++ b/packages/babel-jest/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/babel-jest/tsconfig.json b/packages/babel-jest/tsconfig.json index a58a0880e8aa..3535b54c1d86 100644 --- a/packages/babel-jest/tsconfig.json +++ b/packages/babel-jest/tsconfig.json @@ -7,5 +7,5 @@ "include": ["./src/**/*"], "exclude": ["./**/__tests__/**/*"], // TODO: include `babel-preset-jest` if it's ever in TS even though we don't care about its types - "references": [{"path": "../jest-transform"}, {"path": "../test-utils"}] + "references": [{"path": "../jest-transform"}] } diff --git a/packages/babel-plugin-jest-hoist/.npmignore b/packages/babel-plugin-jest-hoist/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/babel-plugin-jest-hoist/.npmignore +++ b/packages/babel-plugin-jest-hoist/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/babel-plugin-jest-hoist/package.json b/packages/babel-plugin-jest-hoist/package.json index 4fb71346b04f..5b9212dc1d69 100644 --- a/packages/babel-plugin-jest-hoist/package.json +++ b/packages/babel-plugin-jest-hoist/package.json @@ -1,6 +1,6 @@ { "name": "babel-plugin-jest-hoist", - "version": "29.4.0", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/babel-preset-jest/.npmignore b/packages/babel-preset-jest/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/babel-preset-jest/.npmignore +++ b/packages/babel-preset-jest/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/babel-preset-jest/package.json b/packages/babel-preset-jest/package.json index dbc1ea17d90a..21a76b86d97b 100644 --- a/packages/babel-preset-jest/package.json +++ b/packages/babel-preset-jest/package.json @@ -1,6 +1,6 @@ { "name": "babel-preset-jest", - "version": "29.4.0", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/diff-sequences/.npmignore b/packages/diff-sequences/.npmignore index 8dda7de8f4fe..d6ae93cfed1f 100644 --- a/packages/diff-sequences/.npmignore +++ b/packages/diff-sequences/.npmignore @@ -6,3 +6,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/diff-sequences/package.json b/packages/diff-sequences/package.json index 85838f881f43..efb62bf7f095 100644 --- a/packages/diff-sequences/package.json +++ b/packages/diff-sequences/package.json @@ -1,6 +1,6 @@ { "name": "diff-sequences", - "version": "29.3.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/expect-utils/.npmignore b/packages/expect-utils/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/expect-utils/.npmignore +++ b/packages/expect-utils/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/expect-utils/package.json b/packages/expect-utils/package.json index a8c988fc147a..55b944e48c45 100644 --- a/packages/expect-utils/package.json +++ b/packages/expect-utils/package.json @@ -1,6 +1,6 @@ { "name": "@jest/expect-utils", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/expect/.npmignore b/packages/expect/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/expect/.npmignore +++ b/packages/expect/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/expect/__typetests__/expect.test.ts b/packages/expect/__typetests__/expect.test.ts index b9e32400f54f..db233cb4e135 100644 --- a/packages/expect/__typetests__/expect.test.ts +++ b/packages/expect/__typetests__/expect.test.ts @@ -19,6 +19,7 @@ import { import type * as jestMatcherUtils from 'jest-matcher-utils'; type M = Matchers; +type N = Matchers; expectError(() => { type E = Matchers; diff --git a/packages/expect/__typetests__/expectTyped.test.ts b/packages/expect/__typetests__/expectTyped.test.ts new file mode 100644 index 000000000000..c96e1d79ac15 --- /dev/null +++ b/packages/expect/__typetests__/expectTyped.test.ts @@ -0,0 +1,22 @@ +/** + * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +import {expectAssignable, expectError, expectType} from 'tsd-lite'; +import {Matchers, expect} from 'expect'; + +declare module 'expect' { + interface Matchers { + toTypedEqual(expected: T): void; + } +} + +expectType(expect(100).toTypedEqual(100)); +expectType(expect(101).not.toTypedEqual(101)); + +expectError(() => { + expect(100).toTypedEqual('three'); +}); diff --git a/packages/expect/package.json b/packages/expect/package.json index dc7eb9ae8f1e..676c47fbe9ad 100644 --- a/packages/expect/package.json +++ b/packages/expect/package.json @@ -1,6 +1,6 @@ { "name": "expect", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/expect/src/__tests__/tsconfig.json b/packages/expect/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/expect/src/__tests__/tsconfig.json +++ b/packages/expect/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/expect/src/types.ts b/packages/expect/src/types.ts index f3687b5597cb..951a6eff5854 100644 --- a/packages/expect/src/types.ts +++ b/packages/expect/src/types.ts @@ -97,9 +97,9 @@ export interface BaseExpect { } export type Expect = { - (actual: T): Matchers & - Inverse> & - PromiseMatchers; + (actual: T): Matchers & + Inverse> & + PromiseMatchers; } & BaseExpect & AsymmetricMatchers & Inverse>; @@ -121,20 +121,28 @@ export interface AsymmetricMatchers { stringMatching(sample: string | RegExp): AsymmetricMatcher; } -type PromiseMatchers = { +type PromiseMatchers = { /** * Unwraps the reason of a rejected promise so any other matcher can be chained. * If the promise is fulfilled the assertion fails. */ - rejects: Matchers> & Inverse>>; + rejects: Matchers, T> & Inverse, T>>; /** * Unwraps the value of a fulfilled promise so any other matcher can be chained. * If the promise is rejected the assertion fails. */ - resolves: Matchers> & Inverse>>; + resolves: Matchers, T> & Inverse, T>>; }; -export interface Matchers> { +export interface Matchers, T = unknown> { + /** + * T is a type param for the benefit of users who extend Matchers. It's + * intentionally unused and needs to be named T, not _T, for those users. + * This makes sure TypeScript agrees. + * + * @internal + */ + _unusedT(expected: T): R; /** * Ensures the last call to a mock function was provided specific args. */ diff --git a/packages/expect/tsconfig.json b/packages/expect/tsconfig.json index 330ff26d00c9..8d7a33c00c62 100644 --- a/packages/expect/tsconfig.json +++ b/packages/expect/tsconfig.json @@ -12,7 +12,6 @@ {"path": "../jest-get-type"}, {"path": "../jest-matcher-utils"}, {"path": "../jest-message-util"}, - {"path": "../jest-util"}, - {"path": "../test-utils"} + {"path": "../jest-util"} ] } diff --git a/packages/jest-changed-files/.npmignore b/packages/jest-changed-files/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-changed-files/.npmignore +++ b/packages/jest-changed-files/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-changed-files/package.json b/packages/jest-changed-files/package.json index df251ed1f017..fd5b6c9ccf91 100644 --- a/packages/jest-changed-files/package.json +++ b/packages/jest-changed-files/package.json @@ -1,6 +1,6 @@ { "name": "jest-changed-files", - "version": "29.4.0", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-circus/.npmignore b/packages/jest-circus/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-circus/.npmignore +++ b/packages/jest-circus/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-circus/package.json b/packages/jest-circus/package.json index 0e6ddc3e1dc1..3c66014ecb80 100644 --- a/packages/jest-circus/package.json +++ b/packages/jest-circus/package.json @@ -1,6 +1,6 @@ { "name": "jest-circus", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-circus/src/utils.ts b/packages/jest-circus/src/utils.ts index d45bf21e91f5..65c9a295dc66 100644 --- a/packages/jest-circus/src/utils.ts +++ b/packages/jest-circus/src/utils.ts @@ -171,9 +171,15 @@ export const describeBlockHasTests = ( child => child.type === 'test' || describeBlockHasTests(child), ); -const _makeTimeoutMessage = (timeout: number, isHook: boolean) => +const _makeTimeoutMessage = ( + timeout: number, + isHook: boolean, + takesDoneCallback: boolean, +) => `Exceeded timeout of ${formatTime(timeout)} for a ${ isHook ? 'hook' : 'test' + }${ + takesDoneCallback && ' while waiting for `done()` to be called' }.\nUse jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test.`; // Global values can be overwritten by mocks or tests. We'll capture @@ -193,16 +199,17 @@ export const callAsyncCircusFn = ( let completed = false; const {fn, asyncError} = testOrHook; + const doneCallback = takesDoneCallback(fn); return new Promise((resolve, reject) => { timeoutID = setTimeout( - () => reject(_makeTimeoutMessage(timeout, isHook)), + () => reject(_makeTimeoutMessage(timeout, isHook, doneCallback)), timeout, ); // If this fn accepts `done` callback we return a promise that fulfills as // soon as `done` called. - if (takesDoneCallback(fn)) { + if (doneCallback) { let returnedValue: unknown = undefined; const done = (reason?: Error | string): void => { diff --git a/packages/jest-cli/.npmignore b/packages/jest-cli/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-cli/.npmignore +++ b/packages/jest-cli/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-cli/package.json b/packages/jest-cli/package.json index 3a1907a0ba96..b29fd9fddebf 100644 --- a/packages/jest-cli/package.json +++ b/packages/jest-cli/package.json @@ -1,7 +1,7 @@ { "name": "jest-cli", "description": "Delightful JavaScript Testing.", - "version": "29.4.1", + "version": "29.4.2", "main": "./build/index.js", "types": "./build/index.d.ts", "exports": { diff --git a/packages/jest-cli/src/init/__tests__/init.test.ts b/packages/jest-cli/src/init/__tests__/init.test.ts index 4c0e9fce51b7..6d8989abe178 100644 --- a/packages/jest-cli/src/init/__tests__/init.test.ts +++ b/packages/jest-cli/src/init/__tests__/init.test.ts @@ -15,10 +15,6 @@ import init from '../'; const {JEST_CONFIG_EXT_ORDER} = constants; jest.mock('prompts'); -jest.mock( - '../../../../jest-config/build/getCacheDirectory', - () => () => '/tmp/jest', -); jest.mock('path', () => ({ ...jest.requireActual('path'), sep: '/', @@ -52,7 +48,12 @@ describe('init', () => { const writtenJestConfig = jest.mocked(writeFileSync).mock.calls[0][1]; - expect(writtenJestConfig).toMatchSnapshot(); + expect( + (writtenJestConfig as string).replace( + /\/\/ cacheDirectory: .*,/, + '// cacheDirectory: "/tmp/jest",', + ), + ).toMatchSnapshot(); const evaluatedConfig = eval(writtenJestConfig as string) as Record< string, diff --git a/packages/jest-config/.npmignore b/packages/jest-config/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-config/.npmignore +++ b/packages/jest-config/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-config/package.json b/packages/jest-config/package.json index d4939aa242b0..fd7e6cd651c8 100644 --- a/packages/jest-config/package.json +++ b/packages/jest-config/package.json @@ -1,6 +1,6 @@ { "name": "jest-config", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-console/.npmignore b/packages/jest-console/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-console/.npmignore +++ b/packages/jest-console/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-console/package.json b/packages/jest-console/package.json index ae444d3b3a30..fb904e63fe0b 100644 --- a/packages/jest-console/package.json +++ b/packages/jest-console/package.json @@ -1,6 +1,6 @@ { "name": "@jest/console", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-console/src/__tests__/tsconfig.json b/packages/jest-console/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-console/src/__tests__/tsconfig.json +++ b/packages/jest-console/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-console/tsconfig.json b/packages/jest-console/tsconfig.json index 308e84ff26ee..735c691024a6 100644 --- a/packages/jest-console/tsconfig.json +++ b/packages/jest-console/tsconfig.json @@ -9,7 +9,6 @@ "references": [ {"path": "../jest-message-util"}, {"path": "../jest-types"}, - {"path": "../jest-util"}, - {"path": "../test-utils"} + {"path": "../jest-util"} ] } diff --git a/packages/jest-core/.npmignore b/packages/jest-core/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-core/.npmignore +++ b/packages/jest-core/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-core/package.json b/packages/jest-core/package.json index 685f8b57a634..1dfc8f309c9b 100644 --- a/packages/jest-core/package.json +++ b/packages/jest-core/package.json @@ -1,7 +1,7 @@ { "name": "@jest/core", "description": "Delightful JavaScript Testing.", - "version": "29.4.1", + "version": "29.4.2", "main": "./build/index.js", "types": "./build/index.d.ts", "exports": { diff --git a/packages/jest-core/src/__tests__/tsconfig.json b/packages/jest-core/src/__tests__/tsconfig.json index 8ccc3083ffb0..d603a17f8dfe 100644 --- a/packages/jest-core/src/__tests__/tsconfig.json +++ b/packages/jest-core/src/__tests__/tsconfig.json @@ -1,7 +1,5 @@ { "extends": "../../../../tsconfig.test.json", - "compilerOptions": { - "rootDir": "../" - }, - "include": ["../**/*"] + "include": ["./**/*"], + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-core/src/cli/index.ts b/packages/jest-core/src/cli/index.ts index b3e7df8c5e12..b9ac488c3278 100644 --- a/packages/jest-core/src/cli/index.ts +++ b/packages/jest-core/src/cli/index.ts @@ -5,6 +5,7 @@ * LICENSE file in the root directory of this source tree. */ +import {performance} from 'perf_hooks'; import chalk = require('chalk'); import exit = require('exit'); import * as fs from 'graceful-fs'; @@ -41,6 +42,7 @@ export async function runCLI( results: AggregatedResult; globalConfig: Config.GlobalConfig; }> { + performance.mark('jest/runCLI:start'); let results: AggregatedResult | undefined; // If we output a JSON object, we can't write anything to stdout, since @@ -133,6 +135,7 @@ export async function runCLI( console.error(message); } + performance.mark('jest/runCLI:end'); return {globalConfig, results}; } @@ -173,6 +176,12 @@ const _run10000 = async ( // Queries to hg/git can take a while, so we need to start the process // as soon as possible, so by the time we need the result it's already there. const changedFilesPromise = getChangedFilesPromise(globalConfig, configs); + if (changedFilesPromise) { + performance.mark('jest/getChangedFiles:start'); + changedFilesPromise.finally(() => { + performance.mark('jest/getChangedFiles:end'); + }); + } // Filter may need to do an HTTP call or something similar to setup. // We will wait on an async response from this before using the filter. @@ -204,11 +213,13 @@ const _run10000 = async ( }; } + performance.mark('jest/buildContextsAndHasteMaps:start'); const {contexts, hasteMapInstances} = await buildContextsAndHasteMaps( configs, globalConfig, outputStream, ); + performance.mark('jest/buildContextsAndHasteMaps:end'); globalConfig.watch || globalConfig.watchAll ? await runWatch( diff --git a/packages/jest-core/src/lib/__tests__/tsconfig.json b/packages/jest-core/src/lib/__tests__/tsconfig.json index facea41430cf..1bc42294775a 100644 --- a/packages/jest-core/src/lib/__tests__/tsconfig.json +++ b/packages/jest-core/src/lib/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../../"}] + "references": [{"path": "../../../"}, {"path": "../../../../test-utils"}] } diff --git a/packages/jest-core/src/runJest.ts b/packages/jest-core/src/runJest.ts index 9aa77a4346ec..640407a0f6b1 100644 --- a/packages/jest-core/src/runJest.ts +++ b/packages/jest-core/src/runJest.ts @@ -6,6 +6,7 @@ */ import * as path from 'path'; +import {performance} from 'perf_hooks'; import chalk = require('chalk'); import exit = require('exit'); import * as fs from 'graceful-fs'; @@ -179,6 +180,7 @@ export default async function runJest({ const searchSources = contexts.map(context => new SearchSource(context)); + performance.mark('jest/getTestPaths:start'); const testRunData: TestRunData = await Promise.all( contexts.map(async (context, index) => { const searchSource = searchSources[index]; @@ -195,6 +197,7 @@ export default async function runJest({ return {context, matches}; }), ); + performance.mark('jest/getTestPaths:end'); if (globalConfig.shard) { if (typeof sequencer.shard !== 'function') { @@ -260,7 +263,9 @@ export default async function runJest({ } if (hasTests) { + performance.mark('jest/globalSetup:start'); await runGlobalHook({allTests, globalConfig, moduleName: 'globalSetup'}); + performance.mark('jest/globalSetup:end'); } if (changedFilesPromise) { @@ -289,14 +294,24 @@ export default async function runJest({ ...testSchedulerContext, }); + // @ts-expect-error - second arg is unsupported (but harmless) in Node 14 + performance.mark('jest/scheduleAndRun:start', { + detail: {numTests: allTests.length}, + }); const results = await scheduler.scheduleTests(allTests, testWatcher); + performance.mark('jest/scheduleAndRun:start'); + performance.mark('jest/cacheResults:start'); sequencer.cacheResults(allTests, results); + performance.mark('jest/cacheResults:end'); if (hasTests) { + performance.mark('jest/globalTeardown:start'); await runGlobalHook({allTests, globalConfig, moduleName: 'globalTeardown'}); + performance.mark('jest/globalTeardown:end'); } + performance.mark('jest/processResults:start'); await processResults(results, { collectHandles, json: globalConfig.json, @@ -305,4 +320,5 @@ export default async function runJest({ outputStream, testResultsProcessor: globalConfig.testResultsProcessor, }); + performance.mark('jest/processResults:end'); } diff --git a/packages/jest-core/tsconfig.json b/packages/jest-core/tsconfig.json index 0a01ce3297dd..ac309da620f3 100644 --- a/packages/jest-core/tsconfig.json +++ b/packages/jest-core/tsconfig.json @@ -26,7 +26,6 @@ {"path": "../jest-util"}, {"path": "../jest-validate"}, {"path": "../jest-watcher"}, - {"path": "../pretty-format"}, - {"path": "../test-utils"} + {"path": "../pretty-format"} ] } diff --git a/packages/jest-create-cache-key-function/.npmignore b/packages/jest-create-cache-key-function/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-create-cache-key-function/.npmignore +++ b/packages/jest-create-cache-key-function/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-create-cache-key-function/package.json b/packages/jest-create-cache-key-function/package.json index 96a2db818dc4..db55789337e7 100644 --- a/packages/jest-create-cache-key-function/package.json +++ b/packages/jest-create-cache-key-function/package.json @@ -1,6 +1,6 @@ { "name": "@jest/create-cache-key-function", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-diff/.npmignore b/packages/jest-diff/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-diff/.npmignore +++ b/packages/jest-diff/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-diff/package.json b/packages/jest-diff/package.json index beda90b5a3cc..af852f0bb65f 100644 --- a/packages/jest-diff/package.json +++ b/packages/jest-diff/package.json @@ -1,6 +1,6 @@ { "name": "jest-diff", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-diff/src/__tests__/tsconfig.json b/packages/jest-diff/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-diff/src/__tests__/tsconfig.json +++ b/packages/jest-diff/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-diff/tsconfig.json b/packages/jest-diff/tsconfig.json index e816b873f5ba..b286bcd0da96 100644 --- a/packages/jest-diff/tsconfig.json +++ b/packages/jest-diff/tsconfig.json @@ -9,7 +9,6 @@ "references": [ {"path": "../diff-sequences"}, {"path": "../jest-get-type"}, - {"path": "../pretty-format"}, - {"path": "../test-utils"} + {"path": "../pretty-format"} ] } diff --git a/packages/jest-docblock/.npmignore b/packages/jest-docblock/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-docblock/.npmignore +++ b/packages/jest-docblock/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-docblock/package.json b/packages/jest-docblock/package.json index e0b7a1210fee..2f5f5a85405a 100644 --- a/packages/jest-docblock/package.json +++ b/packages/jest-docblock/package.json @@ -1,6 +1,6 @@ { "name": "jest-docblock", - "version": "29.2.0", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-each/.npmignore b/packages/jest-each/.npmignore index f0309881b754..9263e07f7d06 100644 --- a/packages/jest-each/.npmignore +++ b/packages/jest-each/.npmignore @@ -6,3 +6,4 @@ assets tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-each/package.json b/packages/jest-each/package.json index 470898fdc2d8..2a904784ee65 100644 --- a/packages/jest-each/package.json +++ b/packages/jest-each/package.json @@ -1,6 +1,6 @@ { "name": "jest-each", - "version": "29.4.1", + "version": "29.4.2", "description": "Parameterised tests for Jest", "main": "./build/index.js", "types": "./build/index.d.ts", diff --git a/packages/jest-environment-jsdom/.npmignore b/packages/jest-environment-jsdom/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-environment-jsdom/.npmignore +++ b/packages/jest-environment-jsdom/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-environment-jsdom/package.json b/packages/jest-environment-jsdom/package.json index 75f6986dbfe6..1068b2cfe7d7 100644 --- a/packages/jest-environment-jsdom/package.json +++ b/packages/jest-environment-jsdom/package.json @@ -1,6 +1,6 @@ { "name": "jest-environment-jsdom", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-environment-jsdom/src/__tests__/tsconfig.json b/packages/jest-environment-jsdom/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-environment-jsdom/src/__tests__/tsconfig.json +++ b/packages/jest-environment-jsdom/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-environment-jsdom/tsconfig.json b/packages/jest-environment-jsdom/tsconfig.json index 240880c13e8f..82e5be22db29 100644 --- a/packages/jest-environment-jsdom/tsconfig.json +++ b/packages/jest-environment-jsdom/tsconfig.json @@ -11,7 +11,6 @@ {"path": "../jest-fake-timers"}, {"path": "../jest-mock"}, {"path": "../jest-types"}, - {"path": "../jest-util"}, - {"path": "../test-utils"} + {"path": "../jest-util"} ] } diff --git a/packages/jest-environment-node/.npmignore b/packages/jest-environment-node/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-environment-node/.npmignore +++ b/packages/jest-environment-node/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-environment-node/package.json b/packages/jest-environment-node/package.json index 39d09c843282..a344a33d54f3 100644 --- a/packages/jest-environment-node/package.json +++ b/packages/jest-environment-node/package.json @@ -1,6 +1,6 @@ { "name": "jest-environment-node", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-environment-node/src/__tests__/tsconfig.json b/packages/jest-environment-node/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-environment-node/src/__tests__/tsconfig.json +++ b/packages/jest-environment-node/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-environment-node/tsconfig.json b/packages/jest-environment-node/tsconfig.json index 12bd3f484bcd..13971fdd663d 100644 --- a/packages/jest-environment-node/tsconfig.json +++ b/packages/jest-environment-node/tsconfig.json @@ -11,7 +11,6 @@ {"path": "../jest-fake-timers"}, {"path": "../jest-mock"}, {"path": "../jest-types"}, - {"path": "../jest-util"}, - {"path": "../test-utils"} + {"path": "../jest-util"} ] } diff --git a/packages/jest-environment/.npmignore b/packages/jest-environment/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-environment/.npmignore +++ b/packages/jest-environment/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-environment/package.json b/packages/jest-environment/package.json index ea3adc13a6b0..520aee27412a 100644 --- a/packages/jest-environment/package.json +++ b/packages/jest-environment/package.json @@ -1,6 +1,6 @@ { "name": "@jest/environment", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-expect/.npmignore b/packages/jest-expect/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-expect/.npmignore +++ b/packages/jest-expect/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-expect/__typetests__/jest-expect.test.ts b/packages/jest-expect/__typetests__/jest-expect.test.ts index ac1d0193565c..1620323fab9d 100644 --- a/packages/jest-expect/__typetests__/jest-expect.test.ts +++ b/packages/jest-expect/__typetests__/jest-expect.test.ts @@ -29,3 +29,16 @@ expectError(() => { expectAssignable(jestExpect); expectNotAssignable(expect); + +declare module 'expect' { + interface Matchers { + toTypedEqual(expected: T): void; + } +} + +expectType(jestExpect(100).toTypedEqual(100)); +expectType(jestExpect(101).not.toTypedEqual(101)); + +expectError(() => { + jestExpect(100).toTypedEqual('three'); +}); diff --git a/packages/jest-expect/package.json b/packages/jest-expect/package.json index 5b52f59b52c9..056a66d6028a 100644 --- a/packages/jest-expect/package.json +++ b/packages/jest-expect/package.json @@ -1,6 +1,6 @@ { "name": "@jest/expect", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-expect/src/types.ts b/packages/jest-expect/src/types.ts index 10739da8481e..d1ba64a7f66f 100644 --- a/packages/jest-expect/src/types.ts +++ b/packages/jest-expect/src/types.ts @@ -29,7 +29,7 @@ type Inverse = { not: Matchers; }; -type JestMatchers, T> = Matchers & +type JestMatchers, T> = Matchers & SnapshotMatchers; type PromiseMatchers = { diff --git a/packages/jest-fake-timers/.npmignore b/packages/jest-fake-timers/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-fake-timers/.npmignore +++ b/packages/jest-fake-timers/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-fake-timers/package.json b/packages/jest-fake-timers/package.json index 2cfa99364e43..6d21133ee57a 100644 --- a/packages/jest-fake-timers/package.json +++ b/packages/jest-fake-timers/package.json @@ -1,6 +1,6 @@ { "name": "@jest/fake-timers", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-fake-timers/src/__tests__/tsconfig.json b/packages/jest-fake-timers/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-fake-timers/src/__tests__/tsconfig.json +++ b/packages/jest-fake-timers/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-fake-timers/tsconfig.json b/packages/jest-fake-timers/tsconfig.json index 3c20004c2488..483142698671 100644 --- a/packages/jest-fake-timers/tsconfig.json +++ b/packages/jest-fake-timers/tsconfig.json @@ -11,7 +11,6 @@ {"path": "../jest-message-util"}, {"path": "../jest-mock"}, {"path": "../jest-types"}, - {"path": "../jest-util"}, - {"path": "../test-utils"} + {"path": "../jest-util"} ] } diff --git a/packages/jest-get-type/.npmignore b/packages/jest-get-type/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-get-type/.npmignore +++ b/packages/jest-get-type/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-get-type/package.json b/packages/jest-get-type/package.json index de790d72c94f..2be5fb410db7 100644 --- a/packages/jest-get-type/package.json +++ b/packages/jest-get-type/package.json @@ -1,7 +1,7 @@ { "name": "jest-get-type", "description": "A utility function to get the type of a value", - "version": "29.2.0", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-globals/.npmignore b/packages/jest-globals/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-globals/.npmignore +++ b/packages/jest-globals/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-globals/package.json b/packages/jest-globals/package.json index 7763b4a3b017..c44bb7c679e4 100644 --- a/packages/jest-globals/package.json +++ b/packages/jest-globals/package.json @@ -1,6 +1,6 @@ { "name": "@jest/globals", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-haste-map/.npmignore b/packages/jest-haste-map/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-haste-map/.npmignore +++ b/packages/jest-haste-map/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-haste-map/package.json b/packages/jest-haste-map/package.json index d06359213809..cbd0162addbf 100644 --- a/packages/jest-haste-map/package.json +++ b/packages/jest-haste-map/package.json @@ -1,6 +1,6 @@ { "name": "jest-haste-map", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -30,7 +30,6 @@ "walker": "^1.0.8" }, "devDependencies": { - "@jest/test-utils": "workspace:^", "@types/fb-watchman": "^2.0.0", "@types/micromatch": "^4.0.1", "slash": "^3.0.0" diff --git a/packages/jest-haste-map/tsconfig.json b/packages/jest-haste-map/tsconfig.json index 5fcbf9a63cd9..22b31f6d8eb1 100644 --- a/packages/jest-haste-map/tsconfig.json +++ b/packages/jest-haste-map/tsconfig.json @@ -10,7 +10,6 @@ {"path": "../jest-regex-util"}, {"path": "../jest-types"}, {"path": "../jest-util"}, - {"path": "../jest-worker"}, - {"path": "../test-utils"} + {"path": "../jest-worker"} ] } diff --git a/packages/jest-jasmine2/.npmignore b/packages/jest-jasmine2/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-jasmine2/.npmignore +++ b/packages/jest-jasmine2/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-jasmine2/package.json b/packages/jest-jasmine2/package.json index a9783c10fb36..739a990406e7 100644 --- a/packages/jest-jasmine2/package.json +++ b/packages/jest-jasmine2/package.json @@ -1,6 +1,6 @@ { "name": "jest-jasmine2", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-jasmine2/src/index.ts b/packages/jest-jasmine2/src/index.ts index 2157e12dc1de..246990cecb84 100644 --- a/packages/jest-jasmine2/src/index.ts +++ b/packages/jest-jasmine2/src/index.ts @@ -144,7 +144,7 @@ export default async function jasmine2( runtime .requireInternalModule( - path.resolve(__dirname, './jestExpect.js'), + require.resolve('./jestExpect.js'), ) .default({expand: globalConfig.expand}); @@ -165,7 +165,7 @@ export default async function jasmine2( const snapshotState: SnapshotState = await runtime .requireInternalModule( - path.resolve(__dirname, './setup_jest_globals.js'), + require.resolve('./setup_jest_globals.js'), ) .default({ config, diff --git a/packages/jest-leak-detector/.npmignore b/packages/jest-leak-detector/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-leak-detector/.npmignore +++ b/packages/jest-leak-detector/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-leak-detector/package.json b/packages/jest-leak-detector/package.json index df4c0ff14431..2698b3d67fb3 100644 --- a/packages/jest-leak-detector/package.json +++ b/packages/jest-leak-detector/package.json @@ -1,6 +1,6 @@ { "name": "jest-leak-detector", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-matcher-utils/.npmignore b/packages/jest-matcher-utils/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-matcher-utils/.npmignore +++ b/packages/jest-matcher-utils/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-matcher-utils/package.json b/packages/jest-matcher-utils/package.json index 8a20e6682b02..edf232d841c1 100644 --- a/packages/jest-matcher-utils/package.json +++ b/packages/jest-matcher-utils/package.json @@ -1,7 +1,7 @@ { "name": "jest-matcher-utils", "description": "A set of utility functions for expect and related packages", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-matcher-utils/src/__tests__/tsconfig.json b/packages/jest-matcher-utils/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-matcher-utils/src/__tests__/tsconfig.json +++ b/packages/jest-matcher-utils/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-matcher-utils/tsconfig.json b/packages/jest-matcher-utils/tsconfig.json index 3905821cea60..e59af10a490f 100644 --- a/packages/jest-matcher-utils/tsconfig.json +++ b/packages/jest-matcher-utils/tsconfig.json @@ -10,7 +10,6 @@ "references": [ {"path": "../jest-diff"}, {"path": "../jest-get-type"}, - {"path": "../pretty-format"}, - {"path": "../test-utils"} + {"path": "../pretty-format"} ] } diff --git a/packages/jest-message-util/.npmignore b/packages/jest-message-util/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-message-util/.npmignore +++ b/packages/jest-message-util/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-message-util/package.json b/packages/jest-message-util/package.json index 43aef18f9c4b..2000fa6741a6 100644 --- a/packages/jest-message-util/package.json +++ b/packages/jest-message-util/package.json @@ -1,6 +1,6 @@ { "name": "jest-message-util", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -33,7 +33,8 @@ "devDependencies": { "@types/babel__code-frame": "^7.0.0", "@types/graceful-fs": "^4.1.3", - "@types/micromatch": "^4.0.1" + "@types/micromatch": "^4.0.1", + "tempy": "^1.0.0" }, "publishConfig": { "access": "public" diff --git a/packages/jest-mock/.npmignore b/packages/jest-mock/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-mock/.npmignore +++ b/packages/jest-mock/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-mock/package.json b/packages/jest-mock/package.json index b5a45cbc11e5..baf71cec3760 100644 --- a/packages/jest-mock/package.json +++ b/packages/jest-mock/package.json @@ -1,6 +1,6 @@ { "name": "jest-mock", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-phabricator/.npmignore b/packages/jest-phabricator/.npmignore index 0238c408fd91..bb9fdb98bae7 100644 --- a/packages/jest-phabricator/.npmignore +++ b/packages/jest-phabricator/.npmignore @@ -1,8 +1,8 @@ **/__mocks__/** **/__tests__/** -example __typetests__ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-phabricator/package.json b/packages/jest-phabricator/package.json index ca7792ad32a9..fe4a155974fc 100644 --- a/packages/jest-phabricator/package.json +++ b/packages/jest-phabricator/package.json @@ -1,6 +1,6 @@ { "name": "jest-phabricator", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-regex-util/.npmignore b/packages/jest-regex-util/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-regex-util/.npmignore +++ b/packages/jest-regex-util/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-regex-util/package.json b/packages/jest-regex-util/package.json index 171d4ce5ed59..ff8017521610 100644 --- a/packages/jest-regex-util/package.json +++ b/packages/jest-regex-util/package.json @@ -1,6 +1,6 @@ { "name": "jest-regex-util", - "version": "29.2.0", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-repl/.npmignore b/packages/jest-repl/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-repl/.npmignore +++ b/packages/jest-repl/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-repl/package.json b/packages/jest-repl/package.json index e911d5dff482..36fee1df3d9d 100644 --- a/packages/jest-repl/package.json +++ b/packages/jest-repl/package.json @@ -1,6 +1,6 @@ { "name": "jest-repl", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-reporters/.npmignore b/packages/jest-reporters/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-reporters/.npmignore +++ b/packages/jest-reporters/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-reporters/package.json b/packages/jest-reporters/package.json index 1ce776ec3764..bca72a9345be 100644 --- a/packages/jest-reporters/package.json +++ b/packages/jest-reporters/package.json @@ -1,7 +1,7 @@ { "name": "@jest/reporters", "description": "Jest's reporters", - "version": "29.4.1", + "version": "29.4.2", "main": "./build/index.js", "types": "./build/index.d.ts", "exports": { @@ -51,6 +51,7 @@ "@types/node-notifier": "^8.0.0", "jest-resolve": "workspace:^", "mock-fs": "^5.1.2", + "node-notifier": "^10.0.0", "tsd-lite": "^0.6.0" }, "peerDependencies": { diff --git a/packages/jest-reporters/src/__tests__/tsconfig.json b/packages/jest-reporters/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-reporters/src/__tests__/tsconfig.json +++ b/packages/jest-reporters/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-reporters/tsconfig.json b/packages/jest-reporters/tsconfig.json index 813ba257479e..86a51036fda6 100644 --- a/packages/jest-reporters/tsconfig.json +++ b/packages/jest-reporters/tsconfig.json @@ -14,7 +14,6 @@ {"path": "../jest-transform"}, {"path": "../jest-types"}, {"path": "../jest-util"}, - {"path": "../jest-worker"}, - {"path": "../test-utils"} + {"path": "../jest-worker"} ] } diff --git a/packages/jest-resolve-dependencies/.npmignore b/packages/jest-resolve-dependencies/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-resolve-dependencies/.npmignore +++ b/packages/jest-resolve-dependencies/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-resolve-dependencies/package.json b/packages/jest-resolve-dependencies/package.json index d417cc5d44db..bda5a347824f 100644 --- a/packages/jest-resolve-dependencies/package.json +++ b/packages/jest-resolve-dependencies/package.json @@ -1,6 +1,6 @@ { "name": "jest-resolve-dependencies", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-resolve-dependencies/src/__tests__/tsconfig.json b/packages/jest-resolve-dependencies/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-resolve-dependencies/src/__tests__/tsconfig.json +++ b/packages/jest-resolve-dependencies/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-resolve-dependencies/tsconfig.json b/packages/jest-resolve-dependencies/tsconfig.json index a1307345772a..503f05242ff2 100644 --- a/packages/jest-resolve-dependencies/tsconfig.json +++ b/packages/jest-resolve-dependencies/tsconfig.json @@ -12,7 +12,6 @@ {"path": "../jest-resolve"}, {"path": "../jest-runtime"}, {"path": "../jest-snapshot"}, - {"path": "../jest-types"}, - {"path": "../test-utils"} + {"path": "../jest-types"} ] } diff --git a/packages/jest-resolve/.npmignore b/packages/jest-resolve/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-resolve/.npmignore +++ b/packages/jest-resolve/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-resolve/package.json b/packages/jest-resolve/package.json index ac61aa7cc2a7..b34ac442c1e8 100644 --- a/packages/jest-resolve/package.json +++ b/packages/jest-resolve/package.json @@ -1,6 +1,6 @@ { "name": "jest-resolve", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-runner/.npmignore b/packages/jest-runner/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-runner/.npmignore +++ b/packages/jest-runner/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-runner/package.json b/packages/jest-runner/package.json index c44fe957ced6..8faea510a266 100644 --- a/packages/jest-runner/package.json +++ b/packages/jest-runner/package.json @@ -1,6 +1,6 @@ { "name": "jest-runner", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -40,6 +40,7 @@ "source-map-support": "0.5.13" }, "devDependencies": { + "@jest/test-utils": "workspace:^", "@tsd/typescript": "^4.9.0", "@types/exit": "^0.1.30", "@types/graceful-fs": "^4.1.3", diff --git a/packages/jest-runner/src/__tests__/tsconfig.json b/packages/jest-runner/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-runner/src/__tests__/tsconfig.json +++ b/packages/jest-runner/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-runtime/.npmignore b/packages/jest-runtime/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-runtime/.npmignore +++ b/packages/jest-runtime/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-runtime/package.json b/packages/jest-runtime/package.json index 870a84c0a5b9..60a7464715b2 100644 --- a/packages/jest-runtime/package.json +++ b/packages/jest-runtime/package.json @@ -1,6 +1,6 @@ { "name": "jest-runtime", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-runtime/src/__tests__/tsconfig.json b/packages/jest-runtime/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-runtime/src/__tests__/tsconfig.json +++ b/packages/jest-runtime/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-runtime/src/index.ts b/packages/jest-runtime/src/index.ts index f050d0d01e58..fe3a5fb81ffb 100644 --- a/packages/jest-runtime/src/index.ts +++ b/packages/jest-runtime/src/index.ts @@ -951,11 +951,18 @@ export default class Runtime { const namedExports = new Set(exports); reexports.forEach(reexport => { - const resolved = this._resolveCjsModule(modulePath, reexport); + if (this._resolver.isCoreModule(reexport)) { + const exports = this.requireModule(modulePath, reexport); + if (exports !== null && typeof exports === 'object') { + Object.keys(exports).forEach(namedExports.add, namedExports); + } + } else { + const resolved = this._resolveCjsModule(modulePath, reexport); - const exports = this.getExportsOfCjs(resolved); + const exports = this.getExportsOfCjs(resolved); - exports.forEach(namedExports.add, namedExports); + exports.forEach(namedExports.add, namedExports); + } }); this._cjsNamedExports.set(modulePath, namedExports); diff --git a/packages/jest-runtime/tsconfig.json b/packages/jest-runtime/tsconfig.json index d746bf7b9bec..e62786852942 100644 --- a/packages/jest-runtime/tsconfig.json +++ b/packages/jest-runtime/tsconfig.json @@ -1,6 +1,8 @@ { "extends": "../../tsconfig.json", "compilerOptions": { + // needed for WebAssembly, see https://github.com/microsoft/TypeScript-DOM-lib-generator/issues/826 + "lib": ["dom"], "rootDir": "src", "outDir": "build" }, @@ -21,7 +23,6 @@ {"path": "../jest-test-result"}, {"path": "../jest-transform"}, {"path": "../jest-types"}, - {"path": "../jest-util"}, - {"path": "../test-utils"} + {"path": "../jest-util"} ] } diff --git a/packages/jest-schemas/.npmignore b/packages/jest-schemas/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-schemas/.npmignore +++ b/packages/jest-schemas/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-schemas/package.json b/packages/jest-schemas/package.json index 97b894718e00..b57065685ce1 100644 --- a/packages/jest-schemas/package.json +++ b/packages/jest-schemas/package.json @@ -1,6 +1,6 @@ { "name": "@jest/schemas", - "version": "29.4.0", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-snapshot/.npmignore b/packages/jest-snapshot/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-snapshot/.npmignore +++ b/packages/jest-snapshot/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-snapshot/package.json b/packages/jest-snapshot/package.json index 4aa44908007e..2596ed3e7f05 100644 --- a/packages/jest-snapshot/package.json +++ b/packages/jest-snapshot/package.json @@ -1,6 +1,6 @@ { "name": "jest-snapshot", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-snapshot/src/__tests__/tsconfig.json b/packages/jest-snapshot/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-snapshot/src/__tests__/tsconfig.json +++ b/packages/jest-snapshot/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-snapshot/tsconfig.json b/packages/jest-snapshot/tsconfig.json index 411a0f5a3a83..c9d79155bd00 100644 --- a/packages/jest-snapshot/tsconfig.json +++ b/packages/jest-snapshot/tsconfig.json @@ -17,7 +17,6 @@ {"path": "../jest-transform"}, {"path": "../jest-types"}, {"path": "../jest-util"}, - {"path": "../pretty-format"}, - {"path": "../test-utils"} + {"path": "../pretty-format"} ] } diff --git a/packages/jest-source-map/.npmignore b/packages/jest-source-map/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-source-map/.npmignore +++ b/packages/jest-source-map/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-source-map/package.json b/packages/jest-source-map/package.json index 219d7057069c..c82c4337a374 100644 --- a/packages/jest-source-map/package.json +++ b/packages/jest-source-map/package.json @@ -1,6 +1,6 @@ { "name": "@jest/source-map", - "version": "29.2.0", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-test-result/.npmignore b/packages/jest-test-result/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-test-result/.npmignore +++ b/packages/jest-test-result/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-test-result/package.json b/packages/jest-test-result/package.json index d9f661bffa0b..b35f2625cb6d 100644 --- a/packages/jest-test-result/package.json +++ b/packages/jest-test-result/package.json @@ -1,6 +1,6 @@ { "name": "@jest/test-result", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-test-sequencer/.npmignore b/packages/jest-test-sequencer/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-test-sequencer/.npmignore +++ b/packages/jest-test-sequencer/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-test-sequencer/package.json b/packages/jest-test-sequencer/package.json index 0232a1dd5f34..493c7586811d 100644 --- a/packages/jest-test-sequencer/package.json +++ b/packages/jest-test-sequencer/package.json @@ -1,6 +1,6 @@ { "name": "@jest/test-sequencer", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-test-sequencer/src/__tests__/tsconfig.json b/packages/jest-test-sequencer/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-test-sequencer/src/__tests__/tsconfig.json +++ b/packages/jest-test-sequencer/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-test-sequencer/tsconfig.json b/packages/jest-test-sequencer/tsconfig.json index 7d3736031d3b..cdf9b3d35d19 100644 --- a/packages/jest-test-sequencer/tsconfig.json +++ b/packages/jest-test-sequencer/tsconfig.json @@ -6,9 +6,5 @@ }, "include": ["./src/**/*"], "exclude": ["./**/__tests__/**/*"], - "references": [ - {"path": "../jest-haste-map"}, - {"path": "../jest-test-result"}, - {"path": "../test-utils"} - ] + "references": [{"path": "../jest-haste-map"}, {"path": "../jest-test-result"}] } diff --git a/packages/jest-transform/.npmignore b/packages/jest-transform/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-transform/.npmignore +++ b/packages/jest-transform/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-transform/package.json b/packages/jest-transform/package.json index 00e5e466bda3..34df07111ace 100644 --- a/packages/jest-transform/package.json +++ b/packages/jest-transform/package.json @@ -1,6 +1,6 @@ { "name": "@jest/transform", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -31,7 +31,7 @@ "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", - "write-file-atomic": "^5.0.0" + "write-file-atomic": "^4.0.2" }, "devDependencies": { "@jest/test-utils": "workspace:^", diff --git a/packages/jest-transform/src/__tests__/tsconfig.json b/packages/jest-transform/src/__tests__/tsconfig.json index dd1bca103251..d603a17f8dfe 100644 --- a/packages/jest-transform/src/__tests__/tsconfig.json +++ b/packages/jest-transform/src/__tests__/tsconfig.json @@ -1,5 +1,5 @@ { "extends": "../../../../tsconfig.test.json", "include": ["./**/*"], - "references": [{"path": "../../"}] + "references": [{"path": "../../"}, {"path": "../../../test-utils"}] } diff --git a/packages/jest-transform/tsconfig.json b/packages/jest-transform/tsconfig.json index b663b58b48db..cd4148bc6954 100644 --- a/packages/jest-transform/tsconfig.json +++ b/packages/jest-transform/tsconfig.json @@ -10,7 +10,6 @@ {"path": "../jest-haste-map"}, {"path": "../jest-regex-util"}, {"path": "../jest-types"}, - {"path": "../jest-util"}, - {"path": "../test-utils"} + {"path": "../jest-util"} ] } diff --git a/packages/jest-types/.npmignore b/packages/jest-types/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-types/.npmignore +++ b/packages/jest-types/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-types/package.json b/packages/jest-types/package.json index 5399efd741c2..f06f8b5b67d0 100644 --- a/packages/jest-types/package.json +++ b/packages/jest-types/package.json @@ -1,6 +1,6 @@ { "name": "@jest/types", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-util/.npmignore b/packages/jest-util/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-util/.npmignore +++ b/packages/jest-util/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-util/package.json b/packages/jest-util/package.json index f60960c2c090..88047f8466e5 100644 --- a/packages/jest-util/package.json +++ b/packages/jest-util/package.json @@ -1,6 +1,6 @@ { "name": "jest-util", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-validate/.npmignore b/packages/jest-validate/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-validate/.npmignore +++ b/packages/jest-validate/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-validate/package.json b/packages/jest-validate/package.json index 2d1d48f44b53..cf7cc5d31c4b 100644 --- a/packages/jest-validate/package.json +++ b/packages/jest-validate/package.json @@ -1,6 +1,6 @@ { "name": "jest-validate", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/jest-watcher/.npmignore b/packages/jest-watcher/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest-watcher/.npmignore +++ b/packages/jest-watcher/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-watcher/package.json b/packages/jest-watcher/package.json index 78897416d2ff..345ccc402552 100644 --- a/packages/jest-watcher/package.json +++ b/packages/jest-watcher/package.json @@ -1,7 +1,7 @@ { "name": "jest-watcher", "description": "Delightful JavaScript Testing.", - "version": "29.4.1", + "version": "29.4.2", "main": "./build/index.js", "types": "./build/index.d.ts", "exports": { diff --git a/packages/jest-worker/.npmignore b/packages/jest-worker/.npmignore index 8dda7de8f4fe..d6ae93cfed1f 100644 --- a/packages/jest-worker/.npmignore +++ b/packages/jest-worker/.npmignore @@ -6,3 +6,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest-worker/package.json b/packages/jest-worker/package.json index 80ef0a4b89c6..77bbd97d336c 100644 --- a/packages/jest-worker/package.json +++ b/packages/jest-worker/package.json @@ -1,6 +1,6 @@ { "name": "jest-worker", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", @@ -23,6 +23,7 @@ "supports-color": "^8.0.0" }, "devDependencies": { + "@babel/core": "^7.11.6", "@tsd/typescript": "^4.9.0", "@types/merge-stream": "^1.1.2", "@types/supports-color": "^8.1.0", diff --git a/packages/jest-worker/src/workers/ChildProcessWorker.ts b/packages/jest-worker/src/workers/ChildProcessWorker.ts index 691bbb6edefd..9e0832c1e7fa 100644 --- a/packages/jest-worker/src/workers/ChildProcessWorker.ts +++ b/packages/jest-worker/src/workers/ChildProcessWorker.ts @@ -255,6 +255,9 @@ export default class ChildProcessWorker } private _onMessage(response: ParentMessage) { + // Ignore messages not intended for us + if (!Array.isArray(response)) return; + // TODO: Add appropriate type check let error: any; @@ -311,7 +314,8 @@ export default class ChildProcessWorker break; default: - throw new TypeError(`Unexpected response from worker: ${response[0]}`); + // Ignore messages not intended for us + break; } } diff --git a/packages/jest-worker/src/workers/NodeThreadsWorker.ts b/packages/jest-worker/src/workers/NodeThreadsWorker.ts index 2acf0054ae5d..3a9f86a46be0 100644 --- a/packages/jest-worker/src/workers/NodeThreadsWorker.ts +++ b/packages/jest-worker/src/workers/NodeThreadsWorker.ts @@ -170,6 +170,9 @@ export default class ExperimentalWorker } private _onMessage(response: ParentMessage) { + // Ignore messages not intended for us + if (!Array.isArray(response)) return; + let error; switch (response[0]) { @@ -227,7 +230,8 @@ export default class ExperimentalWorker break; default: - throw new TypeError(`Unexpected response from worker: ${response[0]}`); + // Ignore messages not intended for us + break; } } diff --git a/packages/jest-worker/src/workers/__tests__/ChildProcessWorker.test.ts b/packages/jest-worker/src/workers/__tests__/ChildProcessWorker.test.ts index 9e6b513cb22f..90c9e1b07bdd 100644 --- a/packages/jest-worker/src/workers/__tests__/ChildProcessWorker.test.ts +++ b/packages/jest-worker/src/workers/__tests__/ChildProcessWorker.test.ts @@ -363,7 +363,7 @@ it('creates error instances for known errors', () => { expect(callback3.mock.calls[0][0]).toBe(412); }); -it('throws when the child process returns a strange message', () => { +it('does not throw when the child process returns a strange message', () => { const worker = new Worker({ forkOptions: {}, maxRetries: 3, @@ -378,9 +378,14 @@ it('throws when the child process returns a strange message', () => { ); // Type 27 does not exist. - expect(() => { - forkInterface.emit('message', [27]); - }).toThrow(TypeError); + forkInterface.emit('message', [27]); + + forkInterface.emit('message', 'test'); + forkInterface.emit('message', {foo: 'bar'}); + forkInterface.emit('message', 0); + forkInterface.emit('message', null); + forkInterface.emit('message', Symbol('test')); + forkInterface.emit('message', true); }); it('does not restart the child if it cleanly exited', () => { diff --git a/packages/jest-worker/src/workers/__tests__/NodeThreadsWorker.test.ts b/packages/jest-worker/src/workers/__tests__/NodeThreadsWorker.test.ts index 8d633af24e97..7e0e53dc9d50 100644 --- a/packages/jest-worker/src/workers/__tests__/NodeThreadsWorker.test.ts +++ b/packages/jest-worker/src/workers/__tests__/NodeThreadsWorker.test.ts @@ -365,7 +365,7 @@ it('creates error instances for known errors', () => { expect(callback3.mock.calls[0][0]).toBe(412); }); -it('throws when the thread returns a strange message', () => { +it('does not throw when the thread returns a strange message', () => { const worker = new Worker({ forkOptions: {}, maxRetries: 3, @@ -380,10 +380,26 @@ it('throws when the thread returns a strange message', () => { ); // Type 27 does not exist. - expect(() => { - // @ts-expect-error: Testing internal method - worker._worker.emit('message', [27]); - }).toThrow(TypeError); + // @ts-expect-error: Testing internal method + worker._worker.emit('message', [27]); + + // @ts-expect-error: Testing internal method + worker._worker.emit('message', 'test'); + + // @ts-expect-error: Testing internal method + worker._worker.emit('message', {foo: 'bar'}); + + // @ts-expect-error: Testing internal method + worker._worker.emit('message', 0); + + // @ts-expect-error: Testing internal method + worker._worker.emit('message', null); + + // @ts-expect-error: Testing internal method + worker._worker.emit('message', Symbol('test')); + + // @ts-expect-error: Testing internal method + worker._worker.emit('message', true); }); it('does not restart the thread if it cleanly exited', () => { diff --git a/packages/jest/.npmignore b/packages/jest/.npmignore index 80bf61eb922c..bb9fdb98bae7 100644 --- a/packages/jest/.npmignore +++ b/packages/jest/.npmignore @@ -5,3 +5,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/jest/package.json b/packages/jest/package.json index 637efbfccfbe..a96d2cb8a7f9 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -1,7 +1,7 @@ { "name": "jest", "description": "Delightful JavaScript Testing.", - "version": "29.4.1", + "version": "29.4.2", "main": "./build/index.js", "types": "./build/index.d.ts", "exports": { diff --git a/packages/pretty-format/.npmignore b/packages/pretty-format/.npmignore index 8dda7de8f4fe..d6ae93cfed1f 100644 --- a/packages/pretty-format/.npmignore +++ b/packages/pretty-format/.npmignore @@ -6,3 +6,4 @@ src tsconfig.json tsconfig.tsbuildinfo api-extractor.json +.eslintcache diff --git a/packages/pretty-format/package.json b/packages/pretty-format/package.json index 6b3dc726692f..fa5f53cb027e 100644 --- a/packages/pretty-format/package.json +++ b/packages/pretty-format/package.json @@ -1,6 +1,6 @@ { "name": "pretty-format", - "version": "29.4.1", + "version": "29.4.2", "repository": { "type": "git", "url": "https://github.com/facebook/jest.git", diff --git a/packages/test-globals/package.json b/packages/test-globals/package.json index a2bcf3886242..1e7854a83ee6 100644 --- a/packages/test-globals/package.json +++ b/packages/test-globals/package.json @@ -1,6 +1,6 @@ { "name": "@jest/test-globals", - "version": "29.4.1", + "version": "29.4.2", "private": true, "main": "./build/index.js", "types": "./build/index.d.ts", diff --git a/packages/test-utils/package.json b/packages/test-utils/package.json index b064dd1ef7c8..100c824a4b1a 100644 --- a/packages/test-utils/package.json +++ b/packages/test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@jest/test-utils", - "version": "29.4.1", + "version": "29.4.2", "private": true, "main": "./build/index.js", "types": "./build/index.d.ts", @@ -12,6 +12,7 @@ "./package.json": "./package.json" }, "dependencies": { + "@jest/globals": "workspace:^", "@jest/types": "workspace:^", "@types/node": "*", "ansi-regex": "^5.0.1", diff --git a/packages/test-utils/src/ConditionalTest.ts b/packages/test-utils/src/ConditionalTest.ts index badcb0c10ada..879c95bf06fd 100644 --- a/packages/test-utils/src/ConditionalTest.ts +++ b/packages/test-utils/src/ConditionalTest.ts @@ -5,11 +5,10 @@ * LICENSE file in the root directory of this source tree. */ -import semver = require('semver'); -import type {Global} from '@jest/types'; +/* eslint-disable jest/no-focused-tests */ -declare const describe: Global.TestFrameworkGlobals['describe']; -declare const test: Global.TestFrameworkGlobals['test']; +import semver = require('semver'); +import {describe, test} from '@jest/globals'; export function isJestJasmineRun(): boolean { return process.env.JEST_JASMINE === '1'; diff --git a/packages/test-utils/tsconfig.json b/packages/test-utils/tsconfig.json index 110097eb7fef..bcc1e9b530ae 100644 --- a/packages/test-utils/tsconfig.json +++ b/packages/test-utils/tsconfig.json @@ -5,5 +5,9 @@ "outDir": "build" }, "include": ["./src/**/*"], - "references": [{"path": "../jest-types"}, {"path": "../pretty-format"}] + "references": [ + {"path": "../jest-globals"}, + {"path": "../jest-types"}, + {"path": "../pretty-format"} + ] } diff --git a/scripts/buildTs.mjs b/scripts/buildTs.mjs index 2d3dd3c97c07..29f50731bd6b 100644 --- a/scripts/buildTs.mjs +++ b/scripts/buildTs.mjs @@ -10,7 +10,7 @@ import * as os from 'os'; import * as path from 'path'; import chalk from 'chalk'; import execa from 'execa'; -import globby from 'globby'; +import glob from 'glob'; import fs from 'graceful-fs'; import pLimit from 'p-limit'; import stripJsonComments from 'strip-json-comments'; @@ -57,6 +57,12 @@ packagesWithTs.forEach(({packageDir, pkg}) => { } } + // only test files depend on '@jest/test-utils', i.e. it is always a dev dependency + // see additional checks below + if (dep === '@jest/test-utils') { + return false; + } + return true; }) .map(dep => @@ -84,6 +90,60 @@ packagesWithTs.forEach(({packageDir, pkg}) => { )}\nExpected:\n\n${jestDependenciesOfPackage.join('\n')}`, ); } + + let hasJestTestUtils = Object.keys(pkg.dependencies || {}).includes( + '@jest/test-utils', + ); + + if (hasJestTestUtils) { + throw new Error( + chalk.red( + `Package '${pkg.name}' declares '@jest/test-utils' as dependency, but it must be declared as dev dependency`, + ), + ); + } + + hasJestTestUtils = Object.keys(pkg.devDependencies || {}).includes( + '@jest/test-utils', + ); + + const tsConfigPaths = glob.sync('**/__tests__/tsconfig.json', { + absolute: true, + cwd: packageDir, + }); + + const testUtilsReferences = tsConfigPaths.filter(tsConfigPath => { + const tsConfig = JSON.parse( + stripJsonComments(fs.readFileSync(tsConfigPath, 'utf8')), + ); + const references = tsConfig.references.map(({path}) => path); + + return references.some(reference => /test-utils$/.test(reference)); + }); + + if (hasJestTestUtils && testUtilsReferences.length === 0) { + throw new Error( + chalk.red( + `Package '${ + pkg.name + }' declares '@jest/test-utils' as dev dependency, but it is not referenced in:\n\n${tsConfigPaths.join( + '\n', + )}`, + ), + ); + } + + if (!hasJestTestUtils && testUtilsReferences.length > 0) { + throw new Error( + chalk.red( + `Package '${ + pkg.name + }' does not declare '@jest/test-utils' as dev dependency, but it is referenced in:\n\n${testUtilsReferences.join( + '\n', + )}`, + ), + ); + } }); const args = [ @@ -125,12 +185,13 @@ try { await Promise.all( packagesWithTs.map(({packageDir, pkg}) => mutex(async () => { - const buildDir = path.resolve(packageDir, 'build/**/*.d.ts'); - - const globbed = await globby([buildDir]); + const matched = glob.sync('build/**/*.d.ts', { + absolute: true, + cwd: packageDir, + }); const files = await Promise.all( - globbed.map(file => + matched.map(file => Promise.all([file, fs.promises.readFile(file, 'utf8')]), ), ); diff --git a/scripts/checkChangelog.mjs b/scripts/checkChangelog.mjs new file mode 100644 index 000000000000..85cc6d0119b7 --- /dev/null +++ b/scripts/checkChangelog.mjs @@ -0,0 +1,31 @@ +/** + * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +import fs from 'graceful-fs'; + +const linkRegex = + /\[#(\d+)\]\(https:\/\/github.com\/facebook\/jest\/(issues|pull)\/(\d+)\)/g; + +const changelogPath = 'CHANGELOG.md'; +const data = fs.readFileSync(changelogPath, 'utf-8'); + +let error = false; +let lineNumber = 1; +for (const line of data.split('\n')) { + for (const match of line.matchAll(linkRegex)) + if (match[1] !== match[3]) { + const column = match.index + 1; + console.error( + `${changelogPath}:${lineNumber}:${column}: error: ` + + `Link is incorrect: ${match[0]}`, + ); + error = true; + } + ++lineNumber; +} + +process.exit(error ? 1 : 0); diff --git a/website/blog/2016-04-12-jest-11.md b/website/blog/2016-04-12-jest-11.md index af68f07cbc87..230e5f32c7ac 100644 --- a/website/blog/2016-04-12-jest-11.md +++ b/website/blog/2016-04-12-jest-11.md @@ -9,7 +9,7 @@ Today we're announcing a switch to major revisions for Jest with Jest 11.0 being If you are using Jest 0.9 or Jest 0.10 the upgrade should be seamless. All changes from the last few months were rolled into Jest 11.0. -### New in Jest 11.0. +### New in Jest 11.0 #### Babel Integration and Simplified Setup diff --git a/website/blog/2016-07-27-jest-14.md b/website/blog/2016-07-27-jest-14.md index 79babd8fd57c..77ddd42b622b 100644 --- a/website/blog/2016-07-27-jest-14.md +++ b/website/blog/2016-07-27-jest-14.md @@ -63,7 +63,11 @@ You can start using Jest with react-native by running `yarn add --dev jest-react - [Example project](https://github.com/facebook/jest/tree/main/examples/react-native) - [Example pull request for _snowflake_](https://github.com/bartonhammond/snowflake/pull/110), a popular react-native open source library. -_Note: the preset currently only implements the minimal set of configuration necessary to get started with React Native testing. We are hoping for community contributions to improve this project. Please try it and file [issues](https://github.com/facebook/jest/issues) or send pull requests!_ +:::info + +The preset currently only implements the minimal set of configuration necessary to get started with React Native testing. We are hoping for community contributions to improve this project. Please try it and file [issues](https://github.com/facebook/jest/issues) or send pull requests! + +::: ## Why snapshot testing? diff --git a/website/blog/2016-09-01-jest-15.md b/website/blog/2016-09-01-jest-15.md index 0fc020d7aae6..e7afc6369dd7 100644 --- a/website/blog/2016-09-01-jest-15.md +++ b/website/blog/2016-09-01-jest-15.md @@ -27,7 +27,7 @@ We completely rewrote `jest --watch` to be more interactive. It can now switch b Mocks for `ListView`, `TextInput`, `ActivityIndicator`, `ScrollView` and more were added. The existing mocks were updated to use the real implementations and existing snapshots likely have to be updated when upgrading to Jest 15. A `mockComponent` function was added to `jest-react-native` that can be used to mock native components: -``` +```js jest.mock('MyNativeComponent', () => { const jestReactNative = require('jest-react-native'); return jestReactNative.mockComponent('MyNativeComponent'); @@ -60,12 +60,12 @@ This has lead to numerous incompatibilities. We also noticed that at Facebook we Here is an example: -``` +```js const React1 = require('react'); jest.resetModules(); const React2 = require('react'); -React1 !== React2 // These two are separate copies of React. +React1 !== React2; // These two are separate copies of React. ``` The call to `resetModules` wipes away the require cache. A second call to require the same module will result in a new instantiation of the same module and all of its dependencies. This feature is especially useful when dealing with modules that have side effects, like [jest-haste-map](https://github.com/facebook/jest/blob/3bbf32a239fc4aad8cc6928a787f235bd86fecac/packages/jest-haste-map/src/__tests__/index-test.js#L64). diff --git a/website/blog/2016-12-15-2016-in-jest.md b/website/blog/2016-12-15-2016-in-jest.md index 19942581ab08..307c7319930a 100644 --- a/website/blog/2016-12-15-2016-in-jest.md +++ b/website/blog/2016-12-15-2016-in-jest.md @@ -61,20 +61,20 @@ Jest was initially created more than five years ago and as such an old framework - **Breaking:** Replaced `scriptPreprocessor` with the new `transform` option. - **Breaking:** The `testResultsProcessor` function is now required to return the modified results. - **Potentially Breaking:** Properly resolve `snapshotSerializers`, `setupFiles`, `transform`, `testRunner` and `testResultsProcessor` with a resolution algorithm instead of using `path.resolve`. This mainly means that `` is no longer needed for these options. -- **Added: **`pretty-format` and `jest-editor-support` were merged into Jest. +- **Added:** `pretty-format` and `jest-editor-support` were merged into Jest. - **Added:** `expect.any`, `expect.anything`, `expect.objectContaining`, `expect.arrayContaining`, `expect.stringMatching`. -- **Added: **`--testResultsProcessor` is now exposed through the cli. +- **Added:** `--testResultsProcessor` is now exposed through the cli. - **Added:** Implemented file watching in `jest-haste-map`. - **Added:** Usage of Jest in watch mode can be hidden through `JEST_HIDE_USAGE`. - **Added:** `expect.assertions(number)` which will ensure that a specified amount of assertions is made in one test. -- **Added: **`.toMatchSnapshot(?string)` feature to give snapshots a name. -- **Added: **`toMatchObject`, `toHaveProperty` , `toHaveLength` matchers. +- **Added:** `.toMatchSnapshot(?string)` feature to give snapshots a name. +- **Added:** `toMatchObject`, `toHaveProperty` , `toHaveLength` matchers. - **Added:** `expect.extend`. - **Added:** Added support for custom snapshots serializers. - **Added:** Big diffs are now collapsed by default in snapshots and assertions. Added `--expand` (or `-e`) to show the full diff. - **Added:** `jest.resetAllMocks` which replaces `jest.clearAllMocks`. -- **Added: **`--json` now includes information about individual tests inside a file. -- **Fixed: **`test.concurrent` unhandled promise rejections. +- **Added:** `--json` now includes information about individual tests inside a file. +- **Fixed:** `test.concurrent` unhandled promise rejections. - **Fixed:** `babel-plugin-jest-hoist` when using `jest.mock` with three arguments. - **Fixed:** The `JSON` global in `jest-environment-node` now comes from the vm context instead of the parent context. - **Fixed:** Jest does not print stack traces from babel any longer. @@ -84,16 +84,16 @@ Jest was initially created more than five years ago and as such an old framework - **Fixed:** `NaN% Failed` in the OS notification when using `--notify`. - **Fixed:** The first test run without cached timings will now use separate processes instead of running in band. - **Fixed:** `Map`/`Set` comparisons. -- **Fixed: **`test.concurrent` now works with `--testNamePattern`. +- **Fixed:** `test.concurrent` now works with `--testNamePattern`. - **Fixed:** Improved `.toContain` matcher. - **Fixed:** Properly resolve modules with platform extensions on react-native. - **Fixed:** global built in objects in `jest-environment-node` now work properly. - **Fixed:** Create mock objects in the vm context instead of the parent context. -- **Fixed: **`.babelrc` is now part of the transform cache key in `babel-jest`. +- **Fixed:** `.babelrc` is now part of the transform cache key in `babel-jest`. - **Fixed:** docblock parsing with haste modules. - **Fixed:** Exit with the proper code when the coverage threshold is not reached. -- **Fixed: **Jest now clears the entire scrollback in watch mode. -- **Deprecated: **`jest-react-native` was deprecated and now forwards `react-native`. +- **Fixed:** Jest now clears the entire scrollback in watch mode. +- **Deprecated:** `jest-react-native` was deprecated and now forwards `react-native`. ## Plans for Jest in H1 2017 @@ -102,7 +102,7 @@ Six months ago [we shared our plans for Jest](/blog/2016/07/27/jest-14#what-s-ne - **Instant feedback:** [Nuclide](https://nuclide.io/) integration and an improved and [faster watch mode](https://github.com/facebook/jest/pull/2324#issuecomment-267149669). - **Improved developer experience:** new mocking APIs and improved assertions. - **Better performance and memory usage:** analyze Jest and be more conscious about efficiency. -- **Snapshot Improvements: **snapshot approval mode, syntax highlighting and improved `react-test-renderer` APIs. +- **Snapshot Improvements:** snapshot approval mode, syntax highlighting and improved `react-test-renderer` APIs. - **Website:** We'll overhaul the website and documentation and add a Jest cheat sheet. We won't be providing timelines or estimates for these features and we may not actually get to all of these things. If you'd like to help make these things a reality, send us issues and pull requests with your ideas and let's work on improving Jest together in 2017. diff --git a/website/blog/2017-02-21-jest-19-immersive-watch-mode-test-platform-improvements.md b/website/blog/2017-02-21-jest-19-immersive-watch-mode-test-platform-improvements.md index b35b32016f50..372b43bfe026 100644 --- a/website/blog/2017-02-21-jest-19-immersive-watch-mode-test-platform-improvements.md +++ b/website/blog/2017-02-21-jest-19-immersive-watch-mode-test-platform-improvements.md @@ -23,7 +23,7 @@ We made a couple of changes to the snapshot format. We don't make changes like t Before: -``` +```js exports[`test snap 1`] = `

@@ -37,7 +37,7 @@ exports[`test snap 1`] = ` After (no “test” prefix, better JSX rendering, version header): -``` +```js // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`snap 1`] = ` diff --git a/website/blog/2017-05-06-jest-20-delightful-testing-multi-project-runner.md b/website/blog/2017-05-06-jest-20-delightful-testing-multi-project-runner.md index a17f26439b59..aa7ed8bbe447 100644 --- a/website/blog/2017-05-06-jest-20-delightful-testing-multi-project-runner.md +++ b/website/blog/2017-05-06-jest-20-delightful-testing-multi-project-runner.md @@ -19,7 +19,7 @@ Jest is now collapsing the usage guide after the first test run to save vertical Further, we completely overhauled how the configuration system works inside of Jest. You can now pass any configuration option through the CLI to overwrite the ones specified in your configuration file. Along with that, we changed Jest to look for a `jest.config.js` file by default which means you are now able to define a Jest configuration using JavaScript as well as being able to configure it through `package.json` like before. Through the addition of all these new features, you are now able to combine Jest in more powerful ways than ever before. For example, if you would like to find out which tests Jest would run given a set of changed files from a commit across multiple projects in a monorepo, you can combine cli arguments like this now: -``` +```bash $ jest --projects projectA projectB --listTests --findRelatedTests projectA/banana.js projectB/kiwi.js [ "projectA/banana.test.js", diff --git a/website/blog/2018-06-27-supporting-jest-open-source.md b/website/blog/2018-06-27-supporting-jest-open-source.md index c3ec31ad6adb..b15d24a171ea 100644 --- a/website/blog/2018-06-27-supporting-jest-open-source.md +++ b/website/blog/2018-06-27-supporting-jest-open-source.md @@ -17,13 +17,13 @@ In this post we'll outline what the Jest Open Collective is, the structure, and -# The Jest Open Collective +## The Jest Open Collective ![Banner image for Jest Open Collective](/img/blog/collective.png) Open Collective is a platform to manage groups of people transparently. Jest joins projects like [webpack](https://opencollective.com/webpack), [Babel](https://opencollective.com/babel), [Mocha](https://opencollective.com/mochajs), [Preact](https://opencollective.com/preact), [Vue](https://opencollective.com/vuejs), and many more in supporting the open source community through the Open Collective platform. -## What is the Jest Open Collective +### What is the Jest Open Collective The Jest Open Collective is a group of open source contributors who operate in full transparency to: @@ -31,7 +31,7 @@ The Jest Open Collective is a group of open source contributors who operate in f - Approve expenses submitted by the community - Give everyone visibility on the budget -## What is the structure of the collective +### What is the structure of the collective The Jest Open Collective is currently managed by three non-Facebook core contributors from the open source community: @@ -43,15 +43,15 @@ Michal has been an active Jest contributor since September 2016, Simen joined th There are two levels of support for the collective: Backer and Sponsor. -### Backers +#### Backers Backers of the collective are individuals contributing at least \$2/month. We'll include a list of backers on the Jest homepage, README on github/yarn/npm, and Contributors page. -### Sponsors +#### Sponsors -Sponsors of the collective are individuals and organizations contributing at least \$100/month. We'll place sponsor logos with a link to their site on the Jest homepage, README on github/yarn/npm, and Contributors page. +Sponsors of the collective are individuals and organizations contributing at least $100/month. We'll place sponsor logos with a link to their site on the Jest homepage, README on github/yarn/npm, and Contributors page. -## What is the goal of the collective +### What is the goal of the collective The goal of the collective is to support the work of open source contributors to Jest in order to make testing delightful. @@ -64,7 +64,7 @@ To achieve that goal, we will use the funds to: This is just the beginning and we're committed to getting this right. If you have ideas on how else we can support the community, or feedback on the structure of the collective, please reach out to us on [twitter](https://twitter.com/fbjest)! -# Thank You +## Thank You Finally, thank you to everyone who contributes to the Jest community and open source in general. We are incredibly grateful that we get the opportunity to work on improving JavaScript testing together. diff --git a/website/blog/2019-01-25-jest-24-refreshing-polished-typescript-friendly.md b/website/blog/2019-01-25-jest-24-refreshing-polished-typescript-friendly.md index 21ff728b565e..2083a34edebe 100644 --- a/website/blog/2019-01-25-jest-24-refreshing-polished-typescript-friendly.md +++ b/website/blog/2019-01-25-jest-24-refreshing-polished-typescript-friendly.md @@ -27,7 +27,11 @@ If you want to run typechecks while you test, you should use [`ts-jest`](https:/ See [the docs](/docs/getting-started#using-typescript) for more details. -_Note that if you for whatever reason cannot upgrade to Babel 7, you can still use Jest 24 with `babel@6` as long as you keep `babel-jest` at version 23._ +:::tip + +If you for whatever reason cannot upgrade to Babel 7, you can still use Jest 24 with `babel@6` as long as you keep `babel-jest` at version 23. + +::: ## `test.todo` diff --git a/website/blog/2022-08-25-jest-29.md b/website/blog/2022-08-25-jest-29.md index e8014f818388..9ab4001bc644 100644 --- a/website/blog/2022-08-25-jest-29.md +++ b/website/blog/2022-08-25-jest-29.md @@ -9,7 +9,7 @@ Jest 29 is here, just a few short months after Jest 28. As mentioned in the [Jes -The only breaking changes that should be noticable are: +The only breaking changes that should be noticeable are: - Node versions 12 and 17 are dropped, both of which are EOL - The `snapshotFormat` property is changed to: diff --git a/website/package.json b/website/package.json index e31270dfe28f..f41f65ea38fb 100644 --- a/website/package.json +++ b/website/package.json @@ -49,7 +49,7 @@ "devDependencies": { "@babel/core": "^7.11.6", "@crowdin/cli": "^3.5.2", - "@docusaurus/module-type-aliases": "2.2.0", + "@docusaurus/module-type-aliases": "^2.0.0", "@tsconfig/docusaurus": "^1.0.5", "@types/react": "^17.0.3", "graphql": "^16.3.0", diff --git a/website/src/pages/index.js b/website/src/pages/index.js index 2d9c8ccdae0a..5d0e184d935f 100755 --- a/website/src/pages/index.js +++ b/website/src/pages/index.js @@ -251,12 +251,7 @@ class Card extends React.Component { class Hand extends React.Component { render() { const cards = [0, 1, 2, 3, 4].map(i => ); - return ( -
- {cards} -