Skip to content

Comments

Add Go 1.25.5 language package#26

Merged
koki-develop merged 13 commits intomasterfrom
add-go-1.25.5
Jan 11, 2026
Merged

Add Go 1.25.5 language package#26
koki-develop merged 13 commits intomasterfrom
add-go-1.25.5

Conversation

@koki-develop
Copy link

Summary

  • Add Go 1.25.5 language package for Piston
  • Go 1.25.5 was released on 2025-12-02 with security fixes to crypto/x509 package

Test plan

  • Run ./piston build-pkg go 1.25.5 to build the package
  • Verify the package installs correctly
  • Test code execution with the new Go version

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
koki-develop and others added 12 commits January 11, 2026 21:59
Go 1.25 introduced container-aware GOMAXPROCS which automatically
adjusts thread count based on cgroup limits. This causes issues with
Piston's isolate sandbox process limits, resulting in SIGKILL.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Go 1.25's go run command requires more time for initial execution
due to enhanced runtime features. Increase run_timeout and
run_cpu_time to 10000ms to prevent SIGKILL from timeout.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Go 1.25 with container-aware GOMAXPROCS may spawn more processes.
Significantly increase run timeout and process count limits.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Output pkg-info.json content to verify limit_overrides are applied.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
CLI sends run_timeout=3000 by default, which overrides server-side
limit_overrides. Add explicit -r 30000 -c 30000 flags to use higher
timeout values during testing.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Go doesn't have a compile step, so compile_timeout limit_overrides
is not set. Remove -c 30000 to avoid exceeding the default limit.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Go 1.25's runtime compilation creates object files larger than
the default 10MB limit. Increase to 50MB.
Lower run_timeout and run_cpu_time from 30s to 15s while keeping
max_file_size and max_process_count unchanged. This balances
resource constraints with Go 1.25.5 runtime needs.
Read limit_overrides.run_timeout from each package's metadata.json
and pass it to CLI via -r flag. This allows packages to specify
custom timeouts without hardcoding values in the workflow.
- Extend package-pr workflow to read and pass compile_timeout from metadata.json
- Add compile script for Go 1.25.5 to build source into executable binary
- Update Go 1.25.5 metadata.json with compile_timeout and compile_cpu_time overrides
- Modify Go 1.25.5 run script to execute precompiled binary instead of running source directly

This enables proper compile timeout enforcement and aligns Go 1.25.5 with the new compile step model.
Allow Go 1.25.5 to use container-aware GOMAXPROCS setting by default.
This change supports better CPU utilization and aligns with recent
increases in process and timeout limits for this version.
@koki-develop koki-develop merged commit b087c41 into master Jan 11, 2026
3 checks passed
@koki-develop koki-develop deleted the add-go-1.25.5 branch January 11, 2026 14:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant