yosh 0.2.5

A POSIX-compliant shell implemented in Rust
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 = "yosh"
version = "0.2.5"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A POSIX-compliant shell implemented in Rust"
readme = false
license = "MIT"
repository = "https://github.com/k-ymmt/yosh"

[features]
dhat-heap = ["dep:dhat"]
test-helpers = []

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

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

[[bin]]
name = "yosh-dhat"
path = "src/bin/yosh-dhat.rs"

[[bin]]
name = "yosh-plugin"
path = "src/bin/yosh-plugin.rs"

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

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

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

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

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

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

[[test]]
name = "plugin"
path = "tests/plugin.rs"
required-features = ["test-helpers"]

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

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

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

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

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

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

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

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

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

[[bench]]
name = "plugin_bench"
path = "benches/plugin_bench.rs"
harness = false
required-features = ["test-helpers"]

[[bench]]
name = "plugin_bench_helpers"
path = "benches/plugin_bench_helpers.rs"

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

[dependencies.crossterm]
version = "0.29"

[dependencies.dhat]
version = "0.3"
optional = true

[dependencies.hex]
version = "0.4"

[dependencies.libc]
version = "0.2"

[dependencies.nix]
version = "0.31"
features = [
    "signal",
    "process",
    "fs",
    "poll",
    "term",
    "user",
]

[dependencies.owo-colors]
version = "4"

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

[dependencies.sha2]
version = "0.10"

[dependencies.toml]
version = "0.8"

[dependencies.unicode-width]
version = "0.2"

[dependencies.wasmtime]
version = "27"
features = [
    "component-model",
    "cranelift",
    "cache",
    "runtime",
]
default-features = false

[dependencies.wasmtime-wasi]
version = "27"
default-features = false

[dependencies.yosh-plugin-api]
version = "0.2.5"

[dependencies.yosh-plugin-manager]
version = "0.2.5"

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

[dev-dependencies.crossterm]
version = "0.29"

[dev-dependencies.expectrl]
version = "0.8"

[dev-dependencies.tempfile]
version = "3"

[profile.profiling]
debug = 2
inherits = "release"
strip = false

[profile.release.package.perf_plugin]
opt-level = "s"
strip = true

[profile.release.package.slow_plugin]
opt-level = "s"
strip = true

[profile.release.package.test_plugin]
opt-level = "s"
strip = true

[profile.release.package.trap_plugin]
opt-level = "s"
strip = true