why2 1.4.0

Lightweight, fast, secure, and easy to use encryption system.
Documentation
[[bin]]
name = "why2"
path = "chat/bin/client.rs"
required-features = ["client"]

[[bin]]
name = "why2-server"
path = "chat/bin/server.rs"
required-features = ["server"]

[dependencies.argon2]
optional = true
version = "0.5.3"

[dependencies.audiopus]
optional = true
version = "0.2.0"

[dependencies.base91]
optional = true
version = "0.1.0"

[dependencies.colored]
optional = true
version = "3.0.0"

[dependencies.cpal]
optional = true
version = "0.17.0"

[dependencies.crossterm]
optional = true
version = "0.29.0"

[dependencies.ctrlc]
optional = true
version = "3.5.1"

[dependencies.dashmap]
optional = true
version = "6.1.0"

[dependencies.dirs]
optional = true
version = "6.0.0"

[dependencies.gag]
optional = true
version = "1.0.0"

[dependencies.hkdf]
optional = true
version = "0.12.4"

[dependencies.hmac]
optional = true
version = "0.12.1"

[dependencies.log]
optional = true
version = "0.4.29"

[dependencies.nnnoiseless]
optional = true
version = "0.5.2"

[dependencies.p521]
features = ["ecdh", "pkcs8"]
optional = true
version = "0.13.3"

[dependencies.rand]
version = "0.9.2"

[dependencies.rand_chacha]
version = "0.9.0"

[dependencies.rayon]
version = "1.11.0"

[dependencies.ringbuf]
optional = true
version = "0.4.8"

[dependencies.semver]
optional = true
version = "1.0.27"

[dependencies.serde_json]
optional = true
version = "1.0.148"

[dependencies.sha2]
version = "0.10.9"

[dependencies.simple_logger]
optional = true
version = "5.1.0"

[dependencies.subtle]
optional = true
version = "2.6.1"

[dependencies.toml_edit]
optional = true
version = "0.24.0"

[dependencies.ureq]
optional = true
version = "3.1.4"

[dependencies.wincode]
features = ["derive"]
optional = true
version = "0.2.5"

[dependencies.zeroize]
features = ["derive"]
version = "1.8.2"

[features]
chat = ["dep:base91", "dep:serde_json", "dep:wincode", "dep:ureq", "dep:colored", "dep:toml_edit", "dep:dirs", "dep:semver", "dep:p521", "dep:hmac", "dep:hkdf"]
client = ["chat", "dep:crossterm", "dep:cpal", "dep:ringbuf", "dep:audiopus", "dep:gag", "dep:nnnoiseless"]
constant-time = ["dep:subtle"]
default = ["constant-time"]
legacy = []
server = ["chat", "dep:ctrlc", "dep:argon2", "dep:dashmap", "dep:log", "dep:simple_logger"]

[lib]
name = "why2"
path = "core/lib.rs"

[package]
authors = ["Václav Šmejkal <engo@satan.red>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = "build.rs"
categories = ["cryptography", "network-programming", "command-line-utilities"]
default-run = "why2"
description = "Lightweight, fast, secure, and easy to use encryption system."
edition = "2024"
keywords = ["encryption", "chat", "security", "rust"]
license = "GPL-3.0-only"
name = "why2"
readme = "README.md"
repository = "https://git.satan.red/ENGO150/WHY2"
version = "1.4.0"

[package.metadata.docs.rs]
features = ["legacy"]
rustdoc-args = ["--html-in-header", "core/docs-header.html"]

[profile.release]
codegen-units = 1
lto = true
opt-level = "s"
panic = "abort"
strip = true

[[test]]
name = "lib"
path = "tests/lib.rs"