On 11-10-09 11:20 AM, Platonides wrote:
Ashar Voultoiz wrote:
That might be me, or at least I have the same concern about logs specially when bisecting changes.
Much like we moved extension out of core, we might want to have translations moved out too. We do not really need 0day translations for day to day MW hacking.
What about commits which add a message? Most i18n commits are irrelevant for normal coding. But there are code commits which carry along i18n changes.
Commits adding messages aren't generally done by TWN so those are of course really code changes which would be committed. The few times TWN might actually change an en message I don't mind seeing it. It won't be like the mass of non-en stuff that's in the way when browsing logs.
And I don't like solutions like keeping English at a different repo, or having to split a commit in two independent repositories. Maybe subrepositories can help here?
A submodule can only handle entire dirs. I don't know about putting the canonical English in another repo, then it's not simply twn occasionally crossing repos, it's every single developer making any change that happens to also add a new message or modify a message crossing two repos to change the canonical form. Piles of non-automated commits will need to double commit and include a submodule commit id change in the parent repo's commit.
What I've been thinking isn't so much putting translations in another repo, or even TWN doing any commits anywhere at all. Frankly the whole idea of TWN reading and writing .php files has felt completely messed up to me anyways. Sure our canonical message forms can be in .php, but having the semi-automated system we use to translate to every other language we support output php files feels like a relic of a time before it existed and a band-aid hack just to make it possible for TWN to do translations back then. I'd like to make TWN the proper source for all the translations. Rather than TWN spitting out php for non-en, we have a proper generated output format for translations, and MediaWiki uses that instead of .php for our translations. Instead of TWN having to make this a commit somewhere, I think we should pull those translations right from TWN once we need them.
If we make an out-of-repo pull for i18n our preferred way of getting i18n instead of having it pushed to core as commits we can also make the method of getting absolute up-to-date translations even on non-trunk versions a non-hack.