# 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]
name = "bincode"
version = "1.1.1"
authors = ["Ty Overby <ty@pre-alpha.com>", "Francesco Mazzoli <f@mazzo.li>", "David Tolnay <dtolnay@gmail.com>", "Daniel Griffen"]
build = "build.rs"
exclude = ["logo.png", "tests/*", "examples/*", ".gitignore", ".travis.yml", "changelist.org"]
publish = true
description = "A binary serialization / deserialization strategy that uses Serde for transforming structs into bytes and vice versa!"
documentation = "https://docs.rs/bincode"
readme = "./readme.md"
keywords = ["binary", "encode", "decode", "serialize", "deserialize"]
categories = ["network-programming"]
license = "MIT"
repository = "https://github.com/TyOverby/bincode"
[dependencies.byteorder]
version = "1.2.0"

[dependencies.serde]
version = "^1.0.63"
[dev-dependencies.serde_bytes]
version = "^0.10.3"

[dev-dependencies.serde_derive]
version = "^1.0.27"
[build-dependencies.autocfg]
version = "0.1"

[features]
i128 = []
[badges.travis-ci]
repository = "TyOverby/bincode"
