Hi Mariya,
I've been dealing with changes to MediaWiki core pretty much since I started doing extension development, six years and 12 versions ago. In my experience, the deprecation of methods is actually not that big an issue - even if methods or functions aren't correctly tagged as being deprecated, or they go away too soon, it's still not a big deal, because as long as you run your extensions' code regularly against the latest MediaWiki code, you can see what the issues are and have enough time to fix them before the next version is officially released. Also, there are a number of core developers who go through all the extension code in the repository and replace calls to deprecated methods, which is very helpful.
In my opinion, the bigger issue is that code should more frequently be tagged with "@since", so that we can more easily provide *backwards* compatibility. I try to have my extensions support all MediaWiki versions from the previous two years, if possible. Just today, I was trying to figure out when the class WikiPage got its start, so that I could know whether I could assume it was there. There was no top-level @since tag, so I had to go through its page history in Gerrit, which took a while to load, to find the answer (MediaWiki 1.18). Ideally, there should have been a "@since 1.18" right above the class declaration. I know it's a pain to add @since everywhere, but it really is helpful to extension developers.
-Yaron
On Tue, Feb 12, 2013 at 9:19 AM, Maria Miteva mariya.miteva@gmail.comwrote:
Hi all,
I have heard from some of you that it would be very helpful to have some stability in the exposed classes/methods of MediaWiki core for extension development and to look at MediaWiki as a programming interface. I raised this as an issue with the developer community and was told that this has been a priority since version 1.18 and the following email by Daniel.
http://www.gossamer-threads.com/lists/wiki/wikitech/267106
I was wondering if you could provide similar examples of issues you have faced where methods have been removed without warning and deprecation or any other unexpected changes, which have affected your upgrades and the extensions you use since then. It has only been two major releases since then, so maybe the problem has actually been solved to a great extend but people have not been able to feel it much yet. Are you still experiencing such problems?
Mariya
Mediawiki-enterprise mailing list Mediawiki-enterprise@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-enterprise