Skip to content

Conversation

@haoqunjiang
Copy link
Member

@haoqunjiang haoqunjiang commented Dec 9, 2024

Fixes #10609

Unlike the vue package, direct dependencies of @vue/compat are not externalized:

// externalize all direct deps unless it's the compat build.

So it depends on entities directly in its CJS build, unlike the vue one which indirectly depends on it via @vue/compiler-core. So entities must be explicitly added to @vue/compat deps to avoid incorrect dependency resolution due to different node_modules layouts, such as in #10609 (comment)

@github-actions
Copy link

github-actions bot commented Dec 9, 2024

Size Report

Bundles

File Size Gzip Brotli
runtime-dom.global.prod.js 100 kB 37.9 kB 34.2 kB
vue.global.prod.js 158 kB 57.8 kB 51.4 kB

Usages

Name Size Gzip Brotli
createApp (CAPI only) 46.6 kB 18.3 kB 16.7 kB
createApp 54.6 kB 21.3 kB 19.4 kB
createSSRApp 58.7 kB 23 kB 20.9 kB
defineCustomElement 59.4 kB 22.8 kB 20.8 kB
overall 68.4 kB 26.4 kB 24 kB

@pkg-pr-new
Copy link

pkg-pr-new bot commented Dec 9, 2024

Open in Stackblitz

@vue/compiler-core

npm i https://pkg.pr.new/@vue/compiler-core@12514

@vue/compiler-ssr

npm i https://pkg.pr.new/@vue/compiler-ssr@12514

@vue/compiler-dom

npm i https://pkg.pr.new/@vue/compiler-dom@12514

@vue/compiler-sfc

npm i https://pkg.pr.new/@vue/compiler-sfc@12514

@vue/reactivity

npm i https://pkg.pr.new/@vue/reactivity@12514

@vue/runtime-core

npm i https://pkg.pr.new/@vue/runtime-core@12514

@vue/runtime-dom

npm i https://pkg.pr.new/@vue/runtime-dom@12514

@vue/server-renderer

npm i https://pkg.pr.new/@vue/server-renderer@12514

@vue/shared

npm i https://pkg.pr.new/@vue/shared@12514

vue

npm i https://pkg.pr.new/vue@12514

@vue/compat

npm i https://pkg.pr.new/@vue/compat@12514

commit: e572a25

Fixes vuejs#10609

Unlike the `vue` package, direct dependencies of `@vue/compat` are not
externalized:
https://github.com/vuejs/core/blob/201936f9a3909ae9dca4e131e1f5ad5a1c0feb77/rollup.config.js#L274

So it depends on `entities` directly in its CJS build, unlike the `vue`
one which indirectly depends on it via `@vue/compiler-core`.
So `entities` must be explicitly added to `@vue/compat` deps to avoid
incorrect dependency resolution due to different `node_modules` layouts,
such as in vuejs#10609 (comment)
@haoqunjiang haoqunjiang added the ready for review This PR requires more reviews label Dec 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Vue compat with Jest: "TypeError: decode_js.EntityDecoder is not a constructor"

2 participants