Community Central
Community Central

MediaWiki™ is the software which runs all of the wiki components on Fandom communities. Following the implementation of the Unified Community Platform, all the Fandom and Gamepedia wikis live on the same platform running MediaWiki 1.33. Since 2020 our MediaWiki version hasn't changed, as Fandom focused their efforts on releasing a new design of the user interface, FandomDesktop and FandomMobile, as well as other important functionalities like Interactive Maps. In the meantime, the Wikimedia Foundation (which maintains MediaWiki) was releasing new versions of MediaWiki. Now, it's time to update our UCP again.

This upgrade won't change the design, so our wikis will keep the same look as they have now. Our engineers will make the needed changes to be sure that our admins won't need to do design adjustments. Most of the changes will happen under the hood, meaning they're not user-facing, but they will be important to ensure that everything is still working correctly.

Like we mentioned in previous blog posts about upgrading MediaWiki, this update will bring us new moderation and content features already available for other wikis using MediaWiki and will keep our platform up to date.

See more information about the upgrade process in this blog post.

Changes

The following list contains a summary of the most relevant changes for regular users and visitors. For a detailed list, see the official release notes.

Important notes for admins

  • CSS customizations should work as previously in 1.33. This upgrade hasn't introduced relevant changes in this area and our engineers have applied changes on their own to avoid moving this work to the admins.
  • After upgrading to 1.37, you won't be able to use predefined variables in JS. Use mw.config instead. So instead of var wgSiteName, you will have to use var mw.config.get( 'wgSiteName' ).

Security

  • SECURITY: Special:UserRights exposes the existence of hidden users.
  • SECURITY: jquery.makeCollapsible allows applying event handler to any CSS selector.
  • SECURITY: Allow blocked users to access Special:ResetTokens.
  • SECURITY: Allow user to only apply protection they have right to do so via action=protect.
  • SECURITY: Fix permissions checks in undo actions.
  • SECURITY: Fix permissions check in ?action=rollback.
  • SECURITY: Require read right for most actions.

Articles and editing

  • New watchlist feature: with this feature, you can optionally select to watch a page for a limited period of time. Once the watch period has expired, the page will be automatically removed from your watchlist.
    • The form at ?action=watch has a new dropdown list to support expiry dates for watchlist items (if $wgWatchlistExpiry is true).
    • Edit page expiry dropdown should keep state after disabling/enabling.
  • The generated table of contents is now a navigation landmark role for assistive technologies.
  • All HTML5 named entities are now accepted in wikitext.
  • Whitelisted the aria-hidden HTML attribute for all elements in wikitext.
  • Allow inserting new sections named '0'.
  • In history merging, pages with a content model that does not support redirects will now be recorded as deleted if no revision is being left in the source page (that's if all revisions of the page have been merged to another).
  • Add a link from a deleted page to that page's logs.

Files

  • The file description page's alternate sizes now include 2048px.
  • MediaWiki now supports JPEG2000 files, to a limited extent.

Special pages

  • For historically Gamepedia wikis: Special:Mute has been added as a quick way for users to block unwanted emails from other users originating from Special:EmailUser.
  • Special:NewSection has been created as a shortcut to creating a new section on a page. When linked to, its subpage is used as the target (Special:NewSection/Test redirects to creating a new section in "Test"). Otherwise, it displays a basic interface to allow the end user to specify the target manually.
  • Special:Contributions/newbies has been removed for performance and usefulness reasons. Use Special:RecentChanges?userExpLevel=newcomer instead.
  • Special:NewFiles/newbies has been removed for performance and usefulness reasons. Use Special:RecentChanges?userExpLevel=newcomer&namespace=6 instead.
  • Fix display of Special:Preferences URL in password reset email.
  • Special:Userrights: If a viewer lacks 'hideuser', ignore hidden users.
  • Special:Block: Show error if a block could not be inserted or found.
  • Special:EditPage, Special:PageHistory, Special:PageInfo, and Special:Purge have been created as shortcuts for each action. Special:EditPage/Foo redirects to title=foo&action=edit, with PageHistory, PageInfo, and Purge corresponding to action= history, info, and purge respectively. When linked to, its subpage is used as the target. Otherwise, it displays a basic interface to allow the end user to specify the target manually.
  • Add watchlist clock icon to Special:RecentChanges.
  • Fix bold of watched items on Special:RecentChangesLinked.

Permissions

  • editmyuserjsredirect user right - users without this right now cannot edit JS redirects in their userspace unless the target of the redirect is also in their userspace. By default, this right is given to everyone.
  • Prevent blocked users from purging pages.
  • New options that can be requested to the staff in your wikis:
    • $wgWatchlistExpiry - enables the new watchlist expiry feature.
    • $wgWatchlistPurgeRate - sets the chance of expired watchlist items being purged on each page edit.
    • $wgWatchlistExpiryMaxDuration - is the maximum definite relative duration for watchlist expires.

External libraries

  • Upgrade jQuery from 3.4.1 to 3.6.0
  • Upgrade jquery-migrate from 3.1.0 to 3.3.2.
  • Upgrade jquery.client from 2.0.2 to 3.0.0.

Others

  • Don't include null page ids in query list for category dumps.
  • Add Edge to MediaWiki:Clearyourcache.
  • Make ApiSandbox copyable URL absolute.
  • Add a maintenance script to create bot passwords.
  • Accounts with the 'bot' right no longer have pages automatically added to the watchlist when making API edits, regardless of their preferences. This is to reduce the size of the watchlist data in the database. To add API bot edits to the watchlist, explicitly set the 'watch' option.
  • RollbackAction: fix missing pagetitle
  • Fix path for ZhConversion.php

Official release notes

For more information about the changes, check the official release notes:

See also

Further help and feedback