[dependencies.cobs]
default-features = false
optional = true
version = "0.2.3"
[dependencies.defmt]
optional = true
version = "0.3.5"
[dependencies.embassy-executor]
optional = true
version = "0.7"
[dependencies.embassy-futures]
optional = true
version = "0.1"
[dependencies.embassy-sync]
optional = true
version = "0.6"
[dependencies.embassy-time]
optional = true
version = "0.4"
[dependencies.embassy-usb-0_3]
optional = true
package = "embassy-usb"
version = "0.3"
[dependencies.embassy-usb-0_4]
optional = true
package = "embassy-usb"
version = "0.4"
[dependencies.embassy-usb-driver]
optional = true
version = "0.1"
[dependencies.gloo]
optional = true
version = "0.11.0"
[dependencies.heapless]
version = "0.8.0"
[dependencies.js-sys]
optional = true
version = "0.3.69"
[dependencies.maitake-sync]
optional = true
version = "0.1.2"
[dependencies.nusb]
optional = true
version = "0.1"
[dependencies.portable-atomic]
default-features = false
version = "1.0"
[dependencies.postcard]
version = "1.0.10"
[dependencies.postcard-schema]
features = ["derive"]
version = "0.2.1"
[dependencies.serde]
default-features = false
features = ["derive"]
version = "1.0.192"
[dependencies.serde_json]
optional = true
version = "1.0"
[dependencies.ssmarshal]
features = ["std"]
optional = true
version = "1.0"
[dependencies.static_cell]
optional = true
version = "2.1"
[dependencies.thiserror]
optional = true
version = "1.0"
[dependencies.tokio]
features = ["sync", "rt", "macros", "io-util", "time"]
optional = true
version = "1.33.0"
[dependencies.tokio-serial]
optional = true
version = "5.4.4"
[dependencies.tracing]
optional = true
version = "0.1"
[dependencies.trait-variant]
optional = true
version = "0.1.2"
[dependencies.wasm-bindgen]
optional = true
version = "0.2.92"
[dependencies.wasm-bindgen-futures]
optional = true
version = "0.4.42"
[dependencies.web-sys]
features = ["Element", "Navigator", "Usb", "UsbDeviceRequestOptions", "UsbDevice", "UsbInTransferResult", "UsbControlTransferParameters", "UsbOutTransferResult", "UsbRecipient", "UsbRequestType", "UsbTransferStatus"]
optional = true
version = "0.3.69"
[dev-dependencies]
[features]
_docs-fix = ["dep:ssmarshal"]
cobs-serial = ["cobs/use_std", "dep:tokio-serial"]
default = []
embassy-usb-0_3-server = ["dep:embassy-usb-0_3", "dep:embassy-sync", "dep:static_cell", "dep:embassy-usb-driver", "dep:embassy-executor", "dep:embassy-time", "dep:embassy-futures"]
embassy-usb-0_4-server = ["dep:embassy-usb-0_4", "dep:embassy-sync", "dep:static_cell", "dep:embassy-usb-driver", "dep:embassy-executor", "dep:embassy-time", "dep:embassy-futures"]
raw-nusb = ["dep:nusb", "use-std"]
test-utils = ["use-std", "postcard-schema/use-std"]
use-std = ["dep:maitake-sync", "dep:tokio", "postcard/use-std", "postcard-schema/use-std", "dep:thiserror", "dep:tracing", "dep:trait-variant", "dep:ssmarshal"]
webusb = ["dep:gloo", "dep:web-sys", "dep:serde_json", "dep:wasm-bindgen", "dep:wasm-bindgen-futures", "dep:js-sys", "use-std"]
[lib]
name = "postcard_rpc"
path = "src/lib.rs"
[package]
authors = ["James Munns <james@onevariable.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["embedded", "no-std"]
description = "A no_std + serde compatible RPC library for Rust"
documentation = "https://docs.rs/postcard-rpc/"
edition = "2021"
keywords = ["serde", "cobs", "framing"]
license = "MIT OR Apache-2.0"
name = "postcard-rpc"
readme = "README.md"
repository = "https://github.com/jamesmunns/postcard-rpc"
version = "0.11.7"
[package.metadata.docs.rs]
features = ["test-utils", "use-std", "cobs-serial", "raw-nusb", "embassy-usb-0_3-server", "_docs-fix"]
rustdoc-args = ["--cfg", "doc_cfg"]