/
Cargo.toml
156 lines (137 loc) · 5.43 KB
/
Cargo.toml
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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
[package]
authors = ["bunnie <bunnie@kosagi.com>"]
description = "A shell with a chat-like interface"
edition = "2018"
name = "shellchat"
version = "0.1.0"
# Dependency versions enforced by Cargo.lock.
[dependencies]
com = { path = "../com" }
content-plugin-api = { path = "../content-plugin-api" } # all content canvas providers must provide this API
gam = { path = "../gam" }
graphics-server = { path = "../graphics-server" }
ime-plugin-api = { path = "../ime-plugin-api" }
ime-plugin-shell = { path = "../ime-plugin-shell" }
ime-plugin-tts = { path = "../ime-plugin-tts" }
llio = { path = "../llio" }
log = "0.4.14"
log-server = { package = "xous-api-log", version = "0.1.56" }
ticktimer-server = { package = "xous-api-ticktimer", version = "0.9.56" }
xous = "0.9.60"
xous-ipc = "0.9.60"
xous-names = { package = "xous-api-names", version = "0.9.58" }
keyboard = { path = "../keyboard" }
susres = { package = "xous-api-susres", version = "0.9.56" }
codec = { path = "../codec" }
sha2 = { version = "0.10.8" }
digest = "0.10.7"
aes = { path = "../aes" }
cipher = "0.4.4"
spinor = { path = "../spinor" }
root-keys = { path = "../root-keys" }
jtag = { path = "../jtag" }
net = { path = "../net" }
dns = { path = "../dns" }
pddb = { path = "../pddb" }
modals = { path = "../modals" }
usb-device-xous = { path = "../usb-device-xous" }
utralib = { version = "0.1.24", optional = true, default-features = false }
tts-frontend = { path = "../tts" }
locales = { path = "../../locales" }
trng = { path = "../trng" }
num-derive = { version = "0.4.1", default-features = false }
num-traits = { version = "0.2.14", default-features = false }
rkyv = { version = "0.4.3", default-features = false, features = [
"const_generics",
] }
chrono = { version = "0.4.33", default-features = false, features = ["std"] }
# for audio self-test analysis
base64 = "0.20.0"
cos_table = { path = "../../libs/cos_table" }
# used to parse net connectivity results
com_rs = { git = "https://github.com/betrusted-io/com_rs", rev = "891bdd3ca8e41f81510d112483e178aea3e3a921" }
# for net testing
threadpool = "1.8.1"
# testing rand compatibility - this is chasing the devil, but unfortunately
# a *lot* of useful packages are chasing this devil.
# also used in pddb testing
rand = { version = "0.8.5", features = ["getrandom"] }
# pddb testing
rand_chacha = { version = "0.3.1", optional = true }
# for lock tests
rand_xorshift = "0.3.0"
# for ditherpunk testing
png = { version = "0.17.5", optional = true }
tracking-allocator = { version = "0.3.0", optional = true }
tracing = { version = "0.1.35", optional = true }
tracing-subscriber = { version = "0.3.11", optional = true }
# for rustls testing
tls = { path = "../../libs/tls", optional = true }
url = { version = "2.3.1", optional = true }
# for testing ring math functions
# note requirement for patch to xous-ring in workspace Cargo.toml
ring = { version = "=0.17.7", optional = true }
# for direct TLS testing - API broke from 0.16 to 0.17 rustls
rustls = { version = "0.22.2", optional = true }
webpki-roots = { version = "0.26.0", optional = true }
# for websocket testing
tungstenite = { version = "0.20.0", optional = true }
# for performance testing
perflib = { path = "../../libs/perflib", optional = true }
random-pick = { version = "1.2.16", optional = true }
# for the curve25519 tests
# hardware acceleration adaptations are inserted into a fork of the main branch.
hex = { version = "0.4.3", default-features = false, features = [] }
#sha2 = {version = "0.9.5", default-features = false, features = []}
[dependencies.curve25519-dalek]
version = "=4.1.2" # note this is patched to our fork in ./Cargo.toml
default-features = false
features = ["auto-release", "warn-fallback"]
[dependencies.x25519-dalek]
version = "=2.0.1"
# TODO: static_secrets is only needed by the engine tests. Ideally, we would put the static_secrets version in dev deps only
default-features = false
features = ["static_secrets"]
[dependencies.ed25519-dalek]
version = "=2.1.0"
#path = "../../../ed25519-dalek"
default-features = false
features = ["rand_core"]
[features]
precursor = ["utralib/precursor", "sha2/precursor"]
hosted = ["utralib/hosted", "sha2/hosted", "random-pick"]
renode = ["utralib/renode", "sha2/renode"]
debugprint = []
spinortest = [
] # for spinor testing. contra-indicated with PDDB, as it steals memory from the PDDB.
benchmarks = [
] # adds the benchmark routines. Left off normally to free up code and memory space.
hashtest = []
aestests = [] # adds AES tests
tts = [] # adds text to speech plugin
pddbtest = ["rand_chacha"]
autobasis = ["rand_chacha"]
autobasis-ci = []
ditherpunk = ["png"]
tracking-alloc = ["tracking-allocator", "tracing", "tracing-subscriber"]
dbg-ecupdate = [
] # for issuing manual commands to initiate an EC update (vs UX). Also need to enable this feature in the status crate. Intended for debug only.
test-rekey = []
no-codec = []
nettest = [] # batch network tests
tls = ["dep:tls", "ring"]
rootCA = ["tls/rootCA"]
websocket = ["tls", "tungstenite", "url"]
shellperf = [
"ring",
"perflib",
"xous/v2p",
"random-pick",
] # this also needs the project-wide "perfcounter" feature to be selected. shellchat is the exclusive manager of the performance counter, do not use with e.g. "vaultperf" feature
extra-tests = []
mass-storage = []
rand-api = []
locktests = [
] # for debugging some specific `std` tests cherry-picked out of the test suite
simple-tls = ["rustls", "webpki-roots"]
default = [] # "debugprint"