From version 1.0 all the way up to version 5.1 (current at the time this article is being written) we’ve always implemented a step-by-step upgrade plan. This has some advantages in terms of code simplicity, but can make the user experience less pleasant.
Imagine, in fact, that you want to upgrade from V3 to V5: you’d have to upgrade from V3 to V4 first, and then from V4 to V5. It’s two upgrades, different from each other, each one with its own requirements and peculiarities.
Starting from V6, instead, you’ll be able to upgrade directly from all previous V4+ versions.
So… if you’re still running V4, you will be able to perform a direct upgrade from V4 to V6. And if you’re running V5, you will be able to upgrade directly to V6.
These direct upgrades cannot include versions 1.x through 3.x for strictly technical reasons. But all future versions (V7, V8, etc…) will feature the same direct upgrade process, as long as you’re running an original version now lower than V4.