Cargo.toml 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. [package]
  2. name = "dioxus-cli"
  3. version = { workspace = true }
  4. authors = ["Jonathan Kelley"]
  5. edition = "2021"
  6. description = "CLI tool for developing, testing, and publishing Dioxus apps"
  7. repository = "https://github.com/DioxusLabs/dioxus/"
  8. license = "MIT OR Apache-2.0"
  9. keywords = ["react", "gui", "cli", "dioxus", "wasm"]
  10. rust-version = "1.79.0"
  11. [dependencies]
  12. dioxus-autofmt = { workspace = true }
  13. dioxus-check = { workspace = true }
  14. dioxus-rsx-rosetta = { workspace = true }
  15. dioxus-rsx = { workspace = true }
  16. dioxus-rsx-hotreload = { workspace = true }
  17. dioxus-html = { workspace = true, features = ["hot-reload-context"] }
  18. dioxus-core = { workspace = true, features = ["serialize"] }
  19. dioxus-core-types = { workspace = true }
  20. dioxus-devtools-types = { workspace = true }
  21. dioxus-cli-config = { workspace = true }
  22. dioxus-cli-opt = { workspace = true }
  23. dioxus-fullstack = { workspace = true }
  24. dioxus-dx-wire-format = { workspace = true }
  25. clap = { workspace = true, features = ["derive", "cargo"] }
  26. convert_case = { workspace = true }
  27. thiserror = { workspace = true }
  28. wasm-bindgen-cli-support = { workspace = true }
  29. wasm-bindgen-shared = { workspace = true }
  30. uuid = { version = "1.3.0", features = ["v4"] }
  31. serde = { workspace = true, features = ["derive"] }
  32. serde_json = { workspace = true }
  33. toml = { workspace = true }
  34. cargo_toml = { workspace = true }
  35. futures-util = { workspace = true, features = ["async-await-macro"] }
  36. notify = { workspace = true, features = ["serde"] }
  37. html_parser = { workspace = true }
  38. cargo_metadata = { workspace = true }
  39. tokio = { workspace = true, features = ["full"] }
  40. tokio-stream = "0.1.15"
  41. chrono = "0.4.19"
  42. anyhow = "1"
  43. hyper = { workspace = true }
  44. hyper-util = "0.1.3"
  45. hyper-rustls = { workspace = true }
  46. rustls = { workspace = true }
  47. rayon = "1.8.0"
  48. console = "0.15.8"
  49. ctrlc = "3.2.3"
  50. futures-channel = { workspace = true }
  51. krates = { version = "0.17.0" }
  52. cargo-config2 = { workspace = true, optional = true }
  53. regex = "1.10.6"
  54. axum = { workspace = true, features = ["ws"] }
  55. axum-server = { workspace = true, features = ["tls-rustls"] }
  56. axum-extra = { workspace = true, features = ["typed-header"] }
  57. tower-http = { workspace = true, features = ["full"] }
  58. proc-macro2 = { workspace = true, features = ["span-locations"] }
  59. syn = { workspace = true, features = ["full", "extra-traits", "visit", "visit-mut"] }
  60. headers = "0.4.0"
  61. walkdir = "2"
  62. walrus = { workspace = true, features = ["parallel"] }
  63. # tools download
  64. dirs = { workspace = true }
  65. reqwest = { workspace = true, features = [
  66. "rustls-tls",
  67. "stream",
  68. "trust-dns",
  69. "blocking",
  70. ] }
  71. tower = { workspace = true }
  72. once_cell = "1.19.0"
  73. # plugin packages
  74. open = "5.0.1"
  75. cargo-generate = "=0.21.3"
  76. toml_edit = "0.22.20"
  77. # formatting
  78. # syn = { workspace = true }
  79. prettyplease = { workspace = true }
  80. # Assets
  81. brotli = "6.0.0"
  82. ignore = "0.4.22"
  83. env_logger = { workspace = true }
  84. const-serialize = { workspace = true, features = ["serde"] }
  85. tracing-subscriber = { version = "0.3.18", features = ["std", "env-filter", "json"] }
  86. console-subscriber = { version = "0.3.0", optional = true }
  87. tracing = { workspace = true }
  88. wasm-opt = { version = "0.116.1", optional = true }
  89. crossterm = { version = "0.28.0", features = ["event-stream"] }
  90. ansi-to-tui = "6.0"
  91. ansi-to-html = "0.2.1"
  92. path-absolutize = "3.1"
  93. ratatui = { version = "0.28.0", features = ["crossterm", "unstable"] }
  94. # disable `log` entirely since `walrus` uses it and is *much* slower with it enableda
  95. log = { version = "0.4", features = ["max_level_off", "release_max_level_off"] }
  96. # link intercept
  97. tempfile = "3.3"
  98. manganis-core = { workspace = true }
  99. # Extracting data from an executable
  100. object = {version="0.36.0", features=["wasm"]}
  101. tokio-util = { version = "0.7.11", features = ["full"] }
  102. itertools = "0.13.0"
  103. throbber-widgets-tui = "=0.7.0"
  104. unicode-segmentation = "1.12.0"
  105. handlebars = "6.1.0"
  106. strum = { version = "0.26.3", features = ["derive"] }
  107. tauri-utils = { workspace = true }
  108. tauri-bundler = { workspace = true }
  109. include_dir = "0.7.4"
  110. [build-dependencies]
  111. built = { version = "=0.7.4", features = ["git2"] }
  112. [features]
  113. default = []
  114. plugin = []
  115. tokio-console = ["dep:console-subscriber"]
  116. bundle = []
  117. # when releasing dioxus, we want to enable wasm-opt
  118. # and then also maybe developing it too.
  119. # making this optional cuts workspace deps down from 1000 to 500, so it's very nice for workspace adev
  120. optimizations = ["wasm-opt", "asset-opt"]
  121. asset-opt = []
  122. wasm-opt = ["dep:wasm-opt"]
  123. [[bin]]
  124. path = "src/main.rs"
  125. name = "dx"
  126. [dev-dependencies]
  127. escargot = "0.5"
  128. [package.metadata.binstall]
  129. pkg-url = "{ repo }/releases/download/v{ version }/dx-{ target }-v{ version }{ archive-suffix }"
  130. pkg-fmt = "tgz"
  131. [package.metadata.binstall.overrides.x86_64-pc-windows-msvc]
  132. pkg-fmt = "zip"
  133. [package.metadata.docs.rs]
  134. all-features = false
  135. rustc-args = [ "--cfg", "docsrs" ]
  136. rustdoc-args = [ "--cfg", "docsrs" ]