pzsh 0.3.5

Performance-first shell framework with sub-10ms startup
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "pzsh"
version = "0.3.5"
authors = ["paiml"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Performance-first shell framework with sub-10ms startup"
readme = "README.md"
keywords = [
    "shell",
    "zsh",
    "bash",
    "performance",
    "cli",
]
categories = ["command-line-utilities"]
license = "MIT"
repository = "https://github.com/paiml/pzsh"

[features]
default = []
full = [
    "ml",
    "simd",
]
ml = [
    "aprender",
    "aprender-shell",
]
simd = ["trueno"]

[lib]
name = "pzsh"
path = "src/lib.rs"

[[bin]]
name = "pzsh"
path = "src/main.rs"

[[example]]
name = "basic_config"
path = "examples/basic_config.rs"

[[example]]
name = "benchmark"
path = "examples/benchmark.rs"

[[example]]
name = "color"
path = "examples/color.rs"

[[example]]
name = "completion"
path = "examples/completion.rs"

[[example]]
name = "lint_config"
path = "examples/lint_config.rs"

[[example]]
name = "parser"
path = "examples/parser.rs"

[[example]]
name = "plugin"
path = "examples/plugin.rs"

[[example]]
name = "prompt"
path = "examples/prompt.rs"

[[example]]
name = "shell_init"
path = "examples/shell_init.rs"

[[example]]
name = "theme"
path = "examples/theme.rs"

[[example]]
name = "zsh_features"
path = "examples/zsh_features.rs"

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

[[bench]]
name = "startup"
path = "benches/startup.rs"
harness = false

[dependencies.ahash]
version = "0.8"
features = ["serde"]

[dependencies.anyhow]
version = "1"

[dependencies.aprender]
version = "0.25"
optional = true

[dependencies.aprender-shell]
version = "0.3"
optional = true

[dependencies.clap]
version = "4"
features = ["derive"]

[dependencies.dirs]
version = "6"

[dependencies.hostname]
version = "0.4"

[dependencies.lru]
version = "0.16"

[dependencies.quanta]
version = "0.12"

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.thiserror]
version = "2"

[dependencies.toml]
version = "0.9"

[dependencies.trueno]
version = "0.14"
optional = true

[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]

[dev-dependencies.proptest]
version = "1"

[dev-dependencies.test-case]
version = "3"

[lints.clippy]
cast_possible_truncation = "allow"
cast_precision_loss = "allow"
cast_sign_loss = "allow"
collapsible_if = "allow"
double_must_use = "allow"
format_push_string = "allow"
manual_let_else = "allow"
manual_strip = "allow"
map_unwrap_or = "allow"
missing_const_for_fn = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
must_use_candidate = "allow"
option_if_let_else = "allow"
ptr_arg = "allow"
redundant_clone = "allow"
redundant_closure_for_method_calls = "allow"
single_char_pattern = "allow"
struct_excessive_bools = "allow"
too_many_lines = "allow"
uninlined_format_args = "allow"
unnecessary_literal_bound = "allow"
unnecessary_sort_by = "allow"
unnecessary_wraps = "allow"
wildcard_imports = "allow"

[lints.clippy.all]
level = "warn"
priority = -1

[lints.clippy.nursery]
level = "warn"
priority = -1

[lints.clippy.pedantic]
level = "warn"
priority = -1

[lints.rust]
unsafe_code = "forbid"

[profile.bench]
inherits = "release"

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