template-no-class-bindings applies to strict mode - #2844
Merged
Conversation
@ember/component is still supported, so a classic component invoked from a gjs/gts template still acts on @classBinding / @classNameBindings. Drops the strict-mode early return and the hbs-only marker. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Contributor
🏎️ Benchmark Comparison
Full mitata output |
evoactivity
approved these changes
Aug 17, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Replaces #2843, which had this backwards.
The rule bailed out on gjs/gts:
@ember/componentis still supported, so<SomeThing @classNameBindings="a:b" />in a gjs template still hits the classic path and still deserves the report. The guard and the hbs-only marker are both wrong.After this, linting a
.gjsand a.gtsfile both report:Two test cases move from valid to invalid, and
templateModebecomesboth, which drops the "HBS Only" doc note.Worth knowing: a Glimmer component that happens to name an argument
@classBindingnow gets reported. That naming is unlikely and would be misleading anyway, but it is the one new false-positive surface.This makes RFC #1217's Appendix A placement correct, so #2840 needs no change.
🤖 Generated with Claude Code