Skip to content

Commit 95f517d

Browse files
fortmarekclaude
andauthored
fix(cli): skip config loading for inspect commands (tuist#9315)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 213a242 commit 95f517d

1 file changed

Lines changed: 17 additions & 7 deletions

File tree

cli/Sources/TuistKit/Commands/TuistCommand.swift

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,21 @@ public struct TuistCommand: AsyncParsableCommand {
106106
if processedArguments.first == ScaffoldCommand.configuration.commandName {
107107
try await ScaffoldCommand.preprocess(processedArguments)
108108
}
109-
let config = try await ConfigLoader().loadConfig(path: path)
110-
let serverURL = try ServerEnvironmentService().url(configServerURL: config.url)
109+
let shouldTrackAnalytics = processedArguments.prefix(2) != ["inspect", "build"]
110+
&& processedArguments.prefix(2) != ["inspect", "test"]
111+
&& processedArguments.prefix(2) != ["auth", "refresh-token"]
112+
&& processedArguments.first != "analytics-upload"
113+
114+
let config: TuistCore.Tuist?
115+
let serverURL: URL?
116+
if shouldTrackAnalytics {
117+
let loadedConfig = try await ConfigLoader().loadConfig(path: path)
118+
config = loadedConfig
119+
serverURL = try ServerEnvironmentService().url(configServerURL: loadedConfig.url)
120+
} else {
121+
config = nil
122+
serverURL = nil
123+
}
111124
let command = try parseAsRoot(processedArguments)
112125

113126
if command is RecentPathRememberableCommand {
@@ -123,23 +136,20 @@ public struct TuistCommand: AsyncParsableCommand {
123136
command: command,
124137
commandArguments: processedArguments
125138
)
126-
let shouldTrackAnalytics = processedArguments.prefix(2) != ["inspect", "build"]
127-
&& processedArguments.prefix(2) != ["auth", "refresh-token"]
128-
&& processedArguments.first != "analytics-upload"
129139
if let nooraReadyCommand = command as? NooraReadyCommand {
130140
let jsonThroughNoora = nooraReadyCommand.jsonThroughNoora
131141
try await withLoggerForNoora(logFilePath: logFilePath) {
132142
try await Noora.$current.withValue(initNoora(jsonThroughNoora: jsonThroughNoora)) {
133143
try await trackableCommand.run(
134-
fullHandle: config.fullHandle,
144+
fullHandle: config?.fullHandle,
135145
serverURL: serverURL,
136146
shouldTrackAnalytics: shouldTrackAnalytics
137147
)
138148
}
139149
}
140150
} else {
141151
try await trackableCommand.run(
142-
fullHandle: config.fullHandle,
152+
fullHandle: config?.fullHandle,
143153
serverURL: serverURL,
144154
shouldTrackAnalytics: shouldTrackAnalytics
145155
)

0 commit comments

Comments
 (0)