cargo-features = ["profile-rustflags"] [package] name = "pkmn_lib" version = "0.1.0" authors = ["Deukhoofd "] edition = "2018" license = "MIT" [lib] name = "pkmn_lib" crate_type = ["cdylib", "rlib"] path = "src/lib.rs" [features] ffi = [] serde = ["dep:serde", "dep:serde-xml-rs", "atomig/serde"] wasm = ["dep:wasmer"] default = ["serde", "wasm", "ffi"] [profile.dev] opt-level = 0 debug = true debug-assertions = true overflow-checks = true lto = false panic = 'unwind' incremental = true codegen-units = 256 rpath = false [profile.release] opt-level = 3 debug = 1 debug-assertions = false overflow-checks = true lto = false panic = 'unwind' incremental = false codegen-units = 16 rpath = false [dependencies] # Used for PrimInt, so we can check if a generic is an integer num-traits = "0.2" atomig = { version = "0.4.0", features = ["derive"] } # Used for time based code (i.e. randomness) chrono = "0.4.19" # Used for RNG rand = "0.8.5" rand_pcg = "0.3.1" hashbrown = "0.13.1" indexmap = "1.8.2" parking_lot = "0.12.1" serde = { version = "1.0.137", optional = true, features = ["derive"] } serde_repr = "0.1.12" serde-xml-rs = { version = "0.6.0", optional = true } wasmer = { version = "3.3.0", optional = true, default-features = false, features = ["sys", "wat", "llvm"] } uuid = "1.2.2" paste = { version = "1.0.8" } arcstr = { version = "1.1.4", features = ["std"] } enum-display-derive = "0.1.1" anyhow = "1.0.69" anyhow_ext = "0.2.1" thiserror = "1.0.39" stdext = "0.3.1" [dev-dependencies] csv = "1.1.6" project-root = "0.2.2" serde_yaml = "0.9.14" serde_json = "1.0.81" serde_plain = "1.0.0" # Allow us to assert whether floats are approximately a value assert_approx_eq = "1.1.0" mockall = "0.11.2"