wiki.techinc.nl/includes/api
C. Scott Ananian 7495f9bc15 Deduplicate language links in ParserOutput and OutputPage
Move deduplication of language links out of Parser.php and into the
ParserOutput in order to be compatible with alternate Parsers (Parsoid).
Clean up various inconsistencies: ensure deduplication also happens in
OutputPage when multiple ParserOutputs are merged into the final output,
and ensure that the deduplication in LinksUpdate is done in the same
order (first link prevails) as in Parser/ParserOutput/OutputPage.

Deprecate OutputPage::setLanguageLinks() (the matching
ParserOutput::setLanguageLinks() was deprecated in 1.42).

As a breaking change, return an array, not an array *reference*, from
ParserOutput::getLanguageLinks().  This allows us to safely modify the
internal representation of language links. As far as I can tell, no one
used the returned reference to sneakily modify the list of language
links, and there not a good way to have deprecated this before making
the breaking change.

While we're at it, we've added tests to ensure that language link
fragments are preserved.

Bug: T26502
Bug: T358950
Bug: T375005
Change-Id: I82a05a51d94782ebb9fa87ff889ca0f633b3e15c
2024-09-26 15:28:49 -04:00
..
Hook Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
i18n Localisation updates from https://translatewiki.net. 2024-09-25 09:01:40 +02:00
Validator Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiAcquireTempUserName.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiAMCreateAccount.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiAuthManagerHelper.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiBase.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiBlock.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiBlockInfoTrait.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiChangeAuthenticationData.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiChangeContentModel.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiCheckToken.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiClearHasMsg.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiClientLogin.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiComparePages.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiContinuationManager.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiCreateTempUserTrait.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiCSPReport.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiDelete.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiDisabled.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiEditPage.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiEmailUser.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiEntryPoint.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiErrorFormatter.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiErrorFormatter_BackCompat.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiExpandTemplates.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFeedContributions.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFeedRecentChanges.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFeedWatchlist.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFileRevert.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFormatBase.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFormatFeedWrapper.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFormatJson.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFormatNone.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFormatPhp.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFormatRaw.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFormatXml.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiFormatXmlRsd.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiHelp.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiHelpParamValueMessage.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiHookRunner.php Allow ApiParse to use the ArticleParserOptions hook 2024-08-29 11:33:35 -04:00
ApiImageRotate.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiImport.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiImportReporter.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiLinkAccount.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiLogin.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiLogout.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiMain.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiManageTags.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiMergeHistory.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiMessage.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiMessageTrait.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiModuleManager.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiMove.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiOpenSearch.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiOpenSearchFormatJson.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiOptions.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiOptionsBase.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiPageSet.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiParamInfo.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiParse.php Deduplicate language links in ParserOutput and OutputPage 2024-09-26 15:28:49 -04:00
ApiPatrol.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiProtect.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiPurge.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQuery.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryAllCategories.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryAllDeletedRevisions.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryAllImages.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryAllLinks.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryAllMessages.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryAllPages.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryAllRevisions.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryAllUsers.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryAuthManagerInfo.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryBacklinks.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryBacklinksprop.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryBase.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryBlockInfoTrait.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryBlocks.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryCategories.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryCategoryInfo.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryCategoryMembers.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryContributors.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryDeletedRevisions.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryDeletedrevs.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryDisabled.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryDuplicateFiles.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryExternalLinks.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryExtLinksUsage.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryFilearchive.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryFileRepoInfo.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryGeneratorBase.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryImageInfo.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryImages.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryInfo.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryIWBacklinks.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryIWLinks.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryLangBacklinks.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryLangLinks.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryLanguageinfo.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryLinks.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryLogEvents.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryMyStashedFiles.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryPagePropNames.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryPageProps.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryPagesWithProp.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryPrefixSearch.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryProtectedTitles.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryQueryPage.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryRandom.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryRecentChanges.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryRevisions.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryRevisionsBase.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQuerySearch.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQuerySiteinfo.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryStashImageInfo.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryTags.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryTokens.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryUserContribs.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryUserInfo.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryUsers.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryWatchlist.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiQueryWatchlistRaw.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiRawMessage.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiRemoveAuthenticationData.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiResetPassword.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiResult.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiRevisionDelete.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiRollback.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiRsd.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiSerializable.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiSetNotificationTimestamp.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiSetPageLanguage.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiStashEdit.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiTag.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiUnblock.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiUndelete.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiUpload.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiUsageException.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiUserrights.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiValidatePassword.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiWatch.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
ApiWatchlistTrait.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
IApiMessage.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00
SearchApi.php Add namespace to includes/api classes 2024-09-25 19:31:14 +00:00