baseview 0.4.1

Low-level windowing system geared towards making audio plugin UIs.
Documentation
[package]
name = "baseview"
version = "0.4.1"
authors = [
    "William Light <git@wrl.lhiaudio.com>",
    "Charles Saracco <crsaracco@gmail.com>",
    "Mirko Covizzi <mrkcvzz@gmail.com>",
    "Micah Johnston <micah@glowcoil.com>",
    "Billy Messenger <billydm@protonmail.com>",
    "Anton Lazarev <https://antonok.com>",
    "Joakim FrostegÄrd <joakim.frostegard@gmail.com>",
    "Robbert van der Helm <mail@robbertvanderhelm.nl>",
    "Adrien Prokopowicz <prokopylmc@gmail.com>"
]
edition = "2021"
license = "MIT OR Apache-2.0"
description = "Low-level windowing system geared towards making audio plugin UIs."
keywords = ["windowing", "audio", "plugin"]
categories = ["gui"]
repository = "https://github.com/RustAudio/baseview"

exclude = [".github"]
rust-version = "1.82"

[features]
default = []
opengl = [
    "windows/Win32_Graphics_OpenGL",
    "windows-sys/Win32_Graphics_OpenGL",
    "objc2-core-foundation/CFBundle",
    "objc2-app-kit/NSOpenGL",
    "objc2-app-kit/NSOpenGLView",
    "objc2-app-kit/objc2-open-gl"
]

[dependencies]
keyboard-types = { version = "0.8.3" }
raw-window-handle = "0.6.2"
dpi = "0.1.2"
tracing = { version = "0.1", optional = true }

[target.'cfg(target_os="linux")'.dependencies]
x11rb = { version = "0.13.2", features = ["cursor", "dri3", "present", "resource_manager", "allow-unsafe-code", "dl-libxcb"], default-features = false }
xkbcommon-dl = { version = "0.4.2", features = ["x11"] }
x11-dl = { version = "2.21.0" }
calloop = "=0.14.4" # 0.14.5 has MSRV of 1.86
percent-encoding = "2.3.2"
bytemuck = { version = "1.25.2", features = ["extern_crate_alloc"] }
libloading = "0.8.9" # Libloading 0.9 is out but its MSRV is 1.88

[target.'cfg(target_os="windows")'.dependencies]
windows = { version = "0.62.2", features = [
    "Win32_Graphics_Gdi",
    "Win32_System_Com_StructuredStorage",
    "Win32_System_Ole",
    "Win32_System_SystemServices",
    "Win32_UI_WindowsAndMessaging",
] }
windows-sys = { version = "0.61.2", features = [
    "Win32_Graphics_Gdi",
    "Win32_System_Rpc",
    "Win32_System_LibraryLoader",
    "Win32_System_Ole",
    "Win32_System_SystemServices",
    "Win32_System_Threading",
    "Win32_UI_Controls",
    "Win32_UI_HiDpi",
    "Win32_UI_Input_KeyboardAndMouse",
    "Win32_UI_Shell",
    "Win32_UI_WindowsAndMessaging",
] }
windows-core = { version = "0.62.2" }

[target.'cfg(target_os="macos")'.dependencies]
objc2 = "0.6.4"
objc2-core-foundation = { version = "0.3.2", default-features = false, features = ["std", "CFString", "CFUUID", "block2", "objc2"] }
block2 = "0.6.2"
dispatch2 = "0.3.1"
objc2-foundation = { version = "0.3.2", default-features = false, features = ["std", "NSEnumerator", "block2", "NSTimer", "NSOperation"] }
objc2-quartz-core = { version = "0.3.2", default-features = false, features = ["CADisplayLink"] }
objc2-app-kit = { version = "0.3.2", default-features = false, features = [
    "NSApplication",
    "NSCursor",
    "NSImage",
    "NSDragging",
    "NSEvent",
    "NSGraphics",
    "NSPasteboard",
    "NSResponder",
    "NSRunningApplication",
    "NSTrackingArea",
    "NSView",
    "NSWindow",
    "objc2-quartz-core",
    "objc2-core-foundation"
] }

[workspace]
members = [
    "examples/cursors",
    "examples/open_parented",
    "examples/open_window",
    "examples/plugin_clack",
    "examples/render_femtovg",
    "examples/render_wgpu",
    "examples/plugin_clack_femtovg",
    "examples/test-frame-pacing",
    "examples/timers",
    "examples/external-wakeup",
    "tests/partial-rendering"
]

[lints.clippy]
missing_safety_doc = "allow"

allow_attributes_without_reason = "warn"
arithmetic_side_effects = "warn"
clone_on_ref_ptr = "warn"
dbg_macro = "warn"
default_union_representation = "deny"
deref_by_slicing = "warn"
doc_paragraphs_missing_punctuation = "warn"
empty_drop = "warn"
empty_enum_variants_with_brackets = "warn"
empty_structs_with_brackets = "warn"
error_impl_error = "warn"
exhaustive_enums = "warn"
exit = "deny"
expect_used = "warn"
float_cmp_const = "warn"
get_unwrap = "warn"
indexing_slicing = "warn"
integer_division = "warn"
lossy_float_literal = "warn"
non_zero_suggestions = "warn"
print_stderr = "warn"
print_stdout = "warn"
todo = "warn"
try_err = "warn"
unnecessary_safety_comment = "warn"
unwrap_used = "warn"


[package.metadata.docs.rs]
all-features = true

[workspace.dependencies]
tracing-subscriber = "0.3.23"