[package] name = "starship" version = "1.15.0" authors = ["Starship Contributors"] build = "build.rs" categories = ["command-line-utilities"] documentation = "https://starship.rs/guide/" edition = "2021" homepage = "https://starship.rs" # Keep `/` in front of `README.md` to exclude localized readmes include = [ "src/**/*", "/starship.exe.manifest", "media/icon.ico", "build.rs", "LICENSE", "/README.md", "docs/.vuepress/public/presets/toml/", ".github/config-schema.json", ] keywords = ["prompt", "shell", "bash", "fish", "zsh"] license = "ISC" readme = "README.md" repository = "https://github.com/starship/starship" # Note: MSRV is only intended as a hint, and only the latest version is officially supported in starship. rust-version = "1.65" description = """ The minimal, blazing-fast, and infinitely customizable prompt for any shell! ☄🌌️ """ [features] default = ["battery", "notify", "gix-max-perf"] battery = ["starship-battery"] config-schema = ["schemars"] notify = ["notify-rust"] # Enables most of the `max-performance` features of the `gix` module for better performance. # This can be more difficult to build in some conditions and requires cmake. gix-max-perf = ["gix-features/zlib-ng", "gix/fast-sha1"] # Slower than `git-repository-max-perf`, but better than the default. # Unlike `git-repository-max-perf` this does not require cmake and allows dynamic zlib linking. gix-faster = ["gix-features/zlib-stock", "gix/fast-sha1"] [dependencies] chrono = { version = "0.4.26", default-features = false, features = ["clock", "std", "wasmbind"] } clap = { version = "4.3.9", features = ["derive", "cargo", "unicode"] } clap_complete = "4.3.1" dirs-next = "2.0.0" dunce = "1.0.4" gethostname = "0.4.3" # default feature restriction addresses https://github.com/starship/starship/issues/4251 gix = { version = "0.48.0", default-features = false, features = ["max-performance-safe"] } gix-features = { version = "0.31.1", optional = true } indexmap = { version = "1.9.3", features = ["serde"] } log = { version = "0.4.19", features = ["std"] } # notify-rust is optional (on by default) because the crate doesn't currently build for darwin with nix # see: https://github.com/NixOS/nixpkgs/issues/160876 notify-rust = { version = "4.8.0", optional = true } nu-ansi-term = "0.48.0" once_cell = "1.18.0" open = "5.0.0" # update os module config and tests when upgrading os_info os_info = "3.7.0" path-slash = "0.2.1" pest = "2.7.0" pest_derive = "2.7.0" quick-xml = "0.29.0" rand = "0.8.5" rayon = "1.7.0" regex = { version = "1.8.4", default-features = false, features = ["perf", "std", "unicode-perl"] } rust-ini = "0.19.0" semver = "1.0.17" serde = { version = "1.0.164", features = ["derive"] } serde_json = "1.0.99" sha1 = "0.10.5" shadow-rs = { version = "0.23.0", default-features = false } # battery is optional (on by default) because the crate doesn't currently build for Termux # see: https://github.com/svartalf/rust-battery/issues/33 starship-battery = { version = "0.8.1", optional = true } strsim = "0.10.0" systemstat = "=0.2.3" terminal_size = "0.2.6" toml = { version = "0.7.5", features = ["preserve_order"] } toml_edit = "0.19.11" unicode-segmentation = "1.10.1" unicode-width = "0.1.10" urlencoding = "2.1.2" versions = "5.0.0" which = "4.4.0" yaml-rust = "0.4.5" process_control = { version = "4.0.3", features = ["crossbeam-channel"] } guess_host_triple = "0.1.3" home = "0.5.5" shell-words = "1.1.0" [dependencies.schemars] version = "0.8.12" optional = true features = ["preserve_order", "indexmap"] [target.'cfg(windows)'.dependencies] deelevate = "0.2.0" [target.'cfg(windows)'.dependencies.windows] version = "0.48.0" features = [ "Win32_Foundation", "Win32_UI_Shell", "Win32_Security", "Win32_System_Threading", "Win32_Storage_FileSystem", ] [target.'cfg(not(windows))'.dependencies] nix = { version = "0.26.2", default-features = false, features = ["feature", "fs", "user"] } [build-dependencies] shadow-rs = { version = "0.23.0", default-features = false } dunce = "1.0.4" [target.'cfg(windows)'.build-dependencies] winres = "0.1.12" [dev-dependencies] mockall = "0.11" tempfile = "3.6.0" [profile.release] codegen-units = 1 lto = true strip = true [[bin]] name = "starship" path = "src/main.rs"