@@ -5,9 +5,11 @@ import co.touchlab.xcode.cli.XcodeHelper.Defaults.nonApplePlugins
5
5
import co.touchlab.xcode.cli.util.BackupHelper
6
6
import co.touchlab.xcode.cli.util.Console
7
7
import co.touchlab.xcode.cli.util.File
8
+ import co.touchlab.xcode.cli.util.fromString
8
9
import co.touchlab.xcode.cli.util.Path
9
10
import co.touchlab.xcode.cli.util.PropertyList
10
11
import co.touchlab.xcode.cli.util.Shell
12
+ import co.touchlab.xcode.cli.util.Version
11
13
import kotlinx.serialization.SerialName
12
14
import kotlinx.serialization.Serializable
13
15
import kotlinx.serialization.json.Json
@@ -83,6 +85,14 @@ object XcodeHelper {
83
85
checkNotNull(versionPlist.build?.trim()) { " Couldn't get build number of Xcode at $path ." }
84
86
}
85
87
88
+ if (Version .fromString(version) >= Version .fromString(" 15.3" )) {
89
+ return XcodeInstallation (
90
+ version = version,
91
+ build = build,
92
+ path = path
93
+ )
94
+ }
95
+
86
96
val xcodeInfoPath = path / " Contents" / " Info"
87
97
val pluginCompatabilityIdResult = Shell .exec(" /usr/bin/defaults" , " read" , xcodeInfoPath.value, " DVTPlugInCompatibilityUUID" )
88
98
.checkSuccessful {
@@ -154,7 +164,7 @@ object XcodeHelper {
154
164
val version : String ,
155
165
val build : String ,
156
166
val path : Path ,
157
- val pluginCompatabilityId : String ,
167
+ val pluginCompatabilityId : String? = null ,
158
168
) {
159
169
val name: String = " Xcode $version ($build )"
160
170
}
0 commit comments