# 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 = "2021"
name = "ignore"
version = "0.4.23"
authors = ["Andrew Gallant <jamslam@gmail.com>"]
build = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = """
A fast library for efficiently matching ignore files such as `.gitignore`
against file paths.
"""
homepage = "https://github.com/BurntSushi/ripgrep/tree/master/crates/ignore"
documentation = "https://docs.rs/ignore"
readme = "README.md"
keywords = [
    "glob",
    "ignore",
    "gitignore",
    "pattern",
    "file",
]
license = "Unlicense OR MIT"
repository = "https://github.com/BurntSushi/ripgrep/tree/master/crates/ignore"

[lib]
name = "ignore"
path = "src/lib.rs"
bench = false

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

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

[dependencies.crossbeam-deque]
version = "0.8.3"

[dependencies.globset]
version = "0.4.15"

[dependencies.log]
version = "0.4.20"

[dependencies.memchr]
version = "2.6.3"

[dependencies.regex-automata]
version = "0.4.0"
features = [
    "std",
    "perf",
    "syntax",
    "meta",
    "nfa",
    "hybrid",
    "dfa-onepass",
]
default-features = false

[dependencies.same-file]
version = "1.0.6"

[dependencies.walkdir]
version = "2.4.0"

[dev-dependencies.bstr]
version = "1.6.2"
features = ["std"]
default-features = false

[dev-dependencies.crossbeam-channel]
version = "0.5.8"

[features]
simd-accel = []

[target."cfg(windows)".dependencies.winapi-util]
version = "0.1.2"
