[package]
name = "specs"
version = "0.15.1"
description = """
Specs is an Entity-Component-System library written in Rust.
"""
documentation = "https://docs.rs/specs/"
repository = "https://github.com/slide-rs/specs"
homepage = "https://slide-rs.github.io/"
readme = "README.md"
keywords = ["gamedev", "ecs", "entity", "component"]
categories = ["concurrency", "game-engines"]
license = "MIT/Apache-2.0"
authors = ["slide-rs hackers"]
exclude = ["bors.toml", ".travis.yml"]
edition = "2018"
autobenches = false
[badges]
travis-ci = { repository = "slide-rs/specs" }
[dependencies]
crossbeam-queue = "0.1"
derivative = "1"
hashbrown = "0.6.0"
hibitset = { version = "0.6.1", default-features = false }
log = "0.4"
shred = { version = "0.9.3", default-features = false }
shrev = "1.1.1"
tuple_utils = "0.3"
rayon = { version = "1.1.0", optional = true }
serde = { version = "1.0", optional = true, features = ["serde_derive"] }
specs-derive = { version = "0.4.0", path = "specs-derive", optional = true }
uuid = { version = "0.7.4", optional = true, features = ["v4", "serde"] }
[features]
default = ["parallel"]
parallel = ["rayon", "shred/parallel", "hibitset/parallel"]
nightly = ["shred/nightly"]
uuid_entity = ["uuid", "serde"]
stdweb = ["uuid/stdweb"]
wasm-bindgen = ["uuid/wasm-bindgen"]
storage-event-control = []
shred-derive = ["shred/shred-derive"]
[package.metadata.docs.rs]
features = ["parallel", "serde", "shred-derive", "specs-derive", "nightly", "uuid_entity", "storage-event-control"]
[dev-dependencies]
nalgebra = "0.18"
criterion = "0.3"
ron = "0.5"
rand = "0.7"
serde_json = "1.0"
shred = { version = "0.9.3", features = ["shred-derive"] }
specs-derive = { path = "specs-derive", version = "0.4.0" }
[[example]]
name = "basic"
[[example]]
name = "full"
[[example]]
name = "cluster_bomb"
[[example]]
name = "bitset"
[[example]]
name = "track"
[[example]]
name = "ordered_track"
[[example]]
name = "saveload"
required-features = ["serde"]
[[bench]]
name = "benches_main"
harness = false
[[bench]]
name = "parallel"
[[bench]]
name = "world"
harness = false
[[bench]]
name = "big_or_small"
[workspace]
members = ["specs-derive"]