today I took an hour to update hma-info.de to symfony 1.2.
I hope that I can encourage more people to move their projects to a new version, cause there are new nice features in, performance is better, and we need some people to try it before we can release the final version of it soon.
The whole upgrading procedure of my site did not take longer than that hour, including the time I needed to fix some issues. Before the upgrade the page was running on symfony 1.0, is it was an upgrade to 1.1 and then to 1.2.
The first thing to play around with is: how to upgrade a project? The tricky thing here is that you have to use the old project which doesn’t know about an upgrade path, tell it to use the new symfony and then run the upgrade. Luckily there are instructions on the symfony web site that work like a charm.
The upgrade procedure asked me to delete a few files which were no longer required. Good! Less clutter means easier maintenance. Next I tried to run
symfony propel:build-all and ran into the first issue:
Propel Behavior ‘type’ unknown
This took me the longest time to find. In my schema I had a column named ‘n’. The new yml parser translates this to ‘false’ and thus makes the properties of the column become properties of the table, which are behaviors.
I took the chance to give my columns ‘n’,'p’ and ‘s’ meaningful names.
I had to update a few
save() function signatures according the symfony 1.2 upgrade guide.
The next issue I ran into was that Propel1.2 did not use a good utf-8 connection. I don’t know how it did that but the db had a utf-8 collation type but the data wasn’t. But somehow this was working before. Now I got garbage displayed. I ran a few UPDATE statements against the database, fixing the German umlauts and then I was done.
I threw away my 1.0 admin generator backend, because I anyway did not use it and regenerated a new one. Ill extend it now when I have some time this week to take advantage of the new capabilities.
I deployed and everything worked as before. But it is now even faster! And better, cause we knew, that newer is always better
Next I will update my handmade routing to utilize the new routing framework from symfony.
But first of all, I will need to redesign the frontpage. News from 2007 are no news.