You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Codemod for template-only-glimmer-components doesn't support Addons #237
It appears that the codemod implementation only runs against components in the app/ directory, which will not work for addons, which store their components in the addon/ directory and may not re-export them at all (since doing so is dangerous and a bad pattern). In order for addons to successfully enable this feature, the codemod needs to be able to create backing classes for addon components.
Following up on discussion with @chancancode to capture some pieces we figured out:
This isn't necessarily a concern of ember-optional-features, which was intended to be used by app consumers
Addons don't generally have template-only components if they are following the re-export pattern in their app/ directory
This codemod is necessary for addons that expect to use Wall St syntax for namespaced component invocation (and will be useful for template imports as well)
Conclusion: It may be better for this codemod to live as a separate project in ember-codemods rather than as part of this project.
However, there is a related issue that I believe does impact this project. If you enable template-only-glimmer-components in an addon, it does not create backing classes for template-only components in tests/dummy/templates/components, which is a perfectly valid use-case for addons.
Activity
elwayman02 commentedon Aug 6, 2020
Following up on discussion with @chancancode to capture some pieces we figured out:
ember-optional-features, which was intended to be used by app consumersConclusion: It may be better for this codemod to live as a separate project in
ember-codemodsrather than as part of this project.elwayman02 commentedon Nov 6, 2020
Coming full circle on this.
@rwjblue implemented the codemod to fix this here: rwjblue/ember-holy-futuristic-template-namespacing-batman-codemod#58
However, there is a related issue that I believe does impact this project. If you enable
template-only-glimmer-componentsin an addon, it does not create backing classes for template-only components intests/dummy/templates/components, which is a perfectly valid use-case for addons.rwjblue commentedon Nov 9, 2020
Ya, agreed.