Skip to content

Table: pass calc() cell widths through to Taffy for column sizing - #653

Open
nicoburns wants to merge 1 commit into
mainfrom
devin/1786204548-table-calc-column
Open

Table: pass calc() cell widths through to Taffy for column sizing#653
nicoburns wants to merge 1 commit into
mainfrom
devin/1786204548-table-calc-column

Conversation

@nicoburns

@nicoburns nicoburns commented Aug 8, 2026

Copy link
Copy Markdown
Member

Summary

Fixes CRASHes in css/css-values/calc-width-table-auto-1.html and css/css-values/calc-width-table-fixed-1.html (css/css-values: 6 → 4 crashes; the remaining 4 are unrelated).

The match over taffy::CompactLength tags in collect_table_cells column sizing (table.rs:301) hit unreachable!() for calc() cell widths. Since taffy::Dimension can only be length, percent, auto or calc, the remaining case is calc; the fix passes the Dimension through as the column track sizing function (_ => style.size.width.into()), so Taffy resolves the calc expression against the table's inner width during track sizing — the appropriate basis, which isn't known at column-collection time.

Link to Devin session: https://dioxus.staging.devinenterprise.com/sessions/a8bd4846bf354f33a6037fffaca1f583
Requested by: @nicoburns

WPT results

1 newly passing, 0 newly failing (net +1), 1 other status change.

Full diff (2 changed tests)
+ Crash => Pass css/css-values/calc-width-table-auto-1.html
! Crash => Fail css/css-values/calc-width-table-fixed-1.html

Generated by the WPT workflow.

@nicoburns nicoburns self-assigned this Aug 8, 2026
@staging-devin-ai-integration

Copy link
Copy Markdown
Contributor

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR that start with 'DevinAI' or '@devin'.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment, CI, and merge conflict monitoring

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant