endi wrote:
I'll add my not-that-useful contribution to this, since I consider this feature a crucial one too.
I have something to say about backwards compatibility: I don't completely get the point.
- DB backwards compatibility was never even desired, indeed I think I could not run a 1.0 installation upon a 1.5 database, or vice versa. This is perfectly normal, and a wonderful migrator component was written to perform the needed conversion.
DB backward compatibility is necessary so that many third party extensions will work. Especially modules that operate on the content table, and other tables that third party extensions make use of.
Quote:
- File backwards compatibility does not even make much sense. The core files are very different, I'm not sure whether 1.0 templates can be installed on 1.5 and it would be pointless too, because removing all hardcoded HTML output was one of the key features in 1.5 developement.
File backwards compatibility has been dropped to an extent. You will see some files around that basically point to their 1.5 equivalents. 1.0 templates can be installed on 1.5 and many people do find this very useful, from what I understand.
Quote:
- URL backwards compatibility, too, does not exist. Non-SEF URLs are generated from database id's, which (I think) may change in the migration process. SEF urls are totally different, and better. But anyway, there is backlinks for that, right?
URL backwards compatibility does exist via the backlinks plugin. All URLs are generated by whatever the extensions passes to the Joomla! core URL generator.
Quote:
- API backwards compatibility was, too, broken. you cannot run a 1.0 component on 1.5 without the legacy plugin. And not all of the old components do run with it, either.
The legacy plugin is there for backwards compatibility purposes. While some extensions do not work on 1.5, many do, and this is because the API is backwards compatible.
Quote:
So, we don't have backwards compatibility from 1.5 towards 1.0, we just have backlinks, migrator and legacy to ensure it. And apparently it works like a charm. So why bother about backwards compatibility?
We do have b/c via these three items. Note that much work was done so that these things could be possible with the new framework.
Quote:
Now here's my point: if JNBS was merged into the trunk, then how hard would it be to make some new migrator convert old sections into level-1 nodes and old categories into level-2 nodes? I think this would be the easy part of the work, changes in the core would be much, much harder.
So, let's stop bothering about backwards compatibility... it is a minor issue, and can be obtained (relatively) easily.
Backwards compatibility may be a minor issue for you (and I really could care little about it either), but there are many people who do need backwards compatibility, and this feature was a design goal from the start. It can be obtained easily with the extensions that we have because we have maintained, for the most part, the same database.
Ian