Files
2026-07-13 13:11:28 +08:00

188 lines
5.0 KiB
TOML

[package]
authors = ["nongyehong"]
description = "hula"
edition = "2024"
license = ""
name = "hula"
repository = ""
version = "3.0.9"
[workspace]
members = [".", "entity", "migration"]
resolver = "3"
[workspace.dependencies]
entity = { path = "entity" }
[profile.dev]
debug = true
incremental = true
opt-level = 1
overflow-checks = true
[profile.release]
codegen-units = 1 # 一个接一个地编译包,这样编译器就可以更好地优化
debug = false # 关闭调试信息
incremental = true # 启用增量编译
lto = true # 启用链接到优化
opt-level = 3 # 最大优化
panic = "abort" # 崩溃时直接终止
strip = true # 删除调试符号
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lib]
# The `_lib` suffix may seem redundant but it is necessary
# to make the lib name unique and wouldn't conflict with the bin name.
# This seems to be only an issue on Windows, see https://github.com/rust-lang/cargo/issues/8519
crate-type = ["staticlib", "cdylib", "rlib"]
name = "hula_app_lib"
[build-dependencies]
cc = "1.2"
tauri-build = { version = "2", features = [] }
[dependencies]
# Tauri 官方依赖
tauri = { version = "2", features = [
"protocol-asset",
"macos-private-api",
"tray-icon",
"image-png",
"rustls-tls",
"unstable",
] }
tauri-plugin-clipboard-manager = "2"
tauri-plugin-dialog = "2"
tauri-plugin-fs = "2"
tauri-plugin-global-shortcut = "2"
tauri-plugin-http = { version = "2", features = [
"unsafe-headers",
"rustls-tls",
] }
tauri-plugin-notification = "2"
tauri-plugin-opener = "2"
tauri-plugin-os = "2"
tauri-plugin-process = "2"
tauri-plugin-shell = "2"
tauri-plugin-sql = { version = "2", features = ["sqlite"] }
tauri-plugin-upload = "2"
# tauri-plugin-devtools = "2"
tauri-plugin-log = { version = "2", features = ["colored"] }
tracing = "0.1.44"
tracing-subscriber = "0.3.23"
# Tauri 非官方依赖
async-walkdir = "2.1.0"
moka = { version = "0.12.15", features = ["future"] }
once_cell = "1.21.4"
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.149"
sysinfo = "0.38.4"
tauri-plugin-mic-recorder = "2"
tokio = { version = "1.52.2", features = ["rt", "rt-multi-thread", "macros"] }
chrono = "0.4.44"
sea-orm = { version = "1.1.20", features = [
"sqlx-sqlite",
"runtime-tokio-rustls",
"macros",
"debug-print",
] }
anyhow = "1.0.102"
base64 = "0.22.1"
bytes = "1.11.1"
config = { version = "0.15.22", default-features = false, features = ["yaml"] }
dotenv = "0.15.0"
entity = { path = "entity" }
futures = "0.3.32"
http = "1.4.0"
image = { version = "0.25.10", features = ["jpeg", "png"] }
lazy_static = "1.5"
md-5 = "0.11.0"
migration = { path = "migration" } # depends on your needs
mime_guess = "2.0.5"
pulldown-cmark = "0.13.3"
reqwest = { version = "0.12", default-features = false, features = [
"json",
"socks",
"rustls-tls",
"blocking",
"stream",
] }
rodio = "0.22.2"
thiserror = "2.0.18"
# WebSocket 相关依赖
futures-util = "0.3.32"
libsqlite3-sys = { version = "0.30.1", features = ["bundled"] }
tokio-tungstenite = { version = "0.29.0", features = [
"rustls-tls-webpki-roots",
] }
url = "2.5.8"
uuid = { version = "1.23.1", features = ["v4"] }
# 移动端的依赖 (iOS 和 Android)
[target."cfg(any(target_os = \"android\", target_os = \"ios\"))".dependencies]
tauri-plugin-barcode-scanner = "2.4.2"
tauri-plugin-hula = { path = "../tauri-plugin-hula" }
tauri-plugin-safe-area-insets = "0.1.0"
[target."cfg(target_os = \"ios\")".dependencies]
block2 = "0.6.2"
objc2 = "0.6.3"
objc2-core-foundation = "0.3.2"
objc2-foundation = "0.3.2"
objc2-ui-kit = "0.3.2"
[target."cfg(target_os = \"android\")".dependencies]
jni = "0.21"
ndk-context = "0.1"
[target."cfg(target_os = \"linux\")".dependencies]
libc = "0.2"
# 不兼容移动端的依赖
[target."cfg(not(any(target_os = \"android\", target_os = \"ios\")))".dependencies]
screenshots = "0.8.10"
tauri-plugin-autostart = "2"
tauri-plugin-single-instance = "2.3.6"
tauri-plugin-updater = "2"
# mac平台需要依赖
[target."cfg(target_os =\"macos\")".dependencies]
block2 = "0.6.2"
core-foundation = "0.10.1"
core-graphics = "0.25.0"
libc = "0.2"
objc2 = "0.6.3"
objc2-app-kit = "0.3.2"
objc2-core-foundation = "0.3.2"
objc2-foundation = "0.3.2"
# windows平台需要依赖
[target."cfg(target_os = \"windows\")".dependencies]
windows = { version = "0.62.2", features = [
"Win32_System_Com",
"Win32_System_Diagnostics_Debug",
"Win32_UI_Shell",
"Win32_UI_Shell_Common",
"Win32_Graphics_Gdi",
"Win32_Foundation",
"Win32_System_Ole",
"Win32_System_Threading",
"Win32_Storage_FileSystem",
"Win32_UI_WindowsAndMessaging",
"Win32_UI_HiDpi",
"Win32_System_Registry",
] }
[features]
# by default Tauri runs in production mode
# when `tauri dev` runs it is executed with `cargo run --no-default-features` if `devPath` is a URL
default = ["custom-protocol"]
# this feature is used for production builds where `devPath` points to the filesystem
# DO NOT remove this
custom-protocol = ["tauri/custom-protocol"]