[package]
edition = "2024"
rust-version = "1.88"
name = "rust-pty"
version = "0.2.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Cross-platform async PTY (pseudo-terminal) library for Rust"
readme = "README.md"
keywords = [
"pty",
"terminal",
"tty",
"process",
"async",
]
categories = [
"os",
"asynchronous",
"command-line-interface",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/praxiomlabs/rust-expect"
[features]
debug-buffer = []
default = []
[lib]
name = "rust_pty"
path = "src/lib.rs"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "~1.49"
features = ["full"]
[dev-dependencies.proptest]
version = "1.9"
[target."cfg(unix)".dependencies.libc]
version = "0.2"
[target."cfg(unix)".dependencies.rustix]
version = "1.1"
features = [
"termios",
"process",
"pty",
"fs",
]
[target."cfg(unix)".dependencies.signal-hook]
version = "0.4"
[target."cfg(unix)".dependencies.signal-hook-tokio]
version = "0.4"
features = ["futures-v0_3"]
[target."cfg(windows)".dependencies.windows-sys]
version = "0.61"
features = [
"Win32_Foundation",
"Win32_System_Console",
"Win32_System_Threading",
"Win32_System_Pipes",
"Win32_Security",
"Win32_System_JobObjects",
"Win32_System_IO",
"Win32_System_LibraryLoader",
"Win32_Storage_FileSystem",
]
[lints.clippy]
cast_possible_truncation = "allow"
cast_possible_wrap = "allow"
cast_precision_loss = "allow"
cast_sign_loss = "allow"
literal_string_with_formatting_args = "allow"
match_same_arms = "allow"
missing_errors_doc = "allow"
missing_fields_in_debug = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
option_if_let_else = "allow"
redundant_pub_crate = "allow"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
missing_docs = "warn"
unsafe_code = "warn"