Limitations

This page attempts to document the limitations of the MediaWiki software.

What MediaWiki isn't designed for edit

Per-page access restrictions edit

MediaWiki is not designed to be a Content Management System (CMS), or to protect sensitive data. To the contrary, it was designed to be as open as possible. Thus it does not inherently support full featured, air-tight protection of private content.

Branching page histories edit

If you are used to a version control system like Git, you may expect to be able to fork pages do some changes and then have other people pull these changes in. While MediaWiki does have a Merge history special page, such a workflow is generally not supported by MediaWiki. MediaWiki very much focuses on the wiki workflow, which revolves around immediate edits (although with the Moderation extension edits can be in a moderation queue).

Limitations addressed by extensions edit

Extensions edit

MediaWiki is very extensible and many limitations of MediaWiki can be addressed by installing an extension.

  • While the Version special page lists all installed extensions in a wiki, if a wiki has many extensions, it can be hard to figure out for users which extension enables which feature.
  • Extensions generally do not underlie a central quality control.

Documentation edit

Documentation of extensions:

  • Extensions usually do not include their documentation, instead the documentation of extensions usually resides on mediawiki.org, which can be problematic when you want to use MediaWiki without an internet connection.

Documentation of the API:

API stability edit

The various APIs of MediaWiki are actively being developed and subject to change as per the following policies:

When deprecated functions get removed extensions and clients that use these functions generally have to be updated or they will break.

Specific technical limitations edit

Wikitext edit

Wikitext is notoriously difficult to parse to an abstract syntax tree because it has many intricacies. Since 2011 work is being done to replace MediaWiki's parser with a round-tripping parser in the form of the Parsoid project.