• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

solidjs / solid / 37880820693
77%
main: 89%

Build:
Build:
LAST BUILD BRANCH: next
DEFAULT BRANCH: main
Ran 09 Oct 2026 03:54AM UTC
Jobs 1
Files 10
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

09 Oct 2026 03:46AM UTC coverage: 76.014%. Remained the same
37880820693

push

github

web-flow
dom: claim elements after their initial attributes are applied; consumer-declared re-claim attributes (#3923) (#3924)

* fix(dom): claim elements after their initial attributes are applied; consumer-declared re-claim attributes (#3923)

Compiled DOM output claimed `a[href]` / `form[action]` at creation, before
the binding effect's first run applied their dynamic attributes, and the
runtime re-claimed only on `href`/`action` writes — so a router's link-state
layer was told about anchors without their `href` and had to re-process every
anchor on every location change to compensate.

Both compilers (Babel and Oxc, at parity) now claim a static element at the
end of its creation statements and an element with bindings as the last
statement of its binding effect's callback, under the owner captured at
creation (`var _o$ = _$getOwner()`; the callback runs ownerless when a held
mount lands). A spread element emits no compiled claim: `spread()` claims an
`a`/`form` after its first application, which also covers `dynamic("a")`.
`claimElement` is once-per-element (`_$claimed`), and compiler-owned writes
(`setAttribute`, `setAttributeNS`, `setProperty`, the spread's property
path) re-claim a marked element only for attributes a consumer declared —
`registerElementClaim(handler, { attributes })`, default `href`/`action`,
union across consumers; `prop:href` and `xlink:href` map to `href`.

Without a registered consumer every hook folds away under tree-shaking: the
every-page size scenarios are byte-identical to `next`.

Co-authored-by: Claude via Cursor <noreply@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>

* size(web): trim the element-claim registry (#3923)

The router scenarios' growth was all registry and write-site code (the
hand-written pages tree-shake `claimElement`, `claimElementTree` and
`spread`). Drop the cached union `Set` and its namespaced-form expansion:
the write sites scan the per-consumer attribute lists directly and look a
qualif... (continued)

720 of 1031 branches covered (69.84%)

Branch coverage included in aggregate %.

1061 of 1312 relevant lines covered (80.87%)

27.04 hits per line

Jobs
ID Job ID Ran Files Coverage
1 37880820693.1 09 Oct 2026 03:54AM UTC 10
76.01
GitHub Action Run
Source Files on build 37880820693
  • Tree
  • List 10
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #37880820693
  • 617d1951 on github
  • Prev Build on next (#37879820710)
  • Next Build on next (#37905563303)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc