Commit Graph
7081 Commits
Author SHA1 Message Date
Jonathan Kelley ca585c35ee remove warnings dep from various crates 2025-12-04 18:13:58 -08:00
Jonathan Kelley af8d6aed2f dont bother warning about unmatched ifuncs
we added some logs around unmatched ifuncs, but we actually didn't need them.
this is because ifuncs can be *new* even if there isn't and old corresponding ifunc.
2025-12-04 18:07:32 -08:00
Jonathan Kelley 3656cf2ba6 bump tempfile to beat deprecated warning 2025-12-04 17:57:37 -08:00
Jonathan Kelley 2f7b025eaf cargo formatting 2025-12-04 17:49:53 -08:00
KlemenandJonathan Kelley 3b9558d8eb Fix exit_on_last_window_close for UserWindowEvent::CloseWindow (#5047)
* Fix exit_on_last_window_close for UserWindowEvent::CloseWindow

* fix: unify under close_requested

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-12-04 17:26:32 -08:00
Soheil AlizadehandJonathan Kelley 3fef7a9962 Enable musl target builds with vendored libgit2 (#4991)
* enable musl target builds with vendored libgit2

* move git2 to bottom of list

* also fix dioxus fullstack docs builds

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-12-04 17:04:27 -08:00
fc0fbb2561 Fix dioxus-fullstack::Streaming<T,E> only deserializing one client value (#4975)
* dioxus-fullstack::Streaming: decode multiple client values from Bytes

* small nits

* remove the bidirectional stream since it doesn't work in the browser

* final cleanups

* nits

---------

Co-authored-by: Olivier Kannengieser <okanne@gmail.com>
Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-12-04 16:52:14 -08:00
Ryo Hirayama a220e9aaf6 fix(fullstack): Streaming::into_inner() returning empty stream (#4961)
* fix(fullstack): Streaming::into_inner() returning empty stream

The Streaming struct previously maintained separate input_stream and
output_stream fields, but into_inner() always returned input_stream.
This caused it to return an empty stream on both client and server sides
where data was placed in output_stream.

Consolidate to a single stream field that properly returns the actual
stream data when into_inner() is called.

Also add examples demonstrating bidirectional streaming:
- echo_stream: passes client stream through server unchanged
- transform_stream: transforms client stream on server using filter_map
- Use stream::unfold for cleaner client-side stream generation

Reviewed-by: Claude <noreply@anthropic.com>
Commit-message-by: Claude <noreply@anthropic.com>

* fmt
2025-12-04 15:19:02 -08:00
Jonathan Kelley 946a925f41 disable dma buf on wayland linux (#4957)
* disable dma buf on linux

* allow configuring
2025-12-04 15:18:13 -08:00
Jonathan Kelley 1e48093e22 codesign macos apps (#5055)
* wip

* rollback readme

* change language
2025-12-04 15:15:23 -08:00
Charles ChristoliniandEvan Almloff 3bcb76b21c Resolves #5045: Trim slashes to prevent base path resolution issues in web (#5049)
* issue-5045 Trim slashes to prevent base path resolution issues in web

* Revert "issue-5045 Trim slashes to prevent base path resolution issues in web"

This reverts commit 480cd48d8537a56f57538c21e7cc98b75e8dc8ad.

* This is a more comprehensive approach. No matter how "/" gets set into
DIOXUS_ASSET_ROOT (cli arg, dioxus toml, or env var) it will be
normalized when used.

* Move the trim fix to the locations we set the variable DIOXUS_ASSET_ROOT as
this environment variable is not meant for public consumption.

* pull out trimming into a method

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2025-12-04 14:19:01 -06:00
Amos Wenger e5a98d094d fix(cli): queue file changes that arrive during builds instead of dropping them (#5007)
Previously, when a file change event arrived while a build was in progress
(i.e., client stage was not Success/Failed/Aborted), the event was logged
and silently discarded. This caused issues with tools like stylance,
tailwind watch, or sass --watch that generate output files in response
to source file changes.

The typical failure case:
1. User saves a .module.scss file
2. dx starts rebuilding
3. stylance CLI (watching the same file) regenerates stylance.css
4. dx receives the stylance.css change event but discards it
5. Build completes with stale CSS

Now, file changes that arrive during a build are queued in a
pending_file_changes vector and processed after the build completes.
2025-12-04 14:01:29 -06:00
Evan Almloff 5b8bc358db Override strip even if you explicitly enable it in the passed profile (#5052) 2025-12-03 12:51:34 -05:00
Evan Almloff 386153672e Add a warning for keys after the first node which do nothing (#4978)
* add a warning for keys after the first node which do nothing

* warnings on stable

* better warnings on nightly
2025-11-30 15:29:50 -05:00
Evan Almloff c58526a36b Disable strip setting in profile and manually strip with llvm the build (#4966)
* disable strip setting in profile and manually strip with llvm the build

* remove rustc_llvm

* disable debug if wasm opt will run

* fix clippy

* don't strip if we are splitting with wasm-split

* keep names when running wasm-split
2025-11-30 15:29:12 -05:00
Evan Almloff cce5bf687a fix unresponsive linux windows (#4979) 2025-11-30 15:27:58 -05:00
Jonathan Kelley 88bc12cbb5 fix: handle wbg_cast functions by rewriting patch module (#5026)
* fix: handle wbg_cast functions by rewriting patch module

* clippy

* dont use workspace deps
2025-11-25 13:18:27 -08:00
Jonathan Kelley 1d2dec1101 fix jsvalue 2025-11-24 17:04:44 -08:00
RichardWGNR 488ad0b9c9 Fixing regression due to route preservation #4934 (#4980) 2025-11-24 16:48:42 -08:00
Evan Almloff 702fbac2da Fix layouts in child routers (#4994)
* fix layouts in child routers

* test child route layouts
2025-11-24 16:44:12 -08:00
Vance 5dc22f8132 Fix doctor target strings typo (#5012) 2025-11-24 16:43:44 -08:00
Justin c8552ce7d3 Modified the NativeFileData path function for WebFileData to return the webkitRelativePath property if it exists, or just the file name if it does not exist. (#5015) 2025-11-24 16:42:55 -08:00
Evan Almloff 0dd2cb4b21 always resolve icons relative to the crate, not the cwd of the CLI (#5020) 2025-11-24 16:42:20 -08:00
Nico Burns f7e102a0b4 Add SyncStore and use_store_sync (#5014) 2025-11-22 12:43:52 -08:00
Evan Almloff 84efc00757 Only apply subsystem to final binary, not cdylibs (#5002) 2025-11-21 10:12:49 -08:00
Evan Almloff 75d9ece3af Fix stores deadlock (#4950)
* Fix stores deadlock

* fix clippy

* more clippy fixes

* move panic for reading invalid keys into userland instead of in the
hashmap iter method

* apply the same fixes to btreemap

* return a dropped error instead of panicing if the item has been removed
2025-11-19 12:58:02 -08:00
Tristan Phease 82d7802a81 Add windows config for correct exe file name (#4985) 2025-11-19 12:57:46 -08:00
Alvaro Parker 4fd7fe5511 Update axum-server (#4970) 2025-11-19 12:57:33 -08:00
Soheil Alizadeh 49234deacf Add aria-hidden="true" when hiding the dev toast (#4990) 2025-11-19 12:55:57 -08:00
Evan Almloff 6df20ef3f7 Fix default with optional props (#4995)
* fix default with optional props

* fix core macro tests
2025-11-19 12:33:49 -08:00
Evan Almloff 6e952f27a7 Fix drag and drop serialization (#4997)
* fix drag and drop serialization

* rebuild js
2025-11-19 12:08:18 -08:00
Juan Vásquez b084432a8a Fixed API Docs link (#4974) 2025-11-17 08:09:41 -06:00
Evan Almloff bd2d1de873 Fix marking nodes as dirty when inserting into an existing hashmap entry (#4959)
* Fix marking nodes as dirty when inserting into an existing hashmap entry

* remove logs
2025-11-12 23:13:56 -03:00
Himmelschmidt 317abedece fix: check HTTP status in FileStream::from_response (#4947) (#4948) 2025-11-11 16:56:36 -03:00
Rafael Bachmann 4bd49ab989 Add use_drop to prelude (#4939) 2025-11-11 12:47:38 -03:00
Jonathan Kelley 57e3543c64 fix a few small bugs (#4955)
* add `Patch` endpoint

* fix stack overflow on loader

* add timeout to playwright

* 45 min

* remove macos x86 from runners
2025-11-11 12:37:19 -03:00
Nathan Essex 2a515a3fc9 Use tokio 1.48 in Cargo.toml (#4941) 2025-11-10 12:45:13 +00:00
Jonathan Kelley 03ab7fa482 Release v0.7.1 2025-11-06 16:39:25 -03:00
Jonathan Kelley 50a7757259 fix: use cfg window close behavior (#4928) 2025-11-06 16:12:15 -03:00
Evan Almloff b252dc0620 Fix adding nodes to nested fragments (#4929)
* Fix adding nodes to nested fragments

* add note about test
2025-11-06 15:48:11 -03:00
Jonathan Kelley 1236296ea6 feat: use async fd when using tokio (#4927)
* feat: use async fd when using tokio

* whoops fix ios
2025-11-06 14:55:59 -03:00
Jonathan Kelley 75bb61ea67 fix: use dioxus query, not axum (#4926) 2025-11-06 14:47:27 -03:00
Jonathan Kelley b331734027 fix: serverfn endpoint for anon serverfns (#4920) 2025-11-05 17:19:47 -03:00
Jonathan Kelley 6a50f1ba84 add with_on_window_ready to allow modifying window before webview (#4919)
* wip

* cleanups
2025-11-05 17:00:58 -03:00
Jonathan Kelley 06c5a4499f fix cargo.lock 2025-11-05 15:57:28 -03:00
Jonathan Kelley 6824887856 add platform flag (#4918) 2025-11-05 15:55:20 -03:00
Nico BurnsandJonathan Kelley d61848609f Make dioxus-native work on iOS simulator (#4876)
* Make dioxus-native work on iOS simulator

Signed-off-by: Nico Burns <nico@nicoburns.com>

* Bump dioxus-native to v0.7.1

Signed-off-by: Nico Burns <nico@nicoburns.com>

* Update package version to use workspace versioning

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-11-05 15:22:02 -03:00
Javier E. 41f68582e9 Fix FileStream.file_name() (#4875) 2025-11-05 15:09:04 -03:00
Craig 2117c3d4e9 Note "d" for debug (#4882)
* Note "d" for debug

* Fix layout
2025-11-05 15:08:29 -03:00
Ken aka Frosty 85d58d3a48 Simple but critical fix for fullstack server fn handling (#4891)
Getting full panics here in prod: 
thread '<unnamed>' (23) panicked at /usr/local/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dioxus-fullstack-0.7.0/src/magic.rs:554:22:
called `Result::unwrap()` on an `Err` value: Response { status: 500, version: HTTP/1.1, headers: {"content-type": "application/json"}, body: Body(UnsyncBoxBody) }

Could be triggered by something as simple as a client choosing to send formdata-style body instead of JSON. (I discovered this because exactly that was happening; not maliciously, but because of the upgrade from 0.6.3 to 0.7). 

As far as I can tell, this was just meant to be an early return with a failure case of the Response, mapped from the ServerFnError. The .unwrap() left there was probably just an erroneous artifact from the various waves of the development process. 

If this is incorrect or I've missed something, please let me know! But I believe this is a very simple fix for an otherwise critical problem
2025-11-05 15:04:00 -03:00