Skip to content

Commit 219e8c2

Browse files
authored
Merge branch 'main' into fix/9229
2 parents e5889db + 5ebb459 commit 219e8c2

File tree

40 files changed

+1463
-1475
lines changed

40 files changed

+1463
-1475
lines changed

.github/contributing.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ Hi! I'm really excited that you are interested in contributing to Vue.js. Before
5757

5858
## Development Setup
5959

60-
You will need [Node.js](https://nodejs.org) **version 16+**, and [PNPM](https://pnpm.io) **version 8+**.
60+
You will need [Node.js](https://nodejs.org) **version 18.12+**, and [PNPM](https://pnpm.io) **version 8+**.
6161

6262
We also recommend installing [ni](https://github.com/antfu/ni) to help switching between repos using different package managers. `ni` also provides the handy `nr` command which running npm scripts easier.
6363

.github/renovate.json5

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@
4545
'typescript',
4646

4747
// ESM only
48-
'chalk',
4948
'estree-walker'
5049
]
5150
}

.github/workflows/autofix.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,4 @@ jobs:
3030
- name: Run prettier
3131
run: pnpm run format
3232

33-
- uses: autofix-ci/action@8caa572fd27b0019a65e4c695447089c8d3138b9
33+
- uses: autofix-ci/action@d3e591514b99d0fca6779455ff8338516663f7cc

.github/workflows/canary-minor.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: canary minor release
2+
on:
3+
# Runs every Monday at 1 AM UTC (9:00 AM in Singapore)
4+
schedule:
5+
- cron: 0 1 * * MON
6+
workflow_dispatch:
7+
8+
jobs:
9+
canary:
10+
# prevents this action from running on forks
11+
if: github.repository == 'vuejs/core'
12+
runs-on: ubuntu-latest
13+
environment: Release
14+
steps:
15+
- uses: actions/checkout@v4
16+
with:
17+
ref: minor
18+
19+
- name: Install pnpm
20+
uses: pnpm/action-setup@v2
21+
22+
- name: Set node version to 18
23+
uses: actions/setup-node@v3
24+
with:
25+
node-version: 18
26+
registry-url: 'https://registry.npmjs.org'
27+
cache: 'pnpm'
28+
29+
- run: pnpm install
30+
31+
- run: pnpm release --canary --tag minor
32+
env:
33+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

CHANGELOG.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,42 @@
1+
## [3.3.5](https://github.com/vuejs/core/compare/v3.3.4...v3.3.5) (2023-10-20)
2+
3+
4+
### Bug Fixes
5+
6+
* add isGloballyWhitelisted back, but deprecated ([#8556](https://github.com/vuejs/core/issues/8556)) ([63dfe8e](https://github.com/vuejs/core/commit/63dfe8eab499979bcc2f7829e82464e13899c895)), closes [/github.com/vuejs/core/issues/8416#issuecomment-1566583260](https://github.com//github.com/vuejs/core/issues/8416/issues/issuecomment-1566583260)
7+
* **build:** disable useDefineForClassFields in esbuild ([#9252](https://github.com/vuejs/core/issues/9252)) ([6d14fa8](https://github.com/vuejs/core/commit/6d14fa88e85d4c9e264be394ddb37a54ca6738a8))
8+
* **compat:** return value of vue compat set() ([#9377](https://github.com/vuejs/core/issues/9377)) ([e3c2d69](https://github.com/vuejs/core/commit/e3c2d699f694d9500ddee78571172a24f0e3b17a))
9+
* **compiler-sfc:** don't hoist props and emit ([#8535](https://github.com/vuejs/core/issues/8535)) ([24db951](https://github.com/vuejs/core/commit/24db9516d8b4857182ec1a3af86cb7346691679b)), closes [#7805](https://github.com/vuejs/core/issues/7805) [#7812](https://github.com/vuejs/core/issues/7812)
10+
* **compiler-sfc:** don't registerTS when bundling for browsers ([#8582](https://github.com/vuejs/core/issues/8582)) ([6f45f76](https://github.com/vuejs/core/commit/6f45f76df2c43796b35067ef8f8b9a7bca454040))
11+
* **compiler-sfc:** fix using imported ref as template ref during dev ([#7593](https://github.com/vuejs/core/issues/7593)) ([776ebf2](https://github.com/vuejs/core/commit/776ebf25b2e7570e78ac1c148fc45c823c21a542)), closes [#7567](https://github.com/vuejs/core/issues/7567)
12+
* **compiler-sfc:** handle dynamic directive arguments in template usage check ([#8538](https://github.com/vuejs/core/issues/8538)) ([e404a69](https://github.com/vuejs/core/commit/e404a699f48ae5c5a5da947f42679343192158c7)), closes [#8537](https://github.com/vuejs/core/issues/8537)
13+
* **compiler-sfc:** ignore style v-bind in double slash comments ([#5409](https://github.com/vuejs/core/issues/5409)) ([381b497](https://github.com/vuejs/core/commit/381b4977af25ba5392704f72ec6b3f2394d87ae7))
14+
* **compiler-sfc:** pass options directly to stylus ([#3848](https://github.com/vuejs/core/issues/3848)) ([d6446a6](https://github.com/vuejs/core/commit/d6446a6d40774b79045a9ddba7b5fd5201d51450))
15+
* **compiler-sfc:** support resolve multiple re-export /w same source type name ([#8365](https://github.com/vuejs/core/issues/8365)) ([4fa8da8](https://github.com/vuejs/core/commit/4fa8da8576717c619e1e8c04d19038488c75fbea)), closes [#8364](https://github.com/vuejs/core/issues/8364)
16+
* **compiler-sfc:** typo in experimental feature warnings ([#8513](https://github.com/vuejs/core/issues/8513)) ([fd1a3f9](https://github.com/vuejs/core/commit/fd1a3f95990d7c372fa1c0c40c55caca761a33a4))
17+
* **deps:** update dependency monaco-editor to ^0.44.0 ([#9237](https://github.com/vuejs/core/issues/9237)) ([8611874](https://github.com/vuejs/core/commit/8611874e09a827b6491173836c8942284d5de22c))
18+
* **deps:** update playground ([#9154](https://github.com/vuejs/core/issues/9154)) ([c8566a2](https://github.com/vuejs/core/commit/c8566a22b7cf37e6aefab7bad7b97ce2db9fae4c))
19+
* **playground:** fix github button style ([#7722](https://github.com/vuejs/core/issues/7722)) ([5ee992c](https://github.com/vuejs/core/commit/5ee992cfeabc6c4b871980c6057d0ac7140ad2fa))
20+
* **runtime-core:** swap client/server debug labels ([#9089](https://github.com/vuejs/core/issues/9089)) ([8f311c6](https://github.com/vuejs/core/commit/8f311c6f823f6776ca1c49bfbbbf8c7d9dea9cf1))
21+
* **ssr:** render correct initial selected state for select with v-model ([#7432](https://github.com/vuejs/core/issues/7432)) ([201c46d](https://github.com/vuejs/core/commit/201c46df07a38f3c2b73f384e8e6846dc62f224e)), closes [#7392](https://github.com/vuejs/core/issues/7392)
22+
* **ssr:** reset current instance if setting up options component errors ([#7743](https://github.com/vuejs/core/issues/7743)) ([020851e](https://github.com/vuejs/core/commit/020851e57d9a9f727c6ea07e9c1575430af02b73)), closes [#7733](https://github.com/vuejs/core/issues/7733)
23+
* **teleport:** handle target change while disabled ([#7837](https://github.com/vuejs/core/issues/7837)) ([140a89b](https://github.com/vuejs/core/commit/140a89b833bceed60838182b875d2953c70af114)), closes [#7835](https://github.com/vuejs/core/issues/7835)
24+
* **transition:** handle possible auto value for transition/animation durations ([96c76fa](https://github.com/vuejs/core/commit/96c76facb7de37fc241ccd55e121fd60a49a1452)), closes [#8409](https://github.com/vuejs/core/issues/8409)
25+
* **types/jsx:** add `inert` attribute and missing `hidden` values ([#8090](https://github.com/vuejs/core/issues/8090)) ([ceb0732](https://github.com/vuejs/core/commit/ceb0732e0b1bb4c8c505d80e97ff6fc89035fa90))
26+
* **types/jsx:** add missing loading attr for img element ([#6160](https://github.com/vuejs/core/issues/6160)) ([68d6b43](https://github.com/vuejs/core/commit/68d6b43f7e29b76aab2c6c1882885380a43fa3e3))
27+
* **types:** correct withDefaults return type for boolean prop with undefined default value ([#8602](https://github.com/vuejs/core/issues/8602)) ([f07cb18](https://github.com/vuejs/core/commit/f07cb18fedf9a446545aadf76bcdfb957c7ebcbd))
28+
* **types:** ensure nextTick return type reflect correct Promise value ([#8406](https://github.com/vuejs/core/issues/8406)) ([6a22b1f](https://github.com/vuejs/core/commit/6a22b1f6c287b60eda385df8a514335af8e040ea))
29+
* **types:** support correct types for style on svg elements ([#6322](https://github.com/vuejs/core/issues/6322)) ([364dc53](https://github.com/vuejs/core/commit/364dc53c7cc6f97d812ad175199c698faa92538e))
30+
31+
32+
### Performance Improvements
33+
34+
* **compiler-sfc:** lazy require typescript ([d2c3d8b](https://github.com/vuejs/core/commit/d2c3d8b70b2df6e16f053a7ac58e6b04e7b2078f))
35+
* **custom-element:** cancel `MutationObserver` listener when disconnected ([#8666](https://github.com/vuejs/core/issues/8666)) ([24d98f0](https://github.com/vuejs/core/commit/24d98f03276de5b0fbced5a4c9d61b24e7d9d084))
36+
* mark `defineComponent` as side-effects-free ([#8512](https://github.com/vuejs/core/issues/8512)) ([438027c](https://github.com/vuejs/core/commit/438027cf9ecb63260f59d3027e0b188717694795))
37+
38+
39+
140
## [3.3.4](https://github.com/vuejs/core/compare/v3.3.3...v3.3.4) (2023-05-18)
241

342

package.json

Lines changed: 43 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
{
22
"private": true,
3-
"version": "3.3.4",
4-
"packageManager": "pnpm@8.6.2",
3+
"version": "3.3.5",
4+
"packageManager": "pnpm@8.9.2",
55
"type": "module",
66
"scripts": {
77
"dev": "node scripts/dev.js",
88
"build": "node scripts/build.js",
99
"build-dts": "tsc -p tsconfig.build.json && rollup -c rollup.dts.config.js",
10+
"clean": "rimraf packages/*/dist temp .eslintcache",
1011
"size": "run-s \"size-*\" && tsx scripts/usage-size.ts",
1112
"size-global": "node scripts/build.js vue runtime-dom -f global -p --size",
1213
"size-esm-runtime": "node scripts/build.js vue -f esm-bundler-runtime",
@@ -31,8 +32,8 @@
3132
"dev-sfc-run": "run-p \"dev compiler-sfc -f esm-browser\" \"dev vue -if esm-bundler-runtime\" \"dev server-renderer -if esm-bundler\" dev-sfc-serve",
3233
"serve": "serve",
3334
"open": "open http://localhost:3000/packages/template-explorer/local.html",
34-
"build-sfc-playground": "run-s build-compiler-cjs build-runtime-esm build-ssr-esm build-sfc-playground-self",
35-
"build-compiler-cjs": "node scripts/build.js compiler reactivity-transform shared -af cjs",
35+
"build-sfc-playground": "run-s build-all-cjs build-runtime-esm build-ssr-esm build-sfc-playground-self",
36+
"build-all-cjs": "node scripts/build.js vue runtime compiler reactivity reactivity-transform shared -af cjs",
3637
"build-runtime-esm": "node scripts/build.js runtime reactivity shared -af esm-bundler && node scripts/build.js vue -f esm-bundler-runtime && node scripts/build.js vue -f esm-browser-runtime",
3738
"build-ssr-esm": "node scripts/build.js compiler-sfc server-renderer -f esm-browser",
3839
"build-sfc-playground-self": "cd packages/sfc-playground && npm run build",
@@ -53,56 +54,57 @@
5354
]
5455
},
5556
"engines": {
56-
"node": ">=16.14.0"
57+
"node": ">=18.12.0"
5758
},
5859
"devDependencies": {
59-
"@babel/parser": "^7.21.3",
60-
"@babel/types": "^7.21.3",
61-
"@rollup/plugin-alias": "^4.0.3",
62-
"@rollup/plugin-commonjs": "^24.0.1",
63-
"@rollup/plugin-json": "^6.0.0",
64-
"@rollup/plugin-node-resolve": "^15.0.1",
65-
"@rollup/plugin-replace": "^5.0.2",
66-
"@rollup/plugin-terser": "^0.4.0",
67-
"@types/hash-sum": "^1.0.0",
68-
"@types/node": "^16.4.7",
69-
"@typescript-eslint/parser": "^6.6.0",
70-
"@vitest/coverage-istanbul": "^0.34.3",
60+
"@babel/parser": "^7.23.0",
61+
"@babel/types": "^7.23.0",
62+
"@rollup/plugin-alias": "^5.0.1",
63+
"@rollup/plugin-commonjs": "^25.0.7",
64+
"@rollup/plugin-json": "^6.0.1",
65+
"@rollup/plugin-node-resolve": "^15.2.3",
66+
"@rollup/plugin-replace": "^5.0.4",
67+
"@rollup/plugin-terser": "^0.4.4",
68+
"@types/hash-sum": "^1.0.1",
69+
"@types/node": "^18.18.6",
70+
"@typescript-eslint/parser": "^6.8.0",
71+
"@vitest/coverage-istanbul": "^0.34.4",
7172
"@vue/consolidate": "0.17.3",
72-
"chalk": "^4.1.0",
73-
"conventional-changelog-cli": "^2.0.31",
74-
"enquirer": "^2.3.2",
75-
"esbuild": "^0.17.4",
76-
"esbuild-plugin-polyfill-node": "^0.2.0",
77-
"eslint": "^8.48.0",
78-
"eslint-plugin-jest": "^27.2.3",
73+
"conventional-changelog-cli": "^4.1.0",
74+
"enquirer": "^2.4.1",
75+
"esbuild": "^0.19.5",
76+
"esbuild-plugin-polyfill-node": "^0.3.0",
77+
"eslint": "^8.51.0",
78+
"eslint-plugin-jest": "^27.4.2",
7979
"estree-walker": "^2.0.2",
80-
"execa": "^4.0.2",
80+
"execa": "^8.0.1",
8181
"jsdom": "^22.1.0",
82-
"lint-staged": "^14.0.1",
83-
"lodash": "^4.17.15",
84-
"magic-string": "^0.30.0",
82+
"lint-staged": "^15.0.2",
83+
"lodash": "^4.17.21",
84+
"magic-string": "^0.30.5",
8585
"markdown-table": "^3.0.3",
86-
"marked": "^4.0.10",
87-
"minimist": "^1.2.0",
86+
"marked": "^9.1.2",
87+
"minimist": "^1.2.8",
8888
"npm-run-all": "^4.1.5",
89+
"picocolors": "^1.0.0",
8990
"prettier": "^3.0.3",
9091
"pretty-bytes": "^6.1.1",
91-
"pug": "^3.0.1",
92-
"puppeteer": "~21.1.1",
93-
"rollup": "^3.26.0",
94-
"rollup-plugin-dts": "^5.3.0",
95-
"rollup-plugin-esbuild": "^5.0.0",
92+
"pug": "^3.0.2",
93+
"puppeteer": "~21.2.1",
94+
"rimraf": "^5.0.5",
95+
"rollup": "^3.29.4",
96+
"rollup-plugin-dts": "^6.1.0",
97+
"rollup-plugin-esbuild": "^6.1.0",
9698
"rollup-plugin-polyfill-node": "^0.12.0",
97-
"semver": "^7.3.2",
99+
"semver": "^7.5.4",
98100
"serve": "^14.2.1",
99101
"simple-git-hooks": "^2.9.0",
100-
"terser": "^5.19.2",
101-
"todomvc-app-css": "^2.3.0",
102-
"tslib": "^2.5.0",
103-
"tsx": "^3.12.7",
102+
"terser": "^5.22.0",
103+
"todomvc-app-css": "^2.4.2",
104+
"tslib": "^2.6.2",
105+
"tsx": "^3.14.0",
104106
"typescript": "^5.1.6",
105107
"vite": "^4.3.0",
106-
"vitest": "^0.34.3"
108+
"vitest": "^0.34.4"
107109
}
108110
}

packages/compiler-core/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@vue/compiler-core",
3-
"version": "3.3.4",
3+
"version": "3.3.5",
44
"description": "@vue/compiler-core",
55
"main": "index.js",
66
"module": "dist/compiler-core.esm-bundler.js",
@@ -32,12 +32,12 @@
3232
},
3333
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-core#readme",
3434
"dependencies": {
35-
"@babel/parser": "^7.21.3",
36-
"@vue/shared": "3.3.4",
35+
"@babel/parser": "^7.23.0",
36+
"@vue/shared": "3.3.5",
3737
"estree-walker": "^2.0.2",
3838
"source-map-js": "^1.0.2"
3939
},
4040
"devDependencies": {
41-
"@babel/types": "^7.21.3"
41+
"@babel/types": "^7.23.0"
4242
}
4343
}

packages/compiler-dom/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@vue/compiler-dom",
3-
"version": "3.3.4",
3+
"version": "3.3.5",
44
"description": "@vue/compiler-dom",
55
"main": "index.js",
66
"module": "dist/compiler-dom.esm-bundler.js",
@@ -37,7 +37,7 @@
3737
},
3838
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-dom#readme",
3939
"dependencies": {
40-
"@vue/shared": "3.3.4",
41-
"@vue/compiler-core": "3.3.4"
40+
"@vue/shared": "3.3.5",
41+
"@vue/compiler-core": "3.3.5"
4242
}
4343
}

packages/compiler-sfc/package.json

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@vue/compiler-sfc",
3-
"version": "3.3.4",
3+
"version": "3.3.5",
44
"description": "@vue/compiler-sfc",
55
"main": "dist/compiler-sfc.cjs.js",
66
"module": "dist/compiler-sfc.esm-browser.js",
@@ -32,29 +32,28 @@
3232
},
3333
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-sfc#readme",
3434
"dependencies": {
35-
"@babel/parser": "^7.20.15",
36-
"@vue/compiler-core": "3.3.4",
37-
"@vue/compiler-dom": "3.3.4",
38-
"@vue/compiler-ssr": "3.3.4",
39-
"@vue/reactivity-transform": "3.3.4",
40-
"@vue/shared": "3.3.4",
35+
"@babel/parser": "^7.23.0",
36+
"@vue/compiler-core": "3.3.5",
37+
"@vue/compiler-dom": "3.3.5",
38+
"@vue/compiler-ssr": "3.3.5",
39+
"@vue/reactivity-transform": "3.3.5",
40+
"@vue/shared": "3.3.5",
4141
"estree-walker": "^2.0.2",
42-
"magic-string": "^0.30.0",
43-
"postcss": "^8.1.10",
42+
"magic-string": "^0.30.5",
43+
"postcss": "^8.4.31",
4444
"source-map-js": "^1.0.2"
4545
},
4646
"devDependencies": {
47-
"@babel/types": "^7.21.3",
48-
"@types/estree": "^0.0.48",
49-
"@types/lru-cache": "^5.1.0",
47+
"@babel/types": "^7.23.0",
48+
"@types/estree": "^0.0.52",
5049
"@vue/consolidate": "^0.17.3",
5150
"hash-sum": "^2.0.0",
52-
"lru-cache": "^5.1.1",
51+
"lru-cache": "^10.0.1",
5352
"merge-source-map": "^1.1.0",
54-
"minimatch": "^9.0.0",
55-
"postcss-modules": "^4.0.0",
56-
"postcss-selector-parser": "^6.0.4",
57-
"pug": "^3.0.1",
58-
"sass": "^1.26.9"
53+
"minimatch": "^9.0.3",
54+
"postcss-modules": "^4.3.1",
55+
"postcss-selector-parser": "^6.0.13",
56+
"pug": "^3.0.2",
57+
"sass": "^1.69.4"
5958
}
6059
}

packages/compiler-sfc/src/cache.ts

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
import LRU from 'lru-cache'
1+
import { LRUCache } from 'lru-cache'
22

3-
export function createCache<T>(size = 500): Map<string, T> & { max?: number } {
3+
export function createCache<T extends {}>(
4+
max = 500
5+
): Map<string, T> | LRUCache<string, T> {
46
if (__GLOBAL__ || __ESM_BROWSER__) {
57
return new Map<string, T>()
68
}
7-
const cache = new LRU(size)
8-
// @ts-expect-error
9-
cache.delete = cache.del.bind(cache)
10-
return cache as any as Map<string, T>
9+
return new LRUCache({ max })
1110
}

0 commit comments

Comments
 (0)