github marko-js/marko @marko/runtime-tags@6.3.35

latest release: @marko/compiler@5.42.0
5 hours ago

Patch Changes

  • #3882 fdf0908 Thanks @DylanPiercey! - Error at compile time when assigning to an attribute tag <for> parameter instead of emitting a handler that throws at runtime.

  • #3875 c25815c Thanks @DylanPiercey! - Support two-way binding a destructured value with a computed string-literal key, and give a real diagnostic when the computed key is dynamic.

  • #3884 665acbe Thanks @DylanPiercey! - Error when binding value on an input whose type is attribute-backed (checkbox, radio, hidden, button, submit, reset, image) — at compile time when the type is statically known, and as a dev-mode runtime error otherwise.

  • #3920 f178619 Thanks @DylanPiercey! - Re-render a dynamic tag when it switches between two instances of the same content, which previously kept rendering the first instance's state because every instance of a content section shares one renderer id.

  • #3893 62416a3 Thanks @DylanPiercey! - Fix a dynamic tag with a tag variable throwing when its value changes from rendered to falsy; the tag variable now also clears on teardown.

  • #3880 69fe9be Thanks @DylanPiercey! - Resolve the <tag-name> import shorthand in export ... from declarations.

  • #3909 a59fdb1 Thanks @DylanPiercey! - Raise a compile error when a for...of/for...in assigns to a tag variable; it previously compiled to a silent scope write that never triggered a re-render.

  • #3922 64f3242 Thanks @DylanPiercey! - Pass arguments through to a <const> function that is called before it is declared; every argument was previously dropped, so the target ran with undefined parameters and no warning.

  • #3901 f35426b Thanks @DylanPiercey! - Mint <id>'s fallback once per scope so a nullish value= no longer produces a new id on every update.

  • #3917 c6aa064 Thanks @DylanPiercey! - Report checked combined with valueChange on an <input> as mutually exclusive, instead of a serialization error on the server and a handler-type error on the client.

  • #3883 d778608 Thanks @DylanPiercey! - Drop the value attribute for a void controllable input value on the client, matching server output.

  • #3919 ed76398 Thanks @DylanPiercey! - Warn in development when a server-rendered lazy load trigger cannot find its selector and the module is fetched immediately, matching the warning the client already emits.

  • #3918 42e92a5 Thanks @DylanPiercey! - Fix <let> dropping undefined from an explicitly typed value, so <let/x=undefined as Foo | undefined> can be reassigned undefined again.

  • #3908 26591f9 Thanks @DylanPiercey! - Coerce a tag variable to a number when applying ++/--, so a string-valued <let> increments numerically instead of concatenating.

  • #3894 1134342 Thanks @DylanPiercey! - Mark split class/style item writes as pure so a single-consumer derived binding compiles to a plain function instead of a _const signal with a scope slot.

  • #3895 eff2d42 Thanks @DylanPiercey! - Emit registered-function factories as const arrows so the minifier can fold them into their _resume registration call.

  • #3886 a3fcc6b Thanks @DylanPiercey! - Add pipe, toString, catch, and finally to the internal RenderedTemplate type, matching the published Marko.RenderedTemplate and the server implementation.

  • #3899 2d9160c Thanks @DylanPiercey! - Forward restOffset when an array rest destructures into a nested pattern or is aliased through a tag variable, fixing silently wrong values in DOM output.

  • #3872 590e117 Thanks @DylanPiercey! - Error on a <style> interpolation inside an unquoted url() instead of silently emitting invalid CSS.

  • #3898 0b4302d Thanks @DylanPiercey! - Emit a custom tag's HTML render call after its attribute tag statements, fixing a ReferenceError when a tag with a tag variable collects attribute tags under control flow.

  • #3879 710d920 Thanks @DylanPiercey! - Detect "template within a tags directory" from the taglib finder's discovered directories, so a package itself named tags can still contain Class API templates.

  • #3897 8bef87f Thanks @DylanPiercey! - Escape carriage returns in server-rendered text content (including <textarea> values and <title>) so the parsed result matches client rendering.

  • #3888 c095873 Thanks @DylanPiercey! - Improve debug "Unable to serialize" errors: restore variable names and locations for escaped keys and values inside Maps/Sets/generators, and name the offending controllable handler attribute or spread instead of printing internal accessors.

  • #3896 e2eb956 Thanks @DylanPiercey! - Only register a tag variable's _var_resume when the child scope actually serializes, dropping dead registrations from DOM output.

  • Updated dependencies [011ce07, 4adcb25, e03de1a, f0650fe, ab2d7c9, 710d920, 3c2b628]:

    • @marko/compiler@5.42.0

Don't miss a new marko release

NewReleases is sending notifications on new releases.