Commit Graph
100 Commits
Author SHA1 Message Date
Robert DeatonandRobert Deaton df4fe37180 feat: Enable plumbing through keep_names to wasm build for better stack traces (#5296)
Co-authored-by: Robert Deaton <me@rdeaton.space>
2026-02-12 17:08:29 -08:00
Jonathan Kelley 33159f366a workspace hot-patching, dynamic tls fixups (#5291)
* Refactor cross-tls-crate-dylib configuration and update test output

- Commented out the crate-type configuration in Cargo.toml for cross-tls-crate-dylib.
- Modified the initial value of the thread-local variable FOO from 2.0 to 1.0 in the main.rs test file.
- Updated the output message in main.rs to be more descriptive.
- Added a new field `tls_fixups` to the JumpTable struct in subsecond-types, which will facilitate future runtime TLS sharing.

* ws hotpatch!

* remove old file

* undo core change

* svh

* Enhance rlib path resolution by incorporating -C extra-filename handling

* remove obj diffing

* small cleanups

* obj cache as files

* simplify

* simplify a bit

* dont bother round tripping cache

* extract to helper

* cleanup `build` function

* dont round-trip modified_crates

* make sure to wipe between full

* bit of a cleanup

* use explicit naming

* compact extra method

* fix temp cleanup

* fix warnign

* cleanup

* fmt, clippy
2026-02-10 22:37:16 -08:00
Jonathan Kelley 9b0d380765 update ext vo 0.7.3 2026-01-25 13:54:26 -08:00
Jonathan Kelley b6793dc2b4 fix more whitespace issues in rsx autofmt nested rsx blocks (#5257)
* trim

* works a bit better

* almost...

* it work?

* yay!

* codex tried a thing

* move

* reduce to 1

* remove search

* simplify

* adjust test case

* clippy
2026-01-24 22:32:55 -08:00
Alexey ceb82612e0 fix: Handle HTTP errors in FromResponseParts (#5243)
* fix: Handle HTTP errors in FromResponseParts

Check for non-success status codes before attempting to decode response
parts. For error responses, parse the JSON error payload and convert it
to a ServerFnError::ServerError.

Also make ErrorPayload fields pub(crate) to allow internal access.

* fixed test name
2026-01-23 13:39:50 -08:00
Matouš VolfandJonathan Kelley 7a7f5fb719 fix: replace unwraps with errors in fullstack WebSockets (#5248)
* fix: replace unwraps with errors in fullstack WebSockets

* refactor: pull the conversions to fullstack `RequestError` up from the core crate

* no breaking changes

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2026-01-23 13:38:32 -08:00
Antti Jalomäki 4070d0c8bd docs: fix grammar and typos in comments and documentation (#5254)
* docs: fix grammar and typos in comments and documentation

* docs: use British English style for e.g. and i.e. (no trailing comma)
Changed from American English style (e.g.,) to British English style (e.g.)
for consistency with the rest of the codebase."
2026-01-23 13:30:00 -08:00
Christopher Serr 409d8358b6 Fix android_runtime_lock not being cfg guarded (#5244)
The `android_runtime_lock` wasn't properly `cfg` guarded in various
places, so it got included on all operating systems, not just Android by
accident. This causes deadlocks when trying to use `muda`.
2026-01-20 14:42:45 -08:00
Marc Espin d01a820b6f chore: Remove Freya from README (#5239) 2026-01-18 21:06:01 +00:00
Jonathan Kelley 3d9c10aa86 cargo fmt 2026-01-16 20:14:20 -08:00
Jonathan Kelley cb0b7eb737 fix playwright test by adding cache header via release mode 2026-01-16 20:13:44 -08:00
Jonathan Kelley 97a670af0f remove doctests for mangnais 07 2026-01-16 20:00:57 -08:00
Jonathan Kelley 22b06badde release v0.7.3 2026-01-16 19:51:29 -08:00
Jonathan Kelley 58eea846b9 use a better time format than raw humantime 2026-01-16 18:22:58 -08:00
Shoshána Abigail 10eda3a794 respect tailwind_input when detecting tailwind v3 or v4 (#5151)
* respect tailwind_input when detecting tailwind v3 or v4

* cargo fmt fixes
2026-01-16 18:01:00 -08:00
Fu WangandJonathan Kelley 128a9d9fad Enhance CLI Build Duration Output with Human-Readable Formatting (#4591)
* Use humantime for build duration formatting in CLI

Replaces manual millisecond formatting with humantime::format_duration for improved readability of build duration logs. Adds humantime as a dependency in Cargo.toml.

* Format build duration with millisecond precision

Changed build duration logging to use millisecond precision instead of default formatting to avoid microsecond/nanosecond noise.

* Refactor duration formatting to use helper function to reduce code duplication.

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2026-01-16 17:57:14 -08:00
Amar Sood 8c1911c268 Use ServeDir for fullstack dev static assets (#4983)
Without this patch, simply instantiating the Jumpstart template in fullstack mode and making _any_ hot-patch change would result in a 404 on fetch and a client WASM panic.

This changes the fullstack server static asset routing so that, in debug builds, directories under the `public` tree (including `/wasm`) are served via `tower_http::services::ServeDir` instead of being eagerly expanded into a fixed set of routes at startup.

Today `dioxus_server::DioxusRouterExt::serve_static_assets` walks the `public` directory once at launch via `serve_dir_cached`, registering a separate route for every file it sees. That works fine for pre-baked assets, but it breaks down when dx/subsecond writes new files into `public` during a dev session. In a fullstack web app, wasm hot patches are emitted as timestamped files like `public/wasm/lib<name>-patch-<ts>.wasm`; the CLI tells the browser to fetch `/wasm/lib<name>-patch-<ts>.wasm` immediately, but the fullstack server never registered a route for that path, so the fetch returns 404 even though the file already exists on disk.

Non-fullstack dev builds do not have this problem because the dx devserver serves `public` directly using `ServeDir`, which consults the filesystem at request time. Fullstack dev, by contrast, proxies asset requests to the inner server, and that server only knows about whatever was in `public` at the moment its router was built.

This change narrows the gap by making `serve_static_assets` dynamic for directories in debug builds while preserving the existing behaviour elsewhere:

- For debug builds (`cfg(debug_assertions)`), `serve_dir_cached` now uses `ServeDir::new(&path)` when it encounters a directory. This means `/wasm`, `/assets`, and any other subdirectories are backed by a live directory listing, so new files like wasm patch modules and freshly emitted hashed CSS become immediately visible without restarting the fullstack server or rebuilding its router.
- For non-debug builds, the previous behaviour is preserved: `serve_dir_cached` continues to recurse and register one route per discovered file, still using `ServeFile::precompressed_br()` and `cache_response_forever` for hashed, cache-busted filenames.

This is a no-op for release builds, but in debug fullstack it's necessary for wasm hot patches and other dynamically-created assets that could 404 until the server happened to be restarted. It also aligns fullstack dev behaviour more closely with the plain web devserver, which already uses `ServeDir` for the `public` tree.
2026-01-16 17:42:27 -08:00
Amar SoodandJonathan Kelley 8b427ddf16 signals: Rebuild stale global cache entries automatically (#4809)
* signals: Rebuild stale global cache entries automatically

* remove log

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2026-01-16 17:05:09 -08:00
Tamaro SkaljicandEvan Almloff 07b9dcb3a7 Fix crates.io repository URLs and READMEs for subsecond and manganis crates (#5013)
* Update repository URL and add README reference

* Fix repository URL and add readme field

Updated repository URL to point to the correct path and added a readme field.

* Update repository URL in Cargo.toml

* Update repository URL in Cargo.toml

* Update repository URL and add readme path

* Fix repository URL in Cargo.toml

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2026-01-16 16:58:49 -08:00
Jonathan Kelley 794c12443f tweak log messages (#5174) 2026-01-16 16:58:21 -08:00
Jonathan Kelley ef4d596885 fix playwright flakey test, upgrade to blacksmith runners for more things, cargo update to fix rfd build (#5228)
* attempt fix for flakey playwright test

* fix link

* disable blitz-shell file dialog

* remove rfd integration in native for now

* undo file-dialog pass-thru in anticipation of blitz-shell update

* upgrade to blacksmith

* blitz-shell bump

* use faster runner
2026-01-16 16:52:41 -08:00
Mateusz Maćkowski 1b1e3e3e17 fix: serve_subsecond looping when devtools do not connect (#5158)
Currently when `serve_subsecond` is used and the user doesn't run the
app with `dx serve --hot-patching`, the function causes the future to be
constantly recreated in a loop. This fixes the behavior so that the
future is awaited once and then `serve_subsecond` returns.
2026-01-16 16:44:35 -08:00
Rhaskia adfd6a12f8 add android_sync_lock to wry event handler to avoid refcell errors (#5190)
* add android_sync_lock to wry event handler to avoid refcell errors

* rustfmt

* move sync lock to apply_event
2026-01-16 16:37:28 -08:00
Coco d6629acd84 use $CARGO_HOME for installation if set (#5219) 2026-01-16 16:33:45 -08:00
Nico Burns 35e289fe28 Fix more examples to work with dioxus-native (#5179)
* Enable native for hotdog, file-explorer, and bluetooth-scanner examples

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

* Fix crash in calculator example

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

* Add config macro for native

* Add Config struct to dioxus-native

* Re-export dioxus-native as dioxus::native

* Fix calculator example to work with dioxus-native

* Fix calculator_mutable example to work with dioxus-native

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
2026-01-17 00:32:45 +00:00
Marius Ileana 8aefb2a1e2 fix(cli): showDXToast on reload (#5202)
Basically, guarding the elements against nulls. It uses the most explicit and safe version of a JS implementation.

Closes #5175
2026-01-16 16:30:29 -08:00
kevinwrightandJonathan Kelley b83bff76e6 Full file paths in drop handlers (#5211)
* Use native drop handler to push full file paths into element drop handler

* Remove debug code

* fmt

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2026-01-16 16:10:41 -08:00
hideselfviewandDmitry Minkovsky 3a60140dff fix: prevent dx fmt from adding trailing whitespace to blank lines (#5224)
This fixes a conflict between dx fmt and cargo fmt (rustfmt). Previously,
dx fmt would add indentation whitespace to blank lines inside RSX blocks,
but cargo fmt removes trailing whitespace from all lines. This made it
impossible for code to satisfy both formatters.

The fix skips adding indentation to empty lines in two places:
1. When indenting formatted RSX blocks inside expressions
2. When reassembling the final formatted output

Fixes #5223

Co-authored-by: Dmitry Minkovsky <dminkovsky@gmail.com>
2026-01-16 15:47:47 -08:00
Evan Almloff 8eb4322de2 Fix optional callback props implementation (#5225)
* fix optional event handler diffing

* add regression test
2026-01-16 14:50:48 -08:00
Samuel Åkesson f77a9162f5 chore: fix typo (#5220)
"Fist" -> "First"
2026-01-14 17:37:55 -06:00
Nico BurnsandEvan Almloff 761c9503fd CLI: don't enable default features in --no-default-features builds (#5147)
* Don't push default features in `--no-default-features` builds

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

* add tests for default features and no default features outside of renderers

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2026-01-14 23:24:18 +00:00
Nico BurnsandEvan Almloff 352e59ea01 Bump rfd to 0.17.2 (#5204)
* Bump rfd to 0.17.1

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

* Bump MSRV to 1.90

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

* Fix clippy

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

* bump rfd and revert msrv changes

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2026-01-14 22:30:51 +00:00
Sabin Regmi 15bf75b7b0 Fixes Passive Segment in Manganis (#5189) 2026-01-08 12:23:19 -08:00
Alex Ellwein a5db24defc chore: fix typo (#5185) 2026-01-07 13:18:11 -06:00
Jonathan Kelley 6b78816c1d allow passive wasm segments for manganis (#5163)
* fix passive segment using tls calculation!

* clean things up

* clean diff

* revert some pr changes for review

* cleanups
2026-01-07 02:35:08 -08:00
Jonathan Kelley ec8f31dece bump translation links 2025-12-29 22:58:12 -05:00
HenryandJonathan Kelley 9965220947 Scoped css (#5087)
* Create new css module parser

* Use css module processing

* Make hot reloading work for css_module macro

* Change css_module macro shape and rename to styles

* Add css_module example

* Update styles macro documentation

* Remove hidden from styles macro

* Remove unneeded param

* Remove unneeded visibility

* Improve `styles!` macro documentation

* Clippy

* Remove unneeded method

* Clippy

* Clippy

* Replace panic with anyhow

* Update css_module macro to attribute macro

* Update macro docs

* chore: Cargo.lock

* Clippy

* respect semver by deprecating old func

* update to latest winnow

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-12-29 22:41:36 -05:00
Jonathan Kelley 34554766db bump extension 2025-12-29 22:09:23 -05:00
Jonathan Kelley 1025bd69f0 fix: autofmt duplicate whitespace on attributes, flickering of vscode autoformat (#5159)
* wip: failing test

* edit harness a bit

* wip, not fixed entirely

* fix comment accumulation and whitespace

* fix: autofmt syncrhonize edits with vscode waitUntil edit pipeline

* fix optimization collapsing away whitespace

* comment out test case for now
2025-12-29 22:04:41 -05:00
Jonathan Kelley f537d72918 fix typo checker 2025-12-29 20:24:52 -05:00
Jonathan Kelley 852a1e5ea5 move notes to translations 2025-12-29 20:23:55 -05:00
Jonathan Kelley e2a405457f move security doc to notes 2025-12-29 20:23:10 -05:00
Jonathan Kelley 13e7cd1655 remove mailmap 2025-12-29 20:21:24 -05:00
Jonathan Kelley c2c24569c6 feat: add section about assets to key agents.md 2025-12-29 18:11:28 -05:00
Jonathan Kelley 638c02e15a feat: AGENTS.md and architecture guides for agents! 2025-12-29 18:09:05 -05:00
Agustín Covarrubias 2ee8ecd477 fix(cli): pass --all-features flag to cargo (#5153) 2025-12-29 09:33:03 -05:00
Jonathan Kelley 02b62342ef allow codesigning any server backend on macos (#5085)
* allow codesigning any server backend on macos

* clippy
2025-12-28 22:37:46 -05:00
Bayley Foster 887a87dcc1 fix(cli): display bundle format instead of undefined in dev loading screen (#5123) 2025-12-28 21:51:39 -05:00
Evan AlmloffandJonathan Kelley c977cc125e Switch const serialize to use CBOR (#4932)
* implement const cbor encoding + decoding for basic types

* implement map encoding and decoding

* fix map test

* all tests passing

* dynamically sized arrays

* smaller str encoding

* swap array and list and add more documentation

* move serialization and deserialization for each struct together

* support both legacy and new assets

* bump const serialize version

* fix asset conversion code

* pull out manganis symbol struct from tuble

* test reading old asset versions

* more list/array cleanup and bump rust version

* fix clippy

* switch cli opt port

* install playwright deps

* split cli-optimization package to avoid two dioxus' in the same crate

* fix clippy

* force the toast.png asset to be included in the linker stage #[used] has platform depedant behavior

* bundle both formats in the link section and only use the asset the cli changed

* remove sudo which doesn't exist on windows

* add binstall to the playwright workflow

* separate bin target for the old cli

* lockfile

* cargo update to get versions shaken out

* notes on binstalls, add back `.read()` for compat

* use 0.8.0-alpha.0 for const-serialize instead of 0.8

this ensures we can still publish breaking changes on 0.8 without taking over the full version

* fix clippy in example

* small debug nits

* update rust-overlay in nix

* fix flake?

* migrate to new structure

* just comment out binstalls

* just remove old test harness

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-12-28 21:49:34 -05:00
Nico Burns c68a47b2d3 CLI: only push a dioxus/* fallback feature if the crate being compiled (#5143)
depends on the `dioxus` crate.
2025-12-28 12:24:03 -05:00
99240ef000 Issue: 5138 Fix HotDog img URL (#5139)
* Issue: 5138 Fix HotDog img URL

* Use serde instead of json::Value

---------

Co-authored-by: Nils Loewen <nils@blockrewards.ca>
Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2025-12-26 08:37:57 -06:00
Nils LoewenandNils Loewen 3eb58f7d42 Issue 5140 Fix Favorites page (#5141)
Co-authored-by: Nils Loewen <nils@blockrewards.ca>
2025-12-26 07:49:12 -06:00
Nico Burns 31bee1417c Add a prelude module to Dioxus Native (#5104)
* Add prelude to dioxus-native crate

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

* Fix unreachable_patterns lint

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-12-25 16:51:51 -05:00
Jonathan Kelley db23197925 fix dx fmt span attribute issue (#5132)
* fix: if expr spans causing invalid span locations

* cleanups

* clippy, typo
2025-12-25 16:50:50 -05:00
Evan Almloff b050dfec5c Fix optional element regression (#5110)
* Fix optional element regression

* use vnode unless it is explicitly an option
2025-12-25 16:49:53 -05:00
Ivan Tham 417bf7a4c1 Fix subsecond doc comment (#5134) 2025-12-24 17:01:13 +00:00
qouteallandEvan Almloff da72b63b6f Fix the wrong removal of first linker arg in Windows. Linker argument file no longer include first program name argument. Small refactor of handling of linker response file. (#5010)
Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2025-12-15 10:14:22 -06:00
dependabot[bot] 5929c09cec Bump actions/upload-artifact from 4 to 6 (#5100)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v6)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 10:14:15 -06:00
Nico Burns 9484cda546 Fix clippy lints (Rust 1.92) (#5102)
* Fix clippy lints (Rust 1.92)

* cargo fmt

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

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-12-15 15:32:09 +00:00
dependabot[bot] 96231defd1 Bump actions/cache from 4 to 5 (#5099)
Bumps [actions/cache](https://github.com/actions/cache) from 4 to 5.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 09:31:31 -06:00
Rhaskia 88120a7c39 add auxclick and scrollend to dioxus events (#5095) 2025-12-14 22:52:46 -08:00
Jonathan Kelley 2da01937c1 feat: add support for server-only extractors (#5086) 2025-12-11 18:21:27 -08:00
Nico Burns 552b553a44 Fix call to rustc-objcopy to strip binary on Linux (#5066)
* Fix call to rustc-objcopy to strip binary on Linux

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

* Print stdout and stderr if strip fails

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

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-12-11 02:36:56 +00:00
jullang 05b2dd400c fix typos in dioxus_fullstack::client::get/set/clear_request_headers (#5078) 2025-12-09 08:36:30 -06:00
Paul Hansen 8a38e7ca76 fix: Allow links with duplicate href if rel is different (#5071)
Fixes #5070
2025-12-09 13:53:42 +00:00
Nico Burns c01770fcfb Fix resolving windows icon path (#5072)
Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-12-08 14:37:55 +00:00
Acheul 46b1639ddf fix collect child paths in store (#5069) 2025-12-07 08:21:03 -06:00
jullang 810321e053 Update README links for version 0.7 (#5068)
This seems to be out of sync right now, as the link itself points to 0.7, but the name still says 0.6
2025-12-07 13:21:32 +00:00
Jonathan Kelley 74bc78324b remove dead link 2025-12-05 12:14:23 -08:00
Jonathan Kelley c5f330dcae fix: make install.sh sh compatible (#5058) 2025-12-05 12:12:11 -08:00
Jonathan Kelley dd2d1b8a19 downgrade cargo generate to fix msrv 2025-12-05 12:11:49 -08:00
Jonathan Kelley 863aacdce7 use 1.88 for main ci 2025-12-05 11:53:29 -08:00
Jonathan Kelley da04e1e8df rollback tempfile, drop rustvers requirement 2025-12-05 11:22:50 -08:00
Jonathan Kelley 35351ebe99 remove musl publish target 2025-12-05 11:18:36 -08:00
Jonathan Kelley 5a10524b97 use rust 1.89 to fix rustvers issue 2025-12-04 20:25:02 -08:00
Jonathan Kelley 68e04ff837 use 1.89 for publish 2025-12-04 20:21:04 -08:00
Jonathan Kelley ebeaa2c273 fix: bump cli rustvers 2025-12-04 18:30:10 -08:00
Jonathan Kelley 8f8b58ea80 release v0.7.2 2025-12-04 18:26:15 -08:00
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