curl 创始人及核心维护者 Daniel Stenberg 发布了关于 curl 项目的 2025 年总结。
![]()
翻译如下:
让我们回顾一下,记住这一年都带来了些什么。
提交(commits)
今年 curl 的提交次数超过 3,400 次,比此前任何单一年份都多出 40%。
在 2025 年的某个时间点之后,项目中所有其他作者累计为 curl 仓库添加的代码行数已经超过了我个人的贡献。这意味着,在 curl 仓库历史上新增的所有代码行中,我所贡献的比例已经低于一半。
今年我们合并的提交来自 150 多位贡献者,其中将近 100 人是首次贡献。共有 13 位作者在一年内提交了 10 次或以上。
Viktor Szakats 在 2025 年几乎每个月都是提交次数最多的作者。
Stefan Eissing 目前是 29% 产品源代码行的最近一次提交者,而我所占的比例是 36%。
目前仍然有约 598 位作者的代码贡献“保留”在产品代码中,这一数字相比去年年底的 635 人有所下降。
测试(tests)
与去年 12 月相比,今年年底我们新增了 232 个测试用例,总数达到 2,179 个。历史上第一次,平均每千行产品源代码对应的测试用例数量超过了 12 个。
(当然,用测试用例数量来衡量并不严谨,因为单个测试可能规模、复杂度差异很大,但这是我们目前唯一可统计的指标。)
发布(releases)
今年共发布了 8 个版本,属于比较正常的节奏:
-
8.12.0
-
8.12.1
-
8.13.0
-
8.14.0
-
8.14.1
-
8.15.0
-
8.16.0
-
8.17.0
在重大功能或架构变革方面,今年并没有发生革命性的变化。
我们大幅降低了源代码复杂度,停止使用了一些经常导致错误或混乱的函数,提升了性能,同时减少了内存分配次数。
我们还新增了对 DNS 记录 HTTPS-RR 的实验性支持。
在年底,修复漏洞的频率创下新高,仅 curl 8.17.0 一个版本就包含了将近 450 个漏洞修复。
今年我们开始引入“候选发布版”(Release Candidate)。在每次正式发布前,都会上传一系列候选版本,供社区测试接近最终形态的版本。这有助于在正式发布前发现并修复回归问题,而不是在发布之后再处理。
命令行选项
截至年底,curl 的命令行选项数量比去年多了 6 个,总数达到 273 个:
man 手册页
curl 的 man 手册继续增长,相比去年增加了 500 多行,总行数达到 7,090 行。按“每个命令行选项对应的手册行数”来算,这一指标从 24.7 提升到了 26。
代码行数
这一年 libcurl 仅增加了约 100 行代码,而命令行工具部分增加了 1,150 行。
目前 libcurl 的代码量略高于 149,000 行,命令行工具约为 25,800 行。
大多数提交都用于改进现有产品,而不是扩展功能,这一点在下面的“移除支持”部分也有所体现。
QUIC
今年 OpenSSL 终于引入并发布了可供 QUIC 协议栈使用的官方 API,从 3.5 版本开始支持。
基于这一变化,curl 中的 OpenSSL QUIC 协议栈已被标记为弃用,并计划在明年年初移除。
同时,由于我们在 2025 年移除了 msh3 支持,预计到 2026 年,curl 只会保留两个 QUIC / HTTP/3 后端实现。
安全(Security)
今年,针对 curl 的“AI 生成垃圾安全报告”数量大幅激增,给 curl 安全团队带来了额外负担,也使我们频繁出现在媒体报道中。
即便是不明显依赖 AI 的安全报告,其质量也显著下降,同时数量大幅增加,进一步加重了整体维护压力。
2025 年我们共发布了 9 个 curl 相关 CVE,严重程度均为低或中等。
AI 改进
新一代 AI 驱动的高质量代码分析工具开始向我们提交缺陷报告,主要来自 ZeroPath 和 Aisle Research。基于这些报告,我们已经修复了数百个漏洞,而且这一过程仍在持续。
这还不包括我们常规运行的代码分析工具所发现的问题,这些问题同样都会被修复。
Web 流量
到 2025 年年底,curl.se 每月传输的数据量达到 79 TB,相比去年同期的 58 TB 增长了 36%。
由于缺乏日志和详细分析,我们无法完全确认这些流量的具体来源,但可以确定,真正用于下载 curl 的流量只占极小一部分,其中相当多并非人类行为驱动。
GitHub 活动
curl 的 GitHub 仓库平均每个月都会收到 200 多个拉取请求。
在秋季的某个短暂时刻,未关闭的 issue 数量一度降为零。
目前我们拥有 220 多个独立的 CI 任务,在年底每天累计消耗超过 25 个 CPU 日,用于验证持续进行的代码变更。
仪表盘(Dashboard)
curl 仪表盘规模显著扩大。虽然我移除了一些已不再准确的图表,但总体数量仍从 2024 年 12 月的 82 张增长到 2025 年 12 月的 92 张插图,总计 259 个独立图表,增长约 25%。
移除的支持(Dropped support)
今年我们移除了一些老旧或遗留组件,以减少负担、聚焦重点,并确保 curl 的整体安全性:
详情查看原文:https://daniel.haxx.se/blog/2025/12/23/a-curl-2025-review/