starship/Cargo.toml

136 lines
4.2 KiB
TOML
Raw Normal View History

[package]
name = "starship"
version = "1.21.1"
2021-11-09 22:30:28 +01:00
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",
2022-06-19 10:33:42 +02:00
"media/icon.ico",
"build.rs",
"LICENSE",
"/README.md",
"docs/public/presets/toml/",
".github/config-schema.json",
]
keywords = ["prompt", "shell", "bash", "fish", "zsh"]
license = "ISC"
readme = "README.md"
repository = "https://github.com/starship/starship"
2022-03-12 22:23:24 +01:00
# Note: MSRV is only intended as a hint, and only the latest version is officially supported in starship.
rust-version = "1.80"
description = """
2020-02-13 03:46:00 +01:00
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.38", default-features = false, features = ["clock", "std", "wasmbind"] }
2024-11-13 20:19:33 +01:00
clap = { version = "4.5.21", features = ["derive", "cargo", "unicode"] }
clap_complete = "4.5.38"
dirs = "5.0.1"
dunce = "1.0.5"
# default feature restriction addresses https://github.com/starship/starship/issues/4251
2024-11-24 11:19:16 +01:00
gix = { version = "0.68.0", default-features = false, features = ["max-performance-safe", "revision"] }
gix-features = { version = "0.39.1", optional = true }
indexmap = { version = "2.6.0", features = ["serde"] }
log = { version = "0.4.22", 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.11.3", optional = true }
nu-ansi-term = "0.50.1"
open = "5.3.1"
feat: Add operating system module (#4109) * docs(os): Add os module documentation * docs(os): Add os to Default Prompt Format * chore(os): Update config file schema * feat(os): Add os entries and declarations * feat(os): Add os module and config * fix(os): Obey config.disabled * feat(os): make variables 'Unknown'-aware refactor(os): calculate variables in dedicated functions * test(os): Add os module tests * feat(os): make 'name' variable less 'Unknown'-aware * docs(os): Add Preset configurations docs(os): Use emoji as default * feat(os): Use emoji as default test(os): Use emoji as default * fix(os): Add spaces after emoji symbols * chore(os): Update config schema * feat(os): Remove `bitness` variable docs(os): Remove `bitness` variable test(os): Remove `bitness` test * feat(os): Add Cargo.toml upgrade caution for os_info * refactor(os): Clarify get_symbol function * docs(os): Mention supported operating systems and feature requests * docs(os): Mention os_info inacurracy * test(os): Remove `bitness` leftovers * refactor(os): use nu_ansi_term * refactor(os): add cfg_attr(schemars(deny_unknown_fields)) * chore(os): update config schema * docs(os): expose details block * feat(os): add garuda linux * chore(os): update config schema * feat(os): add case insensitivity * feat(os): add symbols `IndexMap` use `os_info::Type` instead of `String` * test(os): add clippy warn on new os_info::Type case * leave missing case to test github tests * test(os): re-add missing test case * style(os): fix formatting * docs(os): update to match os_info::Type serialization - docs(os): add missing garuda to config - test(os): mention docs updates in warn_on_os_info_update
2022-11-06 22:37:58 +01:00
# update os module config and tests when upgrading os_info
os_info = "3.9.0"
path-slash = "0.2.1"
pest = "2.7.14"
pest_derive = "2.7.14"
process_control = "5.0.0"
quick-xml = "0.37.1"
rand = "0.8.5"
rayon = "1.10.0"
regex = { version = "1.11.1", default-features = false, features = ["perf", "std", "unicode-perl"] }
rust-ini = "0.21.1"
semver = "1.0.23"
serde = { version = "1.0.215", features = ["derive"] }
serde_json = "1.0.133"
sha1 = "0.10.6"
shadow-rs = { version = "0.36.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.10.0", optional = true }
strsim = "0.11.1"
systemstat = "=0.2.3"
terminal_size = "0.4.0"
2024-07-31 23:35:39 +02:00
toml = { version = "0.8.19", features = ["preserve_order"] }
toml_edit = "0.22.22"
unicode-segmentation = "1.12.0"
unicode-width = "0.2.0"
urlencoding = "2.1.3"
versions = "6.3.2"
which = "7.0.0"
whoami = { version = "1.5.2", default-features = false }
yaml-rust2 = "0.9.0"
guess_host_triple = "0.1.4"
home = "0.5.9"
shell-words = "1.1.0"
[dependencies.schemars]
version = "0.8.21"
optional = true
features = ["preserve_order", "indexmap2"]
[target.'cfg(windows)'.dependencies]
deelevate = "0.2.0"
[target.'cfg(windows)'.dependencies.windows]
version = "0.58.0"
features = [
"Win32_Foundation",
"Win32_UI_Shell",
"Win32_Security",
"Win32_System_Threading",
"Win32_Storage_FileSystem",
]
[target.'cfg(not(windows))'.dependencies]
nix = { version = "0.29.0", default-features = false, features = ["feature", "fs", "user"] }
[build-dependencies]
shadow-rs = { version = "0.36.0", default-features = false }
dunce = "1.0.5"
[target.'cfg(windows)'.build-dependencies]
winres = "0.1.12"
[dev-dependencies]
mockall = "0.13.1"
tempfile = "3.14.0"
[profile.release]
codegen-units = 1
lto = true
strip = true
[[bin]]
name = "starship"
path = "src/main.rs"