open-gpui 0.1.0

Open GPUI's GPU-accelerated UI framework forked from Zed GPUI.
Documentation
[package]
name = "open-gpui"
version.workspace = true
edition.workspace = true
authors.workspace = true
description = "Open GPUI's GPU-accelerated UI framework forked from Zed GPUI."
repository.workspace = true
homepage.workspace = true
documentation.workspace = true
readme = "README.md"
license.workspace = true
keywords = ["desktop", "gui", "immediate"]
categories = ["gui"]
autoexamples = false




[lints]

workspace = true



[features]

default = ["font-kit", "wayland", "x11", "windows-manifest"]

test-support = [

    "leak-detection",

    "open_gpui_collections/test-support",

    "open_gpui_http_client/test-support",

    "wayland",

    "x11",

    "proptest",

]

inspector = ["open_gpui_macros/inspector"]

leak-detection = ["backtrace"]

wayland = [

    "bitflags",

]

x11 = [
    "scap?/x11",
]
screen-capture = [

    "scap",

]

windows-manifest = ["dep:embed-resource"]

input-latency-histogram = ["dep:hdrhistogram"]



[lib]

path = "src/gpui.rs"

doctest = false



[dependencies]

accesskit.workspace = true

anyhow.workspace = true

async-task = "4.7"

backtrace = { workspace = true, optional = true }

bitflags = { workspace = true, optional = true }



open_gpui_collections.workspace = true

ctor.workspace = true

derive_more.workspace = true

etagere = "0.2"

futures.workspace = true

futures-concurrency.workspace = true

open_gpui_macros.workspace = true

open_gpui_shared_string.workspace = true

open_gpui_http_client.workspace = true

image.workspace = true

inventory.workspace = true

itertools.workspace = true

log.workspace = true

num_cpus = "1.13"

parking = "2.0.0"

parking_lot.workspace = true

postage.workspace = true

proptest = { workspace = true, optional = true }

chrono.workspace = true

profiling.workspace = true

rand.workspace = true

raw-window-handle = "0.6"

regex.workspace = true

open_gpui_refineable.workspace = true

open_gpui_scheduler.workspace = true

resvg = { version = "0.45.0", default-features = false, features = [

    "text",

    "system-fonts",

    "memmap-fonts",

    "raster-images"

] }

usvg = { version = "0.45.0", default-features = false }

ttf-parser = "0.25"

open_gpui_util_macros.workspace = true

schemars.workspace = true

seahash = "4.1"

serde.workspace = true

serde_json.workspace = true

slotmap.workspace = true

smallvec.workspace = true

async-channel.workspace = true

stacksafe.workspace = true

strum.workspace = true

open_gpui_sum_tree.workspace = true

taffy = "=0.10.1"

thiserror.workspace = true

open_gpui_core_util.workspace = true

hdrhistogram = { workspace = true, optional = true }

waker-fn = "1.2.0"

lyon = "1.0"

pin-project = "1.1.10"

spin = "0.10.0"

pollster.workspace = true

url.workspace = true

uuid.workspace = true

web-time.workspace = true

heapless.workspace = true



[target.'cfg(target_family = "wasm")'.dependencies]

getrandom = { version = "0.3.4", features = ["wasm_js"] }

uuid = { workspace = true, features = ["js"] }





[target.'cfg(target_os = "macos")'.dependencies]

block = "0.1"

cocoa.workspace = true

cocoa-foundation.workspace = true

core-foundation.workspace = true

core-foundation-sys.workspace = true

core-graphics = "0.24"

core-video.workspace = true

core-text = "21"
font-kit = { package = "open-gpui-font-kit", version = "0.14.3", optional = true }
foreign-types = "0.5"

log.workspace = true

open_gpui_media.workspace = true

objc.workspace = true

objc2 = { version = "0.6", optional = true }

objc2-metal = { version = "0.3", optional = true }

mach2.workspace = true

#TODO: replace with "objc2"

metal.workspace = true



[target.'cfg(any(target_os = "linux", target_os = "freebsd", target_os = "macos"))'.dependencies]

pathfinder_geometry = "0.5"



[target.'cfg(any(target_os = "linux", target_os = "freebsd", target_os = "windows"))'.dependencies]

scap = { workspace = true, optional = true }







[target.'cfg(target_os = "windows")'.dependencies]

windows = { version = "0.61", features = ["Win32_Foundation"] }





[dev-dependencies]
backtrace.workspace = true
open_gpui_collections = { workspace = true, features = ["test-support"] }
env_logger.workspace = true
open_gpui_core_util = { workspace = true }
lyon = { version = "1.0", features = ["extra"] }
proptest = { workspace = true }
rand.workspace = true
open_gpui_scheduler = { workspace = true, features = ["test-support"] }
unicode-segmentation = { workspace = true }

[target.'cfg(not(target_family = "wasm"))'.dev-dependencies]
open_gpui_http_client = { workspace = true, features = ["test-support"] }

[build-dependencies]
embed-resource = { version = "3.0", optional = true }


[target.'cfg(target_os = "macos")'.build-dependencies]

bindgen = "0.71"

cbindgen = { version = "0.28.0", default-features = false }