Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 63 additions & 1 deletion .changeset/pre.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@
"test-integration": "2.0.0-beta.34",
"@solidjs/babel-plugin": "2.0.0-rc.2",
"@solidjs/compiler": "2.0.0-rc.2",
"@solidjs/diagnostics": "2.0.0-rc.2"
"@solidjs/diagnostics": "2.0.0-rc.2",
"effect-example": "0.0.0"
},
"changesets": [
"absorb-expressions",
Expand All @@ -30,7 +31,9 @@
"add-diagnostics-package",
"add-per-call-invoke",
"add-refresh-subpath",
"add-selectedcontent-jsx-type",
"add-serialization-subpath",
"add-serialize-error-stacks-option",
"add-server-functions-subpath",
"adopt-claim-scope-wire-id",
"adopt-runtime-wire-protocols",
Expand All @@ -53,9 +56,11 @@
"attribution-wide-write",
"audit-driver-family-decline-multi-slot",
"avoid-reconcile-key-recompute",
"awaitable-refresh",
"bare-client-source-suspends-as-final-hole",
"behavior-claims-delegate-glue",
"behavior-claims-props",
"bound-server-function-requests",
"boundary-accessor-return-types",
"boundary-asset-scope-leak",
"brave-heaps-refuse",
Expand All @@ -78,10 +83,13 @@
"client-only-sibling-id-drift",
"coalesce-refresh-scheduling",
"cold-field-extension-split",
"commit-clears-transition-stamp",
"companion-oracle-census",
"companion-shadow-redesign",
"compiler-loader-accepts-patch-driver",
"compiler-loader-prefer-local-build",
"composed-header-bounds-transport",
"contain-flight-collector-errors",
"container-tier-projection-traces",
"context-default-less-throws",
"core-hot-path-shape-alignment",
Expand All @@ -98,6 +106,7 @@
"dev-error-untracked-async-read",
"dev-invariant-assertions",
"dev-tools-cleanup",
"dev-warn-scripted-304",
"dev-warn-unhandled-async",
"diagnostic-code-prefix",
"diagnostic-console-footers",
Expand All @@ -118,6 +127,7 @@
"effect-run-trims",
"element-foreign-owner-fallback",
"eliminate-optimistic-revert-targets",
"encode-failure-error-trailer",
"export-memo-options",
"expose-enableExternalSource-loading-on",
"fetch-option-retry-contract",
Expand Down Expand Up @@ -146,9 +156,15 @@
"fix-async-warning-through-errored",
"fix-buffered-iterable-replay-latest",
"fix-buffered-store-replay-claim",
"fix-chunk-reader-quadratic-growth",
"fix-codec-options-declaration",
"fix-composed-header-bounds",
"fix-content-length-guard-bypass",
"fix-cookie-bounds-and-validity",
"fix-create-projection-seed-inference",
"fix-dead-transition-stamp-revival",
"fix-deep-optimistic-store-pending",
"fix-derived-event-locals-sharing",
"fix-derived-manual-writes",
"fix-derived-optimistic-store-fresh-data",
"fix-derived-signal-same-write",
Expand All @@ -157,11 +173,13 @@
"fix-disposed-read-lifecycle",
"fix-dynamic-hydration-key-alignment",
"fix-dynamic-shell-gating",
"fix-effect-waste-attribution",
"fix-element-owner-markers",
"fix-element-shadow-delegation",
"fix-equals-comparator-errors",
"fix-errored-derive-memo-parity",
"fix-errored-loading-hydration-ids",
"fix-flatten-needsunwrap-or",
"fix-flow-getter-eval-owner-parity",
"fix-flow-hydration-key-alignment",
"fix-flush-syncdepth-leak-on-throw",
Expand All @@ -170,6 +188,7 @@
"fix-frames-preload-isolation",
"fix-frames-types-build",
"fix-frames-web-path-mapping",
"fix-get-grant-lifetime-and-read-folding",
"fix-halt-error-swallow",
"fix-hybrid-iterable-signal-takeover",
"fix-hydrated-nullish-values",
Expand All @@ -189,11 +208,13 @@
"fix-late-server-component-boundary-adoption",
"fix-latest-async-memo-lifecycle",
"fix-latest-ispending-consistency",
"fix-latest-pending-probe-mid-flight",
"fix-latest-plain-write-purity",
"fix-latest-repeated-plain-writes",
"fix-lazy-hydration-without-loading",
"fix-lazy-rejected-import-caching",
"fix-lazy-shared-memo-ownership",
"fix-lingering-ambient-transaction-capture",
"fix-loading-boundary-stale-flatten",
"fix-loading-hydration-settled-ref",
"fix-loading-late-fragment-hydration",
Expand All @@ -210,6 +231,7 @@
"fix-nested-boundary-foreign-status",
"fix-nested-loading-boundary-chained-memo-serialization",
"fix-nested-optimistic-store-pending",
"fix-nojs-shape-on-navigation",
"fix-omit-merge-sources-tunnel",
"fix-onsettled-unowned-cleanup",
"fix-optimistic-override-premature-revert",
Expand All @@ -219,6 +241,7 @@
"fix-optimistic-store-stash-flicker",
"fix-optimistic-undefined-override",
"fix-overlay-adoption-reset",
"fix-owned-write-guard-docs",
"fix-ownerless-conditional-memos",
"fix-pending-autodispose-release",
"fix-pending-gated-landing-replay",
Expand Down Expand Up @@ -254,12 +277,14 @@
"fix-refresh-swap-during-hydration",
"fix-refresh-type-in-store-overloads",
"fix-refresh-unmounted-registration",
"fix-refresh-waiter-typing",
"fix-repeat-offset-disposal",
"fix-repeat-offset-reset-on-empty",
"fix-repeated-error-boundary-updates",
"fix-request-event-locals-augmentation",
"fix-resolve-inside-action-deadlock",
"fix-resolve-rejection-settlement",
"fix-response-aliasing-cookie-leak",
"fix-resting-optimistic-async-commit",
"fix-reveal-frontier-errored-boundary",
"fix-scheduler-child-queue-removal",
Expand All @@ -268,6 +293,10 @@
"fix-server-effect-error-swallow",
"fix-server-effect-pending-read-loop",
"fix-server-entry-client-types",
"fix-server-fn-transport-correctness",
"fix-server-function-error-header-and-null-body-statuses",
"fix-server-function-failure-signal",
"fix-server-function-redirect-status-consistency",
"fix-server-render-effect-defer",
"fix-server-signal-overload-declarations",
"fix-server-transparent-memo-id-shift",
Expand All @@ -292,6 +321,7 @@
"fix-ssr-retry-child-reset",
"fix-ssr-retry-convergence-oom",
"fix-ssr-server-projection-pending-store",
"fix-ssr-stream-rejected-fragment-hang",
"fix-ssr-sync-memo-child-id-leak",
"fix-ssrsource-client-hybrid-hydration",
"fix-storage-types-path",
Expand All @@ -311,10 +341,14 @@
"fix-throwing-effect-cleanup",
"fix-transition-merge-optimistic-dup",
"fix-transparent-insert-alignment",
"fix-truth-author-draft-overlay-read",
"fix-universal-text-escaping",
"fix-usehead-prelude-hydration-walk",
"fix-version-skew-label-before-gate",
"flatten-promise-of-async-iterable",
"fluffy-bananas-smoke",
"fold-runtime-wrappers",
"for-hydration-id-parity",
"format-ssr-hydration-followups",
"fragment-ledger-one-reveal-owner",
"fragment-reveal-policy-registry",
Expand All @@ -331,23 +365,31 @@
"fuzzy-queens-retire",
"gate-child-companion-walk",
"gate-invariants-to-test-builds",
"get-read-contract",
"graph-size-diagnostics",
"guard-failures-iterative-walk",
"guard-getter-and-map-key-channels",
"halt-reactivity-on-uncaught-error",
"head-shell-hold-probe-seam",
"hide-internal-type-exports",
"hoist-web-protocol-components",
"html-element-claims",
"hydrating-store-engine-seam",
"hydration-primitive-wrappers",
"identity-keyed-server-function-ids",
"import-solid-signals-monorepo",
"include-web-cookie-declarations",
"inv2-active-override-assertion",
"ispending-loading-guard",
"ispending-wrapper-fresh-hold",
"iterate-bare-step-tolerance",
"iterator-supersede-eager-close",
"jfb-driver-and-write-bound",
"keep-ambient-batch-on-stash",
"label-version-skew-404",
"late-boundary-held-fragment-wait",
"latest-lazy-companion-backfill",
"latest-probe-order-independence",
"lazy-assets-post-settle-livelock",
"lazy-async-asset-resolver",
"lazy-async-inflight-autodispose",
Expand All @@ -359,13 +401,16 @@
"lean-ssr-owner-runtime",
"lemon-mails-lick",
"live-holes-server-support",
"live-reference-sync-call-type",
"live-retryable-4xx-and-retry-after",
"live-source-auto-hybrid",
"loading-errored-composition-escape",
"loading-value-commit-zero",
"loading-value-size-pass",
"loading-value-ssr-commit-zero",
"loading-value-ssr-source-matrix",
"loading-window-verdict-quiet-through-hydration",
"lone-spread-no-merge",
"maparray-nonkeyed-store-stale-row",
"maparray-swap-commit",
"mean-bats-grin",
Expand All @@ -376,9 +421,12 @@
"move-loading-wrapper-into-flow",
"move-to-beta",
"multi-root-pending-boundaries",
"multi-source-single-flight",
"nested-stream-demand-gate-teardown",
"nohydration-lazy-maparray-deps",
"notready-skip-stack-capture",
"npm-descriptions",
"optimistic-landing-fold",
"optimistic-lists-drivable",
"optimistic-mask-effective-writes-only",
"optimistic-mask-ispending",
Expand Down Expand Up @@ -431,12 +479,15 @@
"reconcile-walk-guard-hoist",
"recover-from-halt-in-dev-workflows",
"redesign-refresh-targets",
"redirect-carrier-and-shim-removal",
"redirect-target-scheme-floor",
"refactor-ssr-stream-blocking",
"refactor-widen-prop-value-printwidth",
"refine-server-boundary-settlement",
"refresh-call-expr-registration",
"refresh-lifts-stale-manual-write-mask",
"refreshable-type-alias",
"refusals-commit-event-stub",
"remove-derived-initial-values",
"remove-dist-exports-and-fix-dual-types",
"remove-initial-ssr-source",
Expand All @@ -460,21 +511,26 @@
"row-proof-admission",
"rude-pillows-tell",
"rxcore-ssr-async-value",
"sanitize-graph-failures",
"scope-function-children-holes",
"serialization-decode-entry",
"server-component-context-barrier",
"server-first-value-lock",
"server-function-call-observers",
"server-function-data-address-split",
"server-function-extension-surface",
"server-function-guard-batch",
"server-function-http-hygiene",
"server-function-path-addressing",
"server-function-types-not-any",
"server-functions-client-fetch",
"server-memo-commit-liveness",
"server-memo-scaffold-diet",
"server-mock-csp-nonce",
"server-slot-store-and-boundary-trims",
"server-store-replacement-optimistic-noop",
"setter-row-ops-tentative-lists",
"settle-superseded-flight-dependents",
"sever-reveal-group-at-boundaries",
"shallow-compiled-slot-channel",
"shallow-slot-alignment-samevaluezero",
Expand All @@ -484,6 +540,7 @@
"signals-disposed-stay-disposed",
"simplify-pending-latest-internals",
"simplify-render-wrappers",
"single-flight-keyed-envelope-only",
"single-flight-protocol-bridge",
"skip-sync-noop-status-work",
"slot-jsx-convention-docs",
Expand Down Expand Up @@ -525,6 +582,7 @@
"store-rewrite-walk-validation-hoist",
"store-structural-hot-path-pass",
"store-treeshakeable-optimism",
"stream-demand-gate",
"strict-untrack-warning",
"strictread-untrack-parameter",
"support-async-memo-callbacks-ssr",
Expand All @@ -539,6 +597,9 @@
"transport-failure-on-foreign-response",
"truncation-sweep-all-registry-refs",
"two-weeks-smell",
"typed-preload-links",
"until-flip-entanglement",
"until-live-source-ack",
"unwrap-status-error-nullish",
"update-deps-and-build-compat",
"update-dom-expressions-next-16",
Expand All @@ -554,6 +615,7 @@
"update-refs-dom-expressions",
"update-signals-0-13-8",
"update-signals-bugfix-baseline",
"validate-malformed-html-error",
"violet-stingrays-end",
"wait-asset-seam",
"warm-doors-flow",
Expand Down
21 changes: 21 additions & 0 deletions packages/babel-plugin/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,26 @@
# @solidjs/babel-plugin

## 2.0.0-rc.5

### Patch Changes

- 320f1f5: Universal text is text (#3127). The DOM and SSR generators splice static
text into an HTML template that a parser later unescapes, so they escape
static values and keep JSX entities as written. The universal generator
hands strings straight to the host — `createTextNode`, `setProp` — with no
parser downstream, so the escaping rendered literally (`{"<b>"}` showed as
`&lt;b>`) and entities never decoded (`&lt;` showed as `&lt;`), leaving no
spelling that produced a literal `<` in static text under a custom
renderer. Universal-rendered element children now pass static values
through unescaped and decode JSX entities in text and string attributes,
matching what component children and fragment text always did. The flag
rides on the element, not the config, so `generate: "dynamic"` decides per
renderer. Applied to both compilers; the attribute half closed ten pinned
cross-mode parity divergences between them. Reported with the fix mapped
out by @antoinevanwel.
- 5230666: Fix hydration ids drifting after a reactive lone spread (#3105). A lone spread now passes its accessor straight to `spread()` on the client — no `mergeProps`, no memo, no hydration id — matching the server's existing pass-through fast path. The runtime resolves a function props source inside its own tracking scopes.
- e27dc29: `validate` now fails the compile instead of warning when a template's markup would be restructured by the browser's HTML parser (#3099). Once the validator fires the emitted positional walk is guaranteed not to match the browser-built DOM (crashed or silently misplaced bindings; desynced hydration under SSR), so warn-and-emit shipped certain breakage with the diagnostic buried in server logs. Errors now point at the offending JSX (code frame in Babel, line:col in the native compiler). `validate: false` remains the opt-out.

## 2.0.0-rc.4

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/babel-plugin/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@solidjs/babel-plugin",
"description": "Babel compiler plugin for Solid templates",
"version": "2.0.0-rc.4",
"version": "2.0.0-rc.5",
"author": "Ryan Carniato",
"license": "MIT",
"repository": {
Expand Down
22 changes: 22 additions & 0 deletions packages/compiler/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,27 @@
# @solidjs/compiler

## 2.0.0-rc.5

### Patch Changes

- 320f1f5: Universal text is text (#3127). The DOM and SSR generators splice static
text into an HTML template that a parser later unescapes, so they escape
static values and keep JSX entities as written. The universal generator
hands strings straight to the host — `createTextNode`, `setProp` — with no
parser downstream, so the escaping rendered literally (`{"<b>"}` showed as
`&lt;b>`) and entities never decoded (`&lt;` showed as `&lt;`), leaving no
spelling that produced a literal `<` in static text under a custom
renderer. Universal-rendered element children now pass static values
through unescaped and decode JSX entities in text and string attributes,
matching what component children and fragment text always did. The flag
rides on the element, not the config, so `generate: "dynamic"` decides per
renderer. Applied to both compilers; the attribute half closed ten pinned
cross-mode parity divergences between them. Reported with the fix mapped
out by @antoinevanwel.
- 7c551ae: Key server-function ids on identity instead of position (#3109). Production ids were `<xxhash32(path)>-<ordinal>`, so appending a server function to a file renumbered the others and every client holding the old numbering silently dispatched to different code with a 200. Ids are now `<name>-<xxhash32(root-relative path)>`, with a trailing ordinal only when the same descriptive name recurs within one file — appends, deletes, reorders, and body edits no longer move any address, and a removed or renamed function becomes a clean 404 instead of a wrong call. Development and production now share the exact same id format.
- 5230666: Fix hydration ids drifting after a reactive lone spread (#3105). A lone spread now passes its accessor straight to `spread()` on the client — no `mergeProps`, no memo, no hydration id — matching the server's existing pass-through fast path. The runtime resolves a function props source inside its own tracking scopes.
- e27dc29: `validate` now fails the compile instead of warning when a template's markup would be restructured by the browser's HTML parser (#3099). Once the validator fires the emitted positional walk is guaranteed not to match the browser-built DOM (crashed or silently misplaced bindings; desynced hydration under SSR), so warn-and-emit shipped certain breakage with the diagnostic buried in server logs. Errors now point at the offending JSX (code frame in Babel, line:col in the native compiler). `validate: false` remains the opt-out.

## 2.0.0-rc.4

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/compiler/npm/darwin-arm64/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@solidjs/compiler-darwin-arm64",
"version": "2.0.0-rc.4",
"version": "2.0.0-rc.5",
"cpu": [
"arm64"
],
Expand Down
2 changes: 1 addition & 1 deletion packages/compiler/npm/darwin-x64/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@solidjs/compiler-darwin-x64",
"version": "2.0.0-rc.4",
"version": "2.0.0-rc.5",
"cpu": [
"x64"
],
Expand Down
Loading