# 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 = "petgraph"
version = "0.5.1"
authors = ["bluss", "mitchmindtree"]
description = "Graph data structure library. Provides graph types and graph algorithms."
documentation = "https://docs.rs/petgraph/"
keywords = ["data-structure", "graph", "unionfind", "graph-algorithms"]
categories = ["data-structures"]
license = "MIT/Apache-2.0"
repository = "https://github.com/petgraph/petgraph"
[package.metadata.docs.rs]
features = ["serde-1", "quickcheck"]

[package.metadata.release]
no-dev-version = true
[profile.bench]
debug = true

[profile.release]

[lib]
name = "petgraph"
bench = false
[dependencies.fixedbitset]
version = "0.2.0"
default-features = false

[dependencies.indexmap]
version = "1.0.2"

[dependencies.quickcheck]
version = "0.8"
optional = true
default-features = false

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

[dependencies.serde_derive]
version = "1.0"
optional = true
[dev-dependencies.defmac]
version = "0.1"

[dev-dependencies.itertools]
version = "0.8"
default-features = false

[dev-dependencies.odds]
version = "0.2.19"

[dev-dependencies.rand]
version = "0.5.5"

[features]
all = ["unstable", "quickcheck", "matrix_graph", "stable_graph", "graphmap"]
default = ["graphmap", "stable_graph", "matrix_graph"]
generate = []
graphmap = []
matrix_graph = []
serde-1 = ["serde", "serde_derive"]
stable_graph = []
unstable = ["generate"]
