Laravel vs CakePHP?

I have looked into Laravel again a few days ago (as some friends wanted to start a new project with me, but I had the deciding vote on whether we go with CakePHP or Laravel) and to be fair, the problems I had with using Laravel back in early-2018 (when I tried 5.5 LTS) are still standing there and actually have become slightly worse.
Laravel has so many major versions that had a heavy impact on existing tutorials and codebases that it’s really easy to get lost (and do note that even “minor” versions can contain pretty big breaking changes, seriously, I had multiple apps build in Laravel that broke pretty badly the instant I upgraded them to the latest laravel version).
CakePHP has only 3 major versions.

  • Version 1 is pretty damn dead and I can’t really find much info on it (which, to be fair, can be a good thing).
  • Version 2 is still supported, with quite some information on it, though you can get lost at times when using version 3 (especially if you’re just starting out)
  • Version 3 is the current recommended version, with quite some information on it (and quite some information from version 2 can quite easily be adapted to version 3 if you know what you’re looking for)
  • Version 4 is currently in the works and according to what I’ve heard (and I need a citation on this because I can’t find the source), migrating from 3.x to 4.x should be fairly simple.

To add to this, Laravel has a pretty rapid release life-cycle for breaking versions, averaging about 1 year.

While I love some of the features Laravel has, I personally feel like the tradeoffs on them are just too big.
Some of this features include (but are not limited to):

  • Blade* (templating engine)
  • Laravel Echo* (WebSockets, like Ratchet, but less tricky to implement)
  • Homestead* (all-in-one development environment)
  • Cashier** (billing)
  • Statamic** (CMS)
  • Cachet** (Monitoring)
  • Mix** (Front-End stuff like SASS and WebPack)

I’m currently mainly working on a in-house CMS for my company using CakePHP and so far, using CakePHP feels really nice (albeit with some challenges at times).

* = Seriously, we could use something like this
** = Would be nice to have