[package] name = "ruffle_core" authors.workspace = true edition.workspace = true homepage.workspace = true license.workspace = true repository.workspace = true version.workspace = true [lints] workspace = true [dependencies] linkme = { version = "0.3", optional = true } byteorder = "1.5" bitstream-io = "2.2.0" flate2 = "1.0.28" fnv = "1.0.7" gc-arena = { package = "ruffle_gc_arena", path = "../ruffle_gc_arena" } generational-arena = "0.2.9" indexmap = "2.2.2" tracing = { workspace = true } ruffle_render = { path = "../render", features = ["tessellator"] } ruffle_video = { path = "../video" } ruffle_macros = { path = "macros" } ruffle_wstr = { path = "../wstr" } swf = { path = "../swf" } bitflags = "2.4.2" smallvec = { version = "1.13.1", features = ["union"] } num-traits = "0.2" num-derive = "0.4" quick-xml = "0.31.0" downcast-rs = "1.2.0" url = "2.5.0" weak-table = "0.3.2" percent-encoding = "2.3.1" thiserror = "1.0" chrono = { version = "0.4", default-features = false, features = ["clock"] } web-time = "0.2.4" encoding_rs = "0.8.33" rand = { version = "0.8.5", features = ["std", "small_rng"], default-features = false } serde = { version = "1.0.196", features = ["derive"] } serde_json = { version = "1.0", features = ["preserve_order"] } nellymoser-rs = { git = "https://github.com/ruffle-rs/nellymoser", rev = "4a33521c29a918950df8ae9fe07e527ac65553f5", optional = true } regress = "0.8" flash-lso = { git = "https://github.com/ruffle-rs/rust-flash-lso", rev = "2f976fb15b30aa4c5cb398710dc5e31a21004e57" } lzma-rs = {version = "0.3.0", optional = true } dasp = { version = "0.11.0", features = ["interpolate", "interpolate-linear", "signal"], optional = true } symphonia = { version = "0.5.3", default-features = false, features = ["mp3"], optional = true } enumset = "1.1.3" bytemuck = "1.14.1" clap = { version = "4.4.18", features = ["derive"], optional=true } realfft = "3.3.0" hashbrown = { version = "0.14.3", features = ["raw"] } scopeguard = "1.2.0" fluent-templates = "0.8.0" egui = { workspace = true, optional = true } egui_extras = { version = "0.26.2", optional = true } png = { version = "0.17.11", optional = true } flv-rs = { path = "../flv" } async-channel = "2.1.1" jpegxr = { git = "https://github.com/ruffle-rs/jpegxr", branch = "ruffle", optional = true } image = { version = "0.24.8", default-features = false, features = ["tiff", "dxt"] } enum-map = "2.7.3" ttf-parser = "0.20" num-bigint = "0.4" unic-segment = "0.9.0" [target.'cfg(not(target_family = "wasm"))'.dependencies.futures] version = "0.3.30" [target.'cfg(target_family = "wasm")'.dependencies.wasm-bindgen-futures] version = "0.4.40" [features] default = [] lzma = ["lzma-rs", "swf/lzma"] avm_debug = [] deterministic = [] timeline_debug = [] mp3 = ["symphonia"] nellymoser = ["nellymoser-rs"] audio = ["dasp"] known_stubs = ["linkme"] default_compatibility_rules = [] egui = ["dep:egui", "dep:egui_extras", "png"] jpegxr = ["dep:jpegxr", "lzma"] default_font = [] [build-dependencies] build_playerglobal = { path = "build_playerglobal" }