Skip to content

Commit 681e320

Browse files
authored
Add improvement of performance in SpecValidation on validateSettings (#1522)
1 parent 126339f commit 681e320

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

Sources/ProjectSpec/SpecValidation.swift

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,27 +17,30 @@ extension Project {
1717
errors.append(.invalidSettingsGroup(group))
1818
}
1919
}
20+
2021
for config in settings.configSettings.keys {
21-
if !configs.contains(where: { $0.name.lowercased().contains(config.lowercased()) }) {
22-
if !options.disabledValidations.contains(.missingConfigs) {
23-
errors.append(.invalidBuildSettingConfig(config))
24-
}
22+
if !configs.contains(where: { $0.name.lowercased().contains(config.lowercased()) }),
23+
!options.disabledValidations.contains(.missingConfigs) {
24+
errors.append(.invalidBuildSettingConfig(config))
2525
}
2626
}
2727

2828
if settings.buildSettings.count == configs.count {
2929
var allConfigs = true
30-
for buildSetting in settings.buildSettings.keys {
30+
outerLoop: for buildSetting in settings.buildSettings.keys {
3131
var isConfig = false
3232
for config in configs {
3333
if config.name.lowercased().contains(buildSetting.lowercased()) {
3434
isConfig = true
35+
break
3536
}
3637
}
3738
if !isConfig {
3839
allConfigs = false
40+
break outerLoop
3941
}
4042
}
43+
4144
if allConfigs {
4245
errors.append(.invalidPerConfigSettings)
4346
}

0 commit comments

Comments
 (0)