🔗 待办任务
此页面收集需要在 Squid 中完成但又不足以单独撰写功能文档的任务。
欢迎您随时加入并尝试这些任务。大多数任务都可以分小步完成。任何贡献都受欢迎。
🔗 增量任务
本节中的任务需要大致按顺序进行,以便于更改。完整的任务可能看起来很大,但您能完成的任何一小部分增量工作都将非常有帮助。请查看 squid-dev 邮件列表,了解我们的进展以及您如何协助推进这些工作。
- 使用 Doxygen 格式记录源代码
- src/Store.* 及相关内容
- src/comm.* 及相关内容
- src/DelayPools.* 及相关内容
- 迁移到智能指针框架
- 将 HttpRequest 的原始指针更新为
HttpRequest::Pointer。包括所有对其进行锁定的代码 - 将
HttpReply的原始指针更新为HttpReply::Pointer。包括所有对其进行锁定的代码 - 将
HttpMsg的原始指针更新为HttpMsg::Pointer。包括所有对其进行锁定的代码 - 将 CBDATA 的原始指针更新为 CbcPointer。包括所有进行验证测试和锁定的代码。
- 将 HttpRequest 的原始指针更新为
- 迁移到 STUB.h 框架
- 为每个便利库 API 使用 src/tests/STUB.h 创建一个 src/tests/stub_libX.cc
- 查找可以链接到存根而不是库的单元测试,并更新 makefiles
- 查找具有不必要链接的单元测试并删除(主要在 src/Makefile.am 中)
-
此项正在 Features/SourceLayout 中跟踪。
- 为每个已存在的类、API 方法和函数添加单元测试,以提高代码质量并加快未来测试速度。
- src/acl/*
- src/ip/*
- 删除无用的包含文件。
- 遍历每个 .h 文件,并最小化它包含的其他 .h 文件,在可能的情况下使用类预定义。(此项在 Features/SourceLayout 中有所进行,因此在尝试之前请联系 squid-dev)。
- 规范化调试级别 0 和 1 的消息
- 验证所有 DBG_CRITICAL 输出是否符合 FAQ 中的标记标准
- 验证所有 DBG_CRITICAL 和 DBG_IMPORTANT 输出是否具有描述它的 KnowledgeBase 页面(根据 FAQ)或故障排除条目中的功能页面。
- 改进统计信息收集和报告 API
-
StatHist拥有比实际需要更大的 API,显示了它的年代久远和传承。统计信息的收集和报告应该分开,以便单元测试只包含前者,而后者只使用存根。
-
🔗 小任务
一些小但令人烦恼的问题。如果此页面没有定期更新,这些任务可能已经完成。请与 squid-dev 联系,了解是否已完成。
- 彻底修复 kqueue 错误(即删除已关闭 FD 的事件)
- 清理启用/禁用组件的 Squid 组件宏
- .Makefile.am 条件的约定是 ENABLE_* (目前有些具有不正确的 USE_* 宏名称)
- 辅助程序和工具手册
- 为没有手册/man(8) 页的辅助程序编写手册/man(8) 页。
- 将现有的 README.txt 和其他辅助程序文档更新为标准手册(待办事项列表)
- 基准测试文档。
- 每个辅助程序能运行多快?
- 对于具有多个后端的辅助程序(例如 DB),它们如何进行比较?