From 8925e4bf275f9baa45074c7b41068e73d1a1486e Mon Sep 17 00:00:00 2001 From: Ashok Kaushik Date: Sun, 21 Jun 2026 16:23:24 +0530 Subject: [PATCH 1/3] Fix: Fixes error thrown on use of select with no options --- .../phases/3-transform/client/visitors/shared/fragment.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/fragment.js b/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/fragment.js index f77af74f7e..38346e64b2 100644 --- a/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/fragment.js +++ b/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/fragment.js @@ -161,7 +161,7 @@ export function is_static_element(node) { } if ( - ['input', 'textarea'].includes(node.name) && + ['input', 'textarea', 'select'].includes(node.name) && ['value', 'checked'].includes(attribute.name) ) { return false; From 9206b5f4c73d8d8652e250ab3c830e18b6406710 Mon Sep 17 00:00:00 2001 From: Ashok Kaushik Date: Sun, 21 Jun 2026 16:58:56 +0530 Subject: [PATCH 2/3] chore: add changeset for select value crash fix --- .changeset/every-rabbits-rule.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/every-rabbits-rule.md diff --git a/.changeset/every-rabbits-rule.md b/.changeset/every-rabbits-rule.md new file mode 100644 index 0000000000..e8781944a5 --- /dev/null +++ b/.changeset/every-rabbits-rule.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +Fixed a compiler crash that occurred when any sibling element or text node followed a `` element. The `value` attribute guard was missing `select` from its node name check, causing esrap to receive a malformed AST node with a null `object` property. +fix: prevent malformed AST output for `