plushie 0.7.1

Desktop GUI framework for Rust
# 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.92"
name = "plushie"
version = "0.7.1"
authors = ["Daniel Hedlund <daniel@digitree.org>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Desktop GUI framework for Rust"
readme = "README.md"
keywords = [
    "gui",
    "desktop",
    "ui",
    "framework",
    "elm",
]
categories = [
    "gui",
    "rendering",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/plushie-ui/plushie-rust"
resolver = "2"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
default = ["direct"]
dev = [
    "dep:notify",
    "dep:cargo_metadata",
]
direct = [
    "dep:plushie-renderer-lib",
    "dep:plushie-renderer-engine",
    "dep:plushie-widget-sdk",
    "plushie-widget-sdk?/tokio",
]
wire = [
    "dep:rmp-serde",
    "dep:rmpv",
    "dep:base64",
]

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

[[example]]
name = "async_fetch"
path = "examples/async_fetch.rs"

[[example]]
name = "clock"
path = "examples/clock.rs"

[[example]]
name = "color_picker"
path = "examples/color_picker.rs"

[[example]]
name = "counter"
path = "examples/counter.rs"

[[example]]
name = "gallery"
path = "examples/gallery.rs"

[[example]]
name = "notes"
path = "examples/notes.rs"

[[example]]
name = "rate_plushie"
path = "examples/rate_plushie.rs"

[[example]]
name = "shortcuts"
path = "examples/shortcuts.rs"

[[example]]
name = "todo"
path = "examples/todo.rs"

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[dependencies.base64]
version = "0.22"
optional = true

[dependencies.cargo_metadata]
version = "0.19"
optional = true

[dependencies.futures]
version = "0.3"
features = [
    "std",
    "async-await",
]
default-features = false

[dependencies.log]
version = "0.4"

[dependencies.notify]
version = "8"
optional = true

[dependencies.parking_lot]
version = "0.12"

[dependencies.plushie-core]
version = "0.7.1"

[dependencies.plushie-core-macros]
version = "0.7.1"

[dependencies.plushie-renderer-engine]
version = "0.7.1"
optional = true

[dependencies.plushie-renderer-lib]
version = "0.7.1"
optional = true

[dependencies.plushie-widget-sdk]
version = "0.7.1"
optional = true

[dependencies.rmp-serde]
version = "1"
optional = true

[dependencies.rmpv]
version = "1"
features = ["with-serde"]
optional = true

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.thiserror]
version = "2"

[dependencies.tokio]
version = "1"
features = [
    "rt",
    "rt-multi-thread",
    "process",
    "io-util",
    "time",
]

[dev-dependencies.proptest]
version = "1"

[lints.clippy]
missing_errors_doc = "warn"
missing_panics_doc = "warn"

[lints.rust]
unreachable_patterns = "deny"
unsafe_code = "deny"
unused_must_use = "deny"