MediaWiki 1.35

From mediawiki.org
Jump to navigation Jump to search
Other languages:
Bahasa Indonesia • ‎Deutsch • ‎English • ‎Nederlands • ‎Türkçe • ‎català • ‎español • ‎français • ‎italiano • ‎lietuvių • ‎magyar • ‎oʻzbekcha • ‎polski • ‎português do Brasil • ‎slovenčina • ‎čeština • ‎русский • ‎українська • ‎العربية • ‎فارسی • ‎বাংলা • ‎മലയാളം • ‎中文 • ‎日本語

MediaWiki 1.35 is the current stable long-term support release of MediaWiki. Consult the RELEASE NOTES file for the full list of changes. It was deployed on Wikimedia Foundation wikis through incremental "wmf "-branches starting 1 October 2019. The 1.35.0 stable release came out on 25 September 2020. Download mediawiki-1.35.3.tar.gz or checkout the REL1_35 branch in Git to follow this release. It will go end-of-life in September 2023.

Warning Warning: MediaWiki 1.35 no longer supports PHP 7.2. PHP 7.3.19 or later is required.
Warning Warning: MediaWiki is not yet compatible with PHP 8. See task T248925 for more information.
Red Hat 8 and CentOS 7 users should ensure Software Collections (SCL) is enabled. Red Hat updated PHP-7.3 to version 7.3.20 to support MediaWiki 1.35. See Issue 0017826, CentOS 7 with SCL enabled only provides PHP 7.3.11.

New features

  • Special pages 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 (see task T13456).
  • The form at "?action=watch" has a new dropdown list to support expiry dates for watchlist items (if $wgWatchlistExpiry is true).

New bundled extensions

MediaWiki 1.35 bundled the VisualEditor extension, which provides a visual editing experience as an alternative to the traditional source editor. It will not be necessary to setup a separate instance of Parsoid, as it is built into MediaWiki core.

In addition SecureLinkFixer and TemplateData are bundled. They force https links on your wiki, and add a tag and an api to allow editors to specify how templates should be invoked.

Action API changes

  • The 'suggest' parameter of action=opensearch has been deprecated. The API behaves the same with and without this parameter. It was previously used by $wgEnableOpenSearchSuggest to partially disable the API if set to false. Specifically, it would deny internal frontend requests carrying this parameter, whilst accepting other requests.
  • Integer-type parameters are now validated for syntax rather than being interpreted in surprising ways. For example, the following will now return a badinteger error:
    • "1.9" (formerly interpreted as "1")
    • " 1" (formerly interpreted as "1")
    • "1e1" (formerly interpreted as "1" or "10", depending on the PHP version)
    • "1foobar" (formerly interpreted as "1")
    • "foobar" (formerly intepreted as "0") parameters. Ranges should be assumed to be enforced.
  • Many user-type parameters now accept a user ID, formatted like "#12345".
  • The 'assert' parameter used by all API modules now supports the value 'anon'. When specified, the API will return the 'assertanonfailed' error if the user is logged in.
  • action=edit now supports the 'baserevid' parameter for edit conflict detection, as an alternative to 'basetimestamp'. Note that self-conflicts will continue to be ignored if 'basetimestamp' is set, but not if only 'baserevid' is set.
  • A new module was added to change the content model of existing pages. Use action=changecontentmodel. Unlike Special:ChangeContentModel, the api module does not work for pages that do not already exist.
  • If $wgWatchlistExpiry is true, the following API changes are made:
    • action=watch accepts a new 'expiry' parameter analagous to the expiry accepted by action=userrights, action=block, etc., except it must be no greater than $wgWatchlistExpiryMaxDuration , or an infinity value.
    • action=query&list=watchlistraw returns pages' watchlist expiry dates.
  • (task T249526) action=login will now return Failed rather than NeedToken on session loss.

Action API internal changes

  • The Action API now uses the Wikimedia\ParamValidator library for parameter validation, which brings some new features and changes. For the most part existing module code should work as it did before, but see subsequent notes for changes.
    • The values for all ApiBase PARAM_* constants have changed. Code should have been using the constants rather than hard-coding the values.
    • Several ApiBase PARAM_* constants have been deprecated, see the in-class documentation for details. Use the equivalent ParamValidator constants instead.
    • The value returned for 'upload'-type parameters has changed from WebRequestUpload to Psr\Http\Message\UploadedFileInterface.
  • Validation of 'user'-type parameters is more flexible. PARAM constants exist to specify the type of "user" allowed and to request UserIdentity objects rather than name strings. The default is to accept all types (name, IP, range, and interwiki) that were formerly accepted.
  • Maximum limits are no longer ignored in "internal mode".
  • The $paramName to ApiBase::handleParamNormalization() should now include the prefix.
  • (task T245931) meta=siteinfo&siprop=interwikimap no longer reports language or extralanglink when $wgInterwikiMagic is false.


Subpages