@tauri-apps/cli 1.3.1 → 1.5.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,44 @@
1
1
  # Changelog
2
2
 
3
+ ## \[1.5.0]
4
+
5
+ ### New Features
6
+
7
+ - [`e1526626`](https://www.github.com/tauri-apps/tauri/commit/e152662687ece7a62d383923a50751cc0dd34331)([#7723](https://www.github.com/tauri-apps/tauri/pull/7723)) Support Bun package manager in CLI
8
+
9
+ ### Enhancements
10
+
11
+ - [`13279917`](https://www.github.com/tauri-apps/tauri/commit/13279917d4cae071d0ce3a686184d48af079f58a)([#7713](https://www.github.com/tauri-apps/tauri/pull/7713)) Add version of Rust Tauri CLI installed with Cargo to `tauri info` command.
12
+
13
+ ### Bug Fixes
14
+
15
+ - [`dad4f54e`](https://www.github.com/tauri-apps/tauri/commit/dad4f54eec9773d2ea6233a7d9fd218741173823)([#7277](https://www.github.com/tauri-apps/tauri/pull/7277)) Removed the automatic version check of the CLI that ran after `tauri` commands which caused various issues.
16
+
17
+ ### Dependencies
18
+
19
+ - Upgraded to `tauri-cli@1.5.0`
20
+
21
+ ## \[1.4.0]
22
+
23
+ ### New Features
24
+
25
+ - [`0ddbb3a1`](https://www.github.com/tauri-apps/tauri/commit/0ddbb3a1dc1961ba5c6c1a60081513c1380c8af1)([#7015](https://www.github.com/tauri-apps/tauri/pull/7015)) Provide prebuilt CLIs for Windows ARM64 targets.
26
+ - [`35cd751a`](https://www.github.com/tauri-apps/tauri/commit/35cd751adc6fef1f792696fa0cfb471b0bf99374)([#5176](https://www.github.com/tauri-apps/tauri/pull/5176)) Added the `desktop_template` option on `tauri.conf.json > tauri > bundle > deb`.
27
+ - [`6c5ade08`](https://www.github.com/tauri-apps/tauri/commit/6c5ade08d97844bb685789d30e589400bbe3e04c)([#4537](https://www.github.com/tauri-apps/tauri/pull/4537)) Added `tauri completions` to generate shell completions scripts.
28
+ - [`e092f799`](https://www.github.com/tauri-apps/tauri/commit/e092f799469ff32c7d1595d0f07d06fd2dab5c29)([#6887](https://www.github.com/tauri-apps/tauri/pull/6887)) Add `nsis > template` option to specify custom NSIS installer template.
29
+
30
+ ### Enhancements
31
+
32
+ - [`d75c1b82`](https://www.github.com/tauri-apps/tauri/commit/d75c1b829bd96d9e3a672bcc79120597d5ada4a0)([#7181](https://www.github.com/tauri-apps/tauri/pull/7181)) Print a useful error when `updater` bundle target is specified without an updater-enabled target.
33
+ - [`52474e47`](https://www.github.com/tauri-apps/tauri/commit/52474e479d695865299d8c8d868fb98b99731020)([#7141](https://www.github.com/tauri-apps/tauri/pull/7141)) Enhance injection of Cargo features.
34
+ - [`2659ca1a`](https://www.github.com/tauri-apps/tauri/commit/2659ca1ab4799a5bda65c229c149e98bd01eb1ee)([#6900](https://www.github.com/tauri-apps/tauri/pull/6900)) Add `rustls` as default Cargo feature.
35
+
36
+ ### Bug Fixes
37
+
38
+ - [`3cb7a3e6`](https://www.github.com/tauri-apps/tauri/commit/3cb7a3e642bb10ee90dc1d24daa48b8c8c15c9ce)([#6997](https://www.github.com/tauri-apps/tauri/pull/6997)) Fix built-in devserver adding hot-reload code to non-html files.
39
+ - [`fb7ef8da`](https://www.github.com/tauri-apps/tauri/commit/fb7ef8dacd9ade96976c84d22507782cdaf38acf)([#6667](https://www.github.com/tauri-apps/tauri/pull/6667)) Fix nodejs binary regex when `0` is in the version name, for example `node-20`
40
+ - [`1253bbf7`](https://www.github.com/tauri-apps/tauri/commit/1253bbf7ae11a87887e0b3bd98cc26dbb98c8130)([#7013](https://www.github.com/tauri-apps/tauri/pull/7013)) Fixes Cargo.toml feature rewriting.
41
+
3
42
  ## \[1.3.1]
4
43
 
5
44
  - Correctly escape XML for resource files in WiX bundler.
package/Cargo.toml CHANGED
@@ -8,14 +8,15 @@ crate-type = ["cdylib"]
8
8
 
9
9
  [dependencies]
10
10
  # Default enable napi4 feature, see https://nodejs.org/api/n-api.html#node-api-version-matrix
11
- napi = { version = "2.12", default-features = false, features = ["napi4"] }
12
- napi-derive = "2.12"
11
+ napi = { version = "2.13", default-features = false, features = ["napi4"] }
12
+ napi-derive = "2.13"
13
13
  tauri-cli = { path = "..", default-features = false }
14
- log = "0.4.17"
14
+ log = "0.4.19"
15
15
 
16
16
  [build-dependencies]
17
17
  napi-build = "2.0"
18
18
 
19
19
  [features]
20
+ default = ["tauri-cli/default"]
21
+ native-tls = ["tauri-cli/native-tls"]
20
22
  native-tls-vendored = ["tauri-cli/native-tls-vendored"]
21
- rustls = ["tauri-cli/rustls"]
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  [![status](https://img.shields.io/badge/status-stable-blue.svg)](https://github.com/tauri-apps/tauri/tree/dev)
5
5
  [![License](https://img.shields.io/badge/License-MIT%20or%20Apache%202-green.svg)](https://opencollective.com/tauri)
6
- [![test library](https://img.shields.io/github/workflow/status/tauri-apps/tauri/test%20library?label=test%20library)](https://github.com/tauri-apps/tauri/actions?query=workflow%3A%22test+library%22)
6
+ [![test cli](https://img.shields.io/github/actions/workflow/status/tauri-apps/tauri/test-cli-js.yml?label=test%20cli&logo=github)](https://github.com/tauri-apps/tauri/actions/workflows/test-cli-js.yml)
7
7
  [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Ftauri-apps%2Ftauri.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Ftauri-apps%2Ftauri?ref=badge_shield)
8
8
  [![Chat Server](https://img.shields.io/badge/chat-discord-7289da.svg)](https://discord.gg/SpmNs4S)
9
9
  [![website](https://img.shields.io/badge/website-tauri.app-purple.svg)](https://tauri.app)
@@ -19,7 +19,7 @@ Tauri is a polyglot and generic system that is very composable and allows engine
19
19
 
20
20
  Tauri apps can have custom menus and have tray-type interfaces. They can be updated, and are managed by the user's operating system as expected. They are very small, because they use the system's webview. They do not ship a runtime, since the final binary is compiled from rust. This makes the reversing of Tauri apps not a trivial task.
21
21
  ## This module
22
- Written in Typescript and packaged such that it can be used with `npm`, `pnpm`, and `yarn`, this library provides a node.js runner for common tasks when using Tauri, like `yarn tauri dev`. For the most part it is a wrapper around [cli.rs](https://github.com/tauri-apps/tauri/blob/dev/tooling/cli).
22
+ Written in Typescript and packaged such that it can be used with `npm`, `pnpm`, `yarn`, and `bun`, this library provides a node.js runner for common tasks when using Tauri, like `yarn tauri dev`. For the most part it is a wrapper around [tauri-cli](https://github.com/tauri-apps/tauri/blob/dev/tooling/cli).
23
23
 
24
24
  To learn more about the details of how all of these pieces fit together, please consult this [ARCHITECTURE.md](https://github.com/tauri-apps/tauri/blob/dev/ARCHITECTURE.md) document.
25
25
 
package/index.js CHANGED
@@ -17,7 +17,7 @@ function isMusl() {
17
17
  // For Node 10
18
18
  if (!process.report || typeof process.report.getReport !== 'function') {
19
19
  try {
20
- const lddPath = require('child_process').execSync('which ldd').toString().trim();
20
+ const lddPath = require('child_process').execSync('which ldd').toString().trim()
21
21
  return readFileSync(lddPath, 'utf8').includes('musl')
22
22
  } catch (e) {
23
23
  return true
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tauri-apps/cli",
3
- "version": "1.3.1",
3
+ "version": "1.5.0",
4
4
  "description": "Command line interface for building Tauri apps",
5
5
  "funding": {
6
6
  "type": "opencollective",
@@ -32,21 +32,22 @@
32
32
  "aarch64-unknown-linux-musl",
33
33
  "armv7-unknown-linux-gnueabihf",
34
34
  "x86_64-unknown-linux-musl",
35
- "i686-pc-windows-msvc"
35
+ "i686-pc-windows-msvc",
36
+ "aarch64-pc-windows-msvc"
36
37
  ]
37
38
  }
38
39
  },
39
40
  "devDependencies": {
40
- "@napi-rs/cli": "2.15.2",
41
+ "@napi-rs/cli": "2.16.1",
41
42
  "cross-env": "7.0.3",
42
43
  "cross-spawn": "7.0.3",
43
44
  "fs-extra": "11.1.1",
44
45
  "jest": "29.5.0",
45
46
  "jest-transform-toml": "1.0.0",
46
- "prettier": "2.8.7"
47
+ "prettier": "2.8.8"
47
48
  },
48
49
  "resolutions": {
49
- "json5": "2.2.3"
50
+ "semver": ">=7.5.2"
50
51
  },
51
52
  "engines": {
52
53
  "node": ">= 10"
@@ -67,14 +68,15 @@
67
68
  "format:check": "prettier --check ./package.json ./tauri.js"
68
69
  },
69
70
  "optionalDependencies": {
70
- "@tauri-apps/cli-win32-x64-msvc": "1.3.1",
71
- "@tauri-apps/cli-darwin-x64": "1.3.1",
72
- "@tauri-apps/cli-linux-x64-gnu": "1.3.1",
73
- "@tauri-apps/cli-darwin-arm64": "1.3.1",
74
- "@tauri-apps/cli-linux-arm64-gnu": "1.3.1",
75
- "@tauri-apps/cli-linux-arm64-musl": "1.3.1",
76
- "@tauri-apps/cli-linux-arm-gnueabihf": "1.3.1",
77
- "@tauri-apps/cli-linux-x64-musl": "1.3.1",
78
- "@tauri-apps/cli-win32-ia32-msvc": "1.3.1"
71
+ "@tauri-apps/cli-win32-x64-msvc": "1.5.0",
72
+ "@tauri-apps/cli-darwin-x64": "1.5.0",
73
+ "@tauri-apps/cli-linux-x64-gnu": "1.5.0",
74
+ "@tauri-apps/cli-darwin-arm64": "1.5.0",
75
+ "@tauri-apps/cli-linux-arm64-gnu": "1.5.0",
76
+ "@tauri-apps/cli-linux-arm64-musl": "1.5.0",
77
+ "@tauri-apps/cli-linux-arm-gnueabihf": "1.5.0",
78
+ "@tauri-apps/cli-linux-x64-musl": "1.5.0",
79
+ "@tauri-apps/cli-win32-ia32-msvc": "1.5.0",
80
+ "@tauri-apps/cli-win32-arm64-msvc": "1.5.0"
79
81
  }
80
82
  }
package/schema.json CHANGED
@@ -105,6 +105,7 @@
105
105
  "print": false,
106
106
  "requestUserAttention": false,
107
107
  "setAlwaysOnTop": false,
108
+ "setClosable": false,
108
109
  "setContentProtected": false,
109
110
  "setCursorGrab": false,
110
111
  "setCursorIcon": false,
@@ -116,7 +117,9 @@
116
117
  "setIcon": false,
117
118
  "setIgnoreCursorEvents": false,
118
119
  "setMaxSize": false,
120
+ "setMaximizable": false,
119
121
  "setMinSize": false,
122
+ "setMinimizable": false,
120
123
  "setPosition": false,
121
124
  "setResizable": false,
122
125
  "setSize": false,
@@ -164,6 +167,7 @@
164
167
  "security": {
165
168
  "dangerousDisableAssetCspModification": false,
166
169
  "dangerousRemoteDomainIpcAccess": [],
170
+ "dangerousUseHttpScheme": false,
167
171
  "freezePrototype": false
168
172
  },
169
173
  "updater": {
@@ -221,7 +225,7 @@
221
225
  "pattern": "^[^/\\:*?\"<>|]+$"
222
226
  },
223
227
  "version": {
224
- "description": "App version. It is a semver version number or a path to a `package.json` file containing the `version` field.",
228
+ "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.",
225
229
  "default": null,
226
230
  "type": [
227
231
  "string",
@@ -383,6 +387,7 @@
383
387
  "print": false,
384
388
  "requestUserAttention": false,
385
389
  "setAlwaysOnTop": false,
390
+ "setClosable": false,
386
391
  "setContentProtected": false,
387
392
  "setCursorGrab": false,
388
393
  "setCursorIcon": false,
@@ -394,7 +399,9 @@
394
399
  "setIcon": false,
395
400
  "setIgnoreCursorEvents": false,
396
401
  "setMaxSize": false,
402
+ "setMaximizable": false,
397
403
  "setMinSize": false,
404
+ "setMinimizable": false,
398
405
  "setPosition": false,
399
406
  "setResizable": false,
400
407
  "setSize": false,
@@ -417,6 +424,7 @@
417
424
  "default": {
418
425
  "dangerousDisableAssetCspModification": false,
419
426
  "dangerousRemoteDomainIpcAccess": [],
427
+ "dangerousUseHttpScheme": false,
420
428
  "freezePrototype": false
421
429
  },
422
430
  "allOf": [
@@ -605,7 +613,22 @@
605
613
  "format": "double"
606
614
  },
607
615
  "resizable": {
608
- "description": "Whether the window is resizable or not.",
616
+ "description": "Whether the window is resizable or not. When resizable is set to false, native window's maximize button is automatically disabled.",
617
+ "default": true,
618
+ "type": "boolean"
619
+ },
620
+ "maximizable": {
621
+ "description": "Whether the window's native maximize button is enabled or not. If resizable is set to false, this setting is ignored.\n\n## Platform-specific\n\n- **macOS:** Disables the \"zoom\" button in the window titlebar, which is also used to enter fullscreen mode. - **Linux / iOS / Android:** Unsupported.",
622
+ "default": true,
623
+ "type": "boolean"
624
+ },
625
+ "minimizable": {
626
+ "description": "Whether the window's native minimize button is enabled or not.\n\n## Platform-specific\n\n- **Linux / iOS / Android:** Unsupported.",
627
+ "default": true,
628
+ "type": "boolean"
629
+ },
630
+ "closable": {
631
+ "description": "Whether the window's native close button is enabled or not.\n\n## Platform-specific\n\n- **Linux:** \"GTK+ will do its best to convince the window manager not to show a close button. Depending on the system, this function may not have any effect when called on a window that is already visible\" - **iOS / Android:** Unsupported.",
609
632
  "default": true,
610
633
  "type": "boolean"
611
634
  },
@@ -1053,13 +1076,14 @@
1053
1076
  },
1054
1077
  "resources": {
1055
1078
  "description": "App resources to bundle. Each resource is a path to a file or directory. Glob patterns are supported.",
1056
- "type": [
1057
- "array",
1058
- "null"
1059
- ],
1060
- "items": {
1061
- "type": "string"
1062
- }
1079
+ "anyOf": [
1080
+ {
1081
+ "$ref": "#/definitions/BundleResources"
1082
+ },
1083
+ {
1084
+ "type": "null"
1085
+ }
1086
+ ]
1063
1087
  },
1064
1088
  "copyright": {
1065
1089
  "description": "A copyright string associated with your application.",
@@ -1237,6 +1261,25 @@
1237
1261
  }
1238
1262
  ]
1239
1263
  },
1264
+ "BundleResources": {
1265
+ "description": "Definition for bundle resources. Can be either a list of paths to include or a map of source to target paths.",
1266
+ "anyOf": [
1267
+ {
1268
+ "description": "A list of paths to include.",
1269
+ "type": "array",
1270
+ "items": {
1271
+ "type": "string"
1272
+ }
1273
+ },
1274
+ {
1275
+ "description": "A map of source to target paths.",
1276
+ "type": "object",
1277
+ "additionalProperties": {
1278
+ "type": "string"
1279
+ }
1280
+ }
1281
+ ]
1282
+ },
1240
1283
  "AppImageConfig": {
1241
1284
  "description": "Configuration for AppImage bundles.\n\nSee more: https://tauri.app/v1/api/config#appimageconfig",
1242
1285
  "type": "object",
@@ -1270,6 +1313,13 @@
1270
1313
  "additionalProperties": {
1271
1314
  "type": "string"
1272
1315
  }
1316
+ },
1317
+ "desktopTemplate": {
1318
+ "description": "Path to a custom desktop file Handlebars template.\n\nAvailable variables: `categories`, `comment` (optional), `exec`, `icon` and `name`.",
1319
+ "type": [
1320
+ "string",
1321
+ "null"
1322
+ ]
1273
1323
  }
1274
1324
  },
1275
1325
  "additionalProperties": false
@@ -1661,6 +1711,13 @@
1661
1711
  "description": "Configuration for the Installer bundle using NSIS.",
1662
1712
  "type": "object",
1663
1713
  "properties": {
1714
+ "template": {
1715
+ "description": "A custom .nsi template to use.",
1716
+ "type": [
1717
+ "string",
1718
+ "null"
1719
+ ]
1720
+ },
1664
1721
  "license": {
1665
1722
  "description": "The path to the license file to render on the installer.",
1666
1723
  "type": [
@@ -1708,10 +1765,31 @@
1708
1765
  "type": "string"
1709
1766
  }
1710
1767
  },
1768
+ "customLanguageFiles": {
1769
+ "description": "A key-value pair where the key is the language and the value is the path to a custom `.nsh` file that holds the translated text for tauri's custom messages.\n\nSee <https://github.com/tauri-apps/tauri/blob/dev/tooling/bundler/src/bundle/windows/templates/nsis-languages/English.nsh> for an example `.nsh` file.\n\n**Note**: the key must be a valid NSIS language and it must be added to [`NsisConfig`] languages array,",
1770
+ "type": [
1771
+ "object",
1772
+ "null"
1773
+ ],
1774
+ "additionalProperties": {
1775
+ "type": "string"
1776
+ }
1777
+ },
1711
1778
  "displayLanguageSelector": {
1712
1779
  "description": "Whether to display a language selector dialog before the installer and uninstaller windows are rendered or not. By default the OS language is selected, with a fallback to the first language in the `languages` array.",
1713
1780
  "default": false,
1714
1781
  "type": "boolean"
1782
+ },
1783
+ "compression": {
1784
+ "description": "Set the compression algorithm used to compress files in the installer.\n\nSee <https://nsis.sourceforge.io/Reference/SetCompressor>",
1785
+ "anyOf": [
1786
+ {
1787
+ "$ref": "#/definitions/NsisCompression"
1788
+ },
1789
+ {
1790
+ "type": "null"
1791
+ }
1792
+ ]
1715
1793
  }
1716
1794
  },
1717
1795
  "additionalProperties": false
@@ -1742,6 +1820,32 @@
1742
1820
  }
1743
1821
  ]
1744
1822
  },
1823
+ "NsisCompression": {
1824
+ "description": "Compression algorithms used in the NSIS installer.\n\nSee <https://nsis.sourceforge.io/Reference/SetCompressor>",
1825
+ "oneOf": [
1826
+ {
1827
+ "description": "ZLIB uses the deflate algorithm, it is a quick and simple method. With the default compression level it uses about 300 KB of memory.",
1828
+ "type": "string",
1829
+ "enum": [
1830
+ "zlib"
1831
+ ]
1832
+ },
1833
+ {
1834
+ "description": "BZIP2 usually gives better compression ratios than ZLIB, but it is a bit slower and uses more memory. With the default compression level it uses about 4 MB of memory.",
1835
+ "type": "string",
1836
+ "enum": [
1837
+ "bzip2"
1838
+ ]
1839
+ },
1840
+ {
1841
+ "description": "LZMA (default) is a new compression method that gives very good compression ratios. The decompression speed is high (10-20 MB/s on a 2 GHz CPU), the compression speed is lower. The memory size that will be used for decompression is the dictionary size plus a few KBs, the default is 8 MB.",
1842
+ "type": "string",
1843
+ "enum": [
1844
+ "lzma"
1845
+ ]
1846
+ }
1847
+ ]
1848
+ },
1745
1849
  "AllowlistConfig": {
1746
1850
  "description": "Allowlist configuration. The allowlist is a translation of the [Cargo allowlist features](https://docs.rs/tauri/latest/tauri/#cargo-allowlist-features).\n\n# Notes\n\n- Endpoints that don't have their own allowlist option are enabled by default. - There is only \"opt-in\", no \"opt-out\". Setting an option to `false` has no effect.\n\n# Examples\n\n- * [`\"app-all\": true`](https://tauri.app/v1/api/config/#appallowlistconfig.all) will make the [hide](https://tauri.app/v1/api/js/app#hide) endpoint be available regardless of whether `hide` is set to `false` or `true` in the allowlist.",
1747
1851
  "type": "object",
@@ -1785,6 +1889,7 @@
1785
1889
  "print": false,
1786
1890
  "requestUserAttention": false,
1787
1891
  "setAlwaysOnTop": false,
1892
+ "setClosable": false,
1788
1893
  "setContentProtected": false,
1789
1894
  "setCursorGrab": false,
1790
1895
  "setCursorIcon": false,
@@ -1796,7 +1901,9 @@
1796
1901
  "setIcon": false,
1797
1902
  "setIgnoreCursorEvents": false,
1798
1903
  "setMaxSize": false,
1904
+ "setMaximizable": false,
1799
1905
  "setMinSize": false,
1906
+ "setMinimizable": false,
1800
1907
  "setPosition": false,
1801
1908
  "setResizable": false,
1802
1909
  "setSize": false,
@@ -2052,6 +2159,13 @@
2052
2159
  "items": {
2053
2160
  "type": "string"
2054
2161
  }
2162
+ },
2163
+ "requireLiteralLeadingDot": {
2164
+ "description": "Whether or not paths that contain components that start with a `.` will require that `.` appears literally in the pattern; `*`, `?`, `**`, or `[...]` will not match. This is useful because such files are conventionally considered hidden on Unix systems and it might be desirable to skip them when listing files.\n\nDefaults to `true` on Unix systems and `false` on Windows",
2165
+ "type": [
2166
+ "boolean",
2167
+ "null"
2168
+ ]
2055
2169
  }
2056
2170
  }
2057
2171
  }
@@ -2086,6 +2200,21 @@
2086
2200
  "default": false,
2087
2201
  "type": "boolean"
2088
2202
  },
2203
+ "setMaximizable": {
2204
+ "description": "Allows setting whether the window's native maximize button is enabled or not.",
2205
+ "default": false,
2206
+ "type": "boolean"
2207
+ },
2208
+ "setMinimizable": {
2209
+ "description": "Allows setting whether the window's native minimize button is enabled or not.",
2210
+ "default": false,
2211
+ "type": "boolean"
2212
+ },
2213
+ "setClosable": {
2214
+ "description": "Allows setting whether the window's native close button is enabled or not.",
2215
+ "default": false,
2216
+ "type": "boolean"
2217
+ },
2089
2218
  "setTitle": {
2090
2219
  "description": "Allows changing the window title.",
2091
2220
  "default": false,
@@ -2414,7 +2543,7 @@
2414
2543
  "additionalProperties": false
2415
2544
  },
2416
2545
  "HttpAllowlistScope": {
2417
- "description": "HTTP API scope definition. It is a list of URLs that can be accessed by the webview when using the HTTP APIs. The scoped URL is matched against the request URL using a glob pattern.\n\nExamples: - \"https://**\": allows all HTTPS urls - \"https://*.github.com/tauri-apps/tauri\": allows any subdomain of \"github.com\" with the \"tauri-apps/api\" path - \"https://myapi.service.com/users/*\": allows access to any URLs that begins with \"https://myapi.service.com/users/\"",
2546
+ "description": "HTTP API scope definition. It is a list of URLs that can be accessed by the webview when using the HTTP APIs. The scoped URL is matched against the request URL using a glob pattern.\n\nExamples: - \"https://*\": allows all HTTPS urls - \"https://*.github.com/tauri-apps/tauri\": allows any subdomain of \"github.com\" with the \"tauri-apps/api\" path - \"https://myapi.service.com/users/*\": allows access to any URLs that begins with \"https://myapi.service.com/users/\"",
2418
2547
  "type": "array",
2419
2548
  "items": {
2420
2549
  "type": "string",
@@ -2613,6 +2742,11 @@
2613
2742
  "items": {
2614
2743
  "$ref": "#/definitions/RemoteDomainAccessScope"
2615
2744
  }
2745
+ },
2746
+ "dangerousUseHttpScheme": {
2747
+ "description": "Sets whether the custom protocols should use `http://<scheme>.localhost` instead of the default `https://<scheme>.localhost` on Windows.\n\n**WARNING:** Using a `http` scheme will allow mixed content when trying to fetch `http` endpoints and is therefore less secure but will match the behavior of the `<scheme>://localhost` protocols used on macOS and Linux.",
2748
+ "default": false,
2749
+ "type": "boolean"
2616
2750
  }
2617
2751
  },
2618
2752
  "additionalProperties": false
@@ -2692,7 +2826,7 @@
2692
2826
  }
2693
2827
  },
2694
2828
  "plugins": {
2695
- "description": "The list of plugins that are allowed in this scope.",
2829
+ "description": "The list of plugins that are allowed in this scope. The names should be without the `tauri-plugin-` prefix, for example `\"store\"` for `tauri-plugin-store`.",
2696
2830
  "default": [],
2697
2831
  "type": "array",
2698
2832
  "items": {
@@ -2791,7 +2925,7 @@
2791
2925
  ]
2792
2926
  },
2793
2927
  {
2794
- "description": "The quiet mode means there's no user interaction required. Requires admin privileges if the installer does (WiX).",
2928
+ "description": "The quiet mode means there's no user interaction required. Requires admin privileges if the installer does.",
2795
2929
  "type": "string",
2796
2930
  "enum": [
2797
2931
  "quiet"
package/tauri.js CHANGED
@@ -7,7 +7,7 @@
7
7
  const cli = require('./main')
8
8
  const path = require('path')
9
9
 
10
- const [bin, script, ...arguments] = process.argv
10
+ const [bin, script, ...args] = process.argv
11
11
  const binStem = path.parse(bin).name.toLowerCase()
12
12
 
13
13
  // We want to make a helpful binary name for the underlying CLI helper, if we
@@ -20,7 +20,7 @@ if (bin === '@tauri-apps/cli') {
20
20
  }
21
21
  // Even if started by a package manager, the binary will be NodeJS.
22
22
  // Some distribution still use "nodejs" as the binary name.
23
- else if (binStem.match(/(nodejs|node)\-?([1-9]*)*$/g)) {
23
+ else if (binStem.match(/(nodejs|node|bun)\-?([0-9]*)*$/g)) {
24
24
  const managerStem = process.env.npm_execpath
25
25
  ? path.parse(process.env.npm_execpath).name.toLowerCase()
26
26
  : null
@@ -32,7 +32,7 @@ else if (binStem.match(/(nodejs|node)\-?([1-9]*)*$/g)) {
32
32
  manager = 'npm'
33
33
  break
34
34
 
35
- // Yarn and pnpm have the same stem name as their bin.
35
+ // Yarn, pnpm, and bun have the same stem name as their bin.
36
36
  // We assume all unknown package managers do as well.
37
37
  default:
38
38
  manager = managerStem
@@ -48,10 +48,10 @@ else if (binStem.match(/(nodejs|node)\-?([1-9]*)*$/g)) {
48
48
  }
49
49
  } else {
50
50
  // We don't know what started it, assume it's already stripped.
51
- arguments.unshift(bin)
51
+ args.unshift(bin)
52
52
  }
53
53
 
54
- cli.run(arguments, binName).catch((err) => {
54
+ cli.run(args, binName).catch((err) => {
55
55
  cli.logError(err.message)
56
56
  process.exit(1)
57
57
  })