lhc/web/wiklou.git
7 years agoMerge "Move ORAResult to /db"
jenkins-bot [Sat, 18 Feb 2017 03:25:40 +0000 (03:25 +0000)]
Merge "Move ORAResult to /db"

7 years agoMerge "Move Field classes to Rdbms namespace"
jenkins-bot [Sat, 18 Feb 2017 03:25:35 +0000 (03:25 +0000)]
Merge "Move Field classes to Rdbms namespace"

7 years agoMerge "resourceloader: Consistent stylesheet order for debug and non-debug"
jenkins-bot [Sat, 18 Feb 2017 01:03:34 +0000 (01:03 +0000)]
Merge "resourceloader: Consistent stylesheet order for debug and non-debug"

7 years agoMerge "Fix timestamp format in maintenance/manageJobs.php"
jenkins-bot [Sat, 18 Feb 2017 00:41:15 +0000 (00:41 +0000)]
Merge "Fix timestamp format in maintenance/manageJobs.php"

7 years agobuild: Bump stylelint and make pass
James D. Forrester [Fri, 17 Feb 2017 23:26:05 +0000 (15:26 -0800)]
build: Bump stylelint and make pass

 grunt-stylelint              0.6.0  →   0.7.0
 stylelint-config-wikimedia   0.3.0  →   0.4.1

Change-Id: Id87b8df04d415e1f1058a4042a31408236402037

7 years agoresourceloader: Consistent stylesheet order for debug and non-debug
Timo Tijhof [Fri, 17 Feb 2017 23:21:59 +0000 (15:21 -0800)]
resourceloader: Consistent stylesheet order for debug and non-debug

Previously, style modules were only in a predictable order for production mode.
In debug mode, the order was determined by order in which modules were added
to queue at run time. This made it sometimes hard to debug, especially when
dealing with gadgets that apply in a different order among each other.

Change-Id: I4bff0c91d127e4ad8015cd8c1775220fe460cbc3

7 years agoMerge "Don't bail on single-line definition list due to excess close tags."
jenkins-bot [Fri, 17 Feb 2017 21:53:20 +0000 (21:53 +0000)]
Merge "Don't bail on single-line definition list due to excess close tags."

7 years agoMerge "Protect -{...}- variant constructs in definition lists."
jenkins-bot [Fri, 17 Feb 2017 21:40:34 +0000 (21:40 +0000)]
Merge "Protect -{...}- variant constructs in definition lists."

7 years agoDon't bail on single-line definition list due to excess close tags.
C. Scott Ananian [Thu, 22 Dec 2016 17:30:36 +0000 (12:30 -0500)]
Don't bail on single-line definition list due to excess close tags.

When parsing a single line definition list, we track nested tags so that:

; <b>foo:bar</b>: baz

breaks before `baz`, not between `foo` and `bar`.  But we currently bail
out of this algorithm entirely if we see a mismatched close tag.  We should
just ignore the unmatched tag, like Parsoid does.

Change-Id: I6306dcad6347abeb6ab001d35562f1ab9f374bd1

7 years agoMerge "resourceloader: Limit module_deps write lock to unique index"
jenkins-bot [Fri, 17 Feb 2017 21:32:29 +0000 (21:32 +0000)]
Merge "resourceloader: Limit module_deps write lock to unique index"

7 years agoMerge "resourceloader: Use upsert() instead of replace() for module_deps write"
jenkins-bot [Fri, 17 Feb 2017 21:26:57 +0000 (21:26 +0000)]
Merge "resourceloader: Use upsert() instead of replace() for module_deps write"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 17 Feb 2017 20:58:39 +0000 (21:58 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: Ie3c31443ad7baae08af90f15eba74443257dcb7e

7 years agoProtect -{...}- variant constructs in definition lists.
C. Scott Ananian [Tue, 13 Dec 2016 20:37:04 +0000 (15:37 -0500)]
Protect -{...}- variant constructs in definition lists.

Given the wikitext:

;-{zh-cn:AAA;zh-tw:BBB}-

Prevent `doBlockLevels` from trying to split the definition list at the
embedded colon and using `AAA;zh-tw:BBB}-` as the `<dd>` portion.

Bug: T153135
Change-Id: I3a4d02f1fbd0d0fe8278d6b7c66005f0dd3dd36b

7 years agoMerge "Demote "throttler data not found" logs to info level"
jenkins-bot [Fri, 17 Feb 2017 17:12:41 +0000 (17:12 +0000)]
Merge "Demote "throttler data not found" logs to info level"

7 years agoMerge "Demote "Unverified user provided and no metadata to auth it" log message to...
jenkins-bot [Fri, 17 Feb 2017 16:33:39 +0000 (16:33 +0000)]
Merge "Demote "Unverified user provided and no metadata to auth it" log message to info"

7 years agoMerge "Add fr (French) language fallback for br, nrm, oc"
jenkins-bot [Fri, 17 Feb 2017 09:24:49 +0000 (09:24 +0000)]
Merge "Add fr (French) language fallback for br, nrm, oc"

7 years agoMove ORAResult to /db
Aaron Schulz [Wed, 15 Feb 2017 20:02:41 +0000 (12:02 -0800)]
Move ORAResult to /db

Change-Id: I9be89faef693343a4071d7c29b6ca0c021e7fb63

7 years agoDemote "Unverified user provided and no metadata to auth it" log message to info
Gergő Tisza [Fri, 17 Feb 2017 00:49:57 +0000 (16:49 -0800)]
Demote "Unverified user provided and no metadata to auth it" log message to info

Bug: T158367
Change-Id: Ic9a949204d9d4b6d154e5a8d31f6c8501043c657

7 years agoDemote "throttler data not found" logs to info level
Gergő Tisza [Fri, 17 Feb 2017 00:47:49 +0000 (16:47 -0800)]
Demote "throttler data not found" logs to info level

Bug: T158364
Change-Id: I049c2d6da4720341ef2a380879ac19aff444b1d0

7 years agoRCFilters UI: Cancel 'editItem' on CapsuleMultiselectWidget
Moriel Schottlender [Fri, 17 Feb 2017 00:24:06 +0000 (16:24 -0800)]
RCFilters UI: Cancel 'editItem' on CapsuleMultiselectWidget

This method assumes you want to edit the item manually, and so
it calls this.$input.val() on a nonexisting input (because there
is no input if a popup exists.)

Bug: T158368
Change-Id: I7bbce89e5280f97d3e85619d9a8fe23fa5e5e47c

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 16 Feb 2017 21:10:23 +0000 (22:10 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: Ic250e6f394e628403f3b3072a098aa6c9b890cc4

7 years agoMerge "Check that empty content is valid only on handlers that allow direct editing."
jenkins-bot [Thu, 16 Feb 2017 19:45:52 +0000 (19:45 +0000)]
Merge "Check that empty content is valid only on handlers that allow direct editing."

7 years agoMerge "Add update()/insert() comments to IDatabase"
jenkins-bot [Thu, 16 Feb 2017 19:34:21 +0000 (19:34 +0000)]
Merge "Add update()/insert() comments to IDatabase"

7 years agoMerge "Align editOptions section with WikimediaUI color palette"
jenkins-bot [Thu, 16 Feb 2017 19:31:16 +0000 (19:31 +0000)]
Merge "Align editOptions section with WikimediaUI color palette"

7 years agoMerge "Make RecentChangesUpdateJob::updateActiveUsers more robust"
jenkins-bot [Thu, 16 Feb 2017 16:18:05 +0000 (16:18 +0000)]
Merge "Make RecentChangesUpdateJob::updateActiveUsers more robust"

7 years agoAdd update()/insert() comments to IDatabase
Aaron Schulz [Thu, 16 Feb 2017 14:53:37 +0000 (06:53 -0800)]
Add update()/insert() comments to IDatabase

Change-Id: I926554e24c06eb002de92f950725c6a3912ee06f

7 years agoMerge "Fix NS_CATEGORY/NS_CATEGORY_TALK for MessagesExt.php in core"
jenkins-bot [Thu, 16 Feb 2017 08:12:50 +0000 (08:12 +0000)]
Merge "Fix NS_CATEGORY/NS_CATEGORY_TALK for MessagesExt.php in core"

7 years agoMerge "Update OOjs UI to v0.19.2"
jenkins-bot [Thu, 16 Feb 2017 01:33:48 +0000 (01:33 +0000)]
Merge "Update OOjs UI to v0.19.2"

7 years agoMove Field classes to Rdbms namespace
Aaron Schulz [Wed, 8 Feb 2017 07:10:16 +0000 (23:10 -0800)]
Move Field classes to Rdbms namespace

Update core callers and leave a class alias to \Field.

Change-Id: I4908282301d5de2a20baafe510557bd2c3867de5

7 years agoUpdate OOjs UI to v0.19.2
Volker E [Tue, 14 Feb 2017 23:52:58 +0000 (15:52 -0800)]
Update OOjs UI to v0.19.2

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

Depends-On: If351020ee7f29d038eeea8258e0bd607c4134060
Change-Id: I2dbc0fb49cb500f8a378b5f9c8175fd1dabebf17

7 years agoImprove visual association of elements in OOjs UI HTMLForm matrix
Volker E [Fri, 16 Dec 2016 21:40:55 +0000 (13:40 -0800)]
Improve visual association of elements in OOjs UI HTMLForm matrix

Improving visual association of checkboxes and their descriptions
in OOjs UI HTMLForm matrix by introducing row `background-color`
cue and decreasing distance between elements.
Also increasing top margin of `.htmlform-tip`.

Bug: T152532
Change-Id: I84f64e54b242efef897073eed8afb2555614116b

7 years agoCheck that empty content is valid only on handlers that allow direct editing.
Stanislav Malyshev [Wed, 15 Feb 2017 23:15:41 +0000 (15:15 -0800)]
Check that empty content is valid only on handlers that allow direct editing.

Bug: T157626
Change-Id: I843f25172b70111f8219eec9a853ac3138c6aff3

7 years agoMerge "Add version to ChronologyProtector key"
jenkins-bot [Wed, 15 Feb 2017 22:13:02 +0000 (22:13 +0000)]
Merge "Add version to ChronologyProtector key"

7 years agoAdd version to ChronologyProtector key
Aaron Schulz [Wed, 15 Feb 2017 21:43:48 +0000 (13:43 -0800)]
Add version to ChronologyProtector key

This handles incompatible non-namespaced DBMasterPos values
still in cache by ignoring them. The cache value validation
has also been improved.

Bug: T158217
Change-Id: I0e25cd1390e72d8ee0c31e6bb24e9184cbbcf49f

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 15 Feb 2017 20:54:19 +0000 (21:54 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I15de0fc126f490c719ed7b5e4e20a09ed967aa15

7 years agoresourceloader: Limit module_deps write lock to unique index
Timo Tijhof [Tue, 14 Feb 2017 20:55:11 +0000 (12:55 -0800)]
resourceloader: Limit module_deps write lock to unique index

Follows-up 1d15085bb3.

The column has a unique index for module name and skin/language pair.
Previously the write lock was on module name, which meant that
shortly after deployment, the following happens:

* Files change on disk.
* (1-5min pass)
* First startup module request after 5min http-cache expires. Detects
  one or more changes and updates the version hash of that module.
* Web client subsequently requests this module (if used on that page).
  The first time that request comes in, it's a varnish cache miss
  and will make RL load all files from disk related to that module
  and update the cache index in the module_deps table. At this point
  most popular skin/lang pairs fail, except one. As a result, the
  other rows remain stale.
* (7-30 days varnish expiry pass OR another change to the module deploys)
* Web client requests this module and tries to update its skin/lang pair
  for that module.

One simple change in January 2016 changes jquery.tablesorter to load
a PNG file instead of a GIF file. Now, over a year later, there are
still a dozen skin/lang pairs in enwiki.module_deps with stale data,
which is causing various suble bugs, as well as filesystem calls for
files that don't exist.

Ref T113916 (refactor module_deps).
Ref T158105 (stale cache bug).

Bug: T158105
Change-Id: Ib6c024bfa8d35ce2d622ba4242291daedb507d5e

7 years agoresourceloader: Use upsert() instead of replace() for module_deps write
Timo Tijhof [Tue, 14 Feb 2017 21:36:05 +0000 (13:36 -0800)]
resourceloader: Use upsert() instead of replace() for module_deps write

This should perform better and reduce internal lock contention on the
database server.

Bug: T158105
Change-Id: I1acfb0630946283b317cb929e8d7c3b2af757ecf

7 years agoApiLogin: Turn "login-params-in-query-string" warning into an error
Brad Jorsch [Wed, 15 Feb 2017 14:05:44 +0000 (09:05 -0500)]
ApiLogin: Turn "login-params-in-query-string" warning into an error

This change was announced October 31, 2016,[1] with the deadline set for
today.

[1]: https://lists.wikimedia.org/pipermail/mediawiki-api-announce/2016-October/000119.html

Change-Id: Ic7f0cea1510381e3fef5d4850677a66ea257c16b

7 years agoMerge "Make ChronologyProtector::init() use instanceof instead of empty()"
jenkins-bot [Wed, 15 Feb 2017 01:21:22 +0000 (01:21 +0000)]
Merge "Make ChronologyProtector::init() use instanceof instead of empty()"

7 years agoMerge "OutputPage: Log violations of module 'target' filter"
jenkins-bot [Wed, 15 Feb 2017 01:00:41 +0000 (01:00 +0000)]
Merge "OutputPage: Log violations of module 'target' filter"

7 years agoMerge "Mark ApiQueryBase methods accepting arrays"
jenkins-bot [Wed, 15 Feb 2017 00:45:15 +0000 (00:45 +0000)]
Merge "Mark ApiQueryBase methods accepting arrays"

7 years agoOutputPage: Log violations of module 'target' filter
Timo Tijhof [Wed, 15 Feb 2017 00:25:39 +0000 (16:25 -0800)]
OutputPage: Log violations of module 'target' filter

Bug: T140675
Change-Id: Icf9a2e72b663e363e8c87d5d464892c2bbbe78b2

7 years agoMark ApiQueryBase methods accepting arrays
Erik Bernhardson [Tue, 14 Feb 2017 23:41:19 +0000 (15:41 -0800)]
Mark ApiQueryBase methods accepting arrays

These particular functions build up data to be passed into the database
abstraction, which accepts not only strings but arrays. Where conditions
generate `field IN ('a', 'b', 'c')` clauses. The options can be used
with, for example, sort to sort by one field and then a second.

Change-Id: I743f14f0e56c7f0546dfecd130925e15d63c7d64

7 years agoMake ChronologyProtector::init() use instanceof instead of empty()
Aaron Schulz [Tue, 14 Feb 2017 22:21:19 +0000 (14:21 -0800)]
Make ChronologyProtector::init() use instanceof instead of empty()

This is more robust and handles old root namespaced DBMasterPos values

Bug: T158127
Change-Id: Iba775fc808ac3e73d360f1adbe45ad222351c2d9

7 years agoMake position time APC key in LoadBalancer more Het-Deploy friendly
Aaron Schulz [Tue, 14 Feb 2017 21:47:58 +0000 (13:47 -0800)]
Make position time APC key in LoadBalancer more Het-Deploy friendly

This avoids two versions of MediaWiki fighting over Rdbms
namespace changes. A simple version string works since there
are no purges issued; it is TTL-based only.

Change-Id: Ie155c20352e8fea00ea469d162d25bda3600ae60

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 14 Feb 2017 20:57:44 +0000 (21:57 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: Ic8b8e65b211484ff5a4bfa231107a6e6d29cfb33

7 years agoMerge "Upstream change to message 'summary-preview' from en.wiki"
jenkins-bot [Tue, 14 Feb 2017 19:58:37 +0000 (19:58 +0000)]
Merge "Upstream change to message 'summary-preview' from en.wiki"

7 years agoUpstream change to message 'summary-preview' from en.wiki
Ed Sanders [Tue, 14 Feb 2017 16:15:04 +0000 (16:15 +0000)]
Upstream change to message 'summary-preview' from en.wiki

Was changed in 2006, and is clearer than the original:
https://en.wikipedia.org/wiki/MediaWiki:Summary-preview

Also change 'subject-preview' to be consistent.

Change-Id: I09766cf314c258acb18677c08959c222799cd830

7 years agoMerge "Don't test for tidy class on hhvm"
jenkins-bot [Mon, 13 Feb 2017 23:57:23 +0000 (23:57 +0000)]
Merge "Don't test for tidy class on hhvm"

7 years agoMerge "Validate BlockID cookie before use"
jenkins-bot [Mon, 13 Feb 2017 23:48:22 +0000 (23:48 +0000)]
Merge "Validate BlockID cookie before use"

7 years agoMerge "Align edit summary with WikimediaUI guideline"
jenkins-bot [Mon, 13 Feb 2017 23:31:39 +0000 (23:31 +0000)]
Merge "Align edit summary with WikimediaUI guideline"

7 years agoAlign edit summary with WikimediaUI guideline
Amir Sarabadani [Mon, 13 Feb 2017 21:45:57 +0000 (01:15 +0330)]
Align edit summary with WikimediaUI guideline

WikimediaUI guideline: phab:M101

Bug: T152025
Change-Id: I11a3bd0064c8d6ea6e791b23b1e73674f908374e

7 years agoDon't test for tidy class on hhvm
Arlo Breault [Mon, 13 Feb 2017 22:42:26 +0000 (14:42 -0800)]
Don't test for tidy class on hhvm

 * It doesn't support the oo interface.

 * Should make the tidy tests run in CI.

Bug: T157730
Change-Id: Ied80f70b7cafcf64d736cb0eeb1a30d52c1d7921

7 years agoMerge "docs: Unhide the mw.storage and mw.storage.session documentation"
jenkins-bot [Mon, 13 Feb 2017 22:27:59 +0000 (22:27 +0000)]
Merge "docs: Unhide the mw.storage and mw.storage.session documentation"

7 years agoAlign editOptions section with WikimediaUI color palette
Amir Sarabadani [Sat, 11 Feb 2017 14:33:38 +0000 (18:03 +0330)]
Align editOptions section with WikimediaUI color palette

It makes it a little bit lighter.

Bug: T152025
Change-Id: I03a8bcb099003fd8e681c3e97d6e30027f4383ae

7 years agoFix NS_CATEGORY/NS_CATEGORY_TALK for MessagesExt.php in core
MarcoAurelio [Fri, 10 Feb 2017 11:28:55 +0000 (12:28 +0100)]
Fix NS_CATEGORY/NS_CATEGORY_TALK for MessagesExt.php in core

Correcting translations.

Bug: T157846
Change-Id: I17493a44c7b9a105e4116731664a3b2a6e9f59a8

7 years agoMerge "Move Blob class to Rdbms namespaces"
jenkins-bot [Mon, 13 Feb 2017 21:36:42 +0000 (21:36 +0000)]
Merge "Move Blob class to Rdbms namespaces"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 13 Feb 2017 21:25:27 +0000 (22:25 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I9a0623b61f612e2881a5f5a442e9aed21d72a90b

7 years agoMerge "Add release note for Iae5edf99"
jenkins-bot [Mon, 13 Feb 2017 21:17:56 +0000 (21:17 +0000)]
Merge "Add release note for Iae5edf99"

7 years agoMove Blob class to Rdbms namespaces
Aaron Schulz [Tue, 7 Feb 2017 17:36:12 +0000 (09:36 -0800)]
Move Blob class to Rdbms namespaces

Leave \Blob as an alias. Callers can now use the Rdbms\Blob class
for "extends"/"new" and the Rdbms\IBlob interface for type hints.

Change-Id: I983b76f181ac60c1eb92c350cd27ad77ec90a192

7 years agodocs: Unhide the mw.storage and mw.storage.session documentation
Prateek Saxena [Mon, 13 Feb 2017 16:02:41 +0000 (21:32 +0530)]
docs: Unhide the mw.storage and mw.storage.session documentation

Currently the documentation for both these classes shows an empty page,
and the documentation for SafeStorage doesn't show any methods.

Change-Id: I74a431cd064323c7eb1a65d60db7d3d44f5b2943

7 years agoMerge "RCFilters UI: Destroy CapsuleItemWidget when it is removed"
jenkins-bot [Mon, 13 Feb 2017 11:11:37 +0000 (11:11 +0000)]
Merge "RCFilters UI: Destroy CapsuleItemWidget when it is removed"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 12 Feb 2017 20:55:07 +0000 (21:55 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: Ic27067591161ebd1992704b5c8f817f29b5eced2

7 years agoFix assortment of IDEA warnings
Aaron Schulz [Sun, 12 Feb 2017 02:12:42 +0000 (18:12 -0800)]
Fix assortment of IDEA warnings

Change-Id: I3fb482232483f37bf73ebbeb405056794109e618

7 years agoAdd release note for Iae5edf99
Od1n [Sat, 11 Feb 2017 21:18:14 +0000 (21:18 +0000)]
Add release note for Iae5edf99

mediawiki.Uri: Don't ignore options param when using default uri

Bug: T157035
Change-Id: I291bc7b2b7c8c672faf904e0b83490bfd7b7e25e

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 11 Feb 2017 20:54:34 +0000 (21:54 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I55b3ec69e374488c475cf83c16f3a09edfec7f4f

7 years agoRCFilters UI: Destroy CapsuleItemWidget when it is removed
Moriel Schottlender [Sat, 11 Feb 2017 01:44:36 +0000 (17:44 -0800)]
RCFilters UI: Destroy CapsuleItemWidget when it is removed

The widget is recreated when an item is reinserted, so we should
clean up the external elements it creates (like the popup) and
disconnect from events.

Bug: T157852
Change-Id: I8e6eaac7b1a3062d156d4c0b5b912d1a6bfae7de

7 years agoMerge "OutputPage: Support UploadPath in testTransformResourcePath()"
jenkins-bot [Sat, 11 Feb 2017 05:16:44 +0000 (05:16 +0000)]
Merge "OutputPage: Support UploadPath in testTransformResourcePath()"

7 years agoOutputPage: Support UploadPath in testTransformResourcePath()
Timo Tijhof [Fri, 10 Feb 2017 00:03:06 +0000 (00:03 +0000)]
OutputPage: Support UploadPath in testTransformResourcePath()

Updated tests to reflect this use case. Currently we assume all web-accessible
paths within ResourceBasePath (e.g "/w") to exist on disk at the same path
in $IP (e.g. "/var/www/mw").

While in theory any number of web server rewrites or aliases could exist,
there is one case in particular that we should support since the information
is available in the configuration: UploadDir and UploadPath. This path may
be rewritten in a way that varies by wiki in multi-wiki installs that share
the same source code. E.g. a server may rewrite "/w/images" to somewhere
else, which means it will not match the directory on disk that is shared
between wikis.

Bug: T155146
Change-Id: I320478c9c262cc012f08b585b48d290594ec2420

7 years agoMerge "Create IResultWrapper interface for type-hints"
jenkins-bot [Fri, 10 Feb 2017 22:01:41 +0000 (22:01 +0000)]
Merge "Create IResultWrapper interface for type-hints"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 10 Feb 2017 20:54:52 +0000 (21:54 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I09ca370792aa880e61b382eb5313cab6df475bed

7 years agoMerge "Move mssql class to /libs"
jenkins-bot [Fri, 10 Feb 2017 20:20:16 +0000 (20:20 +0000)]
Merge "Move mssql class to /libs"

7 years agoType check the APC value in LoadBalancer::doWait()
Aaron Schulz [Fri, 10 Feb 2017 20:00:44 +0000 (12:00 -0800)]
Type check the APC value in LoadBalancer::doWait()

Change-Id: If00cd5fd2ace828ce03824ec7b5735de7d950dec

7 years agoMerge "ApiSandbox: Make continuation info popup actually visible"
jenkins-bot [Fri, 10 Feb 2017 19:23:10 +0000 (19:23 +0000)]
Merge "ApiSandbox: Make continuation info popup actually visible"

7 years agoMerge "Move DBMasterPos to Rdbms namespace"
jenkins-bot [Fri, 10 Feb 2017 19:01:46 +0000 (19:01 +0000)]
Merge "Move DBMasterPos to Rdbms namespace"

7 years agoMove mssql class to /libs
Aaron Schulz [Thu, 9 Feb 2017 22:30:05 +0000 (14:30 -0800)]
Move mssql class to /libs

* Inject global variables in MWLBFactory.php
* Remove incompatible ignoreErrors() override which is only called
  from the base classes.
* Remove use of wf* methods.

Change-Id: Idf8202474182cc82fb6ef453e2722e7af17e32aa

7 years agoApiSandbox: Make continuation info popup actually visible
Gergő Tisza [Fri, 30 Sep 2016 21:34:00 +0000 (21:34 +0000)]
ApiSandbox: Make continuation info popup actually visible

It was being clipped to the sandbox container.

Depends on Ibab4be23b20edef23686e4563db2acc0d69f52b6 in OOjs UI.

Change-Id: I204dca07378be25b6977be672263cc767bbf5fe7

7 years agoMerge "resourceloader: Use perf.now() for mediaWikiLoadStart in startup.js"
jenkins-bot [Fri, 10 Feb 2017 14:26:00 +0000 (14:26 +0000)]
Merge "resourceloader: Use perf.now() for mediaWikiLoadStart in startup.js"

7 years agoRCFilters UI: Filter interaction: conflicts
Moriel Schottlender [Tue, 7 Feb 2017 02:30:33 +0000 (18:30 -0800)]
RCFilters UI: Filter interaction: conflicts

Some filters conflict with other filters, and the state should be shown properly.

Bug: T156861
Change-Id: I1649e01a80e5a2a576af0a90df20302887631284

7 years agoRCFilters UI: Define interaction states for filters
Moriel Schottlender [Thu, 2 Feb 2017 20:13:00 +0000 (12:13 -0800)]
RCFilters UI: Define interaction states for filters

This patch sets up the ground for all three interaction types:
'subset', 'conflict' and 'coverage' as toggle-able properties
of the item and group models, and sets up the widgets' initial
logic abou their own "mute" state.

The patch includes the basic logic for two interactions:
- Subsets (and 'supersets' that are derived from them)
- Coverage

Direct conflict states will be defined in an upcoming commit.

Bug: T156864
Bug: T156861
Bug: T156860
Change-Id: If20bbe9f1442cfcfce046e56f6150b38dd3a4efc

7 years agoMerge "Add dev dependency on HTML matchers"
jenkins-bot [Fri, 10 Feb 2017 11:42:07 +0000 (11:42 +0000)]
Merge "Add dev dependency on HTML matchers"

7 years agoMerge "Replace some of the deprecated wfGetLBFactory() calls"
jenkins-bot [Fri, 10 Feb 2017 11:22:08 +0000 (11:22 +0000)]
Merge "Replace some of the deprecated wfGetLBFactory() calls"

7 years agoMove DBMasterPos to Rdbms namespace
Aaron Schulz [Wed, 8 Feb 2017 06:48:30 +0000 (22:48 -0800)]
Move DBMasterPos to Rdbms namespace

Updated all callers

Change-Id: Iacd5d6f7f18d8b23df24637cda61592112490eb0

7 years agoCreate IResultWrapper interface for type-hints
Aaron Schulz [Wed, 8 Feb 2017 07:53:03 +0000 (23:53 -0800)]
Create IResultWrapper interface for type-hints

Change-Id: Ie46ede59c09eb7b0b9ff06c6988e39fe2a953e46

7 years agoValidate BlockID cookie before use
Sam Wilson [Wed, 4 Jan 2017 03:38:27 +0000 (11:38 +0800)]
Validate BlockID cookie before use

This change adds a HMAC to the block-cookie to prevent someone
spoofing a cookie and so discovering revdeleted users' names.
The HMAC is only added if $wgSecretKey is set; if it isn't, the
existing plain-ID format is used. A note about this has been
added to DefaultSettings.php.

Tests are updated and new tests added to demonstrate an
inauthentic HMAC, and for when $wgSecretKey is not definied.

Bug: T152951
Change-Id: I6a3ef9e91091408c25eaa2d36d58b365d681e8c6

7 years agoMerge "phpunit: Fix OutputPage::__construct warning in SkinTemplateTest"
jenkins-bot [Fri, 10 Feb 2017 00:43:57 +0000 (00:43 +0000)]
Merge "phpunit: Fix OutputPage::__construct warning in SkinTemplateTest"

7 years agoMerge "mediawiki.api: Make qunit failure easier to debug"
jenkins-bot [Fri, 10 Feb 2017 00:42:09 +0000 (00:42 +0000)]
Merge "mediawiki.api: Make qunit failure easier to debug"

7 years agoMerge "mediawiki.api: Add unit tests for pipe-joining non-string values"
jenkins-bot [Fri, 10 Feb 2017 00:42:05 +0000 (00:42 +0000)]
Merge "mediawiki.api: Add unit tests for pipe-joining non-string values"

7 years agoMerge "Update psr/log to v1.0.2"
jenkins-bot [Fri, 10 Feb 2017 00:19:03 +0000 (00:19 +0000)]
Merge "Update psr/log to v1.0.2"

7 years agoMerge "Updated cssjanus to v1.1.3"
jenkins-bot [Thu, 9 Feb 2017 23:44:24 +0000 (23:44 +0000)]
Merge "Updated cssjanus to v1.1.3"

7 years agoresourceloader: Use perf.now() for mediaWikiLoadStart in startup.js
Timo Tijhof [Thu, 9 Feb 2017 21:46:37 +0000 (21:46 +0000)]
resourceloader: Use perf.now() for mediaWikiLoadStart in startup.js

Currently we're using 'new Date' which is less accurate for high accuracy
performance measures. On top of that, we are actually using performance.now()
in Navigation Timing to measure mediaWikiLoadEnd, and subsequently
relating it to mediaWikiLoadStart to produce mediaWikiLoadComplete.

Mixing Date and performance.now produces inaccurate results since the
two are usually not in sync. See T153819 for further details.

Solve this by moving the polyfil to startup.js instead.

Also add a basic unit test for mw.now().

Bug: T153819
Change-Id: Ib44538155aa9ba432ec4c58b09ead5333a3a942d

7 years agomediawiki.api: Make qunit failure easier to debug
Timo Tijhof [Thu, 9 Feb 2017 20:10:58 +0000 (20:10 +0000)]
mediawiki.api: Make qunit failure easier to debug

Avoid use of assert.ok() when there is clearly a comparison being made.
Previously the result of the comparison was implicit in match() returning
an array with a match instead of null.

Change this to instead extract the value and let QUnit see the comparison.
In case of a failure, the actual and expected values will now be reported.

Change-Id: Ieaea090469efba24f6f5bf44f5c8e238b017275f

7 years agomediawiki.api: Add unit tests for pipe-joining non-string values
Timo Tijhof [Tue, 31 Jan 2017 00:42:23 +0000 (00:42 +0000)]
mediawiki.api: Add unit tests for pipe-joining non-string values

Also document the fact that null/undefined in array values are submitted
to the API as empty string. We may want to change this.

Change-Id: I099b055ba8ddd367b6df2dd8f2997d8c6cd243df

7 years agoMerge "Temporary hax to hide cawiki's hacked in search sidebar"
jenkins-bot [Thu, 9 Feb 2017 17:58:03 +0000 (17:58 +0000)]
Merge "Temporary hax to hide cawiki's hacked in search sidebar"

7 years agoTemporary hax to hide cawiki's hacked in search sidebar
Erik Bernhardson [Thu, 9 Feb 2017 17:17:45 +0000 (09:17 -0800)]
Temporary hax to hide cawiki's hacked in search sidebar

For the sistersearch AB test we will be adding in interwiki results. For
this to work we need to hide the sidebar that cawiki hacked into place
via the searchmenu-new i18n message. This should only be temporary, on
a full rollout the i18n message will be fixed, but for the AB test we
need to leave the sidebar in place for everyone not in the test.

This CSS is only delivered to pages that render the new interwiki
sidebar of results and wont negatively effect users outside the test.

Bug: T149806
Change-Id: I0c86b51222d7ecb68c72c45649e102d8c5589dea

7 years agoRC filters: AJAX and pushState/popState
Stephane Bisson [Thu, 22 Dec 2016 14:51:10 +0000 (15:51 +0100)]
RC filters: AJAX and pushState/popState

Selecting/unselecting a filter now refreshes the results list using AJAX.

Also added pushState to update the URL, and popstate handling
to make the back button work.

Bug: T153949
Change-Id: I8c1ec557ccfe4b1d20aaaab3ef0d3182a1993f24

7 years agoUpdate psr/log to v1.0.2
Reedy [Thu, 9 Feb 2017 16:15:13 +0000 (16:15 +0000)]
Update psr/log to v1.0.2

https://github.com/php-fig/log/compare/1.0.0...1.0.2
https://github.com/php-fig/log/releases/tag/1.0.1
https://github.com/php-fig/log/releases/tag/1.0.2

Change-Id: I63bc43ec352d4fe756596cfcb46320e5e02edf7a
Depends-On: I7d4e1d7f61c56fb8951744e0a149b4a3df480e5b

7 years agoMerge "mediawiki.Uri: Don't ignore options param when using default uri"
jenkins-bot [Thu, 9 Feb 2017 15:19:33 +0000 (15:19 +0000)]
Merge "mediawiki.Uri: Don't ignore options param when using default uri"

7 years agomediawiki.Uri: Don't ignore options param when using default uri
Od1n [Wed, 8 Feb 2017 20:08:28 +0000 (20:08 +0000)]
mediawiki.Uri: Don't ignore options param when using default uri

Bug: T157035
Change-Id: Iae5edf996e4cd6d1dfbbffd6a915ee55d28409d3

7 years agoAdd dev dependency on HTML matchers
Aleksey Bekh-Ivanov (WMDE) [Fri, 3 Feb 2017 15:09:14 +0000 (16:09 +0100)]
Add dev dependency on HTML matchers

Change-Id: Ic547cbf737221d4ed677e2c23adbbf001047b3c4