Commit graph

142 commits

Author SHA1 Message Date
Evan Almloff
41bf87e74f Merge branch 'upstream' into simplify-native-core 2023-03-14 16:21:39 -05:00
Jonathan Kelley
6fde323112 bump core version 2023-01-27 23:27:28 -08:00
Jonathan Kelley
b5c7d5cfd9 chore: use 0.2 of bumpslab 2023-01-23 11:45:18 -08:00
Evan Almloff
a0441f686c use main bumpslab branch 2023-01-23 12:48:00 -06:00
Evan Almloff
bdb63d18f3 try a different branch 2023-01-23 08:25:08 -06:00
Evan Almloff
c5f003e41e use git version of bump slab 2023-01-22 21:07:54 -06:00
Evan Almloff
ae028d82f8 use bump slab 2023-01-22 17:16:34 -06:00
Evan Almloff
75932a43e0 Merge branch 'upstream' into add-fuzzing-to-core 2023-01-12 15:17:20 -06:00
Evan Almloff
52d5c8d4e7 update READMEs and tags for the 0.3 release 2023-01-10 10:16:11 -06:00
Evan Almloff
42baadf65d add fuzzing test to dioxus-core 2023-01-05 10:28:07 -06:00
Jonathan Kelley
7f01f61138 feat: publish 0.3 versions of many crates 2023-01-04 14:31:07 -05:00
Evan Almloff
51dba50c04 use BumpBox<Any> and FromAnyValue instead of sync bounds 2023-01-02 14:40:25 -06:00
Evan Almloff
5b1d9c5c8d Merge branch 'upstream' into fix-non-str-attributes 2022-12-30 11:52:55 -06:00
Jonathan Kelley
bd720e2268 fix: use futuresunordered instead of bespoke waker system 2022-12-29 19:53:43 -05:00
Evan Almloff
afd024bcb6 Merge branch 'upstream' into fix-non-str-attributes 2022-12-23 15:53:39 -06:00
Jonathan Kelley
d3be971f4e chore: rollback to option instead of anyhow 2022-12-19 18:06:13 -08:00
Jonathan Kelley
7a4b0d7c2d fix: use stack optimization for replacer 2022-12-19 11:14:01 -08:00
Jonathan Kelley
cc7736302a Merge branch 'master' into fix-non-str-attributes 2022-12-17 01:51:13 -08:00
Jonathan Kelley
5c20e651da fix: get rollover working 2022-12-13 14:44:47 -08:00
=
53b436c684 remove AnyValueBounds and add some docs 2022-12-11 21:40:40 -06:00
=
73ec4abfdf Merge remote-tracking branch 'upstream/master' into fix-non-str-attributes 2022-12-11 21:26:38 -06:00
=
74e9d5977a add sync behind a feature flag 2022-12-11 17:31:15 -06:00
Sam Schmeink
6166d4eb73 fix: replace fxhash with rustc-hash 2022-12-10 03:56:48 +01:00
Evan Almloff
6102902387 work on optimizing web implementation 2022-12-06 14:24:35 -06:00
Jonathan Kelley
16a521a601 chore: update docs 2022-11-30 10:31:44 -05:00
Jonathan Kelley
7c3d308ab5 chore: make warnings go away 2022-11-29 16:31:04 -05:00
Jonathan Kelley
0e5a59f9ed wip: error boundary 2022-11-22 18:38:27 -08:00
Jonathan Kelley
112c954e00 Merge branch 'master' into jk/templates-v3 2022-11-22 16:11:12 -08:00
David Craven
99dafdb8ee
Build failure on master. (#627)
* Build failure on master.

* Fix ci failure.

* Fix test.

* Ignore broken tests.

* Fix doctests.
2022-11-22 09:56:15 -08:00
Demonthos
f21c8423eb
optimizations for wasm size (#582)
* optimize for size

* fix tests

* revert log feature

* make backtrace not optional

* remove dev feature from web dev-deps
2022-11-16 22:22:13 -08:00
Jonathan Kelley
f5bc137f01 chore: clean up scheduler code 2022-11-09 10:58:11 -08:00
Jonathan Kelley
a38fc9e4ab feat: suspense! 2022-11-06 01:48:34 -07:00
Jonathan Kelley
22d4bf7346 feat: use walking pattern 2022-10-26 18:04:47 -07:00
Jonathan Kelley
90982e0ccb wip: start to refactor out hot reloading from packages
Also implement alternative simpler template system
2022-10-20 09:56:09 -07:00
saicu
e8c48d46cf
replace fxhash crate with rustc-hash (#588) 2022-10-12 18:27:26 -07:00
Demonthos
928b5358b2
allow arbitrary attribute value in owned attribute value (#574) 2022-10-02 14:13:06 -07:00
Demonthos
047ed1e553
Subtree memorization / reactive templates (#488)
This commit adds subtree memoization to Dioxus.

Subtree memoization is basically a compile-time step that drastically 
reduces the amount of work the diffing engine needs to do at runtime by
extracting non-changing nodes out into a static "template." Templates 
are then understood by the various renderers in the ecosystem as a 
faster way of rendering the same items. 

For example, in the web, templates are simply a set of DOM Nodes created 
once and then cloned later. This is the same pattern frameworks like Lithtml
and SolidJS use to achieve near-perfect performance. 

Subtree memoization adds an additional level of complexity to Dioxus. The RSX
macro needs to be much smarter to identify changing/nonchanging nodes and
generate a mapping between the Template and its runtime counterparts.

This commit represents a working starter point for this work, adding support 
for templates for the web, desktop, liveview, ssr, and native-core renderers.
In the future we will try to shrink code generation, generally improve 
performance, and simplify our implementation.
2022-09-30 12:03:06 -07:00
Evan Almloff
f9713b2fe9 Merge remote-tracking branch 'origin/master' into jk/rsx-refactor 2022-05-27 17:56:50 -05:00
Evan Almloff
871f51f91b It compiles 2022-05-25 14:08:59 -05:00
Evan Almloff
ca10d89670 add RsxTextIndex 2022-05-25 11:20:07 -05:00
Jonathan Kelley
3febd42588 Release dioxus-core v0.2.1, dioxus-core-macro v0.2.1, dioxus-html v0.2.1, dioxus-interpreter-js v0.2.1, dioxus-desktop v0.2.3, dioxus-hooks v0.2.1, dioxus-liveview v0.1.0, dioxus-native-core v0.2.0, dioxus-native-core-macro v0.2.0, dioxus-router v0.2.3, dioxus-ssr v0.2.1, dioxus-tui v0.2.2, dioxus-web v0.2.1, fermi v0.2.1, dioxus v0.2.4 2022-05-02 23:57:20 -04:00
Joshua Kifer
1b736f1001 Remove release_max_level features from several Cargo.toml log dependencies 2022-03-15 17:59:30 -06:00
Jonathan Kelley
e7505188d6 release: make a new 0.2.0 release of Dioxus 2022-03-09 14:24:05 -05:00
Jonathan Kelley
e04a6d63a5 chore: move tests out of core and into the top level crate
This commit moves the tests out of core so rust analyzer
is happier with the workspace.
2022-03-02 22:48:22 -05:00
Dave Rolsky
06ea624eec Make all packages which require futures-channel ask for the same version
If they aren't the same then Cargo cannot resolve a working version for some
reason.
2022-02-15 10:27:11 -06:00
Jonathan Kelley
f6c6134d67 Release dioxus-core v0.1.9 2022-01-29 10:42:38 -05:00
Jonathan Kelley
f965030b80 Release dioxus-core v0.1.8 2022-01-29 10:36:10 -05:00
Jonathan Kelley
40d1f85d0c Release dioxus-core v0.1.7, dioxus-core-macro v0.1.6, dioxus-html v0.1.4, dioxus-desktop v0.1.5, dioxus-hooks v0.1.6, dioxus-mobile v0.0.3, dioxus-router v0.1.0, dioxus-ssr v0.1.2, dioxus-web v0.0.4, dioxus v0.1.7 2022-01-08 02:25:03 -05:00
Jonathan Kelley
4f92ba4160 wip: bump all versions 2022-01-03 19:32:27 -05:00
Jonathan Kelley
f9b9bb9c0c publish: update core, core-macro, and html 2022-01-03 02:13:14 -05:00