Commit graph

2962 commits

Author SHA1 Message Date
Evan Simkowitz
de87ba6548
Update all uncommented commands to remove actions-rs (#1366)
* Update all uncommented commands to remove actions-rs (#1)

* install target in toolchain action

* add linux target explicitly

* try latest

* fix install
2023-08-22 19:48:03 -05:00
Jonathan Kelley
a38860e4f2
Merge pull request #1345 from Demonthos/fix-borrowed-props
Constrain Props lifetime to parent, not child scope lifetime
2023-08-22 11:50:06 -07: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
7fb6dccc0c fix docs.rs build for desktop 2023-08-21 10:22:13 -05:00
Bruce Mitchener
d8704a0447
deps: Update keyboard-types to 0.7. (#1378) 2023-08-21 09:28:32 -05:00
ealmloff
b2f9430689
Merge branch 'DioxusLabs:master' into fix-borrowed-props 2023-08-19 13:35:24 -05:00
wooden-worm
f652474a6e
FileEngine: expose native file types on different platforms (#1258)
* Get native file

* Correct visibility
2023-08-17 08:03:56 -05:00
Vinicius Gobbo Antunes de Oliveira
fa39408d58
If mkcert not enabled, require cert_path and key_path to be specified or error. (#1342) 2023-08-17 07:58:56 -05:00
Jonathan Kelley
a2df9c2e89
Merge pull request #1364 from Demonthos/fix-core-leak
Fix leak in core because of bump allocated Vec
2023-08-15 13:54:00 -07:00
Jonathan Kelley
fee206ab3f
Merge pull request #1351 from Demonthos/fix-context-in-lists
Fix the context API in lists
2023-08-15 13:39:49 -07:00
Evan Simkowitz
3e24b3d34a
Publish CLI binaries for cargo-binstall (#1358)
* add test release pipeline

* fix

* debug

* oops forgot checkout

* debug

* fix if

* blah

* fix working dir

* fix cargo build path

* add publish step

* add cache

* fix path

* use package instead of working dir

* fix cache path

* fix typo in checksum

* fix upload artifact loop

* add more comments

* add binstall metadata

* test simplified action

* fix target

* remove dispatch

* fix permissions

* remove mac arm config

* update comments

* update comment

* replace unmaintained actions-rs
2023-08-15 13:41:32 -05:00
Daniel Albl
555f4d5834
Add 'with' and 'with_mut' to 'use_shared_state' (#1353) 2023-08-15 13:27:19 -05:00
Evan Almloff
6876d2da1c fix clippy 2023-08-15 13:22:06 -05:00
Evan Almloff
b8600d5144 fix tests 2023-08-15 13:11:03 -05:00
Evan Almloff
943c76b1da Fix memory leak in core 2023-08-15 12:19:05 -05:00
Evan Almloff
2d5a4f82bf Fix the context API in lists 2023-08-13 08:47:27 -05:00
Steven Pecht
1ab5a03aef
Use to identify cargo build artifact if present (#1344) 2023-08-12 19:25:17 -05:00
Evan Almloff
d559fdaeab fix borrowed props with temp values 2023-08-12 19:19:46 -05:00
Evan Almloff
ee2619abfd Merge remote-tracking branch 'main/signals' into signals 2023-08-10 17:20:27 -07:00
Evan Almloff
18d255decc add serde feature to signals 2023-08-10 17:17:25 -07:00
ealmloff
39ab39ac56
Merge branch 'DioxusLabs:master' into signals 2023-08-10 16:31:00 -05:00
Evan Almloff
80ac1a99af fix miri 2023-08-09 14:20:46 -07:00
Evan Almloff
f91eeccca7 add compile test for unsound case 2023-08-09 10:49:47 -07:00
Evan Almloff
b4983706ac fix variance on components 2023-08-09 10:26:59 -07:00
Dan Lock
92a8669e14
Make launch functions pub (#1288)
* Make launch functions pub

* add docs to web, desktop, and server launch functions

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-08-09 11:26:50 -05:00
gmorenz
2a32271fa0
Set response headers from response, not request, parts (#1328) 2023-08-08 21:04:15 -05:00
Evan Almloff
3f31b9de43 fix tests 2023-08-08 15:13:02 -07:00
Evan Almloff
24c626b306 fix clippy 2023-08-08 13:43:57 -07:00
Evan Almloff
4ee4cf23d3 restore a few unneeded breaking changes 2023-08-08 13:37:29 -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
25f02904e9 make clippy happy 2023-08-08 11:39:36 -07:00
Evan Almloff
e43bdd815f fix test failures 2023-08-08 11:27:29 -07:00
Evan Almloff
e2c08a79ae fix signal readme example 2023-08-08 11:12:08 -07:00
Evan Almloff
aaded7981f fix boolean attribute rendering in SSR 2023-08-08 10:56:41 -07:00
Evan Almloff
d1603238c4 Fix events with a text node target 2023-08-08 09:49:04 -07:00
Evan Almloff
292b3367dd create some more compelling examples 2023-08-07 18:20:03 -07:00
Evan Almloff
0dc602eb32 Merge branch 'master' into signals 2023-08-07 18:02:19 -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
280d094f67 document generational box 2023-08-07 17:32:25 -07:00
Evan Almloff
c32d6dc8cb Handle oninput for select elements 2023-08-07 17:19:16 -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
6ca170453b handle virtual dom switching 2023-08-07 14:59:58 -07:00
Evan Almloff
ddbe913e79 make signals non-breaking 2023-08-07 14:50:36 -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
b0d499036a make future handling functions global 2023-08-07 11:16:22 -07:00
Evan Almloff
65102b70c7 return more useful messages when a server function errors 2023-08-07 11:09:51 -07:00
Brian Donovan
a025617db3
refactor(cli): use more semantic Instant::elapsed (#1307)
Plus, one of these was incorrectly subtracting the end time from the start time.
2023-08-07 11:08:51 -05:00
Jonathan Kelley
56c3dcc437
Merge pull request #1301 from eventualbuddha/chore/cli/remove-unused-fn
chore(cli): remove unused function
2023-08-06 23:09:28 -07:00
Dylan Blokhuis
24df4e15d9
spelling (#1308) 2023-08-06 11:42:36 -05:00
Brian Donovan
03e02591ec
fix(cli): allows extracting files without separate directory entries
Some zip files do not list directories separately from files. For example, a zip might contain `dir/file.txt` without a corresponding entry for just `dir/`. This should be okay, so we just create the leading paths for the files we extract as necessary.

Also adds tests for the expected and dangerous path cases of `extract_zip`.
2023-08-04 21:28:09 -07:00
Brian Donovan
14e7c50478
fix(cli): prevent "zip slip" vulnerability in tool extract
Using the name directly from a zip archive's entry and writing to it is a potential security vulnerability. More information about the vulnerability can be found here: https://security.snyk.io/research/zip-slip-vulnerability and here https://docs.rs/zip/latest/zip/read/struct.ZipFile.html#warnings.

It looks like the previous version maybe tried to remove `\` characters to prevent this, but only in directory paths?
2023-08-04 20:02:07 -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
b3fbbba711 fix signals in futures 2023-08-04 17:25:40 -07:00
Evan Almloff
a6f611eccf fix subscriptions in events 2023-08-04 17:23:57 -07:00
Evan Almloff
07ed3e67dd add check_generation feature flag 2023-08-04 15:46:04 -07:00
Evan Almloff
0032f7e2af fix miri 2023-08-04 15:23:09 -07:00
Brian Donovan
7a7397bbb4
chore(cli): remove unused module (#1302)
It seems this was replaced by the `plugin.rs` module in 6cce4b9f4d.
2023-08-04 17:01:04 -05:00
Brian Donovan
a77ff1c820
docs(cli): update subcommand comments (#1303)
A bunch of these were copy-pasted from `build`. This commit updates them to be the same as what their `dx help` string is.
2023-08-04 17:00:41 -05:00
Brian Donovan
5c62947835
refactor(cli): move check module alongside others (#1304)
There was no reason for `check` to be defined as `check/mod.rs` when all the others were at the top level e.g. `serve.rs`.
2023-08-04 17:00:19 -05: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
0be5dbe715 fix the context API 2023-08-04 14:42:19 -07:00
Evan Almloff
2b6b3b67b1 move dioxus copy into a separate package 2023-08-04 14:28:55 -07:00
Evan Almloff
998f9e0d00 remove static bound from props 2023-08-04 14:24:49 -07:00
Evan Almloff
a2c7b69a1d set the scope stack correctly 2023-08-04 14:19:59 -07:00
Evan Almloff
b09e528aaa fix recursive runtime drop impl 2023-08-04 14:14:56 -07:00
Evan Almloff
cb4c46154d fix scope context 2023-08-04 14:12:59 -07:00
Evan Almloff
04cdb14e5b improve signal copy runtime 2023-08-04 13:53:05 -07:00
Brian Donovan
63bb5cc758
chore(cli): remove unused function
I believe that technically this function is part of the public API via `dioxus_cli::cli::cfg::parse_public_url`. However, I don't see any evidence that this function is actually used inside or outside this crate. The last use within the crate was removed in January 2022 (9bb10c65a3).
2023-08-04 13:52:49 -07:00
Brian Donovan
8f93ff3747
docs(hooks): fix typos (#1299)
I'm not totally sure how the sentence was supposed to read, but removing "state" from "It state" seemed to work. Also, "it's" is "it is" and not possessive, so I fixed that.
2023-08-04 15:13:02 -05:00
Evan Almloff
61a3b05616 fix parsing spread routes 2023-08-04 12:06:17 -07:00
Brian Donovan
6d154b5072
Minor Proxy Improvements (#1289)
* fix(serve): provide a clear error with pathless proxy URLs

Without this, `dx serve` panics with this message:

```
Paths must start with a `/`. Use "/" for
 root routes
 ```

 That's not very clear. Instead, we can detect this situation and provide a better error message:

```
Error: 🚫 Serving project failed: Failed to establish proxy: Proxy backend URL must have a non-empty path, e.g. http://localhost:8080/api instead of http://localhost:8080
```

* docs(config): correct format for `web.proxy`
2023-08-04 13:44:56 -05:00
Brian Donovan
50230b6f71
build(web): fix default-features warning (#1296)
`cargo build` would print this warning:

```
warning: dioxus/packages/web/Cargo.toml: `default-features` is ignored for dioxus-html, since `default-features` was not specified for `workspace.dependencies.dioxus-html`, this could become a hard error in the future
```

Since it's being ignored anyway and that doesn't seem to be causing problems, I figured I'd remove it and get rid of the warning.
2023-08-04 12:51:17 -05:00
Brian Donovan
ab1d64bc4a
docs(cli): fix typo (#1294)
"tripple" should be "triple".
2023-08-04 12:49:31 -05:00
Brian Donovan
e98e773186
doc: fix typo (#1287) 2023-08-03 16:32:14 -05:00
Jonathan Kelley
88cca9c949
Merge pull request #1285 from Demonthos/flexable-server-function-features
Make server function features flexible
2023-08-03 12:16:32 -07:00
Evan Almloff
d33ea087d0 make server function features flexible 2023-08-03 11:13:43 -07:00
Evan Almloff
97eedd22c5 fix fullstack docs building 2023-08-03 10:45:50 -07:00
Christian Albrecht
c9790860a5
fixed "http_equiv" in meta to generate "http-equiv" instead of "http_equiv" (#1277) 2023-08-02 11:25:41 -05:00
Evan Almloff
f7eba62a5d Merge branch 'master' into update-scroll-history-lazy 2023-08-01 10:47:04 -07:00
Evan Almloff
549db35de3 update scroll history lazily when you leave a page 2023-08-01 10:45:54 -07:00
Jonathan Kelley
fe1ce3bbe7
Merge pull request #1273 from Demonthos/dedup-history
Deduplicate route history
2023-08-01 10:35:20 -07:00
Jonathan Kelley
25a2abfa08
Merge pull request #1274 from Demonthos/fix-navigator
Fix navigator push/replace route
2023-08-01 10:35:01 -07:00
ealmloff
0c093964bc
Merge branch 'DioxusLabs:master' into dedup-history 2023-08-01 12:32:46 -05:00
ealmloff
61ce3dd6b7
Reject all external routes when parsing a route (#1272)
* reject all external routes when parsing a route

* fix children routers
2023-08-01 12:29:35 -05:00
Evan Almloff
4062e232d9 fix navigator 2023-08-01 10:21:16 -07:00
Evan Almloff
98de423d99 deduplicate route history 2023-08-01 10:16:19 -07:00
Jonathan Kelley
39e89c1fac
Bump crate versions, fix any publish errors 2023-07-31 18:49:54 -07:00
Jonathan Kelley
f80c3c9ffb
Bump core and interpreter 2023-07-31 18:02:23 -07:00
Jonathan Kelley
8a875acdd2
Adjust versions, add authors, move server macro to top level 2023-07-31 17:59:36 -07:00
Jonathan Kelley
09cce6bdfb
Merge pull request #1270 from Demonthos/add-authors
Add authors to all crates
2023-07-31 17:38:44 -07:00
Jonathan Kelley
456b553c93
Merge pull request #1230 from Demonthos/add-computed
Add computed hook
2023-07-31 17:37:47 -07:00
Jonathan Kelley
59016007f2
Merge pull request #1251 from DioxusLabs/make-ssr-state-public
Make SsrState public
2023-07-31 17:37:35 -07:00
Evan Almloff
3eab363e51 Add authors to all crates 2023-07-31 17:30:18 -07:00
Jonathan Kelley
f704d81519
Merge pull request #1253 from Demonthos/fix-map-route
Fix finding files with a custom map_path
2023-07-31 17:28:03 -07:00
Jonathan Kelley
8cf59fe52e
Merge pull request #1265 from Demonthos/dioxus-web-features
Create default enabled features for large web events
2023-07-31 17:14:07 -07:00
Jonathan Kelley
e1dcc335c0
Merge pull request #1263 from Demonthos/builder-launch-fullstack
Switch to launch builder instead of macro for fullstack
2023-07-31 11:44:36 -07:00
Evan Almloff
45d386810b create features for large web-sys events/types 2023-07-28 15:38:07 -07:00
Evan Almloff
d7f7116ce3 clean up the API a bit 2023-07-28 14:17:52 -07:00
Evan Almloff
fcb993a2cb don't spawn a new runtime every request 2023-07-28 13:14:26 -07:00
Evan Almloff
cabeacfcee fix formatting 2023-07-28 13:04:56 -07:00
Evan Almloff
9f891f9478 switch to launch builder instead of macro for fullstack 2023-07-28 12:58:34 -07:00
ealmloff
cfd62e274e
Make deprecated use router (#1260)
* make router props expansion better

* fix router data fields

* make a deprecated use_router hook
2023-07-27 10:32:23 -07:00
Jonathan Kelley
5e3451a6f2
Quiet cargo warnings 2023-07-26 21:02:39 -07:00
Jonathan Kelley
694fc22acb
Merge pull request #1255 from Demonthos/core-private
Make more of core private
2023-07-26 18:31:29 -07:00
Jonathan Kelley
418c03e2cd
Merge pull request #1252 from Demonthos/non-generic-link
Remove autogenerated functions/components from the routable macro
2023-07-26 18:11:32 -07:00
Jonathan Kelley
4b96b00591
Merge pull request #1254 from Demonthos/add-bundle-command
Create cli bundle command
2023-07-26 16:54:59 -07:00
Evan Almloff
20296b5038 fix some examples that used the private API 2023-07-26 16:50:04 -07:00
Evan Almloff
2d51a1c4f2 make more of core private 2023-07-26 16:17:48 -07:00
Evan Almloff
7bf0926938 use tauri bundle 1.2 2023-07-26 12:53:00 -07:00
Evan Almloff
489338d642 create cli bundle command 2023-07-26 12:40:50 -07:00
Evan Almloff
d2ec27e761 fix clippy 2023-07-26 11:29:34 -07:00
Evan Almloff
715289c3de fix finding files with a custom map_path 2023-07-26 11:16:31 -07:00
Evan Almloff
cc94711d62 rename generic navigator to navigator 2023-07-26 11:09:40 -07:00
Evan Almloff
947a153347 make navigator non-generic 2023-07-26 11:08:45 -07:00
Evan Almloff
0ebcb5f1be remove some logging 2023-07-26 10:28:49 -07:00
Evan Almloff
e7a9161066 fix link component 2023-07-26 10:18:39 -07:00
Evan Almloff
5f0dd3af3e it almost lives? 2023-07-25 18:14:48 -07:00
Evan Almloff
a4ed9bc0ef make ssrstate public 2023-07-25 15:29:40 -07:00
Evan Almloff
c19420cb29 fix root component suspense 2023-07-25 12:51:12 -07:00
ealmloff
d637ef187c
fix all broken examples (#1248) 2023-07-25 14:30:08 -05:00
Jonathan Kelley
6751d5941b
Merge pull request #1215 from eventualbuddha/feat/check/rules-of-hooks
feat(check): adds `dx check`
2023-07-25 11:57:02 -07:00
Brian Donovan
0e841f8411
fix(check): allow hook calls inside closure hooks 2023-07-24 18:58:19 -07:00
Jonathan Kelley
7d4361a701
Merge pull request #1244 from Demonthos/is-decendant
Add is_child_of function to Routable
2023-07-24 17:36:30 -07:00
Evan Almloff
61dc549ba1 Make new enum router less breaking 2023-07-24 11:57:56 -07:00
Evan Almloff
1ddda0cc17 fix clippy 2023-07-24 11:30:52 -07:00
Evan Almloff
6760c2f961 add doc example 2023-07-24 11:22:59 -07:00
Evan Almloff
440d2922be add is_child_of function to Routable 2023-07-24 10:33:55 -07:00
Marc Espín
fad3272afb
fix: Update use_coroutine example (#1237) 2023-07-24 11:32:32 -05:00
Brian Donovan
dc7e1a5f13
docs(clean): fix copy-paste docs from build (#1240) 2023-07-24 11:32:13 -05:00
Brian Donovan
420bc39ecc
docs(cli): re-sync dx --help output 2023-07-23 18:57:23 -07:00
Brian Donovan
8f8627af18
attempt to hoist prettier-please dependencies 2023-07-23 16:06:55 -07:00
Brian Donovan
1531893a45
improve test coverage and display output 2023-07-23 16:06:55 -07:00
Brian Donovan
899d9562b3
fix(check): colorize line numbers a la rustc 2023-07-23 16:06:55 -07:00
Brian Donovan
eb4438ef74
docs(check): update README
It was just copy-pasted from `dioxus-autofmt`.
2023-07-23 16:06:55 -07:00
Brian Donovan
2c2534d1cc
feat(check): adds dx check
At the moment this only checks the Rules of Hooks, ensuring that hook functions (i.e. `use_*`) are being called as expected.

https://dioxuslabs.com/docs/0.3/guide/en/interactivity/hooks.html

Closes #1202
2023-07-23 16:06:55 -07:00
Marc Espín
915e79e3be
fix: Use correct cfg for file_watcher feature in dioxus-hot-reload (#1238)
* fix: Use correct cfg for file_watcher feature in dioxus-hot-reload

* Update file_watcher.rs

* Update lib.rs

* fmt
2023-07-23 09:29:59 -05:00
Jonathan Kelley
0097b82490
Merge pull request #1234 from Demonthos/fix-static-hydrated
Fix route prerendering
2023-07-21 16:57:28 -07:00
Jonathan Kelley
6d2163bfcb
Merge pull request #1233 from Demonthos/log-rebuild-errors
Log errors when a component fails to render
2023-07-21 15:56:44 -07:00
Miles Murgaw
6210c6fefe
Convert use_eval to use send/recv system (#1080)
* progress: reworked

don't run this, it'll kill your web browser

* feat: use_eval but with comms

* revision: async recv & recv_sync

* revision: use_eval

* revision: standard eval interface

* revision: use serde_json::Value instead of JsValue

* revision: docs

* revision: error message

* create: desktop eval (wip)

* fix: desktop eval

* revision: wrap use_eval in Rc<RefCell<_>>

* fix: fmt, clippy

* fix: desktop tests

* revision: change to channel system

- fixes clippy errors
- fixes playwright tests

* fix: tests

* fix: eval example

* fix: fmt

* fix: tests, desktop stuff

* fix: tests

* feat: drop handler

* fix: tests

* fix: rustfmt

* revision: web promise/callback system

* fix: recv error

* revision: IntoFuture, functionation

* fix: ci

* revision: playwright web

* remove: unescessary code

* remove dioxus-html from public examples

* prototype-patch

* fix web eval

* fix: rustfmt

* fix: CI

* make use_eval more efficient

* implement eval for liveview as well

* fix playwright tests

* fix clippy

* more clippy fixes

* fix clippy

* fix stack overflow

* fix desktop mock

* fix clippy

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-07-21 17:36:25 -05:00