Move RELEASE-NOTES-1.32 (from REL1_32) into HISTORY
[lhc/web/wiklou.git] / RELEASE-NOTES-1.33
index 7ad78ef..c0dd84f 100644 (file)
@@ -15,34 +15,68 @@ production.
   the current parse language where available.
 
 ==== Changed configuration ====
+* Some external link searches will not work correctly until update.php (or
+  refreshExternallinksIndex.php) is run. These include searches for links using
+  IP addresses, internationalized domain names, and possibly mailto links.
+* (T193868) $wgChangeTagsSchemaMigrationStage — This temporary setting, added in
+  MediaWiki 1.32, now defaults to MIGRATION_NEW instead of MIGRATION_WRITE_BOTH.
 * …
 
 ==== Removed configuration ====
+* (T199334) $wgTagStatisticsNewTable — This temporary setting, added in
+  MediaWiki 1.32, has now been removed. When loading Special:Tags, MediaWiki
+  will now always use the `change_tag_def` instead of the `change_tag` table.
+* MediaWiki now always tidies user output, and most related
+  configuration has been removed. Thus $wgUseTidy, $wgTidyBin,
+  $wgTidyConf, $wgTidyOpts, $wgTidyInternal, and $wgDebugTidy, all
+  deprecated since 1.26, have now all been removed. The $wgTidyConfig
+  setting remains only for Remex experimental features or debugging.
 * …
 
 === New features in 1.33 ===
-* The 'GetPreferences' hook now receives an additional $context parameter.
+* (T96041) __EXPECTUNUSEDCATEGORY__ on a category page causes the category
+  to be hidden on Special:UnusedCategories.
+* Add PasswordPolicy to check the password isn't in the large blacklist.
+* The AuthManagerLoginAuthenticateAudit hook has a new parameter for
+  additional information about the authentication event.
 * …
 
 === External library changes in 1.33 ===
 
 ==== New external libraries ====
+* Added wikimedia/password-blacklist 0.1.4.
+* Added guzzlehttp/guzzle 6.3.3.
 * …
 
 ==== Changed external libraries ====
 * Updated wikimedia/xmp-reader from 0.6.0 to 0.6.1.
 * Updated wikimedia/scoped-callback from 2.0.0 to 3.0.0.
+* Updated wikimedia/ip-set from 1.2.0 to 2.0.0.
+  * The deprecated IPSet\IPSet alias was removed, Wikimedia\IPSet must be
+    used instead.
+* Updated qunitjs from 2.6.2 to 2.9.1.
 * …
 
 ==== Removed external libraries ====
 * …
 
 === Bug fixes in 1.33 ===
+* (T164211) Special:UserRights could sometimes fail with a
+  "conflict detected" error when there weren't any conflicts.
 * …
 
 === Action API changes in 1.33 ===
 * (T198913) Added 'ApiOptions' hook.
-* …
+* The JSON formatversion=2 is no longer experimental.
+* Internal API errors (those with code beginning "internal_api_error") will
+  include the exception class name in a data field named "errorclass".
+  * Class names are not guaranteed to remain stable, and in particular database
+    exceptions will now include the "Wikimedia\Rdbms\" prefix in the class name.
+  * The code including an exception class name is deprecated. In the future,
+    all internal errors will use code "internal_api_error".
+* (T212356) When using action=delete on pages with many revisions, the module
+  may return a boolean-true 'scheduled' and no 'logid'. This signifies that the
+  deletion will be processed via the job queue.
 
 === Action API internal changes in 1.33 ===
 * A number of deprecated methods for API documentation, intended for overriding
@@ -55,6 +89,10 @@ production.
   Additionally, the  'APIGetDescription' and 'APIGetParamDescription' hooks have
   been removed, as their only use was to let extensions override values returned
   by getDescription() and getParamDescription(), respectively.
+* API error codes may only contain ASCII letters, numbers, underscore, and
+  hyphen. Methods such as ApiBase::dieWithError() and
+  ApiMessageTrait::setApiCode() will throw an InvalidArgumentException if
+  passed a bad code.
 * …
 
 === Languages updated in 1.33 ===
@@ -83,6 +121,9 @@ because of Phabricator reports.
 * ParserOptions defaults 'tidy' to true now, since the untidy modes of the
   parser are being deprecated and ParserOptions::getCanonicalOverrides()
   has always been true at any rate.
+* Support for disabling tidy and external tidy implementations has been removed.
+  This was deprecated in 1.32. The pure PHP Remex tidy implementation is now
+  used and no configuration is necessary.
 * A number of deprecated methods for API documentation, intended for overriding
   by extensions, are no longer called by MediaWiki, and will emit deprecation
   notices if your extension attempts to use them:
@@ -104,7 +145,33 @@ because of Phabricator reports.
 * The hooks LanguageGetSpecialPageAliases and LanguageGetMagic, deprecated since
   1.16, have now been removed. Instead, use $specialPageAliases or $magicWords
   respectively in a $wgExtensionMessagesFiles file.
-* …
+* The following methods of the Preferences class, deprecated in 1.31, have been
+  removed:
+  * getSaveBlacklist()
+  * loadPreferenceValues()
+  * getOptionFromUser()
+  * profilePreferences()
+  * skinPreferences()
+  * filesPreferences()
+  * datetimePreferences()
+  * renderingPreferences()
+  * editingPreferences()
+  * rcPreferences()
+  * watchlistPreferences()
+  * searchPreferences()
+  * miscPreferences()
+  * generateSkinOptions()
+  * getDateOptions()
+  * getImageSizes()
+  * getThumbSizes()
+  * validateSignature()
+  * cleanSignature()
+  * getTimezoneOptions()
+  * filterIntval()
+  * filterTimezoneInput()
+  * getTimeZoneList()
+* mw.util.jsMessage(), deprecated in 1.20, was removed. Use mw.notify instead.
+* (T61113) User::EDIT_TOKEN_SUFFIX was removed. It was deprecated since 1.27.
 
 === Deprecations in 1.33 ===
 * The configuration option $wgUseESI has been deprecated, and is expected
@@ -123,9 +190,24 @@ because of Phabricator reports.
   domain ID as a key component and use makeGlobalKey().
 * (T202094) Title::getUserCaseDBKey() is deprecated; instead, please use
   Title::getDBKey(), which doesn't vary case.
+* User::getPasswordValidity() is now deprecated. User::checkPasswordValidity()
+  returns the same information in a more useful format.
+* For Linker::generateTOC() and Linker::tocList(), passing strings or booleans
+  as the $lang parameter was deprecated. The same applies to DummyLinker.
+* The PasswordPolicy 'PasswordCannotBePopular' has been deprecated. To
+  follow best practices, it is reccommended to use 'PasswordNotInLargeBlacklist'
+  instead which blacklists 100,000 commonly used passwords.
+* (T208862) Action::requiresUnblock() is now called from
+  Title::getUserPermissionsErrors() and Title::userCan(). Previously, the method
+  was only called in Action::checkCanExecute(). Actions should ensure that their
+  requiresUnblock() returns the proper result (the default is `true`).
 * …
 
 === Other changes in 1.33 ===
+* (T208871) The hard-coded Google search form on the database error page was
+  removed.
+* (T201747) Html::openElement() warns if given an element name wiht a space
+  in it.
 * …
 
 == Compatibility ==