windmill-labs/windmill · error
Invalid language: + language
Error message
Invalid language: + language
What it means
Guard converting a script language name to a file extension: the given language string is not one of the supported Windmill script languages (python, typescript, go, bash, etc.), so no canonical extension exists for it.
Source
Thrown at cli/src/commands/script/script.ts:1275
} else if (language === "ansible") {
return ".playbook.yml";
} else if (language === "csharp") {
return ".cs";
} else if (language === "nu") {
return ".nu";
} else if (language === "java") {
return ".java";
} else if (language === "ruby") {
return ".rb";
} else if (language === "rlang") {
return ".r";
} else if (language === "dbt") {
// Not an extension but a path suffix: a dbt script's content file lives
// inside the project folder, so `<base> + this` is where it belongs.
return "__dbt/" + DBT_DESCRIPTOR_NAME;
// for related places search: ADD_NEW_LANG
} else {
throw new Error("Invalid language: " + language);
}
}
export const exts = [
".fetch.ts",
".deno.ts",
".bun.ts",
".ts",
".py",
".go",
".sh",
".pg.sql",
".my.sql",
".bq.sql",
".odb.sql",
".sf.sql",
".ms.sql",
".duckdb.sql",View on GitHub (pinned to e474e8803c)
Solutions
- Use a supported language value (python, typescript, go, bash, powershell, ansible, csharp, nu, java, ruby, rlang, dbt).
- Check the metadata's language field for typos.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at cli/src/commands/script/script.ts:1275 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of windmill-labs/windmill@e474e8803c (2026-09-03).
Data as JSON: /api/errors/de0d7ff5513bd179.
Report an issue: GitHub.