[package]
edition = "2021"
name = "zshrs"
version = "0.12.21"
authors = ["MenkeTechnologies <linux.dev25@gmail.com>"]
build = "build.rs"
exclude = [
"/tests/",
"/.github/",
"/test_data/",
"/test_corpus/",
"**/*parity*",
"/docs/",
"/scripts/",
"/bench/",
"/vendor/",
"/completions/",
"/zshrs_dump.*",
"/examples/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "The first compiled Unix shell — bytecode VM, worker pool, AOP intercept, Rkyv caching"
homepage = "https://menketechnologies.github.io/zshrs/"
documentation = "https://docs.rs/zshrs"
readme = "README.md"
keywords = [
"shell",
"zsh",
"bytecode",
"terminal",
"unix",
]
categories = ["command-line-utilities"]
license = "MIT"
repository = "https://github.com/MenkeTechnologies/zshrs"
[features]
daemon = ["zshrs-daemon"]
default = ["daemon"]
flamegraph = ["tracing-flame"]
parity-fuzz = []
profiling = []
prometheus = [
"metrics",
"metrics-exporter-prometheus",
]
recorder = ["daemon"]
zd = [
"dep:ureq",
"dep:base64",
]
zsh-debug = []
[lib]
name = "zsh"
crate-type = [
"lib",
"staticlib",
]
path = "src/lib.rs"
[[bin]]
name = "bench-autoload"
path = "bins/bench-autoload.rs"
[[bin]]
name = "zd"
path = "bins/zd.rs"
required-features = ["zd"]
[[bin]]
name = "zshrs"
path = "bins/zshrs.rs"
[[bin]]
name = "zshrs-recorder"
path = "bins/zshrs-recorder.rs"
required-features = ["recorder"]
[dependencies.atty]
version = "0.2"
[dependencies.base64]
version = "0.22"
optional = true
[dependencies.bincode]
version = "1"
[dependencies.bitflags]
version = "2"
[dependencies.byteorder]
version = "1"
[dependencies.chrono]
version = "0.4"
[dependencies.crossbeam-channel]
version = "0.5"
[dependencies.crossterm]
version = "0.27"
[dependencies.ctrlc]
version = "3"
[dependencies.dirs]
version = "5"
[dependencies.filetime]
version = "0.2.27"
[dependencies.fusevm]
version = "0.14.9"
features = [
"jit-disk-cache",
"aot",
]
[dependencies.glob]
version = "0.3"
[dependencies.hostname]
version = "0.4"
[dependencies.indexmap]
version = "2"
[dependencies.libc]
version = "0.2"
[dependencies.libloading]
version = "0.8"
[dependencies.libm]
version = "0.2"
[dependencies.memmap2]
version = "0.9"
[dependencies.metrics]
version = "0.24"
optional = true
[dependencies.metrics-exporter-prometheus]
version = "0.16"
features = ["http-listener"]
optional = true
default-features = false
[dependencies.nix]
version = "0.29"
features = [
"signal",
"process",
"term",
"fs",
]
[dependencies.notify]
version = "6"
[dependencies.notify-debouncer-mini]
version = "0.4"
[dependencies.once_cell]
version = "1"
[dependencies.os_pipe]
version = "1"
[dependencies.parking_lot]
version = "0.12"
[dependencies.rand]
version = "0.8"
[dependencies.rayon]
version = "1.10"
[dependencies.regex]
version = "1.11"
[dependencies.regex-lite]
version = "0.1"
[dependencies.rkyv]
version = "0.7"
features = [
"validation",
"archive_le",
"size_32",
]
[dependencies.rusqlite]
version = "0.32"
features = ["bundled"]
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
[dependencies.tempfile]
version = "3"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"net",
"fs",
"io-util",
"signal",
"time",
"sync",
"macros",
]
[dependencies.toml]
version = "1"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-appender]
version = "0.2"
[dependencies.tracing-chrome]
version = "0.7"
[dependencies.tracing-flame]
version = "0.2"
optional = true
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"registry",
]
[dependencies.unicode-width]
version = "0.2"
[dependencies.ureq]
version = "2"
features = ["json"]
optional = true
default-features = false
[dependencies.walkdir]
version = "2.5"
[dependencies.znative]
version = "0.12.21"
[dependencies.zshrs-daemon]
version = "0.12.21"
optional = true
[dependencies.zstd]
version = "0.13"
[dev-dependencies.base64]
version = "0.22"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.ureq]
version = "2"
features = ["json"]
default-features = false
[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
panic = "abort"
strip = true