Browse Source

Merge remote-tracking branch 'origin/dev' into next

Lucas Nogueira 2 years ago
parent
commit
bfd97a5802

+ 5 - 3
.github/workflows/check-generated-files.yml

@@ -9,16 +9,16 @@ on:
     paths:
       - '.github/workflows/check-generated-files.yml'
       - 'tooling/api/src/**'
-      - 'tooling/api/docs/js-api.json'
       - 'core/tauri/scripts/bundle.global.js'
       - 'core/tauri-utils/src/config.rs'
       - 'tooling/cli/schema.json'
       - 'core/config-schema/schema.json'
   push:
+    branches:
+      - dev
     paths:
       - '.github/workflows/check-generated-files.yml'
       - 'tooling/api/src/**'
-      - 'tooling/api/docs/js-api.json'
       - 'core/tauri/scripts/bundle.global.js'
       - 'core/tauri-utils/src/config.rs'
       - 'tooling/cli/schema.json'
@@ -60,7 +60,9 @@ jobs:
         working-directory: tooling/api
         run: yarn && yarn build
       - name: check api
-        run: ./.scripts/ci/has-diff.sh
+        run: |
+          git restore tooling/api/docs/js-api.json
+          ./.scripts/ci/has-diff.sh
 
   check-schema:
     runs-on: ubuntu-latest

+ 30 - 30
core/config-schema/schema.json

@@ -210,7 +210,7 @@
   "additionalProperties": false,
   "definitions": {
     "PackageConfig": {
-      "description": "The package configuration.",
+      "description": "The package configuration.\n\nSee more: https://tauri.app/v1/api/config#packageconfig",
       "type": "object",
       "properties": {
         "productName": {
@@ -233,7 +233,7 @@
       "additionalProperties": false
     },
     "TauriConfig": {
-      "description": "The Tauri configuration object.",
+      "description": "The Tauri configuration object.\n\nSee more: https://tauri.app/v1/api/config#tauriconfig",
       "type": "object",
       "properties": {
         "pattern": {
@@ -512,7 +512,7 @@
       ]
     },
     "WindowConfig": {
-      "description": "The window configuration object.",
+      "description": "The window configuration object.\n\nSee more: https://tauri.app/v1/api/config#windowconfig",
       "type": "object",
       "properties": {
         "label": {
@@ -773,7 +773,7 @@
       ]
     },
     "CliConfig": {
-      "description": "describes a CLI configuration",
+      "description": "describes a CLI configuration\n\nSee more: https://tauri.app/v1/api/config#cliconfig",
       "type": "object",
       "properties": {
         "description": {
@@ -1019,7 +1019,7 @@
       "additionalProperties": false
     },
     "BundleConfig": {
-      "description": "Configuration for tauri-bundler.",
+      "description": "Configuration for tauri-bundler.\n\nSee more: https://tauri.app/v1/api/config#bundleconfig",
       "type": "object",
       "required": [
         "identifier"
@@ -1254,7 +1254,7 @@
       ]
     },
     "AppImageConfig": {
-      "description": "Configuration for AppImage bundles.",
+      "description": "Configuration for AppImage bundles.\n\nSee more: https://tauri.app/v1/api/config#appimageconfig",
       "type": "object",
       "properties": {
         "bundleMediaFramework": {
@@ -1266,7 +1266,7 @@
       "additionalProperties": false
     },
     "DebConfig": {
-      "description": "Configuration for Debian (.deb) bundles.",
+      "description": "Configuration for Debian (.deb) bundles.\n\nSee more: https://tauri.app/v1/api/config#debconfig",
       "type": "object",
       "properties": {
         "depends": {
@@ -1291,7 +1291,7 @@
       "additionalProperties": false
     },
     "MacConfig": {
-      "description": "Configuration for the macOS bundles.",
+      "description": "Configuration for the macOS bundles.\n\nSee more: https://tauri.app/v1/api/config#macconfig",
       "type": "object",
       "properties": {
         "frameworks": {
@@ -1351,7 +1351,7 @@
       "additionalProperties": false
     },
     "WindowsConfig": {
-      "description": "Windows bundler configuration.",
+      "description": "Windows bundler configuration.\n\nSee more: https://tauri.app/v1/api/config#windowsconfig",
       "type": "object",
       "properties": {
         "digestAlgorithm": {
@@ -1535,7 +1535,7 @@
       ]
     },
     "WixConfig": {
-      "description": "Configuration for the MSI bundle using WiX.",
+      "description": "Configuration for the MSI bundle using WiX.\n\nSee more: https://tauri.app/v1/api/config#wixconfig",
       "type": "object",
       "properties": {
         "language": {
@@ -1660,7 +1660,7 @@
       ]
     },
     "WixLanguageConfig": {
-      "description": "Configuration for a target language for the WiX build.",
+      "description": "Configuration for a target language for the WiX build.\n\nSee more: https://tauri.app/v1/api/config#wixlanguageconfig",
       "type": "object",
       "properties": {
         "localePath": {
@@ -1989,7 +1989,7 @@
       "additionalProperties": false
     },
     "FsAllowlistConfig": {
-      "description": "Allowlist for the file system APIs.",
+      "description": "Allowlist for the file system APIs.\n\nSee more: https://tauri.app/v1/api/config#fsallowlistconfig",
       "type": "object",
       "properties": {
         "scope": {
@@ -2089,7 +2089,7 @@
       ]
     },
     "WindowAllowlistConfig": {
-      "description": "Allowlist for the window APIs.",
+      "description": "Allowlist for the window APIs.\n\nSee more: https://tauri.app/v1/api/config#windowallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2256,7 +2256,7 @@
       "additionalProperties": false
     },
     "ShellAllowlistConfig": {
-      "description": "Allowlist for the shell APIs.",
+      "description": "Allowlist for the shell APIs.\n\nSee more: https://tauri.app/v1/api/config#shellallowlistconfig",
       "type": "object",
       "properties": {
         "scope": {
@@ -2387,7 +2387,7 @@
       ]
     },
     "DialogAllowlistConfig": {
-      "description": "Allowlist for the dialog APIs.",
+      "description": "Allowlist for the dialog APIs.\n\nSee more: https://tauri.app/v1/api/config#dialogallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2424,7 +2424,7 @@
       "additionalProperties": false
     },
     "HttpAllowlistConfig": {
-      "description": "Allowlist for the HTTP APIs.",
+      "description": "Allowlist for the HTTP APIs.\n\nSee more: https://tauri.app/v1/api/config#httpallowlistconfig",
       "type": "object",
       "properties": {
         "scope": {
@@ -2458,7 +2458,7 @@
       }
     },
     "NotificationAllowlistConfig": {
-      "description": "Allowlist for the notification APIs.",
+      "description": "Allowlist for the notification APIs.\n\nSee more: https://tauri.app/v1/api/config#notificationallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2470,7 +2470,7 @@
       "additionalProperties": false
     },
     "GlobalShortcutAllowlistConfig": {
-      "description": "Allowlist for the global shortcut APIs.",
+      "description": "Allowlist for the global shortcut APIs.\n\nSee more: https://tauri.app/v1/api/config#globalshortcutallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2482,7 +2482,7 @@
       "additionalProperties": false
     },
     "OsAllowlistConfig": {
-      "description": "Allowlist for the OS APIs.",
+      "description": "Allowlist for the OS APIs.\n\nSee more: https://tauri.app/v1/api/config#osallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2494,7 +2494,7 @@
       "additionalProperties": false
     },
     "PathAllowlistConfig": {
-      "description": "Allowlist for the path APIs.",
+      "description": "Allowlist for the path APIs.\n\nSee more: https://tauri.app/v1/api/config#pathallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2506,7 +2506,7 @@
       "additionalProperties": false
     },
     "ProtocolAllowlistConfig": {
-      "description": "Allowlist for the custom protocols.",
+      "description": "Allowlist for the custom protocols.\n\nSee more: https://tauri.app/v1/api/config#protocolallowlistconfig",
       "type": "object",
       "properties": {
         "assetScope": {
@@ -2532,7 +2532,7 @@
       "additionalProperties": false
     },
     "ProcessAllowlistConfig": {
-      "description": "Allowlist for the process APIs.",
+      "description": "Allowlist for the process APIs.\n\nSee more: https://tauri.app/v1/api/config#processallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2559,7 +2559,7 @@
       "additionalProperties": false
     },
     "ClipboardAllowlistConfig": {
-      "description": "Allowlist for the clipboard APIs.",
+      "description": "Allowlist for the clipboard APIs.\n\nSee more: https://tauri.app/v1/api/config#clipboardallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2581,7 +2581,7 @@
       "additionalProperties": false
     },
     "AppAllowlistConfig": {
-      "description": "Allowlist for the app APIs.",
+      "description": "Allowlist for the app APIs.\n\nSee more: https://tauri.app/v1/api/config#appallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2603,7 +2603,7 @@
       "additionalProperties": false
     },
     "SecurityConfig": {
-      "description": "Security configuration.",
+      "description": "Security configuration.\n\nSee more: https://tauri.app/v1/api/config#securityconfig",
       "type": "object",
       "properties": {
         "csp": {
@@ -2694,7 +2694,7 @@
       ]
     },
     "UpdaterConfig": {
-      "description": "The Updater configuration object.",
+      "description": "The Updater configuration object.\n\nSee more: https://tauri.app/v1/api/config#updaterconfig",
       "type": "object",
       "properties": {
         "active": {
@@ -2743,7 +2743,7 @@
       "format": "uri"
     },
     "UpdaterWindowsConfig": {
-      "description": "The updater configuration for Windows.",
+      "description": "The updater configuration for Windows.\n\nSee more: https://tauri.app/v1/api/config#updaterwindowsconfig",
       "type": "object",
       "properties": {
         "installerArgs": {
@@ -2793,7 +2793,7 @@
       ]
     },
     "SystemTrayConfig": {
-      "description": "Configuration for application system tray icon.",
+      "description": "Configuration for application system tray icon.\n\nSee more: https://tauri.app/v1/api/config#systemtrayconfig",
       "type": "object",
       "required": [
         "iconPath"
@@ -2824,7 +2824,7 @@
       "additionalProperties": false
     },
     "BuildConfig": {
-      "description": "The Build configuration object.",
+      "description": "The Build configuration object.\n\nSee more: https://tauri.app/v1/api/config#buildconfig",
       "type": "object",
       "properties": {
         "runner": {
@@ -2987,7 +2987,7 @@
       ]
     },
     "PluginConfig": {
-      "description": "The plugin configs holds a HashMap mapping a plugin name to its configuration object.",
+      "description": "The plugin configs holds a HashMap mapping a plugin name to its configuration object.\n\nSee more: https://tauri.app/v1/api/config#pluginconfig",
       "type": "object",
       "additionalProperties": true
     }

+ 1 - 1
core/tauri-runtime-wry/Cargo.toml

@@ -18,7 +18,7 @@ tauri-runtime = { version = "0.13.0-alpha.1", path = "../tauri-runtime" }
 tauri-utils = { version = "2.0.0-alpha.1", path = "../tauri-utils" }
 uuid = { version = "1", features = [ "v4" ] }
 rand = "0.8"
-raw-window-handle = "0.5"
+raw-window-handle = "=0.5.0"
 
 [target."cfg(windows)".dependencies]
 webview2-com = "0.22"

+ 1 - 1
core/tauri-runtime/Cargo.toml

@@ -30,7 +30,7 @@ tauri-utils = { version = "2.0.0-alpha.1", path = "../tauri-utils" }
 uuid = { version = "1", features = [ "v4" ] }
 http = "0.2.4"
 http-range = "0.1.4"
-raw-window-handle = "0.5"
+raw-window-handle = "=0.5.0"
 rand = "0.8"
 url = { version = "2" }
 

+ 60 - 0
core/tauri-utils/src/config.rs

@@ -247,6 +247,8 @@ impl BundleTarget {
 }
 
 /// Configuration for AppImage bundles.
+///
+/// See more: https://tauri.app/v1/api/config#appimageconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -258,6 +260,8 @@ pub struct AppImageConfig {
 }
 
 /// Configuration for Debian (.deb) bundles.
+///
+/// See more: https://tauri.app/v1/api/config#debconfig
 #[skip_serializing_none]
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -282,6 +286,8 @@ where
 }
 
 /// Configuration for the macOS bundles.
+///
+/// See more: https://tauri.app/v1/api/config#macconfig
 #[skip_serializing_none]
 #[derive(Debug, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -338,6 +344,8 @@ fn minimum_system_version() -> Option<String> {
 }
 
 /// Configuration for a target language for the WiX build.
+///
+/// See more: https://tauri.app/v1/api/config#wixlanguageconfig
 #[derive(Debug, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -367,6 +375,8 @@ impl Default for WixLanguage {
 }
 
 /// Configuration for the MSI bundle using WiX.
+///
+/// See more: https://tauri.app/v1/api/config#wixconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -539,6 +549,8 @@ impl Default for WebviewInstallMode {
 }
 
 /// Windows bundler configuration.
+///
+/// See more: https://tauri.app/v1/api/config#windowsconfig
 #[derive(Debug, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -598,6 +610,8 @@ impl Default for WindowsConfig {
 }
 
 /// Configuration for tauri-bundler.
+///
+/// See more: https://tauri.app/v1/api/config#bundleconfig
 #[skip_serializing_none]
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -789,6 +803,8 @@ pub struct CliArg {
 }
 
 /// describes a CLI configuration
+///
+/// See more: https://tauri.app/v1/api/config#cliconfig
 #[skip_serializing_none]
 #[derive(Debug, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -852,6 +868,8 @@ impl CliConfig {
 }
 
 /// The window configuration object.
+///
+/// See more: https://tauri.app/v1/api/config#windowconfig
 #[skip_serializing_none]
 #[derive(Debug, PartialEq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -1170,6 +1188,8 @@ impl Default for DisabledCspModificationKind {
 }
 
 /// Security configuration.
+///
+/// See more: https://tauri.app/v1/api/config#securityconfig
 #[skip_serializing_none]
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -1273,6 +1293,8 @@ impl FsAllowlistScope {
 }
 
 /// Allowlist for the file system APIs.
+///
+/// See more: https://tauri.app/v1/api/config#fsallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -1352,6 +1374,8 @@ impl Allowlist for FsAllowlistConfig {
 }
 
 /// Allowlist for the window APIs.
+///
+/// See more: https://tauri.app/v1/api/config#windowallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -1703,6 +1727,8 @@ impl Default for ShellAllowlistOpen {
 }
 
 /// Allowlist for the shell APIs.
+///
+/// See more: https://tauri.app/v1/api/config#shellallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -1759,6 +1785,8 @@ impl Allowlist for ShellAllowlistConfig {
 }
 
 /// Allowlist for the dialog APIs.
+///
+/// See more: https://tauri.app/v1/api/config#dialogallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -1827,6 +1855,8 @@ impl Allowlist for DialogAllowlistConfig {
 pub struct HttpAllowlistScope(pub Vec<Url>);
 
 /// Allowlist for the HTTP APIs.
+///
+/// See more: https://tauri.app/v1/api/config#httpallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -1866,6 +1896,8 @@ impl Allowlist for HttpAllowlistConfig {
 }
 
 /// Allowlist for the notification APIs.
+///
+/// See more: https://tauri.app/v1/api/config#notificationallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -1893,6 +1925,8 @@ impl Allowlist for NotificationAllowlistConfig {
 }
 
 /// Allowlist for the global shortcut APIs.
+///
+/// See more: https://tauri.app/v1/api/config#globalshortcutallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -1920,6 +1954,8 @@ impl Allowlist for GlobalShortcutAllowlistConfig {
 }
 
 /// Allowlist for the OS APIs.
+///
+/// See more: https://tauri.app/v1/api/config#osallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -1947,6 +1983,8 @@ impl Allowlist for OsAllowlistConfig {
 }
 
 /// Allowlist for the path APIs.
+///
+/// See more: https://tauri.app/v1/api/config#pathallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -1974,6 +2012,8 @@ impl Allowlist for PathAllowlistConfig {
 }
 
 /// Allowlist for the custom protocols.
+///
+/// See more: https://tauri.app/v1/api/config#protocolallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -2013,6 +2053,8 @@ impl Allowlist for ProtocolAllowlistConfig {
 }
 
 /// Allowlist for the process APIs.
+///
+/// See more: https://tauri.app/v1/api/config#processallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -2070,6 +2112,8 @@ impl Allowlist for ProcessAllowlistConfig {
 }
 
 /// Allowlist for the clipboard APIs.
+///
+/// See more: https://tauri.app/v1/api/config#clipboardallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -2110,6 +2154,8 @@ impl Allowlist for ClipboardAllowlistConfig {
 }
 
 /// Allowlist for the app APIs.
+///
+/// See more: https://tauri.app/v1/api/config#appallowlistconfig
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -2271,6 +2317,8 @@ impl Default for PatternKind {
 }
 
 /// The Tauri configuration object.
+///
+/// See more: https://tauri.app/v1/api/config#tauriconfig
 #[skip_serializing_none]
 #[derive(Debug, Default, PartialEq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -2449,6 +2497,8 @@ impl<'de> Deserialize<'de> for WindowsUpdateInstallMode {
 }
 
 /// The updater configuration for Windows.
+///
+/// See more: https://tauri.app/v1/api/config#updaterwindowsconfig
 #[skip_serializing_none]
 #[derive(Debug, Default, PartialEq, Eq, Clone, Serialize, Deserialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -2463,6 +2513,8 @@ pub struct UpdaterWindowsConfig {
 }
 
 /// The Updater configuration object.
+///
+/// See more: https://tauri.app/v1/api/config#updaterconfig
 #[skip_serializing_none]
 #[derive(Debug, PartialEq, Eq, Clone, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -2542,6 +2594,8 @@ impl Default for UpdaterConfig {
 }
 
 /// Configuration for application system tray icon.
+///
+/// See more: https://tauri.app/v1/api/config#systemtrayconfig
 #[skip_serializing_none]
 #[derive(Debug, Default, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -2629,6 +2683,8 @@ pub enum HookCommand {
 }
 
 /// The Build configuration object.
+///
+/// See more: https://tauri.app/v1/api/config#buildconfig
 #[skip_serializing_none]
 #[derive(Debug, PartialEq, Eq, Clone, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
@@ -2762,6 +2818,8 @@ impl<'d> serde::Deserialize<'d> for PackageVersion {
 }
 
 /// The package configuration.
+///
+/// See more: https://tauri.app/v1/api/config#packageconfig
 #[derive(Debug, Clone, Default, PartialEq, Eq, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 #[serde(rename_all = "camelCase", deny_unknown_fields)]
@@ -2891,6 +2949,8 @@ pub struct Config {
 }
 
 /// The plugin configs holds a HashMap mapping a plugin name to its configuration object.
+///
+/// See more: https://tauri.app/v1/api/config#pluginconfig
 #[derive(Debug, Clone, Default, PartialEq, Eq, Deserialize, Serialize)]
 #[cfg_attr(feature = "schema", derive(JsonSchema))]
 pub struct PluginConfig(pub HashMap<String, JsonValue>);

+ 1 - 1
core/tauri/Cargo.toml

@@ -70,7 +70,7 @@ bytes = { version = "1", features = [ "serde" ] }
 open = { version = "3.0", optional = true }
 shared_child = { version = "1.0", optional = true }
 os_pipe = { version = "1.0", optional = true }
-raw-window-handle = "0.5"
+raw-window-handle = "=0.5.0"
 minisign-verify = { version = "0.2", optional = true }
 time = { version = "=0.3.15", features = [ "parsing", "formatting" ], optional = true }
 os_info = { version = "=3.5.0", optional = true }

+ 1 - 0
core/tauri/src/app/tray.rs

@@ -679,6 +679,7 @@ impl<R: Runtime> SystemTrayMenuItemHandle<R> {
       .map_err(Into::into)
   }
 
+  /// Sets the native image for this item.
   #[cfg(target_os = "macos")]
   #[cfg_attr(doc_cfg, doc(cfg(target_os = "macos")))]
   pub fn set_native_image(&self, image: crate::NativeImage) -> crate::Result<()> {

+ 1 - 1
core/tauri/src/lib.rs

@@ -274,7 +274,7 @@ pub use self::utils::TitleBarStyle;
 #[cfg(all(desktop, feature = "system-tray"))]
 #[cfg_attr(doc_cfg, doc(cfg(feature = "system-tray")))]
 pub use {
-  self::app::tray::{SystemTray, SystemTrayEvent, SystemTrayHandle},
+  self::app::tray::{SystemTray, SystemTrayEvent, SystemTrayHandle, SystemTrayMenuItemHandle},
   self::runtime::menu::{SystemTrayMenu, SystemTrayMenuItem, SystemTraySubmenu},
 };
 pub use {

File diff suppressed because it is too large
+ 0 - 0
tooling/api/docs/js-api.json


+ 1 - 5
tooling/api/src/http.ts

@@ -123,11 +123,7 @@ class Body {
    * // alternatively, use a FormData:
    * const form = new FormData();
    * form.append('key', 'value');
-   * form.append('image', {
-   *   file: '/path/to/file',
-   *   mime: 'image/jpeg',
-   *   fileName: 'image.jpg'
-   * });
+   * form.append('image', file, 'image.png');
    * const formBody = Body.form(form);
    * ```
    *

+ 7 - 5
tooling/api/src/shell.ts

@@ -57,11 +57,13 @@
  * Configuration:
  * ```json
  * {
- *   "scope": {
- *     "name": "run-git-commit",
- *     "cmd": "git",
- *     "args": ["commit", "-m", { "validator": "\\S+" }]
- *   }
+ *   "scope": [
+ *     {
+ *       "name": "run-git-commit",
+ *       "cmd": "git",
+ *       "args": ["commit", "-m", { "validator": "\\S+" }]
+ *     }
+ *   ]
  * }
  * ```
  * Usage:

+ 2 - 2
tooling/bundler/src/bundle/linux/templates/appimage

@@ -55,9 +55,9 @@ chmod +x "{{tauri_tools_path}}/AppRun-${ARCH}"
 cp "{{tauri_tools_path}}/AppRun-${ARCH}" AppRun
 
 cp "{{icon_path}}" .DirIcon
-ln -s "{{icon_path}}" "{{app_name}}.png"
+ln -sf "{{icon_path}}" "{{app_name}}.png"
 
-ln -s "usr/share/applications/{{app_name}}.desktop" "{{app_name}}.desktop"
+ln -sf "usr/share/applications/{{app_name}}.desktop" "{{app_name}}.desktop"
 
 cd ..
 

+ 30 - 30
tooling/cli/schema.json

@@ -210,7 +210,7 @@
   "additionalProperties": false,
   "definitions": {
     "PackageConfig": {
-      "description": "The package configuration.",
+      "description": "The package configuration.\n\nSee more: https://tauri.app/v1/api/config#packageconfig",
       "type": "object",
       "properties": {
         "productName": {
@@ -233,7 +233,7 @@
       "additionalProperties": false
     },
     "TauriConfig": {
-      "description": "The Tauri configuration object.",
+      "description": "The Tauri configuration object.\n\nSee more: https://tauri.app/v1/api/config#tauriconfig",
       "type": "object",
       "properties": {
         "pattern": {
@@ -512,7 +512,7 @@
       ]
     },
     "WindowConfig": {
-      "description": "The window configuration object.",
+      "description": "The window configuration object.\n\nSee more: https://tauri.app/v1/api/config#windowconfig",
       "type": "object",
       "properties": {
         "label": {
@@ -773,7 +773,7 @@
       ]
     },
     "CliConfig": {
-      "description": "describes a CLI configuration",
+      "description": "describes a CLI configuration\n\nSee more: https://tauri.app/v1/api/config#cliconfig",
       "type": "object",
       "properties": {
         "description": {
@@ -1019,7 +1019,7 @@
       "additionalProperties": false
     },
     "BundleConfig": {
-      "description": "Configuration for tauri-bundler.",
+      "description": "Configuration for tauri-bundler.\n\nSee more: https://tauri.app/v1/api/config#bundleconfig",
       "type": "object",
       "required": [
         "identifier"
@@ -1254,7 +1254,7 @@
       ]
     },
     "AppImageConfig": {
-      "description": "Configuration for AppImage bundles.",
+      "description": "Configuration for AppImage bundles.\n\nSee more: https://tauri.app/v1/api/config#appimageconfig",
       "type": "object",
       "properties": {
         "bundleMediaFramework": {
@@ -1266,7 +1266,7 @@
       "additionalProperties": false
     },
     "DebConfig": {
-      "description": "Configuration for Debian (.deb) bundles.",
+      "description": "Configuration for Debian (.deb) bundles.\n\nSee more: https://tauri.app/v1/api/config#debconfig",
       "type": "object",
       "properties": {
         "depends": {
@@ -1291,7 +1291,7 @@
       "additionalProperties": false
     },
     "MacConfig": {
-      "description": "Configuration for the macOS bundles.",
+      "description": "Configuration for the macOS bundles.\n\nSee more: https://tauri.app/v1/api/config#macconfig",
       "type": "object",
       "properties": {
         "frameworks": {
@@ -1351,7 +1351,7 @@
       "additionalProperties": false
     },
     "WindowsConfig": {
-      "description": "Windows bundler configuration.",
+      "description": "Windows bundler configuration.\n\nSee more: https://tauri.app/v1/api/config#windowsconfig",
       "type": "object",
       "properties": {
         "digestAlgorithm": {
@@ -1535,7 +1535,7 @@
       ]
     },
     "WixConfig": {
-      "description": "Configuration for the MSI bundle using WiX.",
+      "description": "Configuration for the MSI bundle using WiX.\n\nSee more: https://tauri.app/v1/api/config#wixconfig",
       "type": "object",
       "properties": {
         "language": {
@@ -1660,7 +1660,7 @@
       ]
     },
     "WixLanguageConfig": {
-      "description": "Configuration for a target language for the WiX build.",
+      "description": "Configuration for a target language for the WiX build.\n\nSee more: https://tauri.app/v1/api/config#wixlanguageconfig",
       "type": "object",
       "properties": {
         "localePath": {
@@ -1989,7 +1989,7 @@
       "additionalProperties": false
     },
     "FsAllowlistConfig": {
-      "description": "Allowlist for the file system APIs.",
+      "description": "Allowlist for the file system APIs.\n\nSee more: https://tauri.app/v1/api/config#fsallowlistconfig",
       "type": "object",
       "properties": {
         "scope": {
@@ -2089,7 +2089,7 @@
       ]
     },
     "WindowAllowlistConfig": {
-      "description": "Allowlist for the window APIs.",
+      "description": "Allowlist for the window APIs.\n\nSee more: https://tauri.app/v1/api/config#windowallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2256,7 +2256,7 @@
       "additionalProperties": false
     },
     "ShellAllowlistConfig": {
-      "description": "Allowlist for the shell APIs.",
+      "description": "Allowlist for the shell APIs.\n\nSee more: https://tauri.app/v1/api/config#shellallowlistconfig",
       "type": "object",
       "properties": {
         "scope": {
@@ -2387,7 +2387,7 @@
       ]
     },
     "DialogAllowlistConfig": {
-      "description": "Allowlist for the dialog APIs.",
+      "description": "Allowlist for the dialog APIs.\n\nSee more: https://tauri.app/v1/api/config#dialogallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2424,7 +2424,7 @@
       "additionalProperties": false
     },
     "HttpAllowlistConfig": {
-      "description": "Allowlist for the HTTP APIs.",
+      "description": "Allowlist for the HTTP APIs.\n\nSee more: https://tauri.app/v1/api/config#httpallowlistconfig",
       "type": "object",
       "properties": {
         "scope": {
@@ -2458,7 +2458,7 @@
       }
     },
     "NotificationAllowlistConfig": {
-      "description": "Allowlist for the notification APIs.",
+      "description": "Allowlist for the notification APIs.\n\nSee more: https://tauri.app/v1/api/config#notificationallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2470,7 +2470,7 @@
       "additionalProperties": false
     },
     "GlobalShortcutAllowlistConfig": {
-      "description": "Allowlist for the global shortcut APIs.",
+      "description": "Allowlist for the global shortcut APIs.\n\nSee more: https://tauri.app/v1/api/config#globalshortcutallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2482,7 +2482,7 @@
       "additionalProperties": false
     },
     "OsAllowlistConfig": {
-      "description": "Allowlist for the OS APIs.",
+      "description": "Allowlist for the OS APIs.\n\nSee more: https://tauri.app/v1/api/config#osallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2494,7 +2494,7 @@
       "additionalProperties": false
     },
     "PathAllowlistConfig": {
-      "description": "Allowlist for the path APIs.",
+      "description": "Allowlist for the path APIs.\n\nSee more: https://tauri.app/v1/api/config#pathallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2506,7 +2506,7 @@
       "additionalProperties": false
     },
     "ProtocolAllowlistConfig": {
-      "description": "Allowlist for the custom protocols.",
+      "description": "Allowlist for the custom protocols.\n\nSee more: https://tauri.app/v1/api/config#protocolallowlistconfig",
       "type": "object",
       "properties": {
         "assetScope": {
@@ -2532,7 +2532,7 @@
       "additionalProperties": false
     },
     "ProcessAllowlistConfig": {
-      "description": "Allowlist for the process APIs.",
+      "description": "Allowlist for the process APIs.\n\nSee more: https://tauri.app/v1/api/config#processallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2559,7 +2559,7 @@
       "additionalProperties": false
     },
     "ClipboardAllowlistConfig": {
-      "description": "Allowlist for the clipboard APIs.",
+      "description": "Allowlist for the clipboard APIs.\n\nSee more: https://tauri.app/v1/api/config#clipboardallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2581,7 +2581,7 @@
       "additionalProperties": false
     },
     "AppAllowlistConfig": {
-      "description": "Allowlist for the app APIs.",
+      "description": "Allowlist for the app APIs.\n\nSee more: https://tauri.app/v1/api/config#appallowlistconfig",
       "type": "object",
       "properties": {
         "all": {
@@ -2603,7 +2603,7 @@
       "additionalProperties": false
     },
     "SecurityConfig": {
-      "description": "Security configuration.",
+      "description": "Security configuration.\n\nSee more: https://tauri.app/v1/api/config#securityconfig",
       "type": "object",
       "properties": {
         "csp": {
@@ -2694,7 +2694,7 @@
       ]
     },
     "UpdaterConfig": {
-      "description": "The Updater configuration object.",
+      "description": "The Updater configuration object.\n\nSee more: https://tauri.app/v1/api/config#updaterconfig",
       "type": "object",
       "properties": {
         "active": {
@@ -2743,7 +2743,7 @@
       "format": "uri"
     },
     "UpdaterWindowsConfig": {
-      "description": "The updater configuration for Windows.",
+      "description": "The updater configuration for Windows.\n\nSee more: https://tauri.app/v1/api/config#updaterwindowsconfig",
       "type": "object",
       "properties": {
         "installerArgs": {
@@ -2793,7 +2793,7 @@
       ]
     },
     "SystemTrayConfig": {
-      "description": "Configuration for application system tray icon.",
+      "description": "Configuration for application system tray icon.\n\nSee more: https://tauri.app/v1/api/config#systemtrayconfig",
       "type": "object",
       "required": [
         "iconPath"
@@ -2824,7 +2824,7 @@
       "additionalProperties": false
     },
     "BuildConfig": {
-      "description": "The Build configuration object.",
+      "description": "The Build configuration object.\n\nSee more: https://tauri.app/v1/api/config#buildconfig",
       "type": "object",
       "properties": {
         "runner": {
@@ -2987,7 +2987,7 @@
       ]
     },
     "PluginConfig": {
-      "description": "The plugin configs holds a HashMap mapping a plugin name to its configuration object.",
+      "description": "The plugin configs holds a HashMap mapping a plugin name to its configuration object.\n\nSee more: https://tauri.app/v1/api/config#pluginconfig",
       "type": "object",
       "additionalProperties": true
     }

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