PowerUps

一个命令行工具,用于帮助我管理大型的 Xcode Instruments XML 文件。它的设计目的是在 Xcode 运行之前处理大量的包含文件和变量,然后在运行结束后删除自动生成的代码。

Diagram of the powerups workflow

用法

这个工具有一个非常具体的用例,主要针对大型 XML 文件(例如 Xcode Instruments)。我在这里写了一篇包含更多细节的博文:https://trycombine.com/posts/xcode-powerups/

一般来说,以下是将工具集成到 Xcode Instruments 项目的步骤

  1. 添加一个构建/预操作(Build/pre-action)来对你的 instruments 文件运行 powerups
/path/to/powerups \
 $SOURCE_ROOT/Instrument/MyInstrument.instrpkg \
  --includesFolder \
 $SOURCE_ROOT/Instrument \
  --variables \
 $SOURCE_ROOT/Instrument/global-variables.json \
  --overwrite \
 > $SOURCE_ROOT/logs/powerups-log.txt

这个预操作将运行编译后的 powerups 二进制文件,并向其提供 instrpkg 文件、给定的包含目录和全局变量文件。输出将保存到给定的日志文本文件中。

  1. 添加一个运行/后操作(Run/post-action)来清理你的 instrpkg 文件,以便在运行后可以根据需要手动编辑它
/path/to/powerups \
 $SOURCE_ROOT/Instrument/MyInstrument.instrpkg \
  --cleanup \
  --overwrite \
&& > $SOURCE_ROOT/logs/powerups-log.txt

就是这样。当您运行仪器进行测试时,powerups 将处理包含文件和变量,将生成的内容添加到包文件中,最后,当您关闭 Instruments 并停止运行时,它将从您的源文件中删除生成的内容。

示例

对于一个简单的命令行用例,请运行 repo 根目录中的 run-demo.sh 脚本。

许可

版权所有 (c) Marin Todorov 2022 此代码根据 MIT 许可证提供。