lhc/web/wiklou.git
6 years agoMerge "Simplify OutputPage constructor"
jenkins-bot [Fri, 13 Oct 2017 20:10:43 +0000 (20:10 +0000)]
Merge "Simplify OutputPage constructor"

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 13 Oct 2017 19:56:25 +0000 (21:56 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ie065cfcf32cbd7f8e341766b545ac0f893cc508b

6 years agoSimplify OutputPage constructor
Max Semenik [Sat, 9 Sep 2017 02:12:37 +0000 (19:12 -0700)]
Simplify OutputPage constructor

Make it impossible to instantiate this class without passing it
context. This appears to be the oldest wfDeprecated() in MediaWiki.
All callers have been updated.

Change-Id: I00b9e283ad22c6274b358063b9f9e60fe93d5ee7

6 years agoMerge "Remove old workaround for HHVM"
jenkins-bot [Fri, 13 Oct 2017 19:42:22 +0000 (19:42 +0000)]
Merge "Remove old workaround for HHVM"

6 years agoAdd a few schemas to SQLite tests
Max Semenik [Wed, 21 May 2014 18:23:10 +0000 (11:23 -0700)]
Add a few schemas to SQLite tests

Change-Id: I09f2f98100b7bd74abc468b612dc6e90d95975c7

6 years agoDatabase: Support parenthesized JOINs
Brad Jorsch [Fri, 13 Oct 2017 17:51:43 +0000 (13:51 -0400)]
Database: Support parenthesized JOINs

SQL supports parentheses for grouping in the FROM clause.[1] This is
useful when you want to left-join against a join of other tables.

For example, say you have tables 'a', 'b', and 'c'. You want all rows
from 'a', along with rows from 'b' + 'c' only where both of those
exist.

 SELECT * FROM a LEFT JOIN b ON (a_b = b_id) JOIN c ON (b_c = c_id)

doesn't work, it'll only give you the rows where 'c' exists.

 SELECT * FROM a LEFT JOIN b ON (a_b = b_id) LEFT JOIN c ON (b_c = c_id)

doesn't work either, it'll give you rows from 'b' without a
corresponding row in 'c'. What you need to do is

 SELECT * FROM a LEFT JOIN (b JOIN c ON (b_c = c_id)) ON (a_b = b_id)

This patch implements this by extending the syntax for the $table
parameter to IDatabase::select(). When passing an array of tables, if a
value in the array is itself an array that is interpreted as a request
for a parenthesized join. To produce the example above, you'd do
something like

 $db->select(
     [ 'a', 'nest' => [ 'b', 'c' ] ],
     '*',
     [],
     __METHOD__,
     [],
     [
         'c' => [ 'JOIN', 'b_c = c_id ],
         'nest' => [ 'LEFT JOIN', 'a_b = b_id' ],
     ]
 );

[1]: In standards as far back as SQL-1992 (I couldn't find an earlier
 version), and it seems to be supported by at least MySQL 5.6, MariaDB
 10.1.28, PostgreSQL 9.3, PostgreSQL 10.0, Oracle 11g R2, SQLite 3.20.1,
 and MSSQL 2014 (from local testing and sqlfiddle.com).

Change-Id: I1e0a77381e06d885650a94f53847fb82f01c2694

6 years agoReplace more uses of "SELECT *"
Brad Jorsch [Thu, 12 Oct 2017 18:34:15 +0000 (14:34 -0400)]
Replace more uses of "SELECT *"

With the introduction of CommentStore, selects from various table
require certain joins or column aliases for proper operation. The
upcoming actor table change, and the suggested title table change, will
add more such requirements.

Change-Id: Ic8213bff74b8350b15cd271d0ef252e63e7e79bd

6 years agoMerge "Split sql fulltext index creation into two statements"
jenkins-bot [Fri, 13 Oct 2017 19:00:12 +0000 (19:00 +0000)]
Merge "Split sql fulltext index creation into two statements"

6 years agoSplit sql fulltext index creation into two statements
Erik Bernhardson [Tue, 10 Oct 2017 16:51:39 +0000 (09:51 -0700)]
Split sql fulltext index creation into two statements

MySQL prior to 5.6.8 (https://bugs.mysql.com/bug.php?id=67004) did
not support adding multiple fulltext indices at the same time on InnoDB.
Split them into two statements to work around this limitation.

Bug: T177477
Change-Id: Ib366fa04724abac6d740bea017274ad62730b9e5

6 years agoMerge "Hard deprecate wfBaseConvert()"
jenkins-bot [Fri, 13 Oct 2017 18:15:34 +0000 (18:15 +0000)]
Merge "Hard deprecate wfBaseConvert()"

6 years agoMerge "RCFilters: Don't reload when removing highlighted item"
jenkins-bot [Fri, 13 Oct 2017 15:11:45 +0000 (15:11 +0000)]
Merge "RCFilters: Don't reload when removing highlighted item"

6 years agoMerge "Add missing retrun in getSummaryInputOOUI()"
jenkins-bot [Fri, 13 Oct 2017 15:11:31 +0000 (15:11 +0000)]
Merge "Add missing retrun in getSummaryInputOOUI()"

6 years agoMerge "RCFilters: Use GroupWidget for grouping buttons and aggregating events"
jenkins-bot [Fri, 13 Oct 2017 15:04:11 +0000 (15:04 +0000)]
Merge "RCFilters: Use GroupWidget for grouping buttons and aggregating events"

6 years agoSplit Revision tests into Unit & Integration classes
addshore [Thu, 12 Oct 2017 12:23:33 +0000 (13:23 +0100)]
Split Revision tests into Unit & Integration classes

Change-Id: If10b102a1a0d680b5f067bf34c0fafcb59c09048

6 years agoAdd missing retrun in getSummaryInputOOUI()
WMDE-Fisch [Fri, 13 Oct 2017 11:20:12 +0000 (13:20 +0200)]
Add missing retrun in getSummaryInputOOUI()

Change-Id: I26ad5bd4ed7e4d0e690c48354dc281f4636becd7

6 years agoMerge "Remove maintenance/checkSyntax.php"
jenkins-bot [Fri, 13 Oct 2017 06:58:19 +0000 (06:58 +0000)]
Merge "Remove maintenance/checkSyntax.php"

6 years agoMerge "Update PsySh from 0.8.5 to 0.8.11"
jenkins-bot [Fri, 13 Oct 2017 06:47:05 +0000 (06:47 +0000)]
Merge "Update PsySh from 0.8.5 to 0.8.11"

6 years agoMerge "Move wfCountDown() into Maintenance class"
jenkins-bot [Fri, 13 Oct 2017 04:24:59 +0000 (04:24 +0000)]
Merge "Move wfCountDown() into Maintenance class"

6 years agoRemove maintenance/checkSyntax.php
Max Semenik [Fri, 13 Oct 2017 02:54:05 +0000 (19:54 -0700)]
Remove maintenance/checkSyntax.php

Was useful years ago, but now we have much better tools.
Not used anywhere search can find.

Change-Id: Iaa094a686aeefd9a6071abc843ffc33c8daf2a5a

6 years agoHard deprecate wfBaseConvert()
Max Semenik [Fri, 13 Oct 2017 02:38:26 +0000 (19:38 -0700)]
Hard deprecate wfBaseConvert()

No callers anywhere.

Change-Id: If804d1153ca8e9e82eda3af4d992e395ab112158

6 years agoRemove old workaround for HHVM
Max Semenik [Fri, 13 Oct 2017 00:38:34 +0000 (17:38 -0700)]
Remove old workaround for HHVM

The bug in question was fixed in HHVM 3.6.0, our minimum requirement is 3.6.5.

Change-Id: Id1d65cf438c7148064d747f09728ef4cb5f51b52

6 years agoRCFilters: Use GroupWidget for grouping buttons and aggregating events
Moriel Schottlender [Fri, 13 Oct 2017 00:27:39 +0000 (17:27 -0700)]
RCFilters: Use GroupWidget for grouping buttons and aggregating events

Bug: T168849
Change-Id: I3d68121aa4b281751f6ea6cce2c68147855d6c68

6 years agoApiQueryLinks: Avoid MySQL order-by bug
Brad Jorsch [Wed, 12 Apr 2017 15:38:20 +0000 (11:38 -0400)]
ApiQueryLinks: Avoid MySQL order-by bug

MySQL (and MariaDB) have a strange bug where it will often get confused
and insist on filesorting if a field that is constant in the WHERE
clause is also present in ORDER BY. We've worked around this in several
places in the API, and in fact it was done in this very module in r34720
and r37250.

But when r67450 added the pltitles and tltemplates parameters, it didn't
adjust the logic for avoiding the DB bug. This does that now.

Change-Id: I9f37f8812a94cdd088d3940da43d1046ebd455d6

6 years agoMove wfCountDown() into Maintenance class
Max Semenik [Fri, 13 Oct 2017 00:24:46 +0000 (17:24 -0700)]
Move wfCountDown() into Maintenance class

Doing this allows to restrict it to maintenance scripts and support
quiet mode.

Change-Id: Iad0858ce1fdd64f746d5f9d4a7d6ed96f21e94df

6 years agoMerge "Update email mute copy on preferences page"
jenkins-bot [Fri, 13 Oct 2017 00:04:42 +0000 (00:04 +0000)]
Merge "Update email mute copy on preferences page"

6 years agoUpdate PsySh from 0.8.5 to 0.8.11
Gergő Tisza [Thu, 12 Oct 2017 23:25:09 +0000 (16:25 -0700)]
Update PsySh from 0.8.5 to 0.8.11

0.8.11 adds bracketed paste support for readline,
meaning that it can differentiate between
interaction-triggering characters (such as newline
or tab) which have been entered manually, and ones
which have been pasted so their special effect should
be suppressed. Also a bunch of small bugfixes and features.

Release summaries: https://github.com/bobthecow/psysh/releases
All changes: https://github.com/bobthecow/psysh/compare/v0.8.5...v0.8.11?expand=1

There are no dependency changes; I've skimmed the code
changes and all seem harmless.

Change-Id: I33456904787fd86458249ddfbb00c6b55592da07

6 years agoMerge "mw.rcfilters.Controller: Avoid ES6 method String#endsWith"
jenkins-bot [Thu, 12 Oct 2017 22:43:55 +0000 (22:43 +0000)]
Merge "mw.rcfilters.Controller: Avoid ES6 method String#endsWith"

6 years agoMerge "Update OOjs UI to v0.23.5"
jenkins-bot [Thu, 12 Oct 2017 22:38:41 +0000 (22:38 +0000)]
Merge "Update OOjs UI to v0.23.5"

6 years agomw.rcfilters.Controller: Avoid ES6 method String#endsWith
Bartosz Dziewoński [Thu, 12 Oct 2017 22:17:11 +0000 (00:17 +0200)]
mw.rcfilters.Controller: Avoid ES6 method String#endsWith

We still support ES5 browsers such as Internet Explorer 11 and Opera 12.

Bug: T178120
Change-Id: Ic85063dfbbcf26a99d343845c9fb801f1888d750

6 years agoMerge "Skin: Make skins aware of their registered skin name"
jenkins-bot [Thu, 12 Oct 2017 21:55:35 +0000 (21:55 +0000)]
Merge "Skin: Make skins aware of their registered skin name"

6 years agoUpdate OOjs UI to v0.23.5
James D. Forrester [Thu, 12 Oct 2017 21:36:40 +0000 (14:36 -0700)]
Update OOjs UI to v0.23.5

Release notes:
 https://phabricator.wikimedia.org/diffusion/GOJU/browse/master/History.md;v0.23.5

Also, replace uses of `OOUI\TextInputWidget( [ 'multiline' => true ] )`
with `OOUI\MultilineTextInputWidget()` to avoid deprecation warnings
(which cause unit tests to fail).

Depends-on: I990b14982ffb72fe981040d02c7023d13f721aaa
Change-Id: If8312c60e1547a6177f5491011badb6576f54b21

6 years agoUpdate email mute copy on preferences page
Dayllan Maza [Thu, 12 Oct 2017 16:25:18 +0000 (12:25 -0400)]
Update email mute copy on preferences page

Bug: T176365
Change-Id: Iabe26fe12ee212217ab6b05016638a683df94b05

6 years agoMerge "deferred: Improve DeferredUpdates test coverage"
jenkins-bot [Thu, 12 Oct 2017 21:23:19 +0000 (21:23 +0000)]
Merge "deferred: Improve DeferredUpdates test coverage"

6 years agoMerge "shell: Deduplicate code in Command.php by combining else paths"
jenkins-bot [Thu, 12 Oct 2017 20:53:18 +0000 (20:53 +0000)]
Merge "shell: Deduplicate code in Command.php by combining else paths"

6 years agoshell: Deduplicate code in Command.php by combining else paths
Fomafix [Thu, 12 Oct 2017 10:51:05 +0000 (12:51 +0200)]
shell: Deduplicate code in Command.php by combining else paths

Also reduce indenting.

Change-Id: I33f83786c38bba0919372df0d5cdfa806d4361fc

6 years agodeferred: Improve DeferredUpdates test coverage
Timo Tijhof [Thu, 12 Oct 2017 18:58:33 +0000 (19:58 +0100)]
deferred: Improve DeferredUpdates test coverage

From 1% of lines to 12% in deferred/.
From 6% of lines to 68% in DeferredUpdates.php.

* Adding relevant @covers tags to existing tests.
* Add coverage for MWCallableUpdate.
* Add coverage for MergeableUpdate.

Also:
* Make MergeableUpdate extend DeferrableUpdate.
  1. Because PHPUnit doesn't support implementing multiple interfaces
     in a mock, and would make the mock fail the typehint at run-time.
  2. It DeferredUpdates doesn't support having a MergeableUpdate that isn't
     itself a DeferrableUpdate given the only way to reach that code is past
     methods that are type-hinted with DeferrableUpdate.
  3. Making the interface extend DeferrableUpdate helps produce better and
     earlier errors. Instead of run-time error:
     > Argument 1 passed to addUpdate() must implement interface DeferrableUpdate
     > instance of MergeableUpdate given
     We get:
     > Fatal error: Class .. contains 1 abstract method and must therefore be
     > declared abstract or implement the remaining methods (doUpdate)

Change-Id: Ie384bf849a96bb37dc3e4a4154da2b02889e9fc8

6 years agoFollow-up d25a944635: fix PHP notice
Roan Kattouw [Thu, 12 Oct 2017 19:32:26 +0000 (12:32 -0700)]
Follow-up d25a944635: fix PHP notice

Change-Id: Id4d58f4eb2a26cb2f9cf6d36194f3e0ae9c84135

6 years agoMerge "SpecialRunJobs: Remove unused JSON response"
jenkins-bot [Thu, 12 Oct 2017 19:29:24 +0000 (19:29 +0000)]
Merge "SpecialRunJobs: Remove unused JSON response"

6 years agoMerge "Remove useless commit calls in JobRunner"
jenkins-bot [Thu, 12 Oct 2017 19:29:20 +0000 (19:29 +0000)]
Merge "Remove useless commit calls in JobRunner"

6 years agoRemove useless commit calls in JobRunner
Aaron Schulz [Thu, 12 Oct 2017 19:00:07 +0000 (12:00 -0700)]
Remove useless commit calls in JobRunner

These were meant as sanity checks, but would fail in those
unusual cases anyway with exceptions. Instead, have an
early check to make sure no explicit transaction rounds
are active when JobRunner:run is called.

Change-Id: I723c77c8d3ef7ec4dcf09ce6d549b4fd57bdf1c2

6 years agoMerge "Drop call of deprecated IE8-support method"
jenkins-bot [Thu, 12 Oct 2017 17:35:08 +0000 (17:35 +0000)]
Merge "Drop call of deprecated IE8-support method"

6 years agoSpecialRunJobs: Remove unused JSON response
Timo Tijhof [Wed, 11 Oct 2017 23:47:28 +0000 (00:47 +0100)]
SpecialRunJobs: Remove unused JSON response

In preparation of making SpecialRunJobs a normal special page
that doesn't override output handling, but instead uses normal
HTML-based responses for sync, and DeferredUpdates for async,
start by removing the text/plain JSON response it currently
has (also to verify that it really isn't used).

Bug: T175146
Change-Id: I8621c4e2ba94a7d312adaf04a46e1a214af909fe

6 years agoAPI: Handle pltitles/tltemplates/clcategories/imimages with only invalid titles
Brad Jorsch [Wed, 12 Apr 2017 16:04:50 +0000 (12:04 -0400)]
API: Handle pltitles/tltemplates/clcategories/imimages with only invalid titles

If the parameter contains only invalid titles, it shouldn't be ignored.

Bug: T162816
Change-Id: I3ee6aeab421db5732b652fed21292d8509f8d757

6 years agoDrop call of deprecated IE8-support method
Ed Sanders [Thu, 12 Oct 2017 15:11:25 +0000 (16:11 +0100)]
Drop call of deprecated IE8-support method

Bug: T123219
Change-Id: Ie85dd4442e93f1f1745227f5f3f9d7ddefcd2d46

6 years agoMerge "Return stderr from Shell\Command"
jenkins-bot [Thu, 12 Oct 2017 09:21:08 +0000 (09:21 +0000)]
Merge "Return stderr from Shell\Command"

6 years agoReturn stderr from Shell\Command
Max Semenik [Sat, 3 Dec 2016 00:12:59 +0000 (16:12 -0800)]
Return stderr from Shell\Command

Change-Id: I5551ae4bbe7b539b528a734aa82198b11f103871

6 years agoMerge "Fix inconsistent i18n escaping in category paging links."
jenkins-bot [Thu, 12 Oct 2017 07:52:02 +0000 (07:52 +0000)]
Merge "Fix inconsistent i18n escaping in category paging links."

6 years agoMerge "Delete RevisionStorageTestContentHandlerUseDB"
jenkins-bot [Thu, 12 Oct 2017 07:11:26 +0000 (07:11 +0000)]
Merge "Delete RevisionStorageTestContentHandlerUseDB"

6 years agoMerge "RevisionStorageTest: use MediaWikiTestCase methods for setting globals"
jenkins-bot [Thu, 12 Oct 2017 07:11:23 +0000 (07:11 +0000)]
Merge "RevisionStorageTest: use MediaWikiTestCase methods for setting globals"

6 years agoDelete RevisionStorageTestContentHandlerUseDB
addshore [Wed, 11 Oct 2017 14:55:04 +0000 (15:55 +0100)]
Delete RevisionStorageTestContentHandlerUseDB

Due to this test file not ending in Test.php it doesn't
get run with all of the other phpunit tests.

When changing the name so that the test are run they fail:
https://gerrit.wikimedia.org/r/#/c/383587/
I119e80c6674b22dc3eb02a023a346f842ef8cd21

It is likely these tests have actually never run.

Rather than try to fix these 5 year olds tests lets just scrap
them and start fresh.

Change-Id: I0318614127d6b4d9661b875ab53af3f6e286ac95

6 years agoMerge "RevisionStorageTest: Add tests for Revision::newFromTitle()"
jenkins-bot [Thu, 12 Oct 2017 07:02:16 +0000 (07:02 +0000)]
Merge "RevisionStorageTest: Add tests for Revision::newFromTitle()"

6 years agoRevisionStorageTest: use MediaWikiTestCase methods for setting globals
addshore [Wed, 11 Oct 2017 14:02:38 +0000 (15:02 +0100)]
RevisionStorageTest: use MediaWikiTestCase methods for setting globals

Change-Id: I8712517b50c5b552fe2d0e248b5735945a98fba4

6 years agoRevisionStorageTest: Add tests for Revision::newFromTitle()
addshore [Wed, 11 Oct 2017 13:56:37 +0000 (14:56 +0100)]
RevisionStorageTest: Add tests for Revision::newFromTitle()

Change-Id: I131b033d72cd4775618b972dbaf40b9f28dd3374

6 years agoMerge "Fix PostgreSQL patch-add-3d.sql by replacing it"
jenkins-bot [Thu, 12 Oct 2017 03:34:45 +0000 (03:34 +0000)]
Merge "Fix PostgreSQL patch-add-3d.sql by replacing it"

6 years agoMerge "Have CommentStore limit the maximum character length of comments"
jenkins-bot [Thu, 12 Oct 2017 03:28:17 +0000 (03:28 +0000)]
Merge "Have CommentStore limit the maximum character length of comments"

6 years agoFix PostgreSQL patch-add-3d.sql by replacing it
Brad Jorsch [Fri, 15 Sep 2017 16:12:21 +0000 (12:12 -0400)]
Fix PostgreSQL patch-add-3d.sql by replacing it

Follows-up 6260545feea2f5d05ae8. (T157348)

If updates are run for the first time on an installation that already
has '3D' in the enum (e.g. because it's a fresh install), the update
fails.

Instead of blindly running a patch file, we instead add a method that
checks whether the enum type already contains the value before adding
it.

Bug: T177417
Change-Id: Iad10cb88cf1cb35cfb95ce98a556b33688158a88

6 years agoHard deprecate wfShellExecDisabled()
Max Semenik [Thu, 12 Oct 2017 02:42:18 +0000 (19:42 -0700)]
Hard deprecate wfShellExecDisabled()

No users anywhere, only ever had 1 caller outside of core.

Change-Id: I1361d3b555b642b75ec58f071a02407a611b44f9

6 years agoMerge "Revision split __construct method"
jenkins-bot [Thu, 12 Oct 2017 01:17:07 +0000 (01:17 +0000)]
Merge "Revision split __construct method"

6 years agoMerge "Revision: test and fix __construct exceptions"
jenkins-bot [Thu, 12 Oct 2017 01:15:50 +0000 (01:15 +0000)]
Merge "Revision: test and fix __construct exceptions"

6 years agoRevision split __construct method
addshore [Wed, 11 Oct 2017 12:57:47 +0000 (13:57 +0100)]
Revision split __construct method

This makes the logic much easier to follow and each type of
construction easier to see.
This also emphisises the testing of construction being split
into row object vs array

Change-Id: Ie3aa6ec4c026f0249ccd438903fec27fcd266b67

6 years agoRevision: test and fix __construct exceptions
addshore [Wed, 11 Oct 2017 12:40:03 +0000 (13:40 +0100)]
Revision: test and fix __construct exceptions

This adds tests for each exception that can be thrown
in the Revision constructor.
It also fixes where the exception for the content part of a row
not containing a content object is thrown.
Prior to this ->getModel() could be called on the content row
element before the check had actually occoured.

Change-Id: Ia2d2cfdca01871fc6dbb96707d781db33d7d0a40

6 years agoMerge "RevisionStorageTest: code style fixes"
jenkins-bot [Thu, 12 Oct 2017 00:07:01 +0000 (00:07 +0000)]
Merge "RevisionStorageTest: code style fixes"

6 years agoRCFilters: Don't reload when removing highlighted item
Moriel Schottlender [Thu, 12 Oct 2017 00:05:03 +0000 (17:05 -0700)]
RCFilters: Don't reload when removing highlighted item

Bug: T164131
Change-Id: I1f50276a60b8aae3034409664dd77f6ba1d5d87c

6 years agoMerge "RevisionTest: refactor test dataProviders"
jenkins-bot [Thu, 12 Oct 2017 00:01:57 +0000 (00:01 +0000)]
Merge "RevisionTest: refactor test dataProviders"

6 years agoMerge "phpcs.xml: Remove missing functions from PrefixedGlobalFunctions 'ignoreList'"
jenkins-bot [Wed, 11 Oct 2017 23:59:43 +0000 (23:59 +0000)]
Merge "phpcs.xml: Remove missing functions from PrefixedGlobalFunctions 'ignoreList'"

6 years agoRevisionStorageTest: code style fixes
addshore [Tue, 10 Oct 2017 16:58:13 +0000 (17:58 +0100)]
RevisionStorageTest: code style fixes

Change-Id: I0d8e6e58c74c3ba849f9cb4a3a159a62049604a3

6 years agoRevisionTest: refactor test dataProviders
addshore [Tue, 10 Oct 2017 16:38:31 +0000 (17:38 +0100)]
RevisionTest: refactor test dataProviders

Change-Id: I238d0294de7112a78ef18ffba195c0c175d6d735

6 years agoDeprecate $wgEnableAPI and $wgEnableWriteAPI
Tim Starling [Wed, 11 Oct 2017 23:02:05 +0000 (10:02 +1100)]
Deprecate $wgEnableAPI and $wgEnableWriteAPI

$wgEnableAPI and $wgEnableWriteAPI are now deprecated and will be removed in
a future version. The API is now considered to be stable, secure and
essential.

Bug: T115414
Change-Id: I8c98ce63afd82677ecf662f8159e58be1759bde0

6 years agoMerge "RCFilters: Store invert as a standard filter/parameter"
jenkins-bot [Wed, 11 Oct 2017 20:30:41 +0000 (20:30 +0000)]
Merge "RCFilters: Store invert as a standard filter/parameter"

6 years agoFix inconsistent i18n escaping in category paging links.
Brian Wolff [Wed, 11 Oct 2017 20:29:05 +0000 (20:29 +0000)]
Fix inconsistent i18n escaping in category paging links.

prev-page and next-page were being escaped when they were a
link, but not when they were plain text. They should be escaped
in both cases.

This issue was discovered with an experimental phan plugin I'm
working on.

Change-Id: I6caac76299b21a54cd7cb732ad93187e3d37c99e

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 11 Oct 2017 20:07:15 +0000 (22:07 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I2cb99cda301b6a76bc6ccb76819e4774d539910c

6 years agophpcs.xml: Remove missing functions from PrefixedGlobalFunctions 'ignoreList'
Bartosz Dziewoński [Wed, 11 Oct 2017 18:25:26 +0000 (20:25 +0200)]
phpcs.xml: Remove missing functions from PrefixedGlobalFunctions 'ignoreList'

Some of these functions appear to have been removed or moved into
proper classes, so remove the unnecessary exceptions.

Also include a list of where these functions are defined.

Change-Id: I7d525f17dd52321475707d021f489857ce98894d

6 years agoMerge "Make $mText an explicit member variable in TextContent"
jenkins-bot [Wed, 11 Oct 2017 18:13:35 +0000 (18:13 +0000)]
Merge "Make $mText an explicit member variable in TextContent"

6 years agoMerge "RevisionTest code style fixes & file split"
jenkins-bot [Wed, 11 Oct 2017 18:11:16 +0000 (18:11 +0000)]
Merge "RevisionTest code style fixes & file split"

6 years agoMake $mText an explicit member variable in TextContent
addshore [Tue, 10 Oct 2017 16:02:11 +0000 (17:02 +0100)]
Make $mText an explicit member variable in TextContent

Change-Id: I1e1f652e4ef6d02bc76105407cb23975625560cd

6 years agoFix unblocking autoblocks
Amir Sarabadani [Wed, 11 Oct 2017 15:19:05 +0000 (17:19 +0200)]
Fix unblocking autoblocks

Bug: T177952
Change-Id: Ib9c245fe47ed0009a8db8437798574ad4603a8a5

6 years agoRevisionTest code style fixes & file split
addshore [Tue, 10 Oct 2017 15:55:13 +0000 (16:55 +0100)]
RevisionTest code style fixes & file split

Change-Id: I054a6810e29225e4341c518631a6dba9f40a1531

6 years agoMerge "Setting Urdu translations of some magic words and special pages"
jenkins-bot [Wed, 11 Oct 2017 15:45:21 +0000 (15:45 +0000)]
Merge "Setting Urdu translations of some magic words and special pages"

6 years agoSetting Urdu translations of some magic words and special pages
Obaid Raza [Sat, 7 Oct 2017 09:21:49 +0000 (09:21 +0000)]
Setting Urdu translations of some magic words and special pages

Change-Id: I4ac5ac7e13c473adc0026776ef7d63b853a42976

6 years agomw.action.edit.styles: Remove max-width on edit summary field's label too
Bartosz Dziewoński [Wed, 11 Oct 2017 15:00:09 +0000 (17:00 +0200)]
mw.action.edit.styles: Remove max-width on edit summary field's label too

Bug: T162849
Change-Id: I37d483dba63b9694d67a9c99eb70ca892d8d8662

6 years agoMerge "Change Tagged edits help icon"
jenkins-bot [Wed, 11 Oct 2017 13:58:26 +0000 (13:58 +0000)]
Merge "Change Tagged edits help icon"

6 years agoChange Tagged edits help icon
petarpetkovic [Fri, 6 Oct 2017 12:47:46 +0000 (14:47 +0200)]
Change Tagged edits help icon

- Change the link that help icon leads to.
- Reduce the size of help icon.

Bug: T176661
Change-Id: Ifc3b3e9efce00ea601795bd67a2de17c4be3cf6f

6 years agoFix SVG href error message to be more accurate and useful
Matthew Flaschen [Wed, 11 Oct 2017 06:04:08 +0000 (02:04 -0400)]
Fix SVG href error message to be more accurate and useful

Change-Id: I2519e1802a62e4d7c1d666b4325982063ff9b40c

6 years agoMerge "Add test cases for digit grouping (commafy) in Polish"
jenkins-bot [Wed, 11 Oct 2017 01:46:04 +0000 (01:46 +0000)]
Merge "Add test cases for digit grouping (commafy) in Polish"

6 years agoHave CommentStore limit the maximum character length of comments
Brad Jorsch [Tue, 10 Oct 2017 15:52:13 +0000 (11:52 -0400)]
Have CommentStore limit the maximum character length of comments

I92954c9 accidentally allowed comments, when CommentStore is enabled, to
be the full 65535 bytes available in the database field. This was never
intended.

There is not yet any consensus in T6714 or T6715 on just how long the
longer comments should be, for now we'll set 1000 because Tim says so.
Note this doesn't change the UI to actually allow more characters and
will only take effect once $wgCommentTableSchemaMigrationStage is raised
above MIGRATION_OLD.

Note this also doesn't make the limit configurable. That too can be done
later if needed, again along with whatever changes are necessary to the
UI to account for a variable limit.

Change-Id: I7e0c55619210ebab467436f0bb915271c0a7ccdc

6 years agoRCFilters: Store invert as a standard filter/parameter
Stephane Bisson [Fri, 6 Oct 2017 18:52:36 +0000 (14:52 -0400)]
RCFilters: Store invert as a standard filter/parameter

Change-Id: Ie623dac923cc2feb30f406c48accdadfd8d80753

6 years agoMerge "Remove outdated code comments in MessagesXx.php files"
jenkins-bot [Tue, 10 Oct 2017 22:27:14 +0000 (22:27 +0000)]
Merge "Remove outdated code comments in MessagesXx.php files"

6 years agoMerge "Ensure only strings are passed to mysql_real_escape_string()"
jenkins-bot [Tue, 10 Oct 2017 21:40:16 +0000 (21:40 +0000)]
Merge "Ensure only strings are passed to mysql_real_escape_string()"

6 years agoAdd test cases for digit grouping (commafy) in Polish
Bartosz Dziewoński [Tue, 10 Oct 2017 20:36:31 +0000 (22:36 +0200)]
Add test cases for digit grouping (commafy) in Polish

According to the typographical convention, a thousands separator
should not be inserted in numbers that are four digits long (between
1000 and 9999), unlike in English where it's usually acceptable.
This logic is currently implemented in LanguagePl::commafy().

Bug: T177846
Change-Id: I6dbd8febcf59000067cdd7d3c11111f2f77f4e66

6 years agoRemove outdated code comments in MessagesXx.php files
Bartosz Dziewoński [Tue, 10 Oct 2017 17:50:19 +0000 (19:50 +0200)]
Remove outdated code comments in MessagesXx.php files

MessagesKk_arab.php:
MessagesKk_cyrl.php:
MessagesKk_latn.php:
MessagesRu.php:
* Translations of a comment warning end-users against editing
  localisation messages in these files. That comment was removed
  from  MessagesEn.php in b38247894422fb34dbddaea23cfc08cd72f48d5b,
  as we no longer store localisation messages here.

MessagesKsh.php
* Warning for translators not to use encodings other than UTF-8.

Change-Id: I1ff2cf035b84dc53c368ad7182f294c7fb8f1a3d

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 10 Oct 2017 20:03:09 +0000 (22:03 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I07c8db3e1ae9bbccac12ab3d1fff365091b84794

6 years agoSkin: Make skins aware of their registered skin name
Timo Tijhof [Fri, 25 Aug 2017 21:25:57 +0000 (22:25 +0100)]
Skin: Make skins aware of their registered skin name

Remove the need for skin classes to have a hardcoded string as
skinname property value. This previously created the possibility
for the value to not match the skinname in the SkinFactory registry,
which creates confusing situations where message keys and load.php
urls are crafted with the internal skinname, but all other
handling (useskin, preferences, hooks, SkinFactory, ResourceLoader,
etc.) operate on the names in the registry.

We could enforce the matching by requiring a 1:1 relationship between
skinnames and Skin sub classes, but that is not backwards-compatible
with the 1:many map that wgValidSkinNames provides, and not compatible
SkinFactory either, which supports a factory function to return an
object. This makes a lot of sense and allows Skin-classees to be
re-used and composed with injection. If we do want to enforce 1:1,
we could validate it with a structure PHPUnit test, but instead this
change just uses the injected name from the constructor (passed by
ServiceWiring, previously unused).

The added unit test shows the new behaviour. Before this change,
getSkinName() on SkinFallback would always return 'fallback',
whereas now each instance of the class adheres to the registered
name (if it differs from the default).

Update the two direct uses of protected $skin->skinname to use
$skin->getSkinName() instead to enable sub-classes to optionally
implement an alternate source for the self-name (or to hardcode
it there as before).

Bug: T173546
Change-Id: I4383dcc3094da6e3c9ac12dc6c9311128db9db6e

6 years agoMerge "Suppress error in MediaWiki\Shell\Command"
jenkins-bot [Tue, 10 Oct 2017 18:52:52 +0000 (18:52 +0000)]
Merge "Suppress error in MediaWiki\Shell\Command"

6 years agoMerge "Define MEDIAWIKI_JOB_RUNNER in runJobs.php"
jenkins-bot [Tue, 10 Oct 2017 16:57:22 +0000 (16:57 +0000)]
Merge "Define MEDIAWIKI_JOB_RUNNER in runJobs.php"

6 years agoMerge "RCFilters UI: In the highlight code, use .data() the way it was meant to be...
jenkins-bot [Tue, 10 Oct 2017 15:32:39 +0000 (15:32 +0000)]
Merge "RCFilters UI: In the highlight code, use .data() the way it was meant to be used"

6 years agoMerge "Special:UserLogin: Remove unnecessarily specificity from selectors"
jenkins-bot [Tue, 10 Oct 2017 07:30:49 +0000 (07:30 +0000)]
Merge "Special:UserLogin: Remove unnecessarily specificity from selectors"

6 years agoMerge "Special:UserLogin: Set easier readable `line-height` on form"
jenkins-bot [Tue, 10 Oct 2017 07:30:35 +0000 (07:30 +0000)]
Merge "Special:UserLogin: Set easier readable `line-height` on form"

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 9 Oct 2017 20:03:54 +0000 (22:03 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I088f6eec0c374cb1d4d6cb54ac1468a971b9d53d

6 years agoUnwrap types in function docs from {}
Umherirrender [Mon, 9 Oct 2017 19:31:07 +0000 (21:31 +0200)]
Unwrap types in function docs from {}

{} is used in javascript, not in php

Used @(?:param|return|var|throws) \{[^\}]+\} to find&replace

Change-Id: I2e0c9c64b6528f3899d2809d585b5e4859838007

6 years agoDefine MEDIAWIKI_JOB_RUNNER in runJobs.php
Aaron Schulz [Mon, 9 Oct 2017 17:10:13 +0000 (10:10 -0700)]
Define MEDIAWIKI_JOB_RUNNER in runJobs.php

This is the same value used by the WMF /rpc entrypoint.

Change-Id: I146a36c76ff2136e5fa9b768673987ebd611403c