Open
Conversation
Update the crazy-max/.github reusable workflow to the latest version to fix a JSON parsing error that occurs when PR metadata contains control characters (like newlines in the PR body). The previous version (d9a10e2) used actions/github-script@v7 which had an issue where it embedded the GitHub event payload directly into a JavaScript template literal containing JSON. When JSON.parse() encountered unescaped control characters, it would fail with: SyntaxError: Bad control character in string literal in JSON at position... The newer version (387d336) uses actions/github-script@v8 which handles JSON serialization more properly, preventing these parsing errors. Fixes the build failure seen in PR moby#654. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: David Scott <dave@recoil.org>
Fix CircleCI build failure caused by incompatible Xcode/resource class combination. The previous configuration used Xcode 14.0.0 which is not compatible with the new default m4pro.medium resource class. Changes: - Update Xcode from 14.0.0 to 14.3.1 (latest Xcode 14.x version) - Explicitly specify resource_class: m4pro.medium - This combination is supported per CircleCI's compatibility matrix Xcode 14.0.0 only supports older M1/M2 resource classes which are being deprecated in February 2026. Xcode 14.3.1 is compatible with the newer M4 Pro resource classes and will be supported long-term. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: David Scott <dave@recoil.org>
75a244d to
4c1f367
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
crazy-max/.githubreusable workflow from commitd9a10e2to387d336(latest)m4pro.mediumresource classProblem 1: GitHub Actions JSON Parsing Error
The bin-image workflow was failing with:
This occurred because the older version of the workflow used
actions/github-script@v7which embedded GitHub event payloads (containing PR body text with newlines and other control characters) directly into a JavaScript template literal containing JSON. WhenJSON.parse()tried to parse this, it encountered unescaped control characters and failed.Problem 2: CircleCI Resource Class Incompatibility
The CircleCI build was failing with:
Xcode 14.0.0 is not compatible with the new default
m4pro.mediumresource class. CircleCI changed the default macOS resource class for free plans on November 10, 2025, and Xcode 14.0.0 only supports older M1/M2 resource classes which are being deprecated in February 2026.Solution
GitHub Actions Fix
The newer version of the
crazy-max/.githubworkflow usesactions/github-script@v8which properly handles JSON serialization, preventing control character parsing errors.CircleCI Fix
Updated to use Xcode 14.3.1 (latest Xcode 14.x version) with explicit
resource_class: m4pro.mediumspecification. This combination is supported per CircleCI's compatibility matrix and ensures long-term compatibility.Testing
This should fix the build failures observed in PR #654: https://github.com/moby/vpnkit/actions/runs/20041297769/job/57478620313
🤖 Generated with Claude Code