From: 三咲智子 Kevin Deng Date: Wed, 29 Nov 2023 13:10:26 +0000 (+0800) Subject: Merge remote-tracking branch 'upstream/minor' X-Git-Tag: v3.6.0-alpha.1~16^2~791 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=377723d8b282d5fef54d13c22dac95973e99c124;p=thirdparty%2Fvuejs%2Fcore.git Merge remote-tracking branch 'upstream/minor' --- 377723d8b282d5fef54d13c22dac95973e99c124 diff --cc package.json index c3be99e2b1,d4e6e72705..6675800e3a --- a/package.json +++ b/package.json @@@ -1,10 -1,10 +1,10 @@@ { "private": true, - "version": "3.4.0-alpha.3", + "version": "0.0.0-vapor", - "packageManager": "pnpm@8.10.5", + "packageManager": "pnpm@8.11.0", "type": "module", "scripts": { - "dev": "node scripts/dev.js", + "dev": "node scripts/dev.js vue vue-vapor", "build": "node scripts/build.js", "build-dts": "tsc -p tsconfig.build.json && rollup -c rollup.dts.config.js", "clean": "rimraf packages/*/dist temp .eslintcache", diff --cc packages/compiler-core/package.json index 1ade34a4e1,0991102a7e..c0172c84d9 --- a/packages/compiler-core/package.json +++ b/packages/compiler-core/package.json @@@ -28,12 -28,13 +28,13 @@@ "author": "Evan You", "license": "MIT", "bugs": { - "url": "https://github.com/vuejs/core/issues" + "url": "https://github.com/vuejs/core-vapor/issues" }, - "homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-core#readme", + "homepage": "https://github.com/vuejs/core-vapor/tree/main/packages/compiler-core#readme", "dependencies": { - "@babel/parser": "^7.23.3", + "@babel/parser": "^7.23.4", "@vue/shared": "workspace:*", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" }, diff --cc packages/compiler-sfc/package.json index 341ce64a73,d5d71a06c2..ff6224c7cb --- a/packages/compiler-sfc/package.json +++ b/packages/compiler-sfc/package.json @@@ -28,11 -28,11 +28,11 @@@ "author": "Evan You", "license": "MIT", "bugs": { - "url": "https://github.com/vuejs/core/issues" + "url": "https://github.com/vuejs/core-vapor/issues" }, - "homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-sfc#readme", + "homepage": "https://github.com/vuejs/core-vapor/tree/main/packages/compiler-sfc#readme", "dependencies": { - "@babel/parser": "^7.23.3", + "@babel/parser": "^7.23.4", "@vue/compiler-core": "workspace:*", "@vue/compiler-dom": "workspace:*", "@vue/compiler-ssr": "workspace:*", diff --cc packages/vue-compat/package.json index bdd2a039c4,a6e2df5591..9d99717e2a --- a/packages/vue-compat/package.json +++ b/packages/vue-compat/package.json @@@ -34,11 -34,11 +34,11 @@@ "author": "Evan You", "license": "MIT", "bugs": { - "url": "https://github.com/vuejs/core/issues" + "url": "https://github.com/vuejs/core-vapor/issues" }, - "homepage": "https://github.com/vuejs/core/tree/main/packages/vue-compat#readme", + "homepage": "https://github.com/vuejs/core-vapor/tree/main/packages/vue-compat#readme", "dependencies": { - "@babel/parser": "^7.23.3", + "@babel/parser": "^7.23.4", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" }, diff --cc pnpm-lock.yaml index 5ced0741e9,2435b03508..bb028af7a4 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@@ -9,11 -9,11 +9,11 @@@ importers .: devDependencies: '@babel/parser': - specifier: ^7.23.3 - version: 7.23.3 + specifier: ^7.23.4 - version: 7.23.4 ++ version: 7.23.5 '@babel/types': - specifier: ^7.23.3 - version: 7.23.3 + specifier: ^7.23.4 - version: 7.23.4 ++ version: 7.23.5 '@rollup/plugin-alias': specifier: ^5.0.1 version: 5.0.1(rollup@4.1.4) @@@ -35,12 -35,18 +35,18 @@@ '@types/hash-sum': specifier: ^1.0.2 version: 1.0.2 + '@types/minimist': + specifier: ^1.2.5 + version: 1.2.5 '@types/node': - specifier: ^20.9.2 - version: 20.9.4 + specifier: ^20.10.0 + version: 20.10.0 + '@types/semver': + specifier: ^7.5.5 - version: 7.5.5 ++ version: 7.5.6 '@typescript-eslint/parser': - specifier: ^6.11.0 - version: 6.11.0(eslint@8.54.0)(typescript@5.2.2) + specifier: ^6.13.0 - version: 6.13.0(eslint@8.54.0)(typescript@5.2.2) ++ version: 6.13.1(eslint@8.54.0)(typescript@5.2.2) '@vitest/coverage-istanbul': specifier: ^0.34.6 version: 0.34.6(vitest@0.34.6) @@@ -144,8 -153,8 +153,8 @@@ specifier: ^2.6.2 version: 2.6.2 tsx: - specifier: ^4.1.4 - version: 4.4.0 + specifier: ^4.5.0 - version: 4.5.0 ++ version: 4.6.0 typescript: specifier: ^5.2.2 version: 5.2.2 @@@ -159,8 -168,8 +168,8 @@@ packages/compiler-core: dependencies: '@babel/parser': - specifier: ^7.23.3 - version: 7.23.3 + specifier: ^7.23.4 - version: 7.23.4 ++ version: 7.23.5 '@vue/shared': specifier: workspace:* version: link:../shared @@@ -172,8 -184,8 +184,8 @@@ version: 1.0.2 devDependencies: '@babel/types': - specifier: ^7.23.3 - version: 7.23.3 + specifier: ^7.23.4 - version: 7.23.4 ++ version: 7.23.5 packages/compiler-dom: dependencies: @@@ -187,8 -199,8 +199,8 @@@ packages/compiler-sfc: dependencies: '@babel/parser': - specifier: ^7.23.3 - version: 7.23.3 + specifier: ^7.23.4 - version: 7.23.4 ++ version: 7.23.5 '@vue/compiler-core': specifier: workspace:* version: link:../compiler-core @@@ -218,8 -227,8 +227,8 @@@ version: 1.0.2 devDependencies: '@babel/types': - specifier: ^7.23.3 - version: 7.23.3 + specifier: ^7.23.4 - version: 7.23.4 ++ version: 7.23.5 '@vue/consolidate': specifier: ^0.17.3 version: 0.17.3 @@@ -432,8 -392,8 +416,8 @@@ packages/vue-compat: dependencies: '@babel/parser': - specifier: ^7.23.3 - version: 7.23.3 + specifier: ^7.23.4 - version: 7.23.4 ++ version: 7.23.5 estree-walker: specifier: ^2.0.2 version: 2.0.2 @@@ -444,31 -404,6 +428,31 @@@ specifier: workspace:* version: link:../vue + packages/vue-vapor: + dependencies: + '@vue/compiler-vapor': + specifier: workspace:* + version: link:../compiler-vapor + '@vue/runtime-vapor': + specifier: workspace:* + version: link:../runtime-vapor + + playground: + dependencies: + vue: + specifier: workspace:* + version: link:../packages/vue + devDependencies: + '@vitejs/plugin-vue': + specifier: ^4.5.0 + version: 4.5.0(vite@5.0.2)(vue@packages+vue) + vite: + specifier: ^5.0.2 - version: 5.0.2(@types/node@20.9.4)(terser@5.22.0) ++ version: 5.0.2(@types/node@20.10.0)(terser@5.22.0) + vite-plugin-inspect: + specifier: ^0.7.42 + version: 0.7.42(rollup@4.1.4)(vite@5.0.2) + packages: /@aashutoshrathi/word-wrap@1.2.6: @@@ -512,10 -443,10 +496,10 @@@ '@babel/helper-compilation-targets': 7.22.15 '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.3) '@babel/helpers': 7.23.2 - '@babel/parser': 7.23.3 - '@babel/parser': 7.23.4 ++ '@babel/parser': 7.23.5 '@babel/template': 7.22.15 '@babel/traverse': 7.23.3 - '@babel/types': 7.23.3 - '@babel/types': 7.23.4 ++ '@babel/types': 7.23.5 convert-source-map: 2.0.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@@ -529,7 -460,7 +513,7 @@@ resolution: {integrity: sha512-keeZWAV4LU3tW0qRi19HRpabC/ilM0HRBBzf9/k8FFiG4KVpiv0FIy4hHfLfFQZNhziCTPTmd59zoyv6DNISzg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.3 - '@babel/types': 7.23.4 ++ '@babel/types': 7.23.5 '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.20 jsesc: 2.5.2 @@@ -556,21 -487,21 +540,21 @@@ engines: {node: '>=6.9.0'} dependencies: '@babel/template': 7.22.15 - '@babel/types': 7.23.3 - '@babel/types': 7.23.4 ++ '@babel/types': 7.23.5 dev: true /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.3 - '@babel/types': 7.23.4 ++ '@babel/types': 7.23.5 dev: true /@babel/helper-module-imports@7.22.15: resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.3 - '@babel/types': 7.23.4 ++ '@babel/types': 7.23.5 dev: true /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.3): @@@ -591,18 -522,18 +575,18 @@@ resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.3 - '@babel/types': 7.23.4 ++ '@babel/types': 7.23.5 dev: true /@babel/helper-split-export-declaration@7.22.6: resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.3 - '@babel/types': 7.23.4 ++ '@babel/types': 7.23.5 dev: true - /@babel/helper-string-parser@7.22.5: - resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} + /@babel/helper-string-parser@7.23.4: + resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} engines: {node: '>=6.9.0'} /@babel/helper-validator-identifier@7.22.20: @@@ -621,7 -552,7 +605,7 @@@ dependencies: '@babel/template': 7.22.15 '@babel/traverse': 7.23.3 - '@babel/types': 7.23.3 - '@babel/types': 7.23.4 ++ '@babel/types': 7.23.5 transitivePeerDependencies: - supports-color dev: true @@@ -636,20 -567,20 +620,20 @@@ js-tokens: 4.0.0 dev: true - /@babel/parser@7.23.3: - resolution: {integrity: sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw==} - /@babel/parser@7.23.4: - resolution: {integrity: sha512-vf3Xna6UEprW+7t6EtOmFpHNAuxw3xqPZghy+brsnusscJRW5BMUzzHZc5ICjULee81WeUV2jjakG09MDglJXQ==} ++ /@babel/parser@7.23.5: ++ resolution: {integrity: sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.23.3 - '@babel/types': 7.23.4 ++ '@babel/types': 7.23.5 /@babel/template@7.22.15: resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.22.13 - '@babel/parser': 7.23.3 - '@babel/types': 7.23.3 - '@babel/parser': 7.23.4 - '@babel/types': 7.23.4 ++ '@babel/parser': 7.23.5 ++ '@babel/types': 7.23.5 dev: true /@babel/traverse@7.23.3: @@@ -662,19 -593,19 +646,19 @@@ '@babel/helper-function-name': 7.23.0 '@babel/helper-hoist-variables': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.23.3 - '@babel/types': 7.23.3 - '@babel/parser': 7.23.4 - '@babel/types': 7.23.4 ++ '@babel/parser': 7.23.5 ++ '@babel/types': 7.23.5 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color dev: true - /@babel/types@7.23.3: - resolution: {integrity: sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw==} - /@babel/types@7.23.4: - resolution: {integrity: sha512-7uIFwVYpoplT5jp/kVv6EF93VaJ8H+Yn5IczYiaAi98ajzjfoZfslet/e0sLh+wVBjb2qqIut1b0S26VSafsSQ==} ++ /@babel/types@7.23.5: ++ resolution: {integrity: sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-string-parser': 7.22.5 + '@babel/helper-string-parser': 7.23.4 '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 @@@ -1610,8 -1541,8 +1598,8 @@@ resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} dev: true - /@types/semver@7.5.4: - resolution: {integrity: sha512-MMzuxN3GdFwskAnb6fz0orFvhfqi752yjaXylr0Rp4oDg5H0Zn1IuyRhDVvYOwAXoJirx2xuS16I3WjxnAIHiQ==} - /@types/semver@7.5.5: - resolution: {integrity: sha512-+d+WYC1BxJ6yVOgUgzK8gWvp5qF8ssV5r4nsDcZWKRWcDQLQ619tvWAxJQYGgBrO1MnLJC7a5GtiYsAoQ47dJg==} ++ /@types/semver@7.5.6: ++ resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==} dev: true /@types/yauzl@2.10.2: @@@ -1622,8 -1553,8 +1610,8 @@@ dev: true optional: true - /@typescript-eslint/parser@6.11.0(eslint@8.54.0)(typescript@5.2.2): - resolution: {integrity: sha512-+whEdjk+d5do5nxfxx73oanLL9ghKO3EwM9kBCkUtWMRwWuPaFv9ScuqlYfQ6pAD6ZiJhky7TZ2ZYhrMsfMxVQ==} - /@typescript-eslint/parser@6.13.0(eslint@8.54.0)(typescript@5.2.2): - resolution: {integrity: sha512-VpG+M7GNhHLI/aTDctqAV0XbzB16vf+qDX9DXuMZSe/0bahzDA9AKZB15NDbd+D9M4cDsJvfkbGOA7qiZ/bWJw==} ++ /@typescript-eslint/parser@6.13.1(eslint@8.54.0)(typescript@5.2.2): ++ resolution: {integrity: sha512-fs2XOhWCzRhqMmQf0eicLa/CWSaYss2feXsy7xBD/pLyWke/jCIVc2s1ikEAtSW7ina1HNhv7kONoEfVNEcdDQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@@ -1632,10 -1563,10 +1620,10 @@@ typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.11.0 - '@typescript-eslint/types': 6.11.0 - '@typescript-eslint/typescript-estree': 6.11.0(typescript@5.2.2) - '@typescript-eslint/visitor-keys': 6.11.0 - '@typescript-eslint/scope-manager': 6.13.0 - '@typescript-eslint/types': 6.13.0 - '@typescript-eslint/typescript-estree': 6.13.0(typescript@5.2.2) - '@typescript-eslint/visitor-keys': 6.13.0 ++ '@typescript-eslint/scope-manager': 6.13.1 ++ '@typescript-eslint/types': 6.13.1 ++ '@typescript-eslint/typescript-estree': 6.13.1(typescript@5.2.2) ++ '@typescript-eslint/visitor-keys': 6.13.1 debug: 4.3.4 eslint: 8.54.0 typescript: 5.2.2 @@@ -1651,12 -1582,12 +1639,12 @@@ '@typescript-eslint/visitor-keys': 5.62.0 dev: true - /@typescript-eslint/scope-manager@6.11.0: - resolution: {integrity: sha512-0A8KoVvIURG4uhxAdjSaxy8RdRE//HztaZdG8KiHLP8WOXSk0vlF7Pvogv+vlJA5Rnjj/wDcFENvDaHb+gKd1A==} - /@typescript-eslint/scope-manager@6.13.0: - resolution: {integrity: sha512-2x0K2/CujsokIv+LN2T0l5FVDMtsCjkUyYtlcY4xxnxLAW+x41LXr16duoicHpGtLhmtN7kqvuFJ3zbz00Ikhw==} ++ /@typescript-eslint/scope-manager@6.13.1: ++ resolution: {integrity: sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.11.0 - '@typescript-eslint/visitor-keys': 6.11.0 - '@typescript-eslint/types': 6.13.0 - '@typescript-eslint/visitor-keys': 6.13.0 ++ '@typescript-eslint/types': 6.13.1 ++ '@typescript-eslint/visitor-keys': 6.13.1 dev: true /@typescript-eslint/types@5.62.0: @@@ -1664,8 -1595,8 +1652,8 @@@ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/types@6.11.0: - resolution: {integrity: sha512-ZbEzuD4DwEJxwPqhv3QULlRj8KYTAnNsXxmfuUXFCxZmO6CF2gM/y+ugBSAQhrqaJL3M+oe4owdWunaHM6beqA==} - /@typescript-eslint/types@6.13.0: - resolution: {integrity: sha512-oXg7DFxx/GmTrKXKKLSoR2rwiutOC7jCQ5nDH5p5VS6cmHE1TcPTaYQ0VPSSUvj7BnNqCgQ/NXcTBxn59pfPTQ==} ++ /@typescript-eslint/types@6.13.1: ++ resolution: {integrity: sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg==} engines: {node: ^16.0.0 || >=18.0.0} dev: true @@@ -1690,8 -1621,8 +1678,8 @@@ - supports-color dev: true - /@typescript-eslint/typescript-estree@6.11.0(typescript@5.2.2): - resolution: {integrity: sha512-Aezzv1o2tWJwvZhedzvD5Yv7+Lpu1by/U1LZ5gLc4tCx8jUmuSCMioPFRjliN/6SJIvY6HpTtJIWubKuYYYesQ==} - /@typescript-eslint/typescript-estree@6.13.0(typescript@5.2.2): - resolution: {integrity: sha512-IT4O/YKJDoiy/mPEDsfOfp+473A9GVqXlBKckfrAOuVbTqM8xbc0LuqyFCcgeFWpqu3WjQexolgqN2CuWBYbog==} ++ /@typescript-eslint/typescript-estree@6.13.1(typescript@5.2.2): ++ resolution: {integrity: sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' @@@ -1699,8 -1630,8 +1687,8 @@@ typescript: optional: true dependencies: - '@typescript-eslint/types': 6.11.0 - '@typescript-eslint/visitor-keys': 6.11.0 - '@typescript-eslint/types': 6.13.0 - '@typescript-eslint/visitor-keys': 6.13.0 ++ '@typescript-eslint/types': 6.13.1 ++ '@typescript-eslint/visitor-keys': 6.13.1 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 @@@ -1719,7 -1650,7 +1707,7 @@@ dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.54.0) '@types/json-schema': 7.0.14 - '@types/semver': 7.5.4 - '@types/semver': 7.5.5 ++ '@types/semver': 7.5.6 '@typescript-eslint/scope-manager': 5.62.0 '@typescript-eslint/types': 5.62.0 '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.2.2) @@@ -1739,11 -1670,11 +1727,11 @@@ eslint-visitor-keys: 3.4.3 dev: true - /@typescript-eslint/visitor-keys@6.11.0: - resolution: {integrity: sha512-+SUN/W7WjBr05uRxPggJPSzyB8zUpaYo2hByKasWbqr3PM8AXfZt8UHdNpBS1v9SA62qnSSMF3380SwDqqprgQ==} - /@typescript-eslint/visitor-keys@6.13.0: - resolution: {integrity: sha512-UQklteCEMCRoq/1UhKFZsHv5E4dN1wQSzJoxTfABasWk1HgJRdg1xNUve/Kv/Sdymt4x+iEzpESOqRFlQr/9Aw==} ++ /@typescript-eslint/visitor-keys@6.13.1: ++ resolution: {integrity: sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.11.0 - '@typescript-eslint/types': 6.13.0 ++ '@typescript-eslint/types': 6.13.1 eslint-visitor-keys: 3.4.3 dev: true @@@ -1762,17 -1693,6 +1750,17 @@@ vue: link:packages/vue dev: true + /@vitejs/plugin-vue@4.5.0(vite@5.0.2)(vue@packages+vue): + resolution: {integrity: sha512-a2WSpP8X8HTEww/U00bU4mX1QpLINNuz/2KMNpLsdu3BzOpak3AGI1CJYBTXcc4SPhaD0eNRUp7IyQK405L5dQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + vite: ^4.0.0 || ^5.0.0 + vue: ^3.2.25 + dependencies: - vite: 5.0.2(@types/node@20.9.4)(terser@5.22.0) ++ vite: 5.0.2(@types/node@20.10.0)(terser@5.22.0) + vue: link:packages/vue + dev: true + /@vitest/coverage-istanbul@0.34.6(vitest@0.34.6): resolution: {integrity: sha512-5KaBNZPDSk2ybavC3rZ1pWGniw7sJ5usuwVGRUYzJwiBfWvnLpuUer7bjw7qUCRGdKJXrBgb/Dsgif9rkwMX/A==} peerDependencies: @@@ -1828,22 -1748,6 +1816,22 @@@ pretty-format: 29.7.0 dev: true + /@vue/compiler-core@3.3.8: + resolution: {integrity: sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==} + dependencies: - '@babel/parser': 7.23.3 ++ '@babel/parser': 7.23.5 + '@vue/shared': 3.3.8 + estree-walker: 2.0.2 + source-map-js: 1.0.2 + dev: false + + /@vue/compiler-dom@3.3.8: + resolution: {integrity: sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==} + dependencies: + '@vue/compiler-core': 3.3.8 + '@vue/shared': 3.3.8 + dev: false + /@vue/consolidate@0.17.3: resolution: {integrity: sha512-nl0SWcTMzaaTnJ5G6V8VlMDA1CVVrNnaQKF1aBZU3kXtjgU9jtHMsEAsgjoRUx+T0EVJk9TgbmxGhK3pOk22zw==} engines: {node: '>= 0.12.0'} @@@ -2083,7 -1983,7 +2071,7 @@@ resolution: {integrity: sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==} engines: {node: '>= 10.0.0'} dependencies: - '@babel/types': 7.23.3 - '@babel/types': 7.23.4 ++ '@babel/types': 7.23.5 dev: true /balanced-match@1.0.2: @@@ -2423,8 -2304,8 +2411,8 @@@ /constantinople@4.0.1: resolution: {integrity: sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==} dependencies: - '@babel/parser': 7.23.3 - '@babel/types': 7.23.3 - '@babel/parser': 7.23.4 - '@babel/types': 7.23.4 ++ '@babel/parser': 7.23.5 ++ '@babel/types': 7.23.5 dev: true /content-disposition@0.5.2: @@@ -4013,7 -3828,7 +4005,7 @@@ engines: {node: '>=10'} dependencies: '@babel/core': 7.23.3 - '@babel/parser': 7.23.3 - '@babel/parser': 7.23.4 ++ '@babel/parser': 7.23.5 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.0 semver: 7.5.4 @@@ -6009,8 -5775,8 +6001,8 @@@ typescript: 5.2.2 dev: true - /tsx@4.4.0: - resolution: {integrity: sha512-4fwcEjRUxW20ciSaMB8zkpGwCPxuRGnadDuj/pBk5S9uT29zvWz15PK36GrKJo45mSJomDxVejZ73c6lr3811Q==} - /tsx@4.5.0: - resolution: {integrity: sha512-hgxdziy9KLaHh9KE+a6tIZFP6kb0MLq/1D0sJVifbGP4QVEYhy6+2FNn7MyCm1pMc63p9CW/L1OzdqTNPxs6rg==} ++ /tsx@4.6.0: ++ resolution: {integrity: sha512-HLHaDQ78mly4Pd5co6tWQOiNVYoYYAPUcwSSZK4bcs3zSEsg+/67LS/ReHook0E7DKPfe1J5jc0ocIhUrnaR4w==} engines: {node: '>=18.0.0'} hasBin: true dependencies: @@@ -6212,7 -5968,7 +6204,7 @@@ mlly: 1.4.2 pathe: 1.1.1 picocolors: 1.0.0 - vite: 5.0.2(@types/node@20.9.4)(terser@5.22.0) - vite: 5.0.0(@types/node@20.10.0)(terser@5.22.0) ++ vite: 5.0.2(@types/node@20.10.0)(terser@5.22.0) transitivePeerDependencies: - '@types/node' - less @@@ -6224,31 -5980,7 +6216,31 @@@ - terser dev: true + /vite-plugin-inspect@0.7.42(rollup@4.1.4)(vite@5.0.2): + resolution: {integrity: sha512-JCyX86wr3siQc+p9Kd0t8VkFHAJag0RaQVIpdFGSv5FEaePEVB6+V/RGtz2dQkkGSXQzRWrPs4cU3dRKg32bXw==} + engines: {node: '>=14'} + peerDependencies: + '@nuxt/kit': '*' + vite: ^3.1.0 || ^4.0.0 || ^5.0.0-0 + peerDependenciesMeta: + '@nuxt/kit': + optional: true + dependencies: + '@antfu/utils': 0.7.6 + '@rollup/pluginutils': 5.0.5(rollup@4.1.4) + debug: 4.3.4 + error-stack-parser-es: 0.1.1 + fs-extra: 11.1.1 + open: 9.1.0 + picocolors: 1.0.0 + sirv: 2.0.3 - vite: 5.0.2(@types/node@20.9.4)(terser@5.22.0) ++ vite: 5.0.2(@types/node@20.10.0)(terser@5.22.0) + transitivePeerDependencies: + - rollup + - supports-color + dev: true + - /vite@5.0.0(@types/node@20.9.4)(terser@5.22.0): + /vite@5.0.0(@types/node@20.10.0)(terser@5.22.0): resolution: {integrity: sha512-ESJVM59mdyGpsiNAeHQOR/0fqNoOyWPYesFto8FFZugfmhdHx8Fzd8sF3Q/xkVhZsyOxHfdM7ieiVAorI9RjFw==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@@ -6285,43 -6017,6 +6277,43 @@@ fsevents: 2.3.3 dev: true - /vite@5.0.2(@types/node@20.9.4)(terser@5.22.0): ++ /vite@5.0.2(@types/node@20.10.0)(terser@5.22.0): + resolution: {integrity: sha512-6CCq1CAJCNM1ya2ZZA7+jS2KgnhbzvxakmlIjN24cF/PXhRMzpM/z8QgsVJA/Dm5fWUWnVEsmtBoMhmerPxT0g==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: - '@types/node': 20.9.4 ++ '@types/node': 20.10.0 + esbuild: 0.19.5 + postcss: 8.4.31 + rollup: 4.4.1 + terser: 5.22.0 + optionalDependencies: + fsevents: 2.3.3 + dev: true + /vitest@0.34.6(jsdom@22.1.0)(terser@5.22.0): resolution: {integrity: sha512-+5CALsOvbNKnS+ZHMXtuUC7nL8/7F1F2DnHGjSsszX8zCjWSSviphCb/NuS9Nzf4Q03KyyDRBAXhF/8lffME4Q==} engines: {node: '>=v14.18.0'} @@@ -6492,8 -6187,8 +6484,8 @@@ resolution: {integrity: sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==} engines: {node: '>= 10.0.0'} dependencies: - '@babel/parser': 7.23.3 - '@babel/types': 7.23.3 - '@babel/parser': 7.23.4 - '@babel/types': 7.23.4 ++ '@babel/parser': 7.23.5 ++ '@babel/types': 7.23.5 assert-never: 1.2.1 babel-walk: 3.0.0-canary-5 dev: true diff --cc rollup.config.js index 63d62b7304,421fa9c378..59e6924daf --- a/rollup.config.js +++ b/rollup.config.js @@@ -33,18 -32,8 +33,18 @@@ const pkg = require(resolve(`package.js const packageOptions = pkg.buildOptions || {} const name = packageOptions.filename || path.basename(packageDir) - const [enumPlugin, enumDefines] = constEnum() + const [enumPlugin, enumDefines] = inlineEnums() +/** + * @typedef { Omit & Required> } MarkRequired + * @template T + * @template {keyof T} K + */ + +/** @typedef {import('rollup').ModuleFormat} Format */ +/** @typedef {MarkRequired} Output */ + +/** @type {Record} */ const outputConfigs = { 'esm-bundler': { file: resolve(`dist/${name}.esm-bundler.js`), diff --cc scripts/dev.js index 33c1a84a70,e31216ca4e..1b2cf0029c --- a/scripts/dev.js +++ b/scripts/dev.js @@@ -30,102 -31,100 +30,103 @@@ const postfix = format.endsWith('-runti ? `runtime.${format.replace(/-runtime$/, '')}` : format -const outfile = resolve( - __dirname, - `../packages/${target}/dist/${ - target === 'vue-compat' ? `vue` : target - }.${postfix}.${prod ? `prod.` : ``}js` -) -const relativeOutfile = relative(process.cwd(), outfile) +for (const target of targets) { + const pkg = require(`../packages/${target}/package.json`) + const outfile = resolve( + __dirname, + `../packages/${target}/dist/${ + target === 'vue-compat' ? `vue` : target + }.${postfix}.${prod ? `prod.` : ``}js` + ) + const relativeOutfile = relative(process.cwd(), outfile) -// resolve externals -// TODO this logic is largely duplicated from rollup.config.js -/** @type {string[]} */ -let external = [] -if (!inlineDeps) { - // cjs & esm-bundler: external all deps - if (format === 'cjs' || format.includes('esm-bundler')) { - external = [ - ...external, - ...Object.keys(pkg.dependencies || {}), - ...Object.keys(pkg.peerDependencies || {}), - // for @vue/compiler-sfc / server-renderer - 'path', - 'url', - 'stream' - ] - } + // resolve externals + // TODO this logic is largely duplicated from rollup.config.js ++ /** @type {string[]} */ + let external = [] + if (!inlineDeps) { + // cjs & esm-bundler: external all deps + if (format === 'cjs' || format.includes('esm-bundler')) { + external = [ + ...external, + ...Object.keys(pkg.dependencies || {}), + ...Object.keys(pkg.peerDependencies || {}), + // for @vue/compiler-sfc / server-renderer + 'path', + 'url', + 'stream' + ] + } - if (target === 'compiler-sfc') { - const consolidatePkgPath = require.resolve( - '@vue/consolidate/package.json', - { - paths: [resolve(__dirname, `../packages/${target}/`)] - } - ) - const consolidateDeps = Object.keys( - require(consolidatePkgPath).devDependencies - ) - external = [ - ...external, - ...consolidateDeps, - 'fs', - 'vm', - 'crypto', - 'react-dom/server', - 'teacup/lib/express', - 'arc-templates/dist/es5', - 'then-pug', - 'then-jade' - ] + if (target === 'compiler-sfc') { + const consolidatePkgPath = require.resolve( + '@vue/consolidate/package.json', + { + paths: [resolve(__dirname, `../packages/${target}/`)] + } + ) + const consolidateDeps = Object.keys( + require(consolidatePkgPath).devDependencies + ) + external = [ + ...external, + ...consolidateDeps, + 'fs', + 'vm', + 'crypto', + 'react-dom/server', + 'teacup/lib/express', + 'arc-templates/dist/es5', + 'then-pug', + 'then-jade' + ] + } } - -} -/** @type {Array} */ -const plugins = [ - { - name: 'log-rebuild', - setup(build) { - build.onEnd(() => { - console.log(`built: ${relativeOutfile}`) - }) ++ /** @type {Array} */ + const plugins = [ + { + name: 'log-rebuild', + setup(build) { + build.onEnd(() => { + console.log(`built: ${relativeOutfile}`) + }) + } } + ] + + if (format !== 'cjs' && pkg.buildOptions?.enableNonBrowserBranches) { + plugins.push(polyfillNode()) } -] -if (format !== 'cjs' && pkg.buildOptions?.enableNonBrowserBranches) { - plugins.push(polyfillNode()) + esbuild + .context({ + entryPoints: [resolve(__dirname, `../packages/${target}/src/index.ts`)], + outfile, + bundle: true, + external, + sourcemap: true, + format: outputFormat, + globalName: pkg.buildOptions?.name, + platform: format === 'cjs' ? 'node' : 'browser', + plugins, + define: { + __COMMIT__: `"dev"`, + __VERSION__: `"${pkg.version}"`, + __DEV__: prod ? `false` : `true`, + __TEST__: `false`, + __BROWSER__: String( + format !== 'cjs' && !pkg.buildOptions?.enableNonBrowserBranches + ), + __GLOBAL__: String(format === 'global'), + __ESM_BUNDLER__: String(format.includes('esm-bundler')), + __ESM_BROWSER__: String(format.includes('esm-browser')), + __NODE_JS__: String(format === 'cjs'), + __SSR__: String(format === 'cjs' || format.includes('esm-bundler')), + __COMPAT__: String(target === 'vue-compat'), + __FEATURE_SUSPENSE__: `true`, + __FEATURE_OPTIONS_API__: `true`, + __FEATURE_PROD_DEVTOOLS__: `false` + } + }) + .then(ctx => ctx.watch()) } - -esbuild - .context({ - entryPoints: [resolve(__dirname, `../packages/${target}/src/index.ts`)], - outfile, - bundle: true, - external, - sourcemap: true, - format: outputFormat, - globalName: pkg.buildOptions?.name, - platform: format === 'cjs' ? 'node' : 'browser', - plugins, - define: { - __COMMIT__: `"dev"`, - __VERSION__: `"${pkg.version}"`, - __DEV__: prod ? `false` : `true`, - __TEST__: `false`, - __BROWSER__: String( - format !== 'cjs' && !pkg.buildOptions?.enableNonBrowserBranches - ), - __GLOBAL__: String(format === 'global'), - __ESM_BUNDLER__: String(format.includes('esm-bundler')), - __ESM_BROWSER__: String(format.includes('esm-browser')), - __NODE_JS__: String(format === 'cjs'), - __SSR__: String(format === 'cjs' || format.includes('esm-bundler')), - __COMPAT__: String(target === 'vue-compat'), - __FEATURE_SUSPENSE__: `true`, - __FEATURE_OPTIONS_API__: `true`, - __FEATURE_PROD_DEVTOOLS__: `false` - } - }) - .then(ctx => ctx.watch()) diff --cc scripts/prepare-cjs.js index 467875ea8d,deeb409181..736bb8bed0 --- a/scripts/prepare-cjs.js +++ b/scripts/prepare-cjs.js @@@ -6,8 -6,6 +6,7 @@@ const packagesToCheck = 'compiler-core', 'compiler-dom', 'compiler-ssr', + 'compiler-vapor', - 'reactivity-transform', 'shared' ] diff --cc tsconfig.build.json index c3be791568,28036b1bed..43161f91fd --- a/tsconfig.build.json +++ b/tsconfig.build.json @@@ -11,6 -11,7 +11,8 @@@ "packages/template-explorer", "packages/sfc-playground", "packages/dts-test", + "rollup.config.js", - "scripts/*" ++ "scripts/*", + "playground" ] } diff --cc tsconfig.json index c1354dfa28,0aad03ad6c..931831bda6 --- a/tsconfig.json +++ b/tsconfig.json @@@ -35,7 -34,8 +35,8 @@@ "packages/*/__tests__", "packages/dts-test", "packages/vue/jsx-runtime", - "scripts/setupVitest.ts", - "scripts/*", - "rollup.*.js" ++ "rollup.*.js", + "playground" - ] + ], - "exclude": ["rollup.config.js", "scripts/*"] ++ "exclude": ["rollup.config.js"] }