Can contributors use machine translation? What four open-source projects say
Most open-source conversation happens in English. For contributors who write more comfortably in another language, machine translation is often how they take part in issues, pull requests and reviews. Here is what four projects’ own policies say about it, quoted word for word.
| Project | Position | In the project’s own words | Sources |
|---|---|---|---|
| Bevy | Allowed, with the original text | “AI may be used to assist for translation and accessibility purposes, but please include the original untranslated text as well.” |
Policy for Bevy (opens in a new tab) Entry for Bevy (opens in a new tab) |
| Home Assistant | Allowed; original text recommended | “If you are using AI to translate your comments, please ensure the translation accurately reflects your intent. Including your original text in a details block shows the effort behind your contribution, helps maintainers verify the translation if needed, and keeps the conversation readable.” |
Policy for Home Assistant (opens in a new tab) Entry for Home Assistant (opens in a new tab) |
| Rust | Allowed; original text and disclosure | “Using machine-translation (e.g. Google Translate) from your native language without posting your original message is allowed but discouraged.” … “Posting both your original message and the translated version is always ok, but you must still disclose that machine-translation was used.” |
Policy for Rust (opens in a new tab) Entry for Rust (opens in a new tab) |
| Zig | LLM translation prohibited; your own language welcome | “No LLMs for translation. English is encouraged, but not required. You are welcome to post in your native language and rely on others to have their own translation tools of choice to interpret your words.” |
Policy for Zig (opens in a new tab) Entry for Zig (opens in a new tab) |
Quotes are taken from each project’s published policy, which is authoritative. Project names identify the projects only; no affiliation or endorsement is implied.
Spot an error? Open an issue (opens in a new tab) or email ecogetaway@gmail.com (opens your email application). Corrections are made promptly and logged publicly.
What the policies have in common
- Keep the original. Bevy, Home Assistant and Rust all encourage contributors to post their original text alongside a machine translation. Home Assistant gives the reason: it “helps maintainers verify the translation if needed”. Someone who reads the language can then check what was really meant.
- Two routes to the same goal. Bevy, Home Assistant and Rust let the writer translate before posting. Zig takes the opposite route: write in your own language, and each reader uses their own translation tool.
- Style is not evidence. Rust’s policy warns that “English-as-a-second-language speakers, neurodivergent people, and over-explainers are the most likely to be accused of writing like an LLM.” Policies that rely on guessing whether text is machine-written risk penalising exactly the contributors translation is meant to include.
- Scope. These clauses cover communication: issues, comments and reviews. Translating the software itself (its locale files) goes through each project’s own localization process.
A note on Fedora. An earlier proposal for Fedora’s policy said that using AI tools to “translate your thoughts or overcome language barriers is a welcome and encouraged practice”. That sentence is not in the adopted policy (version 1.0) (opens in a new tab), which instead says that “routine use of assistive tools for correcting grammar and spelling, or for clarifying language, does not require disclosure.” Proposals and adopted policies can differ; this page quotes adopted text only.
These four are the projects in the 21-project comparison whose adopted policies address machine translation directly. The others’ policies, as checked, don’t mention it.
If you contribute in a language other than English
- Read the project’s own policy first; the four above differ in what they ask for.
- Where translation is allowed, posting your original text with the translation is what these policies encourage, and it lets others check the meaning.
- Say when you used machine translation. Rust requires it; elsewhere it avoids misunderstandings.
If you maintain a project
Saying explicitly how you treat machine translation helps contributors who are not writing in their first language. The draft ai-contribution-policy.yml has a place for translations as a separate kind of contribution, so tools can read the rule as well as people.