]> git.ipfire.org Git - thirdparty/vuejs/core.git/commitdiff
ci: improve size script
authorEvan You <yyx990803@gmail.com>
Thu, 23 Sep 2021 18:46:16 +0000 (14:46 -0400)
committerEvan You <yyx990803@gmail.com>
Thu, 23 Sep 2021 18:46:16 +0000 (14:46 -0400)
.github/workflows/ci.yml
package.json
packages/size-check/package.json
packages/size-check/src/index.ts
packages/size-check/vite.config.js [new file with mode: 0644]
scripts/build.js

index 66f0f97265135572b0e89444d9aaad93ccb386f5..a286fb355c826cc7517ecd8515dd7ab9990b949b 100644 (file)
@@ -50,4 +50,4 @@ jobs:
         with:
           github_token: ${{ secrets.GITHUB_TOKEN }}
           build_script: size
-          files: packages/vue/dist/vue.global.prod.js packages/runtime-dom/dist/runtime-dom.global.prod.js packages/size-check/dist/size-check.global.prod.js
+          files: packages/vue/dist/vue.global.prod.js packages/runtime-dom/dist/runtime-dom.global.prod.js packages/size-check/dist/index.js
index 50fa44200806a41cae309c6e3fda96562b8cfefc..bce3fff91f4f450397f3d2b86ca2e1ac2f6c2887 100644 (file)
@@ -7,7 +7,9 @@
   "scripts": {
     "dev": "node scripts/dev.js",
     "build": "node scripts/build.js",
-    "size": "node scripts/build.js vue runtime-dom size-check -p -f global",
+    "size": "run-s size-global size-baseline",
+    "size-global": "node scripts/build.js vue runtime-dom -f global -p",
+    "size-baseline": "node scripts/build.js vue runtime-dom runtime-core reactivity shared -f esm-bundler && cd packages/size-check && vite build",
     "lint": "eslint --ext .ts packages/*/src/**.ts",
     "format": "prettier --write --parser typescript \"packages/**/*.ts?(x)\"",
     "test": "node scripts/build.js vue -f global -d && jest --runInBand",
@@ -15,8 +17,8 @@
     "test-dts-only": "tsc -p ./test-dts/tsconfig.json && tsc -p ./test-dts/tsconfig.build.json",
     "release": "node scripts/release.js",
     "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s",
-    "dev-compiler": "npm-run-all --parallel \"dev template-explorer\" serve",
-    "dev-sfc": "npm-run-all --parallel \"dev compiler-sfc -f esm-browser\" \"dev runtime-core -f esm-bundler\" \"dev runtime-dom -f esm-bundler\" serve-sfc-playground",
+    "dev-compiler": "run-p \"dev template-explorer\" serve",
+    "dev-sfc": "run-p \"dev compiler-sfc -f esm-browser\" \"dev runtime-core -f esm-bundler\" \"dev runtime-dom -f esm-bundler\" serve-sfc-playground",
     "serve-sfc-playground": "vite packages/sfc-playground --host",
     "serve": "serve",
     "open": "open http://localhost:5000/packages/template-explorer/local.html",
index fec384745c64eda15a052942f267e3a2a91a1615..d7b30f704b03cdde3853af0b32476198e7527114 100644 (file)
@@ -2,10 +2,10 @@
   "name": "@vue/size-check",
   "version": "3.2.16",
   "private": true,
-  "buildOptions": {
-    "name": "Vue",
-    "formats": [
-      "global"
-    ]
+  "scripts": {
+    "build": "vite build"
+  },
+  "devDependencies": {
+    "vite": "^2.5.10"
   }
 }
index 3c9d23c278a7598b797a8fef17d0ffc5aedc8af6..ad3b68a5cc187a653addff36ce49a2d27d49a426 100644 (file)
@@ -1,4 +1,4 @@
-import { h, createApp } from '@vue/runtime-dom'
+import { h, createApp } from 'vue'
 
 // The bare minimum code required for rendering something to the screen
 createApp({
diff --git a/packages/size-check/vite.config.js b/packages/size-check/vite.config.js
new file mode 100644 (file)
index 0000000..a14a91c
--- /dev/null
@@ -0,0 +1,10 @@
+export default {
+  build: {
+    rollupOptions: {
+      input: ['src/index.ts'],
+      output: {
+        entryFileNames: `[name].js`
+      }
+    }
+  }
+}
index 9b5e37bfa867aa5c58c4eb16850900be879500bf..7f0029500e6a9bca00733d64a685921bb665575c 100644 (file)
@@ -155,7 +155,7 @@ async function build(target) {
 }
 
 function checkAllSizes(targets) {
-  if (devOnly) {
+  if (devOnly || (formats && !formats.includes('global'))) {
     return
   }
   console.log()
@@ -168,7 +168,9 @@ function checkAllSizes(targets) {
 function checkSize(target) {
   const pkgDir = path.resolve(`packages/${target}`)
   checkFileSize(`${pkgDir}/dist/${target}.global.prod.js`)
-  checkFileSize(`${pkgDir}/dist/${target}.runtime.global.prod.js`)
+  if (!formats || formats.includes('global-runtime')) {
+    checkFileSize(`${pkgDir}/dist/${target}.runtime.global.prod.js`)
+  }
 }
 
 function checkFileSize(filePath) {