diff --git a/CHANGELOG.md b/CHANGELOG.md index 40164402775..1b6e11ac1f3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +## [3.4.12](https://github.com/vuejs/core/compare/v3.4.11...v3.4.12) (2024-01-13) + + +### Reverts + +* fix(reactivity): correct dirty assign in render function ([#10091](https://github.com/vuejs/core/issues/10091)) ([8b18481](https://github.com/vuejs/core/commit/8b1848173b0bc8fd84ce1da1af8d373c044bf073)), closes [#10098](https://github.com/vuejs/core/issues/10098) [#10100](https://github.com/vuejs/core/issues/10100) + + + ## [3.4.11](https://github.com/vuejs/core/compare/v3.4.10...v3.4.11) (2024-01-12) diff --git a/package.json b/package.json index 2b53111b67f..cf80b74c498 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "private": true, - "version": "3.4.11", + "version": "3.4.12", "packageManager": "pnpm@8.14.0", "type": "module", "scripts": { diff --git a/packages/compiler-core/package.json b/packages/compiler-core/package.json index e19b668ed45..0332c648be1 100644 --- a/packages/compiler-core/package.json +++ b/packages/compiler-core/package.json @@ -1,6 +1,6 @@ { "name": "@vue/compiler-core", - "version": "3.4.11", + "version": "3.4.12", "description": "@vue/compiler-core", "main": "index.js", "module": "dist/compiler-core.esm-bundler.js", diff --git a/packages/compiler-dom/package.json b/packages/compiler-dom/package.json index 8f6f73c3270..3586c6dde96 100644 --- a/packages/compiler-dom/package.json +++ b/packages/compiler-dom/package.json @@ -1,6 +1,6 @@ { "name": "@vue/compiler-dom", - "version": "3.4.11", + "version": "3.4.12", "description": "@vue/compiler-dom", "main": "index.js", "module": "dist/compiler-dom.esm-bundler.js", diff --git a/packages/compiler-sfc/package.json b/packages/compiler-sfc/package.json index fda596705ca..da556510680 100644 --- a/packages/compiler-sfc/package.json +++ b/packages/compiler-sfc/package.json @@ -1,6 +1,6 @@ { "name": "@vue/compiler-sfc", - "version": "3.4.11", + "version": "3.4.12", "description": "@vue/compiler-sfc", "main": "dist/compiler-sfc.cjs.js", "module": "dist/compiler-sfc.esm-browser.js", diff --git a/packages/compiler-ssr/package.json b/packages/compiler-ssr/package.json index 8aba1f4f604..0aeed0fa516 100644 --- a/packages/compiler-ssr/package.json +++ b/packages/compiler-ssr/package.json @@ -1,6 +1,6 @@ { "name": "@vue/compiler-ssr", - "version": "3.4.11", + "version": "3.4.12", "description": "@vue/compiler-ssr", "main": "dist/compiler-ssr.cjs.js", "types": "dist/compiler-ssr.d.ts", diff --git a/packages/reactivity/__tests__/effect.spec.ts b/packages/reactivity/__tests__/effect.spec.ts index 925d9ed6104..9109177bf49 100644 --- a/packages/reactivity/__tests__/effect.spec.ts +++ b/packages/reactivity/__tests__/effect.spec.ts @@ -3,19 +3,16 @@ import { type ReactiveEffectRunner, TrackOpTypes, TriggerOpTypes, - computed, effect, markRaw, reactive, readonly, - ref, shallowReactive, stop, toRaw, } from '../src/index' import { pauseScheduling, resetScheduling } from '../src/effect' import { ITERATE_KEY, getDepFromReactive } from '../src/reactiveEffect' -import { h, nextTick, nodeOps, render, serialize } from '@vue/runtime-test' describe('reactivity/effect', () => { it('should run the passed function once (wrapped by a effect)', () => { @@ -1014,35 +1011,6 @@ describe('reactivity/effect', () => { expect(counterSpy).toHaveBeenCalledTimes(1) }) - // #10082 - it('should set dirtyLevel when effect is allowRecurse and is running', async () => { - const s = ref(0) - const n = computed(() => s.value + 1) - - const Child = { - setup() { - s.value++ - return () => n.value - }, - } - - const renderSpy = vi.fn() - const Parent = { - setup() { - return () => { - renderSpy() - return [n.value, h(Child)] - } - }, - } - - const root = nodeOps.createElement('div') - render(h(Parent), root) - await nextTick() - expect(serialize(root)).toBe('
22
') - expect(renderSpy).toHaveBeenCalledTimes(2) - }) - describe('empty dep cleanup', () => { it('should remove the dep when the effect is stopped', () => { const obj = reactive({ prop: 1 }) diff --git a/packages/reactivity/package.json b/packages/reactivity/package.json index 041f752c9f7..6b882fe1184 100644 --- a/packages/reactivity/package.json +++ b/packages/reactivity/package.json @@ -1,6 +1,6 @@ { "name": "@vue/reactivity", - "version": "3.4.11", + "version": "3.4.12", "description": "@vue/reactivity", "main": "index.js", "module": "dist/reactivity.esm-bundler.js", diff --git a/packages/reactivity/src/effect.ts b/packages/reactivity/src/effect.ts index 8876604bc7a..5ddf8e6f0ac 100644 --- a/packages/reactivity/src/effect.ts +++ b/packages/reactivity/src/effect.ts @@ -295,9 +295,7 @@ export function triggerEffects( } if ( effect._dirtyLevel < dirtyLevel && - (!effect._runnings || - effect.allowRecurse || - dirtyLevel !== DirtyLevels.ComputedValueDirty) + (!effect._runnings || dirtyLevel !== DirtyLevels.ComputedValueDirty) ) { const lastDirtyLevel = effect._dirtyLevel effect._dirtyLevel = dirtyLevel diff --git a/packages/runtime-core/package.json b/packages/runtime-core/package.json index b0aab75df43..17d984a9648 100644 --- a/packages/runtime-core/package.json +++ b/packages/runtime-core/package.json @@ -1,6 +1,6 @@ { "name": "@vue/runtime-core", - "version": "3.4.11", + "version": "3.4.12", "description": "@vue/runtime-core", "main": "index.js", "module": "dist/runtime-core.esm-bundler.js", diff --git a/packages/runtime-dom/package.json b/packages/runtime-dom/package.json index 5cee82357aa..c2fd6161acc 100644 --- a/packages/runtime-dom/package.json +++ b/packages/runtime-dom/package.json @@ -1,6 +1,6 @@ { "name": "@vue/runtime-dom", - "version": "3.4.11", + "version": "3.4.12", "description": "@vue/runtime-dom", "main": "index.js", "module": "dist/runtime-dom.esm-bundler.js", diff --git a/packages/server-renderer/package.json b/packages/server-renderer/package.json index de746beb757..4315ce416cb 100644 --- a/packages/server-renderer/package.json +++ b/packages/server-renderer/package.json @@ -1,6 +1,6 @@ { "name": "@vue/server-renderer", - "version": "3.4.11", + "version": "3.4.12", "description": "@vue/server-renderer", "main": "index.js", "module": "dist/server-renderer.esm-bundler.js", diff --git a/packages/shared/package.json b/packages/shared/package.json index 01847a44832..efd8d80c731 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -1,6 +1,6 @@ { "name": "@vue/shared", - "version": "3.4.11", + "version": "3.4.12", "description": "internal utils shared across @vue packages", "main": "index.js", "module": "dist/shared.esm-bundler.js", diff --git a/packages/vue-compat/package.json b/packages/vue-compat/package.json index 3d8e042c97b..4f9a15789ae 100644 --- a/packages/vue-compat/package.json +++ b/packages/vue-compat/package.json @@ -1,6 +1,6 @@ { "name": "@vue/compat", - "version": "3.4.11", + "version": "3.4.12", "description": "Vue 3 compatibility build for Vue 2", "main": "index.js", "module": "dist/vue.runtime.esm-bundler.js", diff --git a/packages/vue/package.json b/packages/vue/package.json index 01b590d1cfd..f0c4696d9d2 100644 --- a/packages/vue/package.json +++ b/packages/vue/package.json @@ -1,6 +1,6 @@ { "name": "vue", - "version": "3.4.11", + "version": "3.4.12", "description": "The progressive JavaScript framework for building modern web UI.", "main": "index.js", "module": "dist/vue.runtime.esm-bundler.js",