Skip to content

Duplicate _unref imports in production Vapor builds #14265

@skirtles-code

Description

@skirtles-code

Vue version

3.6.0-beta.1

Link to minimal reproduction

https://play.vuejs.org/#__PROD__eNp9UkFOwzAQ/IrlS1updaiKOJS0EqAe4AAIOFpCabJtXRzbsp0QFOXvrB019IB6SbK7M6PZnbT0zhhWV0CXNHW5FcYTB74ypM6MtmuuRIlvT1qSa6kt6cjO6pKMWFJ5IR07uhFXadJTEY6Fh9LIzANWhKSHOcll5tyKUwsFp+t2kOrS5DBHVJqcUbB0/kcCcbk2UGCHIY+0QSzylqSebYUqxrGa3HLVRQeBtKZT6pGodmKP1rTCtSKT01yXRkiwL8YLrRyny14zzDIp9fdT7HlbwfTUzw+Qf/3TP7om9Dh9teDA1sDpMPOZ3YPvx5v3Z2jwexiWuqgkoi8M38BpibfVqofdV6pA22e46PYxxiLU/sNtGg/KnZYKRgOyi3hOMduHC6v/2V2w68jDe+IVT+niAYc/wMJuyB9lMXiuoIlDPLkLz5DrKgDHI0xtNEGlzxpscIdKC3bDrmZb8Bmb0+4Xj+jUAQ==

Steps to reproduce

Open the Playground, compilation fails.

SyntaxError: Identifier '_unref' has already been declared.

Any additional comments?

This isn't specifically a Playground problem, I observed it in a Vite application.

I believe one copy of _unref is needed to handle {{ color }}, because color is a setup-maybe-ref. The other is needed to handle the CSS v-bind.

It only fails for a production build. During dev the {{ color }} binding is handled differently and doesn't use unref.

Metadata

Metadata

Assignees

No one assigned

    Labels

    🔨 p3-minor-bugPriority 3: this fixes a bug, but is an edge case that only affects very specific usage.scope: vaporrelated to vapor mode

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions