Since the topic came up again in the physics thread, and people want some sort of 10.0.0 relatively soon, I guess we should discuss what kind of release and compatibility plan we should adopt.
Some terms, just so we talk about the same thing: backward compatibility means that a new VP versions plays tables created for an old version correctly; forward compatibility means that an older VP version will still play tables created in a newer version correctly.
It's clear already that VP9 and VP10 won't be compatible to each other in either of these senses; the new physics engine alone ensures that VP9 tables won't play in VP10 and vice versa. No discussion here.
Should 10.0.0 be forward compatible? Probably not, it would mean that we cannot add any new features in 10.0.X except for bugfixes, editor improvements which don't impact the player, or very minor visual changes which can't cause glitches in the old version. So that's very limiting, at least if we want a 10.0.0 release soon. If we take more time and build more of the wishlist items into 10.0.0 already, then I could see it happening, maybe, but I don't think it's worth the effort with how easy it is to upgrade.
What's definitely clear is that all 10.0.X versions must be backward compatible to 10.0.0. It would be crazy if the first VP10 tables became incompatible already a few releases later.
In practice this would mean: as soon as a new 10.0.X version is released, everybody should upgrade from the older 10.0 versions to that newest one since it will still play all older VP 10.0 tables fine, and new tables might require the new features.
And for development it means: we have to put all breaking changes that we want to have in VP 10.0 into the initial 10.0.0 release; anything that might break old tables has to happen now, not later. It's ok, however, to postpone new features to a later release as long as they preserve backward compatibility (e.g.: a new Rubber object; adding it won't break old tables since they simply don't have it).
And for VP 10.1.0? I have no idea whether it should/will be backward compatible with 10.0 or not. I can imagine that that will be the version with a completely overhauled rendering engine, in which case compatibility probably won't happen. But it will be a pretty long time until we get to that point.
Happy to hear any opinions on this.
Edited by mukuste, 02 June 2014 - 10:18 PM.