# 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"
rust-version = "1.91"
name = "skim"
version = "4.4.0"
authors = [
    "Loric ANDRE",
    "Zhang Jinzhou <lotabout@gmail.com>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
default-run = "sk"
description = "Fuzzy Finder in rust!"
homepage = "https://github.com/skim-rs/skim"
documentation = "https://docs.rs/skim"
readme = "README.md"
keywords = [
    "fuzzy",
    "menu",
    "util",
]
license = "MIT"
repository = "https://github.com/skim-rs/skim"

[package.metadata.wix]
upgrade-guid = "6DDAED06-EBE2-41C4-94F5-CB03F2A4B92E"
path-guid = "05D1A327-19E0-4C82-B5EC-6B28E40C691B"
license = false
eula = false

[features]
cli = [
    "dep:clap",
    "dep:clap_complete",
    "dep:shlex",
    "dep:env_logger",
    "dep:clap_mangen",
]
default = ["cli"]
gungraun = ["dep:gungraun"]

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

[[bin]]
name = "sk"
path = "src/bin/main.rs"
required-features = ["cli"]

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

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

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

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

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

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

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

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

[[example]]
name = "fine-grain"
path = "examples/fine-grain.rs"

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[dependencies.ansi-to-tui]
version = "=8.0.1"

[dependencies.assert_enum_variants]
version = "=0.1.2"

[dependencies.clap]
version = "=4.6.0"
features = [
    "cargo",
    "derive",
    "unstable-markdown",
]
optional = true

[dependencies.clap_complete]
version = "=4.6.0"
optional = true

[dependencies.clap_complete_nushell]
version = "=4.6.0"

[dependencies.clap_mangen]
version = "=0.3.0"
optional = true

[dependencies.color-eyre]
version = "=0.6.5"

[dependencies.crossterm]
version = ">=0.0.0"
features = [
    "event-stream",
    "use-dev-tty",
    "libc",
]

[dependencies.derive_builder]
version = "=0.20.2"

[dependencies.derive_more]
version = "=2.1.1"
features = [
    "debug",
    "eq",
]

[dependencies.env_logger]
version = "=0.11.10"
features = ["humantime"]
optional = true

[dependencies.frizbee]
version = "=0.8.3"

[dependencies.futures]
version = "=0.3.32"

[dependencies.gungraun]
version = "0.17.2"
optional = true

[dependencies.indexmap]
version = "=2.13.0"

[dependencies.interprocess]
version = "=2.4.0"
features = ["tokio"]

[dependencies.kanal]
version = "=0.1.1"

[dependencies.log]
version = "=0.4.29"

[dependencies.memchr]
version = "=2.8.0"

[dependencies.mimalloc]
version = "0.1.48"
features = ["v3"]

[dependencies.nix]
version = "=0.31.2"
features = [
    "fs",
    "poll",
]

[dependencies.portable-pty]
version = "=0.9.0"

[dependencies.rand]
version = "=0.10.0"

[dependencies.ratatui]
version = "=0.30.0"

[dependencies.regex]
version = "=1.12.3"

[dependencies.roff]
version = "=1.1.1"

[dependencies.ron]
version = "=0.12.1"

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

[dependencies.shell-quote]
version = "=0.7.2"

[dependencies.shlex]
version = "=1.3.0"
optional = true

[dependencies.tempfile]
version = "=3.27.0"

[dependencies.thiserror]
version = "=2.0.18"

[dependencies.thread_local]
version = "=1.1.9"

[dependencies.tokio]
version = "=1.50.0"
features = [
    "macros",
    "net",
    "rt-multi-thread",
    "sync",
    "time",
    "tokio-macros",
]

[dependencies.tokio-util]
version = "=0.7.18"

[dependencies.tui-term]
version = "=0.3.3"

[dependencies.unicode-display-width]
version = "=0.3.0"

[dependencies.unicode-normalization]
version = "=0.1.25"

[dependencies.which]
version = "=8.0.2"

[dev-dependencies.criterion]
version = "0.8.2"
features = ["async_tokio"]

[dev-dependencies.insta]
version = "1.47"

[dev-dependencies.serde_json]
version = "=1.0.149"

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(coverage, coverage_nightly)"]

[profile.dist]
inherits = "release"

[profile.release]
opt-level = 2
lto = true
codegen-units = 1
strip = true

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