lhc/web/wiklou.git
7 years agoMerge "phpunit: Avoid use of deprecated getMock for PHPUnit 5 compat"
jenkins-bot [Thu, 6 Apr 2017 23:30:01 +0000 (23:30 +0000)]
Merge "phpunit: Avoid use of deprecated getMock for PHPUnit 5 compat"

7 years agoMerge "SECURITY: Do not allow users to undelete a page they can't edit or create"
jenkins-bot [Thu, 6 Apr 2017 21:46:48 +0000 (21:46 +0000)]
Merge "SECURITY: Do not allow users to undelete a page they can't edit or create"

7 years agoMerge "Revert "Localisation updates from https://translatewiki.net.""
L10n-bot [Thu, 6 Apr 2017 21:44:25 +0000 (21:44 +0000)]
Merge "Revert "Localisation updates from https://translatewiki.net.""

7 years agoRevert "Localisation updates from https://translatewiki.net."
Raimond Spekking [Thu, 6 Apr 2017 21:44:02 +0000 (21:44 +0000)]
Revert "Localisation updates from https://translatewiki.net."

Overwrites changes

This reverts commit ead4315a667fc4c22790681e24d09972ab37123e.

Change-Id: Iee963af531c40495d65e6414b3bb3f5cf860dd85

7 years agoMerge "SECURITY: Always normalize link url before adding to ParserOutput"
jenkins-bot [Thu, 6 Apr 2017 21:28:45 +0000 (21:28 +0000)]
Merge "SECURITY: Always normalize link url before adding to ParserOutput"

7 years agoMerge "SECURITY: Don't write LocalisationCache to temporary directory"
jenkins-bot [Thu, 6 Apr 2017 21:28:41 +0000 (21:28 +0000)]
Merge "SECURITY: Don't write LocalisationCache to temporary directory"

7 years agoMerge "SECURITY: Whitelist DTD declaration in SVG"
jenkins-bot [Thu, 6 Apr 2017 21:28:37 +0000 (21:28 +0000)]
Merge "SECURITY: Whitelist DTD declaration in SVG"

7 years agoMerge "SECURITY: Escape wikitext content model/format in message"
jenkins-bot [Thu, 6 Apr 2017 21:28:34 +0000 (21:28 +0000)]
Merge "SECURITY: Escape wikitext content model/format in message"

7 years agoMerge "SECURITY: SpecialWatchlist: Check CSRF token when using "Mark all pages visited""
jenkins-bot [Thu, 6 Apr 2017 21:10:22 +0000 (21:10 +0000)]
Merge "SECURITY: SpecialWatchlist: Check CSRF token when using "Mark all pages visited""

7 years agoMerge "Localisation updates from https://translatewiki.net."
L10n-bot [Thu, 6 Apr 2017 21:09:40 +0000 (21:09 +0000)]
Merge "Localisation updates from https://translatewiki.net."

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 6 Apr 2017 21:09:29 +0000 (23:09 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ia470eb8a4c72ef0ae0031271cbd4384c5703176f

7 years agoSECURITY: Do not allow users to undelete a page they can't edit or create
Brian Wolff [Mon, 13 Jun 2016 07:07:48 +0000 (03:07 -0400)]
SECURITY: Do not allow users to undelete a page they can't edit or create

If the page exists, it only checks edit rights, otherwise it
checks both edit and create rights.

This would only matter on wikis that have a non-default rights
configuration where there are users with undelete rights but a
restriction level enabled that prevents them from creating/editing
pages (or they otherwise aren't allowed to edit/create)

It should be noted that the error messages aren't used in the
normal UI currently, but they could be in the future, and
extensions could potentially be using them (The backend functions
return them, but the UI functions in Special:Undelete ignore
them)

Bug: T108138
Change-Id: I164b80534cf89e0afca264e9de07431484af8508

7 years agoSECURITY: Always normalize link url before adding to ParserOutput
Brian Wolff [Fri, 11 Mar 2016 01:08:06 +0000 (20:08 -0500)]
SECURITY: Always normalize link url before adding to ParserOutput

Move link normalization directly into addExternalLink() method,
since you always need to do it - having it separate is just
inviting people to forget to normalize a link.

Additionally, links weren't properly registered for <gallery>.
This was somewhat unnoticed, as the call to recursiveTagParse()
would register free links, but it wouldn't work for example with
protocol relative links.

Issue originally reported by MZMcBride.

Bug: T48143
Change-Id: I557fb3b433ef9d618097b6ba4eacc6bada250ca2

7 years agoSECURITY: Don't write LocalisationCache to temporary directory
Reedy [Tue, 28 Mar 2017 20:47:08 +0000 (21:47 +0100)]
SECURITY: Don't write LocalisationCache to temporary directory

Bug: T161453
Change-Id: I51b375c63fcece908da921c465c861968c9eee1c

7 years agoSECURITY: Whitelist DTD declaration in SVG
Brian Wolff [Mon, 28 Nov 2016 23:34:24 +0000 (23:34 +0000)]
SECURITY: Whitelist DTD declaration in SVG

Only allow ENTITY declarations inside the doctype internal
subset. Do not allow parameter entities, recursive entity
references are entity values longer than 255 bytes, or
external entity references. Filter external doctype subset
to only allow the standard svg doctypes.

Recursive entities that are simple aliases are allowed
because people appear to use them on commons. Declaring
xmlns:xlink to have a #FIXED value to the xlink namespace
is allowed because GraphViz apparently does that so its
somewhat common.

This prevents someone bypassing filter by using default
attribute values in internal dtd subset. No browser loads
the external dtd subset that I could find, but whitelist
just to be safe anyways.

Issue reported by Cassiogomes11.

Bug: T151735
Change-Id: I7cb4690f759ad97e70e06e560978b6207d84c446

7 years agoSECURITY: Escape wikitext content model/format in message
Brian Wolff [Mon, 13 Mar 2017 21:20:02 +0000 (21:20 +0000)]
SECURITY: Escape wikitext content model/format in message

Escape wikitext in model= and format= url parameter to
edit page. This goes along with 1c788944 to help prevent
XSS for wikis with $wgRawHtml = true; set.

Bug: T156184
Change-Id: Ifcaa2ccf05a2a691d0b150e2f7e0e765db25fc7f

7 years agoSECURITY: SpecialWatchlist: Check CSRF token when using "Mark all pages visited"
Bartosz Dziewoński [Mon, 7 Nov 2016 19:10:21 +0000 (20:10 +0100)]
SECURITY: SpecialWatchlist: Check CSRF token when using "Mark all pages visited"

Bug: T150044
Change-Id: I7f75cab4ceb4a2c320af210fad15956b70c29661

7 years agoSECURITY: API: Don't log "sensitive" parameters
Brad Jorsch [Thu, 18 Aug 2016 17:37:05 +0000 (13:37 -0400)]
SECURITY: API: Don't log "sensitive" parameters

Stuff like passwords and CSRF tokens shouldn't be in the logs.

The fact of being sensitive is intentionally separated from the need to
be in the POST body because, for example, the wltoken parameter to
ApiQueryWatchlist needs to be in the query string to serve its purpose
but still shouldn't be logged.

Bug: T125177
Change-Id: I1d61f4dcf792d77401ee2e2988b1afcb2a2ad58f

7 years agoSECURITY: XSS in search if $wgAdvancedSearchHighlighting = true;
Brian Wolff [Mon, 26 Sep 2016 10:40:30 +0000 (10:40 +0000)]
SECURITY: XSS in search if $wgAdvancedSearchHighlighting = true;

In the non-default configuration where $wgAdvancedSearchHighlighting
is set to true, there is an XSS vulnerability as HTML tags are
not properly escaped if the tag spans multiple search results

Issue introduced in abf726ea0 (MediaWiki 1.13 and above).

Bug: T144845
Change-Id: I2db7888d591b97f1a01bfd3b7567ce6f169874d3

7 years agoSECURITY: Do not directly redirect to interwikis, but use splash page
Brian Wolff [Sun, 7 Feb 2016 13:07:20 +0000 (08:07 -0500)]
SECURITY: Do not directly redirect to interwikis, but use splash page

Directly redirecting based on a url paramter might potentially
be used in a phishing attack to confuse users.

Bug: T109140
Bug: T122209
Change-Id: I6c604439320fa876719933cc7f3a3ff04fb1a6ad

7 years agoMerge "Avoid duplicate key generation code in MessageCache"
jenkins-bot [Thu, 6 Apr 2017 20:03:18 +0000 (20:03 +0000)]
Merge "Avoid duplicate key generation code in MessageCache"

7 years agoMerge "RecentChanges: Allow resetting date selection"
jenkins-bot [Thu, 6 Apr 2017 17:35:00 +0000 (17:35 +0000)]
Merge "RecentChanges: Allow resetting date selection"

7 years agoRecentChanges: Allow resetting date selection
Moriel Schottlender [Wed, 5 Apr 2017 23:05:51 +0000 (16:05 -0700)]
RecentChanges: Allow resetting date selection

Add a link that resets the date selection if it is selected.

Bug: T160028
Change-Id: I4ecff943025635f42eb70fc70c6dfdf34c314707

7 years agoMerge "RCFilters: React to popup 'ready' event"
jenkins-bot [Thu, 6 Apr 2017 13:08:31 +0000 (13:08 +0000)]
Merge "RCFilters: React to popup 'ready' event"

7 years agoAvoid duplicate key generation code in MessageCache
Aaron Schulz [Thu, 6 Apr 2017 06:16:16 +0000 (23:16 -0700)]
Avoid duplicate key generation code in MessageCache

Also explain the use of !NONEXISTANT in the comments a bit more.

Change-Id: Ib087df9bf31023e7acaf2116e74b2dfeda10c9d2

7 years agoMerge "Add ar_ prefix back to usertext_timestamp USE INDEX"
jenkins-bot [Thu, 6 Apr 2017 03:17:42 +0000 (03:17 +0000)]
Merge "Add ar_ prefix back to usertext_timestamp USE INDEX"

7 years agoMerge "resourceloader: Improve code coverage"
jenkins-bot [Thu, 6 Apr 2017 01:44:41 +0000 (01:44 +0000)]
Merge "resourceloader: Improve code coverage"

7 years agoMerge "Reduce contention during view-based category count refreshes"
jenkins-bot [Thu, 6 Apr 2017 01:30:44 +0000 (01:30 +0000)]
Merge "Reduce contention during view-based category count refreshes"

7 years agoresourceloader: Improve code coverage
Timo Tijhof [Thu, 6 Apr 2017 01:19:48 +0000 (18:19 -0700)]
resourceloader: Improve code coverage

* Missing cases for StartupModule::getModuleRegistrations
  (now 100% covered)
  - Raw modules are omitted from the manifest.
    E.g. The base modules ('jquery', 'mediawiki') are raw modules
    that we don't register client side (they can't load themselves).
  - Exceptions from getVersionHash() are caught.
  - Oversized versions are re-hashed.

* Missing cases for ResourceLoader::makeLoaderRegisterScript.
  (now 100% covered)

* Missing cases for ResourceLoader::getModule.
  (now 100% covered)

Change-Id: If9717a48195fc6ae776da5d0e86f323d7f60426d

7 years agophpunit: Avoid use of deprecated getMock for PHPUnit 5 compat
Timo Tijhof [Wed, 5 Apr 2017 23:39:50 +0000 (16:39 -0700)]
phpunit: Avoid use of deprecated getMock for PHPUnit 5 compat

The default will remain PHPUnit 4.x due to PHP 5.5 support.

But, we should allow developers to run tests with newer PHPUnit
versions which are noticably faster (especially for code coverage
reports).

* <https://github.com/sebastianbergmann/phpunit/wiki/Release-Announcement-for-PHPUnit-5.4.0>
  PHPUnit 5 deprecates the getMock() shortcut for getMockBuilder()->getMock().
  It instead introduces the shortcut createMock() which has better defaults
  than getMockBuilder(). For example, it sets 'disableArgumentCloning' and
  other things by default.

  Going forward, code should either use getMockBuilder directly and configure
  it using the setter methods (instead of the confusing variadic arguments
  of getMock) or simply use the new minimalistic createMock method. This patch
  backports the createMock method to MediaWikiTestCase so that we can start
  using it.

Change-Id: I091c0289b21d2b1c876adba89529dc3e72b99af2

7 years agoReduce contention during view-based category count refreshes
Aaron Schulz [Thu, 6 Apr 2017 00:25:45 +0000 (17:25 -0700)]
Reduce contention during view-based category count refreshes

Bug: T162121
Change-Id: I05b539922508d5e73979ccc8ea1c148b16dd13db

7 years agoMerge "phpunit: Remove unused assertEmpty() fallback for PHPUnit 3 compat"
jenkins-bot [Wed, 5 Apr 2017 23:56:23 +0000 (23:56 +0000)]
Merge "phpunit: Remove unused assertEmpty() fallback for PHPUnit 3 compat"

7 years agoAdd ar_ prefix back to usertext_timestamp USE INDEX
Reedy [Thu, 30 Mar 2017 12:30:07 +0000 (13:30 +0100)]
Add ar_ prefix back to usertext_timestamp USE INDEX

This is the correct/canonical index name. For usages on mysql it will
map to the unprefixed version.

Bug: T154872
Change-Id: Ie2daf7b33428855ac59c85bf04a99a9bca7feba1

7 years agoMerge "RCFilters UI: Use pixel instead of em for distancing the highlight dots"
jenkins-bot [Wed, 5 Apr 2017 23:31:47 +0000 (23:31 +0000)]
Merge "RCFilters UI: Use pixel instead of em for distancing the highlight dots"

7 years agophpunit: Remove unused assertEmpty() fallback for PHPUnit 3 compat
Timo Tijhof [Wed, 5 Apr 2017 23:17:43 +0000 (16:17 -0700)]
phpunit: Remove unused assertEmpty() fallback for PHPUnit 3 compat

We always run with PHPUnit 4. We're also forward-compatible with
PHPUnit 5 (albeit with deprecation notices).

PHPUnit 3 is no longer supported.

Keep __call() to make it easy to re-introduce back-compat or
future-compat logic in the future (like the next patch does).

Change-Id: I4f836db12d43fb22c4c38c0e1401675d751d7841

7 years agoRCFilters UI: Use pixel instead of em for distancing the highlight dots
Moriel Schottlender [Wed, 5 Apr 2017 22:37:45 +0000 (15:37 -0700)]
RCFilters UI: Use pixel instead of em for distancing the highlight dots

Also, make the circles slightly bigger; the 5px value made the circles
look slightly squarish, so we increase the radius by 1 pixel to 6px.

Bug: T161258
Change-Id: I483dc698ba15380990ded097caec24b408fba43a

7 years agoMerge "Fix incorrect index name in new 1.28.0 installations"
jenkins-bot [Wed, 5 Apr 2017 22:39:45 +0000 (22:39 +0000)]
Merge "Fix incorrect index name in new 1.28.0 installations"

7 years agoFix incorrect index name in new 1.28.0 installations
Tim Starling [Mon, 3 Apr 2017 03:00:30 +0000 (13:00 +1000)]
Fix incorrect index name in new 1.28.0 installations

This index name should be the same in new installations as in all other
MySQL installations. This is necessary so that
Special:DeletedContributions does not give an SQL error. Release notes
will go in the 1.28 branch.

Bug: T154872
Change-Id: I535a5513ab56203139c4cf64874ea7e7498990e3

7 years agoMerge "Rename BaseTemplate::clear to getClear to avoid conflicts with Example skin...
jenkins-bot [Wed, 5 Apr 2017 21:20:59 +0000 (21:20 +0000)]
Merge "Rename BaseTemplate::clear to getClear to avoid conflicts with Example skin and derivatives"

7 years agoRename BaseTemplate::clear to getClear to avoid conflicts
Isarra [Wed, 5 Apr 2017 20:33:26 +0000 (20:33 +0000)]
Rename BaseTemplate::clear to getClear to avoid conflicts
with Example skin and derivatives

Also it's a bit more consistent with everything else anyway.

Change-Id: I2745d51267790e93fe2b92a75e88621abbb57fd1

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 5 Apr 2017 19:59:32 +0000 (21:59 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ia1e572056c019182ccb486df6c75de2acfe44459

7 years agoMerge "Add deleted archive titles search"
jenkins-bot [Wed, 5 Apr 2017 19:42:31 +0000 (19:42 +0000)]
Merge "Add deleted archive titles search"

7 years agoMerge "Apply image styling to mw:Video / mw:Audio for Parsoid content"
jenkins-bot [Wed, 5 Apr 2017 19:04:26 +0000 (19:04 +0000)]
Merge "Apply image styling to mw:Video / mw:Audio for Parsoid content"

7 years agoAdd deleted archive titles search
Stanislav Malyshev [Sat, 2 Apr 2016 05:57:20 +0000 (08:57 +0300)]
Add deleted archive titles search

Allows search engine to suggest deleted titles for undelete search.
Note that the titles are still verified against the archive table,
to ensure search engine is not out-of-date.

Bug: T109561
Change-Id: Id6099fe9fbf18481068a6f0a329bbde0d218135f

7 years agoMerge "ClassicInterwikiLookup: Call static function selectFields statically"
jenkins-bot [Wed, 5 Apr 2017 18:54:40 +0000 (18:54 +0000)]
Merge "ClassicInterwikiLookup: Call static function selectFields statically"

7 years agoMerge "Clarify release notes for Opera 12.0-12.10 being Grade C"
jenkins-bot [Wed, 5 Apr 2017 18:50:57 +0000 (18:50 +0000)]
Merge "Clarify release notes for Opera 12.0-12.10 being Grade C"

7 years agoMerge "mw.language.specialcharacters: Add Canadian Aboriginal group"
jenkins-bot [Wed, 5 Apr 2017 18:39:48 +0000 (18:39 +0000)]
Merge "mw.language.specialcharacters: Add Canadian Aboriginal group"

7 years agoApply image styling to mw:Video / mw:Audio for Parsoid content
Arlo Breault [Wed, 5 Apr 2017 18:27:34 +0000 (14:27 -0400)]
Apply image styling to mw:Video / mw:Audio for Parsoid content

 * For I53c6fa8d862c152bb1c8dd3ae96f4ee464a60d32

Change-Id: Icb26ffb802150c1d1f8c6e0aab05b25e503077e2

7 years agoClassicInterwikiLookup: Call static function selectFields statically
Reedy [Tue, 4 Apr 2017 13:53:12 +0000 (14:53 +0100)]
ClassicInterwikiLookup: Call static function selectFields statically

Change-Id: I5260ccad99057323d0f3a669a420bbd723363986

7 years agomw.language.specialcharacters: Add Canadian Aboriginal group
Tpt [Sun, 2 Apr 2017 20:10:24 +0000 (22:10 +0200)]
mw.language.specialcharacters: Add Canadian Aboriginal group

Bug: T108626
Change-Id: Ia337d42c6ef7f9645f1dd843ef0e7553857f6aa3

7 years agoMerge "Update OOjs to v2.0.0"
jenkins-bot [Wed, 5 Apr 2017 18:09:52 +0000 (18:09 +0000)]
Merge "Update OOjs to v2.0.0"

7 years agoMerge "Make API documentation links language aware"
jenkins-bot [Wed, 5 Apr 2017 17:42:46 +0000 (17:42 +0000)]
Merge "Make API documentation links language aware"

7 years agoClarify release notes for Opera 12.0-12.10 being Grade C
Bartosz Dziewoński [Tue, 4 Apr 2017 21:40:57 +0000 (23:40 +0200)]
Clarify release notes for Opera 12.0-12.10 being Grade C

Follow-up to 09fcee61106146adbc8889f3950a2ea02cda0da6.

Change-Id: Ibbdaa85a35af4e5560e092deaede626bc0a504e6

7 years agoUpdate OOjs to v2.0.0
James D. Forrester [Wed, 5 Apr 2017 15:40:22 +0000 (08:40 -0700)]
Update OOjs to v2.0.0

Release notes:
 https://phabricator.wikimedia.org/diffusion/GOJS/browse/master/History.md;v2.0.0

Change-Id: I5bbc3e0ec7c4789c6b476c0fb039e0292027c014

7 years agoMake API documentation links language aware
Baha [Tue, 4 Apr 2017 22:52:57 +0000 (18:52 -0400)]
Make API documentation links language aware

Links generated by the API are now aware of the user's preferred
language and will show documents in that language if available.

To test, log in to mediawiki.org and set your language preference to 'es',
then on an MediaWiki installation with this patch view the generated
expanded API help at `api.php?action=help&recursivesubmodules=1&modules=main`.
Each link to documentation on mediawiki.org should take you to its
translated /es subpage, if one exists.

Bug: T104518
Change-Id: I339a1f3ae1bce9d759cf251899d57c32b1def91e

7 years agoImprove qqq for i18n message at Special:Userrights
Eddie Greiner-Petter [Wed, 5 Apr 2017 03:18:26 +0000 (05:18 +0200)]
Improve qqq for i18n message at Special:Userrights

Remove vagueness by adding documentation for this, as translators had
problems with the terms "put back" and "bring forward". Also fix minor
lack of precision in those messages.

Bug: T157587
Change-Id: Idef412556ce54820eb65cce0b53dec09f5d95f9e

7 years agoMerge "Send integer ms to DB lag time guage instead of seconds"
jenkins-bot [Wed, 5 Apr 2017 01:09:23 +0000 (01:09 +0000)]
Merge "Send integer ms to DB lag time guage instead of seconds"

7 years agoMerge "RCFilters: Work around IE11 rendering issues"
jenkins-bot [Tue, 4 Apr 2017 23:42:49 +0000 (23:42 +0000)]
Merge "RCFilters: Work around IE11 rendering issues"

7 years agoRCFilters: React to popup 'ready' event
Moriel Schottlender [Tue, 4 Apr 2017 22:43:52 +0000 (15:43 -0700)]
RCFilters: React to popup 'ready' event

The new 'ready' event is emitted after the popup is already positioned
and clipped, we should respond to that event when displaying and
manipulating the elements rather than 'toggle', which is emitted
before the popup is placed correctly.

Change-Id: I84a74a10eb4d88e14899752019214633d9f41cb8

7 years agoMerge "mw.loader: Remove redundant compat code for IE <= 9"
jenkins-bot [Tue, 4 Apr 2017 22:41:21 +0000 (22:41 +0000)]
Merge "mw.loader: Remove redundant compat code for IE <= 9"

7 years agoMerge "Add class for service discovery using DNS SRV records"
jenkins-bot [Tue, 4 Apr 2017 22:26:39 +0000 (22:26 +0000)]
Merge "Add class for service discovery using DNS SRV records"

7 years agomw.loader: Remove redundant compat code for IE <= 9
Timo Tijhof [Tue, 4 Apr 2017 22:20:02 +0000 (15:20 -0700)]
mw.loader: Remove redundant compat code for IE <= 9

Follows-up 09fcee6110. Search for "Support: " in resources/src/.

* addEmbeddedCSS(): Remove IE9 compat code.
  Also remove now-unused variables.

* addLink(): Remove IE7-8 compat comment.
  Keep code as-is since properties are preferable in general.

Change-Id: I8a31ac96441ee78dfa2f4f2b49e0e91181430237

7 years agoMerge "mediawiki.log: Improve documentation"
jenkins-bot [Tue, 4 Apr 2017 22:13:12 +0000 (22:13 +0000)]
Merge "mediawiki.log: Improve documentation"

7 years agoMerge "Add some common functions to BaseTemplate"
jenkins-bot [Tue, 4 Apr 2017 21:58:04 +0000 (21:58 +0000)]
Merge "Add some common functions to BaseTemplate"

7 years agomediawiki.log: Improve documentation
Timo Tijhof [Tue, 4 Apr 2017 21:50:41 +0000 (14:50 -0700)]
mediawiki.log: Improve documentation

* Clarify that all mw.log submethods use the native console
  when available and are otherwise no-ops. Their behaviour is
  not influenced by whether or not debug mode is enabled.

* Move mw.log() method doc to mediawiki.js and clarify that it
  is for verbose logging in debug mode (no-op in production mode).

Behaviour is not changed in this commit, only documentation.

Change-Id: Ie6e2382632654430dc57ee8c0a6222d6ad80663d

7 years agoMerge "jsduck: Unbreak live demos (mwNow undefined)"
jenkins-bot [Tue, 4 Apr 2017 21:44:08 +0000 (21:44 +0000)]
Merge "jsduck: Unbreak live demos (mwNow undefined)"

7 years agojsduck: Unbreak live demos (mwNow undefined)
Timo Tijhof [Tue, 4 Apr 2017 21:31:56 +0000 (14:31 -0700)]
jsduck: Unbreak live demos (mwNow undefined)

* Update the mock startup.js in jsduck/eg-iframe.html
  to define mwNow.
* Remove dead reference to sha1.js.
* Remove dead reference to mediawiki.startUp.js.
* Fix broken reference to oojs-ui-local.css.

Test plan:
* Exec `npm install && npm run doc` (requires 'jsduck')
* View /w/docs/js/#!/api/mw.html
* Verify that "Live Preview" works and no JS or 404 errors
  in the console.

Change-Id: Ie891eaae70021ba5fbcddeb4eec7c929ccd8707d

7 years agoMerge "Replace deprecated jQuery.isArray by Array.isArray"
jenkins-bot [Tue, 4 Apr 2017 21:27:55 +0000 (21:27 +0000)]
Merge "Replace deprecated jQuery.isArray by Array.isArray"

7 years agoMerge "resourceloader: Use Date.now() for mw.now() instead of '+new Date'"
jenkins-bot [Tue, 4 Apr 2017 21:08:44 +0000 (21:08 +0000)]
Merge "resourceloader: Use Date.now() for mw.now() instead of '+new Date'"

7 years agoMerge "resourceloader: Use Object.keys() instead of map() to get keys"
jenkins-bot [Tue, 4 Apr 2017 21:07:12 +0000 (21:07 +0000)]
Merge "resourceloader: Use Object.keys() instead of map() to get keys"

7 years agoMerge "resourceloader: Use Array#map instead of jQuery#map for arrays"
jenkins-bot [Tue, 4 Apr 2017 21:07:06 +0000 (21:07 +0000)]
Merge "resourceloader: Use Array#map instead of jQuery#map for arrays"

7 years agoMerge "Remove support for jquery.placeholder shim"
jenkins-bot [Tue, 4 Apr 2017 21:06:59 +0000 (21:06 +0000)]
Merge "Remove support for jquery.placeholder shim"

7 years agoMerge "startup: Drop JavaScript support for ES3-only browsers"
jenkins-bot [Tue, 4 Apr 2017 21:03:16 +0000 (21:03 +0000)]
Merge "startup: Drop JavaScript support for ES3-only browsers"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 4 Apr 2017 19:54:51 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I78124a764a2b8c0a7fc26c251621a68bdf86a92f

7 years agoMerge "Move new external libraries to correct RELEASE-NOTES section"
jenkins-bot [Tue, 4 Apr 2017 19:33:35 +0000 (19:33 +0000)]
Merge "Move new external libraries to correct RELEASE-NOTES section"

7 years agoMerge "Update oyejorge/less.php v1.7.0.13 to v1.7.0.14"
jenkins-bot [Tue, 4 Apr 2017 19:18:38 +0000 (19:18 +0000)]
Merge "Update oyejorge/less.php v1.7.0.13 to v1.7.0.14"

7 years agoMerge "Update cssjanus/cssjanus from 1.1.3 to 1.2.0"
jenkins-bot [Tue, 4 Apr 2017 19:09:45 +0000 (19:09 +0000)]
Merge "Update cssjanus/cssjanus from 1.1.3 to 1.2.0"

7 years agoMerge "Update composer-merge-plugin from 1.3.1 to 1.4.0"
jenkins-bot [Tue, 4 Apr 2017 19:09:39 +0000 (19:09 +0000)]
Merge "Update composer-merge-plugin from 1.3.1 to 1.4.0"

7 years agoMerge "Update monolog from 1.18.2 to 1.22.1"
jenkins-bot [Tue, 4 Apr 2017 19:09:34 +0000 (19:09 +0000)]
Merge "Update monolog from 1.18.2 to 1.22.1"

7 years agoSend integer ms to DB lag time guage instead of seconds
Aaron Schulz [Thu, 23 Mar 2017 18:55:07 +0000 (11:55 -0700)]
Send integer ms to DB lag time guage instead of seconds

Previously, this sent the floating point value in seconds,
which is not what statsd expects here.

Bug: T149210
Change-Id: I8fcd58d7c9e183952df1257b1520d9426a42fd26

7 years agoReplace deprecated jQuery.isArray by Array.isArray
Fomafix [Fri, 17 Mar 2017 05:31:13 +0000 (06:31 +0100)]
Replace deprecated jQuery.isArray by Array.isArray

jQuery.isArray gets deprecated in jQuery 3.2.0. [1]

Array.isArray is supported since the following browser versions: [2]
* Chrome 5
* Firefox (Gecko) 4.0 (2.0)
* Internet Explorer 9
* Opera 10.5
* Safari 5

Performed using:
find resources/src tests -type f -name \*.js -exec sed -i -e 's/\$\.isArray/Array.isArray/g' {} \;

[1] https://blog.jquery.com/2017/03/16/jquery-3-2-0-is-out/
[2] https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray#Browser_compatibility

Bug: T160953
Change-Id: I1f5fe19d247ec420810e1c4a6db779425b69de23

7 years agoresourceloader: Use Object.keys() instead of map() to get keys
Timo Tijhof [Sat, 25 Mar 2017 04:23:12 +0000 (21:23 -0700)]
resourceloader: Use Object.keys() instead of map() to get keys

Bug: T160953
Change-Id: I2a6a6cec0df21678cc054b4dcb95531e8e7dc582

7 years agoRemove support for jquery.placeholder shim
Timo Tijhof [Wed, 8 Mar 2017 20:38:19 +0000 (12:38 -0800)]
Remove support for jquery.placeholder shim

Browser support according to MDN:
* input placeholder:
  - Chrome 10
  - Firefox 4
  - IE 10
  - Opera 11.00
  - Safari 5.0

* textarea placeholder:
  - Chrome
  - Firefox 4
  - IE 10
  - Opera 11.50
  - Safari 5.0

<https://developer.mozilla.org/en/docs/Web/HTML/Element/input>
<https://developer.mozilla.org/en/docs/Web/HTML/Element/textarea>

Bug: T159911
Change-Id: I388e99c5760681049abbe8d9c173b83af9121b02

7 years agoresourceloader: Use Date.now() for mw.now() instead of '+new Date'
Timo Tijhof [Sat, 25 Mar 2017 03:41:14 +0000 (20:41 -0700)]
resourceloader: Use Date.now() for mw.now() instead of '+new Date'

Now that ES5 is required, use Date.now(). Performs better by not
requiring object construction.

Bug: T160953
Change-Id: Ifea106a325659c2024f40e77ff016db9dc8a55fb

7 years agoresourceloader: Use Array#map instead of jQuery#map for arrays
Timo Tijhof [Sat, 25 Mar 2017 04:15:04 +0000 (21:15 -0700)]
resourceloader: Use Array#map instead of jQuery#map for arrays

Upto 50% faster, depending on the browser.
https://gist.github.com/Krinkle/4a22236022027af511b8d33feab0c4c2#gistcomment-2037282

Also change confusing parameter name 'i' to 'obj' in getModuleNames().
This one can't be changed since it loops over an object, not an array.

Bug: T160953
Change-Id: I85d6348670703c7ef061ba735ea441a1fc008062

7 years agoMerge "Split out some internal methods in QuorumLockManager for readability"
jenkins-bot [Tue, 4 Apr 2017 02:23:39 +0000 (02:23 +0000)]
Merge "Split out some internal methods in QuorumLockManager for readability"

7 years agostartup: Drop JavaScript support for ES3-only browsers
James D. Forrester [Thu, 2 Mar 2017 21:54:19 +0000 (13:54 -0800)]
startup: Drop JavaScript support for ES3-only browsers

Bug: T128115
Change-Id: I95400637d1b85d2c607cd91bcb39ce21733295c8

7 years agoSplit out some internal methods in QuorumLockManager for readability
Aaron Schulz [Wed, 29 Mar 2017 20:45:31 +0000 (13:45 -0700)]
Split out some internal methods in QuorumLockManager for readability

Change-Id: I74930b930b18110c9f20b945c87790f898258ad5

7 years agoMove new external libraries to correct RELEASE-NOTES section
Reedy [Tue, 4 Apr 2017 01:04:46 +0000 (02:04 +0100)]
Move new external libraries to correct RELEASE-NOTES section

Change-Id: I420ee75026847ce33d91b04534c9e960db557130

7 years agoUpdate oyejorge/less.php v1.7.0.13 to v1.7.0.14
Reedy [Tue, 4 Apr 2017 01:03:50 +0000 (02:03 +0100)]
Update oyejorge/less.php v1.7.0.13 to v1.7.0.14

https://github.com/oyejorge/less.php/releases/tag/v1.7.0.14
https://github.com/oyejorge/less.php/compare/v1.7.0.13...v1.7.0.14

Change-Id: Ibf7cc4704fae5890093e6855403d93b0a2b1b97f
Depends-On: Ie641cf2954c39fd84ab26a92ad3028a49c15926d

7 years agoUpdate cssjanus/cssjanus from 1.1.3 to 1.2.0
Reedy [Tue, 4 Apr 2017 01:03:12 +0000 (02:03 +0100)]
Update cssjanus/cssjanus from 1.1.3 to 1.2.0

https://github.com/cssjanus/php-cssjanus/releases/tag/v1.2.0
https://github.com/cssjanus/php-cssjanus/compare/v1.1.3...v1.2.0

Change-Id: Iad2ea202b7724edc8360ce74943e2026f57e1f06
Depends-On: Iec366b794e38710102deaba771dba5cf7b412d5a

7 years agoUpdate composer-merge-plugin from 1.3.1 to 1.4.0
Reedy [Tue, 4 Apr 2017 01:02:21 +0000 (02:02 +0100)]
Update composer-merge-plugin from 1.3.1 to 1.4.0

https://github.com/wikimedia/composer-merge-plugin/releases/tag/v1.4.0
https://github.com/wikimedia/composer-merge-plugin/compare/v1.3.1...v1.4.0

Change-Id: I3e01a632b764f7903291d0141243e6210da9bebe
Depends-On: I0c96d9a630ab25ff4269af25a660c5bd7837a9dc

7 years agoUpdate monolog from 1.18.2 to 1.22.1
Reedy [Tue, 21 Feb 2017 21:44:18 +0000 (21:44 +0000)]
Update monolog from 1.18.2 to 1.22.1

https://github.com/Seldaek/monolog/releases/tag/1.19.0
https://github.com/Seldaek/monolog/releases/tag/1.20.0
https://github.com/Seldaek/monolog/releases/tag/1.21.0
https://github.com/Seldaek/monolog/releases/tag/1.22.0
https://github.com/Seldaek/monolog/releases/tag/1.22.1

https://github.com/Seldaek/monolog/compare/1.18.2...1.22.1

Bug: T158707
Change-Id: Icfb87911486aee8b712ce643f0041f91eb6cc078
Depends-On: Id5a96aaba77e52290a5afaff2c01b29c285e67af

7 years agoRCFilters: Work around IE11 rendering issues
Bartosz Dziewoński [Mon, 3 Apr 2017 22:55:18 +0000 (00:55 +0200)]
RCFilters: Work around IE11 rendering issues

Bug: T162098
Change-Id: Ia9410f2c41036f263decd47290899f20144e0a51

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 3 Apr 2017 19:59:59 +0000 (21:59 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I60c8477ebebcc647c3d9b3e0ac0902401fe10f28

7 years agoMerge "RC Filters: Hooks for highlight guided tour"
jenkins-bot [Mon, 3 Apr 2017 18:47:56 +0000 (18:47 +0000)]
Merge "RC Filters: Hooks for highlight guided tour"

7 years agoMerge "Valid tags on a gallery should correspond to unordered list"
jenkins-bot [Mon, 3 Apr 2017 18:25:37 +0000 (18:25 +0000)]
Merge "Valid tags on a gallery should correspond to unordered list"

7 years agoMerge "Document return string as JavaScript code for getScript"
jenkins-bot [Mon, 3 Apr 2017 17:00:29 +0000 (17:00 +0000)]
Merge "Document return string as JavaScript code for getScript"

7 years agoMerge "Fix two bugs in installer session error display"
jenkins-bot [Mon, 3 Apr 2017 16:43:52 +0000 (16:43 +0000)]
Merge "Fix two bugs in installer session error display"

7 years agoFix ApiMainTest::testApiErrorFormatterCreation
Brad Jorsch [Mon, 3 Apr 2017 13:41:21 +0000 (09:41 -0400)]
Fix ApiMainTest::testApiErrorFormatterCreation

API tests are all subclasses of MediaWikiLangTestCase, which overrides
the content language when the tests are actually running. So we need to
always use 'en' to match that.

Bug: T162007
Change-Id: Ie001576fb62ae88c9141e471fd8fcbc49592be32