Commit Graph
100 Commits
Author SHA1 Message Date
Evan AlmloffandJonathan Kelley 165447a647 Fix the server extension on windows server bundles (#4555)
* fix the server extension on windows server bundles

* fix formatting

* retry extracting assets if windows antivirus is holding the lock

* fix exe hash with extension

* add a timeout

* wip, make async

* use async methods

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-08-19 16:42:34 -07:00
Jonathan Kelley a7805b8e2a fix: select best match from --device (#4581)
* feat: add codesigning to ios

* add search for android too

* install toolchains for every target

* install toolchains automatically
2025-08-19 16:23:19 -07:00
dependabot[bot] b067befb05 Bump actions/checkout from 4 to 5 (#4574)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  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-08-19 15:55:04 -07:00
Dave Abrahams 4977c3ef23 Correct misleading string content. (#4542) 2025-08-19 12:34:46 -07:00
dependabot[bot] ca2e816f3b Bump tmp from 0.2.1 to 0.2.5 in /packages/extension (#4524)
Bumps [tmp](https://github.com/raszi/node-tmp) from 0.2.1 to 0.2.5.
- [Changelog](https://github.com/raszi/node-tmp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/raszi/node-tmp/compare/v0.2.1...v0.2.5)

---
updated-dependencies:
- dependency-name: tmp
  dependency-version: 0.2.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-19 12:32:29 -07:00
Keller Hydle 07ee22c3fd Add '.zed' folder for Zed-related development (#4575)
* Add '.zed' folder for Zed Development

* Update 'settings.json' similar to VSCode settings
2025-08-19 12:31:34 -07:00
Henry 59bac80dea Remove must_use from Resource (#4551) 2025-08-19 12:24:28 -07:00
Evan Almloff 021565c171 Fix hydration of link element (#4561)
* Fix hydration of link element

* revert some logging changes

* clean up fullstack history provider

* fix router tests

* fix document context type
2025-08-19 12:23:45 -07:00
Evan Almloff 6cd4453662 Fix store macro with struct bounds (#4572)
* Fix store macro with struct bounds

* fix where clause
2025-08-19 12:19:56 -07:00
Alexandr Priezzhev 8a07a24704 Fix integration of SSL libs into non-ARM64 Android builds. (#4563)
* Fix integration of SSL libs into non-ARM64 Android builds.

* Fix formatting in request.rs.
2025-08-18 16:03:26 -07:00
Emmanuel Ferdman 4e33bad5bf fix hotdog asset (#4570)
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
2025-08-18 16:03:17 -07:00
Henry 44e5cad241 Improve use_server_cached docs (#4557) 2025-08-15 15:28:59 -05:00
Evan Almloff 418b747cb1 Don't output escape codes for the cursor when the tui isn't active (#4556)
* Don't output escape codes for the cursor when the tui isn't active

* reset the cursor if we are running in a terminal even if tui active is false

* don't clone tui_active
2025-08-15 11:40:49 -07:00
Rhaskia 2a0f328c42 Allow specifying min_sdk_version in dioxus config for Android. (#4549)
* allow specifying min_sdk_version inside dioxus config

* rustfmt
2025-08-14 20:05:26 -07:00
Nico Burns 593945ecce Bump Blitz to 0.1.0-rc.3 (+dangerous_inner_html + style ns attrs) (#4538)
* Bump Blitz to 0.1.0-rc.3

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

* native: implement dangerous_inner_html

* native: implement style namespace attributes

* Fix clippy lints

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-08-12 13:28:41 -07:00
Andrew Voynov 79e4d17454 Clarify telemetry paragraph about rollups (#4539) 2025-08-12 09:31:50 -07:00
Jonathan Kelley a519fba7dc fix platform unification (#4536)
* fix platform unification

* fix doc
2025-08-12 01:31:45 -07:00
Jonathan Kelley a8230d8ff0 Release 0.7.0-rc.0 2025-08-11 15:59:36 -07:00
Jonathan Kelley 82f3778558 Add a few more events to the structured logger 2025-08-11 15:32:43 -07:00
Jonathan Kelley 9a98abe5ad allow customizing entitlements (#4533)
* allow customizing entitlements

* fix printing issues
2025-08-11 15:18:14 -07:00
Evan Almloff 68645e7f0c Cross platform asset resolver (#4521)
* add initial web resolver

* re-export resolver and add playwright test

* add documentation

* fix clippy

* fix docs + clippy
2025-08-11 14:44:48 -07:00
Sebastijan Kelnerič b72b142b53 Move ctrl-c handler to non-conditional match (#4532) 2025-08-11 11:36:34 -07:00
damccull 871998e19e Adds a build and output for the dioxus-cli (#4519) 2025-08-08 19:01:26 -07:00
Jonathan KelleyandEvan Almloff e43bf05b69 add basic crash analytics and very light telemetry to dioxus-cli (#4224)
* wip

* wip: basic telemetry

* fix merge

* keep errors for telemetry

* fix upload when queued events are empty

* add per session id and keep track of build timing

* keep track of what commands are run

* capture panics

* keep track of panics

* better path stripping

* better tracing error telemetry

* only sync every week and check settings before sending any telemetry

* keep track of the args passed to commands

* anonymize commands

* more error tolerant

* wip

* wip

* wip

* merge cnflict

* other merg conflict

* migrate everything from telemetry to logging

* update docs

* wip... about to merge trace controller

* lil bit more refactor to clean up tracer

* more performant log writer

* cleanup ci detecting

* wire up to posthog

* re-uploads work

* yoink out the anon from each file

* cleanup sig

* lil bit cleaner

* dont write empty files

* wip log handler

* fmt

* cleanup logging of backtraces

* add proper backtrace support

* use stable reporter

* adhere to posthog format

* fix stacktraces

* use anyhow for capturing backtraces

* I think we're done?

* cleanup logging

* properly collect!

* move out keycode handling

* she works

* typo

* add extra fields

* fix cargo doc

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2025-08-08 19:00:00 -07:00
yydcnjjwandEvan Almloff a610aaefc3 fix: Use Rc for lifecycle management (#4471)
* fix: Use Rc for lifecycle management

* Try to unwrap the Rc instead of using both rc and option

* Add a test for use drop

* fix test name

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2025-08-06 10:30:36 -05:00
Jonathan Kelley 79e7739bee Vendor OpenSSL on android with google prebuilt libs (#4511)
* vendor android openssl

* add fallback

* dont panic
2025-08-05 18:13:00 -07:00
Andrew VoynovandJonathan Kelley 89834bc1b3 Use data dir instead of home dir for dioxus-related data (#4445)
* Use data dir instead of home dir for dioxus-related data

* merge dx dir

* make windows match the pshell

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-08-05 12:05:19 -07:00
Evan AlmloffandJonathan Kelley 58c41f8561 Stores: Externally tracked state and reactive collections (#4483)
* map signals mutably

* boxed signals

* remove mutable borrow type from boxed writable

* improve map mut example

* restore boxed_mut helper

* make boxed readable/writable types copy

* Move away from the ReadOnlySignal alias in examples

* automatically convert Write

* Fix some tests

* ReadSignal and WriteSignal

* move read only signal alias

* make maps copy

* store prototype

* implement derive macro

* Handle generics in the derive macro

* Make Selector boxable

* derive boxed conversion

* Get rid of store type

* Remove hardcoded type from derive macro

* selector -> store

* Refactor store implementation

* more vec methods

* todo mvc store example

* Implement Storable for HashMap

* fix write

* restore sorting logic in todomvc

* derive readable and writable

* improve todomvc store example

* Result store

* Option store

* collect dead subscribers

* fix clippy and formatting

* recognize some common foreign types automatically

* fix foreign stores in props

* slice and array selectors

* clean up store example

* writable is child owned

* box selector

* read and write to builtins

* re-use the proc macro in the derive macro

* Switch to a extension trait based approach

* switch to extension traits in the derive macro

* transposed method

* derive enums

* Expose Store::new

* remove stores from the prelude

* More consistent naming scheme for SelectorScope methods

* document hashmap methods

* document index extension

* document option ext

* document result ext

* document slice extension

* document the vec extension

* make more methods borrow the store mutably

* Move to impls to have higher priority over the builtin write extension traits

* fix deadlock

* finish stores documentation

* Document the store macro

* cleanup docs and organization

* finish derive docs

* fix typo

* fix clippy

* fix doc tests

* fix derive macro with generics

* fix clippy

* test and fix empty structs

* clean up todomvc store example

* default to a boxed store writer to make it easier to type when providing to the context api

* fix cargo doc

* fix clippy in store example

* relax generational box lifetime bounds

* relax bounds

* relax signal bounds

* fix compilation

* read store

* relax bounds on default store impls

* fix enum derive

* Convert to readsignal and writesignal automatically

* simplify type matching logic

* add write store

* unsized stores

* shrink the path vec type

* use more concrete types

* remove opaque types

* remove copy bounds

* use lens as generic name everywhere

* more consistent borrow semantics

* use a concrete type for the signal metadata and mention references in the map docs

* improve todomvc store docs

* document store derive macro internals

* refactor macro

* improve selector node documentation

* fix clippy

* add btreemap

* fix doc tests

* more option methods

* fix doc

* fix clippy

* add a bunch more result methods

* add a bunch of bounds to the iterators

* fix clippy

* remove option from subscribers

* add store macro to generate extension traits

* fix store example

* fix deadlock

* fix docs

* fix doc tests

* fix clippy

* add stores to public api

* add store macro, and then update todomvc_store example

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-08-05 11:30:21 -07:00
Himmelschmidt 5591070e92 Fix rustc wrapper to read command files for linking detection (#4481)
* Fix rustc wrapper to read command files for linking detection

* fix formatting for cargo fmt check
2025-08-05 10:24:28 -07:00
Evan Almloff d8d11db403 Boxed and mapped signals preparing for stores (#4413)
This PR contains just the breaking changes required for the upcoming store implementation. It adds two new primitives:

Mutable mapped signals (without a different subscriber list). This lets you scope a writable value and pass it to a child component. It requires two closures to map the immutable and mutable references to the inner signal. With stores, these closures will be derived
Boxed readable and writable values (ReadSignal, and WriteSignal). Any readable or writable types can be converted to a read signal or write signal with the boxed method or built in types are automatically converted into the boxed variants when passing into props


* map signals mutably

* boxed signals

* remove mutable borrow type from boxed writable

* improve map mut example

* restore boxed_mut helper

* make boxed readable/writable types copy

* Move away from the ReadOnlySignal alias in examples

* automatically convert Write

* Fix some tests

* ReadSignal and WriteSignal

* move read only signal alias

* make maps copy

* store prototype

* implement derive macro

* Handle generics in the derive macro

* Make Selector boxable

* derive boxed conversion

* Get rid of store type

* Remove hardcoded type from derive macro

* selector -> store

* Refactor store implementation

* more vec methods

* todo mvc store example

* Implement Storable for HashMap

* fix write

* restore sorting logic in todomvc

* derive readable and writable

* improve todomvc store example

* Result store

* Option store

* collect dead subscribers

* fix clippy and formatting

* recognize some common foreign types automatically

* fix foreign stores in props

* slice and array selectors

* clean up store example

* remove stores

* writable is child owned

* fix typo

* fix clippy

* fix doc tests
2025-07-31 13:19:55 -07:00
Daniel Warloch 6919f72abc Downgrade chrono to 0.4.39 (#4473)
Certain packages do not yet support chrono 0.4.40
Examples:
arrow-arith which is used by influxdb3
2025-07-27 13:11:22 +01:00
Ryo Hirayama 7fcdee0266 Allow user to specify =false for default true flags (#4467) 2025-07-24 12:04:37 -07:00
Evan Almloff 15d369f10f Fix asset location for linux bundles (#4460)
* fix linux bundle

* fix release mode

* fix resource path

* only use asset dir if it exists

* add comment about directory structure

* don't unwrap parent
2025-07-23 17:47:41 -07:00
Jonathan Kelley 66c2dac38f better logs, don't run codesign if no assets are found (#4464) 2025-07-23 17:41:04 -07:00
Nico Burns f9f30263d3 Fix title example on native (#4463)
Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-07-24 01:35:42 +01:00
Nico Burns e687a2548c Use Blitz 0.1.0-rc2 (#4462)
Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-07-23 16:26:19 -07:00
Evan AlmloffandJonathan Kelley 892e154005 Fix hot patching hook types (#4381)
* fix hot patching hook types

* fix clippy

* fix doc check

* just expose the subsecond jumptable

* prefer panicking, forcing more cold branches

* make get_jump_table unsafe

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-07-23 16:23:33 -07:00
kbz_8andJonathan Kelley 86f22983f9 adding android main activity path to cli config (#4294)
Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-07-23 12:44:10 -07:00
b257e7e8ce CLI: add --renderer argument (#4320)
* Add --renderer argument to the CLI

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

* Make `--platform native` work

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

* Emit `krates` error when cargo metadata fails

* Reinstate default "desktop" feature for examples

* Remove commented 'no platform specified' error

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

* use the target tripple and bundle format as the source of truth for the build

* resolve renderer and bundle format

* add shorthand flags

* add headings to the help for shorthands

* resolve the renderer from the target triple if it isn't passed

* make value after --fullstack optional

* convert desktop -> mobile when targeting mobile webview

* use the new shorthand flags in the playwright tests

* fix clippy

* merge fix

* cleanup merge conflicts

* fix clippy

* remove nit

* restore platform as a legacy argument

* improve help message

* vendor openssl on native, pin server_fn

* print build errors as warnings

* add --desktop arg compat

* adjust cli headings

* prefer self.is_wasm_or_wasi()

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2025-07-22 14:32:54 -07:00
Derek JohnsonandJonathan Kelley 4848e714ae fix(bundle): add serde default for all fields that impl Default (#4442)
* fix(bundle): add serde default for all fields that impl Default

 - Adds #[serde(default)] for all fields of all bundle settings structs
   where the types impl Default
 - WindowsSettings: derive Default since all types impl Default

Default values for more [bundle] settings #3785

* Add default for Nsis settings

* Add default impl

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-07-22 13:20:36 -07:00
Olivier Lemoine 196db43e23 Add secure context on android (#4428)
* Add secure context on android

* Remove location permission in AndroidManifest.xml.hbs
2025-07-22 13:12:30 -07:00
Nico Burns 6524f55462 Upgrade Blitz to 0.1.0-rc.1 (#4452)
* Update to newer version of blitz_dom::Document trait

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

* Native: use DocumentConfig parameter

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

* Native: set event converter less often

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

* Native: count event handlers and skip events if none

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

* Upgrade to Blitz 0.1.0-rc.1

* Fix typo

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

* Fix native-headless example

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

* Use workspace deps for native-headless-in-bevy example

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

* Fix native-headless-in-bevy example (for blitz 0.1.0-rc.1)

* Fix native-dom-document doc tests

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-07-22 13:08:36 -07:00
Evan Almloff 18fe6de9a0 Fix server function warning with default features (#4453)
* fix server function warning with default features

* document and hide mock client

* fix clippy

* more clippy fixes

* fix formatting
2025-07-22 11:48:47 -07:00
Jerome CaucatandJerome Caucat 86086477d0 Add an example rendering dioxus-native to a texture in a bevy app (#4427)
Co-authored-by: Jerome Caucat <jerome.caucat@smartshape.com>
2025-07-22 13:33:52 +01:00
Evan Almloff 98f7667fb4 Remove dioxus-lib, fix doc imports (#4438)
* remove dioxus lib

* inline some doc items

* fix tests

* test docs

* Fix doc tests

* Pull out dioxus/lib feature

* disable logger and devtools in library feature

* fix cargo doc

* fix cargo doc
2025-07-18 14:51:07 -07:00
Himmelschmidt 4cb32d372b Fix Tailwind race condition in fullstack serve mode (#4433)
Skip Tailwind watcher in fullstack mode to prevent race conditions between
the watcher and prebuild() both trying to install/run Tailwind simultaneously.

In fullstack mode, the client build's prebuild() properly handles Tailwind
generation, making the watcher redundant and problematic.

Fixes "Text file busy" error when running:
dx serve --fullstack true --platform web

Fixes #4431
2025-07-18 11:09:08 -07:00
Evan Almloff 71b00ab171 Fix assets with odd extensions and fix race condition with duplicate assets with different sources (#4436) 2025-07-18 11:08:18 -07:00
Jonathan Kelley 9478525dd0 temporarily drop musl target 2025-07-16 18:02:40 -07:00
Jonathan Kelley f9e7011e72 Release 0.7.0-alpha.3 2025-07-16 17:42:14 -07:00
Jonathan Kelley 4f1d039bad clean up prelude (#4416)
* clear away prelude on dioxus

* clippy

* wip - drop prelude from dioxus-html

* docs clippy

* wip

* more fixe

* delete all preludes

* doc...

* better export

* merge some imports

* fewer global imports

* global incremental renderer

* fix cargo doc
2025-07-16 16:04:13 -07:00
Juan VásquezandJonathan Kelley 54d465a7b5 Avoid the accidental removal of comments inside expressions by dx fmt (#4410)
* Avoid the accidental removal of comments inside expressions by dx fmt

* Rewrite the logic to pass failed tests

* Removed unnecessary call to write_inline_comments

* add failing test case

* alter parsing a bit to handle more test cases

* almost there...

* fix

* use threadlocal

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-07-16 13:51:43 -07:00
Jonathan Kelley 88c693b2e4 fix: don't eat comments in more situations (#4423)
* fix: don't eat comments in more situations

* clippy...
2025-07-15 14:39:35 -07:00
Jonathan Kelley 57dba1949c Capture the rustc environment and project it into run (#4421) 2025-07-15 14:27:04 -07:00
Evan Almloff 0d2e1f4051 Prevent desktop reloads at the wry level (#4422)
* Prevent desktop reloads at the wry level

* add a test

* only allow one navigation
2025-07-15 14:26:52 -07:00
Jonathan Kelley 393246b923 fix unicode characters in line printing (#4420)
* fix unicode characters in line printing

* remove outdated comment
2025-07-15 11:52:49 -07:00
Jonathan Kelley f2c6fb2616 relax versions 2025-07-14 19:10:02 -07:00
Jonathan Kelley 01a50cdcaa Fix: drop pollster in lieu of std::sync::mpsc 2025-07-14 17:53:30 -07:00
Nico BurnsandJonathan Kelley 9db593e303 Example of rendering a dioxus-native app to a texture (#4365)
* Create example of rendering a dioxus-native app to a texture

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

* Use dioxus-native-dom crate

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

* bump lock

* cleanup cargo tomls

* rustc hash

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-07-14 17:48:51 -07:00
Evan AlmloffandJonathan Kelley b9b847c3f8 Warn about assets being stripped if strip is true and the current package depends on manganis (#4400)
* warn if we both find manganis in the dependencies and strip is enabled in the current profile

* bump node

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-07-14 17:35:29 -07:00
Jonathan Kelley 9bfde632f9 fix link opening on mobile (#4415)
* fix link opening on mobile

* fix compil;e

* ughh just use webbrowser

* remove open
2025-07-14 16:51:53 -07:00
Jonathan Kelley 2dec6205c8 fix: only link c++_shared, don't link c++ always 2025-07-14 15:47:46 -07:00
Evan AlmloffandJonathan Kelley 3f62cd8fc0 Reconnect the edits websocket if it disconnects (#4391)
* Reconnect the edits websocket if it disconnects

* restart the server if the OS kills it

* fix clippy

* clean up code and add more comments

* cleanups

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-07-14 13:39:21 -07:00
c5b33924ae updated the dependencies - maintaining compatibility and tests (#4363)
* Update dependencies in Cargo.lock

* added in the missing bevy example which was included in recent merge

* undo unneccessary library installation in gh actions

* cleaned up further

* Update dependencies in Cargo.toml and Cargo.lock askana_escape to 0.13

* updated code to make tests work

* updated the wgpu texture example

* replaced all direct reference with use

* fixed wgpu and jsframework errors in benches and examples

* Fix: Import black_box from std::hint

* grand finale upgrade

* updated cargo.lock

* Bump hyper-util to 0.1.15 and plist to 1.7.4

* remove some unused swc dependencies and add a command to update them in the future

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-07-14 13:03:40 -07:00
bananabit-dev 93147587b8 Fixed touch input it will now serialize the touchlist (#4406)
* fixed branch

* serializeTouchEvent fix
2025-07-14 13:00:06 -07:00
Jonathan Kelley 727752a965 final 0.7 fixes: xcode 15/16 hybrid, auto openssldir for android, include_*! tracking hotpatch, fix /assets/ brick at high opt levels, windows linker file, etc (#4376)
* wip: openssl autodetection

* add voltaile read inside of asset fn

* support xcode 15 for --device

* vendor openssl on android

* Smaller width TUI

* switch to anyhow for the entire CLI

* add backtrace and print double printing of cargo_metadata errors

* add some padding to multi-line anyhow error

* check semvers

* don't open if not interactive

* set the tailwind current_dir so it doesn't twitch

* get the oboe demo working

* copy the c++ library on android

* cleanup env vars

* add depinfo watcher

* fix stale hotpatches and crate count

* add musl support

* remove outdated autofmt test

* update scanner app

* add hotdog app and bundle to ci

* upload dx on every branch

* collapse mobile into desktop

* `dx doctor` command

* windows command files

* no pipe on doctor

* fix ci?

* fix links

* fix ci

* use main instead of nightly

* bump node

* build cli for host

* cargo doc

* prep dog_app for bundle

* package hotdog

* no bundle or nightly cli

* comment out nightly cli

* add quotes to linker files
2025-07-14 12:54:15 -07:00
Shoshána Abigail 97947b169b prevent_default must be called synchronously or it will have no effect (#4386) 2025-07-09 12:22:29 -04:00
rennanpo 1a494d1f5e fix(bundle): add serde defaults to prevent deserialization errors (#4398) 2025-07-08 17:52:48 -04:00
Himmelschmidt b82ba85653 Add PartialEq and Eq derives to ServerFnError (#4393)
This fixes the missing `PartialEq` implementation for `ServerFnError` in v0.7.0-alpha.2 which was breaking `use_memo` functionality.

Closes #4387
2025-07-08 13:24:34 -04:00
Nico Burns a4ebdcb69e Native: Split dioxus-native-dom crate out of dioxus-native (#4366)
Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-07-07 22:14:59 +01:00
Evan Almloff b252528722 Fix router state after client side navigation (#4383)
* Fix router state after client side navigation

* add client side navigation to the fullstack routing spec

* fix playwright test
2025-07-07 13:43:32 -05:00
Nico Burns ddc94cf44c Native: Accept winit::WindowAttributes as a config value (#4364) 2025-07-06 12:44:00 -04:00
5495bcedb4 Add a bevy-texture example based on wgpu-texture (#4360)
* Add a bevy-texture example based on wgpu-texture

* Use git branch of Blitz

* Update existing code to new blitz

* Use Device from Dioxus for bevy

* Use ManualTextureView

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

* Fix texture size on window resize

* Clean code

* Rename example to 'bevy-example' in 'bevy' directory

* Upgrade to blitz 0.1.0-alpha.5 and anyrender 0.4

* Install alsa in CI

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

* Add libudev to CI

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

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
Co-authored-by: Jerome Caucat <jerome.caucat@smartshape.com>
Co-authored-by: Nico Burns <nico@nicoburns.com>
2025-07-04 22:01:00 +01:00
David Bernard a66bffb487 fix: allow to name module std in project (#4353)
add missing prefix '::' for use of 'core' or 'std' module

RELATED #4331
2025-07-02 08:03:13 -05:00
Jonathan Kelley d5bc480f6f Publish 0.7.0-alpha.2 2025-07-02 01:36:52 -07:00
Josh Rose a0f83f2679 Reclaim element id for all removed nodes (#3782)
* reclaim el id for nested dyn nodes

* reclaim root element ids as well
2025-07-02 00:34:21 -07:00
Jonathan Kelley 1db4b2a13d fix multiwindow due to mounts not dropping in virtualdom (#4351)
* fix handlers not dropping thanks to mounts

* use `desktop`

* Add tasks and effects

* only destroy on virtualdom destroy

* fix clippy
2025-07-01 20:49:45 -07:00
Jonathan Kelley ff762cec84 tweaks to the LastWindowClose to make it more imperative 2025-07-01 19:58:41 -07:00
KlemenandJonathan Kelley 9573af115a Added close behaviour option for specific window (#3754)
Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-07-01 18:59:44 -07:00
zhiyanzhaijie c3c7e5f705 fix router macro mixed core crate by clearify core:: -> ::core:: (#4350) 2025-07-01 18:44:13 -07:00
d5daf14c15 chore(deps): upgrade wry from 0.45.0 to v0.52.0 (#4255)
* chore(deps): upgrade wry from 0.45.0 to v0.51.2

* Unwrap webview

* update tauri

* fix more versions

* switch to a single websocket per app to communicate edits in desktop

* use websockets on the ts side

* queue pending edits before the websocket connects

* fix decoding the websocket blobs in ts

* rebuild js

* fix clippy

* more sensible struct names

* allow http on android and require a key to match between the webview and native sides

* remove out.txt

* clippy

* small style changes

* More light cleanups

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2025-07-01 18:08:24 -07:00
Clouds 65dd1f1762 Save logical position when restoring on macos (#4061)
* save logical position on restore

* only use logical position on macos

* fix adjustment

* fix windows window restoration

* fix inner_size for windows
2025-06-30 23:03:38 -07:00
Moritz Hedtke e947f5ec08 Fix form submission on native if there is an onclick handler somewhere (#4329) 2025-06-30 22:46:42 -07:00
Mahmoud 🦀andJonathan Kelley e23debf096 chore: update readme (#4075)
* chore: update readme

* chore: mv `sledgehammer` `sledgehammer_bindgen`

* tweak language

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-06-30 22:09:12 -07:00
Evan AlmloffandJonathan Kelley e74c838441 Hashless assets (#4312)
* add support for external assets

* fix playwright tests

* add more documentation to with_hash_suffix

* restore external asset hashing tests

* Update gtk workflow dependencies

* fix doc test

* multiple versions of libgtk

* clear dx in playwright tests

* fix fullstack caching test

* try without apt cache

* cache everything except libxdo-dev

* revert ci changes

* fix wasm asset options

* fix merge conflict

* recommend the used attribute instead

* Move options to AssetOptionsBuilder

* Don't deprecate non-canonical new asset options functions

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-06-30 19:21:49 -07:00
Jonathan Kelley 0bd376b873 Fix: switch to --device instead of --device true 2025-06-30 19:18:48 -07:00
Jonathan Kelley 7d24a47c22 fix ios codesign on device (#4339)
* fix ios codesign on device

* switch to tmpfile
2025-06-30 19:14:17 -07:00
Moritz Hedtke ac9b1fc519 Intentionally shadow module to prevent accidential use (#4327) 2025-06-30 17:42:22 -07:00
Moritz Hedtke cd920d2b6b Pass android linker to cargo (#4332) 2025-06-30 17:41:19 -07:00
Moritz HedtkeandJonathan Kelley 60706a6c08 Handle panics in main on android (#4328)
* Handle panics in main on android

* Clippy fix

* Run in context of main

* small cleanups

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-06-30 17:38:15 -07:00
Jonathan Kelley 192fbffc51 change asset resolver docs and name 2025-06-30 16:31:25 -07:00
Nico Burns 6eba7e8641 Upgrade to Blitz 0.1.0-alpha.4 (#4335)
* Use new replace_node_with name for replace_placeholder_with_nodes

* Setup tracing for wgpu-texture support

* Use asset macro in wgpu-texture example

* Use src attribute rather than data for canvas source

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

* Upgrade to blitz 0.1.0-alpha.4

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

---------

Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-06-30 16:26:01 -07:00
Evan AlmloffandJonathan Kelley 2071be2b67 Fix hotpatched assets (#4326)
* wip: fixes to get docsite working again

* Fix asset location with PIC in hot patched builds

* Add an hidden cli flag to exit early in hot patch tests on failure

* add a test for hot patching with assets

* fix clippy

* fix looks_like_manganis_symbol

* longer timeout for hot patching in CI

* log page content

* log assets

* Log asset after write

* record a playwright trace

* Explicitly enable cargo incremental for hot patching

* fix retry for patch test

* reset asset

* disable hot patching test for new exports

* add nightly playwright

* use different toolchain names

* use beta instead of nightly for less thrashing

* add failing test

* workaround hot reloading bug

* restore swapping asset tests

* add toolchain

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2025-06-30 16:23:04 -07:00
6cc379718b Don't use inline scripts and function constructor (#4310)
* Don't use inline scripts and function constructor.

This allows a stricter Content-Security-Policy which is required for web extensions.

* Load module scripts asynchronously

* Extract common code into method

* Fix injecting loading script

* Append to the file instead of reading and appending to the file string

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2025-06-26 12:08:02 -05:00
Jonathan Kelley 0dd0f05db0 small typo 2025-06-25 13:30:08 -07:00
Jonathan Kelley b94ce1cd1c update header splash 2025-06-25 13:26:53 -07:00
Jonathan Kelley bc593ba4ef update readme with some new features for 0.7 2025-06-25 13:26:53 -07:00
Jonathan Kelley dcf46ce81a fix "multiple" attribute (#4323)
* fix "multiple" attribute

* change timeout in spin future
2025-06-25 13:13:08 -07:00
Nico Burns f54e771247 Fix docs.rs build of dioxus-lib (#4321) 2025-06-25 06:39:59 -07:00
Mahmoud 🦀 2d0ca77ff9 Create SECURITY.md (#4136) 2025-06-24 18:37:43 -07:00
Jonathan Kelley dd53ce72a7 add --offline, --locked, remove dioxus branding if dioxus is not being used explicitly (#4155)
* wip: add some spin logging

* wipe dioxus branding if not being used by dioxus

* add --locked, --offline, --frozen

* properly git init with `dx new` and `dx init`

* dont panic in verbosity

* Move build-assets to "tools"

* change ui for dx new offline

* pin tauri-bundle

* pin tauri

* run tailwind once
2025-06-24 18:21:25 -07:00