返回资讯中心
外部精选
软件工程
#开发者实时流

Swift 11月月报:CocoaPods 维护者呼吁迁移依赖管理

来源标题:What's new in Swift: November 2026 Edition

Swift 项目发布 2026 年 11 月社区月报,Swift Package Index 联合创始人 Dave Verwer 在客座撰稿中提醒仍依赖 CocoaPods 的开发者关注其现状。CocoaPods 始于 2011 年,早于 Swift 公开和 SwiftPM 出现。Verwer 目前参与 Apple 团队开发面向 Swift 的公开跨平台包注册表。

Hacker News 最新frizlab2026/11/11 · 今天15 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

文档 社区 包 博客 安装 (6.4.2) 文档 社区 包 博客 安装 (6.4.2) Swift 新动态:2026 年 11 月版 Dave Verwer Dave Lester 2026 年 11 月 11 日 欢迎阅读最新一期的“Swift 新动态”,这是一份精选摘要,汇集了 Swift 项目与社区发布的版本、新闻和讨论。 首先,我们的特邀撰稿人向仍在使用 CocoaPods 的开发者带来一个及时提醒: 大家好,我是 Dave Verwer,Swift Package Index 的联合创始人,目前是 Apple 团队的一员,致力于为 Swift 构建一个公开的跨平台包注册表。开发者如何在整个生态系统中查找、分享和管理依赖,是我们经常思考的问题。 CocoaPods 是用于 Swift 和 Objective-C Cocoa 项目的依赖管理器。该项目始于 2011 年,那时 Swift 尚未公开发布,Swift Package Manager(SwiftPM)也远未出现。对于许多从 iPhone SDK 开始开发的人来说,这是他们第一次见识到依赖管理器能做什么。如今,Swift 已扩展到各个平台,SwiftPM 已成为 Swift 运行所在的所有平台上管理依赖的标准。 继 2024 年开始的两年过渡期之后,CocoaPods 项目将于 2026 年 12 月 2 日停止接受新的 pod 和 pod 版本。距离这个日期已不足一个月,我希望确保你已注意到这一里程碑,并分享它对你们的项目意味着什么。如果你的项目仍在使用 CocoaPods,这一变化不会立即导致构建失败。所有现有的 pod 和版本仍可获取,只是处于只读状态。然而,由于 pod 作者将无法再发布更新,如果你还没有切换到 SwiftPM,现在正是时候。 你依赖中仍在维护的大多数 pod 应该已经兼容 SwiftPM,最简单的检查方式是在 Swift Package Index 上查找它们。索引中的每个包都是 SwiftPM 包,如果你发现任何不兼容的 pod,可以搜索替代方案,以免留下无人维护的依赖。 我想亲自感谢过去十五年来所有参与 CocoaPods 创建和维护的人。他们的工作塑造了社区分享代码的方式,并为 Swift 今天所拥有的现代跨平台包生态系统奠定了基础。我也要对团队管理这一过渡期并如此清晰地传达变更表示钦佩。 Tim Condon 在 ACCU 2026 的演讲《使用 Swift 逐步将 C++ 迁移到内存安全语言》展示了 Swift 的 C++ 互操作性如何让你逐步采用内存安全,而无需一次性重写所有内容。 《用 Swift 构建 Android 应用:第一手经验》是与 Pierluigi Cifani 的对话,他描述了其团队如何在 iOS 和 Android 之间共享业务逻辑和 ViewModel,各自使用原生 UI,并通过 Skip 桥接两者,应用于 Polymarket 等应用。 想用 Swift 构建 Minecraft 模组?最近 iOSDC Japan 的闪电演讲《用 Swift 创建 Minecraft Java 模组》展示了如何做到,使用 swift-java 与 Minecraft Java Edition 互操作。演讲者的博客文章包含幻灯片和更多演示视频。演讲为日语,YouTube 上提供自动配音的英语音轨。 社区亮点 你知道 Optional 有一个 take() 方法吗?John Sundell 的《使用 Swift optional 的有趣方式》超越了 if let,介绍了 take()、直接在 optional 枚举上 switch,以及一个适用于 key path 的小型 isNil(or:) 辅助方法。 当你让编译器检查整个网站时会发生什么?Sindre Sorhus 用 Swift 重建了他的网站,从 Astro 迁移过来,使失效链接和错误元数据成为构建错误。 两个服务端框架,一个团队的经验。《不要低估 Swift》分享了 EPAM 的工程师使用 Hummingbird 和 Vapor 构建后端的经验,以及这些服务与 FastAPI 和 Node.js 的对比。 Swift Testing 中 Embedded Swift 支持的预览展示了几乎整个 API,包括 @Test、#expect() 和自定义 trait,都能在 Embedded Swift 中运行。它已在 Safari 的 WASI、Raspberry Pi Pico 2、Playdate 和 Game Boy Advance SP 上进行了尝试。 新包发布 Swift Kafka Client 已达到 1.0.0。这个 Apache Kafka(事件流平台)的客户端基于 librdkafka 构建,支持结构化并发,通过 swift-metrics 提供内置指标,并支持静态 Linux 构建。 机器人技术遇上 Swift。swift-ros2 是 ROS 2(机器人框架)的原生客户端库。它运行在 Apple 平台、Linux、Windows 和 Android 上,3.1.0 版本最近新增了 topic graph API,用于发现机器人网络上可用的内容。 Perfect-NIO 是 Perfect 服务端框架的 HTTP 层,已基于 SwiftNIO 和 Swift 6 并发重写。0.1.0 版本使用 async、@Sendable 路由处理器,0.2.0 版本增加了 WebSocket 消息大小限制。 Swift Evolution Swift 项目通过 Swift Evolution 流程添加新的语言特性。以下是目前正在审查或最近被接受、将在未来 Swift 版本中推出的一些提案。 Swift 项目在 2026 年再次参与了 Google Summer of Code,将开源新人导师配对,为 Swift 及其生态系统构建新功能。 文档 社区 包 博客 安装 工具 Xcode Visual Studio Code Emacs Neovim Cursor 其他编辑器 社区 概览 Swift Evolution 多元化 导师计划 贡献 治理 行为准则 许可证 安全 配色方案偏好 浅色 深色 自动 版权所有 © 2026 Apple Inc. 保留所有权利。 Swift 和 Swift 标志是 Apple Inc. 的商标。

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →