From 02b8d4fc46a58de4a509d6e3c17182ee93786a3d Mon Sep 17 00:00:00 2001 From: Matthew Runyon Date: Fri, 2 Jun 2023 16:37:51 -0500 Subject: [PATCH] build: Consume built packages in apps instead of bundling from src (#1339) This addresses our sprint retro item of a test to detect packaging issues. By changing the apps to not alias to src files in build mode, the DHC code-studio should see packages the same way the enterprise web-ui build will. This should help detect most packaging issues since the majority of the code in DHC packages are consumed by code-studio. This seems to make the bundle slightly larger. Probably Vite was able to de-dupe more when bundling all of the packages from src As a test, cherry-pick https://github.com/deephaven/web-client-ui/commit/d1838d7151e31de1e26da8b60f336e991bb25404 onto this branch and run build. Should get the same error mentioned in #1334 when you run build, but not when you run dev mode --- package.json | 4 ++-- packages/code-studio/vite.config.ts | 31 ++++++++++++++++------------- packages/embed-chart/vite.config.ts | 31 ++++++++++++++++------------- packages/embed-grid/vite.config.ts | 31 ++++++++++++++++------------- 4 files changed, 53 insertions(+), 44 deletions(-) diff --git a/package.json b/package.json index bce248ca88..0301c93dfc 100644 --- a/package.json +++ b/package.json @@ -24,8 +24,8 @@ "clean": "run-s clean:*", "types": "tsc --build", "watch:types": "tsc --build --watch --preserveWatchOutput", - "build": "run-s build:necessary types build:all", - "build:all": "lerna run build --ignore=@deephaven/icons --stream", + "build": "run-s build:necessary types build:packages build:apps", + "build:apps": "lerna run --scope=@deephaven/{code-studio,embed-chart,embed-grid} build", "build:app": "lerna run --scope=@deephaven/code-studio build", "build:embed-chart": "lerna run --scope=@deephaven/embed-chart build", "build:embed-grid": "lerna run --scope=@deephaven/embed-grid build", diff --git a/packages/code-studio/vite.config.ts b/packages/code-studio/vite.config.ts index b79b9012c0..f3c67f8ac1 100644 --- a/packages/code-studio/vite.config.ts +++ b/packages/code-studio/vite.config.ts @@ -79,20 +79,23 @@ export default defineConfig(({ mode }) => { }, resolve: { dedupe: ['react', 'react-redux', 'redux'], - alias: [ - { - find: /^@deephaven\/(.*)\/scss\/(.*)/, - replacement: `${packagesDir}/$1/scss/$2`, - }, - { - find: /^@deephaven\/icons$/, - replacement: `${packagesDir}/icons/dist/index.es.js`, - }, - { - find: /^@deephaven\/(.*)/, - replacement: `${packagesDir}/$1/src`, - }, - ], + alias: + mode === 'development' + ? [ + { + find: /^@deephaven\/(.*)\/scss\/(.*)/, + replacement: `${packagesDir}/$1/scss/$2`, + }, + { + find: /^@deephaven\/icons$/, + replacement: `${packagesDir}/icons/dist/index.es.js`, + }, + { + find: /^@deephaven\/(.*)/, + replacement: `${packagesDir}/$1/src`, + }, + ] + : [], }, build: { outDir: path.resolve(__dirname, env.VITE_BUILD_PATH), diff --git a/packages/embed-chart/vite.config.ts b/packages/embed-chart/vite.config.ts index 4a8d57b4cf..15ee1c9fb6 100644 --- a/packages/embed-chart/vite.config.ts +++ b/packages/embed-chart/vite.config.ts @@ -56,20 +56,23 @@ export default defineConfig(({ mode }) => { proxy, }, resolve: { - alias: [ - { - find: /^@deephaven\/(.*)\/scss\/(.*)/, - replacement: `${packagesDir}/$1/scss/$2`, - }, - { - find: /^@deephaven\/icons$/, - replacement: `${packagesDir}/icons/dist/index.es.js`, - }, - { - find: /^@deephaven\/(.*)/, - replacement: `${packagesDir}/$1/src`, - }, - ], + alias: + mode === 'development' + ? [ + { + find: /^@deephaven\/(.*)\/scss\/(.*)/, + replacement: `${packagesDir}/$1/scss/$2`, + }, + { + find: /^@deephaven\/icons$/, + replacement: `${packagesDir}/icons/dist/index.es.js`, + }, + { + find: /^@deephaven\/(.*)/, + replacement: `${packagesDir}/$1/src`, + }, + ] + : [], }, build: { outDir: env.VITE_BUILD_PATH, diff --git a/packages/embed-grid/vite.config.ts b/packages/embed-grid/vite.config.ts index 70d0dfe230..c1b5f0a330 100644 --- a/packages/embed-grid/vite.config.ts +++ b/packages/embed-grid/vite.config.ts @@ -56,20 +56,23 @@ export default defineConfig(({ mode }) => { proxy, }, resolve: { - alias: [ - { - find: /^@deephaven\/(.*)\/scss\/(.*)/, - replacement: `${packagesDir}/$1/scss/$2`, - }, - { - find: /^@deephaven\/icons$/, - replacement: `${packagesDir}/icons/dist/index.es.js`, - }, - { - find: /^@deephaven\/(.*)/, - replacement: `${packagesDir}/$1/src`, - }, - ], + alias: + mode === 'development' + ? [ + { + find: /^@deephaven\/(.*)\/scss\/(.*)/, + replacement: `${packagesDir}/$1/scss/$2`, + }, + { + find: /^@deephaven\/icons$/, + replacement: `${packagesDir}/icons/dist/index.es.js`, + }, + { + find: /^@deephaven\/(.*)/, + replacement: `${packagesDir}/$1/src`, + }, + ] + : [], }, build: { outDir: env.VITE_BUILD_PATH,