Cakephp 2.x: failing Phing using CakePHP testsuites

Digging todays deployment scripts on CI (Continuous integration) machine, I’ve noted that no matter how many Unit tests fail, phing still thought that builds were successful. Teetering on the brink of a heart attack, I’ve started checking stage machines, and production systems, to get the prove of concept. Thankfully, the number of failed tests wasn’t too big, and patches were added shortly, but the issue remained.

It appeared that ExecTask of Phing (no matter how the script is ran), will return success, unless you start comparing the values outside of it. Solution was pretty obvious, but took some time to go through the documentation of Phing/PHPUnit/CakePHP:

CakePHP 3.x: first impressions

cake-logo

Having a pint at Octoberfest with Leonid, we have an interesting discussion about recent CakeFest held in Madrid. Apart of crazy stories about haircuts, and alcohol consumption that hotel had to witness those days, CakePHP 3.x was shortly introduced between the pints.

Since, I’ve been heavily using this framework in the last 3-4 years, and some heavy projects are still running on it, I’ve decided to have a look, to get the notion of what to expect, once the 3.x branch get to stable mode.

First impression was merely same as flood victim: in less then a split of a second, you realise how much you’ll have to re-write to comply with 3.x structure. It’s a lot! Almost a full re-write. Damn!

tumblr_inline_nczuo9C9ov1raprkq

 

Major improvements and redesigns affected:

  • ORM of Cake
  • Namespaces (namespaces, namespaces, names…)
  • Request/Response are defacto standards
  • Core became smaller, moving towards plug-ins architecture.
  • Composer-friendly.

I guess it’s the time to plan an upgrade, as not much time left for the release of stable 3.0.0 version.

For those of you willing to participate, get your coding kung-fu on the issue tracker in GitHub repo.