Merge branch 'dev' into feat/rust-toolchain

This commit is contained in:
Simon Hyll 2024-04-10 15:32:08 +02:00 committed by GitHub
commit b556453336
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
705 changed files with 25646 additions and 9608 deletions

44
.changes/README.md Normal file
View File

@ -0,0 +1,44 @@
# Changes
##### via https://github.com/jbolda/covector
As you create PRs and make changes that require a version bump, please add a new markdown file in this folder. You do not note the version _number_, but rather the type of bump that you expect: major, minor, or patch. The filename is not important, as long as it is a `.md`, but we recommend that it represents the overall change for organizational purposes.
When you select the version bump required, you do _not_ need to consider dependencies. Only note the package with the actual change, and any packages that depend on that package will be bumped automatically in the process.
Use the following format:
```md
---
'package-a': 'patch:enhance'
'package-b': 'patch:enhance'
---
Change summary goes here
```
Summaries do not have a specific character limit, but are text only. These summaries are used within the (future implementation of) changelogs. They will give context to the change and also point back to the original PR if more details and context are needed.
Changes will be designated as a `major`, `minor` or `patch` as further described in [semver](https://semver.org/).
Given a version number MAJOR.MINOR.PATCH, increment the:
- MAJOR version when you make incompatible API changes,
- MINOR version when you add functionality in a backwards compatible manner, and
- PATCH version when you make backwards compatible bug fixes.
Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format, but will be discussed prior to usage (as extra steps will be necessary in consideration of merging and publishing).
Additionally you could specify a tag for the change file to group it with other changes by prefixing the bump with `:<tag>`, for example:
```md
---
'package-a': 'patch:enhance'
---
Change summary goes here
```
which will group this change file with other changes that specify the `bug` tag.
For list of available tags, see the `changeTags` key in [./config.json](./config.json)

View File

@ -0,0 +1,6 @@
---
"tauri-build": patch:enhance
"tauri-utils": patch:enhance
---
Fallback to an empty permission set if the plugin did not define its `default` permissions.

View File

@ -0,0 +1,8 @@
---
"tauri-utils": patch:enhance
"tauri": patch:enhance
"tauri-cli": patch:enhance
"@tauri-apps/cli": patch:enhance
---
Changed the permission and capability platforms to be optional.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:breaking
---
Removed the lifetime parameter from `ipc::GlobalScope` and `ipc::CommandScope`.

View File

@ -0,0 +1,6 @@
---
"tauri": patch:breaking
"tauri-utils": patch:breaking
---
The ACL configuration for remote URLs now uses the URLPattern standard instead of glob patterns.

View File

@ -0,0 +1,5 @@
---
"tauri": 'patch:enhance'
---
A file-drop now allows sub-directories recursively when the path is a directory.

View File

@ -0,0 +1,5 @@
---
'@tauri-apps/api': 'patch:bug'
---
Re-added the `TauriEvent.WINDOW_CREATED` (`tauri://window-created`) event.

View File

@ -0,0 +1,9 @@
---
'@tauri-apps/api': 'patch:breaking'
---
Renamed the following enum variants of `TauriEvent` enum:
- `TauriEvent.WEBVIEW_FILE_DROP` -> `TauriEvent.FILE_DROP`
- `TauriEvent.WEBVIEW_FILE_DROP_HOVER` -> `TauriEvent.FILE_DROP_HOVER`
- `TauriEvent.WEBVIEW_FILE_DROP_CANCELLED` -> `TauriEvent.FILE_DROP_CANCELLED`

View File

@ -0,0 +1,5 @@
---
'@tauri-apps/api': 'patch:feat'
---
Add `TrayIcon.getById` and `TrayIcon.removeById` static methods.

View File

@ -0,0 +1,5 @@
---
'@tauri-apps/api': 'patch:feat'
---
Add a new `webviewWindow` module that exports `WebviewWindow` class and related methods such as `getCurrent` and `getAll`.

View File

@ -0,0 +1,5 @@
---
'@tauri-apps/api': 'patch:breaking'
---
Move `WebviewWindow` class from `webview` module to a new `webviewWindow` module.

View File

@ -0,0 +1,5 @@
---
'@tauri-apps/api': 'patch:feat'
---
Add `Window.onFileDropEvent` method.

9
.changes/app-manifest.md Normal file
View File

@ -0,0 +1,9 @@
---
"tauri": patch:enhance
"tauri-build": patch:breaking
"tauri-utils": patch:breaking
"tauri-plugin": patch:breaking
"tauri-codegen": patch:breaking
---
Allow defining permissions for the application commands via `tauri_build::Attributes::app_manifest`.

5
.changes/assets-setup.md Normal file
View File

@ -0,0 +1,5 @@
---
"tauri": patch:feat
---
The `Assets` trait now include a `setup` method that lets you run initialization code for your custom asset provider.

View File

@ -0,0 +1,5 @@
---
"tauri-build": patch:bug
---
Fixed generation of capability schema for permissions field which previously disallowed mixed (strings and objects) permission definition.

View File

@ -0,0 +1,5 @@
---
'tauri-bundler': 'patch:bug'
---
Fixed an issue that caused the msi bundler to crash when deep link schemes were configured.

View File

@ -0,0 +1,5 @@
---
'tauri-bundler': 'patch:bug'
---
Fix NSIS installer always containing a license page even though `licenseFile` option is not set in the config.

View File

@ -0,0 +1,5 @@
---
"tauri-bundler": patch:bug
---
Don't fallback to `licenseFile` and use only `license` field when building RPM.

View File

@ -0,0 +1,6 @@
---
"tauri": patch:enhance
"tauri-utils": patch:enhance
---
Add `webviews` array on the capability for usage on multiwebview contexts.

View File

@ -0,0 +1,7 @@
---
"tauri-build": patch:breaking
"tauri-utils": patch:enhance
"tauri-codegen": patch:enhance
---
Added a new configuration option `tauri.conf.json > app > security > capabilities` to reference existing capabilities and inline new ones. If it is empty, all capabilities are still included preserving the current behavior.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:feat
---
Added `CapabilityBuilder::platform` to link the runtime capability with a specific platform.

View File

@ -0,0 +1,7 @@
---
"tauri-utils": patch:breaking
"tauri-cli": patch:breaking
"@tauri-apps/cli": patch:breaking
---
Changed the capability format to allow configuring both `remote: { urls: Vec<String> }` and `local: bool (default: true)` instead of choosing one on the `context` field.

View File

@ -0,0 +1,12 @@
---
'tauri-cli': 'patch:feat'
'@tauri-apps/cli': 'patch:feat'
---
Add new subcommands for managing permissions and cababilities:
- `tauri permission new`
- `tauri permission add`
- `tauri permission rm`
- `tauri permission ls`
- `tauri capability new`

View File

@ -0,0 +1,6 @@
---
"tauri-cli": "minor:feat"
"@tauri-apps/cli": "minor:feat"
---
Support specifying a version for `tauri add` subcommand, for example: `tauri add window-state@2.0.0-beta.2`

View File

@ -0,0 +1,6 @@
---
'tauri-cli': 'patch:enhance'
'@tauri-apps/cli': 'patch:enhance'
---
Add `--no-bundle` flag for `tauri build` command to skip bundling. Previously `none` was used to skip bundling, it will now be treated as invalid format and a warning will be emitted instead.

View File

@ -0,0 +1,6 @@
---
'tauri-cli': 'patch:enhance'
'@tauri-apps/cli': 'patch:enhance'
---
Allow empty responses for `devUrl`, `beforeDevCommand` and `beforeBuildCommands` questions in `tauri init`.

View File

@ -0,0 +1,5 @@
---
"tauri-cli": patch:enhance
---
Use `$CARGO_MANIFEST_DIR` when including templates at build-time.

View File

@ -0,0 +1,6 @@
---
'tauri-cli': 'patch:bug'
'@tauri-apps/cli': 'patch:bug'
---
Fixes Android and iOS project initialization when the Tauri CLI is on a different disk partition.

View File

@ -0,0 +1,6 @@
---
"@tauri-apps/cli": patch:enhance
"tauri-cli": patch:enhance
---
`openssl` is no longer a required dependency on macOS.

View File

@ -0,0 +1,6 @@
---
'tauri-cli': 'patch:enhance'
'@tauri-apps/cli': 'patch:enhance'
---
Add plugins to `Cargo.toml` when using `tauri migrate`

View File

@ -0,0 +1,5 @@
---
"tauri-cli": patch:deps
---
Update dependencies, fix `log` compilation issue.

View File

@ -0,0 +1,6 @@
---
"tauri-cli": patch:bug
"@tauri-apps/cli": patch:bug
---
Fix bundling when `plugins > updater > windows > installerArgs` are set in `tauri.conf.json`

View File

@ -0,0 +1,6 @@
---
"tauri-cli": patch:bug
"@tauri-apps/cli": patch:bug
---
On Windows, fixed `tauri info` fails to detect the build tool when the system language is CJK.

View File

@ -0,0 +1,6 @@
---
"tauri-macros": patch:enhance
"tauri-codegen": patch:enhance
---
The `generate_context` proc macro now accepts a `capabilities` attribute where the value is an array of file paths that can be [conditionally compiled](https://doc.rust-lang.org/reference/conditional-compilation.html). These capabilities are added to the application along the capabilities defined in the Tauri configuration file.

View File

@ -0,0 +1,6 @@
---
"tauri-macros": patch:feat
"tauri-codegen": patch:feat
---
The `Context` codegen now accepts a `assets` input to define a custom `tauri::Assets` implementation.

View File

@ -0,0 +1,6 @@
---
'tauri-utils': 'patch:bug'
'tauri': 'patch:bug'
---
Fix compile time error in context generation when using `app.windows.windowEffects.color`

View File

@ -0,0 +1,5 @@
---
"tauri": patch:breaking
---
The `Context` struct and the `Assets` trait now takes a `R: Runtime` generic.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:breaking
---
`Context::assets` now returns `&dyn Assets` instead of `&A` generic.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:breaking
---
The `Context` type no longer uses the `<A: Assets>` generic so the assets implementation can be swapped with `Context::assets_mut`.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:breaking
---
Removed `Context::assets_mut` and added `Context::set_assets`.

View File

@ -0,0 +1,5 @@
---
"tauri-utils": patch:enhance
---
The `Context` struct now includes the runtime authority instead of the resolved ACL. This does not impact most applications.

View File

@ -0,0 +1,5 @@
---
'tauri': 'patch:breaking'
---
Removed `App/AppHandle::tray` and `App/AppHandle::remove_tray`, use `App/AppHandle::tray_by_id` and `App/AppHandle::remove_tray_by_id` instead. If these APIs were used to access tray icon configured in `tauri.conf.json`, you can use `App/AppHandle::tray_by_id` with ID `main` or the configured value.

View File

@ -0,0 +1,6 @@
---
'tauri': 'patch:enhance'
'tauri-runtime-wry': 'patch'
---
Enhance centering a newly created window, it will no longer jump to center after being visible.

View File

@ -0,0 +1,5 @@
---
tauri: 'patch:bug'
---
Fixed an issue preventing webview/window creation events to not be emitted. This also fixed the `getByLabel` and `getAll` JavaScript functions.

View File

@ -0,0 +1,5 @@
---
'tauri': 'patch:bug'
---
Fix `emit` and `emit_to` (when used with `EventTarget::Any`) always skipping the webview listeners.

View File

@ -0,0 +1,5 @@
---
'tauri': 'patch:bug'
---
Fix JS event listeners registered using JS `listen` api with `EventTarget::Any` never fired.

View File

@ -0,0 +1,5 @@
---
'tauri': 'patch:enhance'
---
Return an id when using from `Manager::once_any`, `App::once`, `Window::once`, `Webview::once`, `WebviewWindow::once` and `fs::Scope::once`.

View File

@ -0,0 +1,6 @@
---
'tauri': 'patch:bug'
'@tauri-apps/api': patch:bug
---
Fix `basename(path, 'ext')` JS API when removing all occurances of `ext` where it should only remove the last one.

View File

@ -0,0 +1,5 @@
---
tauri: 'patch:enhance'
---
`tauri::Window` and `tauri::WebviewWindow` now implement `raw_window_handle::HasDisplayHandle`.

View File

@ -0,0 +1,7 @@
---
"tauri": patch:enhance
"tauri-utils": patch:enhance
"tauri-codegen": patch:enhance
---
Do not include a CSP tag in the application HTML and rely on the custom protocol response header instead.

View File

@ -0,0 +1,5 @@
---
'tauri-bundler': 'minor:feat'
---
Add suport for include `preinstall`, `postinstall`, `preremove` and `postremove` scripts into Debian and RPM packages.

View File

@ -0,0 +1,5 @@
---
'tauri-utils': 'minor:feat'
---
Added `preInstallScript`, `postInstallScript`, `preRemoveScript` and `postRemoveScript` options for `bundler > deb` and `bundler > rpm` configs.

View File

@ -0,0 +1,6 @@
---
'tauri-bundler': 'minor:feat'
'tauri-utils': 'minor:feat'
---
Added support for `provides`, `conflicts` and `replaces` (`obsoletes` for RPM) options for `bundler > deb` and `bundler > rpm` configs.

5
.changes/dev-fn.md Normal file
View File

@ -0,0 +1,5 @@
---
"tauri": patch:enhance
---
Added `tauri::dev()` to determine whether we are running in development mode or not.

View File

@ -0,0 +1,6 @@
---
"tauri-cli": patch:bug
"@tauri-apps/cli": patch:bug
---
Downgrade minisign dependency fixing updater signing key bug and prevent it from happening in the future.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:enhance
---
Improve and optimize event emit calls.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:enhance
---
Enhance the IPC URL check by using the Origin header on the custom protocol IPC and the new request URI field on the postMessage IPC instead of using `Webview::url()` which only returns the URL of the main frame and is not suitable for iframes (iframe URL fetch is still not supported on Android and on Linux when using the postMessage IPC).

View File

@ -0,0 +1,5 @@
---
"tauri-utils": patch:enhance
---
Enhance resource directory resolution on development.

View File

@ -0,0 +1,5 @@
---
"@tauri-apps/api": patch:enhance
---
The `Image` constructor is now public (for internal use only).

View File

@ -0,0 +1,6 @@
---
"tauri": patch:breaking
"tauri-codegen": patch:breaking
---
Expose `tauri::image` module to export the `JsImage` type and removed the `Image` root re-export.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Fixes capability webview label check.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Fixes `Window::add_child` deadlock.

View File

@ -0,0 +1,5 @@
---
"tauri-build": patch:bug
---
Fixes the capability schema not resolving inner definitions.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Fix regression on IPC response when using a channel to return objects.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Clear JS event listeneres on page load, which fixes zombie listeners when the page reloads.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Fix `tauri migrate` for http plugin ACL.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Resolve symlinks on the filesystem scope check.

View File

@ -0,0 +1,5 @@
---
"tauri-runtime-wry": patch:bug
---
Fix window inner size evaluation on macOS.

View File

@ -0,0 +1,6 @@
---
"@tauri-apps/cli": patch:bug
"tauri-cli": patch:bug
---
Fixes process logs not showing on `ios dev`.

View File

@ -0,0 +1,5 @@
---
tauri: 'patch:bug'
---
Fixed an issue where errors where returned as strings instead of objects from commands.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Fixes the menu plugin `remove` command signature.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Fixes an issue causing `getAll()` to list webviews that were already destroyed.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Convert the command name to camelCase when executing a mobile plugin command.

View File

@ -0,0 +1,6 @@
---
"tauri-cli": patch:bug
"@tauri-apps/cli": patch:bug
---
Fixes android and iOS process spawning not working on Node.js.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Fixes capability remote domain not allowing subpaths, query parameters and hash when those values are empty.

5
.changes/fix-reparent.md Normal file
View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Fixes `Webview::reparent` not updating the webview parent window reference.

View File

@ -0,0 +1,5 @@
---
tauri-runtime-wry: patch:bug
---
Fixes an issue causing compilation to fail for i686 and armv7 32-bit targets.

View File

@ -0,0 +1,6 @@
---
"tauri": patch:bug
"tauri-utils": patch:bug
---
Fixes scope resolution grouping scopes for all windows.

View File

@ -0,0 +1,5 @@
---
"tauri-runtime-wry": patch:bug
---
Fix webview's visibility doesn't change with the app window

View File

@ -0,0 +1,5 @@
---
"tauri-runtime-wry": patch:bug
---
Fix window centering not taking monitor scale into account

View File

@ -0,0 +1,5 @@
---
"tauri-runtime-wry": patch:bug
---
Fix window centering not taking taskbar into account on Windows

View File

@ -0,0 +1,5 @@
---
"tauri": patch:bug
---
Fixes a deadlock when the window is destroyed.

View File

@ -0,0 +1,8 @@
---
"tauri": patch:feat
"tauri-codegen": patch:feat
"tauri-build": patch:feat
"tauri-plugin": patch:feat
---
Allow plugins to define (at compile time) JavaScript that are initialized when `withGlobalTauri` is true.

7
.changes/http-v1.md Normal file
View File

@ -0,0 +1,7 @@
---
'tauri': 'patch:deps'
'tauri-runtime': 'patch'
'tauri-runtime-wry': 'patch'
---
Updated `http` crate to `1.1`

View File

@ -0,0 +1,5 @@
---
'tauri': 'major:breaking'
---
Renamed `icon-ico` and `icon-png` feature flags to `image-ico` and `image-png` respectively

5
.changes/image-crate.md Normal file
View File

@ -0,0 +1,5 @@
---
"tauri": patch:breaking
---
Use the image crate for `tauri::image::Image` and remove the `from_png_bytes` and `from_ico_bytes` APIs.

View File

@ -0,0 +1,5 @@
---
"@tauri-apps/api": patch:breaking
---
`Image::rgba()` now returns `Promise<Uint8Array>`.

View File

@ -0,0 +1,6 @@
---
"@tauri-apps/api": patch:breaking
"tauri": patch:breaking
---
Removed `width` and `height` methods on the JS `Image` class, use `size` instead.

View File

@ -0,0 +1,5 @@
---
'tauri-build': patch:enhance
---
Added `Attributes::plugin()` to register a plugin that is inlined in the application crate.

View File

@ -0,0 +1,6 @@
---
"@tauri-apps/cli": patch:enhance
"tauri-cli": patch:enhance
---
Setting up code signing is no longer required on iOS when using the simulator.

View File

@ -0,0 +1,5 @@
---
"tauri": patch:enhance
---
Fallback to the postMessage IPC interface if we cannot reach the IPC custom protocol.

View File

@ -0,0 +1,6 @@
---
"tauri-runtime": patch:breaking
"tauri-runtime-wry": patch:breaking
---
The IPC handler closure now receives a `http::Request` instead of a String representing the request body.

View File

@ -0,0 +1,5 @@
---
"tauri-utils": patch:enhance
---
Make the isolation pattern encrypt key unextractable.

View File

@ -0,0 +1,5 @@
---
"tauri-utils": patch:enhance
---
The isolation iframe script now removes itself after execution.

View File

@ -0,0 +1,6 @@
---
"@tauri-apps/cli": patch:bug
"tauri-cli": patch:bug
---
Fixes dev watcher on mobile dev.

View File

@ -0,0 +1,5 @@
---
"tauri-runtime-wry": patch:bug
---
Fixes auto resize and positioning when using the multiwebview mode.

View File

@ -0,0 +1,5 @@
---
'tauri-build': 'patch:enhance'
---
Enable Hight DPI awareness for NSIS installer so it is not blurry on some systems.

View File

@ -0,0 +1,5 @@
---
'tauri': 'major:breaking'
---
Removed `tauri::path::Result` and `tauri::path::Error` which were merely an unintentional re-export of `tauri::Result` and `tauri::Error` so use those instead.

View File

@ -0,0 +1,6 @@
---
"tauri": patch:feat
"tauri-utils": patch:feat
---
Allow defining a permission that only applies to a set of target platforms via the `platforms` configuration option.

View File

@ -0,0 +1,5 @@
---
"tauri-utils": patch:enhance
---
Changed plugin markdown docs generation to table format.

Some files were not shown because too many files have changed in this diff Show More