31 个不稳定版本
0.16.5 | 2024 年 5 月 4 日 |
---|---|
0.16.4 | 2024 年 1 月 30 日 |
0.16.3 | 2023 年 11 月 6 日 |
0.16.2 | 2022 年 12 月 13 日 |
0.2.0 | 2017 年 11 月 13 日 |
在 电子邮件 类别中排名第 7
每月下载量 15,036 次
用于 38 个 包(10 个直接使用)
190KB
4.5K SLoC
imap-proto 和 tokio-imap
欢迎所有反馈。请随时向 问题跟踪器 或 给我发推文 提交错误、文档请求和其他反馈。
tokio-imap 和 imap-proto 由 Dirkjan Ochtman 维护。如果您依赖这些项目,请通过 GitHub Sponsors 支持项目或与我联系以获得支持。
tokio-imap:基于 futures 的 IMAP 客户端
注意:与 imap-proto 不同,tokio-imap 的维护较少。作为替代方案,我们建议评估 async-imap。
一个基于 Tokio 栈 的、完全异步的 IMAP 库,重点在于遵循相关规范,主要是 IMAP4rev1,但仅对 条件存储 扩展提供有限支持。类型系统用于帮助在可能的情况下强制执行正确性。到目前为止,只有客户端代码和大量可能共享的基础设施代码,还没有服务器。(如果您需要一个基于 tokio 的服务器,请查看 IMAPServer。)
特性亮点
- 使用 tokio-core 和 tokio-io 实现完全异步
- 使用类型系统帮助强制执行根据规范的正确操作
- nom 基础解析器(在 imap-proto 中),迄今为止仅用于服务器响应消息
限制
- alpha 级实现 -- 尚未进行测试,协议覆盖范围有限
- 目前完全未实现服务器
如何开始
例如,查看 mailsync 包的使用示例。
imap-proto:IMAP 类型协议解析器
imap-proto 是一个低级的 IMAP 协议支持库,通过类型系统提供安全的 API。它从 tokio-imap 中提取出来作为一个独立的库,以便不同的协议实现可以共享它作为公共基础设施(如 rust-imap 贡献者所提出的)。代码试图紧密遵循 IMAP4rev1 RFC,以及扩展。
协议支持分为三个部分实现
- 尝试紧密反映规范要求的类型
- 一个解析器实现,用于帮助消费协议消息
- 构建器类型,用于帮助生成协议消息
进展
- 客户端
- 解析器:实现了许多常见的服务器响应
- 类型:实现了大多数常见类型
- 消息构建器:实现了大多数常见命令
- 服务器
- 解析器:尚未开始
- 类型:尚未开始
- 消息构建器:尚未开始
依赖
~1MB
~19K SLoC