Skip to content

Commit a4ca10b

Browse files
committed
v2.0.0-beta.15
1 parent 98a7385 commit a4ca10b

19 files changed

Lines changed: 226 additions & 17 deletions

File tree

.changeset/pre.json

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424
"align-insert-with-dom-expressions-a1",
2525
"align-with-dom-expressions",
2626
"allow-async-without-loading-csr",
27+
"avoid-reconcile-key-recompute",
28+
"brave-heaps-refuse",
2729
"bright-waves-dance",
2830
"brown-paws-speak",
2931
"bump-dom-expressions-next-10",
@@ -35,8 +37,10 @@
3537
"bump-dom-expressions-next-5",
3638
"bump-dom-expressions-next-8",
3739
"clean-bikes-teach",
40+
"coalesce-refresh-scheduling",
3841
"context-default-less-throws",
3942
"curly-rats-dress",
43+
"demote-boundary-primitives",
4044
"dev-error-invalid-refresh-target",
4145
"dev-tools-cleanup",
4246
"dev-warn-unhandled-async",
@@ -45,44 +49,67 @@
4549
"dynamic-factory-redesign",
4650
"export-memo-options",
4751
"expose-enableExternalSource-loading-on",
52+
"fix-adjustheight-zombie-queue-routing",
4853
"fix-async-boundary-diagnostic",
4954
"fix-async-iterable-hydration-flush",
5055
"fix-async-iterator-cancellation-wrappers",
5156
"fix-async-memo-stale-deps",
5257
"fix-async-signal-ssr-loading",
58+
"fix-deep-optimistic-store-pending",
5359
"fix-derived-manual-writes",
60+
"fix-derived-optimistic-store-fresh-data",
61+
"fix-derived-signal-same-write",
62+
"fix-derived-store-action-pending",
5463
"fix-disposed-owner-leak-via-sibling-chain",
5564
"fix-dynamic-hydration-key-alignment",
5665
"fix-element-owner-markers",
5766
"fix-element-shadow-delegation",
67+
"fix-errored-loading-hydration-ids",
5868
"fix-flow-hydration-key-alignment",
69+
"fix-flush-syncdepth-leak-on-throw",
5970
"fix-hydration-and-signals-baseline",
6071
"fix-insert-sibling-rerender",
6172
"fix-keyed-show-strict-read",
6273
"fix-lazy-hydration-without-loading",
6374
"fix-loading-boundary-stale-flatten",
6475
"fix-loading-hydration-settled-ref",
76+
"fix-loading-late-fragment-hydration",
6577
"fix-loading-on-prop",
6678
"fix-loading-refresh-fallback",
6779
"fix-loading-ssr-bare-async-read",
80+
"fix-nested-array-async-reconcile",
81+
"fix-nested-optimistic-store-pending",
82+
"fix-optimistic-same-value-overlap",
6883
"fix-optimistic-store-stash-flicker",
6984
"fix-ownerless-conditional-memos",
85+
"fix-portal-mount-ref-timing",
86+
"fix-portal-ownership-and-accumulation",
87+
"fix-projection-draft-inspection-loop",
7088
"fix-projection-hydration-without-loading-boundary",
7189
"fix-projection-partial-seed-types",
90+
"fix-projection-refresh-pending",
7291
"fix-projection-refresh-stale-pending",
92+
"fix-projection-splice-overrides",
7393
"fix-projection-ssr-promise-resolution",
7494
"fix-projection-streaming-without-loading-boundary",
95+
"fix-reaction-zero-dep-dispose",
7596
"fix-refresh-only-target",
7697
"fix-refresh-optimistic-pending",
7798
"fix-refresh-type-in-store-overloads",
99+
"fix-repeat-offset-disposal",
100+
"fix-repeat-offset-reset-on-empty",
78101
"fix-repeated-error-boundary-updates",
102+
"fix-server-effect-error-swallow",
79103
"fix-show-ssr-hydration-placement",
104+
"fix-snapshot-array-length-zero",
80105
"fix-spread-hydration-mismatch",
81106
"fix-ssr-async-error-handling",
82107
"fix-ssr-bench-shape",
83108
"fix-ssr-loading-errored-hydration",
84109
"fix-ssr-memo-promise-notready",
85110
"fix-ssr-owner-id-parity",
111+
"fix-ssr-rejected-lazy-reaches-errored",
112+
"fix-ssr-server-projection-pending-store",
86113
"fix-ssrsource-client-hybrid-hydration",
87114
"fix-store-cold-write-batching",
88115
"fix-store-prototype-getters",
@@ -120,6 +147,7 @@
120147
"remove-derived-initial-values",
121148
"remove-dist-exports-and-fix-dual-types",
122149
"remove-initial-ssr-source",
150+
"remove-isrefreshing-api",
123151
"remove-on-namespace-events",
124152
"remove-ssr-run-in-scope",
125153
"rename-createLoadingBoundary",
@@ -145,6 +173,7 @@
145173
"suppress-hydration-owned-scope-warnings",
146174
"sync-config-and-flush-nested-drain",
147175
"sync-flag-control-flow-memos",
176+
"thin-badgers-move",
148177
"tighten-show-match-jsx-types",
149178
"tiny-lions-jam",
150179
"transparent-devcomponent",

packages/babel-preset-solid/CHANGELOG.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,18 @@
11
# babel-preset-solid
22

3+
## 2.0.0-beta.15
4+
5+
### Patch Changes
6+
7+
- Updated dependencies [8402421]
8+
- Updated dependencies [f083220]
9+
- Updated dependencies [98a7385]
10+
- Updated dependencies [c943c5c]
11+
- Updated dependencies [4f14a34]
12+
- Updated dependencies [bff4c21]
13+
- Updated dependencies [52255dc]
14+
- solid-js@2.0.0-beta.15
15+
316
## 2.0.0-beta.14
417

518
### Patch Changes

packages/babel-preset-solid/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "babel-preset-solid",
3-
"version": "2.0.0-beta.14",
3+
"version": "2.0.0-beta.15",
44
"description": "Babel preset that compiles Solid's JSX into fine-grained DOM operations.",
55
"author": "Ryan Carniato <ryansolid@gmail.com>",
66
"homepage": "https://github.com/solidjs/solid/blob/main/packages/babel-preset-solid#readme",
@@ -22,7 +22,7 @@
2222
},
2323
"peerDependencies": {
2424
"@babel/core": "^7.0.0",
25-
"solid-js": "^2.0.0-beta.14"
25+
"solid-js": "^2.0.0-beta.15"
2626
},
2727
"peerDependenciesMeta": {
2828
"solid-js": {

packages/solid-element/CHANGELOG.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,21 @@
11
# solid-element
22

3+
## 2.0.0-beta.15
4+
5+
### Patch Changes
6+
7+
- Updated dependencies [8402421]
8+
- Updated dependencies [f083220]
9+
- Updated dependencies [98a7385]
10+
- Updated dependencies [a5d15f6]
11+
- Updated dependencies [2c0a336]
12+
- Updated dependencies [c943c5c]
13+
- Updated dependencies [4f14a34]
14+
- Updated dependencies [bff4c21]
15+
- Updated dependencies [52255dc]
16+
- solid-js@2.0.0-beta.15
17+
- @solidjs/web@2.0.0-beta.15
18+
319
## 2.0.0-beta.14
420

521
### Patch Changes

packages/solid-element/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"description": "Webcomponents wrapper for Solid",
44
"author": "Ryan Carniato",
55
"license": "MIT",
6-
"version": "2.0.0-beta.14",
6+
"version": "2.0.0-beta.15",
77
"homepage": "https://github.com/solidjs/solid/blob/main/packages/solid-element#readme",
88
"repository": {
99
"type": "git",
@@ -30,8 +30,8 @@
3030
"component-register": "^0.8.7"
3131
},
3232
"peerDependencies": {
33-
"solid-js": "^2.0.0-beta.14",
34-
"@solidjs/web": "^2.0.0-beta.14"
33+
"solid-js": "^2.0.0-beta.15",
34+
"@solidjs/web": "^2.0.0-beta.15"
3535
},
3636
"devDependencies": {
3737
"solid-js": "workspace:*",

packages/solid-h/CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# @solidjs/h
22

3+
## 2.0.0-beta.15
4+
5+
### Patch Changes
6+
7+
- Updated dependencies [a5d15f6]
8+
- Updated dependencies [2c0a336]
9+
- @solidjs/web@2.0.0-beta.15
10+
311
## 2.0.0-beta.14
412

513
### Patch Changes

packages/solid-h/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@solidjs/h",
33
"description": "Hyperscript / h() factory for Solid — write components without compiled JSX.",
4-
"version": "2.0.0-beta.14",
4+
"version": "2.0.0-beta.15",
55
"author": "Ryan Carniato",
66
"license": "MIT",
77
"homepage": "https://solidjs.com",
@@ -76,7 +76,7 @@
7676
"test": "vitest run"
7777
},
7878
"peerDependencies": {
79-
"@solidjs/web": "^2.0.0-beta.14"
79+
"@solidjs/web": "^2.0.0-beta.15"
8080
},
8181
"devDependencies": {
8282
"@solidjs/web": "workspace:*",

packages/solid-html/CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# @solidjs/html
22

3+
## 2.0.0-beta.15
4+
5+
### Patch Changes
6+
7+
- Updated dependencies [a5d15f6]
8+
- Updated dependencies [2c0a336]
9+
- @solidjs/web@2.0.0-beta.15
10+
311
## 2.0.0-beta.14
412

513
### Patch Changes

packages/solid-html/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@solidjs/html",
33
"description": "Tagged-template-literal templating for Solid — write components with no build step.",
4-
"version": "2.0.0-beta.14",
4+
"version": "2.0.0-beta.15",
55
"author": "Ryan Carniato",
66
"license": "MIT",
77
"homepage": "https://solidjs.com",
@@ -47,7 +47,7 @@
4747
"test": "vitest run"
4848
},
4949
"peerDependencies": {
50-
"@solidjs/web": "^2.0.0-beta.14"
50+
"@solidjs/web": "^2.0.0-beta.15"
5151
},
5252
"devDependencies": {
5353
"@solidjs/web": "workspace:*",

packages/solid-signals/CHANGELOG.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,34 @@
11
# @solidjs/signals
22

3+
## 2.0.0-beta.15
4+
5+
### Patch Changes
6+
7+
- 0564da2: Avoid recomputing reconcile state identity keys.
8+
- e141459: fix scheduler livelock after disposing a subtree with a stale height-adjust heap entry
9+
- 97b4111: Coalesce same-flush refresh calls by scheduling refresh invalidations through the reactive queue.
10+
- f0bdfad: Route height-adjusted subscribers to the queue that matches their own zombie flag in `adjustHeight`, mirroring the post-recompute height-adjust path. Inserting into the currently running heap unconditionally could park a zombie node in `dirtyQueue` (or a live node in `zombieQueue`), breaking the flag/queue invariant `deleteFromHeap` relies on — the same corruption class behind the #2759 livelock, reachable through a different trigger.
11+
- 0eb7f4e: Track pending state for deep reads of optimistic stores during transitions.
12+
- 910b0ee: Clear derived optimistic store overlays when fresh projected data commits.
13+
- dfcd7bd: Resume derived signal tracking after repeated same-value manual writes.
14+
- f97643c: Report pending state for action-held writes to derived stores.
15+
- f0bdfad: `flush(fn)` now restores its sync-depth counter when the drain throws. An effect that throws inside a synchronous flush scope previously leaked the counter, which left `schedule()` permanently unable to queue a microtask and silently froze all later reactivity. Balancing it in a `finally` keeps the scheduler usable after the error propagates.
16+
- b26bc04: Avoid reconcile crashes when async optimistic stores return nested arrays that have not created store nodes.
17+
- 03369dd: Track pending state for nested deep optimistic store reads.
18+
- 99d829e: Fix overlapping same-value optimistic writes so overrides stay active until all actions settle.
19+
- e5761bd: Prevent projection draft inspection from subscribing projections to their own store.
20+
- 1847868: Fix projection pending state on first refresh after initial async resolution.
21+
- 5466a3b: Preserve pending projection object property writes when draft arrays move store proxies.
22+
- db88de1: Fix `createReaction` crashing with `Cannot read properties of null (reading '_dep')` when the invalidating rerun of the tracked callback reads zero dependencies. `dispose()` now guards its dependency-unlink loop instead of unconditionally calling `unlinkSubs` once.
23+
- d8921ac: Fix `repeat` (`<Repeat>`) disposing the wrong row owners when `from` advances from a non-zero offset. The front-clear loop indexed the local `_nodes` array with a global index, so a sliding window (e.g. rows 1-3 → 3-5) disposed rows that stayed visible and leaked rows that left. It now disposes the correct local positions.
24+
- e141b64: Reset `<Repeat>`'s window offset when its count drops to zero. Previously the empty-window path cleared the row data but left `_offset` stale, so a later nonzero render with a smaller `from` computed a negative local index and disposed `_nodes[-1]`, crashing `updateRepeat`. This is the second symptom of #2767 (the first, wrong-row disposal on a forward slide, was fixed separately).
25+
- baa47d2: Preserve snapshot array length overrides when the overridden length is 0.
26+
- 52255dc: Remove the public `isRefreshing()` API and treat `refresh()` as write-like invalidation in dev owned-scope diagnostics.
27+
28+
`refresh()` is an action that invalidates an explicit refresh target; it should not expose ambient phase state to pure computations. User-visible mutation or retry intent should be modeled with actions and optimistic state, while readiness remains observable through `Loading` and `isPending`.
29+
30+
- 23c9563: update primitive store array mappings
31+
332
## 2.0.0-beta.14
433

534
### Patch Changes

0 commit comments

Comments
 (0)