I recently upgraded from the 8.2 branch to 9.2. Since mine was so old the only option I had was the dump/restore functionality, but that's really a simple procedure, just potentially time consuming based on your data and computers. It's also good to look over the release notes between the versions so you can identify parts of your code (if you use things like plpgsql). Doing a full dump and restore to a new version can point these issues out, and you can properly test your applications and scheduled tasks against your new server before taking the plunge.
Regards,
-Brett