Skip to content

Update dependency svelte to v5

renovate requested to merge renovate/svelte-5.x into main

This MR contains the following updates:

Package Type Update Change
svelte (source) devDependencies major ^4.2.19 -> ^5.11.2

Release Notes

sveltejs/svelte (svelte)

v5.11.2

Compare Source

Patch Changes
  • fix: correctly handle ssr for reactivity/window (#​14681)

v5.11.1

Compare Source

Patch Changes
  • fix: account for global block in is_empty (#​14677)

  • fix: remove overzealous reactive_declaration_non_reactive_property warning (#​14663)

v5.11.0

Compare Source

Minor Changes
  • feat: add svelte/reactivity/window module (#​14660)
Patch Changes
  • fix: take into account registration state when setting custom element props (#​14508)

v5.10.1

Compare Source

Patch Changes
  • fix: ensure snippet hoisting works in the correct scope (#​14642)

  • fix: ensure $state.snapshot clones holey arrays correctly (#​14657)

  • fix: restore input binding selection position (#​14649)

  • fix: transform everything that is not a selector inside :global (#​14577)

  • Overwrite Spring.#last_value when using .set() with {instant: true} (#​14656)

  • fix: don't emit assignment warnings for bindings (#​14651)

v5.10.0

Compare Source

Minor Changes
  • feat: provide links to documentation for errors/warnings (#​14629)
Patch Changes
  • fix: allow exports with source from script module even if no bind is present (#​14620)

  • fix: deconflict get_name for literal class properties (#​14607)

v5.9.1

Compare Source

Patch Changes
  • fix: mark subtree dynamic for bind with sequence expressions (#​14626)

v5.9.0

Compare Source

Minor Changes
  • feat: add support for bind getters/setters (#​14307)
Patch Changes
  • fix: always run if block code the first time (#​14597)

v5.8.1

Compare Source

Patch Changes
  • fix: reinstate missing prefersReducedMotion export (#​14586)

v5.8.0

Compare Source

Minor Changes
  • feat: add Spring and Tween classes to svelte/motion (#​11519)

v5.7.1

Compare Source

Patch Changes
  • fix: ensure bindings always take precedence over spreads (#​14575)

v5.7.0

Compare Source

Minor Changes
  • feat: add createSubscriber function for creating reactive values that depend on subscriptions (#​14422)

  • feat: add reactive MediaQuery class, and a prefersReducedMotion class instance (#​14422)

Patch Changes
  • fix: treat undefined and null the same for the initial input value (#​14562)

v5.6.2

Compare Source

Patch Changes
  • chore: make if blocks tree-shakable (#​14549)

v5.6.1

Compare Source

Patch Changes
  • fix: handle static form values in combination with default values (#​14555)

v5.6.0

Compare Source

Minor Changes
  • feat: support defaultValue/defaultChecked for inputs (#​14289)

v5.5.4

Compare Source

Patch Changes
  • fix: better error messages for invalid HTML trees (#​14445)

  • fix: remove spreaded event handlers when they become nullish (#​14546)

  • fix: respect the unidirectional nature of time (#​14541)

v5.5.3

Compare Source

Patch Changes
  • fix: don't try to add owners to non-$state class fields (#​14533)

  • fix: capture infinite_loop_guard in error boundary (#​14534)

  • fix: proxify values when assigning using ||=, &&= and ??= operators (#​14273)

v5.5.2

Compare Source

Patch Changes
  • fix: use correct reaction when lazily creating deriveds inside SvelteDate (#​14525)

v5.5.0

Compare Source

Minor Changes
  • feat: allow snippets to be exported from module scripts (#​14315)
Patch Changes
  • fix: ignore TypeScript generics on variables (#​14509)

v5.4.0

Compare Source

Minor Changes

v5.3.2

Compare Source

Patch Changes
  • fix: correctly prune CSS for elements inside snippets (#​14494)

  • fix: render attributes during SSR regardless of case (#​14492)

v5.3.1

Compare Source

Patch Changes
  • fix: treat spread elements the same as call expressions (#​14488)

  • fix: correctly increment/decrement bigints (#​14485)

v5.3.0

Compare Source

Minor Changes
  • feat: add error boundaries with <svelte:boundary> (#​14211)

v5.2.12

Compare Source

Patch Changes
  • fix: upgrade to esm-env 1.2.1 to fix issues with non-Vite setups (#​14470)

  • fix: prevent infinite loops when pruning CSS (#​14474)

  • fix: generate correct code when encountering object expression statement (#​14480)

v5.2.11

Compare Source

Patch Changes
  • fix: ignore text and expressions outside the template when validating HTML (#​14468)

  • fix: better account for render tags when pruning CSS (#​14456)

v5.2.10

Compare Source

Patch Changes
  • fix: correctly remove unused selectors in middle of selector lists (#​14448)

  • chore: upgrade esm-env for Vite 6 support (#​14460)

  • fix: strip exported TypeScript function overloads (#​14458)

v5.2.9

Compare Source

Patch Changes
  • fix: show :then block for null/undefined value (#​14440)

  • fix: relax html parent validation (#​14442)

  • fix: prevent memory leak when creating deriveds inside untrack (#​14443)

  • fix: disregard TypeScript nodes when pruning CSS (#​14446)

v5.2.8

Compare Source

Patch Changes
  • fix: correctly prune each blocks (#​14403)

  • fix: provide temporary LegacyComponentType (#​14257)

  • fix: attach spread attribute events synchronously (#​14387)

  • fix: ensure last empty text node correctly hydrates (#​14425)

  • fix: correctly prune key blocks (#​14403)

v5.2.7

Compare Source

Patch Changes
  • fix: always use set for private identifiers (#​14378)

v5.2.6

Compare Source

Patch Changes
  • fix: remove template expression inlining (#​14374)

v5.2.5

Compare Source

Patch Changes
  • fix: correctly handle srcObject attribute on video elements (#​14369)

  • add contentvisibilityautostatechange event to element definitions (#​14373)

  • fix: tighten up export default validation (#​14368)

  • fix: include method definitions in class private fields (#​14365)

v5.2.4

Compare Source

Patch Changes
  • fix: ensure internal cloning can work circular values (#​14347)

  • fix: correctly update dynamic member expressions (#​14359)

  • fix: ensure is_pure takes into account $effect.tracking() (#​14333)

  • fix: coerce value to number when hydrating range/number input with changed value (#​14349)

v5.2.3

Compare Source

Patch Changes
  • fix: ensure dynamic call expressions correctly generate output (#​14345)

v5.2.2

Compare Source

Patch Changes
  • fix: treat property accesses of literals as pure (#​14325)

v5.2.1

Compare Source

Patch Changes
  • fix: upgrade to esm-env 1.2.1 to fix issues with non-Vite setups (#​14470)

  • fix: prevent infinite loops when pruning CSS (#​14474)

  • fix: generate correct code when encountering object expression statement (#​14480)

v5.2.0

Compare Source

Minor Changes
  • feat: better inlining of static attributes (#​14269)

v5.1.17

Compare Source

Patch Changes
  • fix: account for :has(...) as part of :root (#​14229)

  • fix: prevent nested pseudo class from being marked as unused (#​14229)

  • fix: use strict equality for key block comparisons in runes mode (#​14285)

  • fix: bump is-reference dependency to fix import.meta bug (#​14286)

v5.1.16

Compare Source

Patch Changes
  • fix: don't wrap pseudo classes inside :global(...) with another :global(...) during migration (#​14267)

  • fix: bail on named slots with that have reserved keywords during migration (#​14278)

v5.1.15

Compare Source

Patch Changes
  • fix: consider static attributes that are inlined in the template (#​14249)

v5.1.14

Compare Source

Patch Changes
  • fix: migration script messing with attributes (#​14260)

  • fix: do not treat reassigned synthetic binds as state in runes mode (#​14236)

  • fix: account for mutations in script module in ownership check (#​14253)

  • fix: consider img with loading attribute not static (#​14237)

v5.1.13

Compare Source

Patch Changes
  • fix: add migration task when there's a variable named that would conflict with a rune (#​14216)

  • fix: consider valueOf in the reactive methods of SvelteDate (#​14227)

  • fix: handle sibling combinators within :has (#​14213)

  • fix: consider variables with synthetic store sub as state (#​14195)

  • fix: read index as a source in legacy keyed each block (#​14208)

  • fix: account for shadowing children slot during migration (#​14224)

  • fix: ensure explicit nesting selector is always applied (#​14193)

  • fix: add lang="ts" attribute during migration if needed (#​14222)

v5.1.12

Compare Source

Patch Changes
  • fix: ignore as type expressions on property definitions (#​14181)

  • fix: restore active reaction if then block throws (#​14191)

  • chore: adds legacy mode flag reducing bundle size in runes mode only apps (#​14180)

v5.1.11

Compare Source

Patch Changes
  • fix: error on TypeScript's readonly modifier (#​14153)

  • fix: remove scoping for :not selectors (#​14177)

v5.1.10

Compare Source

Patch Changes
  • fix: ensure non-matching elements are scoped for :not(...) selector (#​13999)

  • fix: ensure video elements autoplay in safari (#​14095)

  • fix: ensure trailing multiline comments on props produce correct code (#​14143#issuecomment-2455702689) (#​14143)

  • fix: correctly infer <a> tag namespace (#​14134)

  • fix: check options namespace for top level svelte:elements (#​14101)

  • fix: ensure migrate keeps inline/trailing comments in $props type definition (#​14143)

  • fix: update links in JSDoc (#​14165)

  • fix: ensure SvelteMap and SvelteSet work with generators in dev (#​14103)

  • fix: only output the key for each_key_duplicate (#​14147)

  • fix: prevent migrated snippet from shadow snippet prop (#​14127)

  • fix: pass along anchor in legacy class wrappers (#​14100)

  • fix: recognize all custom element prop definitions (#​14084)

  • fix: migrate multiple declarations with only some exported correctly (#​14126)

v5.1.9

Compare Source

Patch Changes
  • fix: ensure transitions are applied to nested elements (#​14080)

v5.1.8

Compare Source

Patch Changes
  • fix: ensure compiler statements are correctly included (#​14074)

v5.1.7

Compare Source

Patch Changes
  • fix: ensure each block inert items are disposed of if the each block is also inert (#​13930)

  • fix: allow warningFilter option for compileModule (#​14066)

  • fix: ensure onMount correctly fires when new expressions are used (#​14049)

  • fix: wrap :id, :where``:not and :has with :global during migration (#​13850)

  • fix: ensure custom element attribute/prop changes are in their own context (#​14016)

v5.1.6

Compare Source

Patch Changes
  • fix: ensure child effects are destroyed before their deriveds (#​14043)

v5.1.5

Compare Source

Patch Changes
  • fix: replace typo in compiler error messages (#​14044)

  • fix: preserve the separator between selectors when an unused selector is in between (#​13954)

  • fix: more robust re-subscribe detection for fromStore (#​13995)

  • fix: allow to pass in TS preference to migration (#​13929)

  • fix: extend derived/state validation error to indirect exports (#​14039)

  • fix: minify inject CSS in prod mode (#​14006)

  • fix: ensure toStore subscription correctly syncs latest value (#​14015)

  • fix: don't access requestAnimationFrame until needed to reduce need for mocks during testing (#​14040)

  • fix: ensure element effects are executed in the correct order (#​14038)

  • fix: make compiler error extend from Error (#​14036)

v5.1.4

Compare Source

Patch Changes
  • fix: add empty stack to CompileDiagnostic to show error on build (#​13942)

  • fix: ensure effect_tracking correctly handles tracking reactions (#​14005)

  • fix: update broken links (#​13944)

  • fix: more exhaustive check during SvelteMap.set in deriveds (#​13951)

  • fix: trim whitespace while migrating blocks (#​13941)

  • fix: update links that previously pointed to preview site (#​14001)

  • fix: properly migrate imports types prefixed with $ (#​14007)

v5.1.3

Compare Source

Patch Changes
  • fix: rethrow errors from await block if no catch block exists (#​13819)

  • fix: ensure SVG element attributes have case preserved (#​13935)

  • fix: ensure bind:group works as intended with proxied state objects (#​13939)

  • fix: ensure value is correctly set to zero on the progress element (#​13924)

  • fix: skip comment nodes in snippet validation logic (#​13936)

  • fix: typo in Action types (#​13874)

  • fix: remove metadata from legacy AST (#​13927)

v5.1.2

Compare Source

Patch Changes
  • fix: improve consistency of transitions (#​13895)

  • fix: enable bound store props in runes mode components (#​13887)

  • fix: ensure each block references to imports are handled correctly (#​13892)

  • fix: ensure SvelteMap reactivity persists through deriveds (#​13877)

  • fix: ensure snippets after empty text correctly hydrate (#​13870)

  • fix: prevent migration script from adding props. to the export let identifier (#​13899)

  • fix: prevent var name clashing for delegated events without params (#​13896)

v5.1.1

Compare Source

Patch Changes
  • fix: account for :has(...) as part of :root (#​14229)

  • fix: prevent nested pseudo class from being marked as unused (#​14229)

  • fix: use strict equality for key block comparisons in runes mode (#​14285)

  • fix: bump is-reference dependency to fix import.meta bug (#​14286)

v5.1.0

Compare Source

Minor Changes
  • feat: export mount() options as the MountOptions type (#​13674)

  • feat: allow usage of getContext() within $derived runes (#​13830)

Patch Changes
  • fix: properly migrate ts with inferred type comments (#​13761)

  • fix: correct property name conversion in custom transitions (#​13820)

  • fix: ensure $effect.tracking returns false inside transition functions (#​13775)

  • fix: migrate default slots to children snippet (#​13760)

  • fix: don't print errors on migration errors (#​13754)

  • fix: prevent spread attribute from overriding class directive (#​13763)

  • fix: ensure :has selectors followed by other selectors match (#​13824)

  • fix: ensure muted DOM property works correctly in FF (#​13751)

  • fix: show filename information in legacy_recursive_reactive_block (#​13764)

v5.0.5

Compare Source

Patch Changes
  • fix: mark :has selectors with multiple preceding selectors as used (#​13750)

  • fix: ensure event context is reset before invoking callback (#​13737)

  • fix: add more robust check for Element prototype (#​13744)

  • fix: do not comment out unused selectors that are inside an unused selector (#​13746)

  • fix: more accurately detect $derived migration opportunities (#​13740)

  • fix: @​debug does not work with proxied-state (#​13690)

  • fix: do not add jsdoc if no types found (#​13738)

v5.0.4

Compare Source

Patch Changes
  • fix: webview preload tag can be any string (#​13733)

  • fix: better children snippet / default slot interop (#​13734)

v5.0.3

Compare Source

Patch Changes
  • chore: ensure transition events are dispatched without current reaction (#​13719)

v5.0.2

Compare Source

Patch Changes
  • fix: don't blank css on migration error (#​13703)

v5.0.1

Compare Source

Patch Changes
  • fix: use typedef for JSDoc props and maintain comments (#​13698)

v5.0.0

Compare Source

A new major version of Svelte has been released! 🎉

The new version brings:

  • even better performance,
  • a more granular reactivity system with runes,
  • more expressive template syntax with snippets and event attributes,
  • native TypeScript support,
  • and backwards compatibility with the previous syntax!

For more details check out the Svelte docs and the migration guide.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻️ Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, check this box

This MR has been generated by Renovate Bot.

Edited by renovate

Merge request reports

Loading