diff --git a/.github/workflows/size-limit.yml b/.github/workflows/size-limit.yml index cb532868e3..8ced8ee037 100644 --- a/.github/workflows/size-limit.yml +++ b/.github/workflows/size-limit.yml @@ -1,4 +1,4 @@ -name: "size" +name: "Bundle Size check @excalidraw/excalidraw" on: pull_request: branches: @@ -15,12 +15,16 @@ jobs: uses: actions/setup-node@v3 with: node-version: 18.x - - name: Install and build + - name: Install run: yarn --frozen-lockfile + - name: Install in src/packages/excalidraw + run: yarn --frozen-lockfile + working-directory: src/packages/excalidraw env: CI: true - uses: andresz1/size-limit-action@v1 with: github_token: ${{ secrets.GITHUB_TOKEN }} - build_script: build:app + build_script: build:umd skip_step: install + directory: src/packages/excalidraw diff --git a/package.json b/package.json index 54c45c9a5c..a2fece2557 100644 --- a/package.json +++ b/package.json @@ -145,15 +145,6 @@ "test:coverage": "react-scripts test --passWithNoTests --coverage --watchAll", "autorelease": "node scripts/autorelease.js", "prerelease": "node scripts/prerelease.js", - "release": "node scripts/release.js", - "size": "yarn build:app && size-limit" - }, - "size-limit": [ - { - "limit": "500kb", - "path": [ - "build/static/js/*.js" - ] - } - ] + "release": "node scripts/release.js" + } } diff --git a/src/packages/excalidraw/.size-limit.json b/src/packages/excalidraw/.size-limit.json new file mode 100644 index 0000000000..e95dd1758c --- /dev/null +++ b/src/packages/excalidraw/.size-limit.json @@ -0,0 +1,16 @@ +[ + { + "path": "dist/excalidraw.production.min.js", + "limit": "285 kB" + }, + { + "path": "dist/excalidraw-assets/locales", + "name": "dist/excalidraw-assets/locales", + "limit": "270 kB" + }, + { + "path": "dist/excalidraw-assets/vendor-*.js", + "name": "dist/excalidraw-assets/vendor*.js", + "limit": "30 kB" + } +] diff --git a/src/packages/excalidraw/package.json b/src/packages/excalidraw/package.json index 27ce245ee6..042fbd58c2 100644 --- a/src/packages/excalidraw/package.json +++ b/src/packages/excalidraw/package.json @@ -80,6 +80,7 @@ "pack": "yarn build:umd && yarn pack", "start": "webpack serve --config webpack.dev-server.config.js", "install:deps": "yarn install --frozen-lockfile && yarn --cwd ../../../", - "build:example": "EXAMPLE=true webpack --config webpack.dev-server.config.js && yarn gen:types" + "build:example": "EXAMPLE=true webpack --config webpack.dev-server.config.js && yarn gen:types", + "size": "yarn build:umd && size-limit" } }