Skip to content

@marko/runtime-tags@6.3.25

Choose a tag to compare

Patch Changes

  • #3622 5df8639 Thanks @DylanPiercey! - Only ship the controllable handling a page can actually use, instead of every kind on any page with a spread attribute.

  • #3613 e91e6a1 Thanks @DylanPiercey! - Attach a controlled <select>/<details>/<dialog>'s MutationObserver once per element. Reached through spread attributes, the setup script re-runs on every render and attached a new observer each time with no disconnect, so they accumulated for the life of the page and all fired for the same mutation.

  • #3611 dd3de49 Thanks @DylanPiercey! - Stop treating x ?? default and x || default as possibly-nullish. The left operand can only be the result when it is non-nullish (??) or truthy (||), so the common default idiom <const/opts = input.opts ?? { … }/> no longer compiles every member read to an optional chain plus a runtime nullish check. &&/&&= keep the wider check, since their left operand can be the result.

  • #3615 197ebe0 Thanks @DylanPiercey! - Stop shipping trailing walk exit codes on content and branch renderers. _content strips them before walking, so they were only ever bytes on the wire — 29 walks in the test fixtures drop out entirely.

  • #3617 b7b758a Thanks @DylanPiercey! - Dismiss a <try>'s @placeholder when the branch holding a pending <await> is destroyed. The resolve handler completed the await counter from inside a queued render, which is dropped once the branch is gone, so the boundary stayed on its placeholder for the life of the page.

  • #3614 82b66ab Thanks @DylanPiercey! - Use the whole next walk-code range. Codes 87-91 were reserved for it but never emitted, so a run of 20-24 nodes spent a redundant multiplier character (and 200-249 spent two).