[package]
edition = "2024"
rust-version = "1.85"
name = "gshell"
version = "1.0.3"
build = false
include = [
"src/**/*",
"tests/**/*",
"benches/**/*",
".github/workflows/*.yml",
"docs/**/*",
"packaging/**/*",
"scripts/**/*",
"Cargo.toml",
"Cargo.lock",
"README.md",
"LICENSE*",
"Makefile",
"rust-toolchain.toml",
"rustfmt.toml",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "gshell is a shell for people who live in the terminal. It pairs familiar Unix behavior with a tighter core, fast interaction, and an interface built to stay out of the way."
homepage = "https://github.com/emagjby/gshell"
documentation = "https://github.com/emagjby/gshell/tree/main/docs"
readme = "README.md"
keywords = [
"shell",
"terminal",
"cli",
"unix",
]
categories = [
"command-line-utilities",
"development-tools",
]
license = "MIT"
repository = "https://github.com/emagjby/gshell"
[lib]
name = "gshell"
path = "src/lib.rs"
[[bin]]
name = "gshell"
path = "src/main.rs"
[[test]]
name = "aliases"
path = "tests/aliases.rs"
[[test]]
name = "builtins"
path = "tests/builtins.rs"
[[test]]
name = "cli"
path = "tests/cli.rs"
[[test]]
name = "command_substitution"
path = "tests/command_substitution.rs"
[[test]]
name = "compat_advanced"
path = "tests/compat_advanced.rs"
[[test]]
name = "composition"
path = "tests/composition.rs"
[[test]]
name = "expand"
path = "tests/expand.rs"
[[test]]
name = "expansion_integration"
path = "tests/expansion_integration.rs"
[[test]]
name = "external"
path = "tests/external.rs"
[[test]]
name = "functions"
path = "tests/functions.rs"
[[test]]
name = "history"
path = "tests/history.rs"
[[test]]
name = "jobs"
path = "tests/jobs.rs"
[[test]]
name = "parser"
path = "tests/parser.rs"
[[test]]
name = "redirection"
path = "tests/redirection.rs"
[[test]]
name = "repl"
path = "tests/repl.rs"
[[test]]
name = "smoke"
path = "tests/smoke.rs"
[[test]]
name = "validator"
path = "tests/validator.rs"
[[bench]]
name = "shell_bench"
path = "benches/shell_bench.rs"
harness = false
[dependencies.anyhow]
version = "1.0.102"
[dependencies.nix]
version = "0.30.1"
features = [
"process",
"signal",
"term",
]
[dependencies.nu-ansi-term]
version = "0.50.3"
[dependencies.reedline]
version = "0.46.0"
[dependencies.tokio]
version = "1.50.0"
features = ["full"]
[dependencies.tracing]
version = "0.1.44"
[dependencies.tracing-subscriber]
version = "0.3.23"
features = [
"env-filter",
"fmt",
]
[dev-dependencies.criterion]
version = "0.8.2"
features = ["html_reports"]
[dev-dependencies.expectrl]
version = "0.7.0"
[dev-dependencies.tempfile]
version = "3.27.0"
[lints.clippy]
dbg_macro = "deny"
todo = "deny"
undocumented_unsafe_blocks = "deny"
unwrap_used = "deny"
[lints.rust]
unsafe_code = "deny"
[lints.rustdoc]
bare_urls = "deny"
broken_intra_doc_links = "deny"