rustpower 0.5.0

An experimental ECS world snapshot system built on Bevy, featuring structured archetype storage and manifest-based serialization.
Documentation
[package]

name = "rustpower"

version = "0.5.0"

edition = "2024"

authors = ["cts chengts95@msn.cn"]

description = "An experimental ECS world snapshot system built on Bevy, featuring structured archetype storage and manifest-based serialization."

license = "MPL-2.0"

repository = "https://github.com/chengts95/rustpower"

exclude = [

    "tech_doc/**",

    "*.ipynb"

]



[workspace]

members = [

    "crates/*"

]

default-members = [

    ".",

    "crates/rustpower_proc_marco",

]



[lib]

name = "rustpower"

crate-type = ["rlib", "cdylib"]



[features]

default=["rsparse", "arrow"] 

klu_dyn = ["dep:rustpower-sol-klu"]

klu = ["dep:rustpower-sol-klu", "rustpower-sol-klu/static"]

faer = ["dep:faer"]

rsparse = ["dep:rsparse"]

archive = ["dep:bevy_archive"]   

arrow = ["dep:bevy_archive", "bevy_archive/arrow_rs", "archive"] 

python = ["dep:pyo3", "dep:numpy"]



[profile.release]

opt-level = 3              

overflow-checks = false     



[profile.dev.package.faer]

opt-level = 3

[profile.dev.package.nalgebra]

opt-level = 3

[profile.dev.package.nalgebra-sparse]

opt-level = 3



[dependencies]

ordered-float = { version = ">3.0", default-features = false }

nalgebra = { version = ">=0.32.0", features = ["serde-serialize"] }

nalgebra-sparse = { version = ">=0.7.0", features = ["serde-serialize"] }

simba = ">=0.9.0"

serde = { version = ">=1.0", features = ["derive"] }

serde_json = ">=1.0"

num-traits = ">=0.2"

num-derive = ">=0.3"

num-complex = ">=0.4"

rsparse = {version ="^1.2", optional = true}

csv = "^1.3.0"

zip = "^8.0.0"

bevy_ecs = "0.19.0"

bevy_app = "0.19.0"

derive_more = { version = "^1.0", features = ["full"] }

tabled = "^0.16.0"

bevy_archive = { version = "0.4.0", optional=true } 

const_format = {version = "^0.2.34"}

faer = {version = "^0.24", optional = true}

rustpower_proc_marco = {path = "crates/rustpower_proc_marco", version = "0.4.0"}

bumpalo = "^3.20.0"

pyo3 = { version = "0.23", features = ["extension-module", "abi3-py310"], optional = true }

numpy = { version = "0.23", optional = true }



[dependencies.rustpower-sol-klu]

path = "./crates/rustpower-sol-klu"

version = "0.1.4"

optional = true