Error while using build cache for Xcode

I’m trying to activate build cache for Xcode step in my bitrise.yaml file, if it’s “off”, my pipeline works without any issues, but if I turn it on, I hit the bellow error.

I tried several solutions from updating fastlane and ruby, but with no avail, need some help regarding this. I’ve found several mentions that it might be related to the -json flag. but it’s vague.

any help is much appreciated. thanks in Advance
Jonathan

Error log (relevant bits)

[Bitrise Analytics] Run stats: {StartTime:2026-01-15 18:58:18.162436 +0000 GMT m=+0.016612793 Success:true Error: ExitCode:0 DurationMS:314 XcodeVersion:26.0.1 XcodeBuildNumber:17A400}

[Bitrise Analytics] Proxy stats: uploaded bytes: 0 B, downloaded bytes: 0 B, hits: 0, misses: 0

[Bitrise Analytics] Short command found: -showsdks

[Bitrise Analytics] Sending invocation data to: https://xcode-analytics.services.bitrise.io/invocations/77f81e37-47e2-45af-a39c-c591849a696f

[Bitrise Analytics] Payload: { [REDACTED] }

[Bitrise Analytics] [DEBUG] PUT https://xcode-analytics.services.bitrise.io/invocations/

[Bitrise Analytics] [18:58:18] Invocation saved. Visit :backhand_index_pointing_right: https://app.bitrise.io/build-cache/invocations/xcode/

[18:58:18]: expected ‘,’ or ‘]’ after array value at line 1 column 4

[18:58:18]: xcodebuild CLI broken, please run xcodebuild and make sure it works

1 Like

Hi @jonathan.cuendet !

The error you’re seeing is likely caused by the Build Cache for Xcode step adding debug logging information to the xcodebuild output. When certain fastlane actions (or other tools) attempts to parse xcodebuild’s JSON output with the -json flag, these additional logs can interfere with the JSON parsing, causing the error you’re experiencing.

Solution:

Try setting the Silence all extra Bitrise logging input of the Build Cache for Xcode step to true.

A bit more details:

By default, the Build Cache for Xcode step adds helpful debug information to the logs, which is useful for troubleshooting cache-related issues. However, some tools (like certain fastlane actions) depend on the exact output format produced by xcodebuild. The extra debug logs can break JSON parsing or other output-dependent functionality in these tools.

Setting Silence all extra Bitrise logging to true will suppress these additional logs, allowing fastlane to correctly parse xcodebuild’s JSON output.

Let us know if this resolves the issue!

Hi!

As an additional follow up, we have released a change to our wrapper logic that silences all logging automatically if -json is passed to xcodebuild.