the code as the request identificator. Otherwise, the sent header will be
ignored and the request ID will either be taken from Apache's mod_unique
module or will be generated by Mediawiki itself (depending on the set-up).
+* $wgEnableSpecialMute (T218265) - This configuration controls whether
+ Special:Mute is available and whether to include a link to it on emails
+ originating from Special:Email.
==== Changed configuration ====
* $wgUseCdn, $wgCdnServers, $wgCdnServersNoPurge, and $wgCdnMaxAge – These four
* $wgWikiDiff2MovedParagraphDetectionCutoff — If you still want a custom change
size threshold, please specify in php.ini, using the configuration variable
wikidiff2.moved_paragraph_detection_cutoff.
+* $wgDebugPrintHttpHeaders - The default of including HTTP headers in the
+ debug log channel is no longer configurable. The debug log itself remains
+ configurable via $wgDebugLogFile.
=== New user-facing features in 1.34 ===
-* …
+* Special:Mute has been added as a quick way for users to block unwanted emails
+ from other users originating from Special:EmailUser.
=== New developer features in 1.34 ===
* Language::formatTimePeriod now supports the new 'avoidhours' option to output
==== Changed external libraries ====
* Updated Mustache from 1.0.0 to v3.0.1.
-* Updated OOUI from v0.31.3 to v0.32.1.
+* Updated OOUI from v0.31.3 to v0.33.2.
* Updated composer/semver from 1.4.2 to 1.5.0.
* Updated composer/spdx-licenses from 1.4.0 to 1.5.1 (dev-only).
* Updated mediawiki/codesniffer from 25.0.0 to 26.0.0 (dev-only).
* Updated wikimedia/at-ease from 1.2.0 to 2.0.0.
* Updated wikimedia/remex-html from 2.0.1 to 2.0.3.
* Updated monolog/monolog from 1.22.1 to 1.24.0 (dev-only).
-* Updated wikimedia/object-factory from 1.0.0 to 2.0.0.
+* Updated wikimedia/object-factory from 1.0.0 to 2.1.0.
* Updated wikimedia/timestamp from 2.2.0 to 3.0.0.
* Updated wikimedia/xmp-reader from 0.6.2 to 0.6.3.
+* Updated mediawiki/mediawiki-phan-config from 0.6.0 to 0.6.1 (dev-only).
* …
==== Removed external libraries ====
Use MediaWiki\Session\SessionManager instead.
* The wfGetLBFactory global function, deprecated in 1.27, has been removed.
Use MediaWikiServices::getInstance()->getDBLoadBalancerFactory().
+* The internal method OutputPage->addScriptFile() will no longer silently drop
+ calls that use an invalid path (i.e., something other than an absolute path,
+ protocol-relative URL, or full scheme URL), and will instead pass them to the
+ client where they will likely 404. This usage was deprecated in 1.24.
+* Database::reportConnectionError, deprecated in 1.32, has been removed.
+* APIEditBeforeSave hook, deprecated in 1.28, has been removed. Please see
+ EditFilterMergedContent hook for an alternative way to use this feature.
+* API module methods getDescription(), getParamDescription(), & getExamples(),
+ all deprecated in 1.25 and ignored, have been removed.
+* The API module method getDescriptionMessage(), deprecated in 1.30, has been
+ removed.
+* The JavaScript global variable wgLoadScript has been removed. Use
+ mw.util.wikiScript( 'load' ) instead.
+* ResourceLoader no longer creates the 'mw.legacy' placeholder object. It has
+ been unused since 1.16 and was deprecated in 1.22. To deprecate a property
+ in JavaScript, use mw.log.deprecate() instead.
+* The 'user.groups' module, deprecated in 1.28, was removed.
+ Use the 'user' module instead.
+* The ability to override User::$mRights has been removed.
+* Previously, when iterating ResultWrapper with foreach() or a similar
+ construct, the range of the index was 1..numRows. This has been fixed to be
+ 0..(numRows-1).
+* The ChangePasswordForm hook, deprecated in 1.27, has been removed. Use the
+ AuthChangeFormFields hook or security levels instead.
+* WikiMap::getWikiIdFromDomain(), deprecated in 1.33, has been removed.
+ Use WikiMap::getWikiIdFromDbDomain() instead.
+* The config variables $wgHtml5, $wgJsMimeType, and $wgXhtmlDefaultNamespace,
+ which were deprecated and ignored by core since 1.22, are no longer set to any
+ value, and SkinTemplate no longer emits a 'jsmimetype' key. Any extensions not
+ updated since 2013 to cope with this deprecation may now break.
* …
=== Deprecations in 1.34 ===
instead.
* Sanitizer::attributeWhitelist() and Sanitizer::setupAttributeWhitelist()
have been deprecated; they will be made private in the future.
+* SearchResult::termMatches() method is deprecated. It was unreliable because
+ only populated by few search engine implementations. Use
+ SqlSearchResult::getTermMatches() if really needed.
+* SearchResult::getTextSnippet( $terms ) the $terms param is being deprecated
+ and should no longer be passed. Search engine implemenations should be
+ responsible for carrying relevant information needed for highlighting with
+ their own SearchResultSet/SearchResult sub-classes.
+* SearchEngine::$searchTerms protected field is deprecated. Moved to
+ SearchDatabase.
+* The use of the $terms param in the ShowSearchHit and ShowSearchHitTitle
+ hooks is highly discouraged as it's only populated by SearchDatabase search
+ engines.
+* Skin::escapeSearchLink() is deprecated. Use Skin::getSearchLink() or the skin
+ template option 'searchaction' instead.
+* LoadBalancer::haveIndex() and LoadBalancer::isNonZeroLoad() have
+ been deprecated.
+* User::getRights() and User::$mRights have been deprecated. Use
+ PermissionManager::getUserPermissions() instead.
=== Other changes in 1.34 ===
* …