Alexandre Debril

web programmer & open source contributor

On February 1st, I moved on the blog from a WordPress instance to a Symfony-based application hosted by OVH. Why ? There are many reasons for this :

  • I can do it. Yes it sounds stupid, but a personal blog can be built upon a few tables and a reasonable amount of code. Unless you really want to do something big, you don't need more
  • it was the perfect opportunity to work with Symfony 4 on a live but harmless project (seriously, who cares if I break my own blog ?)

But these are not the only reasons I decided to leave WordPress. The idea came when this news came out. Then this one made me think it probably was a wise decision. And recently this one came as another nail in the coffin (yes, I read The Hacker News). All these flaws are representative of something really bad : Security is not a major matter for Wordpress developers and that's the main reason I left Wordpress.

Because as an IT professional, I consider that Security MUST be an important topic in every development project. Period.

As Feed-io-bundle is now Symfony 3 compliant, the next logical move was to upgrade its demo. The application is just composed of the bundle itself and Bootstrap so the upgrade process should be easy to follow. Let's see what's in the documentation :

There are a couple of steps to upgrading a major version:

   Make your code deprecation free
   Update to the new major version via Composer
   Update your code to work with the new version

Three steps and every thing seems cristal clear, here we go.

Replace deprecated code and configuration

According to the cookbook, you'll have to replace everything that became deprecated during Symfony 2's evolution. To go through the first step, Symfony provides a package called symfony/phpunit-bridge which detects deprecated parts of your code and shows you the way to correct it. Another way to go is to pay attention to deprecations Symfony notices to your application's log, which means to manually test the whole application. Good luck with that. feedio-demo has unit tests (well in fact, one), I'll use the bridge :

phpunit

OK, that's easy. Only one configuration to fix and feedio-demo is ready for the dependencies upgrade.

Continue reading