[package] name = "galaxyui" version = "0.0.0" edition = "2021" authors.workspace = true publish.workspace = true license = "MIT" [features] # Enabling this feature works around a bug in Metal frame capture by loading # Metal shaders from the file system instead of from data compiled into the # binary. The shaders are written to the temp directory during initialization of # a renderer to enable this, which could slow opening of the first window. enable-metal-frame-capture = [] # Enables the font-kit rasterizer on Windows. fontkit-rasterizer = [] traces = ["galaxyui_core/traces"] # Feature enabled only when app is compiled for integration tests. integration_tests = ["galaxyui_core/integration_tests"] # If enabled, writes named telemetry events to the info log. Should never be # enabled in release builds without a PII audit of telemetry data. log_named_telemetry_events = ["galaxyui_core/log_named_telemetry_events"] schema_gen = ["galaxyui_core/schema_gen"] settings_value = ["galaxyui_core/settings_value"] # Enables utilities for testing. test-util = ["galaxyui_core/test-util"] experimental-wgpu-renderer = ["dep:wgpu", "dep:bytemuck", "dep:version-compare"] [dependencies] async-task.workspace = true anyhow.workspace = true bytemuck = { workspace = true, features = ["derive"], optional = true } cfg-if.workspace = true dashmap.workspace = true derive_more.workspace = true futures.workspace = true futures-util.workspace = true instant.workspace = true itertools.workspace = true lazy_static.workspace = true log.workspace = true markdown_parser.workspace = true num-traits.workspace = true ordered-float.workspace = true parking_lot.workspace = true pathfinder_color.workspace = true pathfinder_geometry.workspace = true sum_tree.workspace = true takecell = "0.1.1" thiserror.workspace = true vec1.workspace = true version-compare = { workspace = true, optional = true } galaxyui_core.workspace = true wgpu = { workspace = true, optional = true } [dev-dependencies] asset_cache.workspace = true env_logger.workspace = true futures-timer = "3.0.2" image = { workspace = true, default-features = false, features = ["png"] } rust-embed.workspace = true galaxyui = { workspace = true, features = ["test-util"] } galaxyui_core = { workspace = true, features = ["test-util"] } [target.'cfg(target_os = "macos")'.dependencies] block.workspace = true chrono.workspace = true cocoa.workspace = true core-foundation.workspace = true core-graphics = "0.25.0" core-text = "21.0.0" dispatch = "0.2.0" font-kit.workspace = true foreign-types = "0.5.0" libc.workspace = true metal = "0.33.0" objc.workspace = true [target.'cfg(target_os = "macos")'.dev-dependencies] rand.workspace = true [target.'cfg(not(target_family = "wasm"))'.dependencies] async-io.workspace = true ctrlc.workspace = true font-kit.workspace = true [target.'cfg(not(target_os = "macos"))'.dependencies] bimap = "0.6.2" bytemuck.workspace = true command.workspace = true cosmic-text = { git = "https://github.com/warpdotdev/cosmic-text.git", rev = "15198beba692162201c0ea8b15222cf5643ea068" } derivative.workspace = true fontdb = "0.23.0" memmap2 = "0.9.3" owned_ttf_parser = "0.25.0" resvg.workspace = true serde.workspace = true version-compare.workspace = true winit.workspace = true wgpu.workspace = true [target.'cfg(not(any(target_os = "macos", target_family = "wasm")))'.dependencies] global-hotkey = "0.7.0" [target.'cfg(target_family = "wasm")'.dependencies] gloo.workspace = true js-sys = "0.3.69" wasm-bindgen.workspace = true wasm-bindgen-futures.workspace = true web-sys.workspace = true [target.'cfg(all(target_family = "wasm"))'.dependencies.wgpu] workspace = true features = ["fragile-send-sync-non-atomic-wasm", "webgl"] [target.'cfg(any(target_os = "linux", target_os = "windows"))'.dependencies] arboard = { workspace = true, features = [ "wayland-data-control", "image-data", ] } native-dialog = "0.7.0" open = "5.0.0" [target.'cfg(target_os = "linux")'.dependencies] blocking.workspace = true dirs.workspace = true fontconfig = { version = "0.8.0", features = ["dlopen"] } # On Linux, use dlopen to locate fontconfig at runtime. Other platforms should not depend on fontconfig at all. font-kit = { workspace = true, default-features = false, features = [ "source-fontconfig-dlopen", ] } futures-lite.workspace = true nix = { workspace = true, features = ["user"] } notify-rust = "4.10.0" open = "5.0.0" tini = "1.3.0" urlencoding = "2.1.3" x11rb.workspace = true x11-dl = "2.21.0" zbus.workspace = true [target.'cfg(target_os = "linux")'.dev-dependencies] virtual-fs.workspace = true [target.'cfg(target_os = "windows")'.dependencies] dwrote = { git = "https://github.com/warpdotdev/dwrote-rs", rev = "a71ce6c0136f7d0954a9a8b181b5b2d8ace5eb9c", default-features = false } winreg.workspace = true windows = { workspace = true, features = [ "Win32_Graphics_Dwm", "Win32_Graphics_DirectWrite", "Win32_UI_Shell", "Win32_Networking", "Win32_System_Com", "Win32_Networking_NetworkListManager", "Win32_System_DataExchange", "Win32_System_Memory", ] } windows-core.workspace = true windows-version = "0.1.2" tauri-winrt-notification = "0.7.0" [build-dependencies] bindgen = "0.70.1" cc = { version = "1.0", features = ["parallel"] } cfg_aliases.workspace = true