Skip to content

Commit 252c980

Browse files
committed
Merge branch 'main' into feat-async-channel
2 parents 18cce9c + d25ea81 commit 252c980

39 files changed

+616
-68
lines changed

Cargo.lock

Lines changed: 125 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "quic-rpc"
3-
version = "0.10.2"
3+
version = "0.11.0"
44
edition = "2021"
55
authors = ["Rüdiger Klaehn <rklaehn@protonmail.com>"]
66
keywords = ["api", "protocol", "network", "rpc"]
@@ -87,4 +87,4 @@ name = "modularize"
8787
required-features = ["flume-transport"]
8888

8989
[workspace]
90-
members = ["examples/split/types", "examples/split/server", "examples/split/client"]
90+
members = ["examples/split/types", "examples/split/server", "examples/split/client", "quic-rpc-derive"]

examples/errors.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ async fn main() -> anyhow::Result<()> {
6060
let server = RpcServer::new(server);
6161
let handle = tokio::task::spawn(async move {
6262
for _ in 0..1 {
63-
let (req, chan) = server.accept().await?;
63+
let (req, chan) = server.accept().await?.read_first().await?;
6464
match req {
6565
IoRequest::Write(req) => chan.rpc_map_err(req, fs, Fs::write).await,
6666
}?

examples/modularize.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,10 @@ async fn main() -> Result<()> {
3434
async fn run_server<C: ServiceEndpoint<AppService>>(server_conn: C, handler: app::Handler) {
3535
let server = RpcServer::new(server_conn);
3636
loop {
37-
match server.accept().await {
37+
let Ok(accepting) = server.accept().await else {
38+
continue;
39+
};
40+
match accepting.read_first().await {
3841
Err(err) => warn!(?err, "server accept failed"),
3942
Ok((req, chan)) => {
4043
let handler = handler.clone();

examples/store.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ async fn main() -> anyhow::Result<()> {
168168
let s = server;
169169
let store = Store;
170170
loop {
171-
let (req, chan) = s.accept().await?;
171+
let (req, chan) = s.accept().await?.read_first().await?;
172172
use StoreRequest::*;
173173
let store = store.clone();
174174
#[rustfmt::skip]
@@ -239,15 +239,15 @@ async fn _main_unsugared() -> anyhow::Result<()> {
239239
}
240240
let (server, client) = flume::connection::<Service>(1);
241241
let to_string_service = tokio::spawn(async move {
242-
let (mut send, mut recv) = server.accept_bi().await?;
242+
let (mut send, mut recv) = server.accept().await?;
243243
while let Some(item) = recv.next().await {
244244
let item = item?;
245245
println!("server got: {item:?}");
246246
send.send(item.to_string()).await?;
247247
}
248248
anyhow::Ok(())
249249
});
250-
let (mut send, mut recv) = client.open_bi().await?;
250+
let (mut send, mut recv) = client.open().await?;
251251
let print_result_service = tokio::spawn(async move {
252252
while let Some(item) = recv.next().await {
253253
let item = item?;

quic-rpc-derive/Cargo.toml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
[package]
2+
name = "quic-rpc-derive"
3+
version = "0.11.0"
4+
edition = "2021"
5+
authors = ["Rüdiger Klaehn <rklaehn@protonmail.com>"]
6+
keywords = ["api", "protocol", "network", "rpc", "macro"]
7+
categories = ["network-programming"]
8+
license = "Apache-2.0/MIT"
9+
repository = "https://github.com/n0-computer/quic-rpc"
10+
description = "Macros for quic-rpc"
11+
12+
[lib]
13+
proc-macro = true
14+
15+
[dependencies]
16+
syn = { version = "1.0", features = ["full"] }
17+
quote = "1.0"
18+
proc-macro2 = "1.0"
19+
quic-rpc = { version = "0.11", path = ".." }
20+
21+
[dev-dependencies]
22+
derive_more = "1.0.0-beta.6"
23+
serde = { version = "1.0.203", features = ["serde_derive"] }
24+
trybuild = "1.0.96"

0 commit comments

Comments
 (0)