summaryrefslogtreecommitdiff
path: root/Cargo.toml
blob: c19750caa5f7b060fc9b19c947cf867664b53246 (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
[package]
name = "rustyline"
version = "12.0.0"
authors = ["Katsu Kawakami <kkawa1570@gmail.com>"]
edition = "2021"
description = "Rustyline, a readline implementation based on Antirez's Linenoise"
documentation = "https://docs.rs/rustyline"
repository = "https://github.com/kkawakam/rustyline"
readme = "README.md"
keywords = ["readline"]
license = "MIT"
categories = ["command-line-interface"]

exclude = [
  "/.github/*",
  "/rustfmt.toml",
]

[badges]
maintenance = { status = "actively-developed" }

[workspace]
members = ["rustyline-derive"]

[dependencies]
bitflags = "2.0"
cfg-if = "1.0"
# For file completion
home = { version = "0.5.4", optional = true }
# For History
fd-lock = { version = "4.0.0", optional = true }
rusqlite = { version = "0.29.0", optional = true, default-features = false, features = ["bundled", "backup"] }
libc = "0.2"
log = "0.4"
unicode-width = "0.1"
unicode-segmentation = "1.0"
memchr = "2.0"
# For custom bindings
radix_trie = { version = "0.2", optional = true }
regex = { version = "1.5.5", optional = true }
# For derive
rustyline-derive = { version = "0.9.0", optional = true, path = "rustyline-derive" }

[target.'cfg(unix)'.dependencies]
nix = { version = "0.26", default-features = false, features = ["fs", "ioctl", "poll", "signal", "term"] }
utf8parse = "0.2"
skim = { version = "0.10", optional = true, default-features = false }
signal-hook = { version = "0.3", optional = true, default-features = false }

[target.'cfg(windows)'.dependencies]
winapi = { version = "0.3", features = ["consoleapi", "handleapi", "synchapi", "minwindef", "processenv", "std", "winbase", "wincon", "winuser"] }
scopeguard = "1.1"
clipboard-win = "4.5"

[dev-dependencies]
doc-comment = "0.3"
env_logger = { version = "0.10", default-features = false }
tempfile = "3.1.0"
rand = "0.8"
assert_matches = "1.2"

[features]
default = ["custom-bindings", "with-dirs", "with-file-history"]
custom-bindings = ["radix_trie"]
derive = ["rustyline-derive"]
with-dirs = ["home"]
with-file-history = ["fd-lock"]
with-sqlite-history = ["rusqlite"]
with-fuzzy = ["skim"]
case_insensitive_history_search = ["regex"]

[[example]]
name = "custom_key_bindings"
required-features = ["custom-bindings", "derive"]
[[example]]
name = "diy_hints"
required-features = ["derive"]
[[example]]
name = "example"
required-features = ["custom-bindings", "derive"]
[[example]]
name = "input_multiline"
required-features = ["custom-bindings", "derive"]
[[example]]
name = "input_validation"
required-features = ["derive"]
[[example]]
name = "numeric_input"
required-features = ["custom-bindings"]
[[example]]
name = "read_password"
required-features = ["derive"]
[[example]]
name = "sqlite_history"
required-features = ["with-sqlite-history"]

[package.metadata.docs.rs]
features = ["custom-bindings", "derive", "with-dirs", "with-file-history", "with-fuzzy"]
all-features = false
no-default-features = true
default-target = "x86_64-unknown-linux-gnu"
rustdoc-args = ["--cfg", "docsrs"]