Michal Čihař - Archive for 3/2010

Summer of Code s phpMyAdminem

phpMyAdmin se tento rok poprvé přímo účastní Google Summer of Code (předchozí dva roky byla účast pod křídly MySQL). Pokud tedy studujete a máte zájem si přes léte přividělat přispěním do phpMyAdmina, máte nejvyšší čas začít vybírat téma (můžete se inspirovat našimi nápady ) a připravit svojí přihlášku do 9. dubna 2010. Protože zájemců je hodně a míst málo, nezapomeňte se řídit radami pro studenty .

FOSDEM todo list for phpMyAdmin completed

On FOSDEM 2010 we agreed on several bigger changes in phpMyAdmin. The two of them were my proposals and I had to take care of them - migration to Git and start to use Gettext based system for translating phpMyAdmin.

The migration to Git was quite straightforward and went alive on 11th of March. There were few tiny issues afterwards, but I think everything went quite smoothly and we can happily use it right now (I especially enjoy using feature branches). I've also written little guideline to document best practices to use in our repository

After we went to Git, I immediately started on another big transition - the goal is to use standard po files for translations. The obvious solution is to use gettext for that, however the one in PHP is not really in good shape to use, so we went with php-gettext. Today I just merged gettext branch to master so it is also done (see information for developers and translators for more details regarding this).

So now these big tasks are done and I can focus on daily issues connected with GSoC and other areas.

Summer of Code is almost here

It looks like being separate organisation in GSoC definitely brings more attention than last years where we were under MySQL. Hopefully this will allow us to choose really enthusiastic students who will do their work properly and without much kicking.

So if you are interested in participation in GSoC 2010 with phpMyAdmin, please take care filling up the proposal and showing us some previous contributions (see student checklist for more hints) in order to be selected.

The dark side of this is enormous increase of mails on our devel mailing list and combined with my illness last week and vacation few days before, it makes constant volume of 50 unread mails there for me :-).

phpMyAdmin moving to Gettext

For ages, we've been using PHP variables to do the localisation. It was not really easy to maintain, but it worked quite well. However impossibility of using standard tools for translations was still annoying. So I really wanted to move to some standard, what seems to be Gettext.

Once I've played with Gettext in PHP, I realised how broken it is and that it is not a good idea to use it. However it is not that hard to implement in PHP and some people already did that. From these findings it was just a small step to implement it.

Well not really small step, because at first I've chosen the more complicated way and tried to create sed magic to move all strings to places where they belong. But this turned out to be nearly impossible and at FOSDEM I realised that there is also much easier way to just keep the messages in one file and migrate them as needed. This way the migration is really fast and not touching most of the code.

So here we are. Currently it is in separate branch (called gettext), however I hope to merge it soon, because I'm not aware of any problems right now.

The nice benefit this gives to us is web based interface for translations.

phpMyAdmin uses Git

Yesterday I finally implemented what we agreed on FOSDEM - to use Git as a version control system for phpMyAdmin.

The migration itself required just a little bit of magic, fixing other tools which were relying on Subversion was a little more work, but hopefully I did not forget anything and all pieces are now fixed (if you spot something still referring to Subversion, please drop me an email).

Immediately after completing this task, I focused on another one - move from our custom translation system to Gettext. This is almost done in gettext branch and also web interface for translations is set up, but there are still some minor issues to fix (some messages are fuzzy even when they should not be). But anyway your translations won't be lost, so feel free to contribute there.