[package] name = "reactive-signals" version = "0.1.0-alpha.4" edition = "2021" license = "MIT" repository = "https://github.com/human-solutions/reactive-signals" description = "reactive-signals is a dx-first scope-based fine-grained reactive system." categories = ["data-structures"] readme = "../README.md" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [features] default = [] profile = ["dep:pprof", "dep:criterion", "dep:dhat"] # use UnsafeCell instead of RefCell. Gain 40% performance for signal propagation unsafe-cell = [] [dependencies] # Optional: used only when benchmarking and running profiling examples criterion = { version = "0.4", features = ["html_reports"], optional = true } pprof = { version = "0.11", features = [ "flamegraph", "frame-pointer", "criterion", ], optional = true } dhat = { version = "0.3", optional = true } [dev-dependencies] insta = "1.28" wasm-bindgen-test = "0.3.34" wasm-bindgen = "0.2.84" markdown-includes = "0.1" criterion = { version = "0.4", features = ["html_reports"] } [[bench]] name = "create_scopes" harness = false required-features = ["profile"] [[bench]] name = "create_signals" harness = false required-features = ["profile"] [[bench]] name = "signal_propagation" harness = false required-features = ["profile"] [[bench]] name = "discard_scopes" harness = false required-features = ["profile"] [[example]] name = "propagation_flamegraph" required-features = ["profile"] [[example]] name = "creation_flamegraph" required-features = ["profile"] [[example]] name = "heap_profiling" required-features = ["profile"] [[bench]] name = "tree_create" harness = false required-features = ["profile"] [[bench]] name = "tree_sum" harness = false required-features = ["profile"] [[bench]] name = "tree_discard" harness = false required-features = ["profile"]