it would be really nice to have an option that merely updates all the packages while keeping ones previous installation intact. It would be particularly useful to people who can't use the dist upgrade (because of slow internet or similar) or who don't want to take the time to reinstall all their programs.
I'm not sure what you mean. If you mean (a) that during this upgrade the packages on 5.9 would replace the ones on 5.8, I would be very surprised if programs built for 5.8 would actually work on 5.9 / 6 , since the entire toolchain 5.8 packages are built against was upgraded.
If you mean that (b) ALL packages should be upgraded during install all packages currently available for 5.8 would have to be repackaged for 5.9 / 6 (even ones that perhaps nobody currently uses). This will mean massive amounts of work will have to be done before a version can be released, just because of this upgrade requirement.
This is a nice idea in theory, but I'm skeptical about the practical implications. If all packages you use are easily available through (g)slapt(-get), like in case (b), it wouldn't be that much harder to actually reinstall everything and get whatever you're missing from the repo's. The only thing you'd have to transfer is the stuff from your users /~ directories.
To anyone who's read my previous posts about development it will be no surprise that I prefer a clean but fully functional and bugfree system (or as close to that as possible) to some system that'll try to update everything, with all risks involved. I firmly believe that a stable system to start from is more important than wizardry gizmo's. If you don't feel comfortable about upgrading, nobody is forcing you to do so.
Just my thoughts, like to hear what other people think.