New workspace structure with 9 crates. Adds: - proto/qpq/v1/*.proto: 11 protobuf schemas covering all 33 RPC methods - quicproquo-proto: dual codegen (capnp legacy + prost v2) - quicproquo-rpc: QUIC RPC framework (framing, server, client, middleware) - quicproquo-sdk: client SDK (QpqClient, events, conversation store) - quicproquo-server/domain/: protocol-agnostic domain types and services - justfile: build commands Wire format: [method_id:u16][req_id:u32][len:u32][protobuf] per QUIC stream. All 151 existing tests pass. Backward compatible with v1 capnp code.
29 lines
717 B
TOML
29 lines
717 B
TOML
[package]
|
|
name = "quicproquo-proto"
|
|
version = "0.2.0"
|
|
edition = "2021"
|
|
description = "Protocol types for quicproquo — v1 Cap'n Proto (legacy) + v2 Protobuf (prost)"
|
|
|
|
build = "build.rs"
|
|
|
|
[dependencies]
|
|
# v1 legacy (Cap'n Proto) — used by existing server/client until rewrite
|
|
capnp = { workspace = true }
|
|
|
|
# v2 (Protobuf via prost) — new RPC types
|
|
prost = { workspace = true }
|
|
prost-types = { workspace = true }
|
|
bytes = { workspace = true }
|
|
|
|
[build-dependencies]
|
|
capnpc = { workspace = true }
|
|
prost-build = { workspace = true }
|
|
protobuf-src = "2"
|
|
|
|
[lints.rust]
|
|
unsafe_code = "warn"
|
|
|
|
[lints.clippy]
|
|
# Generated Cap'n Proto code uses patterns that trigger clippy lints.
|
|
unwrap_used = "allow"
|