X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=RELEASE-NOTES-1.24;h=2ac37101096d901bfce180d589d74878a3219762;hb=896f835ea99d9bee03c2949436bd6a7371aef9e8;hp=51b6c5db9210f2a48c7da72a479a470dd9646586;hpb=c1ad8bd3a7e42e1f16f285ce1a085b58b7c3fefb;p=lhc%2Fweb%2Fwiklou.git diff --git a/RELEASE-NOTES-1.24 b/RELEASE-NOTES-1.24 index 51b6c5db92..2ac3710109 100644 --- a/RELEASE-NOTES-1.24 +++ b/RELEASE-NOTES-1.24 @@ -42,8 +42,8 @@ production. configurations are $wgDeletedDirectory and $wgHashedUploadDirectory. * The deprecated $wgUseCommaCount variable has been removed. * $wgEnableSorbs and $wgSorbsUrl have been removed. -* The UserCryptPassword and UserComparePassword hooks are no longer called. Any extensions - using them must be updated to use the Password Hashing API. +* The UserCryptPassword and UserComparePassword hooks are no longer called. + Any extensions using them must be updated to use the Password Hashing API. * $wgCompiledFiles has been removed. * $wgSortSpecialPages was removed, the listing on Special:SpecialPages is now always sorted. @@ -65,8 +65,15 @@ production. may need to adjust your default user settings to compensate for the index change. * $wgDeferredUpdateList is now deprecated, you should use DeferredUpdates::addUpdate() instead. +* $wgCanonicalLanguageLinks has been removed. Per Google recommendations, we + will not send a rel=canonical pointing to a variant-neutral page, however + we will send rel=alternate. === New features in 1.24 === +* Added new hook WatchlistEditorBeforeFormRender, allowing subscribers to + manipulate the list of pages and/or preload lots of data at once. +* Added new argument &$link in hook WatchlistEditorBuildRemoveLine, allowing the + link to the title to be changed. * Added a new hook, "WhatLinksHereProps", to allow extensions to annotate WhatLinksHere entries. * Added a new hook, "ContentGetParserOutput", to customize parser output for @@ -172,7 +179,10 @@ production. bar using the HTML5 History API. When [[Dog]] redirects to [[Animals#Dog]], the user will now see "Animals#Dog" in their browser instead of "Dog#Dog". * API token handling has been rewritten. Any API module using tokens will need - to be updated. + to be updated. See the entry below under "Action API internal changes". +* Added HTMLAutoCompleteSelectField. +* Added a new hook, "SkinPreloadExistence", to allow extensions to add titles to + link existence cache before the page is rendered. === Bug fixes in 1.24 === * (bug 50572) MediaWiki:Blockip should support gender @@ -205,21 +215,22 @@ production. * (bugs 57238, 65206) Blank pages can now be directly created. * (bug 69789) Title::getContentModel() now loads from the database when necessary instead of incorrectly returning the default content model. +* (bug 69249) wfBaseConvert() now works around PHP Bug #50175 when using GMP. -=== Web API changes in 1.24 === +=== Action API changes in 1.24 === * action=parse API now supports prop=modules, which provides the list of ResourceLoader modules that should be used to enhance the parsed content. * action=query&meta=siteinfo&siprop=interwikimap returns a new "protorel" - field which is true iff protocol-relative urls can be used to access + field which is true if protocol-relative urls can be used to access a particular interwiki map entry. -* ApiQueryLogEvents now provides logpage, which is the page ID from the +* list=logevents now provides logpage, which is the page ID from the logging table, if ids are requested and the user has the permissions. * action=edit now requires that appendtext, prependtext, or section=new be used when using the 'redirect' parameter, to prevent clients accidentally overwriting the target page with the content of the redirect. -* action=logevents will now return an error if both letitle and leprefix are +* list=logevents will now return an error if both letitle and leprefix are specified. -* action=logevents has a new parameter, lenamespace, to allow filtering by +* list=logevents has a new parameter, lenamespace, to allow filtering by namespace. * action=expandtemplates has a new parameter, prop, and a new output format. The old format is still used if prop isn't provided, but this is deprecated. @@ -231,22 +242,11 @@ production. * (bug 60734) Actions that use ApiPageSet (e.g. purge, watch, setnotificationtimestamp) will now include continuation information when using a generator. -* $wgAPIModules (and the related $wgAPIFormatModules, $wgAPIMetaModules, - $wgAPIPropModules, and $wgAPIListModules settings) now allow API modules - to be specified using a "module spec" array instead of a plain class name. - A "module spec" is an associative array containing at least the 'class' key - for the module's class, and optionally a 'factory' key for the factory function - to use for the module. This is intended for extensions that want control over - the instantiation of their API modules, to allow for proper dependency - injection. * Removed 'props' and 'errors' from action=paraminfo, as they have extremely limited use and are generally inaccurate, unmaintained, and impossible to - properly maintain. Also removed the corresponding methods from ApiBase and - the 'APIGetPossibleErrors' and 'APIGetResultProperties' hooks. + properly maintain. * Formats dbg, dump, txt, wddx, and yaml are now deprecated. * action=paraminfo now indicates when a parameter is specifying a submodule. - Internally, a new param type 'submodule' is available to indicate this which - automatically queries the list of submodule names from the ApiModuleManager. * The iwurl parameter to prop=iwlinks is deprecated in favor of iwprop=url, for parallelism with prop=langlinks. * All tokens should be fetched from action=query&meta=tokens; all other methods @@ -254,6 +254,78 @@ production. parameter for each module is documented in the action=help output and is returned from action=paraminfo. +=== Action API internal changes in 1.24 === +* Methods for handling continuation are added to ApiResult, so actions other + than query that use generators can easily support continuation. +* $wgAPIModules (and the related $wgAPIFormatModules, $wgAPIMetaModules, + $wgAPIPropModules, and $wgAPIListModules settings) now allow API modules + to be specified using a "module spec" array instead of a plain class name. + A "module spec" is an associative array containing at least the 'class' key + for the module's class, and optionally a 'factory' key for the factory function + to use for the module. This is intended for extensions that want control over + the instantiation of their API modules, to allow for proper dependency + injection. +* A new param type 'submodule' is available. Parameters of this type will take + the list of valid values from the module's ApiModuleManager for the group + corresponding to the parameter name. +* The 'APIGetPossibleErrors' and 'APIGetResultProperties' hooks are no longer used. +* API token handling has been rewritten. Any API module using tokens will need + to be updated: + * ApiBase::needsToken now returns a token type instead of boolean true when a + token is needed. Returning true will throw an exception. See documentation + of that method for details. + * Information for the 'token' parameter is automatically set by ApiBase + getFinalParams and getFinalParamDescription. + * ApiBase::getTokenSalt has been removed. + * The hooks APIQueryInfoTokens, APIQueryRevisionsTokens, + APIQueryRecentChangesTokens, APIQueryUsersTokens, and + ApiTokensGetTokenTypes are deprecated, but are still called to support + backwards-compatible token access. +* ApiBase::validateLimit and ApiBase::validateTimestamp are now protected. +* The following methods have been deprecated and may be removed in a future + release: + * ApiBase::getResultProperties + * ApiBase::getFinalResultProperties + * ApiBase::addTokenProperties + * ApiBase::getRequireOnlyOneParameterErrorMessages + * ApiBase::getRequireMaxOneParameterErrorMessages + * ApiBase::getRequireAtLeastOneParameterErrorMessages + * ApiBase::getTitleOrPageIdErrorMessage + * ApiBase::getPossibleErrors + * ApiBase::getFinalPossibleErrors + * ApiBase::parseErrors + * ApiQuery::setGeneratorContinue + * ApiQueryBase::checkRowCount + * ApiQueryBase::titleToKey + * ApiQueryBase::keyToTitle + * ApiQueryBase::keyPartToTitle + * ApiQueryInfo::getTokenFunctions + * ApiQueryInfo::resetTokenCache + * ApiQueryInfo::getEditToken + * ApiQueryInfo::getDeleteToken + * ApiQueryInfo::getProtectToken + * ApiQueryInfo::getMoveToken + * ApiQueryInfo::getBlockToken + * ApiQueryInfo::getUnblockToken + * ApiQueryInfo::getEmailToken + * ApiQueryInfo::getImportToken + * ApiQueryInfo::getWatchToken + * ApiQueryInfo::getOptionsToken + * ApiQueryRecentChanges::getTokenFunctions + * ApiQueryRecentChanges::getPatrolToken + * ApiQueryRevisions::getTokenFunctions + * ApiQueryRevisions::getRollbackToken + * ApiQueryUsers::getTokenFunctions + * ApiQueryUsers::getUserrightsToken +* The following classes have been deprecated and may be removed in a future + release: + * ApiFormatDbg + * ApiFormatDump + * ApiFormatTxt + * ApiFormatWddx + * ApiFormatYaml + * ApiTokens + === Languages updated in 1.24 === MediaWiki supports over 350 languages. Many localisations are updated @@ -283,6 +355,13 @@ changes to languages because of Bugzilla reports. the "headelement" template key are no longer supported. Setting $useHeadElement = false; is no longer supported and will not cause old keys like "headlinks", "skinnameclass", etc. to be defined. +* BREAKING CHANGE: The files commonElements.css, commonContent.css and + commonInterface.css (in skins/common/) have been removed. Skins may no longer + rely on their presence and include them in their style modules. ResourceLoader + modules introduced in MediaWiki 1.23 should be loaded instead: + - skins/common/commonElements.css → 'mediawiki.skinning.elements' module + - skins/common/commonContent.css → 'mediawiki.skinning.content' module + - skins/common/commonInterface.css → 'mediawiki.skinning.interface' module * The deprecated 'SpecialVersionExtensionTypes' hook was removed. * (bug 63891) Add 'X-Robots-Tag: noindex' header in action=render pages. * SpecialPage no longer supports the syntax for invoking wfSpecial*() functions. @@ -365,6 +444,10 @@ changes to languages because of Bugzilla reports. Running update.php on MySQL < v5.1 may result in heavy processing. * RSS and Atom feeds generated by MediaWiki no longer include a fallback stylesheet. It was ignored by most browsers these days anyway. +* SpecialSearchNoResults hook has been removed. SpecialSearchResults is now + called unconditionally. +* TablePager::getBody() is now 'final' and can't be overridden in subclasses. +* TablePager::getBody() is deprecated, use getBodyOutput() or getFullOutput(). ==== Renamed classes ==== * CLDRPluralRuleConverter_Expression to CLDRPluralRuleConverterExpression