* 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>
* 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
* 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>
* refactor(tauri-utils): current_dest and current_pattern always change in-sync, group them to one Option
* refactor(tauri-utils): pass path as explicit argument instead of implicitly through self
* refactor(tauri-utils): remove struct field that is never set to Some
* refactor(tauri-cli): use OsString, OsStr where possible
* refactor(tauri-cli): Deref Arc early
* refactor(tauri-cli): lock config before passing to build::setup()
* refactor(tauri-build, tauri-utils): bettern pattern matching and borrowing
* refactor(tauri-cli): dont need Arc if already have static
* fix(tauri-cli): race condition initializing static flag, remove unnecessary OnceLock
* refactor(tauri-cli): use expect
* refactor(tauri-cli): remove unnecessary OnceLock
* refactor(tauri-cli): better use of dunce api
* refactor(tauri-cli): rename
* fix: Premultiply alpha before resizing
* feat: Use rayon for process speedup
* Fix change tag
* `cargo fmt`
* Document reasoning & use imageops::resize directly
---------
Co-authored-by: Tony <legendmastertony@gmail.com>
* add new api (auto_increment_version_code) in android configuration
* ensure increment is only ran once
* skip on dev
* update doc
* change file
---------
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
* fix(cli): improve Android BuildTask.kt Windows executable detection
- Fix Android build error on Windows when using nvm4w
- Add robust fallback logic for Windows executable detection
- Prevent 'node.exe.cmd' and 'Cannot find module' errors
- Graceful fallback to cargo when Node.js detection fails
Fixes#13892
* strip extension from project, try exe/cmd/bat
* revert args
---------
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
currently the `use_network_address_for_dev_url` function already detects Ipv4Addr::UNSPECIFIED to resolve the local IP address for mobile development when the dev URL host is 0.0.0.0, but we only call it when `--host` is provided or running on a physical device. This change detects the unspecified host early and force the resolution to run even for simulator builds
* feat(cli): detect Android env and install SDK and NDK if needed
changes the Android setup to be a bit more automated - looking up ANDROID_HOME and NDK_HOME from common system paths and installing the Android SDK and NDK if needed using the command line tools
* fix windows
* clippy
* lint
* add prmopts and ci check
* also check ANDROID_SDK_ROOT
* feat(bundle): add --no-sign flag to skip code signing in bundling process
- Introduce a
o_sign option in bundle settings to allow skipping code signing
- Update macOS and Windows bundler implementations to respect the flag
- Wire up CLI option --no-sign to control signing behavior during bundling
- Add necessary config and type changes to propagate the flag throughout bundler
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* ci: added yml for github action testing
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* fix: fixed field 'digest_algorithm' is already declared error
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* ci: updated to test the new features as well
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* ci: fixed yml issue
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* fix: fixed missing parameter issue in android sign.rs
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* chore: apply linting
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* chore: remove redundant files
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* chore: revert indentations
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* fix: added parameters to ios mobile build.rs
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* docs: updated documentation for settigs.rs
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* docs(cli): add documentation for
o_sign flag in build options
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* chore: apply cargo fmt
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* docs: added CHANGES.md
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* refactor(bundler): make
o_sign private and add getter
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* fix: minor error
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* refactor: revert build_benchmark_jsons.rs
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
* impl for macos too
* fix ci
* fix windows build
---------
Signed-off-by: ShigrafS <shigrafsalik@proton.me>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>