I've never seen an OS updater that is happy to jump 3 major versions at once, especially since the old one has fallen off of even legacy support.
I've switched from Linux to FreeBSD in 1999 because I was fed up with chunky/broken binary updates. One used to be able to compile 3 versions ahead on a running system and boot into a working, clean setup. I am lazy, of course I tried (and succeeded most of the time).
But since 8 even the standard practice of migrating one major version at a time as well as updates from latest n.x to m.0 was broken for people who did not drink the "pkg and freebsd-update!" kool-aid. My allergies to that are raid controllers not supported by GENERIC kernel and a general preference to include into software only what I need - make.conf makes that really easy and maintenance is a breeze simply because we're not hit by as many security issues.
The canonical path is something like(this is documented somewhere):
8.0 > 8.4 > 9.0 > 9.3 > 10.0 > 10.4 > 11.0 > 11.2
Although I've had decent luck jumping straight from X-STABLE branches.
Yes, something like this. For 11.x I had to go to a specific patch level first (IIRC due to LLVM version bump).
I have been using FreeBSD since 3.x in 1999 and have only been bitten by source updates when I failed to follow procedure and read the UPDATING file. Anyway source update from 11.2 to 12 worked for me fine.