# 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 believe there's an error in this file please file an
# issue against the rust-lang/cargo repository. If you're
# editing this file be aware that the upstream Cargo.toml
# will likely look very different (and much more reasonable)

[package]
edition = "2018"
name = "annotate-snippets"
version = "0.9.1"
authors = ["Zibi Braniecki <gandalf@mozilla.com>"]
description = "Library for building code annotations"
readme = "README.md"
keywords = ["code", "analysis", "ascii", "errors", "debug"]
license = "Apache-2.0/MIT"
repository = "https://github.com/rust-lang/annotate-snippets-rs"

[[bench]]
name = "simple"
harness = false
[dependencies.unicode-width]
version = "0.1"

[dependencies.yansi-term]
version = "0.1"
optional = true
[dev-dependencies.criterion]
version = "0.3"

[dev-dependencies.difference]
version = "2.0"

[dev-dependencies.glob]
version = "0.3"

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

[dev-dependencies.toml]
version = "0.5"

[dev-dependencies.yansi-term]
version = "0.1"

[features]
color = ["yansi-term"]
default = []
[badges.coveralls]
branch = "master"
repository = "rust-lang/annotate-snippets-rs"
service = "github"

[badges.maintenance]
status = "actively-developed"

[badges.travis-ci]
branch = "master"
repository = "rust-lang/annotate-snippets-rs"
