[package] authors = ["bunnie "] 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.61" } ticktimer-server = { package = "xous-api-ticktimer", version = "0.9.61" } xous = "0.9.64" xous-ipc = "0.10.2" xous-names = { package = "xous-api-names", version = "0.9.63" } keyboard = { path = "../keyboard" } susres = { package = "xous-api-susres", version = "0.9.61" } 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.25", 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.8.8", default-features = false, features = [ "std", "alloc", ] } 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"] clifford-bench = [] nettype = [] # takes a file from a URL and emits it as keystrokes default = [] # "debugprint"