[package]
edition = "2024"
name = "vpp-plugin"
version = "0.2.2"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = """
A framework for writing high-performance, reliable VPP plugins in Rust.
"""
readme = "README.md"
keywords = ["vpp"]
categories = [
"api-bindings",
"network-programming",
]
license = "Apache-2.0"
repository = "https://github.com/rshearman/vpp-plugin-rs"
resolver = "2"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
experimental = []
process-node = [
"dep:futures",
"dep:futures-task",
"dep:pin-project-lite",
]
[lib]
name = "vpp_plugin"
path = "src/lib.rs"
[[bench]]
name = "tw_timer"
path = "benches/tw_timer.rs"
harness = false
[dependencies.arrayvec]
version = "0.7.6"
[dependencies.bitflags]
version = "2.9.4"
[dependencies.ctor]
version = "0.5.0"
[dependencies.foreign-types]
version = "0.5"
[dependencies.futures]
version = "0.3.32"
features = [
"alloc",
"std",
]
optional = true
default-features = false
[dependencies.futures-task]
version = "0.3.32"
optional = true
[dependencies.pin-project-lite]
version = "0.2.17"
optional = true
[dependencies.slab]
version = "0.4.12"
[dependencies.va_list]
version = "0.2.1"
[dependencies.vpp-plugin-macros]
version = "0.2.1"
[dev-dependencies.criterion]
version = "0.8.1"
[dev-dependencies.paste]
version = "1.0"
[build-dependencies.bindgen]
version = "0.72.0"
[build-dependencies.cc]
version = "1"