NetNewsWire 状态
摘要
Brent Simmons 报告了 NetNewsWire RSS 阅读器在过去一年的进展,重点介绍了现代化、错误修复和性能改进,并侧重于在添加新功能之前做好基础工作。
<p><a href="https://lobste.rs/s/0mximk/netnewswire_status">评论</a></p>
查看缓存全文
缓存时间: 2026/06/15 23:03
# 非必需之事:NetNewsWire 现状
来源:https://inessential.com/2026/06/15/netnewswire-status.html
退休已经一年了——我的**最后一个工作日**(https://inessential.com/2025/06/06/retirement-day.html)是2025年6月6日——我很高兴可以这样说:这一年来,我没有给股东价值增加过一分钱。🌴
* * *
退休时我的期望是在 **NetNewsWire**(https://netnewswire.com/)上完成大量工作。
一年前,它急需现代化改造、偿还技术债务、修复bug。用户们在请求新功能,但地基需要大量修缮,我才能着手加盖新房间。
以下是我们过去一年里通过2,188次提交所完成的一些亮点:
- 采用了 Swift 结构化并发与 async/await
- 采用了 Liquid Glass UI,同时仍支持较新的操作系统
- 将 XML、HTML 和日期解析器从 Objective-C 移植到 Swift
- 修复了大量bug,包括崩溃类bug
- 降低了电池消耗、内存占用、卡顿率、滚动抖动率和磁盘写入量
- 做了大量性能优化,特别是找到了应用可以少做工作的那些地方
- 做了一系列代码卫生工作——让 GitHub CI 重新运行、开始使用 SwiftLint、开启“将警告视为错误”、着手本地化工作、切换到 Logger、增加测试
- 简化并重构了代码、删除了代码、重命名了事物等——在许多地方获得了更清晰的代码
- 为订阅源添加了 Cache-Control 头部支持,让发布者可以调整 NetNewsWire 检查其订阅源的频率
- 优化了 iCloud 同步(这方面还有很多工作要做)
- 处理了弃用警告(例如,切换到了 `NWPathMonitor`)
- 在 UI 中增加了诊断和错误报告功能——已发布 **iCloud 存储统计**(https://netnewswire.com/help/optimize-icloud.html)和**错误日志**(https://netnewswire.com/help/error-log.html),更多类似功能目前处于测试阶段:**恐龙**(https://netnewswire.com/help/dinosaurs.html)、**当前活动**(https://netnewswire.com/help/current-activity.html)、**活动日志**(https://netnewswire.com/help/activity-log.html)和**账户统计**(https://netnewswire.com/help/account-stats.html)。
罗列亮点意味着我在一笔带过——甚至根本没提——那些我真正想跟你们说的事情!
比如,有一段时间我对自己处理 Mac 崩溃日志的方式感到沮丧,于是我写了一个小系统,它可以从我的服务器下载日志并进行符号化处理。它很简单,但效果显著——这意味着**不用**迁移到某个商业系统、不用把它们的 SDK 添加到应用里来解决这个问题。
* * *
最后一个要点(那个带有多个链接的要点)的核心,是让用户能够洞察应用的运行状况,这样当应用行为不符合预期时,他们就能看到到底发生了什么。
即使他们自己无法解决问题,至少可以复制粘贴并告诉我出了什么状况,这样我就不用去猜了。经过这一系列改进以及各种 bug 修复和优化,我能花更少的时间在技术支持上,从而有更多时间用于编码——最终,有更多时间去实现用户们所要求的新功能。
* * *
基础工作还没有完成,但已经接近尾声了。现在开发这个应用的体验比一年前好了太多,我很庆幸我们这一年是这样度过的。
我特意用了“**我们**”——可能我的贡献最大,但我们还有一群**其他贡献者**(https://github.com/Ranchero-Software/NetNewsWire/graphs/contributors?from=6%2F14%2F2025),我感谢他们所有人给予的宝贵帮助。我之后贡献最多的贡献者是 **Stuart Breckenridge**(https://stuartbreckenridge.net/),他完成了 Liquid Glass 的工作(以及其他诸多事情)——此外他还做了一个新的基于浏览器的 **RSS 阅读器,名叫 Gobbler**(https://gobbler.press/),值得一看!
* * *
附注:过去一年里,我们还从 Slack 切换到了 **Discourse 论坛**(https://discourse.netnewswire.com/),这样支持和讨论都可以在网页上进行,而不是藏在一个封闭的地方。😀
相似文章
NetNewsWire 状态
Simon Willison 强调了 Brent Simmons 的退休项目:在没有商业压力的情况下,让 NetNewsWire(一款开源 RSS 阅读器)变得异常出色。
现代 feed 阅读器(2024)
作者分析了 RSS 源因抓取和干扰而衰退的问题,认为现代 Feed 阅读器必须整合替代的聚合方式才能保持相关性。
Show HN: Antenna – 内置 MCP 服务器的 RSS 阅读器
Antenna 是一款本地优先的 RSS 阅读器,使用 SQLite 存储订阅源,并通过邮件摘要和面向 AI 代理的 MCP 服务器提供内容,完全基于 MIT 许可证开源。
我们需要 RSS 来分享大量基于氛围编码的应用
Simon Willison 讨论了分发快速开发的“氛围编码”应用对 RSS 源的需求,他指出为了促进这一过程,他已在个人工具页面添加了 Atom 源支持。
2026 年网页订阅源调查报告
这项调查分析了排名前 50 万的网站中超过 30 万个网页订阅源,结果显示尽管订阅源依然普遍,但大多数因 CMS 自动生成而遭到废弃或质量不佳。作者利用 AI 智能体处理 Common Crawl 数据,并呼吁改进订阅源的管理实践。