windmill-labs/windmill · error
Ruby is not available because the feature is not enabled
Error message
Ruby is not available because the feature is not enabled
What it means
Compile-time cfg-gated stub: the worker was started without the `ruby` cargo feature, but a job whose ScriptLang is Ruby was routed to this arm. The message is the explanatory error for the not(feature = "ruby") build, meaning this server binary cannot execute Ruby jobs at all.
Source
Thrown at backend/windmill-worker/src/worker.rs:6792
conn,
client,
parent_runnable_path,
inner_content: &code,
job_dir,
requirements_o: lock.as_ref(),
shared_mount: &shared_mount,
base_internal_url,
worker_name,
envs,
occupancy_metrics,
modules: modules.as_ref(),
}))
.await
}
}
ScriptLang::Ruby => {
#[cfg(not(feature = "ruby"))]
return Err(anyhow::anyhow!(
"Ruby is not available because the feature is not enabled"
)
.into());
#[cfg(feature = "ruby")]
{
if run_inline {
return Err(Error::internal_err(
"Inline execution is not yet supported for this language".to_string(),
));
}
Box::pin(handle_ruby_job(JobHandlerInputRuby {
mem_peak,
canceled_by,
job,
conn,
client,
parent_runnable_path,View on GitHub (pinned to e474e8803c)
Solutions
- Rebuild the worker with `--features ruby`
- Route ruby jobs to a worker/image built with Ruby support
- Convert the script to a language enabled in your build
Example fix
// before cargo run --features quickjs // after cargo run --features quickjs,ruby
Defensive patterns
Strategy: fallback
Try / catch
try {
await runScript("ruby", code);
} catch (e) {
if (String(e).includes("Ruby is not available")) {
// rebuild with --features ruby or reroute to a ruby-enabled worker
}
} Prevention
- Include `ruby` in the worker's --features when Ruby scripts are used
- Audit images for language coverage per workspace
- Test one script per language after deploying a new worker
When it happens
Trigger: Running a script with language `ruby` on a worker compiled without `--features ruby` (e.g. baseline dev build `--features quickjs` or a slim image).
Common situations: Self-hosted minimal builds, dev environments using the fast default feature set, Ruby scripts landing on workers that lack the feature.
Related errors
- JavaScript expression evaluation requires the `quickjs` feat
- Nu is not available because the feature is not enabled
- Java is not available because the feature is not enabled
- R is not available because the feature is not enabled
- bundle failed:\n${attempt.output}
AI-assisted analysis of windmill-labs/windmill@e474e8803c (2026-09-03).
Data as JSON: /api/errors/a141d89764b4dd61.
Report an issue: GitHub.