Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
c647ab5
fix(extractor): reject whole Devup namespace runtime escapes
owjs3901 Oct 4, 2026
81d9a56
fix(extractor): preserve exact lexical values and binding-aware require
owjs3901 Oct 4, 2026
d257aac
fix(extractor): preserve JavaScript props evaluation during lowering
owjs3901 Oct 4, 2026
d4e0187
fix(components): reorder compile-time style defaults after DOM spreads
owjs3901 Oct 4, 2026
58fe5a1
fix(landing): keep selector defaults after Card DOM props
owjs3901 Oct 4, 2026
955bf5e
test(extractor): cover direct literal selection and dynamic value paths
owjs3901 Oct 4, 2026
1e81fdf
test(extractor): cover native written class spread precedence
owjs3901 Oct 4, 2026
4b24361
test(extractor): cover scalar order and runtime CSS suffix branches
owjs3901 Oct 4, 2026
6749633
test(extractor): cover initialization and exact constant safety branches
owjs3901 Oct 4, 2026
5657601
test(extractor): cover native logical and suspension capture edges
owjs3901 Oct 4, 2026
f0969a0
refactor(extractor): make JSX ordering and pruning paths measurable
owjs3901 Oct 4, 2026
f2fc451
merge: update PR #756 with main
owjs3901 Oct 8, 2026
628f7c7
merge: update PR #756 with PR #750
owjs3901 Oct 16, 2026
d9cf389
fix(extractor): preserve explicit styles across parent merge
owjs3901 Oct 23, 2026
505e68a
fix(extractor): integrate settled main semantics
owjs3901 Oct 24, 2026
6e457e9
perf(extractor): avoid unused constant preparation
owjs3901 Oct 24, 2026
2b1087e
test(extractor): cover merged semantic edge paths
owjs3901 Oct 24, 2026
87746d1
fix: preserve JavaScript evaluation semantics and refresh dependencies
owjs3901 Nov 3, 2026
cc001fd
fix: integrate latest main with JavaScript semantics fixes
owjs3901 Nov 3, 2026
a90d9c5
fix: complete semantics coverage and optimize production WASM
owjs3901 Nov 3, 2026
0a2f366
test(extractor): cover constant traversal and styled capability inher…
owjs3901 Nov 3, 2026
4052942
test(extractor): exercise guarded local and native JSX paths
owjs3901 Nov 3, 2026
890773a
test(extractor): cover suspended native JSX attribute emission
owjs3901 Nov 3, 2026
eb102a0
refactor(extractor): make static JSX attribute eligibility explicit
owjs3901 Nov 3, 2026
fd04f00
perf(extractor): avoid unnecessary style capture wrappers
owjs3901 Nov 4, 2026
06f15ed
perf(extractor): elide lone template capture wrappers
owjs3901 Nov 4, 2026
8f1bce2
test(extractor): cover known spread ordering path
owjs3901 Nov 4, 2026
fc004bd
perf(extractor): keep lone static member styles in place
owjs3901 Nov 4, 2026
6555495
fix(extractor): keep spread ordering coverage executable
owjs3901 Nov 4, 2026
ad3147e
fix(extractor): remove unreachable spread coverage branches
owjs3901 Nov 4, 2026
a8e5f4d
fix(extractor): cover unknown spread ordering branch
owjs3901 Nov 4, 2026
cacb8b6
test(extractor): assert lone static member capture elision
owjs3901 Nov 4, 2026
83fcbd2
fix(extractor): keep lone run classification coverage stable
owjs3901 Nov 4, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
7 changes: 7 additions & 0 deletions .changepacks/changepack_log_constant_read_work.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"changes": {
"bindings/devup-ui-wasm/package.json": "Patch"
},
"note": "Avoid cloning unreferenced constant initializers and defer initialization analysis until constant reads need it. Extraction output and build errors are unchanged.",
"date": "2026-10-24T00:00:00.000Z"
}
7 changes: 7 additions & 0 deletions .changepacks/changepack_log_extraction_coverage.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"changes": {
"bindings/devup-ui-wasm/package.json": "Patch"
},
"note": "Add regression coverage for extraction safety, property pruning and source-order behavior; remove unreachable post-flatten spread handling and consolidate unknown property-shape rejection. Extraction output and build errors are unchanged.",
"date": "2026-10-24T00:00:00.000Z"
}
9 changes: 9 additions & 0 deletions .changepacks/changepack_log_js_semantics.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"changes": {
"bindings/devup-ui-wasm/package.json": "Patch",
"packages/components/package.json": "Patch",
"packages/reset-css/package.json": "Patch"
},
"note": "Keep unknown element-prop spreads wholly as native pass-through data: their keys never select, replace or remove separately authored styles, regardless of order. Preserve fully known ordinary spread composition, canonical aliases, source-ordered once-only values and native className/style merging without spread-key styling variables, fallbacks or conversion code. Preserve exact imported enum and Math values including negative zero, lexical constants, binding-aware CommonJS require, React createElement calls, type-only imports, and compiled reset CSS tests. Retain located errors for intrinsically unreadable explicit styles, runtime styleOrder, unmovable lazy logical suspension, whole Devup UI namespaces escaping to runtime, and immediate lexical temporal-dead-zone reads. Native Emotion css spread restrictions and separate styled css overlap restrictions remain unchanged.",
"date": "2026-10-01T00:00:00.000Z"
}
7 changes: 7 additions & 0 deletions .changepacks/changepack_log_jsx_call_spread.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"changes": {
"bindings/devup-ui-wasm/package.json": "Patch"
},
"note": "Attach extracted classes and authored CSS variables to jsx, jsxs and jsxDEV props wrapped in parentheses, as const or satisfies. Preserve source evaluation order, responsive and conditional styleOrder output, native className/style merging and whole unknown-spread pass-through. Syntax wrappers do not introduce spread replacement diagnostics or a styling runtime.",
"date": "2026-10-12T00:00:00.000Z"
}
12 changes: 12 additions & 0 deletions .changepacks/changepack_log_refresh_dependencies_20261102.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"changes": {
"bindings/devup-ui-wasm/package.json": "Patch",
"packages/components/package.json": "Patch",
"packages/eslint-plugin/package.json": "Patch",
"packages/react/package.json": "Patch",
"packages/rsbuild-plugin/package.json": "Patch",
"packages/vite-plugin/package.json": "Patch"
},
"note": "Refresh dependencies, including Oxc 0.156, wasm-bindgen 0.2.130, parse5 8.1 and Rsbuild 2.3. Preserve the React 18 compatibility fixture while updating its build tooling.",
"date": "2026-11-02T00:00:00.000Z"
}
6 changes: 5 additions & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ jobs:
const file = join(process.env.SIZE_ROOT, 'metadata.json')
const metadata = side === 'base' ? {
jobId: `${process.env.GITHUB_RUN_ID}/${process.env.GITHUB_RUN_ATTEMPT}/${process.env.GITHUB_JOB}`,
buildCommand: 'cargo metadata --locked --format-version 1 > /dev/null && wasm-pack build --mode no-install --release --target nodejs --out-dir ./pkg --out-name index --locked && node script.js',
buildCommand: '(cd ../.. && bun install --frozen-lockfile --ignore-scripts) && cargo metadata --locked --format-version 1 > /dev/null && wasm-pack build --mode no-install --release --target nodejs --out-dir ./pkg --out-name index --locked && node script.js',
} : JSON.parse(readFileSync(file, 'utf8'))
const sha = side === 'base' ? process.env.BASE_SHA : process.env.CANDIDATE_SHA
metadata[side] = {
Expand All @@ -204,6 +204,10 @@ jobs:
for side in base candidate; do
stage="$side"
(
(
cd "$SIZE_ROOT/$side"
bun install --frozen-lockfile --ignore-scripts
)
WASM_BINDGEN_VERSION="$(bun resolve-wasm-bindgen.js "$SIZE_ROOT/$side/Cargo.lock")"
export WASM_BINDGEN_VERSION
bindgen_root="$SIZE_ROOT/abi-tools/$WASM_BINDGEN_VERSION"
Expand Down
Loading
Loading