# 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.31"
name = "fern"
version = "0.6.2"
authors = ["David Ross <daboross@daboross.net>"]
include = [
    "Cargo.toml",
    "src/**/*",
    "tests/**/*",
    "examples/**/*",
    "LICENSE",
    "README.md",
    "CONTRIBUTING.md",
    "CHANGELOG.md",
]
description = "Simple, efficient logging"
documentation = "https://docs.rs/fern/"
readme = "README.md"
keywords = [
    "log",
    "logging",
    "logger",
]
categories = ["development-tools::debugging"]
license = "MIT"
repository = "https://github.com/daboross/fern"

[package.metadata.docs.rs]
all-features = true

[[example]]
name = "cmd-program"

[[example]]
name = "date-based-file-log"
required-features = ["date-based"]

[[example]]
name = "colored"
required-features = ["colored"]

[[example]]
name = "pretty-colored"
required-features = ["colored"]

[[example]]
name = "syslog"
required-features = ["syslog-6"]

[[example]]
name = "syslog4"
required-features = ["syslog-4"]

[[example]]
name = "syslog3"
required-features = ["syslog-3"]

[[example]]
name = "meta-logging"

[dependencies.chrono]
version = "0.4"
features = [
    "std",
    "clock",
]
optional = true
default-features = false

[dependencies.colored]
version = "1.5"
optional = true

[dependencies.log]
version = "0.4"
features = ["std"]

[dev-dependencies.clap]
version = "2.22"

[dev-dependencies.humantime]
version = "2.1.0"

[dev-dependencies.tempfile]
version = "3"

[features]
date-based = ["chrono"]
meta-logging-in-format = []
reopen-03 = [
    "reopen03",
    "libc",
]
reopen-1 = [
    "reopen1",
    "libc",
]
syslog-3 = ["syslog3"]
syslog-4 = ["syslog4"]
syslog-6 = ["syslog6"]

[target."cfg(not(windows))".dependencies.libc]
version = "0.2.58"
optional = true

[target."cfg(not(windows))".dependencies.reopen03]
version = "^0.3"
optional = true
package = "reopen"

[target."cfg(not(windows))".dependencies.reopen1]
version = "~1"
features = ["signals"]
optional = true
package = "reopen"

[target."cfg(not(windows))".dependencies.syslog3]
version = "3"
optional = true
package = "syslog"

[target."cfg(not(windows))".dependencies.syslog4]
version = "4"
optional = true
package = "syslog"

[target."cfg(not(windows))".dependencies.syslog6]
version = "6"
optional = true
package = "syslog"
