* refactor(tauri-cli): use OsString where possible
* refactor(tauri-cli): remove needless scoping blocks
* refactor(tauri-cli): make return type concrete
* refactor(tauri-cli): use ?
* refactor(tauri-cli): coerce later to trait object
* refactor(tauri-cli): remove clone
* refactor(tauri-cli): make better use of static OnceLock
* fix(tauri-cli): upgrade atomics to SeqCst
* Add change file
* Update .changes/change-pr-14836.md
Co-authored-by: Tony <68118705+Legend-Master@users.noreply.github.com>
* feat(webview): add set_simple_fullscreen to WebviewWindow
* add changes
* Combine per platform fn to one
---------
Co-authored-by: Tony <legendmastertony@gmail.com>
* refactor(tauri-cli): introduce replacement functions
* refactor(tauri-cli): apply replacement to remove.rs
* refactor(tauri-cli): apply replacement to icon.rs
* refactor(tauri-cli): apply replacement to bundle.rs
* refactor(tauri-cli): apply replacement to build.rs
* refactor(tauri-cli): apply replacement to add.rs
* refactor(tauri-cli): apply replacement to dev.rs
* refactor(tauri-cli): less controlflow
* refactor(tauri-cli): split config loading from locking static
* refactor(tauri-cli): remove duplicate checks covered by if let Some(tauri_dir) = tauri_dir
tauri_dir.is_some() must be true, otherwise the entire block is not run, so the frontend_dir check
is irrelevant
* fmt
* refactor(tauri-cli): apply replacement to inspect.rs
* refactor(tauri-cli): dont use statics for config
* refactor(tauri-cli): finish threading directory paths through functions
* fix: clippy
* fixup CI
* refactor(tauri-cli): dont need mutex
* refactor(tauri-cli): rescope mutex use to minimal necessary
* fix CI, reduce mutex use
* fixup PR #14607
* fix: clippy
* refactor(tauri-cli): remove ConfigHandle
* refactor(tauri-cli): remove more unwraps and panicing functions
* refactor(tauri-cli): less mutexes
* refactor(tauri-cli): undo mistaken change, address review comment
* Split android build to 2 functions
* Pass in dirs to migration v1 like the v2 beta
* Add change file
---------
Co-authored-by: Tony <legendmastertony@gmail.com>
* refactor(cli): disable jsonschema resolving external resources
* Move `CONFIG_SCHEMA_VALIDATOR` to fn
* Format
* Update ureq to fix compile on linux
* New clippy warnings
* feat(cli): add RISC-V 64-bit pre-built binary support
Add riscv64gc-unknown-linux-gnu target to the tauri-cli release workflow,
enabling pre-built binaries for RISC-V 64-bit Linux systems.
This eliminates the multi-hour QEMU compilation time that currently blocks
RISC-V adoption of Tauri apps. Native compilation on RISC-V hardware
takes ~63 minutes.
Changes:
- Add RISC-V entry to build matrix with self-hosted runner support
- Support custom `runs_on` field for matrix entries (falls back to `os`)
- Skip dtolnay/rust-toolchain and rust-cache for self-hosted runners
- Source ~/.cargo/env for self-hosted runners where Rust is pre-installed
Tested on:
- Hardware: Banana Pi F3 (RISC-V64, 16GB RAM)
- OS: Debian Trixie (required for WebKit2GTK RISC-V support)
- Build time: 1h 2m 28s
- Binary: ELF 64-bit RISC-V, 16MB stripped
* feat(cli): use cross for RISC-V cross-compilation
Switch from self-hosted runners to cross-rs for building RISC-V binaries.
This approach is simpler and doesn't require maintaining self-hosted infrastructure.
Local testing confirms cross builds a valid RISC-V binary in ~4 minutes.
* refactor(cli): address review feedback for RISC-V workflow
- Skip Rust toolchain and cache setup for cross builds (unnecessary)
- Pin cross version to 0.2.5 for reproducibility
- Fix Linux dependencies condition to match ubuntu-* variants
* refactor: use empty vector for features instead of None
* refactor: reorder
* add change file
* comment: highlight places where serialization is used
* refactor: simplify serialization
* Update .changes/empty-vec-instead-of-none.md
* Update crates/tauri-cli/src/mobile/ios/mod.rs
---------
Co-authored-by: Tony <68118705+Legend-Master@users.noreply.github.com>
* Typos
* Rename to `handler`/`protocol_handler`
* Fix the `AssetResolver::get` fallback docs
* Refactor and update the docs for `get_url`
* Rename the remaining ones to `get_app_url`
* Apply suggestions from code review
Co-authored-by: Fabian-Lars <github@fabianlars.de>
* Generate schema