On 11/06/07, Michael Daly michaeldaly@kayakwiki.org wrote:
This has been discussed a bit on Mediawiki-l. I think it's a very good idea. The discussion on the other mailing list tends toward a user-friendly interface for add/upgrade/delete of extensions, but this sort of internal interface standardization is part and parcel AKAIC.
I maintain a couple of extensions which are still backwards compatible with 1.6.x and that's required me to be ruthless, reverting incompatible changes, writing a lot of version-adaptive code while being as clean as possible about it, and in general sometimes sacrificing a potentially faster means of getting something done.
Ultimately, I think, the current means of registering a special page is certainly extremely efficient, quite well thought-out (hell, Tim Starling worked out the specifics, so...) and I am confident that the basic interface for doing so will remain stable for several major versions to come.
We have to balance backwards compatible code against taking advantage of significant opportunities to improve, and this is one of those cases where I argue in favour of the latter. To be fair to Tim, while ExtensionFunctions.php and extAddSpecialPage() did the job, it added another file, in a totally different location, which caused all manner of problems alone; sometimes, change has to happen.
Rob Church