129 lines
4.3 KiB
TOML
129 lines
4.3 KiB
TOML
[package]
|
|
name = "chain-reaction-collapse"
|
|
authors = ["RobertoMaurizzi <roberto.maurizzi@gmail.com>"]
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
|
|
[dependencies]
|
|
bevy = { version = "0.16", features = ["wayland"] }
|
|
rand = "0.8"
|
|
# Compile low-severity logs out of native builds for performance.
|
|
log = { version = "0.4", features = [
|
|
"max_level_debug",
|
|
"release_max_level_warn",
|
|
] }
|
|
# Compile low-severity logs out of web builds for performance.
|
|
tracing = { version = "0.1", features = [
|
|
"max_level_debug",
|
|
"release_max_level_warn",
|
|
] }
|
|
bevy_ecs_ldtk = "0.12.0"
|
|
bevy-inspector-egui = { version = "0.31.0", optional = true }
|
|
|
|
# Your web builds will start failing if you add a dependency that pulls in `getrandom` v0.3+.
|
|
# To fix this, you should tell `getrandom` to use the `wasm_js` backend on Wasm.
|
|
# See: <https://docs.rs/getrandom/0.3.3/getrandom/#webassembly-support>.
|
|
#[target.wasm32-unknown-unknown.dependencies]
|
|
#getrandom = { version = "0.3", features = ["wasm_js"] }
|
|
# In addition to enabling the `wasm_js` feature, you need to include `--cfg 'getrandom_backend="wasm_js"'`
|
|
# in your rustflags for both local and CI/CD web builds, taking into account that rustflags specified in
|
|
# multiple places are NOT combined (see <https://github.com/rust-lang/cargo/issues/5376>).
|
|
# Alternatively, you can opt out of the rustflags check with this patch:
|
|
#[patch.crates-io]
|
|
#getrandom = { git = "https://github.com/benfrankel/getrandom" }
|
|
|
|
[features]
|
|
# Default to a native dev build.
|
|
default = ["dev_native"]
|
|
dev = [
|
|
# Improve compile times for dev builds by linking Bevy as a dynamic library.
|
|
"bevy/dynamic_linking",
|
|
"bevy/bevy_dev_tools",
|
|
"bevy/bevy_ui_debug",
|
|
# Improve error messages coming from Bevy
|
|
"bevy/track_location",
|
|
]
|
|
dev_native = [
|
|
"dev",
|
|
# Enable asset hot reloading for native dev builds.
|
|
"bevy/file_watcher",
|
|
# Enable embedded asset hot reloading for native dev builds.
|
|
"bevy/embedded_watcher",
|
|
]
|
|
inspector = ["bevy-inspector-egui"]
|
|
|
|
|
|
[package.metadata.bevy_cli.release]
|
|
# Disable dev features for release builds.
|
|
default-features = false
|
|
|
|
[package.metadata.bevy_cli.web]
|
|
# Disable native features for web builds.
|
|
default-features = false
|
|
|
|
[package.metadata.bevy_cli.web.dev]
|
|
features = ["dev"]
|
|
|
|
|
|
[lints.rust]
|
|
# Mark `bevy_lint` as a valid `cfg`, as it is set when the Bevy linter runs.
|
|
unexpected_cfgs = { level = "warn", check-cfg = ["cfg(bevy_lint)"] }
|
|
|
|
[lints.clippy]
|
|
# Bevy supplies arguments to systems via dependency injection, so it's natural for systems to
|
|
# request more than 7 arguments, which would undesirably trigger this lint.
|
|
too_many_arguments = "allow"
|
|
# Queries may access many components, which would undesirably trigger this lint.
|
|
type_complexity = "allow"
|
|
# Make sure macros use their standard braces, such as `[]` for `bevy_ecs::children!`.
|
|
nonstandard_macro_braces = "warn"
|
|
|
|
# You can configure the warning levels of Bevy lints here. For a list of all lints, see:
|
|
# <https://thebevyflock.github.io/bevy_cli/bevy_lint/lints/>
|
|
[package.metadata.bevy_lint]
|
|
# panicking_methods = "deny"
|
|
# pedantic = "warn"
|
|
|
|
|
|
# Compile with Performance Optimizations:
|
|
# <https://bevyengine.org/learn/quick-start/getting-started/setup/#compile-with-performance-optimizations>
|
|
|
|
# Enable a small amount of optimization in the dev profile.
|
|
[profile.dev]
|
|
opt-level = 1
|
|
|
|
# Enable a large amount of optimization in the dev profile for dependencies.
|
|
[profile.dev.package."*"]
|
|
opt-level = 3
|
|
|
|
# Remove expensive debug assertions due to <https://github.com/bevyengine/bevy/issues/14291>
|
|
[profile.dev.package.wgpu-types]
|
|
debug-assertions = false
|
|
|
|
[profile.release]
|
|
# Compile the entire crate as one unit.
|
|
# Slows compile times, marginal improvements.
|
|
codegen-units = 1
|
|
# Do a second optimization pass over the entire program, including dependencies.
|
|
# Slows compile times, marginal improvements.
|
|
lto = "thin"
|
|
|
|
# This profile will be used by `bevy run web` automatically.
|
|
[profile.web-release]
|
|
# Default to release profile values.
|
|
inherits = "release"
|
|
# Optimize with size in mind (also try "z", sometimes it is better).
|
|
# Slightly slows compile times, great improvements to file size and runtime performance.
|
|
opt-level = "s"
|
|
# Strip all debugging information from the binary to slightly reduce file size.
|
|
strip = "debuginfo"
|
|
|
|
# Optimize for build time in CI.
|
|
[profile.ci]
|
|
inherits = "dev"
|
|
opt-level = 0
|
|
debug = "line-tables-only"
|
|
codegen-units = 4
|
|
|
|
[profile.ci.package."*"]
|
|
opt-level = 0
|