github starfederation/datastar v1.0.5

56 minutes ago

Datastar v1.0.5 contains lots of minor fixes, plus a bunch of bug fixes and performance improvements to Rocket (see below).

  • Fixed signal and action references in template literal interpolations being parsed incorrectly when followed by other expressions.
  • Fixed form controls named or identified as id interfering with element patch targeting and morphing.
  • Fixed reentrant element morphs corrupting in-progress morph state and reinitializing moved Rocket components (#1209).
  • Fixed empty element IDs being treated as persistent during morphing (#1128).
  • Fixed HTML responses dropping the scoped view transition selector (#1210).
  • Fixed compiled expressions containing nested constructs by allowing values beginning with return to bypass automatic statement splitting (#1215).
  • Fixed data-bind corrupting prefilled date and time inputs during typing and clearing number signals during incomplete input (#1228).
  • Fixed a cancelled SSE connection completing after a visibility restart and aborting its replacement (#1213).
  • Fixed retry timers opening duplicate SSE connections after tab visibility changes (#1230).
  • Fixed dropped SSE connections retrying beyond retryMaxCount, and made retry: 'never' stop after network and stream failures (#1234).
  • Fixed unrelated signal patches preventing filtered, debounced data-on-signal-patch listeners from running (#1235).
  • Fixed large signal updates overflowing the stack and leaving effects stale, while preserving queue draining when an effect throws (#1237).

Rocket beta.3

  • Added ignoredByMorph configuration for component-owned DOM.
  • Added native form controls, automatic/derived/manual submission, lifecycle callbacks, focus delegation, and lazy ElementInternals.
  • Reduced repeated work in nested templates and pending-host scans. (#1236, #1227)
  • Fixed teardown errors, retained roots, shadow listeners, and queued callbacks. (#1217, #1225, #1221, #1211)
  • Fixed duplicate initialization, early shadow binding, computed subscriptions, and signal scoping across mixed-case IDs and repeated patches. (#1212, #1226)
  • Matched HTML boolean presence, rejected boolean defaults, and normalized property writes. (#1219)
  • Shared constructed stylesheets per document. (#1222)
  • Restored light-DOM rendering beneath morph-ignored ancestors. (#1224)

Upgrading to Rocket beta.3

  • Direct boolean props follow HTML presence. Absence is false. Any present value, including "false" or "0", is true. Remove the attribute or assign element.open = false to turn it off.
  • Replace direct bool.default(...) declarations with bool. Explicit defaults now throw at registration. Add the attribute in markup when true. Structured boolean defaults remain supported.

Don't miss a new datastar release

NewReleases is sending notifications on new releases.