fix: i18n interpolated attributes use I18n marker and fix build-test script#17
Merged
Brooooooklyn merged 1 commit intomainfrom Feb 9, 2026
Merged
Conversation
…script
Interpolated attributes with i18n markers (e.g., heading="Join {{ name }}"
i18n-heading) now correctly use BindingKind::I18n (AttributeMarker 6) instead
of BindingKind::Property (AttributeMarker 3). Pure property bindings
([attr]="expr" i18n-attr) keep the Property marker since the runtime uses
domProperty, not i18nAttributes.
Also fixes the build-test script which was broken due to double --features
flags, and adds the build:ts step for TypeScript compilation.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
bd9baa1 to
480a846
Compare
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.
Interpolated attributes with i18n markers (e.g., heading="Join {{ name }}" i18n-heading) now correctly use BindingKind::I18n (AttributeMarker 6) instead of BindingKind::Property (AttributeMarker 3). Pure property bindings ([attr]="expr" i18n-attr) keep the Property marker since the runtime uses domProperty, not i18nAttributes.
Also fixes the build-test script which was broken due to double --features flags, and adds the build:ts step for TypeScript compilation.
Note
Medium Risk
Touches compiler IR attribute extraction and consts marker selection for i18n, which can affect directive matching and const array stability across templates; test updates reduce regression risk.
Overview
Fixes attribute extraction so interpolated attributes with i18n metadata (e.g.
heading="Join {{name}}" i18n-heading) are extracted withBindingKind::I18n(AttributeMarker6), while pure property bindings with i18n markers remainBindingKind::Property(marker3).Updates/extends integration coverage to assert the new marker behavior and prevent consts-array index shifts in control-flow scenarios, and fixes
napi/angular-compiler’sbuild-testscript to avoid broken feature flags and ensure TypeScript artifacts are built.Written by Cursor Bugbot for commit 480a846. This will update automatically on new commits. Configure here.