* feat(bundler): support Liquid Glass icons, closes#14207
the `icon` config now supports loading an Assets.car directly or a `.icon` (Icon Composer asset) that gets compiled into an Assets.car file
* fmt
* fix build
* add version checks
* fmt
* fix icns fallback
* fmt
* test: add more unit-tests for `html` module
* refactor: remove html dependencies from `tauri-cli`
* feat: introduce `html-manipulation-2` feature
* Remove deprecation
* Use new feature flag
* Unroll `build` feature
* Introduce `build-2` feature
* Reduce diff
* Use `build-2` in more places
* Add docs
* Refactor `inject_script_hashes`
* Refactor `with_head`
* Rename serialize and parse functions
* Add changes file
* Remove unused function
* Update changelog
* Remove test
* Update wry
* Add todo comments
we don't have the git blame data in html2, better do it now or never
find it again
* refactor `with_head` to `ensure_head`
* Remove unused casts
* Avoid using format to construct html elements
which has the potential to get injected
* Feature gate `inline_isolation`
* Keep old prepends appends
* Fix `inline_isolation_replaces_src_with_content` test
* End meta tag
* Mirror test to old html module
* Use back to `append_html` for csp and link issue
* Try out dom query main branch
* Use nodes instead to avoid an extra clone
* Use wry 0.54.4 and dom_query 0.27
* Mark stability
* Remove `PatternObject`
---------
Co-authored-by: Tony <legendmastertony@gmail.com>
Co-authored-by: Tony <68118705+Legend-Master@users.noreply.github.com>
* Allow getting inner PathBuf from SafePathBuf
SafePathBuf implements AsRef<Path> which is ergonomic and useful.
However, some APIs take owned PathBufs. This leads to clunky code where
the caller has to get a &Path from the SafePathBuf then take ownership
of that path. Ideally, if a user has a SafePathBuf and needs a PathBuf,
they won't need to allocate again just to get the inner PathBuf back.
* Apply suggestion from @Legend-Master
* refactor(tauri-build): make better use of OsString
Co-authored-by: Tony <68118705+Legend-Master@users.noreply.github.com>
* refactor(tauri-build): dont wrap const value in function
* refactor(tauri-build): None codepath is never used, replace Option<Vec> with Vec
* refactor(tauri): use blocking apis where it makes sense
* refactor(tauri): better use of std::fs API
* refactor(tauri): rewind to start
* refactor(tauri): fmt
* add change file
* chore(deps): Update cargo-mobile2 and toml crates
* remove toml from tauri-build cargotoml
* 0.22.3
* try a range
* json5 and changefile
* Revert "json5 and changefile"
This reverts commit eda416ba79.
* keep changefile
* refactor(macos-sign): use base64 crate instead of Command
* add base64 crate as a dependency
* add change file
---------
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
* fix: resource path handles `./` path differently
* Setup CI for tauri utils
* Wrong job name
* Fix tests
* Always run tests and don't run doc tests
* Add change file
* Re-use `test-core` workflow
* Format
* Avoid path clone by calculating target first
* Test tauri-utils first with step instead of matrix
* Use `matrix.platform.command`
* Document `current_dest` and `current_pattern`
* More docs
* Merge remote-tracking branch 'upstream/dev' into refactor-resource-path-iter
* Test with doc tests
* Revert "Test with doc tests"
This reverts commit 388bee9328.
* Merge branch 'dev' into refactor-resource-path-iter
* Merge branch 'dev' into refactor-resource-path-iter
* fix(tauri-utils): sort csp/plugin/header config maps during codegen so generate_context! is deterministic
* add comments explaining rationale, and todo for removing the hack in v3
when custom assets are provided (`tauri::generate_context!(assets = my_assets)`) we can't use the fn inner logic directly and capture variables - we must pass them as arguments
* 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: 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>