There are differences from 1 DOM version to another and they can and will break your script if you haven't designed it to handle them. For example:
If you want to use script labels like me (because they are awesome) the following will break if you use CS5 or later:
So you'd have to force the DOM to V6.0. But when doing so remember to revert back to the original version after you're done or you'll create bigger problems. This can be done like this:
app.scriptPreferences.version = 6.0; // CS4's DOM version app.activeDocument.pageItems.item("myLabel").remove(); app.scriptPreferences.version = 10.2; // Current CC DOM version
This is very inconvenient (for me at least), so I wrap functions that require DOM changes with a custom version changer to handle this for me. In regards to a list of incompatibilities? Not sure, maybe someone here has one, I know Jongware has a website with all the DOM changes from 1 version to another. This can be found here:
Hope this helps.