Srikanth Lakshmanan srik.lak@gmail.com writes:
I would ideally like this to be used across non latin wikimedia properties as it helps these projects. Please let me know how to do this. Bugs on wikimedia bugzilla will do?
First, extensions that are deployed should be in subversion. Get commit access if you don't already have it and put it in SVN: http://www.mediawiki.org/wiki/Commit_access
This gets the ball rolling. The extension will need to be translated on Translatewiki before it can be deployed anywhere and putting it in SVN with the proper i18n files and such will make that happen almost automatically (http://www.mediawiki.org/wiki/Localisation).
You'll likely start to get reviews at this point for code style. You can get a jump on those by reading over http://www.mediawiki.org/wiki/Manual:Coding_conventions and starting to get your code in shape.
Next you should try to get two or more reviews by trusted developers. They will help you find any thing that doesn't have a chance of making it past the next step. Find a couple of people to look over your code and point out any flaws in it. Make sure they know you're trying to follow this guide. If they know you're trying to get your code deployed, they'll look for things that would block deployment or alternatives to deployment that you might not be aware of.
They may also point you to another extension that is already in use whose functionality duplicates what you want, or could be easily extended to do what you want. In that case, you should use your newly-acquired SVN access to work on the extension that is already in use.
Finally, anything that is deployed on the Wikimedia cluster needs to be reviewed by Tim Starling for security and scalability issues. He has written written a page on this on MediaWiki that you should read and use before getting this far: http://www.mediawiki.org/wiki/Security_for_developers
Any issues that Tim identifies *must* be addressed before anyone can deploy your code on the cluster. If you've followed the advice of earlier reviewers closely, you probably won't have too much of a problem here. Tim takes his job very seriously, though, so he may well spot a show-stopper that eluded your earlier reviewers.
Finally, you need to file a bug in Bugzilla to have it deployed. The bug will need several things:
* The “shell” keyword so that people with shell access can find the request. * The bug should point to on-wiki community consensus for having the extension installed on a particular wiki. No extension is deployed across all “non Latin Wikimedia properties” without first getting consensus from the individual wiki. * Finally, an extension that hasn't been deployed yet should acknowledge that fact and point to Tim Starling's approval for deployment.
Getting something deployed is not an easy task, but if you can meet the challenge, you know you've done something that not many people are capable of.
(I've written the above up on MediaWiki, too: http://www.mediawiki.org/wiki/Writing_an_extension_for_deployment)
Good Luck!
Mark.