Commit graph

250 commits

Author SHA1 Message Date
Evan Almloff
55b37cc381 fix serializing signals 2024-01-24 10:54:17 -06:00
Evan Almloff
87dc409837 remove must use hints from memo and rename file to memo 2024-01-24 09:31:29 -06:00
Evan Almloff
f2e48f10e9 simplify the crm example a bit more 2024-01-23 18:46:24 -06:00
Evan Almloff
fc6912d4c0 make GlobalMemo and GlobalSignal not copy or clone 2024-01-23 18:37:50 -06:00
Evan Almloff
84e76dbdce remove duplicate vec utils defined in the read_impls 2024-01-23 17:23:04 -06:00
Jonathan Kelley
828c253305
queue effect instead of running it 2024-01-23 14:10:13 -08:00
Evan Almloff
6bc0332052 simplify the readable and writable traits a bit 2024-01-23 12:07:55 -06:00
Evan Almloff
94c0c2e5b9 remove some old manual implementations of helpers 2024-01-23 11:29:13 -06:00
Evan Almloff
7f93263357 add a bunch more utilities to the trait 2024-01-23 10:56:26 -06:00
Evan Almloff
51d7133ca5 add readable and writable traits for signal-like structs 2024-01-23 10:05:59 -06:00
Evan Almloff
89b7784d31 make validate private again 2024-01-23 07:32:53 -06:00
Jonathan Kelley
079fec3be6
simplify generational box by compressing debug info 2024-01-22 21:17:02 -08:00
Evan Almloff
e01f10e25d remove mappable and mappablemut traits 2024-01-22 16:51:25 -06:00
Jonathan Kelley
06d9b575b7
rename use_selector to use_memo 2024-01-20 23:32:12 -08:00
Jonathan Kelley
3ded0f5329
Make more examples cross-platform 2024-01-20 00:11:55 -08:00
Jonathan Kelley
85c7c22619
Make router work on web 2024-01-19 16:36:40 -08:00
Jonathan Kelley
c1be911dd7
Cleanup in global signals 2024-01-19 15:50:00 -08:00
Jonathan Kelley
60f5697e8e
Fix global signal owner 2024-01-19 15:48:21 -08:00
Jonathan Kelley
337c04557b
get cargo check --all --examples --tests working! 2024-01-19 15:01:01 -08:00
Jonathan Kelley
83bce6ce97
Make cargo check --all --examples work! 2024-01-19 14:19:49 -08:00
Evan Almloff
08475af221 fix some unused items 2024-01-19 15:38:51 -06:00
Evan Almloff
6444559a66 move selector construct onto signals 2024-01-19 15:30:40 -06:00
Evan Almloff
c859ed3b12 create global selectors 2024-01-19 15:26:28 -06:00
Evan Almloff
e4c84f91e1 expose the inner signal GlobalSignal uses 2024-01-19 13:50:38 -06:00
Evan Almloff
bc914deeaa create Signal::global 2024-01-19 13:46:17 -06:00
Evan Almloff
c7275e4c30 fix signal unsubscriber 2024-01-19 12:13:45 -06:00
Jonathan Kelley
6ed3aafb2f
Get cargo check --all working 2024-01-18 19:27:55 -08:00
Jonathan Kelley
94b17cc8ca
Fix non tokio builds for desktop 2024-01-18 04:07:28 -08:00
Evan Almloff
205a005142 fix dioxus web 2024-01-17 08:40:42 -06:00
Evan Almloff
701093ede5 Try to rerun all dirty scopes before polling any tasks to fix effect ordering 2024-01-17 08:17:30 -06:00
Evan Almloff
397015df31 fix some clippy lints in dioxus signals 2024-01-16 16:31:07 -06:00
Evan Almloff
f6fd20bb61 fix signals 2024-01-16 13:57:31 -06:00
Evan Almloff
611f0d3b5f Merge branch 'maybe-sync-signal' into breaking 2024-01-16 13:49:53 -06:00
Evan Almloff
e65c5f0eb3 depreciate the render macro 2024-01-16 13:18:46 -06:00
Jonathan Kelley
98bd78de43
Fix issue with mutability in component macro 2024-01-15 23:57:10 -08:00
Jonathan Kelley
8559984e9d
and mut bound to mut methods on signals 2024-01-15 23:24:59 -08:00
Jonathan Kelley
d88561f973
Adjust impl for signal syntax to allow cloned values 2024-01-15 21:43:30 -08:00
Jonathan Kelley
33bba24867
Experiment with call syntax only working for copy types 2024-01-15 21:12:44 -08:00
Jonathan Kelley
bb750f5336
Fix effect stack issue 2024-01-15 20:45:59 -08:00
Jonathan Kelley
a32ae8b112
Remove push_future, get use_future kinda working again 2024-01-15 19:34:04 -08:00
Jonathan Kelley
74aa55f85f
Bring back mroe hooks, remove old hooks, cleanup a number of examples 2024-01-15 17:04:39 -08:00
Jonathan Kelley
6134a2ce24
Clean up a number of examples 2024-01-15 13:06:05 -08:00
Evan Almloff
20480c0a2d fix use_hook imports 2024-01-15 09:10:15 -06:00
Evan Almloff
01726d6656 remove once, restore use_hook 2024-01-15 09:05:46 -06:00
Jonathan Kelley
9881a94e67
Remove cx in more places 2024-01-13 21:18:36 -08:00
Jonathan Kelley
1dde044697
remove cx.render 2024-01-13 21:12:21 -08:00
Jonathan Kelley
fae0b08e61
Fix the router and stub out a number of crates to get compiling 2024-01-13 20:51:37 -08:00
Evan Almloff
6c29e2b825 clean up some core context APIs 2024-01-11 17:21:13 -06:00
Evan Almloff
55f76fede6 work on fixing some core tests 2024-01-10 19:21:15 -06:00
Evan Almloff
78a5592d6d fix comparer 2024-01-08 14:03:17 -06:00
Evan Almloff
69a1ec0e3c Merge branch 'create-comparer' into maybe-sync-signal 2024-01-08 13:56:11 -06:00
ealmloff
f54ee1c361
Merge branch 'master' into map-signal 2024-01-05 18:30:31 -06:00
Evan Almloff
4013341b6c hello world example working 2024-01-05 18:01:05 -06:00
Evan Almloff
b7c9817cf3 fix tests 2024-01-02 15:19:01 -06:00
Evan Almloff
73b7f450a5 fix merge errors 2024-01-02 14:55:46 -06:00
Evan Almloff
cddcd69200 Merge branch 'maybe-sync-signal' into map-signal 2024-01-02 14:17:01 -06:00
Evan Almloff
ccd0ccffa7 fix formatting 2024-01-01 10:47:45 -06:00
Evan Almloff
b9d179c494 add as_mapped_ref 2024-01-01 10:44:21 -06:00
werner291
a0b95a82a0
Implemented From<Signal<T>> for ReadOnlySignal<T> (#1772) 2024-01-01 10:22:52 -06:00
Evan Almloff
e45739ac04 fix examples 2023-12-23 13:57:49 -06:00
Evan Almloff
31489167f7 use map in the signal iterator 2023-12-23 13:52:23 -06:00
Evan Almloff
0c7729da05 Merge branch 'master' into map-signal 2023-12-23 13:43:54 -06:00
Evan Almloff
a2fadc8d11 Make the function bounds for map less restrictive 2023-12-23 13:43:27 -06:00
Evan Almloff
5ab0c48ddd fix clippy 2023-12-17 17:55:02 -06:00
Evan Almloff
6b17d3db1e fix signals crate 2023-12-15 18:35:48 -06:00
Evan Almloff
9e388c3c51 refactor generational box into multiple files 2023-12-15 08:50:54 -06:00
Evan Almloff
70c3abb8df Merge branch 'master' into maybe-sync-signal 2023-12-14 12:29:32 -06:00
Jonathan Kelley
028ffad95a
Merge pull request #1593 from ealmloff/signal-read-untracked 2023-12-07 11:12:14 -08:00
Exotik850
fc31876a57
Wasm target check before build (#1689)
* Add `rustup show` check for wasm32 target

* better place for check

* fmt

* clippy fmt
2023-12-07 12:35:16 -06:00
Evan Almloff
a1550460ce Fix peek spelling 2023-12-07 11:37:59 -06:00
Evan Almloff
1c2a6fa010 fix signals with debug information 2023-12-07 07:19:41 -06:00
ealmloff
c67e0705ea
Merge branch 'master' into signal-read-untracked 2023-12-07 07:12:30 -06:00
Evan Almloff
2bab4eb6c3 rename read_untracked to peak 2023-12-07 07:06:43 -06:00
Jonathan Kelley
ccd850edf6
Merge pull request #1383 from ealmloff/debug-signals
Add debug information to borrows and ownership in signals
2023-12-06 21:19:38 -08:00
Jonathan Kelley
16982c9f69
Add metadata for signals crate 2023-12-06 20:54:50 -08:00
Jonathan Kelley
d3f6ff703c
Release 0.4.3
dioxus@0.4.3
dioxus-autofmt@0.4.3
dioxus-check@0.4.3
dioxus-cli@0.4.3
dioxus-core@0.4.3
dioxus-core-macro@0.4.3
dioxus-desktop@0.4.3
dioxus-fullstack@0.4.3
dioxus-hooks@0.4.3
dioxus-hot-reload@0.4.3
dioxus-html@0.4.3
dioxus-interpreter-js@0.4.3
dioxus-liveview@0.4.3
dioxus-mobile@0.4.3
dioxus-native-core@0.4.3
dioxus-native-core-macro@0.4.3
dioxus-router@0.4.3
dioxus-router-macro@0.4.3
dioxus-rsx@0.4.3
dioxus-signals@0.4.3
dioxus-ssr@0.4.3
dioxus-tui@0.4.3
dioxus-web@0.4.3
dioxus_server_macro@0.4.3
fermi@0.4.3
generational-box@0.4.3
plasmo@0.4.3
rsx-rosetta@0.4.3

Generated by cargo-workspaces
2023-12-06 16:56:35 -08:00
Evan Almloff
b3c5158524 fix tests 2023-11-07 13:15:19 -06:00
Evan Almloff
2731ca0b30 fix ref try map 2023-11-07 09:26:12 -06:00
Evan Almloff
e77c158636 fix selector effect id 2023-11-07 09:19:33 -06:00
Evan Almloff
7daa945ae3 fix effects 2023-11-06 18:54:35 -06:00
Evan Almloff
466005890d make effect system async to make signals send + sync 2023-11-06 18:47:51 -06:00
Evan Almloff
c33276e0a0 remove ghost 2023-11-06 14:46:38 -06:00
Evan Almloff
6eb4e7358b fix selector and signal unsync default 2023-11-06 14:46:26 -06:00
Evan Almloff
ebbaacf073 fix read and write impls 2023-11-03 10:27:21 -05:00
Evan Almloff
0a8de1d40f clean up ref mapping with GATs 2023-11-02 19:35:53 -05:00
Evan Almloff
ff26380838 fix clippy 2023-11-01 08:21:04 -05:00
Evan Almloff
d815c7cc89 create a reactive selector called comparer 2023-10-31 18:30:06 -05:00
Evan Almloff
8a62e4a987 Merge branch 'master' into debug-signals 2023-10-31 13:55:20 -05:00
Evan Almloff
90e04edcdf make the signal runtime global 2023-10-30 14:25:31 -05:00
Evan Almloff
c5e647e97d add read untracked to signals 2023-10-30 08:39:37 -05:00
Evan Almloff
1126c1d329 make signal sync 2023-10-26 12:47:53 -05:00
Jonathan Kelley
ea8c5e290d
Merge pull request #1551 from ealmloff/fix-signals-outside-of-runtime
Fix using signals outside of a scope
2023-10-23 15:32:12 -04:00
Jonathan Kelley
55ad41b392
Merge branch 'master' into jk/loop-allocation-strategy 2023-10-17 15:27:20 -07:00
Evan Almloff
bfacf94db4 finish removing generic from SignalMap 2023-10-17 13:50:21 -05:00
Evan Almloff
4b8701e3eb Merge branch 'master' into map-signal 2023-10-17 13:45:36 -05:00
Evan Almloff
365868f636 remove extra generic from SignalMap 2023-10-17 13:45:25 -05:00
Evan Almloff
ce86aabf26 fix clippy 2023-10-17 13:02:51 -05:00
Evan Almloff
050add21d7 effect-outside-of-runtime 2023-10-17 12:56:12 -05:00
Jonathan Kelley
509dca97e6
Merge pull request #1544 from ealmloff/must-use-hooks
Add must use to several hooks
2023-10-17 09:24:39 -07:00
Evan Almloff
6e9aa4dba1 fix clippy 2023-10-16 13:29:32 -05:00
Evan Almloff
87dae6a41f add a test for derefing signals to a closure 2023-10-16 13:08:18 -05:00
Evan Almloff
c65116c173 restore deref<Fn() -> Ref> 2023-10-16 13:03:37 -05:00
Evan Simkowitz
b1d6069363
Fix deref for Write struct in dioxus-signals (#1549) 2023-10-16 10:49:21 -05:00
Jonathan Kelley
7e2164d6d6
Add toggle 2023-10-15 17:52:01 -07:00
Evan Almloff
3bf6d2d7cf add must use to several hooks 2023-10-14 12:08:54 -05:00
Evan Almloff
7ea868bd08 add a map method to signal 2023-10-11 12:46:53 -05:00
Evan Almloff
3578f03f4f add the ability to map signals 2023-10-11 12:43:22 -05:00
Leonard
2d1234c3d1
Include README and Dioxus logo in package docs (#1536)
* Include README in docs.rs and add Dioxus logo

* Update README.md
2023-10-10 10:52:48 -05:00
Evan Almloff
78860da006 Merge branch 'master' into debug-signals 2023-09-22 07:59:47 -05:00
Jonathan Kelley
30b958ffa8
Merge pull request #1386 from ealmloff/fix-new-signals-in-effects
Fix leaked signals created in effects
2023-09-16 11:56:40 -07:00
Leonard
c866ae602b
Add system for creating component attributes + new #[component] attribute (#1448)
* Add `#[component]` attribute + system for creating component attributes + other stuff

* Delete inlineprops.rs

* Update inline_props.rs

* Cargo fmt

* Fix clippy warnings and paths in props/mods.rs

* Include where clause in `#[inline_props]` output

* Allow Clippy type complexity in `LinkProps`

* Allow the type complexity lint for the entire link.rs file

* Remove snake_case -> PascalCase converter, but rather enforce PascalCase

Also:
- Put the second function inside the main one instead of besides it.
- Simplify

* Simplify type check lints so they don't return false positives

They will not always work, but they won't return any false positives, like for aliases. This is likely going to be replaced by a more polished Clippy-backed linting system.

* Fix #583

* Cargo fmt

* Add docs for `deserialize()` and remove useless comment

* Add `#[component]` to prelude

* Merge branch 'master' of https://github.com/tigerros/dioxus

* #[inline_props] is no more. Except in the docs folder, but that's going to be removed

* Remove docs folder

* Remove docs from workspace

* Resolve `DeserializerOutput` conversation
2023-09-15 09:13:36 -05:00
Evan Almloff
c55c17cb81 switch to tracing for logging 2023-09-06 17:47:33 -05:00
Jonathan Kelley
1ba6ca39e3
Merge pull request #1384 from ealmloff/new-in-scope-signals
Expose new_in_scope for signals
2023-08-30 23:14:58 -07:00
Evan Almloff
f3e7f042b4 fix reading signals outside of the vdom 2023-08-26 14:53:39 -05:00
Jani Mustonen
31f8bab20d
Add ScopeId::ROOT (#1398)
* add ScopeId::ROOT

* replace ScopeId(0) with ScopeId::ROOT

---------

Co-authored-by: Jani Mustonen <jani.mustonen@taitounited.fi>
2023-08-25 08:31:23 -05:00
Evan Almloff
38274da3ee Fix creating signals in effects 2023-08-21 14:42:56 -05:00
Evan Almloff
9c03d68d88 expose new_in_scope for signals 2023-08-21 14:33:52 -05:00
Evan Almloff
f09a2e2280 fix release builds 2023-08-21 14:28:45 -05:00
Evan Almloff
df85b25548 Add debug information to borrows and ownership in signals 2023-08-21 14:23:02 -05:00
Evan Almloff
18d255decc add serde feature to signals 2023-08-10 17:17:25 -07:00
Evan Almloff
24c626b306 fix clippy 2023-08-08 13:43:57 -07:00
Evan Almloff
69dab86873 add selector example to readme 2023-08-08 13:27:45 -07:00
Evan Almloff
ba7a663eb6 fix some ownership issues 2023-08-08 13:18:15 -07:00
Evan Almloff
d6089bbd35 add optional dependency variants of selectors and effects 2023-08-08 13:06:33 -07:00
Evan Almloff
e2c08a79ae fix signal readme example 2023-08-08 11:12:08 -07:00
Evan Almloff
292b3367dd create some more compelling examples 2023-08-07 18:20:03 -07:00
Evan Almloff
ed05abc196 document remaining methods in the signal crate 2023-08-07 18:00:17 -07:00
Evan Almloff
0c17bdb737 don't subscribe in tasks or event handlers 2023-08-07 17:55:29 -07:00
Evan Almloff
4447709ac8 add readmes 2023-08-07 17:49:14 -07:00
Evan Almloff
cfd68bf7d9 document signals crate 2023-08-07 16:56:49 -07:00
Evan Almloff
2c7d0700d4 rename memo to selector 2023-08-07 16:17:47 -07:00
Evan Almloff
646c161c7d create read only signal 2023-08-07 16:04:49 -07:00
Evan Almloff
84734c4146 change dioxus signal to generational box 2023-08-07 14:34:16 -07:00
Evan Almloff
190c65b15d fix memo and add tests 2023-08-07 14:31:03 -07:00
Evan Almloff
7f2049b647 add memo 2023-08-07 12:32:46 -07:00
Evan Almloff
717c09c4a3 create tests for signals 2023-08-07 11:52:54 -07:00
Evan Almloff
dce418140a create a way to hoist ownership to a different scope 2023-08-04 17:50:05 -07:00
Evan Almloff
a6f611eccf fix subscriptions in events 2023-08-04 17:23:57 -07:00
Evan Almloff
48b1e9e54c fix copy dependencies 2023-08-04 14:53:34 -07:00
Evan Almloff
3242fc9e88 add debug impl 2023-08-04 14:49:52 -07:00
Evan Almloff
2b6b3b67b1 move dioxus copy into a separate package 2023-08-04 14:28:55 -07:00
Evan Almloff
04cdb14e5b improve signal copy runtime 2023-08-04 13:53:05 -07:00
Evan Almloff
3eab363e51 Add authors to all crates 2023-07-31 17:30:18 -07:00
Evan Almloff
a96ccdc6f3 fix clippy 2023-07-18 13:16:17 -07:00
Jonathan Kelley
2d8841cf70
Add lazy contexts to signals 2023-07-14 12:52:49 -07:00
Evan Almloff
5f873511c5 use workspace dependancies 2023-06-19 14:29:11 -05:00
Jonathan Kelley
14a1e4145e feat: implement function accessor 2023-01-01 22:57:16 -05:00
Jonathan Kelley
fd92079eb3 feat: add recycling of rts in signals 2023-01-01 22:09:08 -05:00
Jonathan Kelley
c0315e55f4 chore: more signals methods 2023-01-01 22:02:49 -05:00
Jonathan Kelley
4f9d67fb45 feat: simple signals implementation 2023-01-01 19:57:33 -05:00