summaryrefslogtreecommitdiffstats
path: root/Cargo.toml
blob: ad3832a052d8921e520e72fae88960fabd3dacc0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
[package]
name = "starship"
version = "1.10.2"
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.59"
description = """
The minimal, blazing-fast, and infinitely customizable prompt for any shell! ☄🌌️
"""

[features]
default = ["battery", "notify"]
battery = ["starship-battery"]
config-schema = ["schemars"]
notify = ["notify-rust"]

[dependencies]
ansi_term = "0.12.1"
chrono = { version = "0.4.22", features = ["clock", "std"] }
clap = { version = "=3.2.17", features = ["derive", "cargo", "unicode", "unstable-v4"] }
clap_complete = "3.2.4"
dirs-next = "2.0.0"
dunce = "1.0.2"
gethostname = "0.2.3"
# Addresses https://github.com/starship/starship/issues/4251
git-features = { version = "0.22.1", features = ["fs-walkdir-single-threaded"] }
git-repository = "0.21.0"
indexmap = { version = "1.9.1", features = ["serde"] }
local_ipaddress = "0.1.3"
log = { version = "0.4.16", features = ["std"] }
# nofity-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.5.8", optional = true }
once_cell = "1.13.1"
open = "3.0.2"
os_info = "3.5.0"
path-slash = "0.2.1"
pest = "2.2.1"
pest_derive = "2.2.1"
quick-xml = "0.23.0"
rand = "0.8.5"
rayon = "1.5.3"
regex = "1.6.0"
rust-ini = "0.18.0"
semver = "1.0.13"
serde = { version = "1.0.143", features = ["derive"] }
serde_json = "1.0.83"
sha-1 = "0.10.0"
shadow-rs = { version = "0.16.2", 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.7.9", optional = true }
strsim = "0.10.0"
systemstat = "=0.1.11"
terminal_size = "0.2.1"
toml = { version = "0.5.9", features = ["preserve_order"] }
toml_edit = "0.14.4"
unicode-segmentation = "1.9.0"
unicode-width = "0.1.9"
urlencoding = "2.1.0"
versions = "4.1.0"
which = "4.2.5"
yaml-rust = "0.4.5"

process_control = { version = "3.5.1", features = ["crossbeam-channel"] }

guess_host_triple = "0.1.3"
home = "0.5.3"
shell-words = "1.1.0"

[dependencies.schemars]
version = "0.8.10"
optional = true
features = ["preserve_order", "indexmap"]

[target.'cfg(windows)'.dependencies]
deelevate = "0.2.0"

[target.'cfg(windows)'.dependencies.windows]
version = "0.39.0"
features = [
  "Win32_Foundation",
  "Win32_UI_Shell",
  "Win32_Security",
  "Win32_System_Threading",
  "Win32_Storage_FileSystem",
]

[target.'cfg(not(windows))'.dependencies]
nix = { version = "0.25.0", default-features = false, features = ["feature", "fs", "user"] }

[build-dependencies]
shadow-rs = { version = "0.16.2", default-features = false }
dunce = "1.0.2"

[target.'cfg(windows)'.build-dependencies]
winres = "0.1.12"

[dev-dependencies]
mockall = "0.11"
tempfile = "3.2.0"

[profile.release]
codegen-units = 1
lto = true
strip = true

[[bin]]
name = "starship"
path = "src/main.rs"