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
22 changes: 22 additions & 0 deletions .changeset/pre.json
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,8 @@
"brave-heaps-refuse",
"bridge-keeps-shared-references",
"bright-waves-dance",
"broadcast-capture-rule",
"broadcast-live",
"brown-paws-speak",
"bump-dom-expressions-0-50-next-22",
"bump-dom-expressions-next-10",
Expand All @@ -131,6 +133,7 @@
"claim-after-initial-attributes",
"clarify-invoke-wrapper-contract",
"clean-bikes-teach",
"cleanup-throw-continues",
"cleanup-unwind-order",
"cleanup-use-once-helpers",
"cleanup-write-during-landing",
Expand Down Expand Up @@ -169,6 +172,7 @@
"container-tier-projection-traces",
"container-trace-claim-reads-snapshot",
"context-default-less-throws",
"context-undefined-message-4181",
"continue-tsrx-semantic-ir",
"core-hot-path-shape-alignment",
"create-deferred",
Expand Down Expand Up @@ -221,6 +225,7 @@
"diagnostics-source-locations-web",
"direct-control-signal-reporting",
"disable-authored-tsrx-lazy-destructuring",
"docs-from-deferred-settled",
"docs-relocation-comment-paths",
"document-action-await-contract",
"document-action-mutation-navigation-framing",
Expand Down Expand Up @@ -253,8 +258,10 @@
"effect-relay-tear",
"effect-run-trims",
"effect-writes-own-source",
"effects-equal-compute-docs",
"element-foreign-owner-fallback",
"eliminate-optimistic-revert-targets",
"empty-fallback-values",
"encode-failure-error-trailer",
"encrypt-flash-cookie",
"enforce-provide-event-once-on-direct-calls",
Expand Down Expand Up @@ -614,6 +621,7 @@
"fluffy-bananas-smoke",
"fold-runtime-wrappers",
"for-hydration-id-parity",
"form-inputs-docs-4185",
"format-ssr-hydration-followups",
"fragment-lazy-assets-resume",
"fragment-ledger-one-reveal-owner",
Expand Down Expand Up @@ -698,6 +706,7 @@
"guard-failures-iterative-walk",
"guard-getter-and-map-key-channels",
"h-rematerialize-without-mutating-props",
"halt-owner-path-4178",
"halt-reactivity-on-uncaught-error",
"handle-async-setter-errors",
"head-shell-hold-probe-seam",
Expand Down Expand Up @@ -753,6 +762,7 @@
"keep-ambient-batch-on-stash",
"keep-cast-component-refs",
"keep-negative-zero-off-the-json-fast-path",
"keyed-guess-folds-correction",
"l2-fuzz-existing-rules",
"label-version-skew-404",
"landing-rejudges-parked-transactions",
Expand Down Expand Up @@ -801,6 +811,7 @@
"live-hole-slots",
"live-hole-sweep-scopes",
"live-holes-server-support",
"live-implies-get",
"live-reference-sync-call-type",
"live-response-lifetime-per-scope-takeover",
"live-retryable-4xx-and-retry-after",
Expand Down Expand Up @@ -941,6 +952,7 @@
"projection-leaf-release",
"projection-lists-drivable",
"projection-owner-graph-growth",
"projection-reject-4189",
"projection-root-entity-swap",
"projection-root-write-overlay",
"projection-sync-throw-reaches-readers",
Expand All @@ -951,7 +963,9 @@
"purple-mayflies-give",
"question-scoped-pending-affects",
"quiet-functions-rest",
"quiet-lazy-cleanups",
"rc-api-freeze-pass",
"reaction-pending-arm",
"reaction-rearm-replaces",
"read-every-body-the-transport-tees",
"rearm-boundary-scope-u9",
Expand Down Expand Up @@ -1011,6 +1025,7 @@
"remove-server-function-instance-header",
"remove-ssr-run-in-scope",
"remove-store-readonly",
"removed-namespaces-compile-error-4187",
"rename-createLoadingBoundary",
"rename-pending-to-latest",
"rename-purewrite-to-ownedwrite",
Expand Down Expand Up @@ -1071,6 +1086,7 @@
"server-function-path-addressing",
"server-function-path-names",
"server-function-types-not-any",
"server-function-uploads",
"server-function-url-live-address",
"server-function-url-takes-the-reference",
"server-functions-client-fetch",
Expand Down Expand Up @@ -1136,6 +1152,7 @@
"size-stores-su-utils",
"skip-sync-noop-status-work",
"slot-jsx-convention-docs",
"slot-records-join-sweep",
"slot-signal-creation-diet",
"small-papayas-work",
"snapshot-boundary-assets-serialization",
Expand Down Expand Up @@ -1224,7 +1241,9 @@
"store-treeshakeable-optimism",
"store-untracked-born-held",
"store-write-floor-narrow",
"store-write-outside-setter-4179",
"stream-abort-cleanup-throw",
"stream-ambient-error-hook-4193",
"stream-demand-gate",
"stream-error-drops-settled-children",
"strict-untrack-warning",
Expand Down Expand Up @@ -1257,6 +1276,7 @@
"tsrx-syntax-frontend",
"two-weeks-smell",
"typed-preload-links",
"uncommitted-input-overwritten",
"universal-renderer-effect-names",
"universal-spread-sources",
"unstable-list-identity",
Expand Down Expand Up @@ -1286,9 +1306,11 @@
"use-head-json-script-escape",
"validate-malformed-html-error",
"validate-prepare-request-return",
"valueless-prop-attribute-true",
"verdict-memo-under-held-memo-u10",
"verdict-mount-first-pass-mainline",
"verdict-mount-nested-render-effect",
"verdict-mount-unread-pending",
"verdict-pull-outside-window",
"verdict-reader-first-observer-holds-the-flight",
"verdict-reader-silent-landing",
Expand Down
18 changes: 18 additions & 0 deletions examples/board/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,23 @@
# board-example

## 0.0.1-rc.2

### Patch Changes

- Updated dependencies [a40b6cd]
- Updated dependencies [db8241c]
- Updated dependencies [690228a]
- Updated dependencies [a2a5b6f]
- Updated dependencies [0771dc8]
- Updated dependencies [d682022]
- Updated dependencies [9f64ca9]
- Updated dependencies [0222d68]
- Updated dependencies [ee4963a]
- Updated dependencies [5c0d190]
- Updated dependencies [6cca8b5]
- @solidjs/web@2.0.0-rc.17
- solid-js@2.0.0-rc.17

## 0.0.1-rc.1

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion examples/board/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "board-example",
"description": "A shared board over one live data source: lists of cards that several tabs drag at once, read into an optimistic store, with every write acknowledged on the stream",
"version": "0.0.1-rc.1",
"version": "0.0.1-rc.2",
"private": true,
"author": "Ryan Carniato",
"license": "MIT",
Expand Down
18 changes: 18 additions & 0 deletions examples/server-dbmon/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,23 @@
# server-dbmon-example

## 0.0.1-rc.1

### Patch Changes

- Updated dependencies [a40b6cd]
- Updated dependencies [db8241c]
- Updated dependencies [690228a]
- Updated dependencies [a2a5b6f]
- Updated dependencies [0771dc8]
- Updated dependencies [d682022]
- Updated dependencies [9f64ca9]
- Updated dependencies [0222d68]
- Updated dependencies [ee4963a]
- Updated dependencies [5c0d190]
- Updated dependencies [6cca8b5]
- @solidjs/web@2.0.0-rc.17
- solid-js@2.0.0-rc.17

## 0.0.1-rc.0

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion examples/server-dbmon/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "server-dbmon-example",
"description": "DBMon as a live server component: a monitoring dashboard whose data lives on the server, rendered there and streamed to every open tab as it changes",
"version": "0.0.1-rc.0",
"version": "0.0.1-rc.1",
"private": true,
"author": "Ryan Carniato",
"license": "MIT",
Expand Down
18 changes: 18 additions & 0 deletions examples/todos-server/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,23 @@
# todos-server-example

## 0.0.1-rc.5

### Patch Changes

- Updated dependencies [a40b6cd]
- Updated dependencies [db8241c]
- Updated dependencies [690228a]
- Updated dependencies [a2a5b6f]
- Updated dependencies [0771dc8]
- Updated dependencies [d682022]
- Updated dependencies [9f64ca9]
- Updated dependencies [0222d68]
- Updated dependencies [ee4963a]
- Updated dependencies [5c0d190]
- Updated dependencies [6cca8b5]
- @solidjs/web@2.0.0-rc.17
- solid-js@2.0.0-rc.17

## 0.0.1-rc.4

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion examples/todos-server/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "todos-server-example",
"description": "TodoMVC as a Solid Server Component — the list is server markup whose every control is a form that works without JavaScript; with it, a submission's aria-busy mark shows the intent through CSS and typed errors come back through useSubmissions",
"version": "0.0.1-rc.4",
"version": "0.0.1-rc.5",
"private": true,
"author": "Ryan Carniato",
"license": "MIT",
Expand Down
13 changes: 13 additions & 0 deletions packages/babel-plugin/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# @solidjs/babel-plugin

## 2.0.0-rc.17

### Patch Changes

- 3e72783: The removed Solid 1.x attribute forms are now compile errors on native elements in the `dom` and `ssr` generates (#4187). `on:`, `oncapture:`, `attr:`, `bool:`, `use:` and `classList` used to compile silently into literal attributes (`<div use:tip="() => {}">`, `classlist="[object Object]"`). Both compilers now reject them with the same message, which names the 2.0 replacement: a camelCase handler or a `ref` callback for `on:`, a plain attribute for `attr:`, a boolean value for `bool:`, a `ref` directive factory for `use:`, and an object or array `class` for `classList`. Components, the universal generate, `prop:` and the XML namespaces (`xlink:`, `xml:`, `xmlns:`) are unaffected. The check runs only at compile time and adds no runtime code.
- 6cca8b5: Dev builds now warn with `UNCOMMITTED_INPUT_OVERWRITTEN` (#4186) when a stateful DOM property binding (`value`/`checked` on an input, `value` on a textarea, `value`/`selected` on an option, `muted` on media) is about to re-write the value it wrote last time over an edit the user never committed to the bound signal — e.g. `value={props.name} onChange={commit}` with no draft signal, when another dynamic attribute in the same template changes. Runtime behavior is unchanged: the write still happens, once per element and property the warning names the fix (write the signal from `onInput`, use `defaultValue`/`defaultChecked` for an uncontrolled element, or write a rejected edit back with `e.currentTarget.value = next`).

Production output is unchanged byte for byte. In dev DOM output both compilers write stateful properties through a new `setStatefulProperty(el, name, value)` helper instead of the inline `el.name = value`; hydratable output keeps `setProperty`, and `spread`/`assign` check in the runtime. The check lives only in `@solidjs/web`'s dev build; the production entry carries a plain `node[name] = value` stub that no production-compiled module imports, so it tree-shakes away.

The "Form inputs" section of the DOM RFC, the cheatsheet and the solid-2.0 skill now say that a change to any other dynamic attribute in the same template re-runs a stateful binding, link the new code, and drop `equals: false` as a way to reject input (it is what the warning reports); write the accepted value back with `e.currentTarget.value = next` instead.

- 2ba1c4a: A valueless `prop:` attribute (`<el prop:active />`) now compiles as `prop:active={true}`, matching bare plain attributes, instead of being dropped silently (#4180).

## 2.0.0-rc.16

### 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.16",
"version": "2.0.0-rc.17",
"author": "Ryan Carniato",
"license": "MIT",
"repository": {
Expand Down
14 changes: 14 additions & 0 deletions packages/compiler/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,19 @@
# @solidjs/compiler

## 2.0.0-rc.17

### Patch Changes

- a40b6cd: The directives pass rejects a `broadcast()` render that reads the server function's outer body. The render is shared by every caller with the same arguments, but the body runs per caller, so the first caller's value would show for everyone. The returned component, and any local function it renders, may read the function's parameters, its own locals and module scope.
- 3e72783: The removed Solid 1.x attribute forms are now compile errors on native elements in the `dom` and `ssr` generates (#4187). `on:`, `oncapture:`, `attr:`, `bool:`, `use:` and `classList` used to compile silently into literal attributes (`<div use:tip="() => {}">`, `classlist="[object Object]"`). Both compilers now reject them with the same message, which names the 2.0 replacement: a camelCase handler or a `ref` callback for `on:`, a plain attribute for `attr:`, a boolean value for `bool:`, a `ref` directive factory for `use:`, and an object or array `class` for `classList`. Components, the universal generate, `prop:` and the XML namespaces (`xlink:`, `xml:`, `xmlns:`) are unaffected. The check runs only at compile time and adds no runtime code.
- 6cca8b5: Dev builds now warn with `UNCOMMITTED_INPUT_OVERWRITTEN` (#4186) when a stateful DOM property binding (`value`/`checked` on an input, `value` on a textarea, `value`/`selected` on an option, `muted` on media) is about to re-write the value it wrote last time over an edit the user never committed to the bound signal — e.g. `value={props.name} onChange={commit}` with no draft signal, when another dynamic attribute in the same template changes. Runtime behavior is unchanged: the write still happens, once per element and property the warning names the fix (write the signal from `onInput`, use `defaultValue`/`defaultChecked` for an uncontrolled element, or write a rejected edit back with `e.currentTarget.value = next`).

Production output is unchanged byte for byte. In dev DOM output both compilers write stateful properties through a new `setStatefulProperty(el, name, value)` helper instead of the inline `el.name = value`; hydratable output keeps `setProperty`, and `spread`/`assign` check in the runtime. The check lives only in `@solidjs/web`'s dev build; the production entry carries a plain `node[name] = value` stub that no production-compiled module imports, so it tree-shakes away.

The "Form inputs" section of the DOM RFC, the cheatsheet and the solid-2.0 skill now say that a change to any other dynamic attribute in the same template re-runs a stateful binding, link the new code, and drop `equals: false` as a way to reject input (it is what the warning reports); write the accepted value back with `e.currentTarget.value = next` instead.

- 2ba1c4a: A valueless `prop:` attribute (`<el prop:active />`) now compiles as `prop:active={true}`, matching bare plain attributes, instead of being dropped silently (#4180).

## 2.0.0-rc.16

### Patch 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.16",
"version": "2.0.0-rc.17",
"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.16",
"version": "2.0.0-rc.17",
"cpu": [
"x64"
],
Expand Down
2 changes: 1 addition & 1 deletion packages/compiler/npm/linux-arm64-gnu/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@solidjs/compiler-linux-arm64-gnu",
"version": "2.0.0-rc.16",
"version": "2.0.0-rc.17",
"cpu": [
"arm64"
],
Expand Down
2 changes: 1 addition & 1 deletion packages/compiler/npm/linux-x64-gnu/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@solidjs/compiler-linux-x64-gnu",
"version": "2.0.0-rc.16",
"version": "2.0.0-rc.17",
"cpu": [
"x64"
],
Expand Down
2 changes: 1 addition & 1 deletion packages/compiler/npm/wasm32-wasi/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@solidjs/compiler-wasm32-wasi",
"version": "2.0.0-rc.16",
"version": "2.0.0-rc.17",
"main": "compiler.wasi.cjs",
"files": [
"compiler.wasm32-wasi.wasm",
Expand Down
2 changes: 1 addition & 1 deletion packages/compiler/npm/win32-x64-msvc/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@solidjs/compiler-win32-x64-msvc",
"version": "2.0.0-rc.16",
"version": "2.0.0-rc.17",
"cpu": [
"x64"
],
Expand Down
14 changes: 7 additions & 7 deletions packages/compiler/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@solidjs/compiler",
"description": "Solid's native Oxc JSX compiler",
"version": "2.0.0-rc.16",
"version": "2.0.0-rc.17",
"author": "Ryan Carniato",
"license": "MIT",
"repository": {
Expand Down Expand Up @@ -62,11 +62,11 @@
"emnapi": "^1.11.3"
},
"optionalDependencies": {
"@solidjs/compiler-darwin-x64": "2.0.0-rc.16",
"@solidjs/compiler-darwin-arm64": "2.0.0-rc.16",
"@solidjs/compiler-linux-x64-gnu": "2.0.0-rc.16",
"@solidjs/compiler-linux-arm64-gnu": "2.0.0-rc.16",
"@solidjs/compiler-win32-x64-msvc": "2.0.0-rc.16",
"@solidjs/compiler-wasm32-wasi": "2.0.0-rc.16"
"@solidjs/compiler-darwin-x64": "2.0.0-rc.17",
"@solidjs/compiler-darwin-arm64": "2.0.0-rc.17",
"@solidjs/compiler-linux-x64-gnu": "2.0.0-rc.17",
"@solidjs/compiler-linux-arm64-gnu": "2.0.0-rc.17",
"@solidjs/compiler-win32-x64-msvc": "2.0.0-rc.17",
"@solidjs/compiler-wasm32-wasi": "2.0.0-rc.17"
}
}
Loading