We've recently rolled out puppet 4.2 for a new environment at work, instead of continuing w/ our puppet 2.7 rabbit hole. I must say that I quite like 4.2, particularly that puppetlabs added top down ordering of manifests, which makes writing manifests much more predictable!
We've not attempted a 2.7->4.2 migration, but I sense it coming in the future. We have forklifted some 2.7 modules over to 4.2 without too much headache. Variable scoping changes, so we had to watch out for that.
-jason