Skip to content

Bundle ecs-go binaries with ECS, so --turbo works out of the box - #85

Merged
TomasVotruba merged 2 commits into
mainfrom
turbo-missing-binary-error
Sep 28, 2026
Merged

TomasVotruba merged 2 commits into
mainfrom
turbo-missing-binary-error

Conversation

@TomasVotruba

@TomasVotruba TomasVotruba commented Sep 28, 2026 •

Copy link
Copy Markdown
Member

Running vendor/bin/ecs --turbo in a project without ecs-go ended with a bare shell error:

sh: 1: ecs-go: not found

Now the ecs-go binary ships with ECS:

  • the release build cross-compiles ecs-go main for linux/darwin × amd64/arm64 into bin/turbo/ (stripped, ~3.7 MB each)
  • EcsGoBinaryLocator picks the one matching the current OS and arch, restoring the executable bit if archive extraction dropped it
  • lookup order: ECS_TURBO_BIN → bundled → vendor/bin/ecs-go → PATH
  • when nothing is found (e.g. Windows - ecs-go does not build there yet, it uses syscall.SYS_IOCTL), --turbo fails with a clear error instead of the shell one

@TomasVotruba TomasVotruba changed the title Fail --turbo with a clear error when the ecs-go binary is missing Bundle ecs-go binaries with ECS, so --turbo works out of the box Sep 28, 2026
@TomasVotruba
TomasVotruba merged commit 2c7cfbe into main Sep 28, 2026
9 checks passed
@TomasVotruba
TomasVotruba deleted the turbo-missing-binary-error branch September 28, 2026 19:49
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