每日HackerNews RSS

Rivian 的微出行衍生品牌 Also 已经发布了其首批产品:TM-B 电动自行车、TM-Q 电动四轮车和 Alpha Wave 头盔。TM-B 是一款独特的 3 级电动自行车,具有 28 英里/小时的助力速度和 20 英里/小时的油门速度(在法律允许的地区),由新颖的“DreamRide”线控踏板系统提供动力,并配备可拆卸电池,续航里程可达 100 英里。它具有令人印象深刻的 180 牛米扭矩和可适应货物或乘客的模块化车架。 安全性是一大亮点,具有自动锁定和实时跟踪功能。Also 还推出了 Alpha Wave 头盔,强调先进的旋转冲击保护和集成音频。TM-Q 是 TM-B 的四轮版本,专为更重的负载和潜在的最后一公里配送应用而设计,旨在兼容自行车道。 TM-B 首发版售价 4,500 美元(预订现已开放,预计 2026 年春季交付),后续将推出 4,000 美元的标准型号。Also 旨在通过创新技术和设计重振电动自行车市场。

## Rivian TM-B 电动自行车:摘要 Rivian 发布了其 TM-B 电动自行车,售价 4500 美元,引发了 Hacker News 用户的讨论。这款自行车具有独特的“线控踏板”系统——踏板不直接连接到驱动系统,而是为发电机供电——以及一个 808Wh 的大容量电池,续航里程可达 100 英里。 评论者们争论了价格定位,许多人指出有更便宜且性能良好的电动自行车,尤其是来自中国制造商的产品。然而,一些人认为 Rivian 定位高端市场,优先考虑制造质量、可更换电池和集成技术(包括配套头盔)等功能,以及货物/乘客配置的潜在模块化。 人们对重量、可维修性以及在缺乏专用自行车基础设施的城市环境中,音响系统等功能的实用性表示担忧。另一些人强调了液压碟刹的优势以及系统可能具有的坚固可靠性,与可能寿命较短的“颠覆性”品牌形成对比。讨论还涉及电动自行车分类以及踏板助力、油门和手动踩踏之间的权衡。

## setHTML() 概要 `setHTML()` 方法提供了一种安全的方式将 HTML 字符串插入到 DOM 中,防止跨站脚本攻击 (XSS) 漏洞。它解析并清理输入,移除不安全的元素和属性——即使在自定义清理器配置中允许的情况下——通过隐式调用 `Sanitizer.removeUnsafe()`。 在处理不受信任的 HTML 时,应优先使用 `setHTML()`,而不是使用 `innerHTML` 或 `setHTMLUnsafe()`。它接受一个可选的 `options` 对象来指定自定义 `Sanitizer` 或 `SanitizerConfig`,控制允许哪些元素和属性。 该方法会根据上下文丢弃无效元素(例如,`<table>` 之外的 `<col>`),并移除不允许的 HTML 实体。重要的是,`setHTML()` *始终* 进行清理,并且不受 Trusted Types API 的保护。 示例:使用默认清理器会移除 `<script>` 标签和 `onclick` 属性。即使使用自定义清理器允许 `<script>`,`setHTML()` 仍然会将其移除,优先考虑安全性。

## Hacker News 讨论:Element.setHTML() 一个新的 DOM API 方法,`Element.setHTML()`,正在逐渐流行,作为 `innerHTML` 的更安全替代方案。讨论的重点在于它姗姗来迟(25年后!)、它对 Web 开发的潜在影响以及它的设计选择。 关键点包括: * **安全性:** `setHTML()` 旨在通过自动清理 HTML 输入来防止 XSS 漏洞,提供比 `innerHTML` 更安全的默认设置。它包含一个内置的清理器,并具有可配置的选项。 * **框架集成:** 开发者对它简化 Lit 等框架中安全 HTML 处理的潜力感到兴奋,减少了对外部清理库的依赖。 * **设计辩论:** 一些人质疑即使明确允许的情况下,也剥离潜在允许标签(如 `<script>`)的设计决策,更倾向于更灵活的方法。另一些人则捍卫“安全默认值”的理念。 * **浏览器支持:** 目前尚未完全标准化,但 Firefox Nightly 已经启用了它。 * **服务器端清理:** 一场相关的讨论强调了关于服务器端清理是否仍然必要的持续争论,双方都有强烈的意见。 总的来说,社区认为 `setHTML()` 是朝着更安全、更符合人体工程学的 Web 开发迈出的积极一步,尽管对它的实现细节仍存在一些保留。

## SSA:编译器优化的一个简单基础 静态单赋值 (SSA) 是一种流行的中间表示 (IR),被现代编译器如 LLVM、GCC 和 V8 使用,并且由于其在程序分析和优化方面的有效性,很大程度上取代了旧的 IR。尽管看似复杂,SSA 从根本上很简单:每个变量只被赋值一次。这会将命令式代码(一系列变异操作)转换为更易于分析的、电路状结构。 关键在于将程序表示为有向无环图 (DAG),其中操作是节点,变量是边。这使得强大的图论工具能够识别优化机会,例如冗余计算。SSA 编译器在基本块(非控制流操作序列)上操作,这些基本块通过控制流图 (CFG) 连接。 为了实现 SSA 形式,会使用诸如引入“phi”节点(或块参数)之类的技术来合并跨基本块的值。然后,优化利用这种结构,例如通过依赖分析识别和消除冗余加载和存储。进一步的简化,如死代码消除和 CFG 重构,可以优化代码。 SSA 的强大之处在于它能够以解耦程序顺序和分析的方式表示代码,从而实现高效且积极的优化。它证明了一个简单、设计良好的 IR 可以显著提高编译器性能。

## 为什么使用SSA编译器? - 摘要 这次Hacker News讨论围绕静态单赋值(SSA)形式的优势和复杂性,它是编译器中的一个关键中间表示。虽然被广泛使用,但最初的博文引发了争论,因为它假定读者熟悉SSA,而没有立即定义它。 SSA的核心原则是为每个变量只赋值一次,将代码转换为更具函数式、电路般的结构。这简化了数据流分析,使死代码消除和寄存器分配等优化变得更加容易。然而,它也带来了内存管理和别名问题。 对话强调,SSA并非旨在完全消除变异,而是为了使数据依赖关系显式化。它是一种强大的代码优化工具,通过实现高效的变量级数据流来提高效率,但需要理解其权衡。像Sea-of-Nodes这样的替代方案存在,但SSA仍然占据主导地位,因为它有效地促进了复杂的编译器优化。最终,SSA为单一表示形式提供了一个坚实的基础,允许迭代优化过程。

Django 6.0 beta 1现已发布,可供测试,标志着6.0发布周期的第二阶段。这个beta版本允许开发者预览即将发布的功能和在开发中的发布说明中详细描述的变更。 现在到最终发布之间,重点将放在修复新功能中的bug以及来自先前Django版本的回归问题。翻译将在发布候选版本阶段最终确定。当前计划是在大约一个月后发布候选版本,然后在12月3日发布最终的Django 6.0版本。 **重要提示:**此beta版本**不**适用于生产环境。Django团队鼓励社区进行测试和通过问题跟踪器报告bug,以确保最终发布的稳定性。您可以在下载页面或PyPI上找到beta包。

## Django 6.0 Beta 1 发布 - 摘要 Django 6.0 beta 1现已发布,引入了一个新的`tasks`框架,旨在取代Celery等异步任务管理解决方案。用户对这一新增功能感到兴奋,希望在框架内获得更“开箱即用”的体验。 然而,讨论强调了对第三方软件包的持续依赖,这些软件包提供了一些人认为应该成为Django核心组件的功能,包括设置管理、日志记录、数据库URL解析和模板。静态类型集成对一些人来说也存在挑战。 新的任务框架目前缺乏内置的worker支持,但旨在为社区开发的后端提供标准化的接口。对Celery脆弱性的担忧以及对更简单解决方案的渴望正在推动对这种新方法的兴趣。 兼容性问题,例如与旧版Python(如Ubuntu 22.04的3.10)的兼容性,已被注意到,需要用户使用`pyenv`等工具或升级其Python环境。总体而言,该版本受到了热情欢迎,特别是其简化任务管理的潜力。

该项目为针对GPU的Rust代码建立了一个形式化验证框架,弥补了确保安全性和正确性的关键差距。目前,虽然Rust越来越多地用于GPU编程(通过Rust-CUDA & rust-gpu),但其GPU子集缺乏形式化语义,并且与底层GPU执行模型(NVIDIA的PTX)没有经过验证的连接。 该研究将Rust的中级中间表示(MIR)的一个子集翻译成Coq证明助手,并将其链接到PTX内存模型的现有形式化描述。这使得能够证明编译的*正确性*——确保Rust的原子和同步操作正确地翻译成PTX,从而保持内存安全。 一个原型工具链可以自动将Rust-CUDA内核翻译成Coq,从而可以验证诸如屏障正确性和无数据竞争等属性。虽然最初的工作侧重于简化的MIR子集,但该框架旨在最终纳入Rust的所有权和借用规则,以实现完整的端到端验证。这项工作为经过验证的GPU编译奠定了基础,类似于CompCert,并为更安全、更可靠的大规模并行Rust程序提供了保障。

## Cuq:Rust GPU内核的形式化验证 - 摘要 一个名为Cuq(现正在改名为Rocq)的新研究原型旨在形式化验证Rust GPU内核的安全性。由nsomani开发,Cuq将Rust的MIR(中间层IR)连接到Coq证明助手,将CUDA内核翻译成Coq语义,以针对PTX内存模型进行验证。目前,它支持基本的内核,包括saxpy和原子标志操作。 该项目的目标不是一个完整的验证编译器,而是朝着确保Rust GPU代码中正确使用原子操作、屏障和内存范围迈出的一步。 然而,该项目启动引发了对其原始名称的大量讨论,原因是意外的双关语以及潜在的不当解读,从而导致了改名工作。尽管存在命名争议,评论员们仍然承认该项目有潜力提高GPU上大规模并行Rust代码的可靠性,而该领域容易出现竞争条件和未定义行为。有人讨论过可能将cuTile作为目标,而不是PTX,以便更轻松地解析,但形式化推理可能会更困难。

{{ strings.get('title') }} {{ strings.get('subtitle') }} {{ strings.reset }}

## Tonnetz:一个和声网络 最近的Hacker News讨论提到了Tonnetz(thetonnetz.com),这是一个可视化音乐音符之间和声关系的图表——在德语中字面意思是“音调网络”。这个概念也被称为“格子”,由Gary Garrett的博客(讨论中提供了链接)推广,并探讨了替代标准调音的方法,如十二平均律和纯律。 用户分享了资源,包括调音系统的音频比较以及在Tonnetz上动画化的歌曲。讨论涉及了历史背景,指出它是由欧拉发现的,以及在手风琴上实现类似系统的失败尝试。 几位评论者推荐了进一步阅读的材料,包括具有挑战性的书籍《和声体验》和《大胆的和谐音响》,以便更深入地了解Tonnetz和相关调音系统的数学和理论基础。一位用户,一位独立作曲家,发现Tonnetz对创作编曲很有启发。

## Ovi:音视频生成模型 - 摘要 Ovi 是一种新的音视频生成模型,类似于 Veo-3,能够从文本或文本-图像输入创建同步的 5 秒视频,帧率为 24 FPS(最高分辨率可达 960x960)。它具有专门的、从头训练的 50 亿参数音频分支,以实现高质量的声音。 主要特点包括灵活的输入选项(文本生成视频、图像生成视频或组合)、对各种宽高比的支持,以及尽管在 720x720 分辨率的数据上训练,却具有令人惊讶的良好放大能力。用户可以使用提示中的特殊标签来控制语音和音频。 Ovi 可通过 Wavespeed.ai 和 HuggingFace 访问,ComfyUI 集成正在开发中。它需要至少 32GB 的 GPU VRAM,但 FP8 量化可以将此降低到 24GB,但会略微牺牲质量。该项目欢迎贡献,并提供详细的安装说明和配置选项以进行自定义。

## Ovi:AI驱动的音视频生成 - Hacker News 总结 Character AI 的 Ovi 是一款新的开源音视频生成模型,正在引起AI爱好者的兴奋。用户报告显示,即使需要强大的计算能力(5090 GPU 生成 5 秒的片段需要 4-5 分钟),也能在本地创建逼真的内容(虽然文本到视频有时带有 90 年代的审美)。 该模型利用了 Wan2.2 等技术,被视为对 OpenAI 和 Runway 等公司闭源替代方案的有力竞争者。讨论强调了AI工具的快速融合以及个人创造高质量内容的可能性。 虽然目前存在局限性——跨场景的一致性仍然是一个挑战——但评论员设想未来AI能够实现个性化媒体,甚至可能由个人创作出完整的电影。人们也提出了对伦理影响和潜在滥用的担忧,以及对竞争格局和在这个快速发展的领域中分销重要性的观察。

华硕ROG Ally Xbox掌机在运行基于Linux的Bazzite操作系统时,与原生Windows环境相比,性能显著提升。基准测试显示,在《Kingdom Come: Deliverance 2》等游戏中,帧数最高可提升32%,并且帧率更稳定,尤其是在较低功耗下。 Bazzite利用Steam的Big Picture模式,提供类似主机的使用体验,并具有可定制的电源配置文件。除了FPS之外,Linux还能大幅提升响应速度——即时唤醒,而Windows则有较长的延迟——并解决了手柄问题。 值得注意的是,Bazzite的开发非常敏捷,会根据用户反馈实时修复bug。这使得用户能够在享受Linux优势的同时,仍然可以选择双启动到Windows,以运行需要反作弊软件的游戏。Ally的硬件显然具有未开发的潜力,通过优化操作系统,超越了微软的初始设置,得以释放。

## F1车手数据在FIA网站被黑 受制于一级方程式赛事日益增长的网络安全关注,研究人员Gal Nagli、Sam Curry和作者调查了支持网站中的漏洞。他们的调查发现FIA的drivercategorisation.fia.com门户网站存在一个关键缺陷——该系统用于管理车手等级(青铜到白金)和超级驾照资格。 通过一个简单的HTTP PUT请求,该团队能够利用批量赋值漏洞,将他们的用户权限提升到管理员级别。这使得他们可以完全访问网站的管理仪表盘,并泄露敏感数据,包括车手护照扫描件、简历、执照信息、密码哈希和内部FIA通讯。 研究人员在发现可以访问马克斯·维斯塔潘的个人信息后,立即停止了测试,认识到此次漏洞的严重性。他们于2025年3月6日立即向FIA披露了该漏洞,促使该网站被下线。FIA于2025年6月10日确认已修复该漏洞,此次披露遵循协调的发布时间表。此事件凸显了处理高知名人士和组织敏感数据的系统中的重大安全问题。

## 黑客新闻摘要:FIA网站漏洞 一位安全研究员(ian.sh,在Sam Curry的协助下)发现了FIA(赛车运动管理机构)网站的严重漏洞,导致可以访问敏感的个人信息,包括马克斯·维斯塔潘的护照详情。这些问题源于糟糕的安全措施,例如在应用文件使用后将其存储在实时服务器上,以及缺乏强大的访问控制。 评论员强调了一系列失败,强调绝不能信任*任何*数据——即使来自可信来源,并指出客户端安全漏洞仍然普遍存在。许多人分享了通过浏览器开发者工具利用网站漏洞的类似经历。 在发现问题报告的当天,FIA就将网站下线,并迅速实施了修复,这被认为对于大型组织来说速度相对较快。讨论还涉及了在没有漏洞赏金计划的情况下进行此类“道德黑客行为”的法律风险,以及负责任披露的重要性。 许多评论员提倡更广泛地采用漏洞披露计划(VDP)和安全编码实践。

## 从 Rust 到 jj:一种模式的识别 作者详细描述了他们从 2012 年发现 Rust 编程语言,到目前对名为 jj 的新型版本控制系统 (VCS) 感到兴奋的历程。 最初被 Rust 吸引,是因为它有潜力填补低级编程领域的空白——在没有垃圾回收的情况下提供内存安全——他们对 Mozilla 的支持以及 Firefox 采用的前景印象深刻。 这导致了大量的参与,包括共同编写“The Book”。 现在,作者在 jj 中看到了类似的模式。 他们发现了一个市场需求(与 Git 并行增量采用)、一个由经验丰富的开发人员领导的强大团队,以及谷歌等公司日益增长的内部使用。 像 Rust 一样,jj 拥有充满激情的社区,并解决了新用户的问题。 受到与他们带领他们进入 Rust 的相同直觉的驱动,以及一位值得信赖的同事的推荐,作者现在正在离开 Oxide 的职位,加入一家名为 ERS C 的新公司,该公司正在 jj 之上构建一个开发者协作平台,这表明他们对 jj 的未来充满信心。 他们强调,识别新兴技术的潜力通常取决于强大的团队、清晰的市场定位和热情的社区。

更多

联系我们 contact @ memedata.com