[package] name = "trunk" version = "0.21.4" edition = "2021" description = "Build, bundle & ship your Rust WASM application to the web." license = "MIT/Apache-2.0" authors = [ "Anthony Dodd ", "Jens Reimann ", ] repository = "https://github.com/trunk-rs/trunk" readme = "README.md" categories = ["command-line-utilities", "wasm", "web-programming"] keywords = ["wasm", "bundler", "web", "build-tool", "compiler"] rust-version = "1.77.0" [profile.release] lto = "fat" codegen-units = 1 panic = "abort" [dependencies] anyhow = "1" axum = { version = "0.7", features = ["ws"] } axum-server = "0.7" base64 = "0.22" bytes = "1" cargo-lock = "10" cargo_metadata = "0.18.1" clap = { version = "4", features = ["derive", "env"] } console = "0.15" directories = "5" dunce = "1" flate2 = "1" futures-util = { version = "0.3", default-features = false, features = ["sink"] } hickory-resolver = { version = "0.24.1", features = ["system-config"] } homedir = "0.3.3" htmlescape = "0.3.1" http = "1.1" humantime = "2" humantime-serde = "1" local-ip-address = "0.6.1" lol_html = "1.2.1" mime_guess = "2.0.4" minify-html = "0.15.0" minify-js = "0.5.6" # stick with 0.5.x as 0.6 seems to create broken JS notify = "6" notify-debouncer-full = "0.3" once_cell = "1" open = "5" oxipng = "9" parking_lot = "0.12" rand = "0.8.5" remove_dir_all = "0.8" reqwest = { version = "0.12", default-features = false, features = ["stream", "trust-dns"] } schemars = { version = "0.8", features = ["derive"] } seahash = { version = "4", features = ["use_std"] } semver = "1" serde = { version = "1", features = ["derive"] } serde_json = "1" serde_yaml = "=0.9.33" # serde-yaml is deprecated, but "just works", let's see who becomes the next serde_yaml sha2 = "0.10" strum = { version = "0.26", features = ["derive"] } tar = "0.4" thiserror = "1" time = { version = "0.3", features = ["serde-well-known"] } tokio = { version = "1", default-features = false, features = ["full"] } tokio-stream = { version = "0.1", default-features = false, features = ["fs", "sync"] } tokio-tungstenite = "0.24" toml = "0.8" tower-http = { version = "0.6.1", features = ["fs", "trace", "set-header"] } tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } which = "7" zip = "2" # pin lightningcss, used by trunk, also pulled in by minify-html lightningcss = "=1.0.0-alpha.60" # required for the update check crates_io_api = { version = "0.11", default-features = false, optional = true } # for enabling vendoring openssl = { version = "0.10", default-features = false, optional = true } [target.'cfg(windows)'.dependencies] # keep aligned with the version from tracing-subscriber nu-ansi-term = "0.46" [dev-dependencies] tempfile = "3" rstest = "0.23" [features] default = ["update_check", "native-tls"] # use rustls as TLS stack rustls = [ "axum-server/tls-rustls", "crates_io_api/rustls", "reqwest/rustls-tls", "reqwest/rustls-tls-native-roots", "tokio-tungstenite/rustls", "tokio-tungstenite/rustls-tls-native-roots", ] # use native-tls/openssl as TLS stack native-tls = [ "openssl", "axum-server/tls-openssl", "reqwest/native-tls", "tokio-tungstenite/native-tls", ] # enable the update check on startup update_check = ["crates_io_api"] # enable vendoring on crates supporting that vendored = ["openssl?/vendored"]