From bb77912aeed624f5459c7c1a5459ad03ab820918 Mon Sep 17 00:00:00 2001 From: Pavel Feldman Date: Wed, 13 Oct 2021 18:27:50 -0800 Subject: [PATCH] chore: don't include babel compiled files in webpack bundles (#9491) --- babel.config.json | 3 +-- package-lock.json | 4 ---- .../src/server/supplements/recorder/recorderApp.ts | 2 +- .../src/server/trace/viewer/traceViewer.ts | 2 +- .../playwright-core/src/web/htmlReport/webpack.config.js | 2 +- .../playwright-core/src/web/recorder/webpack.config.js | 2 +- .../src/web/traceViewer/webpack-sw.config.js | 2 +- .../playwright-core/src/web/traceViewer/webpack.config.js | 4 ++-- packages/playwright-test/src/reporters/html.ts | 4 ++-- utils/build/build.js | 8 +++++++- 10 files changed, 17 insertions(+), 16 deletions(-) diff --git a/babel.config.json b/babel.config.json index db3716e3ae..cb1cad7f3a 100644 --- a/babel.config.json +++ b/babel.config.json @@ -12,7 +12,6 @@ "@babel/plugin-transform-modules-commonjs" ], "ignore": [ - "**/*.d.ts", - "packages/playwright-core/src/injected/**/*" + "**/*.d.ts" ] } diff --git a/package-lock.json b/package-lock.json index 6cf68d8766..32a6713da4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11382,9 +11382,6 @@ "bin": { "playwright": "cli.js" }, - "devDependencies": { - "@zip.js/zip.js": "^2.3.17" - }, "engines": { "node": ">=12" } @@ -17948,7 +17945,6 @@ "playwright-core": { "version": "file:packages/playwright-core", "requires": { - "@zip.js/zip.js": "^2.3.17", "commander": "^8.2.0", "debug": "^4.1.1", "extract-zip": "^2.0.1", diff --git a/packages/playwright-core/src/server/supplements/recorder/recorderApp.ts b/packages/playwright-core/src/server/supplements/recorder/recorderApp.ts index f59f2b2372..39a32e04fd 100644 --- a/packages/playwright-core/src/server/supplements/recorder/recorderApp.ts +++ b/packages/playwright-core/src/server/supplements/recorder/recorderApp.ts @@ -59,7 +59,7 @@ export class RecorderApp extends EventEmitter { await this._page._setServerRequestInterceptor(async route => { if (route.request().url().startsWith('https://playwright/')) { const uri = route.request().url().substring('https://playwright/'.length); - const file = require.resolve('../../../web/recorder/' + uri); + const file = require.resolve('../../../webpack/recorder/' + uri); const buffer = await fs.promises.readFile(file); await route.fulfill({ status: 200, diff --git a/packages/playwright-core/src/server/trace/viewer/traceViewer.ts b/packages/playwright-core/src/server/trace/viewer/traceViewer.ts index a452d48d7c..7b010ff489 100644 --- a/packages/playwright-core/src/server/trace/viewer/traceViewer.ts +++ b/packages/playwright-core/src/server/trace/viewer/traceViewer.ts @@ -38,7 +38,7 @@ export async function showTraceViewer(traceUrl: string, browserName: string, hea server.routePrefix('/', (request, response) => { const relativePath = new URL('http://localhost' + request.url!).pathname; - const absolutePath = path.join(__dirname, '..', '..', '..', 'web', 'traceViewer', ...relativePath.split('/')); + const absolutePath = path.join(__dirname, '..', '..', '..', 'webpack', 'traceViewer', ...relativePath.split('/')); return server.serveFile(response, absolutePath); }); diff --git a/packages/playwright-core/src/web/htmlReport/webpack.config.js b/packages/playwright-core/src/web/htmlReport/webpack.config.js index ef05ece662..eac37edbe3 100644 --- a/packages/playwright-core/src/web/htmlReport/webpack.config.js +++ b/packages/playwright-core/src/web/htmlReport/webpack.config.js @@ -15,7 +15,7 @@ module.exports = { output: { globalObject: 'self', filename: '[name].bundle.js', - path: path.resolve(__dirname, '../../../lib/web/htmlReport') + path: path.resolve(__dirname, '../../../lib/webpack/htmlReport') }, module: { rules: [ diff --git a/packages/playwright-core/src/web/recorder/webpack.config.js b/packages/playwright-core/src/web/recorder/webpack.config.js index 96c61fb25e..2d6760c2c2 100644 --- a/packages/playwright-core/src/web/recorder/webpack.config.js +++ b/packages/playwright-core/src/web/recorder/webpack.config.js @@ -15,7 +15,7 @@ module.exports = { output: { globalObject: 'self', filename: '[name].bundle.js', - path: path.resolve(__dirname, '../../../lib/web/recorder') + path: path.resolve(__dirname, '../../../lib/webpack/recorder') }, module: { rules: [ diff --git a/packages/playwright-core/src/web/traceViewer/webpack-sw.config.js b/packages/playwright-core/src/web/traceViewer/webpack-sw.config.js index 9f093dcb58..9d0195ae3c 100644 --- a/packages/playwright-core/src/web/traceViewer/webpack-sw.config.js +++ b/packages/playwright-core/src/web/traceViewer/webpack-sw.config.js @@ -13,7 +13,7 @@ module.exports = { output: { globalObject: 'self', filename: '[name].bundle.js', - path: path.resolve(__dirname, '../../../lib/web/traceViewer') + path: path.resolve(__dirname, '../../../lib/webpack/traceViewer') }, module: { rules: [ diff --git a/packages/playwright-core/src/web/traceViewer/webpack.config.js b/packages/playwright-core/src/web/traceViewer/webpack.config.js index 2a52cc3fe6..4ebc473298 100644 --- a/packages/playwright-core/src/web/traceViewer/webpack.config.js +++ b/packages/playwright-core/src/web/traceViewer/webpack.config.js @@ -15,7 +15,7 @@ module.exports = { output: { globalObject: 'self', filename: '[name].bundle.js', - path: path.resolve(__dirname, '../../../lib/web/traceViewer') + path: path.resolve(__dirname, '../../../lib/webpack/traceViewer') }, module: { rules: [ @@ -45,7 +45,7 @@ module.exports = { patterns: [ { from: path.resolve(__dirname, '../../../../../node_modules/@zip.js/zip.js/dist/zip-no-worker-inflate.min.js'), - to: path.resolve(__dirname, '../../../lib/web/traceViewer/zip.min.js') + to: 'zip.min.js' }, ], }), diff --git a/packages/playwright-test/src/reporters/html.ts b/packages/playwright-test/src/reporters/html.ts index dc4231a77c..dafef1eae8 100644 --- a/packages/playwright-test/src/reporters/html.ts +++ b/packages/playwright-test/src/reporters/html.ts @@ -151,12 +151,12 @@ class HtmlBuilder { fs.mkdirSync(this._dataFolder, { recursive: true }); // Copy app. - const appFolder = path.join(require.resolve('playwright-core'), '..', 'lib', 'web', 'htmlReport'); + const appFolder = path.join(require.resolve('playwright-core'), '..', 'lib', 'webpack', 'htmlReport'); for (const file of fs.readdirSync(appFolder)) fs.copyFileSync(path.join(appFolder, file), path.join(this._reportFolder, file)); // Copy trace viewer. - const traceViewerFolder = path.join(require.resolve('playwright-core'), '..', 'lib', 'web', 'traceViewer'); + const traceViewerFolder = path.join(require.resolve('playwright-core'), '..', 'lib', 'webpack', 'traceViewer'); const traceViewerTargetFolder = path.join(this._reportFolder, 'trace'); fs.mkdirSync(traceViewerTargetFolder, { recursive: true }); // TODO (#9471): remove file filter when the babel build is fixed. diff --git a/utils/build/build.js b/utils/build/build.js index 7080135551..3ff67a0f25 100644 --- a/utils/build/build.js +++ b/utils/build/build.js @@ -143,7 +143,13 @@ for (const packageDir of packages) { continue; steps.push({ command: 'npx', - args: ['babel', ...(watchMode ? ['-w', '--source-maps'] : []), '--extensions', '.ts', '--out-dir', path.join(packageDir, 'lib'), path.join(packageDir, 'src')], + args: [ + 'babel', + ...(watchMode ? ['-w', '--source-maps'] : []), + '--extensions', '.ts', + '--out-dir', path.join(packageDir, 'lib'), + '--ignore', 'packages/playwright-core/src/server/injected/**/*', + path.join(packageDir, 'src')], shell: true, }); }