4个版本

0.1.10 2022年6月14日
0.1.9 2022年1月12日
0.1.8 2021年12月25日
0.1.7 2021年6月27日

#2713解析器实现


2 crate 中使用

WTFPLGPL-3.0-or-later

61KB
1.5K SLoC

Build Tests Coverage Documentation

ZeroNet协议Rust库

路线图

  • 实现涵盖基本用例
  • 实现异步发送和接收
  • 解析地址
    • IPV4, IPV6
    • OnionV2, OnionV3
    • I2P b32
    • LokiNet
  • 打包和拆包地址
    • IPV4, IPV6
    • OnionV2, OnionV3
    • I2P
    • LokiNet
  • 支持接收streamFile响应
  • 添加可配置的超时时间
  • 为ZeroNet-py3和ZeroNet追踪器使用的所有消息类型添加序列化和反序列化测试。
  • 提供所有标准ZeroNet消息的模板。
  • 编写涵盖所有外部结构的文档,包括structs,traits和函数。
    • ZeroConnection
    • ZeroMessage, Response, Request
  • 适当的错误处理
  • 优化
    • 修复导致UnknownLength错误的rmp-serde bug,将允许我们在不通过serde_json先传递的情况下进行编码,这应该会带来显著的性能提升。
    • 基准测试用于请求参数和响应值的中间自定义类型的序列化和反序列化,目前它使用HashMap,这不太可能是最优的。
    • 在自定义值中替换serde_json::Number,以便在修复之前的bug时可以从依赖中完全删除serde_json。

依赖项

~4.5–7MB
~122K SLoC