You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+48-3Lines changed: 48 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,57 @@
1
1
# Changelog
2
2
3
+
## 1.2.0 - 2021-10-25
4
+
5
+
### New Features
6
+
#### Custom Renderers
7
+
8
+
This release adds support custom renderers through a new "universal" transform. Solid now provides a sub module `solid-js/universal` that exports a `createRenderer` method that allows you to create your own runtimes. This will enable things like native mobile and desktop, canvas and webgl, or even rendering to the terminal. This is still new so very much looking for feedback.
9
+
10
+
#### Spreads Added to Solid's `html`
11
+
12
+
It's been a long time coming but Solid's Tagged Template Literals now support element and component spreads using htm inspired syntax.
13
+
```js
14
+
html`<div...${props} />`
15
+
```
16
+
17
+
### Fixes
18
+
19
+
#### Dynamic Spreads now work on Components
20
+
21
+
Previously spreads on components would only track property changes on bound objects and not when the whole object changed. This now works:
22
+
```js
23
+
<MyComponent {...getStuff()} />
24
+
```
25
+
26
+
#### ClassList properly merges multiple classnames in the key
27
+
28
+
It is common in libraries like Tailwind to apply multiple classes at the same time. There was an issue where true and false resolutions were cancelling each other out. This would only set `text-sm`.
29
+
30
+
```js
31
+
<div
32
+
classList={{
33
+
"px-2.5 py-1.5 text-xs":false,
34
+
"px-3 py-2 text-sm":false,
35
+
"px-4 py-2 text-sm":true,
36
+
"px-4 py-2 text-base":false,
37
+
"px-6 py-3 text-base":false
38
+
}}
39
+
/>
40
+
```
41
+
#### Consistent handling of HTMLEntities
42
+
43
+
Things like ` ` used to render differently depending if in elements or components(or fragments). This has been made consistent across all three.
44
+
#### Various improvements to Types and Transitions
45
+
46
+
A lot of bugs from the last minor release were around Transitions that have been addressed. And as always Types have been gradually improving.
47
+
3
48
## 1.1.0 - 2021-08-09
4
49
5
50
Expanding Solid's concurrency to include scheduling. Bug fixes around Types and around reactive execution order guarantees.
6
51
7
52
### New Features
8
53
9
-
### `createUniqueId`
54
+
####`createUniqueId`
10
55
11
56
A universal id generator that works across server/browser.
12
57
@@ -16,7 +61,7 @@ const id = createUniqueId();
16
61
17
62
> **Note** on the server this only works under hydratable components
18
63
19
-
### `from`
64
+
####`from`
20
65
21
66
A simple helper to make it easier to interopt with external producers like RxJS observables or with Svelte Stores. This basically turns any subscribable (object with a `subscribe` method) into a Signal and manages subscription and disposal.
22
67
@@ -35,7 +80,7 @@ const clock = from(set => {
35
80
36
81
> Note: Signals created by `from` have equality checks turned off to interface better with external streams and sources.
37
82
38
-
### `enableScheduling` (experimental)
83
+
####`enableScheduling` (experimental)
39
84
40
85
By default Solid's concurrent rendering/Transitions doesn't schedule work differently and just runs synchronously. Its purpose is to smooth out IO situations like Navigation. However now you can opt into interruptible scheduling similar to React's behavior by calling this once at your programs entry. I've yet to see a realworld scenario where this makes a big difference but now we can do cool demos too and start testing it.
0 commit comments