第334期 — 2025-09-20 |
周e信 |

Node.js |
![]() |
NPM最近遭受的攻击本可能造成更严重的后果,幸运的是我们都躲过了一劫🔗 作者认为NPM最近遭受的攻击本可能造成更严重的后果,幸运的是,恶意代码仅修改了加密货币支付的目标地址。攻击始于一封非常逼真的钓鱼邮件,邮件伪装成NPM官方,诱导用户修改双因素认证信息。 作者强调,我们需要认识到任何依赖项都可能存在恶意代码,并尽可能理解程序的整个依赖树,但在实际工作中,我们往往没有足够的时间这样做。 Cadey |
![]() |
Krasimir Tsonev |
NPM debug 和 chalk 包被入侵🔗 2025年9月8日,Aikido intel feed 发现多个NPM包被植入恶意代码。这些包包括 debug, chalk 等18个非常流行的库,每周下载量超过20亿次。 如何保护:
涉及到的包版本 (Indicators of compromise): 文章中列出了18个受影响的包及其版本。 其中
Charlie Eriksen |
Javascript |
![]() |
在终端中运行 GUI 应用程序🔗 该项目名为 "Term.everything",是一个 Linux 命令行程序,允许用户在终端中运行任何图形用户界面 (GUI) 应用程序,甚至可以通过 SSH 运行。 其核心是一个从头构建的 Wayland compositor,将输出渲染到终端而不是显示器。其质量取决于终端的行列数,支持在支持图像的终端(如 Kitty 或 iTerm2)中以全分辨率渲染窗口。 项目使用 Typescript (82.3%) 和 C++ (15.2%) 开发,使用 bun 引擎。目前处于 beta 测试阶段,部分应用可能无法启动或崩溃。 该项目基于 AGPL-3.0 协议开源。 mmulet |
![]() |
Fetch API 的流(Streams)功能虽然好用,但千万别用来测上传下载进度🔗 Fetch API 的流(Streams)功能可用于分块处理数据,在下载和上传时有相应作用,但它不能用来准确测量上传或下载进度,下载时遇文件压缩会算错进度,上传时测的不是真实传至服务器的进度,而且还会限制浏览器优化;当下若要测进度建议使用 XHR,其有专门的进度事件可准确获取,未来则可等 Fetch 新增的进度监听 API 落地后用它来兼顾 Fetch 优势与准确测进度,总之用流功能别为测进度,按对应方法来更靠谱。 Jake |
![]() |
Deno 团队发起 20 万美元筹款申请取消 Oracle 持有的 “JavaScript” 商标权🔗 Deno 团队发起 20 万美元筹款活动,旨在通过法律手段向美国专利商标局申请取消 Oracle 持有的 “JavaScript” 商标权 —— 此前已组织 2.7 万人签名公开信,当前进入关键证据收集阶段,筹款将用于制作法律认可的调查、聘请专家作证、收集行业证据及应对 Oracle 反驳,剩余款项将捐给 OpenJS(不进 Deno 腰包);Oracle 已否认 “JavaScript 是通用名”,若胜诉 “JavaScript” 将成为公共领域词汇,开发者等可自由使用,若败诉则 Oracle 锁定商标权,还可能影响商标法对通用技术名词的界定,因此呼吁开发者捐款和扩散支持。 Ryan Dahl |
前端 |
![]() |
Subgrid怎么用🔗 Subgrid 的本质是:让嵌套在父网格里的子元素,也用父网格的 “行 / 列规则” 来排列。这样不管每个子区域(比如定价卡片)里的内容多少,它们的元素都会跟着父网格的 “线” 来对齐,不会乱。 Saron Yitbarek |
tooooools.app |
不是所有界面都需要动画🔗 用得越频繁的功能,越不该加动画,功能动画必须 “快” Emil Kowalski |
![]() |
Carter Rink |
![]() |
Tom Lianza, Joaquin Madruga |
移动端 |
![]() |
Expo SDK 54发布🔗 支持 React Native 0.81 和 React 19.1,提升ios构建速度(XCFrameworks),增加了对 Apple TV 和 Android TV 的支持,在 iOS 上,支持 iOS 26,在 Android 上,目标为 Android 16(API 36),可以自定义重新加载屏幕,Expo SDK 54 是支持旧架构的最后一个版本,这意味着未来的版本可能会专注于新架构,开发者需要逐渐过渡到新架构。 Alan Hughes, Brent Vatne |
数据库 |
![]() |
Amazon S3 Vectors使用评测🔗 S3 Vectors 的优点与局限性 优点包括: 很低的存储成本(举例:$0.06/GB)相比“serverless vector solution”便宜很多。 如果请求量/查询频率低,且对延迟要求不高,是一个非常划算的方案。 局限性包括: 查询延迟(latency)问题,尤其对于“大表/冷数据/高并发”场景:冷查询延迟可能在 500-700ms 左右。 写入性能受限:写速度低于很多专门的向量数据库。频繁更新/写入/修改数据的场景可能表现差。 精度(recall)较低:作者提到 recall 在 85-90%,在带有过滤条件或有删除/高 churn 的情况下 recall 会更低。 功能受限:TopK 查询上限、metadata 大小有严格限制、没有混合检索(hybrid search)、没有复杂过滤、多租户支持弱。 Amazon S3 Vectors 并不会替代向量数据库,而是作为低成本、低频访问的冷存储补充;真正需要高性能、低延迟、复杂查询的生产场景,专门的向量数据库仍然不可替代,未来会是冷热分层存储共存的格局。 James Luan |
人工智能 |
![]() |
我通过破解 GameCube 内存,用一个实时的 LLM 替换了《动物之森》的对话🔗 作者通过破解GameCube游戏的内存,成功地将《动物森友会》的对话替换为实时LLM生成的内容,而无需修改任何游戏代码。代码 Josh Marinacci |
使用 Claude Code 将一个 25 年前的内核驱动程序现代化🔗 Dmitry Brant 使用 Claude Code 现代化了一个 25 年前的 Linux 内核驱动 ftape。ftape 用于与连接到软盘控制器的磁带驱动器通信,但由于年代久远,只能在非常旧的 Linux 系统 (CentOS 3.5) 上编译和运行。作者希望能在现代 Linux 发行版上使用 ftape。 作者强调,虽然 Claude Code 帮助很大,但仍然需要开发者具备一定的内核模块和 C 语言基础才能完成这项任务。作者还分享了一些与这类代码助手协作的经验,例如:
Dmitry Brant |
运维 |
![]() |
在现代我如何使用持久队列解决分布式队列问题🔗 “持久化队列(Durable Queues)” 这一技术工具:它本质是给程序中 “按顺序处理任务的队列” 加了 “硬盘备份 + 处理确认” 机制,能解决普通队列在程序崩溃、服务器断电等意外时 “未处理任务丢失、需返工” 的问题 Jeremy Edberg |
UTF-8 编码是一种出色的设计🔗 UTF-8 编码是一种出色的设计,它能够用 32 位表示来自不同语言和脚本的数百万个字符,并且还向后兼容 ASCII。 UTF-8 是一种变长字符编码,使用一到四个字节来表示一个字符。前 128 个字符(U+0000 到 U+007F)使用单字节编码,与 ASCII 兼容。多字节序列的后续字节总是以 10 开头,主字节的前导位决定了字符的总字节数。根据主字节前几位的不同,可以判断字符由几个字节组成:0xxxxxxx 代表 1 个字节;110xxxxx 代表 2 个字节;1110xxxx 代表 3 个字节;11110xxx 代表 4 个字节。 此外,还提到了其他一些兼容 ASCII 的编码,但不如 UTF-8 流行。UTF-16 和 UTF-32 不兼容 ASCII。 作者还分享了他创建的 UTF-8 Playground 工具 Vishnu Haridas |
Java |
新墨西哥州将是美国第一个提供全民儿童保育的州🔗 新墨西哥州将于2025年11月1日起成为美国第一个提供普遍儿童保育的州。该计划取消了收入资格要求和家庭共同支付,使所有新墨西哥州的家庭都能获得儿童保育服务,预计平均每年每个孩子可为家庭节省12000美元。此举旨在减轻家庭经济负担,支持经济发展,并确保每个孩子都有成长和发展的机会。同时,新墨西哥州还将投资于儿童保育设施建设和扩建,提高早期教育工作者的工资,并扩大儿童保育服务范围,以满足不同家庭的需求。政府希望通过普遍儿童保育,为儿童和家庭创造更好的未来,并促进新墨西哥州的长期繁荣。 governor.state.nm.us |
其他 |
![]() |
美国财政部正在扩大《爱国者法案》以打击比特币自托管🔗 美国财政部正试图扩大《爱国者法案》的适用范围,以打击比特币的自我托管。具体来说,财政部和金融犯罪执法网络(FinCen)正在制定新的指导方针,计划禁止或限制比特币用户使用CoinJoin、原子互换、单一地址以及交易广播时间延迟等隐私保护工具。文章作者认为这些工具是比特币自我托管的最佳实践,限制使用将严重侵犯用户的金融隐私。一旦这些规定生效,使用这些工具的用户将被标记为可疑对象,通过受监管的服务发送包含涉及这些工具的UTXO将被拒绝,甚至可能面临牢狱之灾。作者认为,政府不应该为了极少数罪犯而牺牲绝大多数守法公民的利益,而应该努力改善环境,提高执法效率。 文章还提到了其他几个方面:
Marty Bent |
![]() |
欧盟法院裁定核能是清洁能源🔗 欧盟法院驳回了奥地利对欧盟将核能纳入可持续金融分类的诉讼,确认了核能在欧盟绿色金融规则中的地位。作者认为这是一个重要的胜利,表明坚持科学是可能的,核能对环境的影响极低,且安全可靠。尽管德国等国过去反对核能,但现在态度开始转变。然而,绿色和平组织 仍然反对核能,作者对此表示不满,认为这阻碍了应对气候危机的进程。 Ia Aanstoot |
![]() |
西班牙蓬特韦德拉宣布其整个市区为“限行区”🔗 文章讲述了西班牙城市蓬特韦德拉如何通过将整个城市区域定义为“限行区”,成功地改善了空气质量,减少了交通事故,并为居民创造了更多的公共空间。 核心措施包括:
文章还提到了其他欧洲城市在可持续发展方面的尝试,例如德国的弗莱堡和挪威的奥斯陆。 Elena Ledda |
![]() |
我带我儿子去博物馆不是为了看屏幕🔗 作者参观了费城的富兰克林研究所(TFI),儿时这里曾给他留下深刻印象。但这次参观让他失望,因为博物馆里充斥着屏幕互动展品,而他更希望儿子能体验到真实的动手操作。作者认为,博物馆的屏幕展品体验与在家用iPad体验类似,失去了博物馆的意义。 作者回忆了儿时在TFI的快乐,例如玩沙摆、穿过巨型心脏模型。但现在,屏幕占据了博物馆的中心位置,互动体验变成了触摸屏上的视频游戏,而真正动手操作的展品却被放置在偏僻角落,且维护不佳。 Seth Purcell |
根据用户的搜索内容,生成想象中的、不存在的商品概念图🔗 网站声明,这些产品实际上并不可用。该网站自称是“明日的产品,今日提供(实际上不可用)”。 anycrap.shop |
Fenwick 布局的区间树🔗 借鉴 “Fenwick 树”(树状数组)的内存排列技巧,用于改进 “区间树”(一种快速查找区间类数据的结构)—— 解决了传统区间树因需存储额外信息(如子节点指针)导致的 “占用内存多”,以及数据在内存中分散存储导致的 “访问速度慢” 问题;通过 Fenwick 布局,既能减少区间树的冗余信息 “瘦身”,又能让常用数据在内存中连续排列 “提速”,最终让区间树在处理时间 / 数值区间数据等场景时更高效、更实用。 代码实现 Alisa Sireneva |









.png)




