Open a7medm7med opened 9 months ago
@a7medm7med thanks for raising the issue. I can confirm that setting ES2022
as target fails while ES2021
compiles fine. The JavaScript feature in question here are static initialization blocks implemented in src/controllers/localize.ts
.
I've ingested this into our backlog for the team to take a look at.
It looks like this is a Rollup-related issue, since support for static initialization blocks was added in 2.59.0 but we're on 2.56.3
Consider upgrading the Rollup version to at least 2.68.0 for improved performance and compatibility.
Hey @a7medm7med 👋
We will be upgrading our version of rollup later this year. Due to some cross-dependency limitations/breaking changes in rollup plugins that Stencil exposes, we're targeting this for the Stencil v5 release later this year.
@rwaskiewicz
Thanks for the update on the rollup upgrade and the Stencil v5 release. I appreciate your efforts in keeping us informed. Out of curiosity, do you know if StencilJS will be considering the adoption of Rollup version 3 in the upcoming releases as well? Looking forward to hearing more about the developments. Thanks again to you and the team for your hard work! 🚀👍
Thanks!
do you know if StencilJS will be considering the adoption of Rollup version 3 in the upcoming releases as well
Yes, we're planning on moving to the latest version of rollup (v4.x as of this writing)
Prerequisites
Stencil Version
4.12.2
Current Behavior
Static initialization blocks fail to execute when the target option in the
tsconfig
file is set to a higher ECMAScript version than ES2017.Expected Behavior
Static initialization blocks should execute successfully, regardless of the ECMAScript version specified in the
tsconfig
file.System Info
Steps to Reproduce
tsconfig
file to use an ECMAScript version higher than ES2017 in thetarget
option.Code Reproduction URL
https://github.com/a7medm7med/stencil-static-bug
Additional Information
This issue significantly hinders developers from adopting modern ECMAScript features while working with StencilJS, thus impeding the progression of JavaScript development practices. Any insights, workarounds, or resolutions to address this issue would be greatly appreciated.