fc-gpui-core 0.13.0

GPU-accelerated UI framework with system tray, global hotkeys, notifications, and daemon mode support (fork of Zed's GPUI)
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "fc-gpui-core"
version = "0.13.0"
authors = ["FC GPUI Contributors"]
build = "build.rs"
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "GPU-accelerated UI framework with system tray, global hotkeys, notifications, and daemon mode support (fork of Zed's GPUI)"
homepage = "https://github.com/freefcw/fc-gpui"
readme = "README.md"
keywords = [
    "gui",
    "desktop",
    "tray",
    "gpu",
    "daemon",
]
categories = ["gui"]
license = "Apache-2.0"
repository = "https://github.com/freefcw/fc-gpui"
resolver = "2"

[package.metadata.cargo-machete]
ignored = ["windows-capture"]

[features]
accessibility = []
bench = ["test-support"]
default = [
    "accessibility",
    "font-kit",
    "wayland",
    "x11",
    "windows-manifest",
    "image-default-formats",
    "image-rayon",
]
font-kit = []
image-default-formats = [
    "image-format-gif",
    "image-format-jpeg",
    "image-format-png",
    "image-format-webp",
]
image-format-avif = ["image/avif"]
image-format-bmp = ["image/bmp"]
image-format-dds = ["image/dds"]
image-format-exr = ["image/exr"]
image-format-farbfeld = ["image/ff"]
image-format-gif = ["image/gif"]
image-format-hdr = ["image/hdr"]
image-format-ico = ["image/ico"]
image-format-jpeg = ["image/jpeg"]
image-format-png = ["image/png"]
image-format-pnm = ["image/pnm"]
image-format-qoi = ["image/qoi"]
image-format-tga = ["image/tga"]
image-format-tiff = ["image/tiff"]
image-format-webp = ["image/webp"]
image-rayon = ["image/rayon"]
input-latency-histogram = ["dep:hdrhistogram"]
inspector = ["gpui_macros/inspector"]
leak-detection = []
runtime_shaders = []
screen-capture = [
    "dep:scap",
    "dep:windows-capture",
]
test-support = [
    "collections/test-support",
    "dep:postage",
    "dep:rand",
    "util/test-support",
    "http_client/test-support",
    "wayland",
    "x11",
]
wayland = ["dep:bitflags"]
windows-manifest = []
x11 = ["scap?/x11"]

[lib]
name = "gpui_core"
path = "src/gpui.rs"
doctest = false

[[bench]]
name = "async_tasks"
path = "benches/async_tasks.rs"
harness = false
required-features = ["bench"]

[dependencies.accesskit]
version = "0.25.1"

[dependencies.anyhow]
version = "1.0.86"

[dependencies.async-channel]
version = "2.5.0"

[dependencies.async-task]
version = "4.7"

[dependencies.collections]
version = "0.6.0"
package = "fc-gpui-collections"

[dependencies.ctor]
version = "1.0.13"

[dependencies.derive_more]
version = "2.1.1"
features = [
    "add",
    "add_assign",
    "deref",
    "deref_mut",
    "from_str",
    "mul",
    "mul_assign",
    "not",
]

[dependencies.etagere]
version = "0.3"

[dependencies.futures]
version = "0.3"

[dependencies.gpui_macros]
version = "0.13.0"
package = "fc-gpui-macros"

[dependencies.hdrhistogram]
version = "7"
optional = true

[dependencies.http_client]
version = "0.6.0"
package = "fc-gpui-http-client"

[dependencies.image]
version = "0.25.1"
default-features = false

[dependencies.inventory]
version = "0.3.19"

[dependencies.itertools]
version = "0.15.0"

[dependencies.libc]
version = "0.2"

[dependencies.log]
version = "0.4.16"

[dependencies.lyon]
version = "1.0"

[dependencies.parking]
version = "2.0.0"

[dependencies.parking_lot]
version = "0.12.1"

[dependencies.postage]
version = "0.5"
features = ["futures-traits"]
optional = true

[dependencies.profiling]
version = "1"

[dependencies.rand]
version = "0.9"
optional = true

[dependencies.raw-window-handle]
version = "0.6"

[dependencies.refineable]
version = "0.6.0"
package = "fc-gpui-refineable"

[dependencies.regex]
version = "1.11.1"

[dependencies.resvg]
version = "0.49"
features = [
    "text",
    "system-fonts",
    "memmap-fonts",
    "raster-images",
]
default-features = false

[dependencies.schemars]
version = "1.0"
features = [
    "indexmap2",
    "smallvec1",
]

[dependencies.seahash]
version = "4.1"

[dependencies.semantic_version]
version = "0.6.0"
package = "fc-gpui-semantic-version"

[dependencies.serde]
version = "1.0.221"
features = [
    "derive",
    "rc",
]

[dependencies.serde_json]
version = "1.0.144"
features = [
    "preserve_order",
    "raw_value",
]

[dependencies.slotmap]
version = "1.0.6"

[dependencies.smallvec]
version = "1.6"
features = [
    "union",
    "serde",
]

[dependencies.smol]
version = "2.0"

[dependencies.smol_str]
version = "0.3"

[dependencies.stacksafe]
version = "1.0"

[dependencies.strum]
version = "0.28.0"
features = ["derive"]

[dependencies.sum_tree]
version = "0.6.0"
package = "fc-gpui-sum-tree"

[dependencies.taffy]
version = "=0.15.1"

[dependencies.thiserror]
version = "2.0.12"

[dependencies.ttf-parser]
version = "0.25"

[dependencies.usvg]
version = "0.49"
default-features = false

[dependencies.util]
version = "0.7.0"
package = "fc-gpui-util"

[dependencies.uuid]
version = "1.1.2"
features = [
    "v4",
    "v5",
    "serde",
]

[dependencies.waker-fn]
version = "1.2.0"

[dev-dependencies.collections]
version = "0.6.0"
features = ["test-support"]
package = "fc-gpui-collections"

[dev-dependencies.criterion]
version = "0.8.2"

[dev-dependencies.http_client]
version = "0.6.0"
features = ["test-support"]
package = "fc-gpui-http-client"

[dev-dependencies.lyon]
version = "1.0"
features = ["extra"]

[dev-dependencies.postage]
version = "0.5"
features = ["futures-traits"]

[dev-dependencies.rand]
version = "0.9"

[dev-dependencies.util]
version = "0.7.0"
features = ["test-support"]
package = "fc-gpui-util"

[dev-dependencies.util_macros]
version = "0.7.1"
package = "fc-gpui-util-macros"

[target.'cfg(any(target_os = "linux", target_os = "freebsd"))'.dependencies.bitflags]
version = "2.6"
optional = true

[target.'cfg(any(target_os = "linux", target_os = "freebsd", target_os = "windows"))'.dependencies.scap]
version = "0.0.8-zed"
optional = true
default-features = false
package = "zed-scap"

[target.'cfg(target_os = "macos")'.dependencies.core-video]
version = "0.5.2"
features = ["link"]
default-features = false

[target.'cfg(target_os = "windows")'.dependencies.windows]
version = "0.62"
features = [
    "Win32_Foundation",
    "Win32_Security",
    "Win32_System_Threading",
    "Win32_Graphics_Imaging",
    "Win32_System_Com",
    "Win32_System_Ole",
]

[target.'cfg(target_os = "windows")'.dependencies.windows-capture]
version = ">=1.3.6, <1.5"
optional = true

[lints.clippy]
dbg_macro = "deny"
declare_interior_mutable_const = "deny"
disallowed_methods = "deny"
large_enum_variant = "allow"
let_underscore_future = "allow"
nonminimal_bool = "allow"
redundant_clone = "deny"
single_range_in_vec_init = "allow"
todo = "deny"
too_many_arguments = "allow"
type_complexity = "allow"

[lints.clippy.style]
level = "allow"
priority = -1

[lints.rust.unexpected_cfgs]
level = "allow"
priority = 0