"ResponseParseError: unexpected token `NUMBER` (expected `ATOM`)" on old exchange mail servers
还没有人认领这个 Issue。
评估
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 新手友好度
- 45/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 停滞
- 技术栈
- ruby
- 领域
- networking
调研方向
从响应解析器开始,将其对 Exchange 会话记录的处理与 RFC 2359 第 4.3 节进行比较。确定解析器是否应在没有预期 OK 的情况下接受服务器的 COPYUID 响应,并在所示的 UID MOVE 交互不再引发 ResponseParserError 时认为工作已完成。
由索引模型根据 Issue 内容生成。
描述
Needed to work with an old exchange mail server. The ID command reports: ("name" "Microsoft.Exchange.Imap4.Imap4Server" "version" "15.0") which according to this microsoft document should be an Exchange 2013 server.
After i sent an UID MOVE command it failed with the mentioned ResponseParserError.
I enabled the debug logging and got the following output:
[...]
S: RUBY0003 OK [READ-WRITE] SELECT completed.
C: RUBY0004 UID MOVE 10 PROCESSING
S: [COPYUID 124 10 233]
# (net-imap crashes at this point)
S: * 1 EXPUNGE
S: * 69 EXISTS
S: RUBY0004 OK MOVE completed.
As i understand RFC 2359 there should be an OK in front of the COPYUID?
Should the parser be able to handle such incorrect responses?
I have managed to build a hack for the parser locally to get it parsed and could submit a PR for the fix after some refactoring.
I have also checked against the Exchange implementation for Microsoft 365 and this does not have the error. The ID command reports: ("name" "Microsoft.Exchange.Imap4.Imap4Server" "version" "15.20") here.
- 主要语言
- Ruby
- 星标
- 121
- 派生
- 47
- 平均合并
- 19 小时 25 分钟
- 30 天内合并 PR
- 3
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
ruby/net-imap 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 77/100
-
bug
难度 5/5 一周以上 新手友好度 30/100
-
难度 3/5 1-2 天 新手友好度 25/100
-
难度 5/5 一周以上 新手友好度 15/100
-
难度 5/5 一周以上 新手友好度 20/100
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 74/100
维护者通常 1 天内回复
-
Websockify heartbeat for vnc_container可能已有人在做 @robinkar 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复
-
needs verification
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 7 天内回复
-
难度 1/5 1 小时以内 新手友好度 88/100
akitaonrails/ai-book-2026#13 ·
-
Mend: dependency security vulnerability
难度 2/5 1-3 小时 新手友好度 63/100
维护者通常 1 天内回复