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
129 changes: 129 additions & 0 deletions .changeset/pre.json

Large diffs are not rendered by default.

65 changes: 65 additions & 0 deletions examples/todos-server/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,70 @@
# todos-server-example

## 0.0.1-rc.2

### Patch Changes

- Updated dependencies [4b4c2cb]
- Updated dependencies [ecb68a1]
- Updated dependencies [d4b10b5]
- Updated dependencies [2eb6e00]
- Updated dependencies [21ff8f8]
- Updated dependencies [3c1d512]
- Updated dependencies [9a213bb]
- Updated dependencies [721eb06]
- Updated dependencies [b0c6e6a]
- Updated dependencies [365f37d]
- Updated dependencies [da84bd9]
- Updated dependencies [98d35b9]
- Updated dependencies [b57eb2e]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [9d89df7]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [9d89df7]
- Updated dependencies [7233451]
- Updated dependencies [9d89df7]
- Updated dependencies [9d89df7]
- Updated dependencies [7233451]
- Updated dependencies [3c1d512]
- Updated dependencies [1b9ceb6]
- Updated dependencies [203ab1a]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [3c7631a]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [e44b2e4]
- Updated dependencies [01e80a6]
- Updated dependencies [be82cf3]
- Updated dependencies [759a9b6]
- Updated dependencies [e345dc7]
- Updated dependencies [4f67697]
- Updated dependencies [41fdf96]
- Updated dependencies [87a3862]
- Updated dependencies [53ef0e6]
- Updated dependencies [2656284]
- Updated dependencies [9338c00]
- Updated dependencies [7addcc6]
- Updated dependencies [6f77b1b]
- Updated dependencies [537e945]
- Updated dependencies [7233451]
- Updated dependencies [8d66ae5]
- solid-js@2.0.0-rc.14
- @solidjs/web@2.0.0-rc.14

## 0.0.1-rc.1

### 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, and every optimistic behavior (toggle, remove, pending/error/retry, counts, filters) is a client fill over slot args and createOptimisticStore state: binding slots the server template reads at positions, a shared TodoRow on both sides, one markup slot for pending adds",
"version": "0.0.1-rc.1",
"version": "0.0.1-rc.2",
"private": true,
"author": "Ryan Carniato",
"license": "MIT",
Expand Down
17 changes: 17 additions & 0 deletions packages/babel-plugin/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,22 @@
# @solidjs/babel-plugin

## 2.0.0-rc.14

### Patch Changes

- 59fb244: SSR `hoistProps` skips TypeScript type positions when collecting captures, so on authored TSX (types parsed, stripped later) a `typeof x` query or a type named like a value no longer captures that value, or forces the literal fallback when it is reassigned (#3828).
- 3c1f809: Preserve `/* istanbul ignore … */` and `/* c8 ignore … */` block comments written as JSX children on the generated component `children` getter. Line comments are not carried.
- 98b916d: Fix compiled SSR output that renders `style=""` or `class=""` for `null` and `undefined`. Babel and the native compiler now omit these attributes on elements without a spread.
- 98d35b9: Fix computed keys in compiled SSR `style` objects (builds without `serverComponents`). A computed key's name got no `;`, so `style={{ color: "red", [k]: v }}` rendered `color:redtop:1px` and the browser dropped both declarations. Hydration keeps the server's inline style, so they stayed dropped. A nullish first value also no longer leaves a leading `;`. Both compilers now pass a multi-entry object to a new `ssrStyleProperties(name, value, …)` helper, which writes the separator only between the entries it writes; a single entry keeps `ssrStyleProperty`.
- 4f67697: **Breaking:** only `on` followed by an uppercase letter (`onClick`, `onPointerDown`) is an event handler. Lowercase `on*` names (`onclick`, `onmouseover`) are plain attributes everywhere:
- Both compilers compile `onclick={expr}` like any other attribute (`setAttribute`, reactive when `expr` is dynamic) instead of binding a delegated or native event, and SSR renders it as an escaped attribute instead of dropping it. A leftover 1.x `on:click={fn}` is likewise a plain namespaced attribute (it previously compiled to `addEventListener(":click", fn)`).
- `@solidjs/web` `spread`/`assign` set lowercase `on*` keys as attributes, the server spread walk renders them, and `useHead` applies lowercase `on*` attributes (camelCase handler names stay skipped). `ssrAttribute` escapes a function value instead of interpolating its source raw.
- `@solidjs/html` and `@solidjs/h` elements wrap a function passed to a lowercase `on*` in a getter like any other attribute; only `onXxx` and `ref` are exempt.
- `@solidjs/html` components follow `@solidjs/h`'s rule: every zero-argument function prop, `onXxx` handlers and `ref` included, is a getter, so a component handler must declare its event argument (`onClick=${e => …}`).
- New dev-only check `LOWERCASE_EVENT_ATTRIBUTE` (added to the `DiagnosticCode` union): warns once per attribute name when a function is set on a lowercase `on*` (or `on:`) attribute, naming the camelCase handler to use.

- 7513131: Preserve the source location of captured references in SSR props constructors so source maps point to the authored expression, including dynamic TSRX tags.

## 2.0.0-rc.13

## 2.0.0-rc.12
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.13",
"version": "2.0.0-rc.14",
"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.14

### Patch Changes

- ba8c593: Restore Clippy and rustfmt checks for the native compiler and apply the resulting lint and formatting cleanups
- 3c1f809: Preserve `/* istanbul ignore … */` and `/* c8 ignore … */` block comments written as JSX children on the generated component `children` getter. Line comments are not carried.
- 5dbe29a: Count all JavaScript line terminators in scoped style and refresh locations and DOM and server-function diagnostics. Report diagnostic columns in UTF-16 units.
- a8c98bd: Preserve the source location of captured references in SSR props constructors so source maps point to the authored expression instead of the start of the JSX element, matching `@solidjs/babel-plugin`.
- 59fb244: SSR `hoistProps` no longer captures names in TypeScript type positions (type parameters, annotations, `as`/`satisfies` targets, type arguments, `typeof x` queries, local `type`/`interface` declarations, `implements`/`extends` heritage) as constructor arguments, which threw `ReferenceError` once the types were stripped (#3828). A `type` or `interface` that shares a value's name no longer makes that value count as redeclared, so its site still hoists.
- ab57910: Report correct TSRX diagnostic positions after Unicode line separators and carriage returns, preserving UTF-16 columns and treating CRLF as one line break.
- 41be120: The `@solidjs/compiler-wasm32-wasi` fallback loads on Android (Termux), where the filesystem root cannot be opened: its generated loader no longer preopens `/` there (it failed with `UVWASI_EACCES, uvwasi_init`). The loader is regenerated by `@napi-rs/cli` 3.10.6, which maps the WASI root to the working directory on Android.
- c8aac88: Fix native TSRX compilation of parenthesized keys, iterables, and conditions, including annotated `@for` loops used directly in a component body. Map comments back to the authored source to prevent invalid JavaScript and Unicode panics when source maps are enabled.
- 98b916d: Fix compiled SSR output that renders `style=""` or `class=""` for `null` and `undefined`. Babel and the native compiler now omit these attributes on elements without a spread.
- 98d35b9: Fix computed keys in compiled SSR `style` objects (builds without `serverComponents`). A computed key's name got no `;`, so `style={{ color: "red", [k]: v }}` rendered `color:redtop:1px` and the browser dropped both declarations. Hydration keeps the server's inline style, so they stayed dropped. A nullish first value also no longer leaves a leading `;`. Both compilers now pass a multi-entry object to a new `ssrStyleProperties(name, value, …)` helper, which writes the separator only between the entries it writes; a single entry keeps `ssrStyleProperty`.
- ea5f1da: Fix native TSRX compilation when a setup statement has no semicolon before markup.
- 4f67697: **Breaking:** only `on` followed by an uppercase letter (`onClick`, `onPointerDown`) is an event handler. Lowercase `on*` names (`onclick`, `onmouseover`) are plain attributes everywhere:
- Both compilers compile `onclick={expr}` like any other attribute (`setAttribute`, reactive when `expr` is dynamic) instead of binding a delegated or native event, and SSR renders it as an escaped attribute instead of dropping it. A leftover 1.x `on:click={fn}` is likewise a plain namespaced attribute (it previously compiled to `addEventListener(":click", fn)`).
- `@solidjs/web` `spread`/`assign` set lowercase `on*` keys as attributes, the server spread walk renders them, and `useHead` applies lowercase `on*` attributes (camelCase handler names stay skipped). `ssrAttribute` escapes a function value instead of interpolating its source raw.
- `@solidjs/html` and `@solidjs/h` elements wrap a function passed to a lowercase `on*` in a getter like any other attribute; only `onXxx` and `ref` are exempt.
- `@solidjs/html` components follow `@solidjs/h`'s rule: every zero-argument function prop, `onXxx` handlers and `ref` included, is a getter, so a component handler must declare its event argument (`onClick=${e => …}`).
- New dev-only check `LOWERCASE_EVENT_ATTRIBUTE` (added to the `DiagnosticCode` union): warns once per attribute name when a function is set on a lowercase `on*` (or `on:`) attribute, naming the camelCase handler to use.

## 2.0.0-rc.13

## 2.0.0-rc.12
Expand Down
4 changes: 2 additions & 2 deletions 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.13",
"version": "2.0.0-rc.14",
"cpu": [
"arm64"
],
Expand All @@ -19,4 +19,4 @@
"os": [
"darwin"
]
}
}
4 changes: 2 additions & 2 deletions 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.13",
"version": "2.0.0-rc.14",
"cpu": [
"x64"
],
Expand All @@ -19,4 +19,4 @@
"os": [
"darwin"
]
}
}
4 changes: 2 additions & 2 deletions 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.13",
"version": "2.0.0-rc.14",
"cpu": [
"arm64"
],
Expand All @@ -22,4 +22,4 @@
"libc": [
"glibc"
]
}
}
4 changes: 2 additions & 2 deletions 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.13",
"version": "2.0.0-rc.14",
"cpu": [
"x64"
],
Expand All @@ -22,4 +22,4 @@
"libc": [
"glibc"
]
}
}
4 changes: 2 additions & 2 deletions 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.13",
"version": "2.0.0-rc.14",
"main": "compiler.wasi.cjs",
"files": [
"compiler.wasm32-wasi.wasm",
Expand All @@ -26,4 +26,4 @@
"@emnapi/core": "1.11.3",
"@emnapi/runtime": "1.11.3"
}
}
}
4 changes: 2 additions & 2 deletions 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.13",
"version": "2.0.0-rc.14",
"cpu": [
"x64"
],
Expand All @@ -19,4 +19,4 @@
"os": [
"win32"
]
}
}
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.13",
"version": "2.0.0-rc.14",
"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.13",
"@solidjs/compiler-darwin-arm64": "2.0.0-rc.13",
"@solidjs/compiler-linux-x64-gnu": "2.0.0-rc.13",
"@solidjs/compiler-linux-arm64-gnu": "2.0.0-rc.13",
"@solidjs/compiler-win32-x64-msvc": "2.0.0-rc.13",
"@solidjs/compiler-wasm32-wasi": "2.0.0-rc.13"
"@solidjs/compiler-darwin-x64": "2.0.0-rc.14",
"@solidjs/compiler-darwin-arm64": "2.0.0-rc.14",
"@solidjs/compiler-linux-x64-gnu": "2.0.0-rc.14",
"@solidjs/compiler-linux-arm64-gnu": "2.0.0-rc.14",
"@solidjs/compiler-win32-x64-msvc": "2.0.0-rc.14",
"@solidjs/compiler-wasm32-wasi": "2.0.0-rc.14"
}
}
122 changes: 122 additions & 0 deletions packages/diagnostics/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,127 @@
# @solidjs/diagnostics

## 2.0.0-rc.14

### Patch Changes

- Updated dependencies [4b4c2cb]
- Updated dependencies [0c550fd]
- Updated dependencies [ecb68a1]
- Updated dependencies [d4b10b5]
- Updated dependencies [b07fed5]
- Updated dependencies [2eb6e00]
- Updated dependencies [21ff8f8]
- Updated dependencies [3c1d512]
- Updated dependencies [1b9ceb6]
- Updated dependencies [fa371c3]
- Updated dependencies [96c5e19]
- Updated dependencies [9a213bb]
- Updated dependencies [721eb06]
- Updated dependencies [721eb06]
- Updated dependencies [b0c6e6a]
- Updated dependencies [365f37d]
- Updated dependencies [b07fed5]
- Updated dependencies [bc51ada]
- Updated dependencies [eaddda4]
- Updated dependencies [da84bd9]
- Updated dependencies [d231b99]
- Updated dependencies [98d35b9]
- Updated dependencies [3086f1b]
- Updated dependencies [b57eb2e]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [9d89df7]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [3c1d512]
- Updated dependencies [9d89df7]
- Updated dependencies [7233451]
- Updated dependencies [9d89df7]
- Updated dependencies [9d89df7]
- Updated dependencies [7233451]
- Updated dependencies [3c1d512]
- Updated dependencies [1b9ceb6]
- Updated dependencies [203ab1a]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [3c7631a]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [7233451]
- Updated dependencies [09eadfe]
- Updated dependencies [e44b2e4]
- Updated dependencies [01e80a6]
- Updated dependencies [be82cf3]
- Updated dependencies [759a9b6]
- Updated dependencies [fd9f381]
- Updated dependencies [b07fed5]
- Updated dependencies [fff1615]
- Updated dependencies [11e9fb6]
- Updated dependencies [11e9fb6]
- Updated dependencies [b0bad02]
- Updated dependencies [0c550fd]
- Updated dependencies [2317623]
- Updated dependencies [e345dc7]
- Updated dependencies [4f67697]
- Updated dependencies [2317623]
- Updated dependencies [d1309ad]
- Updated dependencies [924d909]
- Updated dependencies [6be6c51]
- Updated dependencies [41fdf96]
- Updated dependencies [7acc039]
- Updated dependencies [87a3862]
- Updated dependencies [bde4299]
- Updated dependencies [53ef0e6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [1b9ceb6]
- Updated dependencies [2656284]
- Updated dependencies [9338c00]
- Updated dependencies [7addcc6]
- Updated dependencies [6f77b1b]
- Updated dependencies [537e945]
- Updated dependencies [1a3f87f]
- Updated dependencies [5622be8]
- Updated dependencies [11e9fb6]
- Updated dependencies [b07fed5]
- Updated dependencies [b0bad02]
- Updated dependencies [b07fed5]
- Updated dependencies [b0c8489]
- Updated dependencies [7233451]
- Updated dependencies [8d66ae5]
- solid-js@2.0.0-rc.14
- @solidjs/signals@2.0.0-rc.14
- @solidjs/web@2.0.0-rc.14

## 2.0.0-rc.13

### Patch Changes
Expand Down
Loading
Loading