Cargo.toml 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  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-fullstack = { workspace = true }
  23. clap = { workspace = true, features = ["derive", "cargo"] }
  24. thiserror = { workspace = true }
  25. wasm-bindgen-cli-support = "0.2"
  26. wasm-bindgen-shared = "0.2"
  27. uuid = { version = "1.3.0", features = ["v4"] }
  28. serde = { workspace = true, features = ["derive"] }
  29. serde_json = { workspace = true }
  30. toml = { workspace = true }
  31. fs_extra = "1.2.0"
  32. cargo_toml = { workspace = true }
  33. futures-util = { workspace = true, features = ["async-await-macro"] }
  34. notify = { workspace = true, features = ["serde"] }
  35. html_parser = { workspace = true }
  36. cargo_metadata = "0.18.1"
  37. tokio = { workspace = true, features = ["full"] }
  38. tokio-stream = "0.1.15"
  39. chrono = "0.4.19"
  40. anyhow = "1"
  41. hyper = { workspace = true }
  42. hyper-util = "0.1.3"
  43. hyper-rustls = { workspace = true }
  44. rustls = { workspace = true }
  45. rayon = "1.8.0"
  46. console = "0.15.8"
  47. ctrlc = "3.2.3"
  48. futures-channel = { workspace = true }
  49. krates = { version = "0.17.0" }
  50. cargo-config2 = { workspace = true, optional = true }
  51. regex = "1.10.6"
  52. axum = { workspace = true, features = ["ws"] }
  53. axum-server = { workspace = true, features = ["tls-rustls"] }
  54. axum-extra = { workspace = true, features = ["typed-header"] }
  55. tower-http = { workspace = true, features = ["full"] }
  56. proc-macro2 = { workspace = true, features = ["span-locations"] }
  57. syn = { workspace = true, features = ["full", "extra-traits", "visit", "visit-mut"] }
  58. headers = "0.4.0"
  59. walkdir = "2"
  60. # tools download
  61. dirs = { workspace = true }
  62. reqwest = { workspace = true, features = [
  63. "rustls-tls",
  64. "stream",
  65. "trust-dns",
  66. "blocking",
  67. ] }
  68. flate2 = "1.0.22"
  69. tar = "0.4.38"
  70. zip = "0.6.2"
  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. tracing-subscriber = { version = "0.3.18", features = ["std", "env-filter"] }
  85. console-subscriber = { version = "0.3.0", optional = true }
  86. tracing = { workspace = true }
  87. wasm-opt = { version = "0.116.1", optional = true }
  88. crossterm = { version = "0.28.0", features = ["event-stream"] }
  89. ansi-to-tui = "6.0"
  90. ansi-to-html = "0.2.1"
  91. ratatui = { version = "0.28.0", features = ["crossterm", "unstable"] }
  92. # link intercept
  93. tempfile = "3.3"
  94. manganis-core = { workspace = true }
  95. # Extracting data from an executable
  96. object = {version="0.36.0", features=["wasm"]}
  97. tokio-util = { version = "0.7.11", features = ["full"] }
  98. itertools = "0.13.0"
  99. throbber-widgets-tui = "0.7.0"
  100. unicode-segmentation = "1.12.0"
  101. handlebars = "6.1.0"
  102. strum = { version = "0.26.3", features = ["derive"] }
  103. tauri-utils = { workspace = true }
  104. tauri-bundler = { workspace = true }
  105. [build-dependencies]
  106. built = { version = "=0.7.4", features = ["git2"] }
  107. [features]
  108. default = []
  109. plugin = []
  110. tokio-console = ["dep:console-subscriber"]
  111. bundle = []
  112. # when releasing dioxus, we want to enable wasm-opt
  113. # and then also maybe developing it too.
  114. # making this optional cuts workspace deps down from 1000 to 500, so it's very nice for workspace adev
  115. optimizations = ["wasm-opt", "asset-opt"]
  116. asset-opt = []
  117. wasm-opt = ["dep:wasm-opt"]
  118. [[bin]]
  119. path = "src/main.rs"
  120. name = "dx"
  121. [package.metadata.binstall]
  122. pkg-url = "{ repo }/releases/download/v{ version }/dx-{ target }-v{ version }{ archive-suffix }"
  123. pkg-fmt = "tgz"
  124. [package.metadata.binstall.overrides.x86_64-pc-windows-msvc]
  125. pkg-fmt = "zip"
  126. [package.metadata.docs.rs]
  127. all-features = false
  128. rustc-args = [ "--cfg", "docsrs" ]
  129. rustdoc-args = [ "--cfg", "docsrs" ]