cargo-features = ["trim-paths", "panic-immediate-abort"] [workspace] members = [ "ush-obfuscate", "base62", # "unshell-macros", "unshell-protocol", # "unshell-runtime", # "unshell-leaves", # "treetest", ] resolver = "2" [workspace.package] version = "0.1.0" edition = "2024" authors = ["ASTATIN3"] license = "MIT" repository = "https://github.com/Astatin3/unshell" include = ["LICENSE", "**/*.rs", "Cargo.toml"] [workspace.dependencies] rkyv = "0.8.16" thiserror = "2.0.18" chrono = "0.4.44" static_init = "1.0.4" syn = "2.0.117" quote = "1.0.45" proc-macro2 = "1.0.106" portable-pty = "0.9.0" crossbeam-channel = "0.5.15" unshell = { path = "." } unshell-protocol = { path = "./unshell-protocol" } # unshell-runtime = { path = "./unshell-runtime" } # unshell-leaves = { path = "./unshell-leaves" } # unshell-macros = { path = "./unshell-macros" } # ush-obfuscate = { path = "./ush-obfuscate" } # base62 = { path = "./base62" } [package] name = "unshell" version.workspace = true edition.workspace = true description = "Pure no_std implementation of the UnShell Protocol" [features] default = [] log = [] log_debug = ["log", "dep:chrono"] # Leaf features # leaf_endpoint = ["unshell-leaves/leaf_endpoint"] # leaf_tui = ["unshell-leaves/leaf_tui"] # obfuscate_aes = ["ush-obfuscate/obfuscate_aes"] # obfuscate_ref = ["ush-obfuscate/obfuscate_ref"] [dependencies] rkyv = { workspace = true } thiserror = { workspace = true, optional = true } chrono = { workspace = true, optional = true } # ush-obfuscate = { workspace = true } static_init = { workspace = true } # unshell-macros = { workspace = true } unshell-protocol = { workspace = true } # unshell-runtime = { workspace = true } # unshell-leaves = { workspace = true } [profile.minimize] inherits = "release" strip = true # Strip symbols from the binary opt-level = "z" # Optimize for size lto = true # Link tree optimization codegen-units = 1 panic = "immediate-abort" debug = false # Remove debug trim-paths="all" [lints.rust] elided_lifetimes_in_paths = "warn" future_incompatible = { level = "warn", priority = -1 } nonstandard_style = { level = "warn", priority = -1 } rust_2018_idioms = { level = "warn", priority = -1 } rust_2021_prelude_collisions = "warn" semicolon_in_expressions_from_macros = "warn" unsafe_op_in_unsafe_fn = "warn" unused_import_braces = "warn" unused_lifetimes = "warn" trivial_casts = "allow" # missing_docs = "warn"