Skip to content

Latest commit

 

History

History
296 lines (210 loc) · 24.2 KB

CHANGELOG.md

File metadata and controls

296 lines (210 loc) · 24.2 KB

Changelog

All notable changes to quic-rpc will be documented in this file.

[unreleased]

⛰️ Features

0.16.0 - 2024-12-02

⛰️ Features

  • Use postcard encoding for all transports that require serialization (#114) - (badb606)

🚜 Refactor

  • Rename iroh-net transport to iroh-transport - (7ee875b)
  • Rename iroh-net transport to iroh-transport (#123) - (69e7c4a)

⚙️ Miscellaneous Tasks

0.15.1 - 2024-11-14

⛰️ Features

⚙️ Miscellaneous Tasks

  • Consistently format imports... - (33fb08b)
  • Consistently format imports... (#113) - (08750c5)
  • Introduce a .rustfmt.toml file with configs for automatic formatting (#115) - (a949899)

0.15.0 - 2024-11-06

⚙️ Miscellaneous Tasks

0.14.0 - 2024-11-04

⛰️ Features

🐛 Bug Fixes

  • Transport:quinn only spawn when tokio is available (#95) - (baa4f83)

⚙️ Miscellaneous Tasks

Deps

  • Remove direct rustls dependency - (f67c218)
  • Remove direct rustls dependency (#94) - (fe08b15)

0.12.0 - 2024-08-15

⛰️ Features

  • WIP First somewhat working version of attribute macro to declare services - (bab7fe0)

🚜 Refactor

  • Use two stage accept - (ac8f358)
  • Use two stage everywhere - (b3c37ff)
  • Use two stage accept (#87) - (c2520b8)
  • Remove the interprocess transport - (bd72cdc)

⚙️ Miscellaneous Tasks

Deps

  • Upgrade to Quinn 0.11 and Rustls 0.23 (#92) - (93e64ab)

0.10.1 - 2024-05-24

⛰️ Features

⚙️ Miscellaneous Tasks

0.10.0 - 2024-05-21

🐛 Bug Fixes

  • Downgrade derive_more to non beta - (9235fdf)

🚜 Refactor

  • Fix hyper and combined transports - (a56099e)
  • [breaking] Use Service generic in transport connections (#76) - (64ed5ef)

⚙️ Miscellaneous Tasks

Deps

  • Depend on iroh-quinn and bump version (#75) - (df54382)

Wip

[0.8.0] - 2024-04-24

⛰️ Features

  • (ci) Add minimal crates version check - (00b6d12)
  • (http2) Shut down the hyper server on drop. - (124591a)
  • (http2) Shut down the hyper server on drop - (cd86839)
  • (http2) Move serialization and deserialization closer to the user - (c1742a5)
  • (http2) Add config to http2 channel - (8a98ba7)
  • Add optional macros to reduce boilerplate - (0010a98)
  • Allow to split RPC types into a seperate crate. - (1564ad8)
  • Generate code only if needed and add client - (e4d6d91)
  • Better docs for macro-generated items - (bbf8e97)
  • Add convenience function for handling errors in rpc calls - (26283b1)
  • Lazy connections, take 2 - (3ed491e)
  • More efficient channel replacement - (6d5808d)
  • Allow lazy connect in client of split example - (97b7e1a)
  • Implement std::error::Error for combined channel errors - (d7828e3)
  • Add minimal tracing support - (850bde1)
  • Add minimal tracing support - (2de50d5)
  • Make channels configurable - (11d3071)
  • Expose local address of ServerChannel - (b67dcdb)
  • Add dummy endpoint - (48cf5db)
  • Add ability to creaete a RpcClient from a single connection - (7a4f40f)
  • Add AsRef and into_inner for RpcClient and RpcServer - (ea8e119)
  • Update quinn and rustls - (20679f9)
  • Make wasm compatible (#49) - (6cbf62b)
  • Add additional Sync bounds to allow for better reuse of streams - (54c4ade)
  • Add additional Sync bounds to allow for better reuse of streams (#68) - (bc589b7)
  • Allow to compose RPC services (#67) - (77785a2)

🐛 Bug Fixes

  • (ci) Cancel stale repeat jobs (#64) - (d9b385c)
  • (http2) Don't log normal occurrences as errors - (a4e76da)
  • Consistent naming - (a23fc78)
  • Add docs to macro - (c868bc8)
  • Improve docs - (1957794)
  • Docs typos - (a965fce)
  • Derive Debug for generated client - (9e72faf)
  • Rename macro to rpc_service - (bdb71c1)
  • Hide the exports also behind feature flags - (4cff83d)
  • Get rid of get rid of channel!!! - (e0b504d)
  • Add additional framing to messages - (8a6038e)
  • Do buffering in the forwarder - (4e3d9fd)
  • Add flume dependency to quinn-transport - (e64ba0b)
  • Call wait_idle on endpoint drop to allow for time for the close msg to be sent - (7ba3bee)
  • Update MSRV to 1.65 - (3cb7870)
  • Explicitly close channel when client is dropped - (2c81d23)
  • Do not use macros in tests - (596a426)
  • Do two forwarder tasks - (2e334f3)
  • Add explicit proc-macro dependency so the minimal-versions test works - (cf2045c)
  • Make socket name os comaptible - (ec3314c)
  • Nightly failures (#66) - (865622e)
  • Rpc client concurrently waits for requests and new connections (#62) - (3323574)
  • Try to make client streaming and bidi streaming work - (2bb27d0)

🚜 Refactor

  • (http2) Use a slice instead of a vec for the local addr - (0d79990)
  • (mem) Return &[LocalAddr::Mem] directly - (2004c46)
  • Move more code out of the macro - (796dccd)
  • One less &mut - (53af0f9)
  • Add some mut again - (aab91dc)
  • Error remodeling - (6bad622)
  • Make lazy client a separate example - (e92771e)
  • Make the lazy example simpler - (86c2b94)
  • Round and round we go - (37a5703)
  • Remove dead code - (7d7ac15)
  • Add ClientChannelInner - (8aafe34)
  • WIP make both server and client side take quinn endpoints - (4d99d71)
  • WIP make benches work - (639883c)
  • Make the par bench work without the multithreaded executor - (ee62f93)
  • WIP add substream source - (6070939)
  • WIP channel source - (45fb792)
  • Combined has won - (b743bf1)
  • Move some things around - (3ceade3)
  • Get rid of some boxes - (ff786ab)
  • Rename transports to the crate they wrap - (bd65fe6)
  • Get rid of the lifetimes - (6ea4862)
  • Rename the macros to declare_... - (ae24dd1)
  • Make macros optional, and also revert the trait name changes - (884ceed)
  • Remove all transports from the defaults - (3c02ee5)
  • Use spans - (15be738)
  • Add mapped methods for client and server - (58b029e)
  • Better generics with helper trait - (b41c76a)
  • Naming - (ee5272a)
  • No more futures crate (#73) - (403fab0)

📚 Documentation

  • (http2) Add comments for the new error cases - (103b8f4)
  • Better comments - (c7de505)
  • Yet another badge - (c0c1ac3)
  • Fix github badge - (60c511f)
  • Update todo comments and made some other comments nicer - (311307c)
  • Update docs to match implementation - (7b6bf32)
  • Add some more text to the readme about why this thing exists in the first place - (a512de5)
  • Better docs for the declare macros - (ffc934c)

⚡ Performance

🎨 Styling

🧪 Testing

  • (http2) Add some tests for the not so happy path - (c04cf77)
  • Adapt examples - (80f4921)

⚙️ Miscellaneous Tasks

  • (docs) Enable all features for docs.rs builds - (d3f55ce)
  • (docs) Enable all features for docs.rs builds (#60) - (e063747)
  • Fmt - (20bb7a0)
  • Rename main structs to include type - (d61bf8d)
  • Configure rust version and check during CI - (da6f282)
  • Add more up to date n0 ci workflow - (7adeaec)
  • Clippy (#61) - (b25d30d)
  • Fmt - (63bc8d8)
  • Fix feature flags for tests - (9c4a7e6)
  • Clippy - (1652d5f)
  • Fix feature flags for tests (#69) - (488bb8c)

Fix

Change

  • Improve split macro example - (7d5dc82)

Cleanup

  • Move socket name generation into the lib - (4f40732)

Deps

Pr

  • (http2) Log remote addr again - (5388bb2)
  • Make ChannelConfigError a proper error - (e4a548b)
  • Rename extra constructors and add some comments - (2c9a08b)

Ref

  • Rename main structs not conflict with trait names - (6fba32a)

Wip