These are automatic, and happen regardless of whether the user
performing the action has patrol-related rights.
Bug: T190408
Bug: T184791
Change-Id: Icd1f3826c378ae759f501d87ffb9988766775b27
So the conditional check should by default return $this->mDb if it's not
null, so, the else seems not to be needed(?). If we have a database handle
to process the current batch, $this->getDB() will return IMaintainableDatabase
but if it's not available (null), a call to $this->getDB() will return an
instance of \Wikimedia\Rdbms\Database is returned instead.
In accordance with the documentation (phpdoc), update the method getUserDB()
to be compliant with callers return type.
Change-Id: I95f3407dd2ffe8e4a1ad7a70be86b6cf3b65ff50
This matches the "max lag" value used in the server configuration
array for WMF sites for a long time.
Change-Id: Ic2e82a8cc0932e7cf28ababc2eb0849406da06ef
Running Composer manually with a user different from the webserver
user and ending up with a vendor/autoload.php file that's unreadable
to MediaWiki seems like an easy mistake to make. Make the error
message when that happens less cryptic.
Change-Id: I52600adceb38a7fc5384d00b5298e46a782c684f
Hide the "hide user" checkbox on Special:Block if the block
parameters specify a partial block. Return an error message
if a partial block with user suppression is specified via
the API. Also, make sure that an existing user suppression
is lifted if the user's block is reset to a partial block.
Bug: T210002
Change-Id: If42edfc85580d6bad6f4b397517e77e63deecc87
Package files are files that are part of a module, but are not
immediately executed when the module executes. Instead, they are
lazy-excecuted when require() is called on them. Package files can be
scripts (JS) or data (JSON), and can be real files on the file system,
or virtual files generated by a callback.
Using virtual data files, server-side data and config variables can be
bundled with a module. Support for file-based require() allows us to
import npm modules into ResourceLoader more easily.
The require function passed to each script execution context, which was
previously a reference to the global mw.loader.require() function, is
changed to one that is scoped to the module and the file being executed.
This is needed to support relative paths: require( '../foo.js' ) can
mean a different file depending on the path of the calling file.
The results of require()ing each file (i.e. the value of module.exports
after executing it) are stored, and calling require() on the same file a
second time won't execute it again, but will return the stored value.
Miscellaneous changes:
- Add XmlJsCode::encodeObject(), which combines an associative array of
XmlJsCode objects into one larger XmlJsCode object. This is needed for
encoding the packageFiles parameter in mw.loader.implement() calls.
Bug: T133462
Change-Id: I78cc86e626de0720397718cd2bed8ed279579112
In the complicated decision tree for checking if a blocked
user is blocked from their talk page, one situation was not
being tested: there's a partial block to the user talk
namespace, the block is flagged as allowing a user to edit
their talk page, BUT $wgBlockAllowsUTEdit is false. In this
circumstance, the user should be blocked from editing their
talk page, as outlined in T210475.
Also, fix whitespace and make messages clearer, since this
is now quite complicated.
Change-Id: I234f3019d55a6da0da091a2eaae6c791be01b436
Allows prevention of clearing of notification timestamp when a user
views a page in their watchlist.
Change-Id: Id0af5c89c648ac6dce80012a1566426d5552942f
* Fix the timestamps to static hard-coded values
* Force the timestamps before various get/set tests so they do not
use the microtime() value either.
* Remove the direct and duplicated (causing further risk) microtime()
calls from testGetWithSeveralCheckKeys().
Bug: T207247
Change-Id: Id30a8127f11501dbe54e075b6e9d18490353f4a5
We currently show SVGs in default languages unless overridden with
lang=... URL parameter (and we have UI for setting it). This change
makes it display thumbnails in wiki language, if translation is available.
Bug: T210814
Change-Id: Ieb0b5e9e27f45b71ef119bb3c1d3f2cd4d7100e5
Autoblocks ipb_sitewide was not being updated when changing the parent
block from sitewide to partial and vice-versa
Bug: T215205
Change-Id: Ied5a8361a733c47f0afea78cc955732261ede446