crcbl-shell 0.9.0

Crucible windowing shell: own Wayland, X11, Web/canvas and headless backends
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"
rust-version = "1.98"
name = "crcbl-shell"
version = "0.9.0"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Crucible windowing shell: own Wayland, X11, Web/canvas and headless backends"
readme = false
license = "MIT"
repository = "https://github.com/kryptic-sh/crcbl"

[features]
accesskit = [
    "dep:accesskit",
    "dep:accesskit_windows",
    "dep:accesskit_unix",
]
wayland-e2e = []
win32-e2e = []
win32-ime-e2e = ["win32-e2e"]
x11-e2e = []

[lib]
name = "crcbl_shell"
path = "src/lib.rs"

[[bin]]
name = "crcbl-e2e-wayland-key"
path = "tests/bin/send_key_wayland.rs"
required-features = ["wayland-e2e"]

[[bin]]
name = "crcbl-e2e-win32-clip"
path = "tests/bin/clipboard_peer_win32.rs"
required-features = ["win32-e2e"]

[[bin]]
name = "crcbl-e2e-win32-hands-on"
path = "tests/bin/hands_on_win32.rs"
required-features = ["win32-e2e"]

[[bin]]
name = "crcbl-e2e-win32-input"
path = "tests/bin/send_input_win32.rs"
required-features = ["win32-e2e"]

[[bin]]
name = "crcbl-e2e-x11-key"
path = "tests/bin/send_key_x11.rs"
required-features = ["x11-e2e"]

[[test]]
name = "appkit_session"
path = "tests/appkit_session.rs"
harness = false

[[test]]
name = "seam_from_outside"
path = "tests/seam_from_outside.rs"

[[test]]
name = "wayland_e2e"
path = "tests/wayland_e2e.rs"

[[test]]
name = "win32_e2e"
path = "tests/win32_e2e.rs"

[[test]]
name = "x11_e2e"
path = "tests/x11_e2e.rs"

[dependencies.accesskit]
version = "0.25.1"
optional = true

[dependencies.bitflags]
version = "2.9"

[dependencies.crcbl-core]
version = "0.9.0"

[dependencies.thiserror]
version = "2.0"

[dev-dependencies]

[build-dependencies.crcbl-wl-scanner]
version = "0.9.0"

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

[target.'cfg(target_os = "windows")'.dependencies.accesskit_windows]
version = "0.35.1"
optional = true

[target.'cfg(target_os = "windows")'.dev-dependencies.windows]
version = "0.62"
features = [
    "Win32_Devices_Display",
    "Win32_Foundation",
    "Win32_Graphics_Gdi",
    "Win32_Storage_EnhancedStorage",
    "Win32_System_Com",
    "Win32_System_Com_StructuredStorage",
    "Win32_System_Variant",
    "Win32_UI_Accessibility",
    "Win32_UI_Input",
    "Win32_UI_Input_Ime",
    "Win32_UI_Input_KeyboardAndMouse",
    "Win32_UI_Input_Pointer",
    "Win32_UI_Shell",
    "Win32_UI_Shell_PropertiesSystem",
    "Win32_UI_WindowsAndMessaging",
]

[lints.clippy.all]
level = "warn"
priority = -1

[lints.rust]
missing_debug_implementations = "warn"
unsafe_op_in_unsafe_fn = "deny"

[lints.rust.rust_2018_idioms]
level = "warn"
priority = -1