Cargo.toml 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298
  1. [package]
  2. authors = [ "Tauri Programme within The Commons Conservancy" ]
  3. categories = [ "gui", "web-programming" ]
  4. description = "Make tiny, secure apps for all desktop platforms with Tauri"
  5. edition = "2021"
  6. rust-version = "1.59"
  7. exclude = [ "/test", "/.scripts", "CHANGELOG.md", "/target" ]
  8. homepage = "https://tauri.app"
  9. license = "Apache-2.0 OR MIT"
  10. name = "tauri"
  11. readme = "README.md"
  12. repository = "https://github.com/tauri-apps/tauri"
  13. version = "1.2.4"
  14. [package.metadata.docs.rs]
  15. no-default-features = true
  16. features = [
  17. "wry",
  18. "custom-protocol",
  19. "api-all",
  20. "windows7-compat",
  21. "cli",
  22. "updater",
  23. "fs-extract-api",
  24. "system-tray",
  25. "devtools",
  26. "http-multipart",
  27. "icon-png",
  28. "dox"
  29. ]
  30. rustdoc-args = [ "--cfg", "doc_cfg" ]
  31. default-target = "x86_64-unknown-linux-gnu"
  32. targets = [
  33. "x86_64-pc-windows-msvc",
  34. "x86_64-unknown-linux-gnu",
  35. "x86_64-apple-darwin"
  36. ]
  37. [package.metadata.cargo-udeps.ignore]
  38. normal = [ "attohttpc", "reqwest" ]
  39. [dependencies]
  40. serde_json = { version = "1.0", features = [ "raw_value" ] }
  41. serde = { version = "1.0", features = [ "derive" ] }
  42. tokio = { version = "1", features = [ "rt", "rt-multi-thread", "sync", "fs", "io-util" ] }
  43. futures-util = "0.3"
  44. uuid = { version = "1", features = [ "v4" ] }
  45. url = { version = "2.3" }
  46. anyhow = "1.0"
  47. thiserror = "1.0"
  48. once_cell = "1"
  49. tauri-runtime = { version = "0.12.1", path = "../tauri-runtime" }
  50. tauri-macros = { version = "1.2.1", path = "../tauri-macros" }
  51. tauri-utils = { version = "1.2.1", features = [ "resources" ], path = "../tauri-utils" }
  52. tauri-runtime-wry = { version = "0.12.2", path = "../tauri-runtime-wry", optional = true }
  53. rand = "0.8"
  54. semver = { version = "1.0", features = [ "serde" ] }
  55. serde_repr = "0.1"
  56. state = "0.5"
  57. tar = "0.4.38"
  58. tempfile = "3"
  59. zip = { version = "0.6", default-features = false, optional = true }
  60. ignore = "=0.4.18"
  61. flate2 = "1.0"
  62. http = "0.2"
  63. dirs-next = "2.0"
  64. percent-encoding = "2.2"
  65. base64 = { version = "0.21", optional = true }
  66. clap = { version = "3", optional = true }
  67. reqwest = { version = "0.11", features = [ "json", "stream" ], optional = true }
  68. bytes = { version = "1", features = [ "serde" ], optional = true }
  69. attohttpc = { version = "0.22", features = [ "compress", "json", "form" ], optional = true }
  70. open = { version = "3.0", optional = true }
  71. shared_child = { version = "1.0", optional = true }
  72. os_pipe = { version = "1.0", optional = true }
  73. raw-window-handle = "0.5"
  74. minisign-verify = { version = "0.2", optional = true }
  75. time = { version = "=0.3.15", features = [ "parsing", "formatting" ], optional = true }
  76. os_info = { version = "=3.5.0", optional = true }
  77. regex = { version = "1.6.0", optional = true }
  78. glob = "0.3"
  79. data-url = { version = "0.2", optional = true }
  80. serialize-to-javascript = "=0.1.1"
  81. infer = { version = "0.9", optional = true }
  82. png = { version = "0.17", optional = true }
  83. ico = { version = "0.2.0", optional = true }
  84. encoding_rs = "0.8.31"
  85. [target."cfg(any(target_os = \"macos\", windows, target_os = \"linux\", target_os = \"dragonfly\", target_os = \"freebsd\", target_os = \"openbsd\", target_os = \"netbsd\"))".dependencies]
  86. rfd = { version = "0.10", optional = true, features=["gtk3", "common-controls-v6"] }
  87. notify-rust = { version = "4.5", default-features = false, features = [ "d" ], optional = true }
  88. [target."cfg(any(target_os = \"linux\", target_os = \"dragonfly\", target_os = \"freebsd\", target_os = \"openbsd\", target_os = \"netbsd\"))".dependencies]
  89. gtk = { version = "0.15", features = [ "v3_20" ] }
  90. glib = "0.15"
  91. webkit2gtk = { version = "0.18.2", features = [ "v2_22" ] }
  92. [target."cfg(target_os = \"macos\")".dependencies]
  93. embed_plist = "1.2"
  94. cocoa = "0.24"
  95. objc = "0.2"
  96. [target."cfg(windows)".dependencies]
  97. webview2-com = "0.19.1"
  98. win7-notifications = { version = "0.3.1", optional = true }
  99. [target."cfg(windows)".dependencies.windows]
  100. version = "0.39.0"
  101. features = [ "Win32_Foundation" ]
  102. [build-dependencies]
  103. heck = "0.4"
  104. once_cell = "1"
  105. [dev-dependencies]
  106. mockito = "0.31"
  107. proptest = "1.0.0"
  108. unarray = "=0.1.3"
  109. quickcheck = "1.0.3"
  110. quickcheck_macros = "1.0.0"
  111. serde = { version = "1.0", features = [ "derive" ] }
  112. serde_json = "1.0"
  113. tauri = { path = ".", default-features = false, features = [ "wry" ] }
  114. tokio-test = "0.4.2"
  115. tokio = { version = "1", features = [ "full" ] }
  116. cargo_toml = "0.11"
  117. tauri-codegen-test = { path = "../tests/tauri-codegen-test" }
  118. [features]
  119. default = [ "wry", "compression", "objc-exception" ]
  120. compression = [ "tauri-macros/compression", "tauri-utils/compression" ]
  121. wry = [ "tauri-runtime-wry" ]
  122. objc-exception = [ "tauri-runtime-wry/objc-exception" ]
  123. linux-protocol-headers = [ "tauri-runtime-wry/linux-headers", "webkit2gtk/v2_36" ]
  124. isolation = [ "tauri-utils/isolation", "tauri-macros/isolation" ]
  125. custom-protocol = [ "tauri-macros/custom-protocol" ]
  126. updater = [
  127. "minisign-verify",
  128. "time",
  129. "base64",
  130. "http-api",
  131. "dialog-ask",
  132. "fs-extract-api"
  133. ]
  134. http-api = [ "attohttpc" ]
  135. http-multipart = [ "attohttpc/multipart-form", "reqwest/multipart" ]
  136. shell-open-api = [ "open", "regex", "tauri-macros/shell-scope" ]
  137. fs-extract-api = [ "zip" ]
  138. reqwest-client = [ "reqwest", "bytes" ]
  139. reqwest-native-tls-vendored = [ "reqwest-client", "reqwest/native-tls-vendored" ]
  140. native-tls-vendored = [ "attohttpc/tls-vendored" ]
  141. process-command-api = [ "shared_child", "os_pipe" ]
  142. global-shortcut = [
  143. "tauri-runtime/global-shortcut",
  144. "tauri-runtime-wry/global-shortcut"
  145. ]
  146. clipboard = [ "tauri-runtime/clipboard", "tauri-runtime-wry/clipboard" ]
  147. dialog = [ "rfd" ]
  148. notification = [ "notify-rust" ]
  149. cli = [ "clap" ]
  150. system-tray = [ "tauri-runtime/system-tray", "tauri-runtime-wry/system-tray" ]
  151. devtools = [ "tauri-runtime/devtools", "tauri-runtime-wry/devtools" ]
  152. dox = [ "tauri-runtime-wry/dox" ]
  153. macos-private-api = [
  154. "tauri-runtime/macos-private-api",
  155. "tauri-runtime-wry/macos-private-api"
  156. ]
  157. windows7-compat = [ "win7-notifications" ]
  158. window-data-url = [ "data-url" ]
  159. api-all = [
  160. "clipboard-all",
  161. "dialog-all",
  162. "fs-all",
  163. "global-shortcut-all",
  164. "http-all",
  165. "notification-all",
  166. "os-all",
  167. "path-all",
  168. "process-all",
  169. "protocol-all",
  170. "shell-all",
  171. "window-all",
  172. "app-all"
  173. ]
  174. clipboard-all = [ "clipboard-write-text", "clipboard-read-text" ]
  175. clipboard-read-text = [ "clipboard" ]
  176. clipboard-write-text = [ "clipboard" ]
  177. dialog-all = [ "dialog-open", "dialog-save", "dialog-message", "dialog-ask" ]
  178. dialog-ask = [ "dialog" ]
  179. dialog-confirm = [ "dialog" ]
  180. dialog-message = [ "dialog" ]
  181. dialog-open = [ "dialog" ]
  182. dialog-save = [ "dialog" ]
  183. fs-all = [
  184. "fs-copy-file",
  185. "fs-create-dir",
  186. "fs-exists",
  187. "fs-read-file",
  188. "fs-read-dir",
  189. "fs-remove-dir",
  190. "fs-remove-file",
  191. "fs-rename-file",
  192. "fs-write-file"
  193. ]
  194. fs-copy-file = [ ]
  195. fs-create-dir = [ ]
  196. fs-exists = [ ]
  197. fs-read-file = [ ]
  198. fs-read-dir = [ ]
  199. fs-remove-dir = [ ]
  200. fs-remove-file = [ ]
  201. fs-rename-file = [ ]
  202. fs-write-file = [ ]
  203. global-shortcut-all = [ "global-shortcut" ]
  204. http-all = [ "http-request" ]
  205. http-request = [ "http-api" ]
  206. notification-all = [ "notification", "dialog-ask" ]
  207. os-all = [ "os_info" ]
  208. path-all = [ ]
  209. process-all = [ "process-relaunch", "process-exit" ]
  210. process-exit = [ ]
  211. process-relaunch = [ ]
  212. process-relaunch-dangerous-allow-symlink-macos = [ "tauri-utils/process-relaunch-dangerous-allow-symlink-macos" ]
  213. protocol-all = [ "protocol-asset" ]
  214. protocol-asset = [ ]
  215. shell-all = [ "shell-execute", "shell-sidecar", "shell-open" ]
  216. shell-execute = [ "process-command-api", "regex", "tauri-macros/shell-scope" ]
  217. shell-sidecar = [ "process-command-api", "regex", "tauri-macros/shell-scope" ]
  218. shell-open = [ "shell-open-api" ]
  219. window-all = [
  220. "window-create",
  221. "window-center",
  222. "window-request-user-attention",
  223. "window-set-resizable",
  224. "window-set-title",
  225. "window-maximize",
  226. "window-unmaximize",
  227. "window-minimize",
  228. "window-unminimize",
  229. "window-show",
  230. "window-hide",
  231. "window-close",
  232. "window-set-decorations",
  233. "window-set-always-on-top",
  234. "window-set-content-protected",
  235. "window-set-size",
  236. "window-set-min-size",
  237. "window-set-max-size",
  238. "window-set-position",
  239. "window-set-fullscreen",
  240. "window-set-focus",
  241. "window-set-icon",
  242. "window-set-skip-taskbar",
  243. "window-set-cursor-grab",
  244. "window-set-cursor-visible",
  245. "window-set-cursor-icon",
  246. "window-set-cursor-position",
  247. "window-set-ignore-cursor-events",
  248. "window-start-dragging",
  249. "window-print"
  250. ]
  251. window-create = [ ]
  252. window-center = [ ]
  253. window-request-user-attention = [ ]
  254. window-set-resizable = [ ]
  255. window-set-title = [ ]
  256. window-maximize = [ ]
  257. window-unmaximize = [ ]
  258. window-minimize = [ ]
  259. window-unminimize = [ ]
  260. window-show = [ ]
  261. window-hide = [ ]
  262. window-close = [ ]
  263. window-set-decorations = [ ]
  264. window-set-always-on-top = [ ]
  265. window-set-content-protected = [ ]
  266. window-set-size = [ ]
  267. window-set-min-size = [ ]
  268. window-set-max-size = [ ]
  269. window-set-position = [ ]
  270. window-set-fullscreen = [ ]
  271. window-set-focus = [ ]
  272. window-set-icon = [ ]
  273. window-set-skip-taskbar = [ ]
  274. window-set-cursor-grab = [ ]
  275. window-set-cursor-visible = [ ]
  276. window-set-cursor-icon = [ ]
  277. window-set-cursor-position = [ ]
  278. window-set-ignore-cursor-events = [ ]
  279. window-start-dragging = [ ]
  280. window-print = [ ]
  281. app-all = [ "app-show", "app-hide" ]
  282. app-show = [ ]
  283. app-hide = [ ]
  284. config-json5 = [ "tauri-macros/config-json5" ]
  285. config-toml = [ "tauri-macros/config-toml" ]
  286. icon-ico = [ "infer", "ico" ]
  287. icon-png = [ "infer", "png" ]