Repository navigation
Conversation
…rations css(a, b) composing classes whose styles the build knows, bound to css() in the file or exported by another module, merges their atoms per property, selector, breakpoint and layer, conditions included, instead of joining classes whose winner the stylesheet order picked. vanilla-extract style([...]) passes each composed style as its own argument, keeping a style composed again later. Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…asurable Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…JSX spreads win Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…led order and JSX element className Refs #688 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…uate shouldForwardProp at build time Refs #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
…ring 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/react@1.0.44 → 1.0.45 - packages/react/package.jsonPatch
@devup-ui/reset-css@1.0.31 → 1.0.32 - packages/reset-css/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:
|
This was referenced Oct 2, 2026
Open
No conflicted files; preserve composition changes and main ESLint checks.
No conflicted files; combine updated parent and PR changes.
No conflicted files; combine updated parent and PR changes.
Conflicted file: libs/extractor/src/lib.rs. Retain both composition helper and regression tests from PR 706 and Tailwind per-class regression tests from main 11790be; take rewritten main Tailwind implementation with Rust 1.99 assertions. bun.lock regenerated by bun install; no snapshots were hand-merged. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Merge updated parent PR 706 (30247ba), containing main 11790be. Conflicted file: libs/extractor/src/prop_modify_utils.rs. Preserve PR 707's last-written className/style spread semantics and no spread_props parameter with capacity 2, together with main's per-class Tailwind compiler. No snapshots were hand-merged. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
owjs3901
added a commit
that referenced
this pull request
Oct 8, 2026
This was referenced Oct 12, 2026
Refs #688 #707 #776 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #688 #707 Keep the visitor unchanged at module scope so coverage analysis does not invent an uncovered nested declaration Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #688 #710 #707 Retain inherited captures for withComponent and as in JSX and TypeScript renderers Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
owjs3901
added a commit
that referenced
this pull request
Oct 14, 2026
Refs #691 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
owjs3901
added a commit
that referenced
this pull request
Oct 14, 2026
Refs #689 #695 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #682 #695 #688 #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Refs #682 #695 #688 #689 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
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). #710 위에 쌓은 브랜치입니다. #706·#707·#710이 병합되면 이 PR의 차이는 마지막 커밋
b4b42cfc하나입니다.문제
tone),$prop,theme이 DOM에 그대로 들어갔고,shouldForwardProp(Emotion 옵션, styled-componentswithConfig)은 무시됐습니다.변경
@emotion/is-prop-valid1.4와 같으며 컴파일러 안에만 있어 런타임 추가가 없습니다.$proptheme$prop만 넘기지 않습니다.shouldForwardProp은 빌드 시점에 계산합니다. 허용하는 형태는 prop 이름을 문자열과 비교(===/!==),[...].includes(prop),prop.startsWith(...),isPropValid(prop)또는 styled-components가 넘기는 validator, 그리고 이들을!/&&/||로 묶은 것입니다. 확장(styled(Base))에서는 Base의 규칙과 함께 적용됩니다.동작 변화
{...(({ "tone": __devupOmit0, ...__devupDom }) => __devupDom)(rest)}형태로 걸러서 넘깁니다. 이 때문에 스냅샷 54개가 바뀌었고, 바뀐 부분이 이 패턴뿐임을 스크립트로 확인했습니다.새로 생기는 오류
shouldForwardProp은 빌드 에러가 됩니다(예:(prop) => allowed.has(prop)). 메시지에는file:line:col, 문제 코드, 허용 형태가 들어갑니다.남은 항목
검증
cargo clippy -D warnings(Rust 1.99),cargo test통과. 새 테스트test_styled_prop_forwarding을 추가했습니다.bun test5474개 통과, 커버리지 100%.styled-options-forward,styled-default-filter를 probe로 확인했습니다.2026-10-08 main 11790bef를 병합하여 업데이트했습니다. 충돌 없이 갱신된 부모 PR의 변경과 main의 변경을 모두 보존했습니다.
2026-10-15 갱신: 갱신된 #710 a6b4188 (main 76b1a15 포함)을 병합했습니다. 충돌 파일 extract_style_from_styled.rs, visit.rs, lib.rs, extractor__tests__styled_components_theme_resolves_to_css_variables.snap은 부모의 캡처 바인딩·조건부 spread 우선순위·실제 타깃·as/forwardedAs를 유지하고 자식의 prop 필터를 JSX/TS 양쪽에 연결; theme 스냅샷은 재생성 후 CSS/스타일 불변과 theme 필터만 확인 방식으로 해결했으며 부모 PR의 동작을 함께 보존했습니다. 새로 생기는 오류 없음.
2026-10-16 갱신: 갱신된 부모 #710 236b2e6b6c7a6c9bd4f767c978eda8971ecab0dc을 병합해 확정 main a6ecc12570338475df40a429c719160e63db86b5을 포함했습니다. 충돌 파일 libs/extractor/src/extractor/extract_style_from_styled.rs 및 libs/extractor/src/lib.rs는 부모의 terminal template 검증·StyledExtraction 반환과 이 PR의 유효한 template interpolation Reads 수집을 모두 유지하고 prop_valid/responsive_selector_tests 모듈을 함께 등록해 해결했습니다. 기존 attr/style 입력은 필터링 이전에 보존하며 shouldForwardProp 결합·transient 처리·native/custom retarget·attrs 순서·조건부 캡처·부모의 className/진단/숫자 동작을 모두 유지했습니다. 스냅샷 추가 생성·수락·수동 병합이나 새로운 오류·런타임 스타일러는 없습니다.
기본 Rust 스택/jobs=2로 fmt, Rust 1.99 all-target Clippy, 일반 cargo test --workspace 4,087개, 최신 WASM/루트 빌드 및 실제 공개 WASM+React SSR 11개 시나리오를 통과했습니다. 부모의 합성·attrs·캡처·Tailwind·실제 target 7개와 native/custom×TS/TSX 네 가지에서 deny/transient 입력이 attrs/CSS 변수 평가에는 남고 최종 prop에서는 제거되는 동작·theme/custom 전달을 검증했습니다. 전체 커밋 훅은 12GiB 전체 프로세스 한도/최대 3.105GiB에서 통과했고 Bun 5,909개/실패 0개/커버리지 100%입니다. 기존 경고 9개를 추가하지 않았으며 LSP는 사용 불가였습니다.
head de94d66d972bae852e75c7a77f3598deb478a44f의 두 부모는 497aba0 및 236b2e6b6c7a6c9bd4f767c978eda8971ecab0dc이며 깨끗한 트리에서 정상 push했습니다. 로컬 Windows Rust 커버리지 98.06%는 Linux 100% 증거가 아니며 새 head CI 38771804705를 별도로 확인합니다. 다른 형제 PR을 끼워 넣거나 rebase/amend/force push하지 않았습니다.
실제 WASM/공개 API 검증 출력:
2026-10-16 CI 확인: head de94d66d972bae852e75c7a77f3598deb478a44f의 run 38771804705은 모든 네 job 및 Codecov가 통과했고 MERGEABLE/CLEAN입니다. publish job 116549242319의 실제 로그에서 Linux Rust 100.00%(13,111/13,111), Bun 5,909개/실패 0개/커버리지 100%를 확인했습니다. 갱신된 부모 #710 및 확정 main a6ecc12 포함 여부를 재확인했으며 부모 PR과 이 PR의 prop 입력/필터링 의도를 모두 유지했습니다.