diff options
author | Dreamy Jazz <wpgbrown@wikimedia.org> | 2025-04-01 20:35:20 +0100 |
---|---|---|
committer | Dreamy Jazz <wpgbrown@wikimedia.org> | 2025-04-03 13:25:53 +0100 |
commit | 963a8ad09c23efe7060fee1362388601412f86f8 (patch) | |
tree | 888ef1d67811d0c1605a60709ca9c8b3bea24130 /languages/i18n/bo.json | |
parent | a476989679cd134df14410e500c5f1285050583b (diff) | |
download | mediawikicore-963a8ad09c23efe7060fee1362388601412f86f8.tar.gz mediawikicore-963a8ad09c23efe7060fee1362388601412f86f8.zip |
ManualLogEntry: Check RecentChanges bot flag before POSTSEND
Why:
* ManualLogEntry::publish causes an entry to be added to the
recentchanges table as well as other publishing actions for
the log entry.
* This is done in a DeferredUpdate to avoid writes that block
the response to the user unnecessarily.
* However, doing this means that if we assign a temporary user
right during the course of the POST request (such as in the
case of an extension wanting to make lots of log entries)
this is not seen in the RecentChanges object created at the
POSTSEND stage.
* Creating the RecentChanges entry at the time of calling ::publish
allows temporary user rights, such as 'bot', to take effect
and mark the log entries as bot actions.
** We still put the writes to the DB POSTSEND as we only need to
create the RecentChanges object to get the bot flag set
correctly.
What:
* Update ManualLogEntry::publish to create the RecentChanges
object outside the POSTSEND DeferredUpdate.
* Add tests for ManualLogEntry which was previously completely
untested (though likely indirectly tested through code which
uses this class).
** Adding the tests allows verification that the change performed
actually does what we want it to do.
Bug: T387659
Change-Id: I80d906bbc1cad180a815477477d9081f9775a197
Diffstat (limited to 'languages/i18n/bo.json')
0 files changed, 0 insertions, 0 deletions