# 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 = "2018"
rust-version = "1.51.0"
name = "insta"
version = "1.36.1"
authors = ["Armin Ronacher <armin.ronacher@active-4.com>"]
exclude = ["assets/*"]
description = "A snapshot testing library for Rust"
homepage = "https://insta.rs/"
readme = "README.md"
keywords = [
    "snapshot",
    "testing",
    "jest",
    "approval",
]
categories = ["development-tools::testing"]
license = "Apache-2.0"
repository = "https://github.com/mitsuhiko/insta"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[dependencies.console]
version = "0.15.4"
optional = true
default-features = false

[dependencies.dep_csv]
version = "=1.1.6"
optional = true
package = "csv"

[dependencies.dep_ron]
version = "0.7.1"
optional = true
package = "ron"

[dependencies.dep_toml]
version = "0.5.7"
optional = true
package = "toml"

[dependencies.globset]
version = "0.4.6"
optional = true

[dependencies.lazy_static]
version = "1.4.0"

[dependencies.linked-hash-map]
version = "0.5.6"

[dependencies.pest]
version = "2.1.3"
optional = true

[dependencies.pest_derive]
version = "2.1.0"
optional = true

[dependencies.regex]
version = "1.6.0"
features = [
    "std",
    "unicode",
]
optional = true
default-features = false

[dependencies.serde]
version = "1.0.117"
optional = true

[dependencies.similar]
version = "2.1.0"
features = ["inline"]

[dependencies.walkdir]
version = "2.3.1"
optional = true

[dependencies.yaml-rust]
version = "0.4.5"

[dev-dependencies.serde]
version = "1.0.117"
features = ["derive"]

[dev-dependencies.similar-asserts]
version = "1.4.2"

[features]
_cargo_insta_internal = []
colors = ["console"]
csv = [
    "dep_csv",
    "serde",
]
default = ["colors"]
filters = ["regex"]
glob = [
    "walkdir",
    "globset",
]
json = ["serde"]
redactions = [
    "pest",
    "pest_derive",
    "serde",
]
ron = [
    "dep_ron",
    "serde",
]
toml = [
    "dep_toml",
    "serde",
]
yaml = ["serde"]
