Commit Graph
79 Commits
Author SHA1 Message Date
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
Jonathan Kelley fe7df0c6a5 Merge pull request #1697 from ealmloff/hot-reload-temp-dir 2023-12-07 09:18:10 -08:00
Evan Almloff 9a13df2c73 move hot reload socket into the target directory 2023-12-07 07:00:59 -06: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 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
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
Raul Cesar TeixeiraandRaul Cesar 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 Xuandealmloff 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 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
HJin.me ff6c7efb41 fix: tailwind.css use absolute path (#1649) 2023-11-19 11:22:54 -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
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 51f342417a add examples to the default watch path 2023-10-30 14:41:41 -05:00
Falco Hirschenberger d4e6876ff6 Silence desktop build outputs from cargo (#1584)
Silence additional disturbing output from cargo in desktop builds
2023-10-27 08:29:43 -05:00
Evan Almloff 9f729dd6de fix clippy 2023-10-14 14:32:08 -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
Marc Espín c8c4e85e65 feat: Remove unused deps (#1447)
* feat: Reduce dioxus-cli deps

* remove more unused deps
2023-10-09 10:14:46 -05:00
Timothy Mertz cde1e886d6 cli: Add ability for autofmt to read stdin (#1529)
This change adds the ability for autofmt to read from stdin by using
'-f -' or '--file -'
2023-10-09 08:20:31 -05:00
Sridhar RatnakumarandEvan Almloff 0d7bc86250 cli: Log connection errors during dx serve in desktop apps (#1515)
* cli: Log connection errors during `dx serve` in desktop apps

* add a note about the dioxus CLI

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-10-09 07:56:23 -05:00
Leonard 459f24d5e9 Clarify where serve warnings come from (#1524) 2023-10-05 13:05:14 -05:00
Sridhar Ratnakumar 91752e7220 cli: Fix typo, resouces (#1516) 2023-10-04 08:20:13 -05:00
Leonard 07613c806b Fix #1367 (#1471)
* Bump cargo_toml to 1.16.0

* Format
2023-09-18 18:51:04 -05:00
Evan Almloff 49a127b31e deduplicate serve code with hot reloading in the CLI crate 2023-09-09 16:18:52 -05:00
ealmloff d5d974d5a3 Bump the dioxus-cli to 0.4.1 (#1424)
* bump the dioxus-cli version

* bump DIOXUS_CLI_VERSION constant

* Merge branch 'master' into bump-cli
2023-09-04 15:10:27 -05:00
YuKun LiuandEvan Almloff 2cfa0e4ea9 fix: prettier_build unavailabe (#1410)
Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-09-02 18:31:34 -05:00
fanyang 4511b37da8 Fix cli compile error due to tauri bundler adding fields (#1416)
New fields for debian settings:

- desktop_template

For NSIS settings:

- custom_language_files
- template
2023-09-02 06:44:31 -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
Steven Pecht 1ab5a03aef Use to identify cargo build artifact if present (#1344) 2023-08-12 19:25:17 -05: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
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
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
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 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 ab1d64bc4a docs(cli): fix typo (#1294)
"tripple" should be "triple".
2023-08-04 12:49:31 -05: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
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 e7a9161066 fix link component 2023-07-26 10:18:39 -07: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 dc7e1a5f13 docs(clean): fix copy-paste docs from build (#1240) 2023-07-24 11:32:13 -05: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
Jonathan Kelley 1ed277154a Merge pull request #1210 from Demonthos/desktop-serve-cli
Move desktop hot reload into the CLI
2023-07-19 19:48:09 -07:00
Evan Almloff b6ea722d94 fix some edge cases around multiline attributes 2023-07-19 16:59:20 -07:00
Jonathan Kelley 90d23714da Fix clippy around pathbuf 2023-07-19 13:44:38 -07:00