问题标签 [swiftlint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
616 浏览

swift - 下一行大括号的 SwiftLint 规则,但有一些例外

我想修改.swiftlint.yml以添加一些自定义规则以在下一行强制大括号。这对我有用...

但是,在某些情况下,我希望允许在同一行使用大括号,例如:

如何更改我的正则表达式以允许单行 getter/setter 使用同一行?

0 投票
4 回答
14929 浏览

ios - 如何修复 Xcode 中由 swiftlint 引起的“尾随空格违规”警告?

我们如何一次性修复我的 iOS 项目中由 swiftlint 引起的“尾随空格违规”警告?我不想手动更正它们中的每一个。此外,我不想禁用这些警告,因此您可以跳过该建议。

我一直在尝试查找和替换选项,但我没有得到正确的关键字来解决这个问题。

图片 :

在此处输入图像描述

0 投票
2 回答
7283 浏览

ios - 如何使用 Swift 包管理器将 SwiftLint 与 iOS 应用程序集成?

我正在 Xcode 11(beta 5)中创建一个新的 iOS 应用程序,我想尝试使用 Swift Package Manager 而不是 CocoaPods 来管理依赖项。

使用 SwiftLint 和 CocoaPods 时的一个常见模式是添加 SwiftLint 作为依赖项,然后添加一个构建阶段来执行${PODS_ROOT}/SwiftLint/swiftlint;这样,所有开发人员最终都使用相同版本的 SwiftLint。

如果我尝试在 Xcode 中添加 SwiftLint 作为 SwiftPM 依赖项,我需要的可执行目标将被禁用:

添加包截图

我可以通过创建一个Package.swift没有产品或目标的虚拟对象并swift run swiftlint在我的构建阶段运行来伪造它,但它感觉很笨拙和奇怪:

有没有办法在不创建虚拟包的情况下做到这一点?或者 Swift 包管理器不是这个特定用例的正确工具?

0 投票
1 回答
2912 浏览

swift - 为我们的 Swift 包运行 SwiftLint 的简单方法

到目前为止,我发现了这篇博客文章:是时候使用 Swift 包管理器了,它建议将 SwiftLint 和其他工具与Package.swift.

我能够向包文件添加依赖项,成功构建和测试,但 SwiftLint 从未警告我语法违规。

在我们在 Xcode 项目中使用此构建阶段步骤之前:

这篇文章建议采用Komondor,如果没有 PackageConfigs,它本身就没有。这个想法是在提交期间运行 SwiftLint 命令。我试图添加这两个项目,但无法在合理的时间内让它工作。在提交期间,我看到如下警告:

非法指令:4 $komondor run pre-commit

这对于 Swift Package Manager 来说还处于早期阶段,互联网上几乎没有任何信息。

理想情况下,我希望有任何解决方案允许我们的团队自动化 SwiftLint,理想情况下不需要添加 22 个依赖项、配置文件和需要动态库。

0 投票
1 回答
335 浏览

swiftlint - 如何在特定规则上出错而不是警告

我希望构建在trailing_whitespace. 我已经添加trailing_whitespace: error到我.swiftlint.yml的但它仍然只是显示为警告。

我已经看到如何在 SwiftLint 上强制错误而不是警告?但这是关于将所有警告视为错误,我只想有选择地将某些规则视为错误。

0 投票
1 回答
239 浏览

swift - 如何在构建阶段脚本中出现致命错误

我尝试在 lint 脚本中犯致命错误。目前我能够创建一个允许我编译代码的正常错误。有没有办法在这个脚本中创建一个致命错误?

0 投票
2 回答
3677 浏览

ios - for循环内的控制语句冲突

我在我的应用程序中使用 SwiftLint。我收到 Control Statement Violation: if, for, guard, switch,whilecatch语句不应该不必要地将它们的条件或参数括在括号中。(控制语句)。该代码有什么问题?为什么我得到那个警告?提前致谢

0 投票
2 回答
804 浏览

ios - 为 Swiftlint 的某种类型的函数添加自定义规则

我正在为 SwiftLint 创建一些自定义规则,我只希望我的规则适用于某些函数中的字符串,例如只适用于 logEvent 中的字符串

analytics.logEvent('goal_completion', { name: 'lever_puzzle'});

SwiftLint Github 似乎没有提到如何仅在某些函数中将 lint 应用于字符串。

swiftLint 自定义规则:

0 投票
1 回答
279 浏览

swift - 如何仅在 SonarCloud 上导入外部问题

我正在使用 this 将 swiftLint 问题导入 Sonar sonar.swift.swiftLint.reportPaths=swiftlint.json。这不会阻止 Sonar 使用 SonarSwift 分析 swift 文件。因此,这两个工具的问题都会上传到 SonarCloud。我希望 Sonar 停止通过 SonarSwift 进行分析,只导入 SonarLint 问题。

0 投票
2 回答
1848 浏览

swift - 使用 Xcode 设置 SwiftLint

我在 Xcode 上使用运行以下脚本的设置SwiftLint

我无法使用 pods或冲泡。

为了使其SwiftLint可用,我使用 vim 在我的路径中添加了以下内容~/.bash_profile

我现在可以SwiftLint通过命令行访问任何地方。

但是,Xcode 仍然显示未安装 SwiftLint 的消息。

我不能使用其他方法来安装 Swiftlint 或更改脚本。我想我的导出路径有问题 - 它是什么?