Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUGFIX LTS 3.28] Don't run getters while applying mixins #20447

Merged
merged 2 commits into from
May 1, 2023

Conversation

wycats
Copy link
Member

@wycats wycats commented Apr 27, 2023

Backports #20388

This change ensures that getters are never evaluated while applying
mixins.

It relies on the fact that all getters (including undecorated ones) get
converted into classic decorators when the mixin is originally created.

@wycats wycats force-pushed the wycats/backport-20388 branch 3 times, most recently from 0ae927c to 6e80d88 Compare April 27, 2023 23:23
@wycats wycats changed the title [BUGFIX LTS 3.28] Update Node.js versions to match support policy [BUGFIX LTS 3.28] actions/setup-node Apr 27, 2023
@wycats wycats changed the title [BUGFIX LTS 3.28] actions/setup-node [BUGFIX LTS 3.28] Don't run getters while applying mixins Apr 27, 2023
@wycats wycats force-pushed the wycats/backport-20388 branch 5 times, most recently from 1bfa809 to 4d8fd8c Compare April 28, 2023 00:33
@wycats
Copy link
Member Author

wycats commented Apr 28, 2023

@kategengler I backported a bunch of the CI changes to get the tests passing but I'm not sure if I did it correctly. Can you give them a quick once over?

package.json Outdated
@@ -150,7 +150,7 @@
"tslint": "^5.20.1"
},
"engines": {
"node": "10.* || >= 12.*"
"node": ">= 14.*"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We definitely cannot update engines in 3.28 point release

@kategengler
Copy link
Member

@wycats What about CI was failing? We typically cherry-pick just commits back to the older versions and CI usually keeps working.

@wycats
Copy link
Member Author

wycats commented May 1, 2023

@kategengler I'll take another look at it. I think it might be tricky to avoid upgrades without somehow pinning other infrastructure like Embroider stuff, which we also might not want to do.

This change ensures that getters are never evaluated while applying
mixins.

It relies on the fact that all getters (including undecorated ones) get
converted into classic decorators when the mixin is originally created.
@wycats wycats merged commit b137c61 into emberjs:lts-3-28 May 1, 2023
12 checks passed
@wycats wycats deleted the wycats/backport-20388 branch May 1, 2023 18:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants