Hacker News 中文摘要

RSS订阅

Claude Sonnet将随Xcode发布 -- Claude Sonnet Will Ship in Xcode

文章摘要

Xcode 26 Beta 7 支持 iOS 26、iPadOS 26、tvOS 26、watchOS 26、macOS Tahoe 26 和 visionOS 26 的 SDK,并支持 iOS 16 及以上版本的设备调试。该版本需在 macOS Sequoia 15.5 或更高版本上运行。已知问题包括:相关项目菜单简化以提升编辑器加载速度,模拟器在首次构建时可能无法启动,以及编码助手状态栏的“取消”按钮有时无法停止当前执行的消息。

文章总结

Xcode 26 Beta 7 发布说明

Xcode 26 Beta 7 包含了 iOS 26、iPadOS 26、tvOS 26、watchOS 26、macOS Tahoe 26 和 visionOS 26 的 SDK。该版本支持在 iOS 16 及更高版本、tvOS 16 及更高版本、watchOS 8 及更高版本以及 visionOS 上进行设备调试。Xcode 26 Beta 7 要求 Mac 运行 macOS Sequoia 15.5 或更高版本。

已知问题

  1. 相关项目菜单简化:为了提高编辑器加载速度,相关项目菜单已简化。Callers 等助手类别仍可在助手编辑器中使用,类似功能也可通过编辑器上下文菜单或查找导航器访问。
  2. 模拟器启动失败:在升级 macOS 后首次构建时,模拟器可能无法启动,通常等待片刻后重新构建可解决问题。
  3. 编码助手取消按钮失效:有时编码助手状态栏中的“取消”按钮无法停止当前执行的消息。解决方法:直接使用编码助手导航器并点击“取消”。
  4. C++ 标准头文件错误:从早期 Xcode 26 Beta 版本升级的用户在使用 C++ 标准头文件时可能会遇到“fatal error: ‘iostream’ file not found”错误。解决方法:在终端执行命令 sudo rm -rf /Library/Developer/CommandLineTools/usr/include/c++/v1

地址消毒器

  1. C++ 容器溢出检查:地址消毒器的 C++ 容器溢出检查默认不再禁用,且无法通过 Xcode 构建设置在编译时禁用。解决方法:通过设置 ASAN_OPTIONS 环境变量为 detect_container_overflow=0 或在现有 ASAN_OPTIONS 中添加该设置来在运行时禁用检查。

应用意图

  1. UISceneAppIntent.performNavigation(forScene:) 未调用:有时 UISceneAppIntent.performNavigation(forScene:) 未被调用。

后台资源

  1. 模拟服务器面板显示问题:运行模拟服务器 (ba-serve) 时,选择身份面板可能出现在所有窗口后面且不在 Mission Control 中显示。解决方法:移动其他窗口以显示该面板。

编码助手

  1. 远程模型配置字段清除:当 Xcode 失去焦点时,远程模型配置字段会被清除。解决方法:在不切换应用的情况下完成模型设置。

编码智能

  1. Claude 集成:Claude 现在可在 Xcode 的智能设置面板中使用,用户可无缝添加现有的付费 Claude 账户并开始使用 Claude Sonnet 4。
  2. ChatGPT 模型选择:在 Xcode 中使用 ChatGPT 时,用户可以选择 GPT-4.1 或 GPT-5 开始新对话,默认设置为 GPT-5。GPT-5 针对快速、高质量的结果进行了优化,适合大多数编码任务;对于复杂任务,可选择“GPT-5 (Reasoning)”,该模型在响应前会花费更多时间思考,提供更准确的结果。
  3. 编码智能问题
    • 应用更改时,受影响文件中的断点可能会移动。
    • 编码智能模型无法同时查看或修改同名文件。
    • 先前删除的文件可能出现在修改历史中,显示为最近的编码助手对话删除。
    • 编码智能在修改包含数千行代码的文件时提供不一致的结果。

组活动

  1. DestinationVideo 示例代码编译失败:DestinationVideo 示例代码无法编译。解决方法:将 import GroupActivities 替换为 @preconcurrency import GroupActivities

图标编辑器

  1. 导出 PNG 图像问题:导出 Clear Light、Clear Dark、Tinted Light 或 Tinted Dark 的单个 PNG 图像或使用“复制图标为图像”菜单项时,可能会生成意外的深色图像。解决方法:使用导出功能从导出表中导出所有图像。

仪器

  1. CPU 计数器无数据:在 macOS 设备上以“Streaming SME Bottlenecks”或“Instruction Processing Bottlenecks”模式记录 CPU 计数器时,可能没有数据。

Metal

  1. Metal 4 调试问题:Metal 调试器中的 GPU 分析、稀疏资源和着色器调试在 Metal 4 中不可用。
  2. Metal 着色器编译问题:使用最新的 Xcode 26 Metal 工具链为 iOS 18、macOS 15、tvOS 18 和 visionOS 2 编译 Metal 着色器时,可能无法生成有效的 GPU 二进制文件。解决方法:使用 Xcode 16.3 Metal 工具链为这些部署目标编译 Metal 着色器。

Playgrounds

  1. Canvas 不显示结果:在“Legacy Previews Execution”模式下,Canvas 不显示 #Playground 块的结果。

Reality Composer Pro

  1. 发送到设备工具栏箭头绘制错误:发送到设备工具栏的向下箭头未正确绘制。解决方法:仍可点击工具栏项访问发送到设备菜单,或使用菜单栏中的“文件 > 设备”选项。

源代码编辑器

  1. 更改条未更新:从编码助手恢复更改时,更改条可能未更新。

Swift Splash

  1. 应用崩溃:Swift Splash 示例应用可能在启动时崩溃。

测试

  1. Swift 测试退出测试崩溃日志:Swift 测试退出测试可能在 /Library/ 中生成崩溃日志。
  2. 附件未记录:在使用 Swift 测试时,退出测试中的附件未记录。

Xcode 26 Beta 6 更新

  1. 编码助手禁用:在 Xcode 26 Beta 6 中,可通过设备管理禁用编码助手,方法是在配置文件中将 CodingAssistantAllowExternalIntegrations 设置为 false。

Xcode 26 Beta 5 更新

  1. 标签行为修复:修复了 Xcode 16 标签行为的模拟问题。
  2. 编码助手空消息修复:修复了编码助手在发送消息后可能显示为空的问题。
  3. 调试器修复:修复了使用 SwiftUI Previews 或命令行应用时,运行操作错误地启动重复应用实例的问题。
  4. Foundation 修复:修复了 #bundle 在从可合并库中使用时未引用正确资源包的问题。
  5. GameKit 修复:修复了推送到 App Store Connect 可能失败的问题。
  6. 图标编辑器修复:修复了用户提供的背景图像在图标编辑器中以与 2048x2048 像素图标渲染相同的比例合成的问题。
  7. Interface Builder 新功能:Interface Builder 添加了“Control Metrics”属性,用于在 Mac XIB 和 Storyboard 文档中设置 prefersCompactControlSizeMetrics
  8. 本地化修复:修复了字符串目录现在记住首选列大小的问题。
  9. Playgrounds 新功能#Playground 现在允许为 Foundation Models 框架响应提交反馈。
  10. 预览修复:修复了预览与编译缓存的工作问题。
  11. Swift/C++ 互操作性修复:修复了启用安全 Swift/C++/C 互操作性功能时,可能导致编译错误的问题。
  12. Swift 宏构建性能修复:修复了使用宏的项目在构建预览时可能失败的问题。
  13. Swift 包管理器修复:修复了 .treatAllWarnings.treatWarning 目标 API 在 SwiftPM 包清单中缺失的问题。
  14. 测试新功能:Swift 测试现在支持自定义如何处理记录的问题,并添加了 .compactMapIssues.filterIssues 特性。
  15. Xcode 修复:修复了 Xcode 预览在 macOS 26.0 Tahoe beta 4 上频繁崩溃的问题。
  16. Xcode Cloud 修复:修复了 Xcode Cloud 可能无法自动导航到新启动的构建的问题。

Xcode 26 Beta 4 更新

  1. General 修复:修复了 UTF8Viewspan 属性不支持小字符串表示的问题。
  2. Apple TV 修复:修复了 Apple TV 在从 Xcode 安装后可能无法授权并尝试启动应用的问题。
  3. 资产目录修复:修复了无法将图标编辑器图标设置为备用 iOS 图标的问题。
  4. 编码智能修复:修复了编码助手创建的文件在撤销更改时未删除的问题。
  5. Create ML App 弃用:移除了创建新样式迁移项目的支持。
  6. 图标编辑器修复:修复了图标编辑器图标在部署到旧版本 macOS 时未在 Finder、Spotlight 或 Dock 中显示的问题。
  7. 仪器新功能:源查看器现在有一个菜单项可在默认编辑器中打开文件,并添加了“显示视图层次结构”操作。
  8. Interface Builder 修复:修复了下载的 Metal 工具链在构建 Metal 项目时可能不可用的问题。
  9. 安全修复:修复了 Xcode 中的“增强安全”功能选项未添加保护的问题。
  10. Swift 编译器修复:修复了 SpanMutableSpan 的错误使用未产生编译错误的问题。
  11. Swift/C++ 互操作性修复:修复了启用安全 Swift/C++/C 互操作性功能时,注释返回指针导致编译错误的问题。
  12. Swift 宏构建性能修复:修复了使用 Swift 宏依赖项的项目可能构建失败的问题。
  13. Swift 包管理器修复:修复了 swift package migrate 失败的问题。
  14. Swift 包修复:修复了包含包的项目在重新加载后可能无法正确构建的问题。
  15. 测试修复:修复了使用 Swift 测试并启用严格内存安全功能时,@Test@Suite 和其他宏可能遇到内存安全诊断的问题。

Xcode 26 Beta 3 更新

  1. General 修复:修复了支持 Swift 中的反引号转义原始标识符的问题。
  2. 应用意图修复:修复了符合 TargetContentProvidingIntentOpenIntent 时生成编译器错误的问题。
  3. 编码智能修复:修复了使用 Git LFS 时,从修改历史恢复快照可能失败的问题。
  4. GameKit 修复:修复了测试派对代码在 Game Progress Manager 中仅与 macOS 16.0 兼容的问题。
  5. 图标编辑器修复:修复了图标编辑器图标在部署到旧版本 iOS、macOS 和 watchOS 时渲染不一致的问题。
  6. 仪器新功能:状态更改的回溯现在将在更新组中唯一更改时显示。
  7. Interface Builder 新功能:“显示库”按钮已从主工具栏移动到 Interface Builder 画布底部的栏。
  8. 本地化修复:修复了使用注释生成或符号生成 JSON 字段的字符串目录文件将自动更新其版本号的问题。
  9. Playgrounds 修复:修复了固定的 #Playground 块未正确执行的问题。
  10. 预测代码完成修复:修复了 Xcode 功能如预测代码完成和编码助手可能需要启用 Apple Intelligence 的问题。
  11. 项目编辑器修复:修复了“+ Capability”按钮未显示任何功能的问题。
  12. Reality Composer Pro 修复:修复了新 Reality Composer Pro 项目在问题导航器中可能看到错误的问题。
  13. 模拟器修复:修复了从 Xcode 安装应用到模拟器时可能失败的问题。
  14. 源代码编辑器修复:修复了主题文件中字体和颜色存储不正确的问题。
  15. Swift 修复:修复了 Observations 不可用的问题。
  16. Swift 编译器修复:修复了 SpanMutableSpan 的错误使用未产生编译错误的问题。
  17. Swift 包修复:修复了对本地包依赖项的编辑未纳入后续构建的问题。
  18. 测试修复:修复了选择 Swift.org 工具链时,Swift 测试可能未使用的问题。

Xcode 26 Beta 2 更新

  1. General 新功能:挂起和启动诊断增强了趋势洞察,突出显示在过去 4 个应用版本中影响增加的问题。
  2. General 修复:修复了 Xcode 在启动恢复 UI 状态时可能崩溃的问题。
  3. 构建系统修复:修复了支持 arm64e 架构的项目可能无法为模拟器构建的问题。
  4. GameKit 修复:修复了 Game Progress Manager 中的深层链接在 Beta 2 中无法使用的问题。
  5. Playground 宏修复:修复了 Playground 宏在构建 Mac Catalyst 时可能导致构建失败的问题。
  6. 源代码控制修复:修复了工作区接触具有许多标签或分支的 git 仓库时可能突然挂起或旋转的问题。
  7. 源代码编辑器修复:修复了 Swift 文件中语法高亮的几个主要性能问题。

Xcode 26 Beta 更新

  1. General 新功能:添加了新设置,用于控制 C++ 帧中函数名称的显示方式。
  2. General 修复:修复了文件、项目或工作区在 Xcode 中打开时被其他程序修改时显示的警报按钮标签不一致的问题。
  3. AssistantSchemas 修复:修复了采用某些电子邮件 AssistantSchemas 时可能遇到的编译错误。
  4. 后台资源修复:修复了打包工具 (ba-package) 和模拟服务器 (ba-serve) 在 Xcode 安装位置不在 /Applications/Xcode.app 时立即崩溃的问题。
  5. 构建系统新功能:引入了编译缓存作为可选功能,加速 Swift 和 C 系列语言的迭代构建/测试周期。
  6. C++ 标准库新功能:实现了 C++26、C++23 和 C++20 的多个新特性,并进行了性能和内存优化。
  7. 调试器修复:修复了调试器现在能够跟随 Swift Task 当步进操作导致 Task 迁移到不同线程时的问题。
  8. 编辑器修复:修复了 Xcode 26 中可控制编辑器标签的固定和添加时间的问题。
  9. Foundation 新功能#bundle 宏允许引用与当前 Xcode 目标关联的资源包。
  10. GameKit 新功能:除了排行榜和成就外,现在还可以在 Xcode 中采用、配置和修改挑战和活动。
  11. 仪器新功能:目标选择器已重新设计,CPU 计数器已重新设计以支持瓶颈分析,新增了 Power Profiler 仪器,SwiftUI 模板已更新,时间轴内容工具提示现在以多行呈现,仪器设置视图已重新设计以提高可读性。
  12. 仪器修复:修复了从调用树视图复制未符号化的帧时现在包括库名称的问题。
  13. 仪器弃用:移除了对 WatchKit 1.0 应用程序的分析支持,Zombies 模板已移除,SceneKit 模板已移除,之前的 SwiftUI 模板已被替换。
  14. 本地化新功能:Xcode 现在可以为手动管理的字符串生成类型安全的 Swift 符号,字符串目录编辑器现在支持同时选择和执行多个字符串的操作,Xcode 现在可以使用源代码上下文生成字符串目录中的翻译注释,字符串目录中的“%”现在会提示相关的格式说明符。
  15. Metal 新功能:Xcode 26 中的 Metal 调试器已更新以支持 Metal 4,Metal 系统跟踪已更新以支持 Metal 4,Metal 调试器现在能够将性能数据导出到 GPU 跟踪中,Metal 调试器现在具有改进的分析工作流程,Metal Performance HUD 已更新,具有新的指标和增强的用户界面。
  16. Metal 修复:修复了 xcodebuild 在构建 Metal 着色器项目时可能无法找到下载的 Metal 工具链的问题。
  17. Objective-C 运行时新功能:Objective-C 中非原子属性的并发突变现在有时会产生更可操作的崩溃。
  18. 组织者新功能:Xcode 组织器中的启动时间指标现在提供了指标建议。
  19. 预览修复:修复了预览在链接通过符号链接路径的库时可能失败的问题。
  20. RealityKit 新功能:RealityKit 不支持 Apple TV HD(第 4 代),RealityKit 从 tvOS 19.0 开始可用,并支持所有 Apple TV 4K 型号。
  21. RealityKit 修复:修复了 ParticleEmitterComponent 在 iOS、macOS 和 tvOS 上未正确渲染的问题。
  22. SceneKit 新功能:scntool CLI 现在支持将 SCN 文件(包括动画)转换为 USD 格式。
  23. SceneKit 弃用:SceneKit 现在在所有 Apple 平台上已弃用。
  24. 安全新功能:Xcode 现在提供了“增强安全”扩展模板,Xcode 现在提供了“增强安全”功能,Clang 现在支持 C 语言的 -fbounds-safety 扩展,Clang 现在支持严格的编程模型,保证 C++ 中的边界安全。
  25. 模拟器修复:修复了 visionOS 模拟器在运行 visionOS 3.0 时使用 4K 分辨率的问题。
  26. 源代码编辑器新功能:Xcode 中的预测代码完成现在支持通过按住 ^ 键逐步接受完成。
  27. Swift 修复:从 Xcode 26 开始,Swift 显式模块将成为构建所有 Swift 目标的默认模式。
  28. Swift 编译器新功能MutableSpan 现在可以作为 inout 函数参数传递,而无需启用实验性功能。
  29. Swift/C++ 互操作性新功能:Swift 编译器现在自动推断继承自 SWIFT_SHARED_REFERENCE 注释基类的 C++ 类型的 SWIFT_SHARED_REFERENCE 注释,现在可以注释 C 和 C++ 函数,使用边界和生命周期注释,使 Swift 能够导入它们而无需不安全的样板代码,Objective-C 和 Objective-C++ API 现在可以注释 SWIFT_RETURNS_RETAINEDSWIFT_RETURNS_UNRETAINED 注释,C++ 类现在可以注释 SWIFT_PRIVATE_FILEID 以允许 Swift 扩展访问其 privateprotected 成员,Objective-C 和 Objective-C++ 函数和方法现在可以使用新的 SwiftReturnOwnership: API Notes 属性指定所有权,现在可以使用 APIN

评论总结

  1. 关于AI模型的安全性和隐私问题

    • 有评论担心IDE集成AI后可能窃取网络流量,从而复制Anthropic的模型(评论1:“If you can listen to billions of tokens a day, you can basically capture all the magic.”)。
    • 也有评论指出,AI集成可能上传代码片段进行分析,对高度机密的代码构成风险(评论8:“You never know when the AI is going to upload code snippets to the server for analysis.”)。
  2. 对Xcode集成Claude的评价

    • 有用户对Xcode集成Claude表示欢迎,认为这简化了开发流程(评论3:“I’ve been using Xcode with a separate terminal to run Claude Code, which has been a painful setup.”)。
    • 但也有用户质疑为何限制用户使用Sonnet而不是Opus,认为这种限制没有必要(评论12:“Why would you limit users to Sonnet and not allow Opus when they are paying for their own account?”)。
  3. 对苹果AI能力的质疑

    • 有评论批评苹果软件质量差,质疑其AI能力(评论6:“Apple can’t even ship software that works. What are they doing shipping AI?”)。
    • 也有用户指出,尽管苹果硬件支持AI,但用户仍需付费使用IDE功能(评论7:“All that dedicated silicon taking up space on their SoC and yet you still have to input your credit card in order to use their IDE.”)。
  4. 对AI集成趋势的看法

    • 有评论认为,AI集成已成为IDE的普遍趋势,但这也带来了隐私和选择权的问题(评论5:“It’s getting harder to find IDEs that properly boycott LLMs.”)。
    • 也有用户建议,应该允许用户自由选择LLM,而不是限制特定模型(评论9:“Why not let the users use whatever LLM they like.”)。
  5. 对苹果AI战略的期待与批评

    • 有用户认为,苹果通过AI赋能开发者是正确的方向,但对其30%的抽成政策表示不满(评论10:“The AI breakthrough will not come from procedural generation of memojis - but rather enabling developers to use your platform.”)。
    • 也有评论指出,苹果的AI集成可能对相关初创公司造成冲击(评论11:“The ‘Cursor for Xcode’ startups just got Sherlocked…”)。

总结:评论中对Xcode集成Claude的评价褒贬不一,用户对其简化开发流程表示欢迎,但也对隐私、模型选择和苹果的AI能力提出质疑。同时,AI集成趋势引发了关于隐私和选择权的讨论,部分用户对苹果的AI战略表示期待,但也对其抽成政策提出批评。