Xcode 15 中的新选项 ENABLE_USER_SCRIPT_SANDBOXING 是什么?

Mic*_*tek 19 xcode

下载Xcode 15 beta并运行我的项目后,我收到一条警告,要求将项目更新为推荐的设置

启用用户脚本沙箱

建议启用用户脚本沙箱以确保构建的正确性。这将启用 ENABLE_USER_SCRIPT_SANDBOXING 构建设置。

有什么影响?什么时候应该启用/禁用它?如果我将 ie SwiftGen设置为构建阶段怎么办?

Pet*_*mer 19

如果它给您的项目带来问题,您可以根据需要在project.pbxproj中将ENABLE_USER_SCRIPT_SANDBOXING = YES更改回NO。在 Xcode GUI 中,它是一个布尔选择列表或 ASCII 文本(取决于您为“打开方式”选择的内容)。

我在自己的项目中尝试了推荐的 YES 设置,但我收到投诉说我的案例 (SwiftLint) 试图读取一些非 Swift 文件。这些是 .git、.github、projectname.xcodeproj 和与字符串本地化相关的文件。显然这 4 个文件都不是 .swift 文件,因此 SwiftLint 过于热心地打开这 4 个文件。当 SwiftLint 在沙箱中运行时,Xcode 或多或少是正确的,导致构建失败。

令人惊讶的是,我还没有发现其他人对此抱怨。但我预计 SwiftLint 将在 Xcode 14 beta 阶段解决这个问题。

在哪里更改设置以及我收到的错误消息。忽略 6779 数字 - 可能是行号而不是错误代码