Commit graph

3209 commits

Author SHA1 Message Date
Evan Almloff
7b45a3a98b run fuzzing more when miri is deactivated 2023-12-16 21:27:31 -06:00
Evan Almloff
22f2c0ad9b reduce how many times the create and diff fuzzing runs 2023-12-16 21:24:47 -06:00
Evan Almloff
b91e97ca43 document events are only triggerable on elements 2023-12-16 19:54:26 -06:00
ealmloff
56478d1856
Merge branch 'DioxusLabs:master' into fix-event-bubbling 2023-12-16 06:34:00 -06:00
kidkool850@gmail.com
ed2ce6e039 Don't notify task if ready 2023-12-15 22:23:59 -06:00
w3irdrobot
2321c1ad44
add error log when root element isn't found (#1724) 2023-12-15 17:55:19 -06:00
Will Crichton
7bede0be59 Remove unused imports 2023-12-15 11:30:19 -08:00
Will Crichton
d5ec22a26f Add custom asynchronous asset handlers 2023-12-15 11:16:25 -08:00
Exotik850
1ec230ae29
Autoformat ignores files in .gitignore (#1704)
* Make autofmt ignore gitignored files

* don't panic if it can't get the git ignore files

* replace some with ok

* Filter rs files from gitignore

* fmt

* remove early return

* only ignore paths that start with target

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-12-13 09:44:01 -06:00
xfalcon
0cb13942da
fix: command error with dx build --verbose (#1715)
error msg: cannot set both --verbose and --quiet
2023-12-13 08:30:40 -06:00
Exotik850
493b0693c5 Put channels back in hook 2023-12-12 13:15:41 -06:00
Exotik850
fdce7bbe5a Return to just TaskId, still polling 2023-12-12 13:02:35 -06:00
kidkool850@gmail.com
69ca1fd8a7 Make cx.spawn() return an Option<TaskId>, returns None if finished immediately 2023-12-11 16:01:40 -06:00
Evan Almloff
3afb313110 fix formatting 2023-12-11 14:00:45 -06:00
YuKun Liu
695bf009d1
fix: dx create not work (#1709) 2023-12-11 13:27:55 -06:00
Benjamin Manns
972235bd6f
Fix doc tests by adding formatting to CLI README (#1706)
The README for cli gets included in lib.rs via `include_str!`. The code snippets then get assumed to be Rust, which fails if running `cargo test --doc`. This is not a huge problem, but was brought to my attention because Nix's `buildRustPackage` runs `cargo test` including doc tests (unlike what get run for this project on CI). This means I can't update the Nix package to 0.4.3 without changing the test flags (which I think I'll see about doing anyways, as that's how Dioxus runs CI).
2023-12-10 12:16:59 -06:00
Evan Almloff
8984482b63 fix headless windows 2023-12-08 15:14:32 -06:00
Evan Almloff
0e3fd225a8 Merge branch 'master' into binary-protocal 2023-12-08 08:44:04 -06:00
Jonathan Kelley
544ca55596
Merge pull request #1363 from ealmloff/fix-native-core-leak 2023-12-07 19:55:08 -08:00
Alex Parrill
6b7545f60a
Add loading attribute to img element (#1699)
Useful for lazy loading: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img#loading
2023-12-07 16:13:50 -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
Pascal
29f9d002e2 expose dioxus_desktop::build_default_menu_bar() 2023-12-07 19:03:37 +01:00
Evan Almloff
a1550460ce Fix peek spelling 2023-12-07 11:37:59 -06:00
Jonathan Kelley
424926a8db
Merge pull request #1698 from ealmloff/fix-server-function-early-disconnect 2023-12-07 09:28:54 -08:00
Jonathan Kelley
9a3287e05f
Merge pull request #1681 from ealmloff/warn-windows-gnu 2023-12-07 09:28:38 -08:00
Jonathan Kelley
fe7df0c6a5
Merge pull request #1697 from ealmloff/hot-reload-temp-dir 2023-12-07 09:18:10 -08:00
Pascal
cbfb80d5c6 fixup: improved documentation and refactored naming to be more self-explanatory
Note:
This is the actual correct commit. The previous one contained files touched by cargo fmt which are unrelated. Sorry for that.
2023-12-07 17:23:14 +01:00
Pascal
906c466e78 Revert "improved documentation and refactored naming to be more self-explanatory"
This reverts commit adfbb6c380.
2023-12-07 17:11:56 +01:00
Pascal
adfbb6c380 improved documentation and refactored naming to be more self-explanatory 2023-12-07 16:36:20 +01:00
Evan Almloff
df57cc7d9c fix disconnects that happen while a server function is being resolved 2023-12-07 08:29:14 -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
7d2bbda53d move gnu warning to build script 2023-12-07 07:10:53 -06:00
Evan Almloff
2bab4eb6c3 rename read_untracked to peak 2023-12-07 07:06:43 -06:00
Evan Almloff
9a13df2c73 move hot reload socket into the target directory 2023-12-07 07:00:59 -06:00
ealmloff
6c9c081f5c
Merge branch 'DioxusLabs:master' into fix-native-core-leak 2023-12-07 06:27:00 -06:00
Jonathan Kelley
ad885ec47a
Merge pull request #1650 from ealmloff/effect-cleanup
Add an optional cleanup closure to the use effect hook
2023-12-06 22:13:08 -08:00
Jonathan Kelley
8f1791c039
Merge pull request #1597 from ColonelThirtyTwo/fmt-indent
Use indentation settings in dx fmt and vscode extension
2023-12-06 22:06:16 -08:00
Jonathan Kelley
4444ba0b97
Merge pull request #1576 from ealmloff/fix-lints-release-web
Fix use shared state lint in release mode
2023-12-06 21:39:36 -08:00
Jonathan Kelley
edebe5be4a
Merge pull request #1653 from ealmloff/fix-hot-reload-missing-items
Fix missing items in hot reloading diffing
2023-12-06 21:38:36 -08:00
Jonathan Kelley
f2504cec84
Merge pull request #1674 from ealmloff/better-optional-props
Make optional props accept Nothing, T or Option<T>
2023-12-06 21:37:39 -08:00
Jonathan Kelley
3b63791ec1
Merge pull request #1485 from ealmloff/make-fullstack-layer-public
Make the layer module public in fullstack
2023-12-06 21:34:38 -08:00
Jonathan Kelley
ecb1b61b65
Merge pull request #1664 from ealmloff/fix-svg-hot-reload
Fix hot reloading svg elements
2023-12-06 21:34:05 -08:00
Jonathan Kelley
07d84fedb7
Merge pull request #1580 from ealmloff/miri-leak
Remove the ignore leaks in flag MIRI
2023-12-06 21:29:32 -08: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
ae8eaf80a2
Merge pull request #1612 from ealmloff/ssr-eval
Add a noop evaluator to the ssr renderer
2023-12-06 21:17:36 -08:00
Jonathan Kelley
f52233c095
Merge pull request #1634 from ealmloff/fix-string-memory-leak
Fix string memory leak
2023-12-06 21:16:43 -08:00
Jonathan Kelley
850f2da0c6
Merge pull request #1651 from ealmloff/string-into-attribute
Add into attribute value impl for String
2023-12-06 21:14:31 -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
b965fc23e9 use a temp directory for the hot reloading pipe on desktop, fullstack and liveview 2023-12-06 17:01:51 -06:00
Pascal
e4d60c8dfc add default menu bar in dioxus-desktop to resolve #1691
fixup naming and expose disable_default_menu_bar with builder function
2023-12-06 23:00:01 +01:00
JMS55
8530f53692
Fix typo (#1695)
* Fix typo

* Fix typo again
2023-12-06 06:55:07 -06:00
Jonathan Kelley
0c92486883
publish generational box 2023-12-05 22:57:20 -08:00
Ben Sully
04fd2487b3
feat(fullstack): add render_handler_with_state (#1687)
* feat(fullstack): add `render_handler_with_state`

When using server functions, the current pattern to access state such as
database connections is to use `register_server_fns_with_handler` on an
Axum router and 'inject' the state into the context provided to the
server function. However, this only affects function calls which go via
the Axum router; SSR renders bypass this, and therefore don't have
access to any state.

This commit adds an alternative `render_handler` which accepts some
additional state. That state is injected into the context in a
similar manner to `register_server_fns_with_handler`. SSR renders can
then proceed to run in the same way as HTTP calls.

* Change state object to 'inject_state' callback

Also add a compiling doctest example.

* remove the explicit for<'a> lifetime

* remove unused assets_path from render_handler_with_context example

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-12-05 14:10:18 -06:00
Evan Almloff
71f7481ded use requestAnimationFrame on desktop 2023-12-04 20:45:26 -06:00
Raul Cesar Teixeira
8149868ebc
Fixed conflict of "--verbose" and "--quiet" flags (#1686)
Co-authored-by: Raul Cesar <raul@zideco.dev>
2023-12-04 18:11:02 -06:00
Felix F Xu
d404ddfccf
fix false notification/rebuild for dx hot-reload (#1684)
* fix false notification/rebuild for dx hot-reload

* Make sure we have permissions and the changed file exists before reading the metadata

---------

Co-authored-by: ealmloff <evanalmloff@gmail.com>
2023-12-03 20:02:30 -06:00
Felix F Xu
a2ca1760c9
Set local_socket_stream to blocking (default) (#1682) 2023-12-02 19:25:27 -06:00
Evan Almloff
a4600294c5 allow users to disable the warning in a feature 2023-12-01 22:17:51 -06:00
Evan Almloff
0a3b794a1c add a warning about wry gnu support to dioxus desktop 2023-12-01 15:56:14 -06:00
zhangzhonglai
c8a9a7b1d5
docs(desktop): fix wrong example code (#1678)
* docs(desktop): fix wrong example code

* stop ignoring doctests in dioxus desktop

---------

Co-authored-by: ealmloff <evanalmloff@gmail.com>
2023-12-01 07:52:20 -06:00
Evan Almloff
a840e012d8 fix clippy 2023-11-29 11:46:18 -06:00
Evan Almloff
be94c69f11 make optional props accept T or Option<T> 2023-11-29 11:38:28 -06:00
Exotik850
e0fbed7eea
Switch outdated tui crate for ratatui (#1671)
* Switch outdated tui crate for ratatui

* fix query docs whoops
2023-11-28 16:54:17 -06:00
Exotik850
694989e826
Add use_const hook (#1667)
* Add use_const hook

* cargo fmt

* clippy allow

* pub fn on get_rc
2023-11-28 09:51:09 -06:00
Exotik850
8e4debb226
remove #[doc(hidden)] from EventHandler (#1665)
* remove #[doc(hidden)] from EventHandler

* Make UseFuture Clone, factor out dependencies field

* Revert "Make UseFuture Clone, factor out dependencies field"

This reverts commit 9ca09e595d.

* fix formatting

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-11-27 15:45:29 -06:00
Exotik850
18fa1e4831
Make UseFuture Clone, factor out dependencies field (#1666) 2023-11-27 15:42:48 -06:00
Evan Almloff
141554a786 remove logging 2023-11-26 09:23:27 -06:00
Evan Almloff
1c0b33cef4 fix hot reloading svg elements 2023-11-26 09:21:27 -06:00
tigerros
d9220d4e42
Add it (#1660) 2023-11-23 16:44:39 -06:00
ealmloff
7a459e15d8
Update packages/hooks/src/use_effect.rs
Co-authored-by: Marc Espín <mespinsanz@gmail.com>
2023-11-21 16:28:06 -06:00
Exotik850
f8ce72c605
Fix outdated lazynode documentation (#1648)
* Fix outdated lazynode documentation

* Use expanded rsx! instead of just rsx macro
2023-11-20 09:49:18 -06:00
Evan Almloff
8cf8f66c27 add more logging to desktop hot reloading 2023-11-20 09:47:03 -06:00
Evan Almloff
0ee21dff1e fix missing item in hot reloading diffing 2023-11-20 09:33:39 -06:00
XiaoZhang
aa284d7e93
Fix grammar typo in comment (#1652) 2023-11-20 08:24:16 -06:00
HJin.me
ff6c7efb41
fix: tailwind.css use absolute path (#1649) 2023-11-19 11:22:54 -06:00
Evan Almloff
3c115bbef7 add into attribute value impl for String 2023-11-19 10:03:18 -06:00
Evan Almloff
83f7ef9a44 add an optional cleanup closure to the use effect hook 2023-11-19 09:58:00 -06:00
Raman Hafiyatulin
098689083d
Related to #1547: use dioxus-cli within a workspace (wildcard-members, real package names) (#1642)
* Related to #1547: use `dioxus-cli` within a workspace

Although the `dx` CLI allows to specify a package name to chose from workspace members,
it does not support workspace members specified as glob-wildcards.
Neither it respects the effective package name, specified in the crate's `Cargo.toml`.

This PR addresses that issue:
- upon `dx build ...`, if the `--bin` CLI-argument is provided, treat the current dir as a workspace;
- search through the workspace's `members`: resolve each of them with `glob`;
- assume that any workspace member has a `Cargo.toml` in it (cargo does it, so it's okay);
- read said manifest, and check the package name in it;
- if found — there we have our sought package.

* Use cargo-metadata to find out the workspace structure

* glob is unused
2023-11-15 15:14:16 -06:00
Evan Almloff
7f4e2af0c4 fix string memory leak 2023-11-13 08:17:08 -06:00
Evan Almloff
a120af33ad Merge branch 'master' into fix-event-bubbling 2023-11-11 17:53:47 -06:00
tigerros
d4b0451d09
Allow warning in necessary functions (#1626) 2023-11-09 12:31:59 -06:00
Evan Almloff
4b4dcbed6a fix error boundary test 2023-11-09 08:43:38 -06:00
Erithax
c2749b3371 rename IntoDynNode and IntoTemplate traits 2023-11-09 02:00:36 +01:00
Joshua Wolfe
8ea7f076e5
Updated server_fn to 0.5.2 (#1620) 2023-11-08 08:33:41 -06:00
Evan Almloff
6141aeb037 polish the throw trait 2023-11-07 18:24:07 -06:00
Jonathan Kelley
42faecf942
Merge pull request #1581 from ealmloff/drop-any-attribute-later
Drop any attribute after rendering
2023-11-06 16:52:30 -05:00
xTeKc
ca556ea9cb
update readme (#1615)
* Fix wasm-bindgen version mismatch

* fixes #1613
2023-11-06 13:32:42 -06:00
Evan Almloff
b9554fd744 add a noop evaluator to the ssr renderer 2023-11-05 08:32:39 -06:00
Marc Espín
c18f911429
Update atom_root.rs (#1611) 2023-11-04 14:04:14 -05:00
Lee TaeWoo
be1decf9f2
fix syntax error at derive Props using const generics (#1607) 2023-11-04 13:53:50 -05:00
Marc Espín
bb5738a0ba
fix: Read value from root when calling AtomState::current() (#1609) 2023-11-04 13:22:47 -05:00
Jonathan Kelley
a3e6d0adca
Merge pull request #1602 from ealmloff/fix-scroll-web 2023-11-02 22:35:16 -04:00
Evan Almloff
7590cf822d fix the scroll event on the web renderer 2023-11-02 21:00:43 -05:00
Evan Almloff
0aa4875ec0 fix formating 2023-11-02 13:59:46 -05:00
Evan Almloff
0f2923a385 fix extension types 2023-11-02 13:17:21 -05:00
Alex Parrill
52fb080193 Use indentation settings in dx fmt and vscode extension
Adds the ability to specify an indent string to public autofmt methods - either
a sequence of spaces or a tab character.

Get the indentation style and size from rustfmt for dx fmt, or from the editor
settings for the vscode extension.

Closes #1595
2023-11-01 17:24:18 -04:00
Evan Almloff
fdec47b90b fix clippy 2023-11-01 08:19:35 -05:00