lhc/web/wiklou.git
7 years agoMerge "Change .tocnumber to use grey text for section numbers in Table of Contents...
jenkins-bot [Thu, 27 Oct 2016 22:51:31 +0000 (22:51 +0000)]
Merge "Change .tocnumber to use grey text for section numbers in Table of Contents boxes"

7 years agoMerge "Refactor rev_delete handling on deletion"
jenkins-bot [Thu, 27 Oct 2016 20:30:10 +0000 (20:30 +0000)]
Merge "Refactor rev_delete handling on deletion"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 27 Oct 2016 20:01:18 +0000 (22:01 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I83ef5fa88f65ec941b87888943273892857d5561

7 years agoRemove tracking category stuff that accidentally slipped into 61adc1e14
Kunal Mehta [Thu, 27 Oct 2016 17:57:20 +0000 (10:57 -0700)]
Remove tracking category stuff that accidentally slipped into 61adc1e14

Bug: T149310
Change-Id: I0a3725a72b1467c57280ae1880935dd5fa54ae9e

7 years agoRefactor rev_delete handling on deletion
umherirrender [Thu, 27 Oct 2016 17:33:14 +0000 (19:33 +0200)]
Refactor rev_delete handling on deletion

Refactoring handling of the rev_delete database field, which is not
needed to select, when the suppress option is set.

Also added a new const, to avoid a comment about that things should be
15 ...

Change-Id: Ia5bcb835172bf6c10e2e872555fc67e91806ebe1

7 years agoFix reference in docs of HashConfig::set
Leszek Manicki [Thu, 27 Oct 2016 13:55:39 +0000 (15:55 +0200)]
Fix reference in docs of HashConfig::set

Change-Id: I82473e42a746ed4280ea22372d8d17d797070334

7 years agoMerge "UploadBase: Permit SVG files with broken namespace definition (Inkscape bug)"
jenkins-bot [Thu, 27 Oct 2016 10:49:57 +0000 (10:49 +0000)]
Merge "UploadBase: Permit SVG files with broken namespace definition (Inkscape bug)"

7 years agoUploadBase: Permit SVG files with broken namespace definition (Inkscape bug)
Bartosz Dziewoński [Wed, 5 Oct 2016 20:18:39 +0000 (22:18 +0200)]
UploadBase: Permit SVG files with broken namespace definition (Inkscape bug)

Inkscape mangles namespace definitions created by Adobe Illustrator
(apparently it can't parse custom entities or something, maybe just
in 'xmlns' attributes). These files are still valid SVG, and not
a security issue (although Illustrator probably won't like them),
so it's okay to allow them.

Added tests with some example files.

* buggynamespace-original.svg
  File generated by Illustrator (edited by hand to reduce filesize).
  Based on <https://commons.wikimedia.org/w/?curid=16495597>.

* buggynamespace-okay.svg
  The original file, opened and saved in Inkscape (no other changes).

* buggynamespace-okay2.svg
  The original file, opened and saved in Inkscape twice.

* buggynamespace-bad.svg
  The original file, edited by hand to remove custom entities.
  This is not valid XML and should be rejected (although it's valid
  when parsed as HTML, and some image viewers might display it).

* buggynamespace-evilhtml.svg
  An SVG file using an entity declared namespace for a namespace
  we want to ban. Based on buggynamespace-original.svg.

Bug: T144827
Change-Id: I0eb9766cab86a58d729f10033c64f57d2076d917

7 years agoMerge "New HTMLForm size filter field; add size filter to Special:Newpages"
jenkins-bot [Thu, 27 Oct 2016 05:53:03 +0000 (05:53 +0000)]
Merge "New HTMLForm size filter field; add size filter to Special:Newpages"

7 years agoMerge "Add short-circuit to DatabasePostgres::schemaExists()"
jenkins-bot [Thu, 27 Oct 2016 05:43:38 +0000 (05:43 +0000)]
Merge "Add short-circuit to DatabasePostgres::schemaExists()"

7 years agoMerge "Factor out some methods in the header generation"
jenkins-bot [Thu, 27 Oct 2016 02:48:43 +0000 (02:48 +0000)]
Merge "Factor out some methods in the header generation"

7 years agoNew HTMLForm size filter field; add size filter to Special:Newpages
This, that and the other [Thu, 27 Oct 2016 01:23:18 +0000 (12:23 +1100)]
New HTMLForm size filter field; add size filter to Special:Newpages

The conversion of SpecialNewpages to HTMLForm seems to be half-finished.
It's not using HTMLForm to read in the request query, which means we have
to roll our own logic. Kind of defeats the purpose of using HTMLForm in
the first place.

When ProtectedPages is converted to HTMLForm (T117722), it can use this new
field type.

Bug: T12817
Change-Id: I069609fbb37b18c3df25156779ad7ac7cd5d6813

7 years agoAdd short-circuit to DatabasePostgres::schemaExists()
Aaron Schulz [Wed, 26 Oct 2016 23:07:12 +0000 (16:07 -0700)]
Add short-circuit to DatabasePostgres::schemaExists()

Change-Id: I5221f7d937be1e87689df5a21fd64e244dbd4c2a

7 years agoRevert "Localisation updates from https://translatewiki.net."
Raimond Spekking [Wed, 26 Oct 2016 21:51:36 +0000 (21:51 +0000)]
Revert "Localisation updates from https://translatewiki.net."

Conflicts with https://gerrit.wikimedia.org/r/#/c/318151/

This reverts commit bc2fe61db26ef99f14b17be36476fc20a3bb4e0f.

Change-Id: Ib17efe29d4f78eb3508ffe57c3fa365b64aa1341

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 26 Oct 2016 20:22:24 +0000 (22:22 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I62a31a3a58174c1c4481bcfb51ab94cc17cac7d9

7 years agoAdd a grant for viewing restricted log entries
Brad Jorsch [Wed, 26 Oct 2016 19:20:17 +0000 (15:20 -0400)]
Add a grant for viewing restricted log entries

In core this holds the 'suppressionlog' right. SpamBlacklist and
TitleBlacklist would add their permissions here as well.

Bug: T149235
Change-Id: I8e2304e7b6f2af0c3d21d7d7390e4979b8eaee39

7 years agoFactor out some methods in the header generation
WMDE-Fisch [Wed, 26 Oct 2016 14:34:08 +0000 (16:34 +0200)]
Factor out some methods in the header generation

As preparation for some more minor refactoring there.

Change-Id: I31f585e5c4fcf724d9aaf670a21f4f0af42e98ce

7 years agoBump version number to 1.29.0-alpha for 1.29 development cycle
Chad Horohoe [Tue, 25 Oct 2016 22:56:37 +0000 (15:56 -0700)]
Bump version number to 1.29.0-alpha for 1.29 development cycle

Branch point was dc0f9b3a3a75e80a0c5f09dd76b4df1fcc05080d

The following commits missed the branch point and should probably
be backported because master reports them as 1.28
 - 4290f686c07265d40718fc3358f196de41bbde57
 - 81698d4c1605f491709e636acd5ca0e6857e3821
 - 40da8bf039019a2845405854a2d636be4bd3b98d
 - 95db9833dd8d75ff3dc44d587fdc3ad80332a500
 - 7bd97758f7e1496c7d4a1fa4e7275c9d6c01c5c3

Change-Id: I51562ba357b5533500ef9dd1e29107dd05cc9e1e

7 years agoMerge "Add documentation for wfClientAcceptsGzip()"
jenkins-bot [Tue, 25 Oct 2016 21:45:03 +0000 (21:45 +0000)]
Merge "Add documentation for wfClientAcceptsGzip()"

7 years agoAdd documentation for wfClientAcceptsGzip()
nicoco007 [Mon, 28 Dec 2015 20:35:53 +0000 (15:35 -0500)]
Add documentation for wfClientAcceptsGzip()

Change-Id: I18b9311d71278ca4c843908a11f77270f03cf534

7 years agoMerge "Localisation updates from https://translatewiki.net."
L10n-bot [Tue, 25 Oct 2016 20:29:50 +0000 (20:29 +0000)]
Merge "Localisation updates from https://translatewiki.net."

7 years agoMerge "Fix DatabaseSqlite IDEA warnings"
jenkins-bot [Tue, 25 Oct 2016 20:27:57 +0000 (20:27 +0000)]
Merge "Fix DatabaseSqlite IDEA warnings"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 25 Oct 2016 20:20:09 +0000 (22:20 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I832a9f7f9ac7c4afd2c358fb506ac3a11f713414

7 years agoAdd class to EditPage text area when editing an old revision
cenarium [Wed, 20 Jan 2016 20:43:47 +0000 (21:43 +0100)]
Add class to EditPage text area when editing an old revision

This adds a class 'mw-textarea-oldrev' to the editing area when an old
page revision is edited. It seems that the warning MediaWiki:Editingold
is not sufficient for some users and some css tweaks might be
appreciated, as is already done for protected pages.

Bug: T124226
Change-Id: Ifc53af0f827a5cebfd9cc220b0aa247210e8dcfc

7 years agoFix DatabaseSqlite IDEA warnings
Aaron Schulz [Mon, 24 Oct 2016 22:19:21 +0000 (15:19 -0700)]
Fix DatabaseSqlite IDEA warnings

Change-Id: Idd52a27c853653e9ba64d765f4f526f5e8a13bcd

7 years agoParser functions now format numbers according to page language
Niklas Laxström [Thu, 30 Jan 2014 11:16:39 +0000 (11:16 +0000)]
Parser functions now format numbers according to page language

Also fixed incorrect return value documentation.

Bug: T62604
Change-Id: I1e16f20ca79436afe17eba711981b2ae43fed9e1

7 years agoresourceloader: Deprecate mw.Map
Timo Tijhof [Sat, 17 Sep 2016 22:50:47 +0000 (15:50 -0700)]
resourceloader: Deprecate mw.Map

This has never been used outside mediawiki.js for things like mw.config,
and mw.messages.

The public API of those objects will remain, but the constructor will
no longer be supported in the future in order to allow these to be
backed by native Map in the future (with a minimal polyfill rather than
a complete one).

* Remove 'mw.Map(valuesObject)'. (follows-up 63f8d7b9e5).
  This is incompatible with native Map and isn't actually used anywhere.

* Deprecate mw.Map#values. Undocumented and considered private.
  A few uses have appeared in the wild so keep a short deprecation period.

* Update the MediaWiki QUnit runner to construct new maps in setup/teardown
  instead of swapping the internal values object directly.
  Also update the runner to update mediawiki.jqueryMsg's parser default since
  it kept a reference to the first mw.messages object.

* Add 'logName' parameter to mw.log.deprecate(). Default logName
  of property key made sense for its original use case (deprecation warnings
  for global variables, which are a property of the window object). But
  for keys of any other object, we'll want to some context for the name.

* Remove redundant test expect numbers. (Follows-up 7c36375c4c7007d)

* Ensure mw.Map.prototype.constructor points to mw.Map.
  This was broken by 5819c37b3, which accidentally made it point to Object.

Bug: T146432
Change-Id: I7ff0b230608f5ca582fc6752b59c4bb998c78ba2

7 years agomediawiki.storage: Catch exceptions on window.localStorage property access
Timo Tijhof [Mon, 24 Oct 2016 23:00:45 +0000 (00:00 +0100)]
mediawiki.storage: Catch exceptions on window.localStorage property access

Follows-up 430a0d3984, which created a private property that stored a
reference to the localStorage object outside the get and set methods.

Where previously it was used directly, and as such, covered by
the try/catch around getItem and setItem calls.

Bug: T148998
Change-Id: Ibe75408913d4ffbf1791e1a6470296b29f809185

7 years agomw.loader: Fix off-by-one error in splitModuleKey()
Timo Tijhof [Tue, 25 Oct 2016 02:09:07 +0000 (03:09 +0100)]
mw.loader: Fix off-by-one error in splitModuleKey()

Follows-up 45bec76. This caused most localStorage cache entries from
mw.loader.store to be ignored because it'd store tje source code with
a version string that wrongly started with an "@".

As such, on the next page view, when comparing against the version
string from the startup manifest, it would mismatch and eventually
be pruned by mw.loader.store.

Change-Id: If14c80989c0bb28b7b209abe89f83d585c563987

7 years agoMerge "Swapping defaultbranch for track"
jenkins-bot [Tue, 25 Oct 2016 00:46:45 +0000 (00:46 +0000)]
Merge "Swapping defaultbranch for track"

7 years agoSwapping defaultbranch for track
Chad Horohoe [Mon, 24 Oct 2016 23:05:44 +0000 (16:05 -0700)]
Swapping defaultbranch for track

The former is a maintenance nightmare when branching.

Bug:T146293
Change-Id: Ic892c2f5778153f6e99107fe24dafc2c8797f86d

7 years agoMerge "Clean up newWANCacheFromParams() getInstance() calls"
jenkins-bot [Mon, 24 Oct 2016 23:34:31 +0000 (23:34 +0000)]
Merge "Clean up newWANCacheFromParams() getInstance() calls"

7 years agoMerge "Small DB classes IDEA warning fixes and cleanups"
jenkins-bot [Mon, 24 Oct 2016 23:30:54 +0000 (23:30 +0000)]
Merge "Small DB classes IDEA warning fixes and cleanups"

7 years agoMerge "Cleanup unused LBFactory $domain arguments"
jenkins-bot [Mon, 24 Oct 2016 23:11:29 +0000 (23:11 +0000)]
Merge "Cleanup unused LBFactory $domain arguments"

7 years agoCleanup unused LBFactory $domain arguments
Aaron Schulz [Mon, 24 Oct 2016 21:53:24 +0000 (14:53 -0700)]
Cleanup unused LBFactory $domain arguments

Change-Id: I17b409a71e263ff5e0175f6a35fb9c5288f00c11

7 years agoMerge "Remove redundant LoadBalancerSingle doc block"
jenkins-bot [Mon, 24 Oct 2016 21:25:25 +0000 (21:25 +0000)]
Merge "Remove redundant LoadBalancerSingle doc block"

7 years agoMerge "API: Update ApiOptions docs for I45f69997"
jenkins-bot [Mon, 24 Oct 2016 21:03:44 +0000 (21:03 +0000)]
Merge "API: Update ApiOptions docs for I45f69997"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 24 Oct 2016 20:09:55 +0000 (22:09 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I0f0c8c41d403de7df04aa49aebf3c21c9e5d3957

7 years agoComments: Added phabricator IDs to bz bug #s
Yuri Astrakhan [Sun, 23 Oct 2016 01:46:14 +0000 (21:46 -0400)]
Comments: Added phabricator IDs to bz bug #s

Change-Id: Ia8d4e570e78c62e5c26bda0264fbf1efc74e58a2

7 years agoAdded array_replace_recursive merge strategy
Yuri Astrakhan [Tue, 18 Oct 2016 05:23:56 +0000 (01:23 -0400)]
Added array_replace_recursive merge strategy

For extension registry, add array_replace_recursive merge strategy,
as some extensions/configuration may prefer that to array_merge_recursive.

In some cases, configuration is merged from multiple extensions,
such as JsonConfig's $wgJsonConfigs configuration: ZeroBanner defines

"JsonZeroConfig": {
"namespace": 480,
"nsName": "Zero",
"isLocal": false,
"cacheKey": "1"
}

and mobile.php overrides it with
$wgJsonConfigs['JsonZeroConfig']['isLocal'] = false;
$wgJsonConfigs['JsonZeroConfig']['remote'] = [
'url' => 'https://zero.wikimedia.org/w/api.php',
'username' => $wmgZeroPortalApiUserName,
'password' => $wmgZeroPortalApiPassword,
];

Having identical value 'isLocal' would be converted into an array
if array_merge_recursive is used, but the replace strategy fixes it.

Change-Id: Ica6ddd0ae76f23e60de9b6235c6e2a3f2754a95d

7 years agoAPI: Update ApiOptions docs for I45f69997
Brad Jorsch [Mon, 24 Oct 2016 17:48:37 +0000 (13:48 -0400)]
API: Update ApiOptions docs for I45f69997

Now that we have an alternative multiple-value separator, the
documentation for action=options's change parameter should recommend
that instead of stating that values cannot contain pipes.

Change-Id: Ia0ff2c16be9cab3e1e303a5c7c618455167db31c

7 years agoMerge "Add a @throws doc line to getGrammarTransformations() in Language.php"
jenkins-bot [Mon, 24 Oct 2016 13:49:12 +0000 (13:49 +0000)]
Merge "Add a @throws doc line to getGrammarTransformations() in Language.php"

7 years agoRemove redundant LoadBalancerSingle doc block
Aaron Schulz [Fri, 21 Oct 2016 21:23:39 +0000 (14:23 -0700)]
Remove redundant LoadBalancerSingle doc block

Change-Id: Ibbf952bb1c6ded5e47a325de3c2ecdc5e171e4e7

7 years agoMerge "Make LBFactorySingle call initLoadBalancer() as the others do"
jenkins-bot [Mon, 24 Oct 2016 07:03:17 +0000 (07:03 +0000)]
Merge "Make LBFactorySingle call initLoadBalancer() as the others do"

7 years agoMerge "Improve Status/StatusValue::splitByErrorType type hint"
jenkins-bot [Mon, 24 Oct 2016 05:11:30 +0000 (05:11 +0000)]
Merge "Improve Status/StatusValue::splitByErrorType type hint"

7 years agoSmall DB classes IDEA warning fixes and cleanups
Aaron Schulz [Mon, 24 Oct 2016 05:03:37 +0000 (22:03 -0700)]
Small DB classes IDEA warning fixes and cleanups

Change-Id: I65b5f452a364b329bb671540f4115dbc4f40eebd

7 years agoForce boolean type for $ok in StatusValue::setResult
Gergő Tisza [Mon, 24 Oct 2016 04:03:58 +0000 (04:03 +0000)]
Force boolean type for $ok in StatusValue::setResult

Change-Id: Ie9e933fba3445872e39d70ab3a8230f204106996

7 years agoClean up newWANCacheFromParams() getInstance() calls
Aaron Schulz [Mon, 24 Oct 2016 04:01:03 +0000 (21:01 -0700)]
Clean up newWANCacheFromParams() getInstance() calls

Change-Id: I0daa2531708d0a110e8028c4a5641153a23c0a97

7 years agoImprove Status/StatusValue::splitByErrorType type hint
Gergő Tisza [Mon, 24 Oct 2016 00:07:53 +0000 (00:07 +0000)]
Improve Status/StatusValue::splitByErrorType type hint

Change-Id: I6deb76f8906aa86481b84ce1aaebaddf3a52e31d

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 23 Oct 2016 20:13:10 +0000 (22:13 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I6e7f0a9500f0c67789b8dcfb09fef5a381c0928f

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 22 Oct 2016 20:04:43 +0000 (22:04 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I3552487ae6111a7725ae64f4cea51b768a261b66

7 years agoAdd a @throws doc line to getGrammarTransformations() in Language.php
Amire80 [Fri, 21 Oct 2016 22:34:19 +0000 (15:34 -0700)]
Add a @throws doc line to getGrammarTransformations() in Language.php

Follow up to
I6b9b29b7017f958d62611671be017f97cee73415

Change-Id: I65b4a7b482238d2df97639f41f05af8566686414

7 years agoMerge "Use adaptive CDN TTLs for page views"
jenkins-bot [Fri, 21 Oct 2016 21:55:52 +0000 (21:55 +0000)]
Merge "Use adaptive CDN TTLs for page views"

7 years agoRemove unreachable code after an exception
Amire80 [Fri, 21 Oct 2016 20:39:07 +0000 (13:39 -0700)]
Remove unreachable code after an exception

Follow up to
I6b9b29b7017f958d62611671be017f97cee73415

Change-Id: Ib3ccbb103097a50f04b798a4ff33eedc64e62aef

7 years agoMerge "Make grammar data loadable as an RL module and usable in JS"
jenkins-bot [Fri, 21 Oct 2016 20:30:23 +0000 (20:30 +0000)]
Merge "Make grammar data loadable as an RL module and usable in JS"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 21 Oct 2016 19:59:54 +0000 (21:59 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Iefabb99a1acb00c45a585eabf082c1c2b7a83df3

7 years agoMake grammar data loadable as an RL module and usable in JS
Amir E. Aharoni [Sat, 26 Sep 2015 20:28:03 +0000 (23:28 +0300)]
Make grammar data loadable as an RL module and usable in JS

* Load the data of this variable from a JSON file to the same
  data structure that ResourceLoader uses for digitTransformTable,
  pluralRules, etc.
* Change the JSON structure to ensure the order of the rules.
  Otherwise JavaScript processes the keys in a random order.
* Delete the grammar code from JS and replace it with
  the same logic that is used in PHP for processing the data.

For now this is done only for Russian.

The next step will be to make the PHP and JS
data processing logic reusable.

Bug: T115217
Change-Id: I6b9b29b7017f958d62611671be017f97cee73415

7 years agoMake LBFactorySingle call initLoadBalancer() as the others do
Aaron Schulz [Fri, 21 Oct 2016 00:48:15 +0000 (17:48 -0700)]
Make LBFactorySingle call initLoadBalancer() as the others do

Change-Id: I0ef09d7f4ffbba1debb43def785f0052139d7d86

7 years agoMerge "objectcache: avoid using process cache in nested callbacks"
jenkins-bot [Fri, 21 Oct 2016 01:23:30 +0000 (01:23 +0000)]
Merge "objectcache: avoid using process cache in nested callbacks"

7 years agoMerge "Show user ID on action=info"
jenkins-bot [Fri, 21 Oct 2016 00:36:21 +0000 (00:36 +0000)]
Merge "Show user ID on action=info"

7 years agoUse adaptive CDN TTLs for page views
Aaron Schulz [Tue, 23 Aug 2016 04:10:13 +0000 (21:10 -0700)]
Use adaptive CDN TTLs for page views

This makes frequently changed pages be less likely to be
seen in stale forms if purges are delayed or lost. Pages
that have not been edited for somewhat longer than the
nominal CDN cache TTL will retain the nominal TTL.

Category pages will adapt based on page_touched rather
than the last revision, given the possibility of constaintly
changing membership. With their lesser overall usage,
this is less risky than for Article, and also more useful.

Change-Id: If621aca2fb68e9f87a50c891dac8dc6ec7641f5c

7 years agoShow user ID on action=info
Kunal Mehta [Thu, 20 Oct 2016 22:23:13 +0000 (15:23 -0700)]
Show user ID on action=info

Change-Id: I43293e319e02dd388c4ee3e952962ad725ab2bab

7 years agoMerge "OutputPage: Reduce getTitleInfo() calls (improve preloading)"
jenkins-bot [Thu, 20 Oct 2016 22:18:38 +0000 (22:18 +0000)]
Merge "OutputPage: Reduce getTitleInfo() calls (improve preloading)"

7 years agoobjectcache: avoid using process cache in nested callbacks
Aaron Schulz [Thu, 20 Oct 2016 21:47:03 +0000 (14:47 -0700)]
objectcache: avoid using process cache in nested callbacks

Because the process cache can be lagged by virtue of blind TTL,
the HOLDOFF_TTL might not be enough to account for it, so avoid
using it when already inside a callback.

Also split of the tests from the MediaWiki test class, so this
does not require DB access anymore.

Change-Id: I743a1233a5efc7f036fad140a9ff8a30b32f8f27

7 years agoOutputPage: Reduce getTitleInfo() calls (improve preloading)
Timo Tijhof [Thu, 20 Oct 2016 21:43:57 +0000 (22:43 +0100)]
OutputPage: Reduce getTitleInfo() calls (improve preloading)

* Remove filter between $moduleStyles and preloadTitleInfo().
  Previously, this was filtering out wiki modules created by
  gadgets and extensions. Still causing a couple of direct queries
  from getTitleInfo().

* Store __METHOD__ in $fname outside getWithSetCallback.
  This way queries are logged as either getTitleInfo or preloadTitleInfo.
  This regressed in 0852a000a5, after which the latter was logged
  as "::{closure}".

Change-Id: I454e43f43f8ad3270b86f4cfdbd68192c305cc07

7 years agoMerge "Add caching to ResourceLoaderWikiModule::preloadTitleInfo()"
jenkins-bot [Thu, 20 Oct 2016 21:50:26 +0000 (21:50 +0000)]
Merge "Add caching to ResourceLoaderWikiModule::preloadTitleInfo()"

7 years agoClarify phpdoc of DatabaseUpdater::addExtensionUpdate
Gergő Tisza [Tue, 18 Oct 2016 01:12:08 +0000 (01:12 +0000)]
Clarify phpdoc of DatabaseUpdater::addExtensionUpdate

Change-Id: Ibc9951e70b8388f5c23c3e05e31e20bd037beacb

7 years agoMerge "Relax phpdoc of PermissionError to match actual usage"
jenkins-bot [Thu, 20 Oct 2016 21:16:31 +0000 (21:16 +0000)]
Merge "Relax phpdoc of PermissionError to match actual usage"

7 years agoMerge "FormSpecialPage: Only add redirectparams for POST forms"
jenkins-bot [Thu, 20 Oct 2016 21:07:33 +0000 (21:07 +0000)]
Merge "FormSpecialPage: Only add redirectparams for POST forms"

7 years agoAdd caching to ResourceLoaderWikiModule::preloadTitleInfo()
Aaron Schulz [Fri, 2 Sep 2016 08:28:23 +0000 (01:28 -0700)]
Add caching to ResourceLoaderWikiModule::preloadTitleInfo()

This is one of the top three DB queries showing up in xenon
reverse flamegraph profiling.

It works via a per-wiki check key that is bumped whenever
someone changes a .js or .css page on that wiki.

Change-Id: I73f419558864ba3403b4601a098f6aaf84a3e7c1

7 years agoMerge "Use a more specific rule for setting cursor:pointer on JS links"
jenkins-bot [Thu, 20 Oct 2016 20:36:42 +0000 (20:36 +0000)]
Merge "Use a more specific rule for setting cursor:pointer on JS links"

7 years agoMerge "Fixing numeric sorting for numbers with leading zeros"
jenkins-bot [Thu, 20 Oct 2016 20:11:56 +0000 (20:11 +0000)]
Merge "Fixing numeric sorting for numbers with leading zeros"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 20 Oct 2016 20:01:44 +0000 (22:01 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Id5d711a76c60c866e751c009d310fc26e3b54ee3

7 years agoUse a more specific rule for setting cursor:pointer on JS links
Ed Sanders [Thu, 20 Oct 2016 19:58:39 +0000 (12:58 -0700)]
Use a more specific rule for setting cursor:pointer on JS links

This rule may not work in old versions of IE, but neither
does JS.

This avoids cusor:pointer being applied to ContentEditable links
which use cursor:text.

Change-Id: I0d87d67f7d4aa1c1118f3b3613c755535748c799

7 years agoFixing numeric sorting for numbers with leading zeros
Kaldari [Thu, 20 Oct 2016 18:56:54 +0000 (11:56 -0700)]
Fixing numeric sorting for numbers with leading zeros

Bug: T148774
Change-Id: I34aa330645d9d82b6c4e57542e891dd2b36e42ad

7 years agoadd RELEASE notes for 28417328 (CSS3 attr() is banned)
Brian Wolff [Tue, 18 Oct 2016 19:41:29 +0000 (19:41 +0000)]
add RELEASE notes for 28417328 (CSS3 attr() is banned)

Change-Id: Ie42cb63072520f347393e7dbaaec381c6e106c1e

7 years agoresourceloader: Make cache-eval in mw.loader.work asynchronous
Timo Tijhof [Mon, 17 Oct 2016 18:01:14 +0000 (19:01 +0100)]
resourceloader: Make cache-eval in mw.loader.work asynchronous

This is an amended version of reverted commit 482ad8d9fb2e.

The difference is that this change is smaller.

We keep the eval as one large chunk. Not split up in <=50ms chunks and
spread out based on how fast code executes on the device. This means we keep
the issue of an irresponsive UI thread during execution, and trade it for
finishing quicker. This doesn't feel right, but is something we should change
separately, later because it has side-effects (T146510).

Doing it in one chunk is the status quo as we've had it for the last two
years. This commit merely defers the big eval chunk to one tick later so
that higher priority work may happen first (e.g. rendering).

Bug: T142129
Change-Id: I2b31b27554cd29b48d986ed6a6f698a77e59c0e5

7 years agoMerge "Fix FileBackendStore IDEA warnings due to var reuse"
jenkins-bot [Wed, 19 Oct 2016 22:01:02 +0000 (22:01 +0000)]
Merge "Fix FileBackendStore IDEA warnings due to var reuse"

7 years agoMerge "JpegMetadataExtractor: Don't fail when garbage bytes are present between JPEG...
jenkins-bot [Wed, 19 Oct 2016 21:14:55 +0000 (21:14 +0000)]
Merge "JpegMetadataExtractor: Don't fail when garbage bytes are present between JPEG sections"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 19 Oct 2016 20:53:25 +0000 (22:53 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I8c578090b46c06951b88c6893f97f16b79e85fc9

7 years agoSpecial:BlockList: Chain methods of HTMLForm
Florian Schmidt [Tue, 18 Oct 2016 17:12:00 +0000 (19:12 +0200)]
Special:BlockList: Chain methods of HTMLForm

Much easier to read. Also, changed '' as a value for displayForm
to false.

Change-Id: Iab932d34952a1f7aab9da02d5ddf137edd53ad43

7 years agoMerge "Add 'noflip' option on RL modules to disable CSSJanus"
jenkins-bot [Wed, 19 Oct 2016 06:52:02 +0000 (06:52 +0000)]
Merge "Add 'noflip' option on RL modules to disable CSSJanus"

7 years agoJpegMetadataExtractor: Don't fail when garbage bytes are present between JPEG sections
Bartosz Dziewoński [Wed, 19 Oct 2016 06:20:23 +0000 (23:20 -0700)]
JpegMetadataExtractor: Don't fail when garbage bytes are present between JPEG sections

In theory JPEG files are not allowed to contain anything between the sections,
but in practice they sometimes do. It's customary to ignore the garbage data.

Bug: T148606
Change-Id: I98f2609644bcd8bfd7c1679afc6e7af83e228685

7 years agoFix FileBackendStore IDEA warnings due to var reuse
Aaron Schulz [Wed, 19 Oct 2016 06:10:58 +0000 (23:10 -0700)]
Fix FileBackendStore IDEA warnings due to var reuse

Change-Id: I1b667fb7e891053c7898a0c247745b4376061590

7 years agoMerge "MessageCache: Use checkKeys for large messages"
jenkins-bot [Wed, 19 Oct 2016 04:37:13 +0000 (04:37 +0000)]
Merge "MessageCache: Use checkKeys for large messages"

7 years agoMerge "Remove dire config-dbsupport-postgres warning"
jenkins-bot [Wed, 19 Oct 2016 04:13:18 +0000 (04:13 +0000)]
Merge "Remove dire config-dbsupport-postgres warning"

7 years agoMerge "ApiPurge: Remove setTriggeringUser call."
jenkins-bot [Wed, 19 Oct 2016 03:46:13 +0000 (03:46 +0000)]
Merge "ApiPurge: Remove setTriggeringUser call."

7 years agoApiPurge: Remove setTriggeringUser call.
Petr Pchelko [Tue, 18 Oct 2016 23:32:07 +0000 (16:32 -0700)]
ApiPurge: Remove setTriggeringUser call.

This is a revert of 84ffa5d1242. At that point we've been implementing
page-properties-change event for the EventBus extension and thought
adding this call would be a good idea. However, it was discovered
afterwards that there's much more extensions that don't set the
triggering user. Since that call is deprecated and plans are to
remove it - revert the change.

Change-Id: I9891da628f968970247edc37cccd4a666950273b

7 years agoMerge "Make MessageCache::load() require a language code"
jenkins-bot [Wed, 19 Oct 2016 01:38:43 +0000 (01:38 +0000)]
Merge "Make MessageCache::load() require a language code"

7 years agoRemove dire config-dbsupport-postgres warning
Aaron Schulz [Wed, 19 Oct 2016 01:36:33 +0000 (18:36 -0700)]
Remove dire config-dbsupport-postgres warning

The other DBs (even oracle and mssql) do not have this. Postgres
support is far better than some of those and tends to break most
when using master (and fixes are backported if bug slip into
releases). This is one of the three decently supported DB types.

Change-Id: I5da74d5f9f0ea055529456eddb47ca0be380cbe4

7 years agoMerge "Clean up postgres connection handling"
jenkins-bot [Wed, 19 Oct 2016 01:24:07 +0000 (01:24 +0000)]
Merge "Clean up postgres connection handling"

7 years agoClean up postgres connection handling
Aaron Schulz [Tue, 18 Oct 2016 01:21:46 +0000 (18:21 -0700)]
Clean up postgres connection handling

* Remove non-connection magic case when no DB $user
  is given. This was removed from the base class.
* Use PGSQL_CONNECT_FORCE_NEW to let LoadBalancer
  handle connection reuse. This makes it work like
  the mysql classes.
* Make postgres connection error messages actually
  be useful by using the PHP error when possible.
  This makes it clear if the problem is authentication
  or something else and so on.

Change-Id: I3fd76c1e2db8d6008074f5347b201554579b549a

7 years agoMake MessageCache::load() require a language code
Aaron Schulz [Sat, 15 Oct 2016 02:11:51 +0000 (19:11 -0700)]
Make MessageCache::load() require a language code

Also make it protected; no outside callers exist.

Change-Id: I9f35d05a5e031d1c536a44b19b108803db068677

7 years agoMerge "Postgres installation fixes"
jenkins-bot [Wed, 19 Oct 2016 00:35:42 +0000 (00:35 +0000)]
Merge "Postgres installation fixes"

7 years agoMerge "Force User::__toString() return value to be string"
jenkins-bot [Wed, 19 Oct 2016 00:01:12 +0000 (00:01 +0000)]
Merge "Force User::__toString() return value to be string"

7 years agoForce User::__toString() return value to be string
Gergő Tisza [Tue, 18 Oct 2016 23:50:47 +0000 (23:50 +0000)]
Force User::__toString() return value to be string

Bug: T148486
Change-Id: I19f483b16c99d05f4d1626ee89ba1cfb7a78d52b

7 years agoMerge "Move FSFile classes to /fsfile"
jenkins-bot [Tue, 18 Oct 2016 23:39:33 +0000 (23:39 +0000)]
Merge "Move FSFile classes to /fsfile"

7 years agoMerge "Deprecate Database::getProperty()"
jenkins-bot [Tue, 18 Oct 2016 23:36:47 +0000 (23:36 +0000)]
Merge "Deprecate Database::getProperty()"

7 years agoMove FSFile classes to /fsfile
Aaron Schulz [Tue, 18 Oct 2016 22:36:24 +0000 (15:36 -0700)]
Move FSFile classes to /fsfile

Change-Id: I21f3a9ac52b1f953ca09da0705cac868785193e1

7 years agoFormSpecialPage: Only add redirectparams for POST forms
Kunal Mehta [Tue, 18 Oct 2016 21:16:04 +0000 (14:16 -0700)]
FormSpecialPage: Only add redirectparams for POST forms

If the form is submitted via GET, using redirectparams doesn't make
sense, and you end up with redirect params being included in the GET
query string. And then if the form is submitted again, the
redirectparams include the previous redirectparams, and so on.

Change-Id: I9bc930e5dca557571b4658444fea6aec59c5797a