unstale

npm / svelte-eslint-parser

svelte-eslint-parser

What changed in svelte-eslint-parser 1, from its official release notes, upgrade guides and advisories. Sources checked 2026-11-13.

2 breaking7 new APIs and options2 behavior and defaults3 tooling21 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.3.0 on npm

svelte-eslint-parser 135 changes

Breaking changes 2

New APIs and options 7

  • Set this environment variable to 1 to opt in to an experimental ts.sys.readFile hook that speeds up type-aware lint of .svelte files.

    1.8.0release notes

  • Adds support for comments in tags, allowing developers to use comments within tags.

    1.6.0release notes

  • An AST node for function bindings was added.

    1.0.0release notes

  • PostCSS is now supported.

    1.0.0release notes

  • Style selector parsing is now supported.

    1.0.0release notes

  • The parser now supports the <svelte:boundary> element.

    1.0.0release notes

  • The warningFilter option was added to SvelteConfig.

    1.0.0release notes

Behavior and default changes 2

  • With the experimental hook enabled, .svelte imports resolve to virtual TypeScript containing a synthetic component export, enabling cross-file prop, event, and slot types.

    1.9.0release notes

  • Generics support was stabilized.

    1.0.0release notes

Tooling 3

  • Adds support for parsing Svelte 5 declaration tags.

    1.7.0release notes

  • The parser now supports the $inspect.trace rune.

    1.0.0release notes

  • The parser now supports the $props.id rune.

    1.0.0release notes

Fixes and other changes 21

  • Marks $bindable() props as used to prevent no-useless-assignment reports on writes, and handles $props() with non-null assertions, type assertions, satisfies, and angle-bracket type assertions.

    1.10.1release notes

  • Types $bindable() props as possibly undefined in $props() to prevent @typescript-eslint/no-useless-default-assignment reports.

    1.10.1release notes

  • The runes option on <svelte:options> takes precedence over compilerOptions.runes, matching the Svelte compiler.

    1.10.1release notes

  • Instance exports are included in the synthetic component type, so a component instance obtained through bind:this exposes their real types instead of any.

    1.10.0release notes

  • The setter parameter of a function binding is typed from the bound prop, instead of being implicit any.

    1.10.0release notes

  • A {#snippet} call is typed as a Snippet call instead of void, preventing @typescript-eslint/no-confusing-void-expression from reporting {@render name()}.

    1.10.0release notes

  • Unannotated parameters of a snippet written as a component child are typed from the component's snippet prop of the same name.

    1.10.0release notes

  • Importers of an edited component are refreshed when the experimental ts.sys hook is on.

    1.10.0release notes

  • JSDoc type information is preserved when using the TypeScript parser, including in Svelte template expressions, stores, and runes.

    1.9.0release notes

  • Template {:else if} and {:else} branches preserve type narrowing from preceding conditions.

    1.9.0release notes

  • The experimental ts.sys hook now works when the TypeScript program is created before the first .svelte parse.

    1.8.1release notes

  • Fixes parsing TypeScript $derived(...) declaration tags inside top-level snippets.

    1.7.1release notes

  • Fixes the wrong parent type for some nodes.

    1.7.0release notes

  • Uses the Svelte config compilerOptions.runes function value when set.

    1.6.1release notes

  • The parser now supports {#each} blocks without as, as in Svelte 5.4.0.

    1.0.0release notes

  • Compatibility with eslint-plugin-prettier was fixed.

    1.0.0release notes

  • The parser no longer errors when <script> tags are used inside {@html}.

    1.0.0release notes

  • Runes mode detection was corrected to prevent parser malfunctions.

    1.0.0release notes

  • Scoping of snippet declarations acting as slot properties was improved.

    1.0.0release notes

  • A parent node is now provided for SvelteFunctionBindingsExpression.

    1.0.0release notes

  • Scripts are now recognized as modules for TypeScript type checking.

    1.0.0release notes