forked from Brickworks/yahs
-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCargo.toml
123 lines (113 loc) · 3.76 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
[package]
name = "yahs"
description = "Yet Another HAB Simulator"
authors = ["Philip Linden <[email protected]>"]
version = "0.4.0"
edition = "2021"
readme = "README.md"
license-file = "LICENSE"
[[bin]]
name = "yahs"
path = "src/main.rs"
[features]
default = [
# Default to a native dev build.
"dev_native",
"render",
]
dev = [
# Improve compile times for dev builds by linking Bevy as a dynamic
# library.
"bevy/dynamic_linking",
"bevy/bevy_dev_tools",
]
dev_native = [
"dev",
# Enable system information plugin for native dev builds.
"bevy/sysinfo_plugin",
]
headless = [
# Exclude rendering features
# This feature does not include the "render" feature
# Thus, rendering-related dependencies are disabled
]
render = [
# Enable features needed for visuals, windowed operation, and UIs.
"bevy/bevy_asset",
"bevy/bevy_color",
"bevy/bevy_core_pipeline",
"bevy/bevy_gizmos",
"bevy/ktx2",
"bevy/bevy_mesh_picking_backend",
"bevy/bevy_pbr",
"bevy/bevy_render",
"bevy/bevy_picking",
"bevy/bevy_text",
"bevy/bevy_ui",
"bevy/bevy_ui_picking_backend",
"bevy/bevy_window",
"bevy/bevy_winit",
"bevy/default_font",
"bevy/tonemapping_luts",
"bevy/png",
"bevy/webgl2",
]
inspect = [
"default",
"bevy-inspector-egui",
]
[dependencies]
bevy = { version = "0.15.0", default-features = false, features = [
"bevy_asset",
"bevy_state",
"multi_threaded",
] }
avian3d = { git = "https://github.com/Jondolf/avian.git", branch = "main", features = ["debug-plugin"] }
bevy-trait-query = { git = "https://github.com/JoJoJet/bevy-trait-query.git", branch = "bevy-0.15-rc" }
bevy-inspector-egui = { version = "0.28", optional = true, features = ["highlight_changes"] }
# -----------------------------------------------------------------------------
# Some Bevy optimizations
# -----------------------------------------------------------------------------
# Idiomatic Bevy code often triggers these lints, and the CI workflow treats
# them as errors. In some cases they may still signal poor code quality however,
# so consider commenting out these lines.
[lints.clippy]
# Bevy supplies arguments to systems via dependency injection, so it's
# natural for systems to request more than 7 arguments -- which triggers
# this lint.
too_many_arguments = "allow"
# Queries that access many components may trigger this lint.
type_complexity = "allow"
# 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 for our code.
[profile.dev]
opt-level = 1
# Enable a large amount of optimization in the dev profile for dependencies.
[profile.dev.package."*"]
opt-level = 3
# The default profile is optimized for Wasm builds because that's what [Trunk
# reads](https://github.com/trunk-rs/trunk/issues/605). Optimize for size in the
# wasm-release profile to reduce load times and bandwidth usage on web.
[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"
# 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"
# Override some settings for native builds.
[profile.release-native]
# Default to release profile values.
inherits = "release"
# Optimize with performance in mind.
opt-level = 3
# Keep debug information in the binary.
strip = "none"