MediaWiki development

This page might be not up to date

Page is for organizing the development of the MediaWiki software that runs Wikipedia and most other Wikimedia projects.

General

 * MediaWiki
 * Development policy -- General policy for Wikipedia script development
 * MediaWiki architecture
 * MediaWiki testing
 * How to become a MediaWiki hacker
 * Write your own MediaWiki extension
 * Write your own MediaWiki extension

Third party use

 * Running MediaWiki on Linux
 * Running MediaWiki on Windows
 * Running MediaWiki on Mac OS X
 * Running MediaWiki on FreeBSD
 * Database queries on MediaWiki
 * Sites using MediaWiki
 * MediaWiki User's Guide

Features
Links to ideas for features can be added in the "proposed" section below. It's also possible to create an RFE ("Request for Enhancement") on the SourceForge project for MediaWiki. Lastly, new feature ideas can be discussed on the wikitech-l or wikipedia-l mailing list (NOT ON THE ENGLISH LIST), although the transitory nature of the mailing list medium makes it less likely such features will be remembered or implemented. See also: MediaWiki roadmap.

Implemented

 * Wiki markup syntax
 * Dynamic dates (went missing in v1.3)
 * MediaWiki math markup
 * Wiki markup tables
 * Range blocks

New in v1.3

 * Categorization -- Categorizing MediaWiki articles (especially Wikipedia)
 * Message substitution enhancement
 * Edits as patches

Proposed

 * WYSIWYG Paint or Sound -- Some kind of Java applet or Flash program so we are capable of adding drawings and melodies quickly
 * Database abstraction -- let mediawiki run on many other RDMBS than just mysql, e.g. PostgreSQL
 * Move to ADOdb Database Abstraction Library for PHP (and Python): http://adodb.sourceforge.net/
 * Field-value pairs -- for metadata and other uses
 * Deletion management redesign
 * User details special page: Making it easier to create sysops
 * Wikipedia client - offline reader and editor (proposed) important for increasing Wikipedia presence in countries with low broadband penetration and high dial-up internet costs
 * RDF spool
 * SVG image support
 * SVG whiteboard
 * Empty page page
 * Recent Changes redesign
 * Wikipedia DTD
 * Installer ideas
 * DocBook XML export
 * WYSIWYM editor -- In-browser WYSIWYG editing (actually not Get but Mean - WYSIWYM)
 * Edit throttling -- Reduce problems from unruly bots
 * Anti-vandalism ideas -- more fine-grained options between 'open' and 'protected'
 * Reverse diff version control -- Storing diffs in the "old" table
 * Sorting lists and tables -- Extended WikiSyntax with a meta tag for sorting lists and tables.
 * Post-parse link colouring
 * E-mail notification (under construction) on page changes (watch-listed pages, user_talk pages)
 * ACL for pages
 * Extended template syntax -- for more flexible templates
 * CURRENTUSER variable - which would contain the name of the current user.

Technical

 * Cache strategy: on speeding up the server
 * Main causes of lag: To deal with a problem, we need to know its cause!
 * Cross language interface issues
 * Standards issues
 * Regarding URLs and change of URL for English pedia
 * Browser issues with Wikipedia
 * Title length
 * History compression
 * Disk usage
 * Profiling
 * Table prefix for db tables: to help admins with only one database
 * MediaWiki extensions -- hows and wherefores

Discussion

 * Server outage message
 * What is a user?
 * Thoughts on language integration

Archaic pages

 * Wikipedia4 (just questions, for now, what should this include?)''
 * Text in MediaWiki