Repository navigation
fix(extractor): map literal-key theme reads to variables and reject unmapped ones - #713
Merged
Merged
Conversation
…nmapped ones Refs #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Contributor
Changepacks@devup-ui/wasm@1.0.83 → 1.0.84 - bindings/devup-ui-wasm/package.jsonPatch
@devup-ui/bun-plugin@1.0.22 → 1.0.23 - packages/bun-plugin/package.jsonPatch
@devup-ui/components@0.1.60 → 0.1.61 - packages/components/package.jsonPatch
@devup-ui/eslint-plugin@1.0.22 → 1.0.23 - packages/eslint-plugin/package.jsonPatch
@devup-ui/next-plugin@1.0.90 → 1.0.91 - packages/next-plugin/package.jsonPatch
@devup-ui/plugin-utils@1.0.17 → 1.0.18 - packages/plugin-utils/package.jsonPatch
@devup-ui/rsbuild-plugin@1.0.67 → 1.0.68 - packages/rsbuild-plugin/package.jsonPatch
@devup-ui/vite-plugin@1.0.73 → 1.0.74 - packages/vite-plugin/package.jsonPatch
@devup-ui/webpack-plugin@1.0.71 → 1.0.72 - packages/webpack-plugin/package.jsonPatch
|
Codecov Report✅ All modified and coverable lines are covered by tests.
🚀 New features to boost your workflow:
|
Merge main history while preserving this PR implementation. No manual conflict resolutions.
Merge main history while preserving this PR implementation. No manual conflict resolutions.
Merge main history while preserving this PR implementation. No manual conflict resolutions.
Merge main history while preserving this PR implementation. No manual conflict resolutions.
Merge main history while preserving this PR implementation. No manual conflict resolutions.
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.
Refs #689 (C 다섯 번째 PR).
main에서 분기했습니다.문제
p => p.theme.brand(),p => p.theme,theme.space[i]같은 코드입니다. 그런데 런타임에는 styled 함수에 theme 객체가 들어오지 않으므로 이 값은undefined가 되거나 크래시가 났습니다.theme.space[2]처럼 리터럴 키로 접근하는 경우도 변수로 바뀌지 않았습니다.변경
p => p.theme.space[2]는var(--space-2),({ theme }) => theme.colors['brand']는var(--colors-brand)가 됩니다.동작 변화
undefined가 되던 값이 이제 빌드 시점에 에러로 드러납니다.새로 생기는 오류
file:line:col, 문제 코드, 원인, 해결 방법을 메시지에 담습니다.남은 항목
jsx/ClassNames/CacheProvider검증
cargo clippy -D warnings(Rust 1.99),cargo test통과. 새 테스트test_styled_components_unmapped_theme_reads_are_errors를 추가했고, 기존 스냅샷에 리터럴 키 케이스를 넣었습니다.bun test5474개 통과, 커버리지 100%.assert_is_empty수정은 fix(extractor): let a later css() part replace an earlier one's declarations #706, fix(extractor): keep type-only imports type-only and read keyframes getName() #709, #712와 같습니다. 나중에 병합되는 쪽에서 충돌이 나면 같은 내용이므로 어느 쪽을 택해도 됩니다.2026-10-08 업데이트: main 11790bef를 merge commit으로 병합했습니다; 충돌 파일: 없음; 충돌 없이 자동 병합했고, 이미 포함된 squash 원본은 조상 확인 후 ours 전략으로 중복 적용하지 않았습니다.