snafu 0.4.4

An ergonomic error handling library
[package]
name = "snafu"
version = "0.4.4"
authors = ["Jake Goulding <jake.goulding@gmail.com>"]

readme = "README.md"
description = "An ergonomic error handling library"
documentation = "https://docs.rs/snafu"
repository = "https://github.com/shepmaster/snafu"

license = "MIT OR Apache-2.0"

keywords = ["error", "ergonomic", "library"]
categories = ["rust-patterns"]

exclude = [
  "/.cirrus.yml",
  "/.gitignore",
  "/rust-toolchain",
]

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

[features]
default = ["rust_1_30", "backtraces"]

# Adds the backtrace type
backtraces = ["snafu-derive/backtraces", "backtrace"]

# Add conversion to `backtrace::Backtrace`
backtrace-crate = ["backtraces"]

# Add extension traits for the futures 0.1 crate
"futures-01" = ["futures01"]

# New methods on `Error`; re-export of proc-macro
rust_1_30 = ["snafu-derive/rust_1_30", "doc-comment"]

# The standard library's implementation of futures
"unstable-futures" = ["futures-core-preview", "pin-project"]

# No public user should make use of this feature
# https://github.com/rust-lang/cargo/issues/1596
"internal-dev-dependencies" = ["futures-preview"]

[workspace]
# The compatibility tests each set feature flags for the library and
# cannot be in the same crate graph.
exclude = [
  "compatibility-tests/compile-fail",
  "compatibility-tests/v1_34",
  "compatibility-tests/v1_30",
  "compatibility-tests/v1_18",
  "compatibility-tests/futures-0.1",
  "compatibility-tests/futures",
  "compatibility-tests/without-backtrace",
]

[dependencies]
snafu-derive = { path = "snafu-derive", version = "0.4.4" }
backtrace = { version = "0.3.0", optional = true }
futures01 = { version = "0.1", optional = true, default-features = false }
futures-preview = { version = "0.3.0-alpha.16", optional = true, default-features = false }
futures-core-preview = { version = "0.3.0-alpha.16", optional = true, default-features = false }
pin-project = { version = "0.3.2", optional = true, default-features = false }
doc-comment = { version = "0.3.1", optional = true, default-features = false }