Brad Jorsch [Fri, 20 Sep 2019 18:35:39 +0000 (14:35 -0400)]
CommentStore: Accept SCHEMA_COMPAT_* constants
Extensions doing an actor and comment migration at the same time will
likely want to use the same constants for each, and that will most
likely be using write-both/read-old and write-both/read-new for the
middle stages rather than write-both/read-both and write-new/read-both
as implemented by the MIGRATION_* constants. See Ie29fd05 for example.
This patch changes CommentStore's internal logic to work correctly when
passed write-both/read-old or write-both/read-new.
Bug: T233449
Change-Id: Iebec80f969ad1c4f9f51a4f25656319cca32b0dd
Timo Tijhof [Wed, 18 Sep 2019 18:05:42 +0000 (19:05 +0100)]
exception: Let MediaWiki.php control final output for ErrorPageError
The same way it does already for non-error output. This makes
it so that doPreOutputCommit() consistently happens between
the staging of output and the actual sending of output.
It is still allowed for code to bypass this, such as for fatal
errors and for handlers that disable OutputPage (like Special:Export).
But for cases where we do want to perform doPreOutputCommit(), it
should be run consistently between staging and sending so that it
can make appropiate decisions based on the current state of
OutputPage.
Previously, the state of OutputPage seen by doPreOutputCommit()
would be the broken/incomplete output of a seemingly succesful
(possibly cacheable) user action, which would then, after
doPreOutputCommit() runs, be completely replaced by $e->report()/
$out->showErrorPage().
This is a prerequisite for being able to reliably send cookie-block
cookies on error pages (next patch).
Bug: T233594
Change-Id: Iaeaf5e55a5868e6be534ddda73f3b56b9d6ef8f0
Translation updater bot [Thu, 26 Sep 2019 06:23:52 +0000 (08:23 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I49be2a7100bff079264a48b07e14b0edf30472be
jenkins-bot [Wed, 25 Sep 2019 15:48:02 +0000 (15:48 +0000)]
Merge "Pass "services" through from coreRoutes.json to ObjectFactory"
Aaron Schulz [Wed, 19 Jun 2019 08:10:15 +0000 (09:10 +0100)]
rdbms: fix active GTID filtering in DatabaseMysqlBase
In masterPosWait(), only $pos will have the known active domain/server set
since it usually comes from getMasterPos(). However, the reference position,
from getReplicaDB(), does not have the active domains set since querying
gtid_domain_id on the replica would be incorrect and getting a connection
to the master could be expensive.
Remove obsolete hacks for jobs that used to store master positions.
Also, use the regular Database::query() method for stylistic consistency.
Bug: T224422
Change-Id: I41bbb9f337e46451aa17788dbd446db4a213a5a7
jenkins-bot [Wed, 25 Sep 2019 07:53:14 +0000 (07:53 +0000)]
Merge "Updated wikimedia/avro from 1.8.0 to 1.9.0"
Translation updater bot [Wed, 25 Sep 2019 06:34:37 +0000 (08:34 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I27b08eefba6d5f7e8358fb0b2ea7f84552cb38c0
jenkins-bot [Wed, 25 Sep 2019 06:10:12 +0000 (06:10 +0000)]
Merge "resourceloader: Convert ImageModule test to stricter unit test"
jenkins-bot [Wed, 25 Sep 2019 02:29:14 +0000 (02:29 +0000)]
Merge "Special:Contributions form collapsed when offset is defined"
jdlrobson [Thu, 28 Mar 2019 00:06:35 +0000 (17:06 -0700)]
Special:Contributions form collapsed when offset is defined
Form on Special:Contributions is collapsed while assuming
user is paging through results when target, start or end date
offset is defined.
Bug: T117736
Bug: T191868
Change-Id: I05030f1473b13bbe66bf56b9affc8d33f7210b81
Tim Starling [Mon, 23 Sep 2019 05:30:46 +0000 (15:30 +1000)]
Pass "services" through from coreRoutes.json to ObjectFactory
Allows service injection into REST handlers.
Change-Id: I83d1780903febe0499c6a575a0e6725dc01e5b0c
jenkins-bot [Wed, 25 Sep 2019 00:44:28 +0000 (00:44 +0000)]
Merge "Replace infobox usages and extend successbox, warningbox and errorbox"
jenkins-bot [Wed, 25 Sep 2019 00:38:05 +0000 (00:38 +0000)]
Merge "Make Special:Contributions use OOUI"
jenkins-bot [Tue, 24 Sep 2019 23:55:54 +0000 (23:55 +0000)]
Merge "Avoid uses of wfWikiId() in maintenance/"
Volker E [Tue, 17 Sep 2019 04:39:49 +0000 (21:39 -0700)]
Replace infobox usages and extend successbox, warningbox and errorbox
Adding optional $className parameter to provide additional
styling options.
Optional parameter $heading was introduced for MobileFrontend. Therefore
leaving inconsistent parameter order is necessary for the time being.
Bug: T232903
Change-Id: I5857b2c58a47a83156c32f086a73fe2bd48ab0c8
Timo Tijhof [Tue, 24 Sep 2019 22:48:48 +0000 (23:48 +0100)]
resourceloader: Convert ImageModule test to stricter unit test
Bug: T233343
Change-Id: I1f9d0b6b735c9192bb32baf249eefea76c65929e
jenkins-bot [Tue, 24 Sep 2019 22:50:22 +0000 (22:50 +0000)]
Merge "Maintenance.php: Fix mwdebug error"
jenkins-bot [Tue, 24 Sep 2019 22:50:14 +0000 (22:50 +0000)]
Merge "exception: Add missing early return for UserNotLoggedIn error page"
Aaron Schulz [Tue, 24 Sep 2019 22:42:00 +0000 (15:42 -0700)]
Avoid uses of wfWikiId() in maintenance/
Change-Id: I81904c0ba7120d7da2454929ffec5c1c0892be02
jenkins-bot [Tue, 24 Sep 2019 21:51:19 +0000 (21:51 +0000)]
Merge "Enable preservation of grapheme clusters in highlightQuery"
jenkins-bot [Tue, 24 Sep 2019 21:50:36 +0000 (21:50 +0000)]
Merge "phan: Removed PhanUndeclaredTypeParameter suppression"
jenkins-bot [Tue, 24 Sep 2019 21:19:47 +0000 (21:19 +0000)]
Merge "Improve the top section of Special:Watchlist for small screens"
jenkins-bot [Tue, 24 Sep 2019 20:57:34 +0000 (20:57 +0000)]
Merge "Simplify NewFilesPager::getQueryInfo"
jenkins-bot [Tue, 24 Sep 2019 20:54:31 +0000 (20:54 +0000)]
Merge "resourceloader: Remove "expected error" noise from mw.loader tests"
tjones [Tue, 24 Sep 2019 20:42:05 +0000 (16:42 -0400)]
Enable preservation of grapheme clusters in highlightQuery
Make use of the option to preserve grapheme clusters in highlightQuery
in OOUI's LabelElement.js so that partial matches in the main search
page on Special:Search don't break graphemes.
Bug: T35242
Depends-On: Iac79095a1b40ef92b3cfd9421916928217639434
Change-Id: I5c458da39156db8a39412b91cf647aacd43fbbb9
jenkins-bot [Tue, 24 Sep 2019 20:25:00 +0000 (20:25 +0000)]
Merge "Improve documentation of newRevisionsFromBatch()"
Jan Drewniak [Tue, 24 Sep 2019 09:26:20 +0000 (11:26 +0200)]
Improve the top section of Special:Watchlist for small screens
Bug: T225127#
5518870
Change-Id: I2d3e2cf27150487190b34cc9b76db9905599e27b
Umherirrender [Tue, 24 Sep 2019 19:20:28 +0000 (21:20 +0200)]
phan: Removed PhanUndeclaredTypeParameter suppression
Fixed the non-namespaced WebRequest by adding a backslash
Change-Id: I9f1e3e000d9a512a74f93145cd5e66b1b38ab8b2
jenkins-bot [Tue, 24 Sep 2019 17:41:06 +0000 (17:41 +0000)]
Merge "LogPager: Add IGNORE INDEX to avoid MariaDB optimizer bug"
daniel [Tue, 24 Sep 2019 17:18:08 +0000 (19:18 +0200)]
Improve documentation of newRevisionsFromBatch()
Document purpose and behavior of the $title parameter.
Bug: T228988
Change-Id: I89966321ec3b4feb5a59e06b8a656d76c4bd9ef2
Timo Tijhof [Tue, 24 Sep 2019 16:42:42 +0000 (17:42 +0100)]
resourceloader: Remove "expected error" noise from mw.loader tests
After commit
bbded40a2b26c, the stub for mw.track no longer worked
as originally intended, causing the stack traces to be printed
to the Karma output and browser console again.
The test still passed because mw.trackError calls mw.track, but
it no longer stubbed out the trace logging noise.
Also simplify some assertion messages while at it, these are meant
to describe the subject (the compared value) not be the value
itself (which is the second param) and not the error message
(which QUnit produces).
Change-Id: I657bf4479a40e1b73b45426df98882aed32b4cba
Brad Jorsch [Fri, 20 Sep 2019 19:38:52 +0000 (15:38 -0400)]
LogPager: Add IGNORE INDEX to avoid MariaDB optimizer bug
This is basically the same thing we fixed for ApiQueryLogEvents in
I16dba2158.
Bug: T223151
Change-Id: I53a7ed59de3eed2b0b4f1b1fb7f6d302b1de276c
Niklas Laxström [Tue, 24 Sep 2019 06:53:19 +0000 (08:53 +0200)]
Mark $wgMainPageIsDomainRoot as experimental
Change-Id: I328c1022aec8918cbc5b4ee50de3d1dbe5586cfd
Translation updater bot [Tue, 24 Sep 2019 06:27:32 +0000 (08:27 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ie40b3da759701a2eb31d05a3230b547d5182c24a
jenkins-bot [Tue, 24 Sep 2019 00:56:30 +0000 (00:56 +0000)]
Merge "resourceloader: Reduce severity of unknown page module warning"
jenkins-bot [Tue, 24 Sep 2019 00:56:22 +0000 (00:56 +0000)]
Merge "resourceloader: Remove redundant closure of some startup and base files"
Timo Tijhof [Mon, 23 Sep 2019 23:47:18 +0000 (00:47 +0100)]
resourceloader: Reduce severity of unknown page module warning
These are silently skipped and generally no cause for alarm.
For example, when enabling a gadget by default and then
disabling/deleting it, cached HTML will still have it queued,
which is silently skipped and the other queued modules are loaded
just fine.
The same for when merging module bundles where the destination
is already loaded, in such case it is tolerated to let cached
ParserOutput objects still queuing it silently skip it.
Keeping it existent just to avoid a warning isn't particularly
useful and might even obscure problems or give the illusion that
it is still working and providing compatibility (e.g. loading the
new code), which might not be true.
The silent skipping of modules originally did not have any
logging or warning attached to it, it was silent from 2010
to April 2019. In 2017, commit
37df741514 adds a console warning
when a circular dependency is detected.
In April 2019, commit
d059dffa2 optimised away this redundant
silent skipping of unknown modules, in favour of re-using the
code for circular dep detection, which did the same thing already,
but with a debug warning. This meant it now showed scary stack
traces when all there's only an stale module ref, which are normal
in RL and generaly nothing to worry about. This was amplified
by Minerva's tracking of client-side errors going beyond just
'global.error' but also listerning to recoverable internal errors
from 'resourceloader.exception', which now included these
debug warnings.
Change-Id: Ie71adbe18e8dbeb661ddb9d7d3d1d0897891d515
Timo Tijhof [Tue, 24 Sep 2019 00:09:04 +0000 (01:09 +0100)]
resourceloader: Remove redundant closure of some startup and base files
* errorLogger: Contains only top-level assignments and statements,
no scope needed. If it does need a scope at some point, then it
should be converted to packageFiles first so that the closure
still isn't needed (see T50886).
* requestIdleCallback: This file should do nothing in modern browsers,
except alias a native method, and expose the fallback for testing.
Remove the closure and with it the (usually) unused local var.
* mediawiki.js: Use the shorter Object.hasOwnProperty instead,
we already do this in several files. Both provide a quick reference
to the native method. Object.prototype.hasOwnProperty is more direct
visually, but also less direct at run-time (3 lookups instead of 2).
MW does not support environments that extend native classes such as
Object or their prototypes, so this makes no difference in that
regard and is already done in several core files. (More wide changes
to be done separately).
Change-Id: I98ed4da4807c54254669053cef47a3e67b4ad2cf
Timo Tijhof [Mon, 23 Sep 2019 23:33:20 +0000 (00:33 +0100)]
exception: Add missing early return for UserNotLoggedIn error page
Follows-up
d0439af89f6b254c.
If the UserNotLoggedIn class is constructed with an unsupported
message parameter, thrown, and handled by MWExceptionHandler, the
report() method would get called, and it would call the parent,
which stages a full error page and sends it via OutputPage::output.
Due to the missing return statement, it would then still execute
the remaining code, which messes up the internal state of the
already-sent OutputPage object by changing its redirect target
(which will never be used, but might confuse other consumers),
and trying to re-send output() and redirect headers, which will
fail with a warning.
Fixing this is required for T233594 and Iaeaf5e55a586, which allows
ErrorPageError to be "stage only" without ending output. Without
this fix, it would call the parent and do stage-only, but then
the remaining code in this method also work and actually succeed
at sending an invalid message to the user.
To preserve current (accidentally correct) behaviour, this needs
to be fixed first.
Bug: T233594
Bug: T17484
Change-Id: Ic5d73becd889839399a5b425cbbe22a3401acea9
jenkins-bot [Mon, 23 Sep 2019 20:11:36 +0000 (20:11 +0000)]
Merge "Fix type for timeout and connectTimeout in HttpRequestFactory::create"
Volker E [Mon, 23 Sep 2019 19:08:21 +0000 (12:08 -0700)]
Amend expanded HTMLForm legend styling
Follow-up to I6964296bc68705 providing same top and bottom padding
when expanded.
Change-Id: Ib69f730f9fa713bc8a6d7bf0fdbb7a6d26b1f0ab
jdlrobson [Sat, 2 Apr 2016 08:03:42 +0000 (11:03 +0300)]
Make Special:Contributions use OOUI
Changes:
* IP address/username is now a single label & input element combination
* Add page-specific styles in separate LESS file
* Remove no longer necessary CSS rule
Bug: T117736
Bug: T219238
Change-Id: I979078d8937898acae22bc28d5ed51da1d4ed627
Umherirrender [Sun, 22 Sep 2019 19:29:12 +0000 (21:29 +0200)]
Fix type for timeout and connectTimeout in HttpRequestFactory::create
Both can have a string 'default'
Change-Id: I9c49cf7db762f251b010bc5469d4c1b4a7797f45
Bartosz Dziewoński [Tue, 28 May 2019 22:22:18 +0000 (00:22 +0200)]
Improve collapsible HTMLForm styling (and accessibility, slightly)
Previously the form was only collapsible/expandable using the small
link-button on the far right. Now you can click on the entire header
to do it, and it has an appropriate pretty icon.
We add appropriate ARIA `role` and textual labels. Together with
recently added `toggleARIA` option of jquery.makeCollapsible in
Ic457bda58e56f we feature a screen reader workable output.
Bug: T222904
Change-Id: I6964296bc6870550478de662d21f12a1fc084c15
TheSandDoctor [Mon, 23 Sep 2019 17:24:19 +0000 (10:24 -0700)]
Maintenance.php: Fix mwdebug error
Resolve error with showJobs.php --mwdebug option. Previously, it displayed an error if not followed by "=1".
This was resolved by changing
$this->addOption( 'mwdebug', 'Enable built-in MediaWiki development settings', false, true );
to
$this->addOption( 'mwdebug', 'Enable built-in MediaWiki development settings', false, false );
Bug: T233257
Change-Id: I322fa539a302c2726fffd2420f7f56aec476b32b
jenkins-bot [Mon, 23 Sep 2019 17:01:47 +0000 (17:01 +0000)]
Merge "Remove Revision::getRevisionText from migrateArchiveText"
jenkins-bot [Mon, 23 Sep 2019 16:36:32 +0000 (16:36 +0000)]
Merge "site: Make getPageUrl consistently return null"
jenkins-bot [Mon, 23 Sep 2019 15:28:03 +0000 (15:28 +0000)]
Merge "Add config for serving main Page from the domain root"
jenkins-bot [Mon, 23 Sep 2019 12:30:46 +0000 (12:30 +0000)]
Merge "FauxRequest: don’t override getValues()"
Amir Sarabadani [Mon, 1 Jul 2019 23:25:01 +0000 (01:25 +0200)]
Add config for serving main Page from the domain root
Bug: T120085
Change-Id: If2d82340ec58888a0bac96924ab63456b6d480fb
Translation updater bot [Mon, 23 Sep 2019 06:24:36 +0000 (08:24 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I0c47f67f860aae41d794a2c4ec4d22527de83328
Reedy [Sun, 22 Sep 2019 21:30:51 +0000 (22:30 +0100)]
Updated wikimedia/avro from 1.8.0 to 1.9.0
Bug: T233165
Depends-On: I070678446f1932d63b9c533b4c5406ad7e69e291
Change-Id: I7658c18a3c6868c12ee453027e9f4b30ee663cd9
Fomafix [Sun, 22 Sep 2019 10:19:59 +0000 (12:19 +0200)]
PHPVersionCheck: Consistently use double quotes for HTML attributes
Change-Id: I6130d12b34ee4dc5e5896c7fa6a7bc14b1ed9893
Umherirrender [Tue, 18 Sep 2018 20:01:56 +0000 (22:01 +0200)]
Pass language to Status::getWikiText
Avoid use of $wgLang
Change-Id: I9cd633a20c5c60e56a101a9a699eea6db8b8eef0
Umherirrender [Mon, 19 Aug 2019 19:57:32 +0000 (21:57 +0200)]
Simplify NewFilesPager::getQueryInfo
The query here is not used for the images to display, so the query must
not include all columns from the images table, because that is not used
The gallery itself will load the necessary information for the display
in separate queries
Bug: T227608
Change-Id: I70b0d1bcdc155c38d69b5dd52bf4e3898920ab76
jenkins-bot [Sat, 21 Sep 2019 03:29:49 +0000 (03:29 +0000)]
Merge "localisation: Remove PHP5-specific perf optimisation"
jenkins-bot [Sat, 21 Sep 2019 03:06:27 +0000 (03:06 +0000)]
Merge "jquery.makeCollapsible: Add toggleARIA option and enable for plain toggle"
Volker E [Fri, 20 Sep 2019 03:14:46 +0000 (20:14 -0700)]
jquery.makeCollapsible: Add toggleARIA option and enable for plain toggle
Adding `aria-expanded` attributes to `$toggle`.
That is not resolving each and every issue, but it gives at least
a valuable hint for screen readers and resolves the situation for
togglers, where the toggled content comes directly after `$toggle`.
Bug: T222904
Change-Id: Ic457bda58e56fb9ba2dce6df195e9fb48afb07f6
Timo Tijhof [Sat, 21 Sep 2019 01:31:04 +0000 (02:31 +0100)]
localisation: Remove PHP5-specific perf optimisation
The `apc.cache_by_default` setting is a PHP5-era setting relating
to the part of php5-apc now known as opcache (as opposed to the
part now known as apcu).
This setting doesn't exist in PHP 7, and trying to set it doesn't
do anything useful.
Bug: T206986
Change-Id: I46a91897b2b33b5ce6505beb74d404982cb0641c
jenkins-bot [Fri, 20 Sep 2019 23:33:04 +0000 (23:33 +0000)]
Merge "Messages collected above the form are meant to live as boxed messages"
jenkins-bot [Fri, 20 Sep 2019 23:18:09 +0000 (23:18 +0000)]
Merge "Remove `inline-block` from message boxes"
jenkins-bot [Fri, 20 Sep 2019 23:01:10 +0000 (23:01 +0000)]
Merge "Use mw.util.getUrl( null ) to get the default mw.config.get( 'wgPageName' )"
jenkins-bot [Fri, 20 Sep 2019 22:45:24 +0000 (22:45 +0000)]
Merge "HTMLTitleTextField: Remove incorrect check for unsubmitted GET forms"
Volker E [Thu, 19 Sep 2019 20:51:58 +0000 (13:51 -0700)]
Remove `inline-block` from message boxes
Removing `inline-block` from message boxes as they're outlined as
block level elements in UI standardization work.
Back in Ibb9371eec in 2013 those were used in various contexts and
tried to resolve the back then stated need of intrinsic width by
`inline-block`. That doesn't seem to be appropriate for the general
use case any more.
If used in other contexts or on inline elements, product owners and
implementors need to act on specifically adapting them.
Bug: T233359
Change-Id: I530fda47b3d7b99f782b421abbde8957026570cd
jenkins-bot [Fri, 20 Sep 2019 21:07:20 +0000 (21:07 +0000)]
Merge "Do not output wikitext in maintenance script"
jenkins-bot [Fri, 20 Sep 2019 19:59:53 +0000 (19:59 +0000)]
Merge "Gallery: Don't fire wikipage.content hook twice during init"
Petr Pchelko [Thu, 19 Sep 2019 17:53:19 +0000 (10:53 -0700)]
Remove Revision::getRevisionText from migrateArchiveText
The script is used to migrate archive text from pre-1.5 schema.
It's safe it just use the `ar_text` field directly instead of going
to Revision::getRevisionText since migrating this field is the whole
proing of the script. Per execution it checks that the field exists
in the schema, the SQL query reads the field.
We don't need to do `expandBlob` either, cause we already know that
the data is not in external store, thus Revision::decompressData
is enough.
Bug: T198343
Change-Id: Ic838bdf680d73522dd508dd86056eb945535b368
jenkins-bot [Fri, 20 Sep 2019 18:53:04 +0000 (18:53 +0000)]
Merge "selenium: Only load 'sauce' service when needed"
Timo Tijhof [Fri, 20 Sep 2019 17:52:20 +0000 (18:52 +0100)]
selenium: Only load 'sauce' service when needed
Also, remove the redundant unprefixed `user` and `key` options.
These would be cleaner to set through `sauceConnectOpts`
as `sauceConnectOpts { username: …, accesskey: … }`, but even
that isn't needed because wdio-sauce-service already reads these
same environment variables directly. No further config needed.
Also remove the duplication of default variables we don't have
any particular preference for yet so that enjoy improvements to
these when upgrading.
Change-Id: I0d4802f83509b0b49f775560b508d9929ae9979e
jenkins-bot [Fri, 20 Sep 2019 17:45:07 +0000 (17:45 +0000)]
Merge "Mark consistently with any edit summaries"
Umherirrender [Mon, 19 Aug 2019 16:12:32 +0000 (18:12 +0200)]
Do not output wikitext in maintenance script
Also remove print_r with a string
Always use english for maintenance scripts
Bug: T229843
Change-Id: I539a1ac1f6a201dd8ee9ce89599cc34bebfba79f
jenkins-bot [Fri, 20 Sep 2019 16:12:25 +0000 (16:12 +0000)]
Merge "filebackend: reduce hashing I/O in SwiftFileBackend::doStoreInternal()"
jenkins-bot [Fri, 20 Sep 2019 15:55:08 +0000 (15:55 +0000)]
Merge "tests: Prefer PHPUnit's assertSame() when comparing empty strings"
jenkins-bot [Fri, 20 Sep 2019 15:33:02 +0000 (15:33 +0000)]
Merge "tests: Prefer assertSame() when comparing the integer 0"
Thiemo Kreuz [Tue, 17 Sep 2019 14:28:35 +0000 (16:28 +0200)]
tests: Prefer PHPUnit's assertSame() when comparing empty strings
assertSame() is guaranteed to never do any magic type conversion.
This can be critical when accidentially comparing empty strings (a
value PHP considers to be "falsy") to false, 0, 0.0, null, and such.
Change-Id: I2e2685c5992cae252f629a68ffe1a049f2e5ed1b
Ed Sanders [Fri, 20 Sep 2019 12:22:04 +0000 (13:22 +0100)]
Gallery: Don't fire wikipage.content hook twice during init
We know the hook has already been fired once, because we listen
to it to start the gallery.
Firing it again here can cause other listeners to fail as only
the last-fired argument is stored.
Bug: T233401
Change-Id: I32ca866964c7a1f644a3cc28d636ec1430b8ef58
jenkins-bot [Fri, 20 Sep 2019 12:05:18 +0000 (12:05 +0000)]
Merge "Refactor MediaWikiIntegrationTestCase::resetDB() for readability"
jenkins-bot [Fri, 20 Sep 2019 10:38:52 +0000 (10:38 +0000)]
Merge "phan: Enable PhanTypeMismatchArgument issue"
jenkins-bot [Fri, 20 Sep 2019 10:32:31 +0000 (10:32 +0000)]
Merge "Fix namespace handling on Special:PagesWithProp"
Matěj Suchánek [Fri, 20 Sep 2019 09:41:58 +0000 (11:41 +0200)]
Fix namespace handling on Special:PagesWithProp
Firstly, restore the availability to query all namespaces.
There is no reason to remove this feature.
Secondly, fix code not to treat '0' as falsy. Instead, use
the request object to get an integer or null.
Bug: T50247
Change-Id: I182e25be2d694d010a1e8382a461c5c08f898581
jenkins-bot [Fri, 20 Sep 2019 09:39:17 +0000 (09:39 +0000)]
Merge "Use BlobStore::getBlobBatch for RevisionStore::newRevisionsFromBatch"
jenkins-bot [Fri, 20 Sep 2019 08:19:34 +0000 (08:19 +0000)]
Merge "import: Update docs about WikiRevision requiring a Config"
Translation updater bot [Fri, 20 Sep 2019 06:22:19 +0000 (08:22 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I66ff316a7d099f45e0cff71b7281117ea12a7db0
Volker E [Fri, 20 Sep 2019 01:06:48 +0000 (18:06 -0700)]
Mark consistently with any edit summaries
Marking with `.comment` to be consistent with `Linker:commentBlock`.
Change-Id: Idba91bd3d1345aa18da6745ad86f1bac2628dae7
jenkins-bot [Fri, 20 Sep 2019 00:22:16 +0000 (00:22 +0000)]
Merge "Log entries can be rendered with parentheses in HTML"
Volker E [Thu, 19 Sep 2019 20:36:48 +0000 (13:36 -0700)]
Messages collected above the form are meant to live as boxed messages
Also removing HTMLForm/VForm `.error` and `.warning` classes from
'forms.less'.
Bug: T233362
Change-Id: I4f8d8f228ab07253a7df24470791c26e39bc311a
jenkins-bot [Thu, 19 Sep 2019 20:26:45 +0000 (20:26 +0000)]
Merge "title: Improve docs of get*URL()"
jenkins-bot [Thu, 19 Sep 2019 19:07:34 +0000 (19:07 +0000)]
Merge "LogPager: separate getter from query filter"
jenkins-bot [Thu, 19 Sep 2019 18:52:09 +0000 (18:52 +0000)]
Merge "Add assertFileContains to MediaWikiTestCaseTrait"
Fomafix [Thu, 19 Sep 2019 18:39:57 +0000 (20:39 +0200)]
Use mw.util.getUrl( null ) to get the default mw.config.get( 'wgPageName' )
Change-Id: If802b23285762b0eb0d01eba7fd52761dcf9fb86
Matěj Suchánek [Fri, 13 Sep 2019 17:40:13 +0000 (19:40 +0200)]
LogPager: separate getter from query filter
The method LogPager::getFilterParams combines data aggregation and query
modification which is problematic: it starts with "get" and is public
but has a side-effect. Instead, make a dedicated private method for
building the query and remove the side-effect.
The new private method is now dedicated to building the query, and so
it can also make sure whether selection by log id is requested. If it's
the case, it won't filter the log types out (fix for T220834).
Also remove redundant comment: it's irrelevant to require callers to
call a private method.
Bug: T220834
Change-Id: I0fb6e6ee30ac626192cdf4ef920a731c03b2732f
Umherirrender [Tue, 18 Jun 2019 20:26:00 +0000 (22:26 +0200)]
phan: Enable PhanTypeMismatchArgument issue
Bug: T231636
Depends-On: I5de4f8f32a47c3f41c990ffe2ebd091fc23d1a58
Change-Id: I34d65fe3ff1916f2af675f0b1f19641b0cdfadc0
jenkins-bot [Thu, 19 Sep 2019 17:52:57 +0000 (17:52 +0000)]
Merge "export: Align docs of close(Rename/Reopen) methods"
Daimona Eaytoy [Sun, 15 Sep 2019 08:54:13 +0000 (10:54 +0200)]
title: Improve docs of get*URL()
These functions call fixUrlQueryArgs, which in turns uses wfArrayToCgi,
which can handle array values. Hence, array[] is also valid.
Replace string[] with array, as the values may also be integers.
Change-Id: I5de4f8f32a47c3f41c990ffe2ebd091fc23d1a58
Daimona Eaytoy [Sun, 15 Sep 2019 09:10:29 +0000 (11:10 +0200)]
export: Align docs of close(Rename/Reopen) methods
The base implementation says it can accept an array with a single
element, but the subclasses only had `string` in the docblock (although
they could handle the array case). Hence, replace docblocks in
subclasses with @inheritDoc to copy the parent description and avoid
such discrepancies in the future.
Plus, change `array` to `string[]` for better type inference.
Change-Id: Ica9929fd50f31d8d5f0e29f7c60364086ea39ae5
Daimona Eaytoy [Sun, 15 Sep 2019 14:40:42 +0000 (16:40 +0200)]
docs: Avoid some scalar juggling
Phan can treat scalar types as non-interchangeable with
`scalar_implicit_cast` set to false. This patch fixes some of those
issues (which are in total >1000), namely the ones with alphabetic order
< includes/actions.
Change-Id: Ib1c6573ab899088bc319b9da9ceaffc850da3dbe
Petr Pchelko [Wed, 18 Sep 2019 00:25:43 +0000 (17:25 -0700)]
Use BlobStore::getBlobBatch for RevisionStore::newRevisionsFromBatch
Bug: T233173
Change-Id: I3ffcfabc3524ce137593e0dba32c83f5eb7e5763
Daimona Eaytoy [Sun, 15 Sep 2019 13:53:14 +0000 (15:53 +0200)]
Fix using null for a non-nullable argument
These are reported by phan as PhanTypeMismatchArgumentNullableInternal
when null_casts_as_any_type is disabled.
Change-Id: I85076ee31c1bfc59a19600e84da0d915e425890a
jenkins-bot [Thu, 19 Sep 2019 16:47:51 +0000 (16:47 +0000)]
Merge "Remove Revision::getRevisionText from ApiQueryDeletedrevs"
jenkins-bot [Thu, 19 Sep 2019 16:05:24 +0000 (16:05 +0000)]
Merge "Sync up with Parsoid parserTests.txt"