[package] name = "bevy_app" version = "0.16.0-rc.4" edition = "2024" description = "Provides core App functionality for Bevy Engine" homepage = "https://bevyengine.org" repository = "https://github.com/bevyengine/bevy" license = "MIT OR Apache-2.0" keywords = ["bevy"] [features] default = ["std", "bevy_reflect", "bevy_ecs/default", "error_panic_hook"] # Functionality ## Adds runtime reflection support using `bevy_reflect`. bevy_reflect = ["dep:bevy_reflect", "bevy_ecs/bevy_reflect"] ## Extends reflection support to functions. reflect_functions = [ "bevy_reflect", "bevy_reflect/functions", "bevy_ecs/reflect_functions", ] # Debugging Features ## Enables `tracing` integration, allowing spans and other metrics to be reported ## through that framework. trace = ["dep:tracing"] ## Provides system stepping support, allowing them to be paused, stepped, and ## other debug operations which can help with diagnosing certain behaviors. bevy_debug_stepping = [] ## Will set the BevyError panic hook, which gives cleaner filtered backtraces when ## a BevyError is hit. error_panic_hook = [] # Platform Compatibility ## Allows access to the `std` crate. Enabling this feature will prevent compilation ## on `no_std` targets, but provides access to certain additional features on ## supported platforms. std = [ "bevy_reflect?/std", "bevy_ecs/std", "dep:ctrlc", "downcast-rs/std", "bevy_utils/std", "bevy_tasks/std", "bevy_platform/std", ] ## `critical-section` provides the building blocks for synchronization primitives ## on all platforms, including `no_std`. critical-section = [ "bevy_tasks/critical-section", "bevy_ecs/critical-section", "bevy_platform/critical-section", "bevy_reflect?/critical-section", ] ## Enables use of browser APIs. ## Note this is currently only applicable on `wasm32` architectures. web = [ "bevy_platform/web", "bevy_tasks/web", "bevy_reflect?/web", "dep:wasm-bindgen", "dep:web-sys", "dep:console_error_panic_hook", ] [dependencies] # bevy bevy_derive = { path = "../bevy_derive", version = "0.16.0-rc.4" } bevy_ecs = { path = "../bevy_ecs", version = "0.16.0-rc.4", default-features = false } bevy_reflect = { path = "../bevy_reflect", version = "0.16.0-rc.4", default-features = false, optional = true } bevy_utils = { path = "../bevy_utils", version = "0.16.0-rc.4", default-features = false, features = [ "alloc", ] } bevy_tasks = { path = "../bevy_tasks", version = "0.16.0-rc.4", default-features = false } bevy_platform = { path = "../bevy_platform", version = "0.16.0-rc.4", default-features = false } # other downcast-rs = { version = "2", default-features = false } thiserror = { version = "2", default-features = false } variadics_please = "1.1" tracing = { version = "0.1", default-features = false, optional = true } log = { version = "0.4", default-features = false } cfg-if = "1.0.0" [target.'cfg(any(unix, windows))'.dependencies] ctrlc = { version = "3.4.4", optional = true } [target.'cfg(target_arch = "wasm32")'.dependencies] wasm-bindgen = { version = "0.2", optional = true } web-sys = { version = "0.3", features = ["Window"], optional = true } console_error_panic_hook = { version = "0.1.6", optional = true } [dev-dependencies] crossbeam-channel = "0.5.0" [lints] workspace = true [package.metadata.docs.rs] rustdoc-args = ["-Zunstable-options", "--generate-link-to-definition"] all-features = true