Language Packs/Language Pack Release Policy
From Mahara Wiki
< Language Packs
WARNING: this page is out-of-date since the new preferred way of translating Mahara is through PO files.
Background
Language packs are not just text files. They are actually pieces of code that contain the strings for the language they translate.
That means that even small errors in a language pack files could render a Mahara install partially unusable. In the worst case they could render it completely unusable. Depending on the kind of error, they could even create security problems.
That's why Mahara developers have put a tool in place (https://translations.launchpad.net/mahara-lang) to check language packs for a range of common errors, notify about them and prevent downloading of broken packs. The language packs from that page are processed and verified and made available for download from http://langpacks.mahara.org
Proposed Language Release Policy
If you are translating a language pack, put a big warning telling people that's only work in progress for translators, not for final users, and that they shouldn't use it.
Also, try to always use the official download page and discourage alternative download sites, even if you don't use gitorious.org to maintain your language pack. This way Mahara developers can run the checks on your language pack and users will always download a working copy of it (with most blatant security holes pluged).
Rationale: When people start translating new languages, they sometimes don't use Launchpad, because they are probably not developers and they are unfamiliar with Launchpad and its associated tools. So they setup a shared space (a view in http://mahara.org/, a dropbox account, etc.) and they use it to do the initial translation work (e.g., this is how the Spanish translation for Mahara 1.3 was done)
I'ts only after they have something more or less complete that they get in contact with Mahara core developers to ask for a place in the official language repository (or to put the new version in gitorious.org, etc.).
In the first phase (shared place outside the official language repository) no quality control is done (in the sense of errors that may break Mahara). So that's why we propose that translators clearly tell other people they shouldn't use that 'work-in-progress' version from the shared space. Unless they are going to collaborate on translation, of course.
The rest of the people should wait until that work-in-progress version is put into the official language repository, where those additional checks are run. That way they would use a non-broken version of the lanaguage pack.
Technical Details
- All files must be in the UTF-8 encoding without BOM (byte-order mark)
- All files must be valid PHP files (i.e. no syntax errors). Run "php -l myfile.php" to check.