平台指导委员会
平台指导委员会旨在使 Swift 语言及其工具能够在新的环境中使用。平台指导委员会的主要目标是推动开发工作,将 Swift 工具链和语言运行时引入各种平台。具体而言,平台指导委员会将
- 与 Swift 核心团队合作,定义工具链改进和扩展平台支持的路线图,
- 与(即将成立的)生态系统指导委员会合作,改善在所有受支持平台上设置 Swift 开发环境的体验,
- 与语言指导委员会合作,定义 Swift 语言在特定环境中的支持,
- 为 Swift 工具链和新平台支持实施演化过程,以及
- 让社区及时了解项目路线图的变更、已接受提案的状态以及平台支持的可用性、其支持层级和要求。
成员
平台指导委员会由 Swift 社区成员组成,他们在构建系统、编译器、调试器、链接器或系统编程方面拥有技术专长和实践工程经验。指导委员会成员均为志愿者,通常任期两年。Swift 核心团队全权负责指导委员会的成员构成,并可酌情增加或移除成员。
平台指导委员会的现任成员包括
- Alastair Houghton,主席 (@al45tair)
- Danielle Lancashire (@endocrimes)
- Frederic Riss (@fredriss)
- Kuba Mracek (@kubamracek)
- Rokhini Prabhu (@rokhinip)
- Saleem Abdulrasool,核心团队代表兼成员 (@compnerd)
演化
平台指导委员会对 Swift 工具链中的底层工具具有演化权威,包括
- SwiftPM 构建系统
- 调试器
- 链接器
- 库,例如 sanitizers
- Swift 运行时的机制
- ABI 稳定性,以及
- 基于平台约束的运行时 API 可用性
定义特定平台 Swift 语言子集的提案或愿景文件将与语言指导委员会合作审查,因为它们直接影响程序语义和整体编程模型。
平台指导委员会的演化权威不延伸至
- 帮助程序员在各种平台上读取和编写代码的工具
- IDE 扩展
- SourceKit LSP
- DocC,或
- SwiftPM 依赖管理和分发功能
所有这些都属于(即将成立的)生态系统指导委员会的职权范围。
并非所有由平台指导委员会驱动的变更都将接受演化审查。演化审查对于定义新的平台支持以及对 ABI 稳定性和工具链兼容性具有重大影响的现有平台的新功能至关重要。平台指导委员会还将参与相关社区的标准流程,例如提交 DWARF 调试标准的提案以支持 LLDB。演化过程仅关注与底层平台交互的实现细节。对于为特定平台达到更高支持层级、常规错误修复、性能改进和其他生活质量变更的日常工程工作而言,演化过程也不是必需的。
沟通
平台指导委员会主要使用 Swift 论坛上的平台类别与社区沟通。它也可能会为 Swift 博客准备特别帖子。
指导委员会目前正在制定平台演化流程,当该流程的细节最终确定后,将更新本章程,但预计指导委员会将负责
- 宣布(和运行)平台演化提案审查。
- 宣布关于平台演化提案审查的决定。
- 在每次 Swift 发布后,描述该版本中新实施的平台演化提案。
- 在每次 Swift 发布后,描述未来几个即将发布的版本的当前平台演化路线图(1-2 年的时间线)。
指导委员会还将部分负责平台和运行时库文档的内容
- 它将对平台演化提案作为主要文档具有编辑权威。
- 它将与其他指导委员会一起审查与 swift.org 上托管的任何语言、库、运行时或平台文档的平台支持相关的技术内容,但该文档的编辑权威归网站工作组或其他适当的组所有。
平台演化流程
指导委员会目前正在制定平台演化流程,准备就绪后将在此处分享更多信息。
社区参与
平台指导委员会并非独立于 Swift 社区。指导委员会成员像社区的任何其他成员一样参与平台演化讨论并提出变更。当指导委员会在其内部审议过程中对提案产生新想法时,指导委员会成员应在审查被视为完成之前,将该想法带到社区进行讨论。
始终欢迎关于 Swift 平台支持、平台演化流程、特定平台演化提案或平台指导委员会职权范围内的任何其他主题的提案或反馈。与平台指导委员会沟通的主要方式是在 Swift 论坛的演化类别中发帖,无论是通过回复现有的审查、建议或其他讨论主题,还是通过在演化 > 讨论或演化 > 建议中创建新主题。社区成员也可以通过电子邮件或论坛上的私信私下联系平台指导委员会的成员。
平台指导委员会遵守Swift 行为准则。虐待、骚扰或其他不可接受行为的实例可以报告给指导委员会主席或Swift 核心团队的成员,或者通过标记行为进行审核,无论您是否是该行为的目标。