Skip to content

Private property transpilation broken w/ externalHelpers enabled #442

@nickschot

Description

@nickschot

ember-cli-babel currently has a pinned dependency of @babel/runtime 7.12.18. If a newer version (like 7.17.9) for whatever reason ends up on the root level of node_modules (like other dependencies bringing in a newer version) it may break the build at runtime in certain cases. The specific case that I ran into occurs when using private properties in native classes like in this reproduction: https://github.com/nickschot/babel-test-app/blob/master/app/controllers/application.js#L9

with externalHelpers: true configured in ember-cli-build.

When running the app this will result in a runtime error like:
Screenshot 2022-04-25 at 16 06 39

The reproduction uses a private property in an app controller, but the same issue happens when addons use private properties in for example components.

Note that for the linked reproduction I've added a dependency on @babel/runtime 7.17.9 to force this issue. Disabling externalHelpers and/or making sure the version of @babel/runtime in the root of node_modules is 7.12.18 prevents the issue from occurring.

The pinning happened here: #385
May be somewhat related to: #420

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions