mirror of https://github.com/sveltejs/svelte
svelte-custom-renderer
changeset-release/main
main
tweak-parser
fragmentless-branches
incremental-batches
incremental-batches-was-marked
fork-never-write-to-v
agent-driven-perf-investigation
paoloricciuti/issue-17720-print-parse-code-produces-broken-code-ae5d2b
const-await-blockers-fix
async-svelte-map
async-svelte-set
async-blocking-and-merging
async-derived-coordinate-batches
config
entangle-batches
runes-mode
stale-batch
always-populate-batch-values
async-svelte-set-alternative
eager-bind-this-teardown
freeze-destroyed-consts
eager-effect-rework
unified-async
best-practices-doc
fix-compiler-docs
version-packages-ecosystem-ci
defer-effects-in-pending-boundary
allow-recursive-derived
effect-active
ssr-error-boundary-class
oxlint
bindable-not-updated
hydrate-await-html
object-blockers
beforemount-callback
better-blockers
dependencies-set
elliott/break-out-css-parser
customizable-select-skip-hydration
gh-17393
clear-batch-between-runs
partial-components
allow-state-as-derived-init
hydratable-thenable
dedupe-stack-stuff
fork-methods
elliott/resources
async-each-fix
resource-type
remove-unowned-check
derived-reactivity-loss-fix-alt
gh-17012
state-eager-derived-block
customizable-select
parallelize-async-work
Rich-Harris-patch-1
boundary-batch-first-run
elliott/boundary-issues
elliott/effect-pending-correct-boundary
developer-guide
boundary-batch-nullpointer-fix-alt
legacy-api-hmr-bug
fix-15337
async-fixes-2
1000-reading-derived-effects
binding-fix-2
derived-reactions-maybe-dirty-marked
state-onchange
gh-16365
more-efficient-effect-schedule
source-to-state-in-class-belt-and-braces
warn-read-just-created-state
using-dispose
using
elliott/13891
thunkify-deriveds-on-server
fix-each-legacy-leak
same-fn-attachments
destructure-non-iterators
svelte-4
warn-attachments-legacy-member-access
attach-runes-mode
flush-sync
feat/devtool
binding-evt-without-context
state-onchange-roots
onframe
custom-render-shim-dom
elliott/create-reactive-function
host-docs
invalid-html-structure-error
svelte-element-element
read-old-values-in-teardown
props-id-hydration-markers
fix-props-wrong-value-onunmount
props-id-anywhere
async-changeset
async-fork
aa-coordination-resource
async-abort-signal
aa-coordination
aa
aa-fork
const-rune-usage-error
aaa
attachments-2
tracked
deps-tweak
dont-hoist-snippet-binding-group
ownership-function-bindings
docs-derived-memoized
event-delegation-fixes
eltigerchino-patch-1
fix-inspect-trace
fix-untrack-expose-unsafe
fix-pre-backslash-n
svelte-html
yield
portals
opaque-rune
title-removal-fix
reactivity-boundary-docs
broken-slot-pruning
legacy-conditional-template
hydratable-flag
class-directive-enhancements
gh-14204
ts-strip-fix
migrate-conflict-runes
warning-message
update-store-docs
revert-13651-compile-warning
disclaimer
transition-out-effect-tracking
cleanup-non-render-effects-in-blocks
annotate-notes
migrate-svelte-component
css-migrate-blank
fix-import-run-space
gh-13270
gh-13256
table-td-autoopen
better-docs-for-css-injected
revert-13158-valid-ssr
derived-by-current-value
custom-formatter
gh-12624
omit-trailing-sibling-calls
gh-12084
state-link-fix
readonly-props
gh-12896
migrate-member-assignment
animation-params
feat/support-modern-ast-flag-on-repl
nolyfill
svelte-5-docs-proposal-wip
fix-memory-leak-
chore/bump-deps
snippet-work-cont
effect-active-derived-allow-unowned
runes-in-constructor
some-cleanup
fix-playground
better-snapshot
object-freeze-fix
context-ownership
props-bindable
effect-docs-2
blockless
remove-readonly-check
ttf-fix
remove-ttf-hack
derived-consumer-fix
compile-return-ast
rm-bytes
hoist-unmodified-var
puru/try-jsdelivr
benmccann-patch-2
elliott/add-variadic-snippets
proxied-state-set
dynamic-component-types
proxied-state-each-blocks
baseballyama-docs/string-event
tidy-up-analysis
svelte-4-base
fix-symlink
quicker-redirects
introducing-runes
versioned-docs
raw-hydration-mismatch
fix-stale-await-ctx
parse-regexp-no-paren
fix-dyn-component-test
ce-tick
feat/orama
parser-let-destructure
version-3
sites-examples
gh-3780
v2
svelte@5.55.2
svelte@5.55.1
svelte@5.55.0
svelte@5.54.1
svelte@5.54.0
svelte@5.53.13
svelte@5.53.12
svelte@5.53.11
svelte@5.53.10
svelte@5.53.9
svelte@5.53.8
svelte@5.53.7
svelte@5.53.6
svelte@5.53.5
svelte@5.53.4
svelte@5.53.3
svelte@5.53.2
svelte@5.53.1
svelte@5.53.0
svelte@5.52.0
svelte@5.51.5
svelte@5.51.4
svelte@5.51.3
svelte@5.51.2
svelte@5.51.1
svelte@5.51.0
svelte@5.50.3
svelte@5.50.2
svelte@5.50.1
svelte@5.50.0
svelte@5.49.2
svelte@5.49.1
svelte@5.49.0
svelte@5.48.5
svelte@5.48.4
svelte@5.48.3
svelte@5.48.2
svelte@5.48.1
svelte@5.48.0
svelte@5.47.1
svelte@5.47.0
svelte@5.46.4
svelte@5.46.3
svelte@5.46.1
svelte@5.46.0
svelte@5.45.10
svelte@5.45.9
svelte@5.45.8
svelte@5.45.7
svelte@5.45.6
svelte@5.45.5
svelte@5.45.4
svelte@5.45.3
svelte@5.45.2
svelte@5.45.1
svelte@5.45.0
svelte@5.44.1
svelte@5.44.0
svelte@5.43.15
svelte@5.43.14
svelte@5.43.13
svelte@5.43.12
svelte@5.43.11
svelte@5.43.10
svelte@5.43.9
svelte@5.43.8
svelte@5.43.7
svelte@5.43.6
svelte@5.43.5
svelte@5.43.4
svelte@5.43.3
svelte@5.43.2
svelte@5.43.1
svelte@5.43.0
svelte@5.42.3
svelte@5.42.2
svelte@5.42.1
svelte@5.42.0
svelte@5.41.4
svelte@5.41.3
svelte@5.41.2
svelte@5.41.1
svelte@5.41.0
svelte@5.40.2
svelte@5.40.1
svelte@5.40.0
svelte@5.39.13
svelte@5.39.12
svelte@5.39.11
svelte@5.39.10
svelte@5.39.9
svelte@5.39.8
svelte@5.39.7
svelte@5.39.6
svelte@5.39.5
svelte@5.39.4
svelte@5.39.3
svelte@5.39.2
svelte@5.39.1
svelte@5.39.0
svelte@5.38.10
svelte@5.38.9
svelte@5.38.8
svelte@5.38.7
svelte@5.38.6
svelte@5.38.5
svelte@5.38.3
svelte@5.38.2
svelte@5.38.1
svelte@5.38.0
svelte@5.37.3
svelte@5.37.2
svelte@5.37.1
svelte@5.37.0
svelte@5.36.17
svelte@5.36.16
svelte@5.36.15
svelte@5.36.14
svelte@5.36.13
svelte@5.36.12
svelte@5.36.10
svelte@5.36.9
svelte@5.36.8
svelte@5.36.7
svelte@5.36.6
svelte@5.36.5
svelte@5.36.4
svelte@5.36.3
svelte@5.36.2
svelte@5.36.1
svelte@5.36.0
svelte@5.35.7
svelte@5.35.6
svelte@5.35.5
svelte@5.35.4
svelte@5.35.3
svelte@5.35.2
svelte@5.35.1
svelte@5.35.0
svelte@5.34.9
svelte@5.34.8
svelte@5.34.7
svelte@5.34.6
svelte@5.34.5
svelte@5.34.4
svelte@5.34.3
svelte@5.34.2
svelte@5.34.1
svelte@5.34.0
svelte@5.33.19
svelte@5.33.18
svelte@5.33.17
svelte@5.33.16
svelte@5.33.15
svelte@5.33.14
svelte@5.33.13
svelte@5.33.12
svelte@5.33.11
svelte@5.33.10
svelte@5.33.9
svelte@5.33.8
svelte@5.33.7
svelte@5.33.6
svelte@5.33.5
svelte@5.33.4
svelte@5.33.3
svelte@5.33.2
svelte@5.33.1
svelte@5.33.0
svelte@5.32.2
svelte@5.32.1
svelte@4.2.20
svelte@5.32.0
svelte@5.31.1
svelte@5.31.0
svelte@5.30.2
svelte@5.30.1
svelte@5.30.0
svelte@5.29.0
svelte@5.28.7
svelte@5.28.6
svelte@5.28.5
svelte@5.28.4
svelte@5.28.3
svelte@5.28.2
svelte@5.28.1
svelte@5.28.0
svelte@5.27.3
svelte@5.27.2
svelte@5.27.1
svelte@5.27.0
svelte@5.26.3
svelte@5.26.2
svelte@5.26.1
svelte@5.26.0
svelte@5.25.12
svelte@5.25.11
svelte@5.25.10
svelte@5.25.9
svelte@5.25.8
svelte@5.25.7
svelte@5.25.6
svelte@5.25.5
svelte@5.25.4
svelte@5.25.3
svelte@5.25.2
svelte@5.25.1
svelte@5.25.0
svelte@5.24.1
svelte@5.24.0
svelte@5.23.2
svelte@5.23.1
svelte@5.23.0
svelte@5.22.6
svelte@5.22.5
svelte@5.22.4
svelte@5.22.3
svelte@5.22.2
svelte@5.22.1
svelte@5.22.0
svelte@5.21.0
svelte@5.20.5
svelte@5.20.4
svelte@5.20.3
svelte@5.20.2
svelte@5.20.1
svelte@5.20.0
svelte@5.19.10
svelte@5.19.9
svelte@5.19.8
svelte@5.19.7
svelte@5.19.6
svelte@5.19.5
svelte@5.19.4
svelte@5.19.3
svelte@5.19.2
svelte@5.19.1
svelte@5.19.0
svelte@5.18.0
svelte@5.17.5
svelte@5.17.4
svelte@5.17.3
svelte@5.17.2
svelte@5.17.1
svelte@5.17.0
svelte@5.16.6
svelte@5.16.5
svelte@5.16.4
svelte@5.16.3
svelte@5.16.2
svelte@5.16.1
svelte@5.16.0
svelte@5.15.0
svelte@5.14.6
svelte@5.14.5
svelte@5.14.4
svelte@5.14.3
svelte@5.14.2
svelte@5.14.1
svelte@5.14.0
svelte@5.13.0
svelte@5.12.0
svelte@5.11.3
svelte@5.11.2
svelte@5.11.1
svelte@5.11.0
svelte@5.10.1
svelte@5.10.0
svelte@5.9.1
svelte@5.9.0
svelte@5.8.1
svelte@5.8.0
svelte@5.7.1
svelte@5.7.0
svelte@5.6.2
svelte@5.6.1
svelte@5.6.0
svelte@5.5.4
svelte@5.5.3
svelte@5.5.2
svelte@5.5.0
svelte@5.4.0
svelte@5.3.2
svelte@5.3.1
svelte@5.3.0
svelte@5.2.12
svelte@5.2.11
svelte@5.2.10
svelte@5.2.9
svelte@5.2.8
svelte@5.2.7
svelte@5.2.6
svelte@5.2.5
svelte@5.2.4
svelte@5.2.3
svelte@5.2.2
svelte@5.2.1
svelte@5.2.0
svelte@5.1.17
svelte@5.1.16
svelte@5.1.15
svelte@5.1.14
svelte@5.1.13
svelte@5.1.12
svelte@5.1.11
svelte@5.1.10
svelte@5.1.9
svelte@5.1.8
svelte@5.1.7
svelte@5.1.6
svelte@5.1.5
svelte@5.1.4
svelte@5.1.3
svelte@5.1.2
svelte@5.1.1
svelte@5.1.0
svelte@5.0.5
svelte@5.0.4
svelte@5.0.3
svelte@5.0.2
svelte@5.0.1
svelte@5.0.0
svelte@5.0.0-next.272
svelte@5.0.0-next.271
svelte@5.0.0-next.270
svelte@5.0.0-next.269
svelte@5.0.0-next.268
svelte@5.0.0-next.267
svelte@5.0.0-next.266
svelte@5.0.0-next.265
svelte@5.0.0-next.264
svelte@5.0.0-next.263
svelte@5.0.0-next.262
svelte@5.0.0-next.260
svelte@5.0.0-next.259
svelte@5.0.0-next.258
svelte@5.0.0-next.257
svelte@5.0.0-next.256
svelte@5.0.0-next.255
svelte@5.0.0-next.254
svelte@5.0.0-next.253
svelte@5.0.0-next.252
svelte@5.0.0-next.251
svelte@5.0.0-next.250
svelte@5.0.0-next.249
svelte@5.0.0-next.248
svelte@5.0.0-next.247
svelte@5.0.0-next.246
svelte@5.0.0-next.245
svelte@5.0.0-next.244
svelte@5.0.0-next.243
svelte@5.0.0-next.242
svelte@5.0.0-next.241
svelte@5.0.0-next.240
svelte@5.0.0-next.239
svelte@5.0.0-next.238
svelte@5.0.0-next.237
svelte@5.0.0-next.236
svelte@4.2.19
svelte@5.0.0-next.235
svelte@5.0.0-next.234
svelte@5.0.0-next.233
svelte@5.0.0-next.232
svelte@5.0.0-next.231
svelte@5.0.0-next.230
svelte@5.0.0-next.229
svelte@5.0.0-next.228
svelte@5.0.0-next.227
svelte@5.0.0-next.226
svelte@5.0.0-next.225
svelte@5.0.0-next.224
svelte@5.0.0-next.223
svelte@5.0.0-next.222
svelte@5.0.0-next.221
svelte@5.0.0-next.220
svelte@5.0.0-next.219
svelte@5.0.0-next.218
svelte@5.0.0-next.217
svelte@5.0.0-next.216
svelte@5.0.0-next.215
svelte@5.0.0-next.214
svelte@5.0.0-next.213
svelte@5.0.0-next.212
svelte@5.0.0-next.211
svelte@5.0.0-next.210
svelte@5.0.0-next.208
svelte@5.0.0-next.207
svelte@5.0.0-next.206
svelte@5.0.0-next.205
svelte@5.0.0-next.204
svelte@5.0.0-next.203
svelte@5.0.0-next.202
svelte@5.0.0-next.201
svelte@5.0.0-next.200
svelte@5.0.0-next.199
svelte@5.0.0-next.198
svelte@5.0.0-next.197
svelte@5.0.0-next.196
svelte@5.0.0-next.195
svelte@5.0.0-next.194
svelte@5.0.0-next.193
svelte@5.0.0-next.192
svelte@5.0.0-next.191
svelte@5.0.0-next.190
svelte@5.0.0-next.189
svelte@5.0.0-next.188
svelte@5.0.0-next.187
svelte@5.0.0-next.186
svelte@5.0.0-next.185
svelte@5.0.0-next.184
svelte@5.0.0-next.183
svelte@5.0.0-next.182
svelte@5.0.0-next.181
svelte@5.0.0-next.180
svelte@5.0.0-next.179
svelte@5.0.0-next.178
svelte@5.0.0-next.177
svelte@5.0.0-next.176
svelte@5.0.0-next.175
svelte@5.0.0-next.174
svelte@5.0.0-next.173
svelte@5.0.0-next.172
svelte@5.0.0-next.171
svelte@5.0.0-next.170
svelte@5.0.0-next.169
svelte@5.0.0-next.168
svelte@5.0.0-next.167
svelte@5.0.0-next.166
svelte@5.0.0-next.165
svelte@5.0.0-next.164
svelte@5.0.0-next.163
svelte@5.0.0-next.160
svelte@5.0.0-next.159
svelte@5.0.0-next.158
svelte@5.0.0-next.157
svelte@5.0.0-next.155
svelte@5.0.0-next.154
svelte@5.0.0-next.153
svelte@5.0.0-next.152
svelte@5.0.0-next.151
svelte@4.2.18
svelte@5.0.0-next.150
svelte@5.0.0-next.149
svelte@5.0.0-next.148
svelte@5.0.0-next.147
svelte@5.0.0-next.144
svelte@5.0.0-next.143
svelte@5.0.0-next.142
svelte@5.0.0-next.141
svelte@5.0.0-next.140
svelte@5.0.0-next.139
svelte@5.0.0-next.138
svelte@5.0.0-next.137
svelte@5.0.0-next.136
svelte@5.0.0-next.135
svelte@5.0.0-next.134
svelte@5.0.0-next.133
svelte@5.0.0-next.132
svelte@4.2.17
svelte@5.0.0-next.131
svelte@5.0.0-next.130
svelte@5.0.0-next.129
svelte@5.0.0-next.128
svelte@5.0.0-next.127
svelte@5.0.0-next.126
svelte@5.0.0-next.125
svelte@4.2.16
svelte@5.0.0-next.123
svelte@5.0.0-next.121
svelte@5.0.0-next.120
svelte@5.0.0-next.119
svelte@5.0.0-next.118
svelte@5.0.0-next.117
svelte@5.0.0-next.116
svelte@5.0.0-next.115
svelte@5.0.0-next.114
svelte@5.0.0-next.113
svelte@5.0.0-next.112
svelte@5.0.0-next.111
svelte@5.0.0-next.110
svelte@5.0.0-next.109
svelte@5.0.0-next.108
svelte@4.2.15
svelte@5.0.0-next.107
svelte@5.0.0-next.106
svelte@5.0.0-next.105
svelte@5.0.0-next.104
svelte@5.0.0-next.103
svelte@5.0.0-next.102
svelte@4.2.14
svelte@5.0.0-next.101
svelte@5.0.0-next.100
svelte@5.0.0-next.99
svelte@5.0.0-next.98
svelte@5.0.0-next.97
svelte@4.2.13
svelte@5.0.0-next.96
svelte@5.0.0-next.95
svelte@5.0.0-next.94
svelte@5.0.0-next.93
svelte@5.0.0-next.92
svelte@5.0.0-next.91
svelte@5.0.0-next.90
svelte@5.0.0-next.89
svelte@5.0.0-next.88
svelte@5.0.0-next.87
svelte@5.0.0-next.86
svelte@5.0.0-next.85
svelte@5.0.0-next.84
svelte@5.0.0-next.83
svelte@5.0.0-next.82
svelte@5.0.0-next.81
svelte@5.0.0-next.80
svelte@5.0.0-next.79
svelte@5.0.0-next.78
svelte@5.0.0-next.77
svelte@5.0.0-next.76
svelte@5.0.0-next.75
svelte@5.0.0-next.74
svelte@5.0.0-next.73
svelte@5.0.0-next.72
svelte@5.0.0-next.71
svelte@5.0.0-next.70
svelte@5.0.0-next.69
svelte@5.0.0-next.68
svelte@5.0.0-next.67
svelte@5.0.0-next.66
svelte@4.2.12
svelte@5.0.0-next.65
svelte@5.0.0-next.64
svelte@5.0.0-next.63
svelte@5.0.0-next.62
svelte@5.0.0-next.61
svelte@5.0.0-next.60
svelte@5.0.0-next.59
svelte@5.0.0-next.58
svelte@5.0.0-next.57
svelte@5.0.0-next.56
svelte@5.0.0-next.55
svelte@4.2.11
svelte@5.0.0-next.54
svelte@5.0.0-next.53
svelte@5.0.0-next.52
svelte@5.0.0-next.51
svelte@5.0.0-next.50
svelte@5.0.0-next.49
svelte@5.0.0-next.48
svelte@5.0.0-next.47
svelte@4.2.10
svelte@5.0.0-next.46
svelte@5.0.0-next.45
svelte@5.0.0-next.44
svelte@5.0.0-next.43
svelte@5.0.0-next.42
svelte@5.0.0-next.41
svelte@5.0.0-next.40
svelte@5.0.0-next.39
svelte@5.0.0-next.38
svelte@5.0.0-next.37
svelte@4.2.9
svelte@5.0.0-next.36
svelte@5.0.0-next.35
svelte@5.0.0-next.34
svelte@5.0.0-next.33
svelte@5.0.0-next.32
svelte@5.0.0-next.31
svelte@5.0.0-next.30
svelte@5.0.0-next.29
svelte@5.0.0-next.28
svelte@5.0.0-next.27
svelte@5.0.0-next.26
svelte@5.0.0-next.25
svelte@5.0.0-next.24
svelte@5.0.0-next.23
svelte@5.0.0-next.22
svelte@5.0.0-next.21
svelte@5.0.0-next.20
svelte@5.0.0-next.19
svelte@5.0.0-next.18
svelte@5.0.0-next.17
svelte@5.0.0-next.16
svelte@4.2.8
svelte@5.0.0-next.15
svelte@5.0.0-next.14
svelte@5.0.0-next.13
svelte@5.0.0-next.12
svelte@5.0.0-next.11
svelte@5.0.0-next.10
svelte@5.0.0-next.9
svelte@4.2.7
svelte@4.2.6
svelte@5.0.0-next.8
svelte@5.0.0-next.7
svelte@5.0.0-next.6
svelte@5.0.0-next.5
svelte@4.2.5
svelte@4.2.4
svelte@5.0.0-next.4
svelte@5.0.0-next.3
svelte@5.0.0-next.2
svelte@5.0.0-next.1
svelte@4.2.3
svelte@4.2.2
svelte@4.2.1
svelte@4.2.0
svelte@4.1.2
svelte@4.1.1
svelte@4.1.0
svelte@4.0.5
svelte@4.0.4
svelte@4.0.3
svelte@4.0.2
svelte@4.0.1
svelte@4.0.0
svelte@4.0.0-next.3
v3.59.2
svelte@4.0.0-next.1
svelte@4.0.0-next.0
v3.59.1
v3.59.0
v3.58.0
v3.57.0
v3.56.0
v3.55.1
v3.55.0
v3.54.0
v3.53.1
v3.53.0
v3.52.0
v3.51.0
v3.50.1
v3.50.0
v3.49.0
v3.48.0
v3.47.0
v3.46.6
v3.46.5
v3.46.4
v3.46.3
v3.46.2
v3.46.1
v3.46.0
v3.45.0
v3.44.3
v3.44.2
v3.44.1
v3.44.0
v3.43.2
v3.43.1
v3.43.0
v3.42.6
v3.42.5
v3.42.4
v3.42.3
v3.42.2
v3.42.1
v3.42.0
v3.41.0
v3.40.3
v3.40.2
v3.40.1
v3.40.0
v3.39.0
v3.38.3
v3.38.2
v3.38.1
v3.38.0
v3.37.0
v3.36.0
v3.35.0
v3.34.0
v3.33.0
v3.32.3
v3.32.2
v3.32.1
v3.32.0
v3.31.2
v3.31.1
v3.31.0
v3.30.1
v3.30.0
v3.29.7
v3.29.6
v3.29.5
v3.29.4
v3.29.3
v3.29.2
v3.29.1
v3.29.0
v3.28.0
v3.27.0
v3.26.0
v3.25.1
v3.25.0
v3.24.1
v3.24.0
v3.23.2
v3.23.1
v3.23.0
v3.22.3
v3.22.2
v3.22.1
v3.22.0
v3.21.0
v3.20.1
v3.20.0
v3.19.2
v3.19.1
v3.19.0
v3.18.2
v3.18.1
v3.18.0
v3.17.3
v3.17.2
v3.17.1
v3.17.0
v3.16.7
v3.16.6
v3.16.5
v3.16.4
v3.16.3
v3.16.2
v3.16.1
v3.16.0
v3.15.0
v3.14.1
v3.14.0
v3.13.0
v3.12.1
v3.12.0
v3.11.0
v3.10.1
v3.10.0
v3.9.2
v3.9.1
v3.9.0
v3.8.1
v3.8.0
v3.7.1
v3.7.0
v3.6.11
v3.6.10
v3.6.9
v3.6.8
v3.6.7
v3.6.6
v3.6.5
v3.6.4
v3.6.3
v3.6.2
v3.6.1
v3.6.0
v3.5.4
v3.5.3
v3.5.2
v3.5.1
v3.5.0
v3.4.4
v3.4.3
v3.4.2
v3.4.1
v3.4.0
v3.3.0
v3.2.2
v3.2.1
v3.2.0
v3.1.0
v3.0.1
v3.0.0
v3.0.0-beta.24
v2.16.1
v2.16.0
v2.15.4
v2.15.3
v2.15.2
v2.15.1
v2.15.0
v2.14.3
v2.14.2
v2.14.1
v2.14.0
v2.13.5
v2.13.4
v2.13.3
v2.13.2
v2.13.1
v2.13.0
v2.12.1
v2.12.0
v2.11.0
v2.10.1
v2.10.0
v2.9.11
v2.9.10
v2.9.9
v2.9.8
v2.9.7
v2.9.6
v2.9.5
v2.9.4
v2.9.3
v2.9.2
v2.9.1
v2.9.0
v2.8.1
v2.8.0
v2.7.2
v2.7.1
v2.7.0
v2.6.6
v2.6.5
v2.6.4
v2.6.3
v2.6.2
v2.6.1
v2.6.0
v2.5.1
v2.5.0
v2.4.4
v2.4.3
v2.4.2
v2.4.1
v2.4.0
v2.3.0
v2.2.0
v2.1.1
v2.1.0
v2.0.0
v1.64.1
v1.64.0
v1.63.1
v1.63.0
v1.62.0
v1.61.0
v1.60.3
v1.60.2
v1.60.1
v1.60.0
v1.59.0
v1.58.5
v1.58.4
v1.58.3
v1.58.2
v1.58.1
v1.58.0
v1.57.4
v1.57.3
v1.57.2
v1.57.1
v1.57.0
v1.56.4
v1.56.3
v1.56.2
v1.56.1
v1.56.0
v1.55.1
v1.55.0
v1.54.2
v1.54.1
v1.54.0
v1.53.0
v1.52.0
v1.51.1
v1.51.0
v1.50.1
v1.50.0
v1.49.3
v1.49.2
v1.49.1
v1.49.0
v1.48.0
v1.47.2
v1.47.1
v1.47.0
v1.46.1
v1.46.0
v1.45.0
v1.44.2
v1.44.1
v1.44.0
v1.43.1
v1.43.0
v1.42.1
v1.42.0
v1.41.4
v1.41.3
v1.41.2
v1.41.1
v1.41.0
v1.40.2
v1.40.1
v1.40.0
v1.39.4
v1.39.3
v1.39.2
v1.39.1
v1.39.0
v1.38.0
v1.37.0
v1.36.0
v1.35.0
v1.34.0
v1.33.0
v1.32.0
v1.31.0
v1.30.0
v1.29.3
v1.29.2
v1.29.1
v1.29.0
v1.28.1
v1.28.0
v1.27.0
v1.26.2
v1.26.1
v1.26.0
v1.25.1
v1.25.0
v1.24.0
v1.23.4
v1.23.3
v1.23.2
v1.23.1
v1.23.0
v1.22.5
v1.22.4
v1.22.3
v1.22.2
v1.22.1
v1.22.0
v1.21.0
v1.20.2
v1.20.1
v1.20.0
v1.19.1
v1.19.0
v1.18.2
v1.18.1
v1.18.0
v1.17.2
v1.17.1
v1.17.0
v1.16.0
v1.15.1
v1.15.0
v1.14.1
v1.14.0
v1.13.7
v1.13.6
v1.13.5
v1.13.4
v1.13.3
v1.13.2
v1.13.1
v1.13.0
v1.12.1
v1.12.0
v1.11.4
v1.11.3
v1.11.2
v1.11.1
v1.11.0
v1.10.2
v1.10.1
v1.10.0
v1.9.1
v1.9.0
v1.8.1
v1.8.0
v1.7.1
v1.7.0
v1.6.11
v1.6.10
v1.6.9
v1.6.8
v1.6.7
v1.6.6
v1.6.5
v1.6.4
v1.6.3
v1.6.2
v1.6.1
v1.6.0
v1.5.0
v1.4.0
v1.3.1
v1.3.0
v1.2.5
v1.2.4
v1.2.3
v1.2.2
v1.2.1
v1.2.0
v1.1.3
v1.1.2
v1.1.1
v1.1.0
v1.0.7
v1.0.6
v1.0.5
v1.0.4
v1.0.3
v1.0.2
v1.0.1
v1.0.0
v0.3.0
v0.2.2
v0.2.1
v0.2.0
v0.1.1
v0.1.0
v0.0.2
${ noResults }
11152 Commits (tweak-parser)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
726b764b2b |
WIP
|
20 hours ago |
|
|
92ebcaec99 |
WIP
|
21 hours ago |
|
|
0d2a8ecbc2 |
unused
|
1 day ago |
|
|
b3fb4365b6 |
WIP
|
1 day ago |
|
|
d2e89640ec
|
Update packages/svelte/src/compiler/phases/1-parse/utils/bracket.js
Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com> |
1 day ago |
|
|
cbd04917b5 |
changeset
|
1 day ago |
|
|
5c56346ebc |
tweak
|
1 day ago |
|
|
aeda3aec8f |
tweak
|
1 day ago |
|
|
34d3d7735c |
Merge branch 'main' into tweak-parser
|
2 days ago |
|
|
7be1a0247f
|
fix: ensure proper HMR updates for dynamic components (#18079)
The BranchManager in `branches.js` does create a temporary anchor when creating a new branch offscreen, and deletes it once the branch is committed. Normally this is fine, but the combination of HMR and dynamic components leads to a bug: Since `svelte-component.js` passes the temporary anchor along to the component it generates, which is the HMR wrapper, this wrapper will have an obsolete, disconnected anchor on updates, leading to the content disappearing. The fix is to add a dev-only symbol which we set on the original (then obsolete) anchor to tell about the updated anchor that should be used for HMR updates. Fixes https://github.com/sveltejs/kit/issues/14699 Fixes #17211 |
2 days ago |
|
|
a4ce776070
|
fix: defer error boundary rendering in forks (#18076)
RIght now, when an async error occurs inside a fork, the error UI will show immediately. This change defers the removal of the current content etc until the fork is committed. The BranchManager logic cannot be reused here since this is not about pending work, and we cannot wait for other pending work to complete if the fork commits. Instead, batches now have a "on fork commit" callback set which the boundary pushes to. The boundary's effects are skipped in the fork until it's committing, at which point we "resume" the error logic (calling onerror, transforming it, etc) Fixes #18060 |
2 days ago |
|
|
7796bac806
|
chore: dedupe dependencies (#18084)
|
2 days ago |
|
|
c712809ebd
|
chore(deps): bump vite from 5.4.20 to 7.3.2 (#18081)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.20 to 7.3.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite/releases">vite's releases</a>.</em></p> <blockquote> <h2>v7.3.2</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.3.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.3.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.3.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.3.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.7</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.6</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.6/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.5</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.5/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <p><em>Note: 7.2.5 failed to publish so it is skipped on npm</em></p> <h2>v7.2.4</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.4/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.3</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.3/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.2</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.2/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>plugin-legacy@7.2.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/plugin-legacy@7.2.1/packages/plugin-legacy/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>plugin-legacy@7.2.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/plugin-legacy@7.2.0/packages/plugin-legacy/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.0-beta.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.0-beta.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.0-beta.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.0-beta.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.1.12</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.1.12/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md">vite's changelog</a>.</em></p> <blockquote> <h2><!-- raw HTML omitted --><a href="https://github.com/vitejs/vite/compare/v7.3.1...v7.3.2">7.3.2</a> (2026-04-06)<!-- raw HTML omitted --></h2> <h3>Bug Fixes</h3> <ul> <li>avoid path traversal with optimize deps sourcemap handler (<a href="https://redirect.github.com/vitejs/vite/issues/22161">#22161</a>) (<a href=" |
2 days ago |
|
|
70b836bc19 |
move
|
2 days ago |
|
|
e81c007adf |
tweak
|
2 days ago |
|
|
c07a4ac414 |
tidy up
|
2 days ago |
|
|
bebdc00ff7 |
unused
|
2 days ago |
|
|
9d22d80151 |
DRY out
|
2 days ago |
|
|
036fa89d1e |
simplify
|
2 days ago |
|
|
37e79aec96 |
tidy up
|
2 days ago |
|
|
2459947858 |
fix/tidy up
|
2 days ago |
|
|
204a42d67a |
add previously-failing test
|
2 days ago |
|
|
a8d79ffbd8 |
tidy up
|
2 days ago |
|
|
ebb1954419 |
WIP
|
2 days ago |
|
|
7fa3488634 |
tweak
|
2 days ago |
|
|
4f712fe2d5 |
tweak
|
2 days ago |
|
|
7d9df9afc3 |
WIP
|
2 days ago |
|
|
582c57ceb8
|
chore(deps-dev): bump vite from 7.1.11 to 7.3.2 (#18074)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 7.1.11 to 7.3.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite/releases">vite's releases</a>.</em></p> <blockquote> <h2>v7.3.2</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.3.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.3.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.3.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.3.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.7</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.6</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.6/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.5</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.5/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <p><em>Note: 7.2.5 failed to publish so it is skipped on npm</em></p> <h2>v7.2.4</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.4/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.3</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.3/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.2</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.2/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>plugin-legacy@7.2.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/plugin-legacy@7.2.1/packages/plugin-legacy/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>plugin-legacy@7.2.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/plugin-legacy@7.2.0/packages/plugin-legacy/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.0-beta.1</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.0-beta.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.2.0-beta.0</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.2.0-beta.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> <h2>v7.1.12</h2> <p>Please refer to <a href="https://github.com/vitejs/vite/blob/v7.1.12/packages/vite/CHANGELOG.md">CHANGELOG.md</a> for details.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md">vite's changelog</a>.</em></p> <blockquote> <h2><!-- raw HTML omitted --><a href="https://github.com/vitejs/vite/compare/v7.3.1...v7.3.2">7.3.2</a> (2026-04-06)<!-- raw HTML omitted --></h2> <h3>Bug Fixes</h3> <ul> <li>avoid path traversal with optimize deps sourcemap handler (<a href="https://redirect.github.com/vitejs/vite/issues/22161">#22161</a>) (<a href=" |
2 days ago |
|
|
e1240c610d |
WIP
|
2 days ago |
|
|
ceacc7fa46 |
WIP
|
2 days ago |
|
|
2e29c87cc9
|
Version Packages (#18036)
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## svelte@5.55.2 ### Patch Changes - fix: invalidate `@const` tags based on visible references in legacy mode ([#18041](https://github.com/sveltejs/svelte/pull/18041)) - fix: handle parens in template expressions more robustly ([#18075](https://github.com/sveltejs/svelte/pull/18075)) - fix: disallow `--` in `idPrefix` ([#18038](https://github.com/sveltejs/svelte/pull/18038)) - fix: correct types for `ontoggle` on `<details>` elements ([#18063](https://github.com/sveltejs/svelte/pull/18063)) - fix: don't override `$destroy/set/on` instance methods in dev mode ([#18034](https://github.com/sveltejs/svelte/pull/18034)) - fix: unskip branches of earlier batches after commit ([#18048](https://github.com/sveltejs/svelte/pull/18048)) - fix: never set derived.v inside fork ([#18037](https://github.com/sveltejs/svelte/pull/18037)) - fix: skip rebase logic in non-async mode ([#18040](https://github.com/sveltejs/svelte/pull/18040)) - fix: don't reset status of uninitialized deriveds ([#18054](https://github.com/sveltejs/svelte/pull/18054)) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
3 days ago |
|
|
6b653b8d17
|
chore: simplify parser (#18077)
small tidy-up spurred by #17954 — rather than try-catching every `parse_expression_at` call and passing the error to `parser.acorn_error`, we can handle the error locally and get rid of that method ### Before submitting the PR, please make sure you do the following - [ ] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs - [x] Prefix your PR title with `feat:`, `fix:`, `chore:`, or `docs:`. - [x] This message body should clearly illustrate what problems it solves. - [ ] Ideally, include a test that fails without this PR but passes with it. - [ ] If this PR changes code within `packages/svelte/src`, add a changeset (`npx changeset`). ### Tests and linting - [x] Run the tests with `pnpm test` and lint the project with `pnpm lint` --------- Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com> |
3 days ago |
|
|
8966601dcd
|
fix: handle parens in template expressions more robustly (#18075)
While looking into #17954 I realised that a) our code for handling parentheses in expressions is unnecessarily convoluted and b) it doesn't handle the case where you have an opening parent outside the first comment — this fails to parse: ```svelte {(/**/ 42)} ``` This fixes it and simplifies the code a good bit. ### Before submitting the PR, please make sure you do the following - [x] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs - [x] Prefix your PR title with `feat:`, `fix:`, `chore:`, or `docs:`. - [x] This message body should clearly illustrate what problems it solves. - [x] Ideally, include a test that fails without this PR but passes with it. - [x] If this PR changes code within `packages/svelte/src`, add a changeset (`npx changeset`). ### Tests and linting - [x] Run the tests with `pnpm test` and lint the project with `pnpm lint` |
3 days ago |
|
|
0395ef0df7
|
fix: unskip branches of earlier batches after commit (#18048)
Fixes #17571 where the situation is the following: A derived creates a new query. That query initializes loading with true. This means the if block is marked for destruction (therefore effects inside branch are skipped), but it's not doing that yet because the query promise is pending. Then query resolves and loading is set back to false right before resolving, but it's not the same tick so `loading=false` is a separate thing. Because that later batch doesn't see any overlap with an earlier batch (the earlier batch did set loading to true but not via set but indirectly via recreating the query) it doesn't wait on it and flushes right away. Now the if block is marked as visible again but the earlier batch doesn't know that if noone unskips its branch. If we don't do that the render effect that is now dirty as part of that batch will not run. |
4 days ago |
|
|
cd5bda00a8
|
chore: fix changeset (#18073)
prevents the changelog from getting borked up |
4 days ago |
|
|
d86cb5cc32
|
fix: skip rebase logic in non-async mode (#18040)
Fixes part of #17940 (the hydration->error thing still needs a repro). Essentially in sync mode render effects are executed during traversing the effect tree, and when flushSync is called during that it can cause the timing of things getting out of sync such that you end up wanting to rebase another branch, which is never needed in sync mode. So we just skip that logic in sync mode. Another way would be to adjust flushSync such that it does appends itself to the end of the current flushing cycle if it notices processing is already ongoing. This will not work when you pass a callback function to `flushSync` though - another indicator that we should probably remove that callback argument. --------- Co-authored-by: Rich Harris <rich.harris@vercel.com> Co-authored-by: Rich Harris <hello@rich-harris.dev> |
4 days ago |
|
|
adba758067
|
fix: don't reset status of uninitialized deriveds (#18054)
If a new branch is created (e.g. if block becomes truthy) inside a fork and a derived is read inside the new branch for the first time, it will get reactions but its true value will stay uninitialized due to the fork. If the fork then commits, it will NOT change its value because it will not reexecute: there is no effect running after commit telling it to do that, because it was only read inside new effects which already ran while still inside the fork. Now, when that branch is removed (e.g. if block becomes falsy), the derived loses its reactions again and becomes disconnected, at which point the status is reset. So we end up with a maybe_dirty or clean derived and an uninitialized value, causing breakage if it's called again afterwards. The fix is to not reset the status in this case. Fixes https://github.com/sveltejs/kit/issues/15126 Fixes https://github.com/sveltejs/kit/issues/15318 Fixes https://github.com/sveltejs/kit/issues/15061 |
4 days ago |
|
|
14adb8caa9
|
fix: correct types for `ontoggle` on <details> elements (#18063)
`<details>` elements fire `ontoggle` as ToggleEvents ([source](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/toggle_event)), but they're currently just typed as Event. ### Before submitting the PR, please make sure you do the following - [ ] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs - [x] Prefix your PR title with `feat:`, `fix:`, `chore:`, or `docs:`. - [ ] This message body should clearly illustrate what problems it solves. - [ ] Ideally, include a test that fails without this PR but passes with it. - [x] If this PR changes code within `packages/svelte/src`, add a changeset (`npx changeset`). ### Tests and linting - [x] Run the tests with `pnpm test` and lint the project with `pnpm lint` |
4 days ago |
|
|
7a2a17557c
|
docs: add CSS custom properties section to style directive (#18065)
Adds documentation for using CSS custom properties with the `style:` directive. I think this was lost at some point during the great transition. It's only mentioned in the [best practices](https://svelte.dev/docs/svelte/best-practices#Using-JavaScript-variables-in-CSS) section, so I thought it would make sense to include it. |
4 days ago |
|
|
f8ef6de325
|
chore: squelch hydration warnings in tests (#18046)
Gets rid of some annoying console spam. I don't totally understand why `warnings` isn't populated by the time the assertions happen (it seems to happen just afterwards, except if I sleep for a few milliseconds and then do the assertion the warnings get swallowed altogether?) but for right now I don't much care |
6 days ago |
|
|
8ee2169609
|
chore: improve benchmarks (#18061)
This makes the benchmarks slightly more honest — it adds the async flag, and a benchmark that tests the (common) scenario where most effects are clean. Relevant to #18035, will self-merge so we can do a fresh comparison |
7 days ago |
|
|
206974a5cd
|
chore: generate markdown tables of CPU profiles (#18059)
extracted from #18035 — this should have been part of #18047 but I missed it off, oops. Will self-merge so it doesn't get in the way of #18035, and because the `performance-investigation` skill is predicated on this code existing --------- Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> |
7 days ago |
|
|
a9530e5330
|
chore: add labels to more internal deriveds (#18050)
tiny QoL thing |
1 week ago |
|
|
704e3bb5f0
|
chore: agent hints for perf investigations (#18047)
This adds some hints in an `AGENTS.md` for how to conduct performance investigations, along with a utility for comparing profiles from different branches to identify hotspots. We will likely want to put other stuff in `AGENTS.md` in future but I figured we could start with something immediately useful. It also tweaks the comparison script — rather than nuking results from existing branches, it keeps them around so that we don't need to re-run benchmarks (which takes a long time) for branches that haven't changed. --------- Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com> |
1 week ago |
|
|
c93e251654
|
fix: never set derived.v inside fork (#18037)
This started out as me implementing https://github.com/sveltejs/svelte/pull/17998/changes#r3018047965, but then I realised that I'd also fixed the bug that #17998 addresses. So I guess it's an alternative to that PR --------- Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com> |
1 week ago |
|
|
345b8ed69f
|
chore: keep previous benchmark runs around (#18049)
extracted from #18047 – will self-merge this bit |
1 week ago |
|
|
e402b2d0d6
|
chore: write `pnpm bench:compare` report to disk (#18045)
will give this a quick self-merge to unblock |
1 week ago |
|
|
99b1467ba4
|
chore: generate CPU profiles when running benchmarks (#18043)
This causes `pnpm bench` and `pnpm bench:compare` to generate `.cpuprofile` files for each benchmark, which should in theory make it easier to understand how different branches affect performance (and find opportunities for optimisation). These files can be opened directly in VS Code and other editors, or in [profiler.firefox.com](https://profiler.firefox.com), [speedscope.app](https://www.speedscope.app), Chrome's performance devtools and so on. |
1 week ago |
|
|
edcbb0e640
|
fix: invalidate `@const` tags based on visible references in legacy mode (#18041)
closes #17992 |
1 week ago |
|
|
ff3495dc05
|
fix: disallow `--` in `idPrefix` (#18038)
supersedes #17993 |
1 week ago |