Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: vuejs/core
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v3.0.7
Choose a base ref
...
head repository: vuejs/core
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v3.0.8
Choose a head ref

Commits on Mar 1, 2021

  1. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    8ffcde2 View commit details
  2. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    13c9d2c View commit details
  3. Copy the full SHA
    75fdcd8 View commit details
  4. Copy the full SHA
    3f9906a View commit details
  5. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    7562e72 View commit details
  6. Copy the full SHA
    69304cf View commit details

Commits on Mar 2, 2021

  1. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    fbf2d68 View commit details

Commits on Mar 3, 2021

  1. build(deps): bump postcss from 8.1.10 to 8.2.6 (#3221)

    Bumps [postcss](https://github.com/postcss/postcss) from 8.1.10 to 8.2.6.
    - [Release notes](https://github.com/postcss/postcss/releases)
    - [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
    - [Commits](postcss/postcss@8.1.10...8.2.6)
    
    Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
    
    Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
    dependabot-preview[bot] authored Mar 3, 2021

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    2a7f257 View commit details
  2. build(deps-dev): bump pug from 2.0.4 to 3.0.1 (#3344)

    Bumps [pug](https://github.com/pugjs/pug) from 2.0.4 to 3.0.1.
    - [Release notes](https://github.com/pugjs/pug/releases)
    - [Commits](https://github.com/pugjs/pug/compare/pug@2.0.4...pug@3.0.1)
    
    Signed-off-by: dependabot[bot] <support@github.com>
    
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored Mar 3, 2021

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    9fd66d8 View commit details
  3. Copy the full SHA
    3e4c3ac View commit details
  4. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    57e1aa8 View commit details
  5. Copy the full SHA
    425b5c6 View commit details

Commits on Mar 4, 2021

  1. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    0bc2782 View commit details
  2. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    cf625dc View commit details

Commits on Mar 5, 2021

  1. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    cc975c1 View commit details
  2. Copy the full SHA
    aea88c3 View commit details
  3. Copy the full SHA
    f74b16c View commit details
  4. perf: support only attaching slot scope ids when necessary

    This is done by adding the `slotted: false` option to:
    
    - compiler-dom
    - compiler-ssr
    - compiler-sfc (forwarded to template compiler)
    
    At runtime, only slotted component will render slot fragments with
    slot scope Ids. For SSR, only slotted component will add slot scope Ids
    to rendered slot content. This should improve both runtime performance
    and reduce SSR rendered markup size.
    
    Note: requires SFC tooling (e.g. `vue-loader` and `vite`) to pass on
    the `slotted` option from the SFC descriptoer to the `compileTemplate`
    call.
    yyx990803 committed Mar 5, 2021
    Copy the full SHA
    02cbbb7 View commit details
  5. chore: fix types

    yyx990803 committed Mar 5, 2021
    Copy the full SHA
    68416e9 View commit details
  6. chore: fix all test cases

    yyx990803 committed Mar 5, 2021
    Copy the full SHA
    ff4d4ec View commit details
  7. Copy the full SHA
    540e26f View commit details

Commits on Mar 8, 2021

  1. Copy the full SHA
    11c3e04 View commit details

Commits on Mar 9, 2021

  1. Copy the full SHA
    dc186f4 View commit details

Commits on Mar 10, 2021

  1. Copy the full SHA
    1fb6fbc View commit details

Commits on Mar 15, 2021

  1. build(deps-dev): bump eslint from 7.21.0 to 7.22.0

    Bumps [eslint](https://github.com/eslint/eslint) from 7.21.0 to 7.22.0.
    - [Release notes](https://github.com/eslint/eslint/releases)
    - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
    - [Commits](eslint/eslint@v7.21.0...v7.22.0)
    
    Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
    dependabot-preview[bot] committed Mar 15, 2021
    Copy the full SHA
    12a964f View commit details
  2. Copy the full SHA
    a26cd9c View commit details

Commits on Mar 16, 2021

  1. Copy the full SHA
    e8dd823 View commit details
  2. Copy the full SHA
    c070b05 View commit details

Commits on Mar 18, 2021

  1. Copy the full SHA
    26fa4e0 View commit details
  2. build(deps-dev): bump ts-jest from 26.5.3 to 26.5.4

    Bumps [ts-jest](https://github.com/kulshekhar/ts-jest) from 26.5.3 to 26.5.4.
    - [Release notes](https://github.com/kulshekhar/ts-jest/releases)
    - [Changelog](https://github.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md)
    - [Commits](kulshekhar/ts-jest@v26.5.3...v26.5.4)
    
    Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
    dependabot-preview[bot] committed Mar 18, 2021
    Copy the full SHA
    9717756 View commit details

Commits on Mar 19, 2021

  1. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    6cb9475 View commit details

Commits on Mar 22, 2021

  1. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    602b58e View commit details
  2. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    e8e9b00 View commit details
  3. Copy the full SHA
    b2e00f0 View commit details
  4. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    67a0290 View commit details

Commits on Mar 23, 2021

  1. build(deps-dev): bump semver from 7.3.4 to 7.3.5

    Bumps [semver](https://github.com/npm/node-semver) from 7.3.4 to 7.3.5.
    - [Release notes](https://github.com/npm/node-semver/releases)
    - [Changelog](https://github.com/npm/node-semver/blob/master/CHANGELOG.md)
    - [Commits](npm/node-semver@v7.3.4...v7.3.5)
    
    Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
    dependabot-preview[bot] committed Mar 23, 2021
    Copy the full SHA
    7258648 View commit details
  2. Copy the full SHA
    0600eb4 View commit details
  3. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    3b3a9a1 View commit details
  4. fix(teleport): targetAnchor should also be removed when unmounted (#2870

    )
    
    * fix(teleport): targetAnchor should also be removed when unmounted
    
    * fix(teleport): targetAnchor should also be removed when unmounted
    leaon4 authored Mar 23, 2021

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    21d1288 View commit details
  5. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    eb1fae6 View commit details

Commits on Mar 25, 2021

  1. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    5dbe834 View commit details
  2. build(deps): bump @babel/types from 7.13.0 to 7.13.12 (#3465)

    Bumps [@babel/types](https://github.com/babel/babel/tree/HEAD/packages/babel-types) from 7.13.0 to 7.13.12.
    - [Release notes](https://github.com/babel/babel/releases)
    - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
    - [Commits](https://github.com/babel/babel/commits/v7.13.12/packages/babel-types)
    
    Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
    
    Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
    dependabot-preview[bot] authored Mar 25, 2021

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    5bc2572 View commit details
  3. build(deps): bump @babel/parser from 7.13.9 to 7.13.12 (#3462)

    Bumps [@babel/parser](https://github.com/babel/babel/tree/HEAD/packages/babel-parser) from 7.13.9 to 7.13.12.
    - [Release notes](https://github.com/babel/babel/releases)
    - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
    - [Commits](https://github.com/babel/babel/commits/v7.13.12/packages/babel-parser)
    
    Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
    
    Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
    dependabot-preview[bot] authored Mar 25, 2021

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    7fad69c View commit details
  4. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    0a583d5 View commit details
  5. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    7769513 View commit details
  6. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    49f4072 View commit details
  7. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    bf34e33 View commit details
  8. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    e4b5fcc View commit details
  9. Copy the full SHA
    41e02f0 View commit details
  10. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    3755e60 View commit details
Showing with 4,029 additions and 2,402 deletions.
  1. +57 −0 CHANGELOG.md
  2. +22 −9 README.md
  3. +2 −2 package.json
  4. +1 −0 packages/compiler-core/__tests__/__snapshots__/codegen.spec.ts.snap
  5. +6 −6 packages/compiler-core/__tests__/__snapshots__/compile.spec.ts.snap
  6. +19 −32 packages/compiler-core/__tests__/__snapshots__/scopeId.spec.ts.snap
  7. +7 −1 packages/compiler-core/__tests__/codegen.spec.ts
  8. +10 −0 packages/compiler-core/__tests__/parse.spec.ts
  9. +14 −27 packages/compiler-core/__tests__/scopeId.spec.ts
  10. +4 −4 packages/compiler-core/__tests__/transforms/__snapshots__/hoistStatic.spec.ts.snap
  11. +1 −1 packages/compiler-core/__tests__/transforms/__snapshots__/transformExpressions.spec.ts.snap
  12. +10 −10 packages/compiler-core/__tests__/transforms/__snapshots__/vFor.spec.ts.snap
  13. +9 −9 packages/compiler-core/__tests__/transforms/__snapshots__/vIf.spec.ts.snap
  14. +8 −8 packages/compiler-core/__tests__/transforms/__snapshots__/vModel.spec.ts.snap
  15. +2 −2 packages/compiler-core/__tests__/transforms/__snapshots__/vOnce.spec.ts.snap
  16. +9 −9 packages/compiler-core/__tests__/transforms/__snapshots__/vSlot.spec.ts.snap
  17. +1 −1 packages/compiler-core/__tests__/transforms/transformElement.spec.ts
  18. +10 −0 packages/compiler-core/__tests__/transforms/transformSlotOutlet.spec.ts
  19. +14 −2 packages/compiler-core/__tests__/transforms/vIf.spec.ts
  20. +7 −0 packages/compiler-core/__tests__/transforms/vModel.spec.ts
  21. +18 −3 packages/compiler-core/__tests__/transforms/vSlot.spec.ts
  22. +2 −2 packages/compiler-core/package.json
  23. +1 −1 packages/compiler-core/src/ast.ts
  24. +25 −46 packages/compiler-core/src/codegen.ts
  25. +6 −0 packages/compiler-core/src/options.ts
  26. +1 −1 packages/compiler-core/src/parse.ts
  27. +2 −6 packages/compiler-core/src/runtimeHelpers.ts
  28. +28 −9 packages/compiler-core/src/transform.ts
  29. +10 −1 packages/compiler-core/src/transforms/hoistStatic.ts
  30. +11 −6 packages/compiler-core/src/transforms/transformElement.ts
  31. +10 −0 packages/compiler-core/src/transforms/transformSlotOutlet.ts
  32. +11 −1 packages/compiler-core/src/transforms/vFor.ts
  33. +18 −7 packages/compiler-core/src/transforms/vIf.ts
  34. +19 −8 packages/compiler-core/src/transforms/vSlot.ts
  35. +1 −1 packages/compiler-core/src/utils.ts
  36. +13 −13 packages/compiler-dom/__tests__/transforms/__snapshots__/vModel.spec.ts.snap
  37. +1 −1 packages/compiler-dom/__tests__/transforms/__snapshots__/vShow.spec.ts.snap
  38. +22 −0 packages/compiler-dom/__tests__/transforms/stringifyStatic.spec.ts
  39. +3 −3 packages/compiler-dom/package.json
  40. +12 −13 packages/compiler-dom/src/transforms/stringifyStatic.ts
  41. +29 −0 packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap
  42. +6 −6 packages/compiler-sfc/__tests__/__snapshots__/templateTransformAssetUrl.spec.ts.snap
  43. +28 −0 packages/compiler-sfc/__tests__/compileScript.spec.ts
  44. +4 −2 packages/compiler-sfc/__tests__/compileStyle.spec.ts
  45. +16 −0 packages/compiler-sfc/__tests__/compileTemplate.spec.ts
  46. +18 −0 packages/compiler-sfc/__tests__/parse.spec.ts
  47. +9 −9 packages/compiler-sfc/package.json
  48. +37 −11 packages/compiler-sfc/src/compileScript.ts
  49. +3 −0 packages/compiler-sfc/src/compileTemplate.ts
  50. +11 −1 packages/compiler-sfc/src/parse.ts
  51. +7 −2 packages/compiler-sfc/src/stylePluginScoped.ts
  52. +1 −1 packages/compiler-ssr/__tests__/ssrComponent.spec.ts
  53. +18 −23 packages/compiler-ssr/__tests__/ssrScopeId.spec.ts
  54. +57 −0 packages/compiler-ssr/__tests__/ssrSlotOutlet.spec.ts
  55. +3 −3 packages/compiler-ssr/package.json
  56. +18 −2 packages/compiler-ssr/src/transforms/ssrTransformComponent.ts
  57. +27 −8 packages/compiler-ssr/src/transforms/ssrTransformSlotOutlet.ts
  58. +165 −0 packages/reactivity/__tests__/collections/shallowReadonly.spec.ts
  59. +18 −26 packages/reactivity/__tests__/readonly.spec.ts
  60. +12 −1 packages/reactivity/__tests__/shallowReactive.spec.ts
  61. +201 −0 packages/reactivity/__tests__/shallowReadonly.spec.ts
  62. +2 −2 packages/reactivity/package.json
  63. +13 −3 packages/reactivity/src/baseHandlers.ts
  64. +34 −4 packages/reactivity/src/collectionHandlers.ts
  65. +7 −5 packages/reactivity/src/computed.ts
  66. +2 −1 packages/reactivity/src/index.ts
  67. +15 −8 packages/reactivity/src/reactive.ts
  68. +48 −1 packages/runtime-core/__tests__/apiAsyncComponent.spec.ts
  69. +87 −0 packages/runtime-core/__tests__/apiOptions.spec.ts
  70. +38 −0 packages/runtime-core/__tests__/apiWatch.spec.ts
  71. +15 −0 packages/runtime-core/__tests__/componentEmits.spec.ts
  72. +58 −1 packages/runtime-core/__tests__/componentProps.spec.ts
  73. 0 packages/runtime-core/__tests__/{componentProxy.spec.ts → componentPublicInstance.spec.ts}
  74. +22 −7 packages/runtime-core/__tests__/components/BaseTransition.spec.ts
  75. +3 −5 packages/runtime-core/__tests__/components/KeepAlive.spec.ts
  76. +31 −7 packages/runtime-core/__tests__/components/Teleport.spec.ts
  77. +48 −1 packages/runtime-core/__tests__/errorHandling.spec.ts
  78. +5 −4 packages/runtime-core/__tests__/helpers/renderSlot.spec.ts
  79. +31 −0 packages/runtime-core/__tests__/helpers/resolveAssets.spec.ts
  80. +0 −105 packages/runtime-core/__tests__/helpers/scopeId.spec.ts
  81. +61 −0 packages/runtime-core/__tests__/hmr.spec.ts
  82. +33 −1 packages/runtime-core/__tests__/hydration.spec.ts
  83. +21 −0 packages/runtime-core/__tests__/rendererComponent.spec.ts
  84. +180 −0 packages/runtime-core/__tests__/scopeId.spec.ts
  85. +5 −5 packages/runtime-core/__tests__/vnode.spec.ts
  86. +3 −3 packages/runtime-core/package.json
  87. +9 −4 packages/runtime-core/src/apiCreateApp.ts
  88. +1 −1 packages/runtime-core/src/apiInject.ts
  89. +4 −2 packages/runtime-core/src/apiWatch.ts
  90. +29 −13 packages/runtime-core/src/component.ts
  91. +5 −2 packages/runtime-core/src/componentEmits.ts
  92. +20 −38 packages/runtime-core/src/componentOptions.ts
  93. +30 −16 packages/runtime-core/src/componentProps.ts
  94. +7 −8 packages/runtime-core/src/componentPublicInstance.ts
  95. +68 −0 packages/runtime-core/src/componentRenderContext.ts
  96. +6 −15 packages/runtime-core/src/componentRenderUtils.ts
  97. +2 −2 packages/runtime-core/src/componentSlots.ts
  98. +1 −1 packages/runtime-core/src/components/BaseTransition.ts
  99. +14 −6 packages/runtime-core/src/components/KeepAlive.ts
  100. +45 −11 packages/runtime-core/src/components/Suspense.ts
  101. +44 −9 packages/runtime-core/src/components/Teleport.ts
  102. +1 −1 packages/runtime-core/src/directives.ts
  103. +5 −1 packages/runtime-core/src/helpers/renderSlot.ts
  104. +18 −12 packages/runtime-core/src/helpers/resolveAssets.ts
  105. +0 −36 packages/runtime-core/src/helpers/scopeId.ts
  106. +0 −37 packages/runtime-core/src/helpers/withRenderContext.ts
  107. +30 −4 packages/runtime-core/src/hydration.ts
  108. +3 −6 packages/runtime-core/src/index.ts
  109. +125 −56 packages/runtime-core/src/renderer.ts
  110. +1 −1 packages/runtime-core/src/scheduler.ts
  111. +18 −3 packages/runtime-core/src/vnode.ts
  112. +15 −0 packages/runtime-dom/__tests__/createApp.spec.ts
  113. +28 −0 packages/runtime-dom/__tests__/nodeOps.spec.ts
  114. +3 −3 packages/runtime-dom/package.json
  115. +2 −2 packages/runtime-dom/src/index.ts
  116. +24 −4 packages/runtime-dom/src/nodeOps.ts
  117. +5 −2 packages/runtime-dom/types/jsx.d.ts
  118. +3 −3 packages/runtime-test/package.json
  119. +157 −16 packages/server-renderer/__tests__/render.spec.ts
  120. +111 −16 packages/server-renderer/__tests__/ssrScopeId.spec.ts
  121. +11 −4 packages/server-renderer/__tests__/ssrSuspense.spec.ts
  122. +4 −4 packages/server-renderer/package.json
  123. +4 −2 packages/server-renderer/src/helpers/ssrRenderComponent.ts
  124. +3 −3 packages/server-renderer/src/helpers/ssrRenderSlot.ts
  125. +14 −18 packages/server-renderer/src/render.ts
  126. +1 −1 packages/shared/package.json
  127. +1 −1 packages/size-check/package.json
  128. +1 −1 packages/template-explorer/package.json
  129. +1 −0 packages/template-explorer/src/options.ts
  130. +4 −4 packages/vue/package.json
  131. +41 −1 test-dts/defineComponent.test-d.tsx
  132. +6 −0 test-dts/index.d.ts
  133. +9 −0 test-dts/tsx.test-d.tsx
  134. +1,218 −1,529 yarn.lock
57 changes: 57 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,60 @@
## [3.0.8](https://github.com/vuejs/vue-next/compare/v3.0.7...v3.0.8) (2021-03-26)


### Bug Fixes

* **compiler:** properly bail stringfication for nested slot elements ([f74b16c](https://github.com/vuejs/vue-next/commit/f74b16ccfe42abddf6abfa6105900ad9b8124a96))
* **compiler-core:** allow unicode to appear in identifiers ([#3443](https://github.com/vuejs/vue-next/issues/3443)) ([ebedccc](https://github.com/vuejs/vue-next/commit/ebedcccdc04d8cda40f7a3b69354acfdda265c74)), closes [#3440](https://github.com/vuejs/vue-next/issues/3440)
* **compiler-core:** avoid generating useless createVNode helper ([#2938](https://github.com/vuejs/vue-next/issues/2938)) ([7715c49](https://github.com/vuejs/vue-next/commit/7715c49af92f5db0e4eef52d983850c08439d87c)), closes [#2739](https://github.com/vuejs/vue-next/issues/2739)
* **compiler-core:** detect v-if branch root with comment as dev fragment ([#2785](https://github.com/vuejs/vue-next/issues/2785)) ([4bf7ba1](https://github.com/vuejs/vue-next/commit/4bf7ba19bf6b1a6c242090d512c91e1bf8c7c8cc)), closes [#2780](https://github.com/vuejs/vue-next/issues/2780)
* **compiler-core:** fix the detection of forwarded slots with v-if or v-for ([#3353](https://github.com/vuejs/vue-next/issues/3353)) ([602b58e](https://github.com/vuejs/vue-next/commit/602b58ebd1923dd48669755d5f5b67c5478cc625)), closes [#3347](https://github.com/vuejs/vue-next/issues/3347)
* **compiler-core:** should not condense whitespace in RCDATA text mode ([#3482](https://github.com/vuejs/vue-next/issues/3482)) ([b4b8215](https://github.com/vuejs/vue-next/commit/b4b82159e2175d27f7d1f2641d262269f981fc86)), closes [#3479](https://github.com/vuejs/vue-next/issues/3479)
* **compiler-dom:** stringifyStatic should remove attribute bindings with `null` value ([#3477](https://github.com/vuejs/vue-next/issues/3477)) ([ca6aa01](https://github.com/vuejs/vue-next/commit/ca6aa01181dd15e2ab76d89538cf898221f927cd)), closes [#3475](https://github.com/vuejs/vue-next/issues/3475)
* **compiler-sfc:** scope Id should not be attached to [@keyframe](https://github.com/keyframe) breakpoint rules ([#3308](https://github.com/vuejs/vue-next/issues/3308)) ([6cb9475](https://github.com/vuejs/vue-next/commit/6cb94752b0354117669de94f81c5195ec8c7f40c)), closes [#3304](https://github.com/vuejs/vue-next/issues/3304)
* **compiler-sfc:** should not rewrite scope variable ([#3449](https://github.com/vuejs/vue-next/issues/3449)) ([bbc5fe6](https://github.com/vuejs/vue-next/commit/bbc5fe6a9716efe87fdb4c4ac51fcdc3bd541904)), closes [#3445](https://github.com/vuejs/vue-next/issues/3445)
* **compiler-ssr:** keep the order of imports expression for the fallback branch of SSR ([#3448](https://github.com/vuejs/vue-next/issues/3448)) ([49f4072](https://github.com/vuejs/vue-next/commit/49f4072c83c06a66e2b7a334d8dedabd1b433ca9)), closes [#3447](https://github.com/vuejs/vue-next/issues/3447)
* **component:** prioritize registered component over implicit self-reference via filename ([abd129d](https://github.com/vuejs/vue-next/commit/abd129d845951737c335a80a8af6cf7b0df2f74d)), closes [#2827](https://github.com/vuejs/vue-next/issues/2827)
* **hydration:** handle camel-case tag name when performing match assertion ([#3247](https://github.com/vuejs/vue-next/issues/3247)) ([9036f88](https://github.com/vuejs/vue-next/commit/9036f88d8304a3455265f1ecd86ec8f4a5ea4715)), closes [#3243](https://github.com/vuejs/vue-next/issues/3243)
* **KeepAlive:** adapt keepalive for ssr ([#3259](https://github.com/vuejs/vue-next/issues/3259)) ([e8e9b00](https://github.com/vuejs/vue-next/commit/e8e9b00f81ed42434afd92f84101e7a14d70a23c)), closes [#3255](https://github.com/vuejs/vue-next/issues/3255)
* **reactivity:** ensure computed can be wrapped by readonly ([41e02f0](https://github.com/vuejs/vue-next/commit/41e02f0fac069c93c94438741517e713f3c94215)), closes [#3376](https://github.com/vuejs/vue-next/issues/3376)
* **reactivity:** ensure that shallow and normal proxies are tracked seperately (close [#2843](https://github.com/vuejs/vue-next/issues/2843)) ([#2851](https://github.com/vuejs/vue-next/issues/2851)) ([22cc4a7](https://github.com/vuejs/vue-next/commit/22cc4a76592cfe336e75e2fa0c05232ae1f0f149))
* **reactivity:** fix shallow readonly behavior for collections ([#3003](https://github.com/vuejs/vue-next/issues/3003)) ([68de9f4](https://github.com/vuejs/vue-next/commit/68de9f408a2e61a5726a4a0d03b026cba451c5bd)), closes [#3007](https://github.com/vuejs/vue-next/issues/3007)
* **rumtime-core:** custom dom props should be cloned when cloning a hoisted DOM ([#3080](https://github.com/vuejs/vue-next/issues/3080)) ([5dbe834](https://github.com/vuejs/vue-next/commit/5dbe8348581dacd7a3594a9b0055ce350ce8e5bf)), closes [#3072](https://github.com/vuejs/vue-next/issues/3072)
* **runtime-core:** cache props default values to avoid unnecessary watcher trigger ([#3474](https://github.com/vuejs/vue-next/issues/3474)) ([44166b4](https://github.com/vuejs/vue-next/commit/44166b43d9be1062f79612880f71284049bcab0b)), closes [#3471](https://github.com/vuejs/vue-next/issues/3471)
* **runtime-core:** ensure only skip unflushed job ([#3406](https://github.com/vuejs/vue-next/issues/3406)) ([bf34e33](https://github.com/vuejs/vue-next/commit/bf34e33c909da89681b9c5004cdf04ab198ec5a7))
* **runtime-core:** fix async component ref handling ([#3191](https://github.com/vuejs/vue-next/issues/3191)) ([7562e72](https://github.com/vuejs/vue-next/commit/7562e72c2b58a5646bd4fbd9adea11eb884fe140)), closes [#3188](https://github.com/vuejs/vue-next/issues/3188)
* **runtime-core:** fix erraneous emits warnings w/ mixins ([60d777d](https://github.com/vuejs/vue-next/commit/60d777d228414515cc32526ad72a53ef070501be)), closes [#2651](https://github.com/vuejs/vue-next/issues/2651)
* **runtime-core:** fix warning for absent props ([#3363](https://github.com/vuejs/vue-next/issues/3363)) ([86ceef4](https://github.com/vuejs/vue-next/commit/86ceef43523bfbbb0a24731d3802ca6849cbefd6)), closes [#3362](https://github.com/vuejs/vue-next/issues/3362)
* **runtime-core:** handle error in async setup ([#2881](https://github.com/vuejs/vue-next/issues/2881)) ([d668d48](https://github.com/vuejs/vue-next/commit/d668d48e9e5211a49ee53361ea5b4d67ba16e0a3))
* **runtime-core:** handle error in async watchEffect ([#3129](https://github.com/vuejs/vue-next/issues/3129)) ([eb1fae6](https://github.com/vuejs/vue-next/commit/eb1fae63f926435fb0eef890663d24e09d4c79e1))
* **runtime-core:** should call chained mixins and extends ([#3040](https://github.com/vuejs/vue-next/issues/3040)) ([b58bb16](https://github.com/vuejs/vue-next/commit/b58bb169590297daf9df0433b413fab118f18486)), closes [#3038](https://github.com/vuejs/vue-next/issues/3038)
* **runtime-core:** should not cache property access during data() invocation ([#3299](https://github.com/vuejs/vue-next/issues/3299)) ([6e88156](https://github.com/vuejs/vue-next/commit/6e88156934a88c891fa1014c46c04a3fa1a5eaeb)), closes [#3297](https://github.com/vuejs/vue-next/issues/3297)
* **runtime-core:** should not track deps in pre flush watcher callbacks ([d5824b9](https://github.com/vuejs/vue-next/commit/d5824b97c570eb9e3d689b840f098e401e458d05)), closes [#2728](https://github.com/vuejs/vue-next/issues/2728)
* **runtime-core:** the select tag's multiple prop should be set before the children mounting ([#3202](https://github.com/vuejs/vue-next/issues/3202)) ([2451dd8](https://github.com/vuejs/vue-next/commit/2451dd8ae63cc0667a234f9896b1a4f241d4cb44)), closes [#3199](https://github.com/vuejs/vue-next/issues/3199)
* **runtime-dom:** support mounting app to svg container ([#2929](https://github.com/vuejs/vue-next/issues/2929)) ([8ffcde2](https://github.com/vuejs/vue-next/commit/8ffcde2836baa41d279d9cc079f139a2e31cf6be)), closes [#2926](https://github.com/vuejs/vue-next/issues/2926)
* **ssr:** ensure async setup error handling work with suspense during ssr ([2e71f07](https://github.com/vuejs/vue-next/commit/2e71f07bc1bab09ca6970b8992d05aeea9b5e9e4))
* **ssr:** fix memory leak when vnode component render throws error ([da944cb](https://github.com/vuejs/vue-next/commit/da944cb37987212d1b1a860b79f43a7c85814225)), closes [#3100](https://github.com/vuejs/vue-next/issues/3100)
* **ssr:** properly update currentRenderingInstance state during ssr ([8c3c14a](https://github.com/vuejs/vue-next/commit/8c3c14a0ff02bffbc37e1b069d4ff3c7e086a1d5)), closes [#2863](https://github.com/vuejs/vue-next/issues/2863)
* **ssr:** respect render function from extends/mixins in ssr ([#3006](https://github.com/vuejs/vue-next/issues/3006)) ([0a583d5](https://github.com/vuejs/vue-next/commit/0a583d5ca224d2cba878dc6b0fb8d468e658f1ef)), closes [#3004](https://github.com/vuejs/vue-next/issues/3004)
* **ssr:** watchEffect onInvalidate runner initialization ([#3323](https://github.com/vuejs/vue-next/issues/3323)) ([e4b5fcc](https://github.com/vuejs/vue-next/commit/e4b5fccd0c54a1109737ae75b3ca2bc603cb05b3)), closes [#3322](https://github.com/vuejs/vue-next/issues/3322)
* **ssr/hydration:** handle ending empty text node ([#3246](https://github.com/vuejs/vue-next/issues/3246)) ([420c8f4](https://github.com/vuejs/vue-next/commit/420c8f4580dddea9a724cfadc4cc2c272181c24d)), closes [#3245](https://github.com/vuejs/vue-next/issues/3245)
* **teleport:** targetAnchor should also be removed when unmounted ([#2870](https://github.com/vuejs/vue-next/issues/2870)) ([21d1288](https://github.com/vuejs/vue-next/commit/21d128813353fd5d5a5304f8fb885265f5163cd8))
* **Teleport:** component with multi roots should be removed when unmounted ([#3157](https://github.com/vuejs/vue-next/issues/3157)) ([7769513](https://github.com/vuejs/vue-next/commit/776951315d38fb93b75892bd60a69177b4480f67)), closes [#3156](https://github.com/vuejs/vue-next/issues/3156)
* **Teleport:** fallback to non-optimized mode when HRM performing updates ([#3311](https://github.com/vuejs/vue-next/issues/3311)) ([9cb21d0](https://github.com/vuejs/vue-next/commit/9cb21d088edd097b75a038f2c11d1c921406686f)), closes [#3302](https://github.com/vuejs/vue-next/issues/3302)
* **transition:** toggling branches with in-out mode should be transitioned correctly ([#3109](https://github.com/vuejs/vue-next/issues/3109)) ([67a0290](https://github.com/vuejs/vue-next/commit/67a0290c0aa5626dbc71b66b00e7ca7755e339cb)), closes [#3104](https://github.com/vuejs/vue-next/issues/3104)
* **types:** allow style to be an array in JSX ([#2947](https://github.com/vuejs/vue-next/issues/2947)) ([13c9d2c](https://github.com/vuejs/vue-next/commit/13c9d2ca82d60652ef19fe055ecbe0d05134007b))
* **types:** union function prop ([#3119](https://github.com/vuejs/vue-next/issues/3119)) ([3755e60](https://github.com/vuejs/vue-next/commit/3755e60c52adcd83e569f32c3d31d8854b4fdd8d)), closes [#3357](https://github.com/vuejs/vue-next/issues/3357)
* **types:** unwrap refs on public instance data ([#3319](https://github.com/vuejs/vue-next/issues/3319)) ([2b588cf](https://github.com/vuejs/vue-next/commit/2b588cf1bc03329576b8759c9072e3e551b739f1)), closes [#3315](https://github.com/vuejs/vue-next/issues/3315)
* **types/jsx:** llow tabindex to be a string ([#3476](https://github.com/vuejs/vue-next/issues/3476)) ([e4a5712](https://github.com/vuejs/vue-next/commit/e4a5712a33d10d3087f1c3cff0ecdf5569a84d94))
* add display name for suspense component ([#3312](https://github.com/vuejs/vue-next/issues/3312)) ([3b3a9a1](https://github.com/vuejs/vue-next/commit/3b3a9a1f5225fb734d16ffe2d596f457e9c47cec))


### Performance Improvements

* support only attaching slot scope ids when necessary ([02cbbb7](https://github.com/vuejs/vue-next/commit/02cbbb718ca226b087c42e6f132120931307c2a6))



## [3.0.7](https://github.com/vuejs/vue-next/compare/v3.0.6...v3.0.7) (2021-03-01)


31 changes: 22 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -9,7 +9,11 @@ This is the repository for Vue 3.0.
- Scaffold via [Vite](https://github.com/vitejs/vite):

```bash
npm init vite-app hello-vue3 # OR yarn create vite-app hello-vue3
# npm
npm init @vitejs/app
# yarn
yarn create @vitejs/app
# select vue template
```

- Scaffold via [vue-cli](https://cli.vuejs.org/):
@@ -61,18 +65,27 @@ We are working on a new version of the Devtools with a new UI and refactored int

### IDE Support

It is recommended to use [VSCode](https://code.visualstudio.com/) with our official extension [Vetur](https://marketplace.visualstudio.com/items?itemName=octref.vetur), which provides comprehensive IDE support for Vue 3.
It is recommended to use [VSCode](https://code.visualstudio.com/). There are currently two viable extensions for Single-File Components (SFCs) support:

- [Vetur](https://marketplace.visualstudio.com/items?itemName=octref.vetur) (recommended if you are used to Vetur features)
- [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar) (recommended if using TypeScript with SFCs, or `<script setup>` syntax)

### TypeScript Support

- All Vue 3 packages ship with types.
- [vue-tsc](https://github.com/johnsoncodehk/vue-tsc) perform TypeScript type checks / diagnostics on Vue SFCs via the command line.
- [vue-dts-gen](https://github.com/egoist/vue-dts-gen): generate TypeScript definitions from Vue SFCs.

### Other Projects

| Project | NPM | Repo |
| --------------------- | ----------------------------- | -------------------- |
| @vue/babel-plugin-jsx | [![rc][jsx-badge]][jsx-npm] | [[GitHub][jsx-code]] |
| Project | NPM | Repo |
| --------------------- | ------------------------------- | -------------------- |
| @vue/babel-plugin-jsx | [![rc][jsx-badge]][jsx-npm] | [[GitHub][jsx-code]] |
| eslint-plugin-vue | [![stable][epv-badge]][epv-npm] | [[GitHub][epv-code]] |
| @vue/test-utils | [![beta][vtu-badge]][vtu-npm] | [[GitHub][vtu-code]] |
| vue-class-component | [![beta][vcc-badge]][vcc-npm] | [[GitHub][vcc-code]] |
| vue-loader | [![beta][vl-badge]][vl-npm] | [[GitHub][vl-code]] |
| rollup-plugin-vue | [![beta][rpv-badge]][rpv-npm] | [[GitHub][rpv-code]] |
| @vue/test-utils | [![beta][vtu-badge]][vtu-npm] | [[GitHub][vtu-code]] |
| vue-class-component | [![beta][vcc-badge]][vcc-npm] | [[GitHub][vcc-code]] |
| vue-loader | [![beta][vl-badge]][vl-npm] | [[GitHub][vl-code]] |
| rollup-plugin-vue | [![beta][rpv-badge]][rpv-npm] | [[GitHub][rpv-code]] |

[jsx-badge]: https://img.shields.io/npm/v/@vue/babel-plugin-jsx.svg
[jsx-npm]: https://www.npmjs.com/package/@vue/babel-plugin-jsx
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"private": true,
"version": "3.0.7",
"version": "3.0.8",
"workspaces": [
"packages/*"
],
@@ -74,7 +74,7 @@
"semver": "^7.3.2",
"serve": "^11.3.0",
"ts-jest": "^26.2.0",
"typescript": "^4.1.3",
"typescript": "^4.2.2",
"yorkie": "^2.0.0"
}
}
Original file line number Diff line number Diff line change
@@ -66,6 +66,7 @@ return function render(_ctx, _cache) {
const _component_Foo = _resolveComponent(\\"Foo\\")
const _component_bar_baz = _resolveComponent(\\"bar-baz\\")
const _component_barbaz = _resolveComponent(\\"barbaz\\")
const _component_Qux = _resolveComponent(\\"Qux\\", true)
const _directive_my_dir_0 = _resolveDirective(\\"my_dir_0\\")
const _directive_my_dir_1 = _resolveDirective(\\"my_dir_1\\")
let _temp0, _temp1, _temp2
Original file line number Diff line number Diff line change
@@ -5,7 +5,7 @@ exports[`compiler: integration tests function mode 1`] = `
return function render(_ctx, _cache) {
with (_ctx) {
const { toDisplayString: _toDisplayString, createVNode: _createVNode, openBlock: _openBlock, createBlock: _createBlock, createCommentVNode: _createCommentVNode, createTextVNode: _createTextVNode, Fragment: _Fragment, renderList: _renderList } = _Vue
const { toDisplayString: _toDisplayString, openBlock: _openBlock, createBlock: _createBlock, createCommentVNode: _createCommentVNode, createTextVNode: _createTextVNode, Fragment: _Fragment, renderList: _renderList, createVNode: _createVNode } = _Vue
return (_openBlock(), _createBlock(\\"div\\", {
id: \\"foo\\",
@@ -16,7 +16,7 @@ return function render(_ctx, _cache) {
? (_openBlock(), _createBlock(\\"div\\", { key: 0 }, \\"yes\\"))
: (_openBlock(), _createBlock(_Fragment, { key: 1 }, [
_createTextVNode(\\"no\\")
], 64 /* STABLE_FRAGMENT */)),
], 2112 /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */)),
(_openBlock(true), _createBlock(_Fragment, null, _renderList(list, (value, index) => {
return (_openBlock(), _createBlock(\\"div\\", null, [
_createVNode(\\"span\\", null, _toDisplayString(value + index), 1 /* TEXT */)
@@ -28,7 +28,7 @@ return function render(_ctx, _cache) {
`;

exports[`compiler: integration tests function mode w/ prefixIdentifiers: true 1`] = `
"const { toDisplayString: _toDisplayString, createVNode: _createVNode, openBlock: _openBlock, createBlock: _createBlock, createCommentVNode: _createCommentVNode, createTextVNode: _createTextVNode, Fragment: _Fragment, renderList: _renderList } = Vue
"const { toDisplayString: _toDisplayString, openBlock: _openBlock, createBlock: _createBlock, createCommentVNode: _createCommentVNode, createTextVNode: _createTextVNode, Fragment: _Fragment, renderList: _renderList, createVNode: _createVNode } = Vue
return function render(_ctx, _cache) {
return (_openBlock(), _createBlock(\\"div\\", {
@@ -40,7 +40,7 @@ return function render(_ctx, _cache) {
? (_openBlock(), _createBlock(\\"div\\", { key: 0 }, \\"yes\\"))
: (_openBlock(), _createBlock(_Fragment, { key: 1 }, [
_createTextVNode(\\"no\\")
], 64 /* STABLE_FRAGMENT */)),
], 2112 /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */)),
(_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.list, (value, index) => {
return (_openBlock(), _createBlock(\\"div\\", null, [
_createVNode(\\"span\\", null, _toDisplayString(value + index), 1 /* TEXT */)
@@ -51,7 +51,7 @@ return function render(_ctx, _cache) {
`;

exports[`compiler: integration tests module mode 1`] = `
"import { toDisplayString as _toDisplayString, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, renderList as _renderList } from \\"vue\\"
"import { toDisplayString as _toDisplayString, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, renderList as _renderList, createVNode as _createVNode } from \\"vue\\"
export function render(_ctx, _cache) {
return (_openBlock(), _createBlock(\\"div\\", {
@@ -63,7 +63,7 @@ export function render(_ctx, _cache) {
? (_openBlock(), _createBlock(\\"div\\", { key: 0 }, \\"yes\\"))
: (_openBlock(), _createBlock(_Fragment, { key: 1 }, [
_createTextVNode(\\"no\\")
], 64 /* STABLE_FRAGMENT */)),
], 2112 /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */)),
(_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.list, (value, index) => {
return (_openBlock(), _createBlock(\\"div\\", null, [
_createVNode(\\"span\\", null, _toDisplayString(value + index), 1 /* TEXT */)
Loading