From 5da08f34a6b3853ae7cf4c64625d7b8b7cd982f7 Mon Sep 17 00:00:00 2001 From: Tayeeb Hasan Date: Sun, 11 Oct 2020 16:11:18 +0530 Subject: [PATCH 1/7] default export to named export - JestWorker --- packages/jest-haste-map/src/index.ts | 2 +- packages/jest-reporters/src/coverage_reporter.ts | 2 +- packages/jest-runner/src/index.ts | 2 +- packages/jest-worker/src/index.ts | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/jest-haste-map/src/index.ts b/packages/jest-haste-map/src/index.ts index f0e4aa25e605..b9e3b63cc933 100644 --- a/packages/jest-haste-map/src/index.ts +++ b/packages/jest-haste-map/src/index.ts @@ -16,7 +16,7 @@ import type {Stats} from 'graceful-fs'; import {NodeWatcher, Watcher as SaneWatcher} from 'sane'; import type {Config} from '@jest/types'; import serializer from 'jest-serializer'; -import Worker from 'jest-worker'; +import {Worker} from 'jest-worker'; import {escapePathForRegex} from 'jest-regex-util'; import {getSha1, worker} from './worker'; import getMockName from './getMockName'; diff --git a/packages/jest-reporters/src/coverage_reporter.ts b/packages/jest-reporters/src/coverage_reporter.ts index 9e1918bc8726..8ced944c0b87 100644 --- a/packages/jest-reporters/src/coverage_reporter.ts +++ b/packages/jest-reporters/src/coverage_reporter.ts @@ -21,7 +21,7 @@ import chalk = require('chalk'); import istanbulCoverage = require('istanbul-lib-coverage'); import libSourceMaps = require('istanbul-lib-source-maps'); import {mergeProcessCovs} from '@bcoe/v8-coverage'; -import Worker from 'jest-worker'; +import {Worker} from 'jest-worker'; import glob = require('glob'); import v8toIstanbul = require('v8-to-istanbul'); import type {RawSourceMap} from 'source-map'; diff --git a/packages/jest-runner/src/index.ts b/packages/jest-runner/src/index.ts index b74d6842dbfd..5409594991da 100644 --- a/packages/jest-runner/src/index.ts +++ b/packages/jest-runner/src/index.ts @@ -11,7 +11,7 @@ import exit = require('exit'); import chalk = require('chalk'); import Emittery = require('emittery'); import throat from 'throat'; -import Worker, {PromiseWithCustomMessage} from 'jest-worker'; +import {PromiseWithCustomMessage, Worker} from 'jest-worker'; import {deepCyclicCopy} from 'jest-util'; import runTest from './runTest'; import type {SerializableResolver, worker} from './testWorker'; diff --git a/packages/jest-worker/src/index.ts b/packages/jest-worker/src/index.ts index af430beac0c2..4d9e6d1cd76c 100644 --- a/packages/jest-worker/src/index.ts +++ b/packages/jest-worker/src/index.ts @@ -67,7 +67,7 @@ function getExposedMethods( * processed by the same worker. This is specially useful if your workers * are caching results. */ -export default class JestWorker { +export class Worker { private _ending: boolean; private _farm: Farm; private _options: FarmOptions; From 798dacd102f01c27c74325576cb6b75c2486e3df Mon Sep 17 00:00:00 2001 From: Olufemi Anjorin Date: Sun, 11 Oct 2020 16:36:01 +0100 Subject: [PATCH 2/7] Fix-export-default-worker --- packages/jest-worker/src/__tests__/index.test.js | 2 +- packages/jest-worker/src/__tests__/process-integration.test.js | 2 +- packages/jest-worker/src/__tests__/thread-integration.test.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/jest-worker/src/__tests__/index.test.js b/packages/jest-worker/src/__tests__/index.test.js index 5fbd5293fef5..ec6f091289d5 100644 --- a/packages/jest-worker/src/__tests__/index.test.js +++ b/packages/jest-worker/src/__tests__/index.test.js @@ -52,7 +52,7 @@ beforeEach(() => { virtual: true, }); - Farm = require('..').default; + Farm = require('..').Worker; Queue = require('../Farm').default; WorkerPool = require('../WorkerPool').default; }); diff --git a/packages/jest-worker/src/__tests__/process-integration.test.js b/packages/jest-worker/src/__tests__/process-integration.test.js index 11e435a1f1bd..9be8c445de9f 100644 --- a/packages/jest-worker/src/__tests__/process-integration.test.js +++ b/packages/jest-worker/src/__tests__/process-integration.test.js @@ -56,7 +56,7 @@ describe('Jest Worker Integration', () => { }, })); - Farm = require('../index').default; + Farm = require('../index').Worker; }); afterEach(() => { diff --git a/packages/jest-worker/src/__tests__/thread-integration.test.js b/packages/jest-worker/src/__tests__/thread-integration.test.js index 30f8d6241d04..e6175c19cc87 100644 --- a/packages/jest-worker/src/__tests__/thread-integration.test.js +++ b/packages/jest-worker/src/__tests__/thread-integration.test.js @@ -57,7 +57,7 @@ describe('Jest Worker Process Integration', () => { }; }); - Farm = require('../index').default; + Farm = require('../index').Worker; }); afterEach(() => { From 402ddde27eb53faca11b29d71290ede9d629b59f Mon Sep 17 00:00:00 2001 From: Olufemi Anjorin Date: Mon, 12 Oct 2020 00:09:24 +0100 Subject: [PATCH 3/7] Fix:jest-worker:should-not-expose--babel-interop --- CHANGELOG.md | 2 +- packages/jest-haste-map/src/__tests__/index.test.js | 8 ++++---- packages/jest-runner/src/__tests__/testRunner.test.ts | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 77dbc93912c2..e7ba38327bcf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ ### Features ### Fixes - +- `[jest-worker, jest-haste-map, jest-runner, jest-reporters]` Fix: jest-worker: should not expose `.default` babel interop ([#10623] (https://github.com/facebook/jest/pull/10623)) - `[jest-runner, jest-runtime]` fix: `require.main` undefined with `createRequire()` ([#10610](https://github.com/facebook/jest/pull/10610)) - `[jest-validate]` Show suggestion only when unrecognized cli param is longer than 1 character ([#10604](https://github.com/facebook/jest/pull/10604)) - `[jest-validate]` Validate `testURL` as CLI option ([#10595](https://github.com/facebook/jest/pull/10595)) diff --git a/packages/jest-haste-map/src/__tests__/index.test.js b/packages/jest-haste-map/src/__tests__/index.test.js index 0ddddf58895b..18e35f9c7878 100644 --- a/packages/jest-haste-map/src/__tests__/index.test.js +++ b/packages/jest-haste-map/src/__tests__/index.test.js @@ -19,8 +19,8 @@ jest.mock('child_process', () => ({ execSync() {}, })); -jest.mock('jest-worker', () => - jest.fn(worker => { +jest.mock('jest-worker', () => ({ + Worker: jest.fn(worker => { mockWorker = jest.fn((...args) => require(worker).worker(...args)); mockEnd = jest.fn(); @@ -29,7 +29,7 @@ jest.mock('jest-worker', () => worker: mockWorker, }; }), -); +})); jest.mock('../crawlers/node'); jest.mock('../crawlers/watchman', () => @@ -1201,7 +1201,7 @@ describe('HasteMap', () => { }); it('distributes work across workers', () => { - const jestWorker = require('jest-worker'); + const jestWorker = require('jest-worker').Worker; const path = require('path'); const dependencyExtractor = path.join(__dirname, 'dependencyExtractor.js'); return new HasteMap({ diff --git a/packages/jest-runner/src/__tests__/testRunner.test.ts b/packages/jest-runner/src/__tests__/testRunner.test.ts index df266697abaf..16fd75e183ad 100644 --- a/packages/jest-runner/src/__tests__/testRunner.test.ts +++ b/packages/jest-runner/src/__tests__/testRunner.test.ts @@ -11,8 +11,8 @@ import TestRunner from '../index'; let mockWorkerFarm; -jest.mock('jest-worker', () => - jest.fn( +jest.mock('jest-worker', () => ({ + Worker: jest.fn( worker => (mockWorkerFarm = { end: jest.fn().mockResolvedValue({forceExited: false}), @@ -21,7 +21,7 @@ jest.mock('jest-worker', () => worker: jest.fn((data, callback) => require(worker)(data, callback)), }), ), -); +})); jest.mock('../testWorker', () => {}); From c77d74f6decd7d350b3abbb63142bcca3d080677 Mon Sep 17 00:00:00 2001 From: Olufemi Anjorin Date: Mon, 12 Oct 2020 07:04:13 +0100 Subject: [PATCH 4/7] Fix:jest-worker:should-not-expose--babel-interop --- packages/jest-worker/src/__performance_tests__/test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/jest-worker/src/__performance_tests__/test.js b/packages/jest-worker/src/__performance_tests__/test.js index 3a688eae05e4..53dbc688b76f 100644 --- a/packages/jest-worker/src/__performance_tests__/test.js +++ b/packages/jest-worker/src/__performance_tests__/test.js @@ -10,7 +10,7 @@ const assert = require('assert'); // eslint-disable-next-line import/no-extraneous-dependencies const workerFarm = require('worker-farm'); -const JestWorker = require('../../build').default; +const JestWorker = require('../../build').Worker; // Typical tests: node --expose-gc test.js empty 100000 // node --expose-gc test.js loadTest 10000 From 9d273ff42d09d37024652424c547bf151560f92e Mon Sep 17 00:00:00 2001 From: Olufemi Anjorin Date: Mon, 12 Oct 2020 10:03:41 +0100 Subject: [PATCH 5/7] Fix:jest-worker:should-not-expose--babel-interop --- packages/jest-worker/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/jest-worker/README.md b/packages/jest-worker/README.md index d0523c940040..38b7dd60b89b 100644 --- a/packages/jest-worker/README.md +++ b/packages/jest-worker/README.md @@ -181,7 +181,7 @@ This example covers the usage with a `computeWorkerKey` method: ### File `parent.js` ```javascript -import JestWorker from 'jest-worker'; +import {Worker as JestWorker} from 'jest-worker'; async function main() { const myWorker = new JestWorker(require.resolve('./Worker'), { From 333c33463468e5ee1a91c02bc68c916f009a0d50 Mon Sep 17 00:00:00 2001 From: Olufemi Anjorin Date: Mon, 12 Oct 2020 10:42:27 +0100 Subject: [PATCH 6/7] fix-export-default-worker --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e8efbf540135..8d7ef7a41883 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,8 +12,8 @@ ### Features -- `[jest-runtime]` add support for dynamic `import()` from CommonJS ([#10620](https://github.com/facebook/jest/pull/10620)) - `[jest-worker, jest-haste-map, jest-runner, jest-reporters]` Fix: jest-worker: should not expose `.default` babel interop ([#10623] (https://github.com/facebook/jest/pull/10623)) +- `[jest-runtime]` add support for dynamic `import()` from CommonJS ([#10620](https://github.com/facebook/jest/pull/10620)) ### Fixes From def3b01624592559af9e784d2bfbde9a639195c0 Mon Sep 17 00:00:00 2001 From: Olufemi Anjorin Date: Mon, 12 Oct 2020 11:24:51 +0100 Subject: [PATCH 7/7] fix-export-default-worker --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8d7ef7a41883..e4c4e43bb957 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ### Features +- `[jest-worker, jest-haste-map, jest-runner, jest-reporters]` Fix: jest-worker: should not expose `.default` babel interop ([#10623] (https://github.com/facebook/jest/pull/10623)) + ### Fixes ### Chore & Maintenance @@ -12,7 +14,6 @@ ### Features -- `[jest-worker, jest-haste-map, jest-runner, jest-reporters]` Fix: jest-worker: should not expose `.default` babel interop ([#10623] (https://github.com/facebook/jest/pull/10623)) - `[jest-runtime]` add support for dynamic `import()` from CommonJS ([#10620](https://github.com/facebook/jest/pull/10620)) ### Fixes