Rich Harris
c29b74669d
feat: migrate `<svelte:element this="div">` ( #11659 )
4 months ago
Simon H
110a5a852f
fix: robustify `bind:scrollX/Y` binding ( #11655 )
...
- we were scrolling to the given value, which we shouldn't for accessibility reasons (Svelte 4 didn't do it either)
- we need to notify of the value 0 if there's no scroll (https://github.com/sveltejs/svelte/issues/11623#issuecomment-2113495573 )
4 months ago
Rich Harris
d288735fa8
breaking: disallow string literal values in `<svelte:element this="...">` ( #11454 )
...
* breaking: disallow string literal values in `<svelte:element this="...">`
* note breaking change
* Update sites/svelte-5-preview/src/routes/docs/content/03-appendix/02-breaking-changes.md
Co-authored-by: Jeremiasz Major <jrh.mjr@gmail.com>
* prettier
* make invalid `<svelte:element this>` a warning instead of an error (#11641 )
* make it a warning instead of an error
* format
---------
Co-authored-by: Jeremiasz Major <jrh.mjr@gmail.com>
4 months ago
Simon H
c2f75dc7ba
fix: use coarse-grained updates for derived expressions in legacy mode ( #11652 )
...
fixes #11648
Also deduplicates the code a bit
4 months ago
Dominic Gannaway
54083fb9cc
fix: replay load and error events on load during hydration ( #11642 )
...
* fix: replay load and error events on load during hydration
* oops
* fix replacement logic
* make less evasive
* address feedback
* address feedback
* address feedback
* Update packages/svelte/src/internal/client/dom/elements/events.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* address feedback
* Update packages/svelte/src/internal/client/dom/elements/attributes.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* Update packages/svelte/src/internal/client/dom/elements/attributes.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* address more feedback
* address more feedback
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
Rich Harris
7b9fad4b0e
chore: remove `handle_compile_error` ( #11639 )
...
We don't need the awkward handle_compile_error stuff any more, because the relevant information now lives in state.js
4 months ago
Rich Harris
2ebb277be7
feat: more information when hydration fails ( #11649 )
...
In the case of an invalid child element, we already get information about the parent and the child, but in other cases where a mismatch could occur you're pretty much on your own.
This adds a bit more context to hydration_mismatch warnings — 'The error occurred near ...'
4 months ago
github-actions[bot]
019b26b775
Version Packages (next) ( #11645 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
4 months ago
Dominik G
dc9b0d08c1
feat: add rootDir option and set __svelte_meta.file like in svelte4 ( #11627 )
...
* feat: add rootDir option and set __svelte_meta.file like in svelte4
* Update packages/svelte/src/compiler/validate-options.js
* update tests
* centralise logic
* fix
* note to self
* Apply suggestions from code review
* lint
* one dollar towards the windows backslash bugfix foundation please
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
Co-authored-by: Simon Holthausen <simon.holthausen@vercel.com>
4 months ago
Rich Harris
3bf68b4765
fix: make messages more consistent ( #11643 )
4 months ago
Dominic Gannaway
053159bf0b
fix: avoid state_referenced_locally warning within type annotations ( #11638 )
...
* fix: avoid state_referenced_locally warning within type annotations
* better fix
* prettier
* better fix
* fix
* fix
* fix
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
github-actions[bot]
ec25208ba4
Version Packages (next) ( #11617 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
4 months ago
Simon H
4365562228
fix: deduplicate children prop from default slot ( #10800 )
...
* feat: provide isSnippet type, deduplicate children prop from default slot
fixes #10790
part of #9774
* fix ce bug
* remove isSnippet type, adjust test
* fix types
* revert unrelated changes
* remove changeset
* enhance test
* fix
* fix
* fix
* fix, different approach without needing symbol
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
Mathias
cac8630de6
chore: use CustomEvent constructor instead of deprecated createEvent method ( #11629 )
...
* chore: use CustomEvent constructor instead of deprecated createEvent method
* while we're here...
* changeset
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
Simon H
4bedd0e4fb
feat: error on imports to `svelte/internal/*` ( #11632 )
...
* feat: error on imports to `svelte/internal/*`
closes #11622
* regenerate
* also error on svelte/internal
4 months ago
Dominic Gannaway
e5e7ec2404
fix: better handle img loading attribute ( #11635 )
...
* fix: better handle img loading attribute
* better fix
* switch to symbol
4 months ago
Paolo Ricciuti
87a420f64d
feat: error when snippet shadows a prop ( #11631 )
...
Closes #11603
4 months ago
Dominic Gannaway
7ef686f8ee
feat: provide $state warnings for accidental equality ( #11610 )
...
* feat: provide $state warnings for accidental equality
* tune
* tune
* tune
* adjust test
* fix treeshaking
* fix bugs
* fix bugs
* refactor
* revert test changes
* tune
* tune
* tune
* tune
* fix up
* fix
* remove if(DEV) stuff
* use console.trace, like we do for ownership warnings
* tweak
* tweak message, simplify logic
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
Dominic Gannaway
f488a6e84a
feat: add $state.is rune ( #11613 )
...
* feat: add $state.is rune
* fix type
* tweak docs
* may as well update the test case to match the docs
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
Dominic Gannaway
1087e6fb54
chore: improve SSR invalid element error message ( #11585 )
...
* chore: improve SSR invalid element error message
* move push_element and pop_element into new dev.js file
* pass location info, remove unnecessary if (DEV) block
* use full filename, basename is not very helpful. also, current_component is guaranteed to not be null
* current_element is guaranteed to not be null in pop_element
* tweaks
* remove message prefix - redundant when filenames are included
* add line/column
* make message more concise
* reduce indirection
* only print message once
* update test
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
github-actions[bot]
e97bc79f02
Version Packages (next) ( #11608 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
4 months ago
Simon H
faced066bd
feat: migrate warnings ( #11607 )
...
Also contains a changeset for the previous work because we forgot that. Also added more code mappings.
4 months ago
github-actions[bot]
5e9428a65d
Version Packages (next) ( #11580 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
4 months ago
Dominic Gannaway
b964a4ce1d
fix: improve ff handling of lazy images ( #11593 )
...
* fix: improve ff handling of lazy images
* tune
* tune
* tune
* tune
* tune
4 months ago
Rich Harris
b212b17385
fix: skip deriveds for props with known safe calls ( #11595 )
4 months ago
Simon H
d408d20cdd
fix: replicate Svelte 4 props update detection in legacy mode ( #11577 )
...
* fix: replicate Svelte 4 props update detection in legacy mode
fixes #11448 by wrapping props in deriveds
* fix test
* Update packages/svelte/src/compiler/phases/3-transform/client/utils.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* dedicated flag
* prettier
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
Simon H
a0bdac8cd7
fix: correctly handle falsy values of style directives in SSR mode ( #11583 )
...
fixes #11044
4 months ago
Dominic Gannaway
dc16668773
chore: improve runtime overhead of creating comment templates ( #11591 )
...
* chore: improve runtime overhead of creating comment templates
* Update packages/svelte/src/internal/client/dom/template.js
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
* changeset
---------
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
Paolo Ricciuti
81517a506c
fix: allow for non optional chain call expression in render ( #11578 )
4 months ago
github-actions[bot]
61238d0fd3
Version Packages (next) ( #11564 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
4 months ago
Rich Harris
9c680f1030
chore: optimise effects ( #11569 )
...
* optimise effects
* tweak
* don't allocate array unnecessarily
* filter_flags appears to be unnecessary?
* lint
* tweak
* simplify (#11570 )
* changeset
4 months ago
Dominic Gannaway
5497b3d0bc
fix: ensure all effect cleanup functions are untracked ( #11567 )
...
* fix: ensure all effect cleanup functions are untracked
* add test
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
Dominic Gannaway
f6e87772cb
Revert "fix: ensure Svelte action destroy effects are untracked ( #11562 )" ( #11568 )
...
This reverts commit e49f1f7f11
.
4 months ago
Dominic Gannaway
e49f1f7f11
fix: ensure Svelte action destroy effects are untracked ( #11562 )
...
* fix: unesure Svelte action destroy effects are untracked
* fix: unesure Svelte action destroy effects are untracked
4 months ago
github-actions[bot]
816335f906
Version Packages (next) ( #11561 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
4 months ago
Dominic Gannaway
643bbf2be2
Better process effects ( #11560 )
...
* fix: improve internal mechanism for handling process_effects
4 months ago
github-actions[bot]
4cadd07676
Version Packages (next) ( #11559 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
4 months ago
Dominic Gannaway
a3702e8171
fix: adjust heuristics for effect_update_depth_exceeded ( #11558 )
...
* fix: adjust heuristics for effect_update_depth_exceeded
* fix: adjust heuristics for effect_update_depth_exceeded
* fix: further adjust heuristics for effect_update_depth_exceeded
4 months ago
github-actions[bot]
18f61a575f
Version Packages (next) ( #11554 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
4 months ago
Dominic Gannaway
43ad72b1ce
fix: adjust heuristics for effect_update_depth_exceeded ( #11557 )
...
* fix: adjust heuristics for effect_update_depth_exceeded
* fix: adjust heuristics for effect_update_depth_exceeded
4 months ago
Dominic Gannaway
597715ff98
fix: improved $inspect handling of reactive Map/Set/Date ( #11553 )
4 months ago
github-actions[bot]
7e9b109de6
Version Packages (next) ( #11541 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
4 months ago
Dominic Gannaway
c450cdb7a7
fix: better support for lazy img elements ( #11545 )
...
* fix: better support for lazy img elements
* tune
* fix
4 months ago
Dominic Gannaway
fcc72ae2f3
feat: provide better error messages in DEV ( #11526 )
...
* feat: provide better error messages in DEV
* fix stuff
* fix stuff
* fix tests
* fix
* assert.include results in better errors on mismatches
* remove indentation
* tweak
* rename
* fix issues
* more fixes
* more fixes
* neaten up stack trace
* Update packages/svelte/src/internal/client/reactivity/effects.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* Update packages/svelte/src/internal/client/runtime.js
Co-authored-by: Rich Harris <rich.harris@vercel.com>
* address feedback
* lint
---------
Co-authored-by: Rich Harris <rich.harris@vercel.com>
4 months ago
Simon H
641e411cf1
fix: ensure spread events are always added ( #11535 )
...
In edge cases it may happen that set_attributes is re-run before the effect is executed. In that case the render effect which initiates this re-run will destroy the inner effect and it will never run. But because next and prev may have the same keys, the event would not get added again and it would get lost. We prevent this by using a root effect.
The added test case doesn't fail for some reason without this fix, but it does fail when you test it out manually, so I still added it.
Found through https://github.com/sveltejs/svelte/issues/10359#issuecomment-2101167524
4 months ago
Simon H
31f8fea22d
fix: don't warn on writes to `$state` ( #11540 )
...
fixes #10905
4 months ago
Simon H
65223363e9
fix: handle falsy prop aliases correctly ( #11539 )
...
fixes #10854
4 months ago
github-actions[bot]
59f4feb4d8
Version Packages (next) ( #11518 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
4 months ago
Rich Harris
8742823e39
fix: make `$effect.active()` true when updating deriveds ( #11500 )
...
* fix: make `$effect.active()` true when updating deriveds
* WIP
* this seems to work?
* prevent effects being created in unowned deriveds
* update test
* fix issue
---------
Co-authored-by: Dominic Gannaway <dg@domgan.com>
4 months ago
Dominic Gannaway
30caaef2e5
fix: improve behaviour of unowned derived signals ( #11521 )
4 months ago