buttplug 2.1.4

Buttplug Intimate Hardware Control Library
Documentation
[package]

name = "buttplug"

version = "2.1.4"

authors = ["Nonpolynomial Labs, LLC <kyle@nonpolynomial.com>"]

description = "Buttplug Intimate Hardware Control Library"

license = "BSD-3-Clause"

homepage = "http://buttplug.io"

repository = "https://github.com/buttplugio/buttplug-rs.git"

readme = "../README.md"

keywords = ["usb", "serial", "hardware", "bluetooth", "teledildonics"]

edition = "2018"

exclude = ["examples/**"]



[features]

# Basic features

default=["thread-pool-runtime", "client", "server", "serialize-json", "btleplug-manager", "websockets", "xinput-manager", "serial-manager", "lovense-dongle-manager"]

# default=["async-std-runtime", "client", "server", "serialize-json", "btleplug-manager", "websockets", "xinput-manager", "serial-manager", "lovense-dongle-manager"]

client=[]

server=[]

serialize-json=[]

# Connectors

websockets=["serialize-json", "async-tungstenite", "async-tls", "webpki", "rustls"]

# Device Communication Managers

xinput-manager=["server"]

btleplug-manager=["server", "btleplug"]

serial-manager=["server", "serialport"]

lovense-dongle-manager=["server", "serialport", "hidapi"]

# Runtime managers

thread-pool-runtime=[]

async-std-runtime=["async-std/default"]

tokio-runtime=[]

wasm-bindgen-runtime=["wasm-bindgen", "wasm-bindgen-futures", "futures-timer/wasm-bindgen"]

dummy-runtime=[]

# Compiler config

unstable=[]



[dependencies]

# buttplug_derive = { path = "../buttplug_derive" }

buttplug_derive = "0.6.2"

futures = { version = "0.3.12", features = ["thread-pool"] }

futures-util = "0.3.12"

async-trait = "0.1.42"

serde = { version = "1.0.123", features = ["derive"] }

serde_json = "1.0.62"

serde_repr = "0.1.6"

uuid = { version = "0.8.2", features = ["serde"] }

url = "2.2.0"

btleplug = { version = "0.6.0", optional = true }

# btleplug = { path = "../../btleplug", optional = true}

# btleplug = { git = 'https://github.com/deviceplug/btleplug', branch = 'master', optional = true }

strum_macros = "0.20.1"

strum = "0.20.0"

once_cell = "1.5.2"

paste = "1.0.4"

lazy_static = "1.4.0"

byteorder = "1.4.2"

# Slam valico to 3.4.0 until they update their dependencies to not use old

# libraries. 3.5.0 breaks a lot, including WASM.

valico = "=3.4.0"

thiserror = "1.0.23"

async-tungstenite = { version = "0.12.0", features = ["async-std-runtime", "async-tls"], optional = true }

# Needs to stay in line with async-tungstenite's version

async-tls = { version = "0.11.0", optional = true }

rustls = { version = "0.19.0", features = ["dangerous_configuration"], optional = true }

webpki = { version = "0.21.4", optional = true }

futures-timer = "3.0.2"

wasm-bindgen-futures = { version = "0.4.20", optional = true }

cfg-if = "1.0.0"

tracing = "0.1.23"

tracing-futures = "0.2.4"

tracing-subscriber = { version = "0.2.15", features = ["json"] }

dashmap = "4.0.2"

displaydoc = "0.1.7"

serialport = { version = "4.0.0", optional = true }

hidapi = { version = "1.2.5", optional = true }

wasm-bindgen = { version = "0.2.70", optional = true }

tokio = { version = "1.2.0", features = ["sync"] }

async-stream = "0.3.0"

prost = "0.7.0"



[target.'cfg(windows)'.dependencies]

rusty-xinput = "1.2.0"



[dependencies.async-std]

version = "1.9.0"

default-features = false

features = ["std"]

optional = true



[dev-dependencies]

async-std = "1.9.0"

tracing-log = { version = "0.1.1", features = ["env_logger"] }



[lib]

name = "buttplug"

path = "src/lib.rs"

test = true

doctest = true

doc = true



# Only build docs on one platform (linux)

[package.metadata.docs.rs]

targets = []

# Features to pass to Cargo (default: [])

features = ["default", "unstable"]



[build-dependencies]

prost-build = "0.6.1"