It is also depending on how you programmed in your old code. The more hard code you use, the harder to upgrade. For example, in your menu object, you call a window, and this menu is associated with a window, you then have a real problem when upgrade with new version of PB. PB will tell you your window object cannot be upgarde because of the older menu object when generating the window. And it will tell you the menu object cannot be generated because of the older window object when generating the menu object... the circle.
The solution in this case, is to export your object to a text file, and tempararily comment out objects, and late take out comment after successfully upgrade all objects.
Anyway, the hard code is always bad programming, should avoid as much as you can.
Addison Lu