MediaWiki 1.18

From mediawiki.org

MediaWiki 1.18 is a large release that contains many new features and bug fixes. This is a summary of the major changes of interest to users. You can consult the RELEASE NOTES file for the full list of changes in this version. It was deployed to Wikimedia wikis in Sept/Oct 2011 and released on 28 Nov 2011.

What's new?

MediaWiki 1.18 brings new features and bug fixes. Below is an overview of the most important changes; see the full release notes for an exhaustive list.

Male or female? MediaWiki 1.18 will refer to users properly!

Better gender support

Until version 1.17, MediaWiki used neutral nouns to address and identify users on their user page. In English, this was not an issue since "User" matches both genders, but in some languages the neutral gender is always masculine; for example, this would cause French-speaking female Wikipedia users to be referred to as "Utilisateur" (male user) instead of "Utilisatrice" (female user). With version 1.18, user pages reflect the user's gender, if they have specified it in their preferences. More gender support (for instance in logs and user lists) will be available in MediaWiki 1.19.

Improved file metadata support

Is that the camera upside down or just the plane? MediaWiki 1.18 handles it for you!

MediaWiki now detects the camera orientation from Exif metadata, and rotates the picture preview accordingly. The original file remains unchanged.

The overall metadata support in MediaWiki has been greatly extended. Previously, MediaWiki could only extract limited Exif metadata, and showed a subset of it on file description pages. Since 1.18, MediaWiki can extract IPTC and XMP metadata from uploaded files, and more Exif information. This includes an embedded description, author information, GPS coordinates, or copyright statement.

Improved directionality support

English (LTR) content with Hebrew (RTL) interface.

A lot of work has been done, and is still being done, to fix directionality bugs (Left-To-Right, Right-To-Left). Most notably bug 6100 is fixed, which allows to display an RTL interface on an LTR wiki properly (and vice versa). This was developed under $wgBetterDirectionality , which is now no longer used because the improvements are merged with the core code.

A positive consequence is that the page content on wikis with multiple scripts is aligned according to the direction of the selected variant. For example, on a Kazakh language wiki, selecting the Arabic script variant will align the text as RTL, while selecting the Latin or Cyrillic variant will align it as LTR.

Easily find where to customize interface messages

MediaWiki allows you to customize the user interface by editing pages in the MediaWiki namespace. However, even though they can be viewed at Special:AllMessages, the sheer number of these messages makes it difficult to find which one needs to be customized. In MediaWiki 1.18, a new pseudo-language is introduced (qqx) to help people find such messages, by displaying the messages' key instead of the actual messages. All one has to do is append ?uselang=qqx to the page's index.php/ URL (see this page as an example).

New plugin for collapsible elements

The new jQuery.makeCollapsible allows you to create collapsible tables, lists and so on, by adding the class mw-collapsible to the elements. See the manual for details.

Protocol-relative URLs

MediaWiki now supports protocol- relative URLs in links, interwiki targets and $wgServer . Protocol-relative URLs look like //example.com/wiki/Foo ; the browser will recognize this as http://example.com/wiki/Foo when following a link from an HTTP page, and https://example.com/wiki/Foo when following a link from an HTTPS page. This way, protocol-relative URLs enable a wiki to support HTTP and HTTPS while serving the same HTML for both, which means the parser cache doesn't have to be split.

Examples

  • Setting $wgServer to something like //example.com instead of http://example.com is now supported.
  • Same for iw_url in the interwiki table
  • Links like [//example.com Example] now work
    • This is required because things like [{{fullurl:Foo|action=edit}} Edit Foo] would otherwise break if $wgServer is protocol-relative

More personalisable styles and scripts

MediaWiki now automatically loads JavaScript and stylesheets more specific to each user. There is a separate CSS and JS file for each usergroup (MediaWiki:Group-sysop.css, MediaWiki:Group-autoconfirmed.js, etc), and also a CSS file for users viewing without JavaScript (MediaWiki:Noscript.css).

Improvements to the skinning system

Legacy skinning support is out the door and MediaWiki's SkinTemplate system has been enhanced to remove a lot of unnecessary boilerplate and allow custom skins to make use of the same set of page tabs organized into namespace, variant, view, and action groups that Vector introduced.

Bundled extensions

The following extensions are newly bundled with MediaWiki as of 1.18 (announcement). All are currently in use on Wikimedia sites.

  • ConfirmEdit — Various CAPTCHA techniques to try to prevent spambots and other automated tools from editing your wiki.
  • Gadgets — A system to allow users to enable or disable JavaScript or CSS tools made available to users site-wide.
  • Nuke — A special page allowing administrators to mass-delete content added by a spammer or vandal.
  • ParserFunctions — Additional parser functions (like #if and #switch ) to supplement the "magic words" present in MediaWiki. —
  • Renameuser — A special page which allows authorized users to rename user accounts.
  • Vector — Enhancements to the Vector skin.
  • WikiEditor — An improved and customizable editing toolbar developed along the Vector skin.