Why that new version is not 3?
Angular is being developed in a MonoRepo. That means a single repo for everything. @angular/core, @angular/compiler, @angular/router etc are in the same repo and may have there own versions. The advantage of MonoRepo is, you don’t have to deal with the versioning of the code dependencies.
Now the problem is with the @angular/router which is already in a 3.X version. And that’s because of some active and huge developments on the router section, like route-preload.
Now releasing Angular as version 3, with it’s route on version 4 will create confusion (this confusion is already there, that’s why they want to resolve it). To avoid this confusion they decided to skip the version 3 and release with version 4.0.0, so that every major dependency in the MonoRepo are on the right track.