observability.rs installs the tracing subscriber stack (env-filter +
JSON file appender + chrome trace + error layer) and the metrics
recorder shared by the workspace. main.rs grows the new CLI surface:
--parallel, --reservations-table, --trace-handles, --analyze=
{rust,sql,both}, xenia dis --json, --ui, plus the wiring that runs
the CPU through the new scheduler, drives the GPU's threaded backend,
and surfaces the framebuffer + HUD via xenia-ui.
Add tests/parallel_stress.rs (#[ignore]-gated long form, short form
runs 20×@5M) and tests/golden/sylpheed_n2m.json — the digest the
lockstep/parallel combos compare against.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
41 lines
1.1 KiB
TOML
41 lines
1.1 KiB
TOML
[package]
|
|
name = "xenia-app"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
|
|
[[bin]]
|
|
name = "xenia-rs"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
xenia-types = { workspace = true }
|
|
xenia-memory = { workspace = true }
|
|
xenia-cpu = { workspace = true }
|
|
xenia-xex = { workspace = true }
|
|
xenia-vfs = { workspace = true }
|
|
xenia-kernel = { workspace = true }
|
|
xenia-gpu = { workspace = true }
|
|
xenia-apu = { workspace = true }
|
|
xenia-hid = { workspace = true }
|
|
xenia-debugger = { workspace = true }
|
|
xenia-analysis = { workspace = true }
|
|
xenia-ui = { workspace = true }
|
|
winit = { workspace = true }
|
|
tracing = { workspace = true }
|
|
tracing-subscriber = { workspace = true }
|
|
tracing-appender = { workspace = true }
|
|
tracing-chrome = { workspace = true }
|
|
tracing-error = { workspace = true }
|
|
metrics = { workspace = true }
|
|
metrics-util = { workspace = true }
|
|
pprof = { workspace = true, optional = true }
|
|
anyhow = { workspace = true }
|
|
clap = { version = "4", features = ["derive"] }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
|
|
[features]
|
|
default = ["profiling"]
|
|
profiling = ["dep:pprof"]
|