@tauri-apps/cli 2.4.1 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,47 @@
1
1
  # Changelog
2
2
 
3
+ ## \[2.6.0]
4
+
5
+ ### New Features
6
+
7
+ - [`414619c36`](https://www.github.com/tauri-apps/tauri/commit/414619c36e94e21939534dd72c0438b93da75546) ([#13536](https://www.github.com/tauri-apps/tauri/pull/13536) by [@Tunglies](https://www.github.com/tauri-apps/tauri/../../Tunglies)) Added support for the `bundleName` property in the macOS bundler configuration. This allows specifying the `CFBundleName` value for generated macOS bundles.
8
+ - [`3242e1c94`](https://www.github.com/tauri-apps/tauri/commit/3242e1c946c441b58665ba5d612f3a3f1eafe0b6) ([#13659](https://www.github.com/tauri-apps/tauri/pull/13659) by [@lucasfernog](https://www.github.com/tauri-apps/tauri/../../lucasfernog)) Allow passing Cargo arguments to mobile dev and build commands.
9
+ - [`d1ce9af62`](https://www.github.com/tauri-apps/tauri/commit/d1ce9af62881e3f7d86a495c9c40df5b7f9d1c04) ([#13660](https://www.github.com/tauri-apps/tauri/pull/13660) by [@lucasfernog](https://www.github.com/tauri-apps/tauri/../../lucasfernog)) Allow passing `--config` arguments to the `ios init` and `android init` commands to tweak the configuration used to initialize the mobile projects.
10
+ - [`7322f0579`](https://www.github.com/tauri-apps/tauri/commit/7322f057923aaec88960ad5556776774b745762f) ([#13502](https://www.github.com/tauri-apps/tauri/pull/13502) by [@amrbashir](https://www.github.com/tauri-apps/tauri/../../amrbashir)) Allow using `CheckIfAppIsRunning` macro inside NSIS hooks, for example `!insertmacro CheckIfAppIsRunning "another-executable.exe" "Another Executable"`.
11
+ - [`4a880ca69`](https://www.github.com/tauri-apps/tauri/commit/4a880ca697bab6d63a2a51ea94e1988cc8c4ea4a) ([#13658](https://www.github.com/tauri-apps/tauri/pull/13658) by [@lucasfernog](https://www.github.com/tauri-apps/tauri/../../lucasfernog)) Synchronize Tauri config productName changes with the iOS Xcode project.
12
+ - [`8ee14a864`](https://www.github.com/tauri-apps/tauri/commit/8ee14a86480510c15823586cf28084e615cb7a9c) ([#13618](https://www.github.com/tauri-apps/tauri/pull/13618) by [@Sky-walkerX](https://www.github.com/tauri-apps/tauri/../../Sky-walkerX)) Warn the user that the app id shouldn't end in `.app` because it conflicts with the application bundle extension on macOS
13
+
14
+ ### Bug Fixes
15
+
16
+ - [`35aa7e121`](https://www.github.com/tauri-apps/tauri/commit/35aa7e1218f34d0805e280e3ec32529d0cb0d733) ([#13294](https://www.github.com/tauri-apps/tauri/pull/13294) by [@kingsword09](https://www.github.com/tauri-apps/tauri/../../kingsword09)) fix: allow the target directory to be inside frontendDir as long as it is not the Rust target directory inside frontendDir.
17
+ - [`ec6065fa4`](https://www.github.com/tauri-apps/tauri/commit/ec6065fa4a6427266ecfb0c0f62f008574bb7880) ([#13625](https://www.github.com/tauri-apps/tauri/pull/13625) by [@lucasfernog](https://www.github.com/tauri-apps/tauri/../../lucasfernog)) Fixes Android and iOS dev/build commands not working when the app identifier is being modified by the `--config` option.
18
+ - [`5a5291d66`](https://www.github.com/tauri-apps/tauri/commit/5a5291d66cb8a955c9d4f8e975782646ac0cc6e7) ([#13483](https://www.github.com/tauri-apps/tauri/pull/13483) by [@lucasfernog](https://www.github.com/tauri-apps/tauri/../../lucasfernog)) Fix simulator build detection on Xcode.
19
+
20
+ ### Dependencies
21
+
22
+ - Upgraded to `tauri-cli@2.6.0`
23
+ - [`9c16eefa3`](https://www.github.com/tauri-apps/tauri/commit/9c16eefa319b4697bac1d1019bbb5f93eca63173) ([#13629](https://www.github.com/tauri-apps/tauri/pull/13629) by [@sftse](https://www.github.com/tauri-apps/tauri/../../sftse)) Update html5ever to 0.29 and kuchikiki to version 0.8.8-speedreader.
24
+
25
+ ## \[2.5.0]
26
+
27
+ ### New Features
28
+
29
+ - [`0aa48fb9e`](https://www.github.com/tauri-apps/tauri/commit/0aa48fb9e4b9d7b5bf3522000a76ebc1836394ed) ([#13030](https://www.github.com/tauri-apps/tauri/pull/13030)) Added `bundleVersion` to iOS and macOS configuration to support specifying a `CFBundleVersion`.
30
+
31
+ ### Enhancements
32
+
33
+ - [`ad3fd3890`](https://www.github.com/tauri-apps/tauri/commit/ad3fd3890f1fa26a9f9be04ff1bc156d6dd2a8bc) ([#13152](https://www.github.com/tauri-apps/tauri/pull/13152)) Detect package manager from environment variable `npm_config_user_agent` first
34
+ - [`82406c61e`](https://www.github.com/tauri-apps/tauri/commit/82406c61e0fbb775ef00791ccab45349325bdd45) ([#13231](https://www.github.com/tauri-apps/tauri/pull/13231)) Improve iOS simulator usage, checking if Xcode iOS SDK is installed and allowing usage of Simulator for older iOS releases (previously only supported when running on Xcode via `ios dev --open`).
35
+
36
+ ### Bug Fixes
37
+
38
+ - [`2dccfab53`](https://www.github.com/tauri-apps/tauri/commit/2dccfab5321fef55d45f3a4c674b6151b1c4424a) ([#13236](https://www.github.com/tauri-apps/tauri/pull/13236)) Fix `fileAssociations` missing `LSHandlerRank` on macOS.
39
+ - [`080252903`](https://www.github.com/tauri-apps/tauri/commit/0802529031c4fd309edff374a8694e93ddec161d) ([#13210](https://www.github.com/tauri-apps/tauri/pull/13210)) Fixes iOS dev not working on Xcode 16.3 simulators. To apply the fix, either regenerate the Xcode project with `rm -r src-tauri/gen/apple && tauri ios init` or remove the `arm64-sim` architecture from the Xcode project.
40
+
41
+ ### Dependencies
42
+
43
+ - Upgraded to `tauri-cli@2.5.0`
44
+
3
45
  ## \[2.4.1]
4
46
 
5
47
  ### Enhancements
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "https://schema.tauri.app/config/2.4.1",
3
+ "$id": "https://schema.tauri.app/config/2.6.0",
4
4
  "title": "Config",
5
5
  "description": "The Tauri configuration object.\n It is read from a file where you can define your frontend assets,\n configure the bundler and define a tray icon.\n\n The configuration file is generated by the\n [`tauri init`](https://v2.tauri.app/reference/cli/#init) command that lives in\n your Tauri application source directory (src-tauri).\n\n Once generated, you may modify it at will to customize your Tauri application.\n\n ## File Formats\n\n By default, the configuration is defined as a JSON file named `tauri.conf.json`.\n\n Tauri also supports JSON5 and TOML files via the `config-json5` and `config-toml` Cargo features, respectively.\n The JSON5 file name must be either `tauri.conf.json` or `tauri.conf.json5`.\n The TOML file name is `Tauri.toml`.\n\n ## Platform-Specific Configuration\n\n In addition to the default configuration file, Tauri can\n read a platform-specific configuration from `tauri.linux.conf.json`,\n `tauri.windows.conf.json`, `tauri.macos.conf.json`, `tauri.android.conf.json` and `tauri.ios.conf.json`\n (or `Tauri.linux.toml`, `Tauri.windows.toml`, `Tauri.macos.toml`, `Tauri.android.toml` and `Tauri.ios.toml` if the `Tauri.toml` format is used),\n which gets merged with the main configuration object.\n\n ## Configuration Structure\n\n The configuration is composed of the following objects:\n\n - [`app`](#appconfig): The Tauri configuration\n - [`build`](#buildconfig): The build configuration\n - [`bundle`](#bundleconfig): The bundle configurations\n - [`plugins`](#pluginconfig): The plugins configuration\n\n Example tauri.config.json file:\n\n ```json\n {\n \"productName\": \"tauri-app\",\n \"version\": \"0.1.0\",\n \"build\": {\n \"beforeBuildCommand\": \"\",\n \"beforeDevCommand\": \"\",\n \"devUrl\": \"http://localhost:3000\",\n \"frontendDist\": \"../dist\"\n },\n \"app\": {\n \"security\": {\n \"csp\": null\n },\n \"windows\": [\n {\n \"fullscreen\": false,\n \"height\": 600,\n \"resizable\": true,\n \"title\": \"Tauri App\",\n \"width\": 800\n }\n ]\n },\n \"bundle\": {},\n \"plugins\": {}\n }\n ```",
6
6
  "type": "object",
@@ -24,14 +24,14 @@
24
24
  "pattern": "^[^/\\:*?\"<>|]+$"
25
25
  },
26
26
  "mainBinaryName": {
27
- "description": "App main binary filename. Defaults to the name of your cargo crate.",
27
+ "description": "Overrides app's main binary filename.\n\n By default, Tauri uses the output binary from `cargo`, by setting this, we will rename that binary in `tauri-cli`'s\n `tauri build` command, and target `tauri bundle` to it\n\n If possible, change the [`package name`] or set the [`name field`] instead,\n and if that's not enough and you're using nightly, consider using the [`different-binary-name`] feature instead\n\n Note: this config should not include the binary extension (e.g. `.exe`), we'll add that for you\n\n [`package name`]: https://doc.rust-lang.org/cargo/reference/manifest.html#the-name-field\n [`name field`]: https://doc.rust-lang.org/cargo/reference/cargo-targets.html#the-name-field\n [`different-binary-name`]: https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#different-binary-name",
28
28
  "type": [
29
29
  "string",
30
30
  "null"
31
31
  ]
32
32
  },
33
33
  "version": {
34
- "description": "App version. It is a semver version number or a path to a `package.json` file containing the `version` field. If removed the version number from `Cargo.toml` is used.\n\n By default version 1.0 is used on Android.",
34
+ "description": "App version. It is a semver version number or a path to a `package.json` file containing the `version` field.\n\n If removed the version number from `Cargo.toml` is used.\n It's recommended to manage the app versioning in the Tauri config.\n\n ## Platform-specific\n\n - **macOS**: Translates to the bundle's CFBundleShortVersionString property and is used as the default CFBundleVersion.\n You can set an specific bundle version using [`bundle > macOS > bundleVersion`](MacConfig::bundle_version).\n - **iOS**: Translates to the bundle's CFBundleShortVersionString property and is used as the default CFBundleVersion.\n You can set an specific bundle version using [`bundle > iOS > bundleVersion`](IosConfig::bundle_version).\n The `tauri ios build` CLI command has a `--build-number <number>` option that lets you append a build number to the app version.\n - **Android**: By default version 1.0 is used. You can set a version code using [`bundle > android > versionCode`](AndroidConfig::version_code).\n\n By default version 1.0 is used on Android.",
35
35
  "type": [
36
36
  "string",
37
37
  "null"
@@ -319,6 +319,17 @@
319
319
  ],
320
320
  "format": "double"
321
321
  },
322
+ "preventOverflow": {
323
+ "description": "Whether or not to prevent the window from overflowing the workarea\n\n ## Platform-specific\n\n - **iOS / Android:** Unsupported.",
324
+ "anyOf": [
325
+ {
326
+ "$ref": "#/definitions/PreventOverflowConfig"
327
+ },
328
+ {
329
+ "type": "null"
330
+ }
331
+ ]
332
+ },
322
333
  "resizable": {
323
334
  "description": "Whether the window is resizable or not. When resizable is set to false, native window's maximize button is automatically disabled.",
324
335
  "default": true,
@@ -545,6 +556,16 @@
545
556
  "description": "Whether we should disable JavaScript code execution on the webview or not.",
546
557
  "default": false,
547
558
  "type": "boolean"
559
+ },
560
+ "allowLinkPreview": {
561
+ "description": "on macOS and iOS there is a link preview on long pressing links, this is enabled by default.\n see https://docs.rs/objc2-web-kit/latest/objc2_web_kit/struct.WKWebView.html#method.allowsLinkPreview",
562
+ "default": true,
563
+ "type": "boolean"
564
+ },
565
+ "disableInputAccessoryView": {
566
+ "description": "Allows disabling the input accessory view on iOS.\n\n The accessory view is the view that appears above the keyboard when a text input element is focused.\n It usually displays a view with \"Done\", \"Next\" buttons.",
567
+ "default": false,
568
+ "type": "boolean"
548
569
  }
549
570
  },
550
571
  "additionalProperties": false
@@ -568,6 +589,46 @@
568
589
  }
569
590
  ]
570
591
  },
592
+ "PreventOverflowConfig": {
593
+ "description": "Prevent overflow with a margin",
594
+ "anyOf": [
595
+ {
596
+ "description": "Enable prevent overflow or not",
597
+ "type": "boolean"
598
+ },
599
+ {
600
+ "description": "Enable prevent overflow with a margin\n so that the window's size + this margin won't overflow the workarea",
601
+ "allOf": [
602
+ {
603
+ "$ref": "#/definitions/PreventOverflowMargin"
604
+ }
605
+ ]
606
+ }
607
+ ]
608
+ },
609
+ "PreventOverflowMargin": {
610
+ "description": "Enable prevent overflow with a margin\n so that the window's size + this margin won't overflow the workarea",
611
+ "type": "object",
612
+ "required": [
613
+ "height",
614
+ "width"
615
+ ],
616
+ "properties": {
617
+ "width": {
618
+ "description": "Horizontal margin in physical unit",
619
+ "type": "integer",
620
+ "format": "uint32",
621
+ "minimum": 0.0
622
+ },
623
+ "height": {
624
+ "description": "Vertical margin in physical unit",
625
+ "type": "integer",
626
+ "format": "uint32",
627
+ "minimum": 0.0
628
+ }
629
+ },
630
+ "additionalProperties": false
631
+ },
571
632
  "Theme": {
572
633
  "description": "System theme.",
573
634
  "oneOf": [
@@ -1285,7 +1346,7 @@
1285
1346
  ]
1286
1347
  },
1287
1348
  "Capability": {
1288
- "description": "A grouping and boundary mechanism developers can use to isolate access to the IPC layer.\n\n It controls application windows' and webviews' fine grained access\n to the Tauri core, application, or plugin commands.\n If a webview or its window is not matching any capability then it has no access to the IPC layer at all.\n\n This can be done to create groups of windows, based on their required system access, which can reduce\n impact of frontend vulnerabilities in less privileged windows.\n Windows can be added to a capability by exact name (e.g. `main-window`) or glob patterns like `*` or `admin-*`.\n A Window can have none, one, or multiple associated capabilities.\n\n ## Example\n\n ```json\n {\n \"identifier\": \"main-user-files-write\",\n \"description\": \"This capability allows the `main` window on macOS and Windows access to `filesystem` write related commands and `dialog` commands to enable programatic access to files selected by the user.\",\n \"windows\": [\n \"main\"\n ],\n \"permissions\": [\n \"core:default\",\n \"dialog:open\",\n {\n \"identifier\": \"fs:allow-write-text-file\",\n \"allow\": [{ \"path\": \"$HOME/test.txt\" }]\n },\n ],\n \"platforms\": [\"macOS\",\"windows\"]\n }\n ```",
1349
+ "description": "A grouping and boundary mechanism developers can use to isolate access to the IPC layer.\n\n It controls application windows' and webviews' fine grained access\n to the Tauri core, application, or plugin commands.\n If a webview or its window is not matching any capability then it has no access to the IPC layer at all.\n\n This can be done to create groups of windows, based on their required system access, which can reduce\n impact of frontend vulnerabilities in less privileged windows.\n Windows can be added to a capability by exact name (e.g. `main-window`) or glob patterns like `*` or `admin-*`.\n A Window can have none, one, or multiple associated capabilities.\n\n ## Example\n\n ```json\n {\n \"identifier\": \"main-user-files-write\",\n \"description\": \"This capability allows the `main` window on macOS and Windows access to `filesystem` write related commands and `dialog` commands to enable programmatic access to files selected by the user.\",\n \"windows\": [\n \"main\"\n ],\n \"permissions\": [\n \"core:default\",\n \"dialog:open\",\n {\n \"identifier\": \"fs:allow-write-text-file\",\n \"allow\": [{ \"path\": \"$HOME/test.txt\" }]\n },\n ],\n \"platforms\": [\"macOS\",\"windows\"]\n }\n ```",
1289
1350
  "type": "object",
1290
1351
  "required": [
1291
1352
  "identifier",
@@ -1297,7 +1358,7 @@
1297
1358
  "type": "string"
1298
1359
  },
1299
1360
  "description": {
1300
- "description": "Description of what the capability is intended to allow on associated windows.\n\n It should contain a description of what the grouped permissions should allow.\n\n ## Example\n\n This capability allows the `main` window access to `filesystem` write related\n commands and `dialog` commands to enable programatic access to files selected by the user.",
1361
+ "description": "Description of what the capability is intended to allow on associated windows.\n\n It should contain a description of what the grouped permissions should allow.\n\n ## Example\n\n This capability allows the `main` window access to `filesystem` write related\n commands and `dialog` commands to enable programmatic access to files selected by the user.",
1301
1362
  "default": "",
1302
1363
  "type": "string"
1303
1364
  },
@@ -1515,7 +1576,7 @@
1515
1576
  ]
1516
1577
  },
1517
1578
  "HeaderConfig": {
1518
- "description": "A struct, where the keys are some specific http header names.\n If the values to those keys are defined, then they will be send as part of a response message.\n This does not include error messages and ipc messages\n\n ## Example configuration\n ```javascript\n {\n //..\n app:{\n //..\n security: {\n headers: {\n \"Cross-Origin-Opener-Policy\": \"same-origin\",\n \"Cross-Origin-Embedder-Policy\": \"require-corp\",\n \"Timing-Allow-Origin\": [\n \"https://developer.mozilla.org\",\n \"https://example.com\",\n ],\n \"Access-Control-Expose-Headers\": \"Tauri-Custom-Header\",\n \"Tauri-Custom-Header\": {\n \"key1\": \"'value1' 'value2'\",\n \"key2\": \"'value3'\"\n }\n },\n csp: \"default-src 'self'; connect-src ipc: http://ipc.localhost\",\n }\n //..\n }\n //..\n }\n ```\n In this example `Cross-Origin-Opener-Policy` and `Cross-Origin-Embedder-Policy` are set to allow for the use of [`SharedArrayBuffer`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer).\n The result is, that those headers are then set on every response sent via the `get_response` function in crates/tauri/src/protocol/tauri.rs.\n The Content-Security-Policy header is defined separately, because it is also handled separately.\n\n For the helloworld example, this config translates into those response headers:\n ```http\n access-control-allow-origin: http://tauri.localhost\n access-control-expose-headers: Tauri-Custom-Header\n content-security-policy: default-src 'self'; connect-src ipc: http://ipc.localhost; script-src 'self' 'sha256-Wjjrs6qinmnr+tOry8x8PPwI77eGpUFR3EEGZktjJNs='\n content-type: text/html\n cross-origin-embedder-policy: require-corp\n cross-origin-opener-policy: same-origin\n tauri-custom-header: key1 'value1' 'value2'; key2 'value3'\n timing-allow-origin: https://developer.mozilla.org, https://example.com\n ```\n Since the resulting header values are always 'string-like'. So depending on the what data type the HeaderSource is, they need to be converted.\n - `String`(JS/Rust): stay the same for the resulting header value\n - `Array`(JS)/`Vec\\<String\\>`(Rust): Item are joined by \", \" for the resulting header value\n - `Object`(JS)/ `Hashmap\\<String,String\\>`(Rust): Items are composed from: key + space + value. Item are then joined by \"; \" for the resulting header value",
1579
+ "description": "A struct, where the keys are some specific http header names.\n\n If the values to those keys are defined, then they will be send as part of a response message.\n This does not include error messages and ipc messages\n\n ## Example configuration\n ```javascript\n {\n //..\n app:{\n //..\n security: {\n headers: {\n \"Cross-Origin-Opener-Policy\": \"same-origin\",\n \"Cross-Origin-Embedder-Policy\": \"require-corp\",\n \"Timing-Allow-Origin\": [\n \"https://developer.mozilla.org\",\n \"https://example.com\",\n ],\n \"Access-Control-Expose-Headers\": \"Tauri-Custom-Header\",\n \"Tauri-Custom-Header\": {\n \"key1\": \"'value1' 'value2'\",\n \"key2\": \"'value3'\"\n }\n },\n csp: \"default-src 'self'; connect-src ipc: http://ipc.localhost\",\n }\n //..\n }\n //..\n }\n ```\n In this example `Cross-Origin-Opener-Policy` and `Cross-Origin-Embedder-Policy` are set to allow for the use of [`SharedArrayBuffer`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer).\n The result is, that those headers are then set on every response sent via the `get_response` function in crates/tauri/src/protocol/tauri.rs.\n The Content-Security-Policy header is defined separately, because it is also handled separately.\n\n For the helloworld example, this config translates into those response headers:\n ```http\n access-control-allow-origin: http://tauri.localhost\n access-control-expose-headers: Tauri-Custom-Header\n content-security-policy: default-src 'self'; connect-src ipc: http://ipc.localhost; script-src 'self' 'sha256-Wjjrs6qinmnr+tOry8x8PPwI77eGpUFR3EEGZktjJNs='\n content-type: text/html\n cross-origin-embedder-policy: require-corp\n cross-origin-opener-policy: same-origin\n tauri-custom-header: key1 'value1' 'value2'; key2 'value3'\n timing-allow-origin: https://developer.mozilla.org, https://example.com\n ```\n Since the resulting header values are always 'string-like'. So depending on the what data type the HeaderSource is, they need to be converted.\n - `String`(JS/Rust): stay the same for the resulting header value\n - `Array`(JS)/`Vec\\<String\\>`(Rust): Item are joined by \", \" for the resulting header value\n - `Object`(JS)/ `Hashmap\\<String,String\\>`(Rust): Items are composed from: key + space + value. Item are then joined by \"; \" for the resulting header value",
1519
1580
  "type": "object",
1520
1581
  "properties": {
1521
1582
  "Access-Control-Allow-Credentials": {
@@ -1617,6 +1678,17 @@
1617
1678
  }
1618
1679
  ]
1619
1680
  },
1681
+ "Service-Worker-Allowed": {
1682
+ "description": "The HTTP Service-Worker-Allowed response header is used to broaden the path restriction for a\n service worker's default scope.\n\n By default, the scope for a service worker registration is the directory where the service\n worker script is located. For example, if the script `sw.js` is located in `/js/sw.js`,\n it can only control URLs under `/js/` by default. Servers can use the `Service-Worker-Allowed`\n header to allow a service worker to control URLs outside of its own directory.\n\n See <https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Service-Worker-Allowed>",
1683
+ "anyOf": [
1684
+ {
1685
+ "$ref": "#/definitions/HeaderSource"
1686
+ },
1687
+ {
1688
+ "type": "null"
1689
+ }
1690
+ ]
1691
+ },
1620
1692
  "Timing-Allow-Origin": {
1621
1693
  "description": "The Timing-Allow-Origin response header specifies origins that are allowed to see values\n of attributes retrieved via features of the Resource Timing API, which would otherwise be\n reported as zero due to cross-origin restrictions.\n\n See <https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Timing-Allow-Origin>",
1622
1694
  "anyOf": [
@@ -1801,7 +1873,7 @@
1801
1873
  }
1802
1874
  },
1803
1875
  "removeUnusedCommands": {
1804
- "description": "Try to remove unused commands registered from plugins base on the ACL list during `tauri build`,\n the way it works is that tauri-cli will read this and set the environment variables for the build script and macros,\n and they'll try to get all the allowed commands and remove the rest\n\n Note:\n - This won't be accounting for dynamically added ACLs so make sure to check it when using this\n - This feature requires tauri-plugin 2.1 and tauri 2.4",
1876
+ "description": "Try to remove unused commands registered from plugins base on the ACL list during `tauri build`,\n the way it works is that tauri-cli will read this and set the environment variables for the build script and macros,\n and they'll try to get all the allowed commands and remove the rest\n\n Note:\n - This won't be accounting for dynamically added ACLs when you use features from the `dynamic-acl` (currently enabled by default) feature flag, so make sure to check it when using this\n - This feature requires tauri-plugin 2.1 and tauri 2.4",
1805
1877
  "default": false,
1806
1878
  "type": "boolean"
1807
1879
  }
@@ -2197,7 +2269,7 @@
2197
2269
  "description": "Updater type",
2198
2270
  "anyOf": [
2199
2271
  {
2200
- "description": "Generates lagacy zipped v1 compatible updaters",
2272
+ "description": "Generates legacy zipped v1 compatible updaters",
2201
2273
  "allOf": [
2202
2274
  {
2203
2275
  "$ref": "#/definitions/V1Compatible"
@@ -2211,10 +2283,10 @@
2211
2283
  ]
2212
2284
  },
2213
2285
  "V1Compatible": {
2214
- "description": "Generates lagacy zipped v1 compatible updaters",
2286
+ "description": "Generates legacy zipped v1 compatible updaters",
2215
2287
  "oneOf": [
2216
2288
  {
2217
- "description": "Generates lagacy zipped v1 compatible updaters",
2289
+ "description": "Generates legacy zipped v1 compatible updaters",
2218
2290
  "type": "string",
2219
2291
  "enum": [
2220
2292
  "v1Compatible"
@@ -2284,6 +2356,15 @@
2284
2356
  "string",
2285
2357
  "null"
2286
2358
  ]
2359
+ },
2360
+ "rank": {
2361
+ "description": "The ranking of this app among apps that declare themselves as editors or viewers of the given file type. Maps to `LSHandlerRank` on macOS.",
2362
+ "default": "Default",
2363
+ "allOf": [
2364
+ {
2365
+ "$ref": "#/definitions/HandlerRank"
2366
+ }
2367
+ ]
2287
2368
  }
2288
2369
  },
2289
2370
  "additionalProperties": false
@@ -2332,6 +2413,39 @@
2332
2413
  }
2333
2414
  ]
2334
2415
  },
2416
+ "HandlerRank": {
2417
+ "description": "Corresponds to LSHandlerRank",
2418
+ "oneOf": [
2419
+ {
2420
+ "description": "LSHandlerRank.Default. This app is an opener of files of this type; this value is also used if no rank is specified.",
2421
+ "type": "string",
2422
+ "enum": [
2423
+ "Default"
2424
+ ]
2425
+ },
2426
+ {
2427
+ "description": "LSHandlerRank.Owner. This app is the primary creator of files of this type.",
2428
+ "type": "string",
2429
+ "enum": [
2430
+ "Owner"
2431
+ ]
2432
+ },
2433
+ {
2434
+ "description": "LSHandlerRank.Alternate. This app is a secondary viewer of files of this type.",
2435
+ "type": "string",
2436
+ "enum": [
2437
+ "Alternate"
2438
+ ]
2439
+ },
2440
+ {
2441
+ "description": "LSHandlerRank.None. This app is never selected to open files of this type, but it accepts drops of files of this type.",
2442
+ "type": "string",
2443
+ "enum": [
2444
+ "None"
2445
+ ]
2446
+ }
2447
+ ]
2448
+ },
2335
2449
  "WindowsConfig": {
2336
2450
  "description": "Windows bundler configuration.\n\n See more: <https://v2.tauri.app/reference/config/#windowsconfig>",
2337
2451
  "type": "object",
@@ -3292,6 +3406,20 @@
3292
3406
  "type": "string"
3293
3407
  }
3294
3408
  },
3409
+ "bundleVersion": {
3410
+ "description": "The version of the build that identifies an iteration of the bundle.\n\n Translates to the bundle's CFBundleVersion property.",
3411
+ "type": [
3412
+ "string",
3413
+ "null"
3414
+ ]
3415
+ },
3416
+ "bundleName": {
3417
+ "description": "The name of the builder that built the bundle.\n\n Translates to the bundle's CFBundleName property.\n\n If not set, defaults to the package's product name.",
3418
+ "type": [
3419
+ "string",
3420
+ "null"
3421
+ ]
3422
+ },
3295
3423
  "minimumSystemVersion": {
3296
3424
  "description": "A version string indicating the minimum macOS X version that the bundled application supports. Defaults to `10.13`.\n\n Setting it to `null` completely removes the `LSMinimumSystemVersion` field on the bundle's `Info.plist`\n and the `MACOSX_DEPLOYMENT_TARGET` environment variable.\n\n An empty string is considered an invalid value so the default value is used.",
3297
3425
  "default": "10.13",
@@ -3315,7 +3443,7 @@
3315
3443
  ]
3316
3444
  },
3317
3445
  "hardenedRuntime": {
3318
- "description": "Whether the codesign should enable [hardened runtime] (for executables) or not.\n\n [hardened runtime]: <https://developer.apple.com/documentation/security/hardened_runtime>",
3446
+ "description": "Whether the codesign should enable [hardened runtime](https://developer.apple.com/documentation/security/hardened_runtime) (for executables) or not.",
3319
3447
  "default": true,
3320
3448
  "type": "boolean"
3321
3449
  },
@@ -3493,6 +3621,13 @@
3493
3621
  "null"
3494
3622
  ]
3495
3623
  },
3624
+ "bundleVersion": {
3625
+ "description": "The version of the build that identifies an iteration of the bundle.\n\n Translates to the bundle's CFBundleVersion property.",
3626
+ "type": [
3627
+ "string",
3628
+ "null"
3629
+ ]
3630
+ },
3496
3631
  "minimumSystemVersion": {
3497
3632
  "description": "A version string indicating the minimum iOS version that the bundled application supports. Defaults to `13.0`.\n\n Maps to the IPHONEOS_DEPLOYMENT_TARGET value.",
3498
3633
  "default": "13.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tauri-apps/cli",
3
- "version": "2.4.1",
3
+ "version": "2.6.0",
4
4
  "description": "Command line interface for building Tauri apps",
5
5
  "funding": {
6
6
  "type": "opencollective",
@@ -40,9 +40,9 @@
40
40
  },
41
41
  "devDependencies": {
42
42
  "@napi-rs/cli": "2.18.4",
43
- "@types/node": "^22.13.5",
43
+ "@types/node": "^22.15.32",
44
44
  "cross-env": "7.0.3",
45
- "vitest": "^3.0.7"
45
+ "vitest": "^3.2.4"
46
46
  },
47
47
  "engines": {
48
48
  "node": ">= 10"
@@ -63,16 +63,16 @@
63
63
  "tauri": "node ./tauri.js"
64
64
  },
65
65
  "optionalDependencies": {
66
- "@tauri-apps/cli-win32-x64-msvc": "2.4.1",
67
- "@tauri-apps/cli-darwin-x64": "2.4.1",
68
- "@tauri-apps/cli-linux-x64-gnu": "2.4.1",
69
- "@tauri-apps/cli-darwin-arm64": "2.4.1",
70
- "@tauri-apps/cli-linux-arm64-gnu": "2.4.1",
71
- "@tauri-apps/cli-linux-arm64-musl": "2.4.1",
72
- "@tauri-apps/cli-linux-arm-gnueabihf": "2.4.1",
73
- "@tauri-apps/cli-linux-x64-musl": "2.4.1",
74
- "@tauri-apps/cli-linux-riscv64-gnu": "2.4.1",
75
- "@tauri-apps/cli-win32-ia32-msvc": "2.4.1",
76
- "@tauri-apps/cli-win32-arm64-msvc": "2.4.1"
66
+ "@tauri-apps/cli-win32-x64-msvc": "2.6.0",
67
+ "@tauri-apps/cli-darwin-x64": "2.6.0",
68
+ "@tauri-apps/cli-linux-x64-gnu": "2.6.0",
69
+ "@tauri-apps/cli-darwin-arm64": "2.6.0",
70
+ "@tauri-apps/cli-linux-arm64-gnu": "2.6.0",
71
+ "@tauri-apps/cli-linux-arm64-musl": "2.6.0",
72
+ "@tauri-apps/cli-linux-arm-gnueabihf": "2.6.0",
73
+ "@tauri-apps/cli-linux-x64-musl": "2.6.0",
74
+ "@tauri-apps/cli-linux-riscv64-gnu": "2.6.0",
75
+ "@tauri-apps/cli-win32-ia32-msvc": "2.6.0",
76
+ "@tauri-apps/cli-win32-arm64-msvc": "2.6.0"
77
77
  }
78
78
  }