wiki.techinc.nl/includes
daniel e8632ab0f6 [MCR] Factor PageUpdater out of WikiPage
This introduces PageUpdater to replace WikiPage::doEditContent,
and DerivedPageDataUpdater, to replace WikiPage::doEditUpdates
and WikiPage::prepareContentForEdit.

See docs/pageupdater.txt for a description of their
functionality.

MCR migration notes:

* The interface of PageUpdater is expected to
remain mostly stable after this patch. Code that has been using
WikiPage::doEditContent can be confidently migrated to using the
new mechanism for revision creation.

* This patch keeps the code inside PageUpdater largely aligned
with the old code in WikiPage, to make review easier to to avoid
mistakes. It is intended to be refactored further, moving
application logic into stateless services.

* DerivedPageDataUpdate is intended as a stepping stone for further
refactoring. Its behavior is designed to be compatible with
callback code that currently relies on
WikiPage::prepareContentForEdit. Much of the code that currently
lives in DerivedPageDataUpdate should be factored out into
services, all behavior relevant to calling code should be exposed
via narrow interfaces.

Bug: T174038
Bug: T196653
Change-Id: If610c68f4912e89af616cdcac1d35a1be3946afa
2018-06-14 13:22:13 +00:00
..
actions Replace call_user_func_array(), part 1 2018-06-04 23:39:04 -07:00
api Merge "Expose sort orders from search engine in ApiQuerySearch" 2018-06-13 16:29:36 +00:00
auth Replace call_user_func_array(), part 2 2018-06-07 20:19:26 -07:00
cache Use PHP 7 '??' operator instead of if-then-else 2018-06-12 23:14:18 +02:00
changes [MCR] Factor PageUpdater out of WikiPage 2018-06-14 13:22:13 +00:00
changetags Merge "PHP: Use short ternary operator (?:) where possible" 2018-06-11 23:06:59 +00:00
clientpool Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
collation Use PHP 7 '??' operator instead of if-then-else 2018-06-12 23:14:18 +02:00
compat Merge "Kill non namespaced ScopedCallback" 2018-06-01 04:35:22 +00:00
composer Fix MediaWiki.Commenting.LicenseComment.InvalidLicenseTag errors 2018-05-23 16:23:42 -07:00
config
content
context Replace call_user_func_array(), part 1 2018-06-04 23:39:04 -07:00
dao Use PHP 5.6 constant expressions for some bitfield constants 2018-05-30 18:05:18 -07:00
db Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-06-11 19:23:15 +02:00
debug Replace call_user_func_array(), part 1 2018-06-04 23:39:04 -07:00
deferred Replace call_user_func_array(), part 1 2018-06-04 23:39:04 -07:00
diff Replace call_user_func_array(), part 1 2018-06-04 23:39:04 -07:00
edit [MCR] Factor PageUpdater out of WikiPage 2018-06-14 13:22:13 +00:00
editpage
exception Replace call_user_func_array(), part 2 2018-06-07 20:19:26 -07:00
export
externalstore Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
filebackend Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
filerepo Use PHP 7 '??' operator instead of if-then-else 2018-06-12 23:14:18 +02:00
gallery Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
htmlform Use PHP 7 '??' operator instead of if-then-else 2018-06-12 23:14:18 +02:00
http CurlHttpRequest: remove open_basedir check 2018-06-08 13:46:10 -04:00
import Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
installer Localisation updates from https://translatewiki.net. 2018-06-10 22:02:06 +02:00
interwiki Hard deprecate Interwiki static methods 2018-06-07 11:40:46 -07:00
jobqueue Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
json FormatJson: cleanup after PHP 5.5 support removal 2018-06-09 09:06:02 -04:00
libs Fix typo in method documentation 2018-06-14 10:47:08 +02:00
linkeddata PageDataRequestHandler: Use getHeader() instead of getAllHeaders() 2018-05-23 06:05:47 +00:00
linker linker: Hard-deprecate LinkBegin and LinkEnd hooks 2018-06-10 12:00:15 -07:00
logging Merge "Link to revisions and log entries from tag logs" 2018-06-12 15:21:22 +00:00
mail Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
media Get rid of call_user_func(_array)(), part 3 2018-06-10 02:21:24 +00:00
objectcache Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
page [MCR] Factor PageUpdater out of WikiPage 2018-06-14 13:22:13 +00:00
pager Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
parser Deprecate Language::markNoConversion, which confuses readers 2018-06-13 13:26:58 -04:00
password Clean up CSPRNG support for PHP7 2018-06-10 00:52:04 +00:00
poolcounter Get rid of call_user_func(_array)(), part 3 2018-06-10 02:21:24 +00:00
preferences Merge "RCFilters: Add an opt-out preference for filters on watchlist" 2018-06-05 01:39:50 +00:00
profiler Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
rcfeed
registration registration: Catch correct exception type from ObjectCache 2018-06-11 21:09:47 +00:00
resourceloader [MCR] Factor PageUpdater out of WikiPage 2018-06-14 13:22:13 +00:00
revisiondelete Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
search Silently drop unknown titles in completion search 2018-06-11 13:56:19 -07:00
services Get rid of call_user_func(_array)(), part 3 2018-06-10 02:21:24 +00:00
session PHPSessionHandler: Suppress warnings in initialize() 2018-06-13 09:54:31 -04:00
shell Begin introducing PHP 5.6 variadic parameters where appropriate 2018-06-04 11:53:55 -07:00
site Fix MediaWiki.Commenting.LicenseComment.InvalidLicenseTag errors 2018-05-23 16:23:42 -07:00
skins Use PHP 7 '??' operator instead of if-then-else 2018-06-12 23:14:18 +02:00
sparql Replace recently introduced mediawiki/at-ease calls 2018-04-18 14:11:13 +00:00
specialpage Merge "LoginSignupSpecialPage: Use $this->msg instead of wfMessage" 2018-06-09 14:30:39 +00:00
specials Merge "Do not require titles on Special:ComparePages" 2018-06-13 22:58:28 +00:00
Storage [MCR] Factor PageUpdater out of WikiPage 2018-06-14 13:22:13 +00:00
templates Remove $wgScriptExtension (deprecated and ignored since 1.25) 2018-04-19 01:11:23 +01:00
tidy Use PHP 7 "\u{NNNN}" Unicode codepoint escapes in string literals 2018-06-04 16:20:13 +00:00
title Revert "Strip soft hyphens (U+00AD) from title" 2018-05-31 10:45:11 -07:00
upload PHP: Use short ternary operator (?:) where possible 2018-06-11 11:26:35 +02:00
user [MCR] Factor PageUpdater out of WikiPage 2018-06-14 13:22:13 +00:00
utils Clean up CSPRNG support for PHP7 2018-06-10 00:52:04 +00:00
watcheditem Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
widget Convert SearchResultSet to typical iteration 2018-06-11 13:35:41 -07:00
.htaccess
ActorMigration.php
AjaxDispatcher.php Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
AjaxResponse.php PHP: Use short ternary operator (?:) where possible 2018-06-11 11:26:35 +02:00
AuthPlugin.php Use PHP 7 '??' operator instead of if-then-else 2018-06-12 23:14:18 +02:00
AutoLoader.php Improve AutoLoader test coverage 2018-05-26 21:29:36 -07:00
Autopromote.php
Block.php Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
CategoriesRdf.php
Category.php Category: Lock the category row before the categorylinks rows 2018-06-12 11:28:25 -04:00
CategoryFinder.php
CategoryViewer.php Avoid triggering Category::refreshCounts() on HTTP GET requests 2018-04-19 04:45:24 +00:00
CommentStore.php Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
CommentStoreComment.php
ConfiguredReadOnlyMode.php
ContentSecurityPolicy.php ContentSecurityPolicy: Add trailing & to report urls 2018-05-22 22:20:43 +00:00
DefaultSettings.php Merge "Add code to write to change_tag_def table" 2018-06-07 16:26:23 +00:00
Defines.php Remove deprecated utfnormal back-compat 2018-05-27 20:35:27 -07:00
DeprecatedGlobal.php
DerivativeRequest.php
DevelopmentSettings.php
DummyLinker.php Remove deprecated Linker::getLinkColour() 2018-06-13 01:30:04 -07:00
EditPage.php [MCR] Factor PageUpdater out of WikiPage 2018-06-14 13:22:13 +00:00
EventRelayerGroup.php
FauxRequest.php Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
Feed.php
FeedUtils.php
FileDeleteForm.php rdbms: make IDatabase::onTransaction* methods pass the DB handle for convenience 2018-04-24 16:45:11 -07:00
ForkController.php
FormOptions.php
GitInfo.php
GlobalFunctions.php Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-06-11 19:23:15 +02:00
HeaderCallback.php
HistoryBlob.php
Hooks.php Hooks: remove some unnecessary code 2018-05-26 23:39:07 -07:00
Html.php Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
Linker.php Merge "Pass $parser, &$query and &$widthOption to the 'ImageBeforeProduceHTML' hook" 2018-06-13 15:31:01 +00:00
LinkFilter.php Make cleanupSpam.php query for http and https 2018-06-03 22:00:11 +00:00
ListToggle.php
MagicWord.php Use PHP 7 '<=>' operator in 'sort()' callbacks 2018-05-30 18:05:20 -07:00
MagicWordArray.php
MediaWiki.php Merge "Disable WebResponse setters for post-send processing" 2018-06-13 13:21:51 +00:00
MediaWikiServices.php Clean up CSPRNG support for PHP7 2018-06-10 00:52:04 +00:00
MediaWikiVersionFetcher.php
MergeHistory.php Replace call_user_func_array(), part 2 2018-06-07 20:19:26 -07:00
Message.php Resolve required parameter after optional in Message 2018-06-08 21:48:51 +00:00
MimeMagic.php
MovePage.php Merge "Replace call_user_func_array(), part 2" 2018-06-09 14:25:26 +00:00
MWGrants.php
MWNamespace.php Use PHP 7 '??' operator instead of if-then-else 2018-06-12 23:14:18 +02:00
MWTimestamp.php
NoLocalSettings.php Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
OrderedStreamingForkController.php
OutputHandler.php
OutputPage.php Use PHP 7 '??' operator instead of if-then-else 2018-06-12 23:14:18 +02:00
PageProps.php
PathRouter.php
PHPVersionCheck.php Insert space before compatibility link in PHP version message 2018-05-25 00:27:21 +02:00
Pingback.php
Preferences.php Fix PreferencesForm alias 2018-05-29 21:44:18 +00:00
PrefixSearch.php Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
ProtectionForm.php
ProxyLookup.php
RawMessage.php
ReadOnlyMode.php
Revision.php Merge "Provide backwards compatibility for RevisionInsertComplete hook." 2018-06-13 20:07:02 +00:00
RevisionList.php
ServiceWiring.php Clean up CSPRNG support for PHP7 2018-06-10 00:52:04 +00:00
Setup.php PHP: Use short ternary operator (?:) where possible 2018-06-11 11:26:35 +02:00
SiteConfiguration.php Get rid of call_user_func(_array)(), part 3 2018-06-10 02:21:24 +00:00
SiteStats.php
SiteStatsInit.php
Status.php
StreamFile.php
StubObject.php
TemplateParser.php
TemplatesOnThisPageFormatter.php
Title.php Make $wgEmailConfirmToEdit only affect edit actions. 2018-06-12 00:13:18 +00:00
TitleArray.php
TitleArrayFromResult.php
TrackingCategories.php
WebRequest.php Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
WebRequestUpload.php
WebResponse.php Merge "Disable WebResponse setters for post-send processing" 2018-06-13 13:21:51 +00:00
WebStart.php Merge "Setup: Move mbstring.func_overload from WebStart to Setup" 2018-04-18 16:22:16 +00:00
WikiMap.php Use PHP 7 '??' operator instead of '?:' with 'isset()' where convenient 2018-05-30 18:06:13 -07:00
WikiReference.php
Xml.php Resolve required parameter after optional in Xml 2018-06-08 21:48:41 +00:00
XmlJsCode.php
XmlSelect.php Use PHP 7 '??' operator instead of if-then-else 2018-06-12 23:14:18 +02:00