CocoaPods 1.0 及相应 Mac 版 App 正式发布,Podfile 的使用方式发生改变

  • 韩婷

2016 年 5 月 24 日

话题:语言 & 开发架构

经过了近五年的不懈努力,近日,CocoaPods 终于在其官方博客上宣布正式发布 CocoaPods 1.0。与此同时,公开了相应的 Mac 版 App——CocoaPods App 1.0,提供了下载方式

为了解决反馈中的大量因歧义而产生的问题,CocoaPods 1.0 相对之前的版本做了较大的改进,解决了大大小小的 700 多个问题,这些问题都可以在其更新日志上看到。

CocoaPods 1.0 加入了自动反集成功能,设置了默认插件 cocoapods-deintegrate,并完成了锁定主 specs 库(CocoaPods master specs repository)的功能。另外,CocoaPods 1.0 还可以将框架集成至实际项目,来检查可用性,以保证发布的框架在相应的平台可用。

CocoaPods 还提供了更完善的 Podfile DSL 描述,开发者尤其要注意以下几点。

  • 所有的目标文件必须在 Podfile 中明确定义,而且需要保证文件名和 Xcode 中的一致。
  • 有一些命令行选项被转移到了 Podfile 的安装选项中。
  • 添加了新的目标继承选项(target inheritance option),可以使得测试目标只能继承一个目标 app 的搜索路径。
  • 提供抽象目标(Abstract targets),减少在不同平台共享依赖的重复操作。

CocoaPods 为此提供了详细的指南,来帮助开发者适应新的版本。

CocoaPods 还提供了相应的 Mac 版 App——CocoaPods App 1.0 帮助开发者对 Podfile 文件进行管理。

此前,由于 CocoaPods 是基于 ruby ecosystem 的,为了安装和维护 CocoaPods 的不同版本,开发者需要对命令行进行必要的学习。同时,修改对 Podfile 文件,这份听起来很轻松的工作,也会浪费开发者大量的时间。CocoaPods App 应运而生,它提供了图形化界面及相关示例代码,使得开发者在为项目添加或编辑 Podfile 文件时可以快速上手。例如,它提供了完成后自动预览功能,以及一个帮助开发者预知整合后影响的接口。

CocoaPods App 可以保证开发者的行为一致性,可以使得开发者在删除相关的 CocoaPods 设置时再也不用像之前那样进行复杂的操作,同时能够保证不残留多余的文件。另外,它还支持语法高亮。

总得来说,CocoaPods 为了提高其性能及易用性做出了很大的努力,也正因如此,他们对 1.0 版本非常有信心,并认为这是 CocoaPods 的里程碑。


感谢徐川对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

语言 & 开发架构