lhc/web/wiklou.git
8 years agoDon't apply CSS columns if less than 3 results were found on AllPages & PrefixIndex
Glaisher [Mon, 9 Nov 2015 16:50:53 +0000 (21:50 +0500)]
Don't apply CSS columns if less than 3 results were found on AllPages & PrefixIndex

If there are less than 3 entries, the browser still tries to render as it would
appear as if there are 3 columns, so the final rendering is broken. So don't apply
CSS columns and just show a normal list if there are less than 3 results. This also
matches the behavior of CategoryViewer.

Bug: T117887
Change-Id: Ie6ac0e1174ff8cc14008f39a91c95bcd6f616353

8 years agoMerge "Use HTMLForm in Special:AllPages"
jenkins-bot [Mon, 9 Nov 2015 16:32:45 +0000 (16:32 +0000)]
Merge "Use HTMLForm in Special:AllPages"

8 years agoUse HTMLForm in Special:AllPages
Glaisher [Wed, 28 Oct 2015 12:29:45 +0000 (17:29 +0500)]
Use HTMLForm in Special:AllPages

Renamed namespaceForm to outputHTMLForm and make it protected
Also made sure that this is the only place where it's used
https://github.com/search?q=namespaceForm+%40wikimedia&ref=reposearch&type=Code

Also make HTMLSelectNamespace's work when 'all' is set to null.

Change-Id: Ia559b52464bceaf1202e3a6696728781bb62cdbc

8 years agoMerge "Fix regression in I24d9b16"
jenkins-bot [Mon, 9 Nov 2015 15:04:54 +0000 (15:04 +0000)]
Merge "Fix regression in I24d9b16"

8 years agoReplace Language::factory( $wgLanguageCode ) by $wgContLang
Fomafix [Mon, 9 Nov 2015 05:28:58 +0000 (05:28 +0000)]
Replace Language::factory( $wgLanguageCode ) by $wgContLang

$wgContLang is filled with Language::factory( $wgLanguageCode ) in Setup.php

Change-Id: I2cb222ee793106140755cf109f9fcc5fcbaa4ddd

8 years agoFix regression in I24d9b16
Derk-Jan Hartman [Sun, 8 Nov 2015 21:04:53 +0000 (22:04 +0100)]
Fix regression in I24d9b16

I accidently lost this a CSS block in the transition, and the first
page was missing the prefsection class.

Bug: T115692
Change-Id: I712824cf33bf842e42ca9c6e6660a4cbbf9e6d8e

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 8 Nov 2015 20:48:56 +0000 (21:48 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: Ia89debf1a0b89ebd41c1515c0dbb0e27fd378021

8 years agoMerge "Work around broken HHVM ini_get() for 'upload_max_filesize' and 'post_max_size'"
jenkins-bot [Sun, 8 Nov 2015 20:00:29 +0000 (20:00 +0000)]
Merge "Work around broken HHVM ini_get() for 'upload_max_filesize' and 'post_max_size'"

8 years agoWork around broken HHVM ini_get() for 'upload_max_filesize' and 'post_max_size'
Bartosz Dziewoński [Fri, 23 Oct 2015 16:03:43 +0000 (18:03 +0200)]
Work around broken HHVM ini_get() for 'upload_max_filesize' and 'post_max_size'

In HHVM, the settings 'upload_max_filesize' and 'post_max_size' are
not available via ini_get() due to some long-standing bug
(https://github.com/facebook/hhvm/issues/4993). Instead, one can use
'hhvm.server.upload.upload_max_file_size' and 'hhvm.server.max_post_size'
(in a typical PHP fashion, their names are subtly different than the
originals as to increase the potential for confusion).

Added a new method UploadBase::getMaxPhpUploadSize() to handle this.

Additionally:
* 'post_max_size' can be set to 0, which is equivalent to no limit.
  Handle this correctly.
* $wgMaxUploadSize can be an array structure, instead of just a number.
  Handle this correctly by using UploadBase::getMaxUploadSize().
* When no maximum is set, use PHP_INT_MAX rather than 1e100. It should
  be big enough, and the latter is a float, results in 0 when cast to
  int, and doesn't look as pretty when formatted in GB in the interface.

Bug: T116347
Change-Id: Idf707253eeae1b90792a7e26d2ab66d1317e67ae

8 years agoRework the Preferences to prevent FOUC
Derk-Jan Hartman [Sun, 1 Nov 2015 00:34:46 +0000 (01:34 +0100)]
Rework the Preferences to prevent FOUC

New styles modules that is always added, so that all JS specific styling
is guaranteed to load before first paint. Reworked the HTML to generate
the preftoc (hidden when user has no JS).

Set htmlform nolabel class to use !important, so that it doesn't get
overriden by the 20% width rule of labels.

Also requires changes to the skinstyles of Vector preferences, which
is an a separate patch (I59f0f45), and other skins.

Bug: T115692
Change-Id: I24d9b16ed6729fdf0d59adcc2f0ba16f4f621b44

8 years agoMerge "mediawiki.jqueryMsg: Update tests to mock magic.SITENAME"
jenkins-bot [Sun, 8 Nov 2015 07:16:51 +0000 (07:16 +0000)]
Merge "mediawiki.jqueryMsg: Update tests to mock magic.SITENAME"

8 years agoMerge "Add/update phpdoc"
jenkins-bot [Sun, 8 Nov 2015 02:58:07 +0000 (02:58 +0000)]
Merge "Add/update phpdoc"

8 years agoMerge "Remove various unused variables"
jenkins-bot [Sun, 8 Nov 2015 02:49:04 +0000 (02:49 +0000)]
Merge "Remove various unused variables"

8 years agoMerge "Add class member definition for params"
jenkins-bot [Sun, 8 Nov 2015 02:48:01 +0000 (02:48 +0000)]
Merge "Add class member definition for params"

8 years agoMerge "Fix casing of function calls in API"
jenkins-bot [Sun, 8 Nov 2015 02:38:50 +0000 (02:38 +0000)]
Merge "Fix casing of function calls in API"

8 years agoPass wpExistingTags in the request when multiple revisions are selected
cenarium [Sat, 13 Jun 2015 17:02:12 +0000 (19:02 +0200)]
Pass wpExistingTags in the request when multiple revisions are selected

Not doing so breaks the option to remove all tags.

Bug: T102186
Change-Id: I961b29d78ec7dd7a48f3bb4633f9c057125cce5b

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 7 Nov 2015 21:27:38 +0000 (22:27 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I859174f3033d89aac2121387b52c2d25b38b8810

8 years agoAdd/update phpdoc
Reedy [Sat, 7 Nov 2015 21:25:04 +0000 (21:25 +0000)]
Add/update phpdoc

Change-Id: I9cb6f041a0242c3257a24aac6538f7fbbca60cb0

8 years agoRemove various unused variables
Reedy [Sat, 7 Nov 2015 21:22:17 +0000 (21:22 +0000)]
Remove various unused variables

Change-Id: I4b1b20b4126735cb32a80e473fe48d523bcb24d1

8 years agoAdd class member definition for params
Reedy [Sat, 7 Nov 2015 21:14:22 +0000 (21:14 +0000)]
Add class member definition for params

Change-Id: I56cc77bad61691c123ecfae8e004b69141959e57

8 years agoFix casing of function calls in API
Reedy [Sat, 7 Nov 2015 21:10:23 +0000 (21:10 +0000)]
Fix casing of function calls in API

Change-Id: I44b343568e5713118c41f29a73e112162dd3e635

8 years agoApiHelp: Fix undefined variable warning
Brad Jorsch [Sat, 7 Nov 2015 17:55:01 +0000 (12:55 -0500)]
ApiHelp: Fix undefined variable warning

Change-Id: I5b2790af9182dd76cd52be284f56e4833ac464c6

8 years agoMerge "Use Arabic numerals in Punjabi (pa) locale"
jenkins-bot [Sat, 7 Nov 2015 15:57:14 +0000 (15:57 +0000)]
Merge "Use Arabic numerals in Punjabi (pa) locale"

8 years agoUse Arabic numerals in Punjabi (pa) locale
Federico Leva [Sat, 7 Nov 2015 15:29:33 +0000 (16:29 +0100)]
Use Arabic numerals in Punjabi (pa) locale

A handful users requesting and no opposition.

Bug: T113688
Change-Id: Ie31f0b3a66f389706968860f871086d053c73d3e

8 years agoTOC: Fix problems on RTL wikis
Fomafix [Sat, 7 Nov 2015 12:19:16 +0000 (12:19 +0000)]
TOC: Fix problems on RTL wikis

This is a follow-up to c7894deb.

Bug: T118029
Change-Id: I0cd614063daff20e226a2ba1f819cebd71a2244b

8 years agoMerge "Hotlink InstantCommons images by default to speed up parsing"
jenkins-bot [Sat, 7 Nov 2015 02:01:50 +0000 (02:01 +0000)]
Merge "Hotlink InstantCommons images by default to speed up parsing"

8 years agoEnforce stricter slave lag limits for bot API requests
Aaron Schulz [Fri, 2 Oct 2015 00:57:07 +0000 (17:57 -0700)]
Enforce stricter slave lag limits for bot API requests

* All users with the bot right sending requests to
  write APIs will get a read-only error when slave
  lag is high. The lag tolerance is configured via
  $wgAPIMaxLagThreshold.
* Making this lower than 'max lag' in the LBFactory
  config means bots get read-only errors before other
  users, which is sensible.
* The default LoadBalancer 'max lag' is now 10 instead
  of 30, which now matches the timeout used for waiting
  on MASTER_POS_WAIT() for ChronologyProtector. This is
  better for assuring that users see their own changes.

Bug: T95501
Change-Id: I56a7f3538278378c67fa3ef5ff0ba4aa6a9a8c64

8 years agoMerge "Add triggeringRevisionId to LinksUpdate JobSpec"
Aaron Schulz [Sat, 7 Nov 2015 00:51:00 +0000 (00:51 +0000)]
Merge "Add triggeringRevisionId to LinksUpdate JobSpec"

8 years agoMerge "Allow AUTHOR|CREDITS with .{media,}wiki extension"
jenkins-bot [Fri, 6 Nov 2015 23:05:07 +0000 (23:05 +0000)]
Merge "Allow AUTHOR|CREDITS with .{media,}wiki extension"

8 years agoMerge "Bump composer-merge-plugin to v1.3.0"
jenkins-bot [Fri, 6 Nov 2015 22:44:07 +0000 (22:44 +0000)]
Merge "Bump composer-merge-plugin to v1.3.0"

8 years agoBump composer-merge-plugin to v1.3.0
Bryan Davis [Fri, 6 Nov 2015 22:11:35 +0000 (15:11 -0700)]
Bump composer-merge-plugin to v1.3.0

Update composer-merge-plugin and enable the new feature of omitting
"require-dev" sections from merged files. This will help prevent
Composer package conflicts when used with extensions that have dev
requirements which are not reconcilable with those of MediaWiki itself.

Requires: I7453f68e671b9d519ec3f7dfaa22de6ec8f252e9
Change-Id: I768cf21c6601496e34f2b63199df04cbc0090145

8 years agoAdd header to flag API POST requests with no write intentions
Aaron Schulz [Sun, 25 Oct 2015 06:45:02 +0000 (23:45 -0700)]
Add header to flag API POST requests with no write intentions

This performs sanity check that request *is* for a non-write module.
By handling the validation, the CDN layer can simply use the presence
of this header to route POST requests to the local datacenter.
Without validation, users could cause strange traffic patterns and slow
cross-DC database writes (which can involve many RTTs).

This is useful for AJAX widgets that need to post a payload to get a
response, but that don't actually change anything in the process. They
should be able to use the local datacenter.

Bug: T91820
Change-Id: I34248ddee33033e3d1d86c3391236259d917d4a7

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 6 Nov 2015 20:57:27 +0000 (21:57 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: Iaf10c5bedfc505c5891bf32c95479cc52bb189dc

8 years agoHotlink InstantCommons images by default to speed up parsing
Federico Leva [Fri, 6 Nov 2015 19:24:30 +0000 (20:24 +0100)]
Hotlink InstantCommons images by default to speed up parsing

The configuration, tested on wiki.wikimedia.it, generally improves
performance for all parties involved.

Bug: T114098
Change-Id: I76a34e8782908a28523531b2a928ea4ef7710b19

8 years agoLog errors in thumb.php
Gergő Tisza [Sun, 30 Aug 2015 00:13:04 +0000 (17:13 -0700)]
Log errors in thumb.php

Add new streamFileWithStatus() methods to FileRepo and
MediaTransformOutput that can be used to get more detailed error
information on failure. The historic streamFile() methods become sinple
wrappers to the new methods. Thumb.php is changed to use the
streamFileWithStatus() methods so that failure reasons can be logged.

Change-Id: I3088cde2044a7ff00841e53ca252d0b222c8b518

8 years agomediawiki.jqueryMsg: Update tests to mock magic.SITENAME
Timo Tijhof [Tue, 29 Sep 2015 19:06:33 +0000 (12:06 -0700)]
mediawiki.jqueryMsg: Update tests to mock magic.SITENAME

Change-Id: I75f92986dc0e44c85e592ab0bb969431993259fd

8 years agoMerge "Remove 'bot' check before trying the edit stash"
jenkins-bot [Fri, 6 Nov 2015 18:22:20 +0000 (18:22 +0000)]
Merge "Remove 'bot' check before trying the edit stash"

8 years agoMerge "Convert JobQueueGroup::getCachedConfigVar to using WAN cache"
jenkins-bot [Fri, 6 Nov 2015 17:41:34 +0000 (17:41 +0000)]
Merge "Convert JobQueueGroup::getCachedConfigVar to using WAN cache"

8 years agoMerge "Make edit link conditional on Special:BrokenRedirects/DoubleRedirects"
jenkins-bot [Fri, 6 Nov 2015 13:17:05 +0000 (13:17 +0000)]
Merge "Make edit link conditional on Special:BrokenRedirects/DoubleRedirects"

8 years agoMake edit link conditional on Special:BrokenRedirects/DoubleRedirects
umherirrender [Fri, 6 Nov 2015 09:36:59 +0000 (10:36 +0100)]
Make edit link conditional on Special:BrokenRedirects/DoubleRedirects

When an user has no permission, do not show an edit link.
Also do not show an edit link when content model does not allow direct
editing, like WikiData items.

For performance reason the special pages now run a LinkBatch to collect
the content model information.

Bug: T117900
Change-Id: Ieb56a6f314059356b95bc045f3d255930d54f213

8 years agoMerge "Implement section support for OOUIHTMLForm"
jenkins-bot [Fri, 6 Nov 2015 11:23:58 +0000 (11:23 +0000)]
Merge "Implement section support for OOUIHTMLForm"

8 years agoRemove 'bot' check before trying the edit stash
Aaron Schulz [Fri, 6 Nov 2015 05:36:02 +0000 (21:36 -0800)]
Remove 'bot' check before trying the edit stash

Some user groups, like the 'flood' one on wmf sites might
get caught up as false positives.

Change-Id: I31be62b2239477572bc063f1af0329f248bbcaf6

8 years agoLocalisationCache: try harder to use LCStoreCDB
Ori Livneh [Fri, 6 Nov 2015 01:27:47 +0000 (17:27 -0800)]
LocalisationCache: try harder to use LCStoreCDB

When the LocalisationCache class is set to 'detect', we prefer LCStoreCDB if
$wgCacheDirectory is set, but we default to LCStoreDB otherwise. Rather than
give up, we should try wfTempDir(), since any directory that meets its criteria
is also suitable for LCStoreCDB.

Change-Id: Id3e2d2b18ddb423647bf2e893bcf942722c0e097

8 years agoImprove mismatched atomic section errors
Aaron Schulz [Fri, 6 Nov 2015 00:23:21 +0000 (16:23 -0800)]
Improve mismatched atomic section errors

Change-Id: I9b1561b6426ac00f72867452bee396b649ad8bfd

8 years agoAllow AUTHOR|CREDITS with .{media,}wiki extension
S Page [Fri, 6 Nov 2015 00:08:02 +0000 (16:08 -0800)]
Allow AUTHOR|CREDITS with .{media,}wiki extension

With this fix, Special:Version shows "and others" for MobileFrontend
authors, and Special:Version/Credits/MobileFrontend works.

Bug: T117932
Change-Id: I80bc334aba80d3621416cfec1a13db4872ac53cf

8 years agoMerge "Title: Add warning if newFromText is given non-string/non-null value"
jenkins-bot [Thu, 5 Nov 2015 22:08:35 +0000 (22:08 +0000)]
Merge "Title: Add warning if newFromText is given non-string/non-null value"

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 5 Nov 2015 20:24:32 +0000 (21:24 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: I14a339b32cc0ce21e1d8ed571a64f01fdcfb726e

8 years agoTitle: Add warning if newFromText is given non-string/non-null value
Timo Tijhof [Wed, 4 Nov 2015 01:20:36 +0000 (01:20 +0000)]
Title: Add warning if newFromText is given non-string/non-null value

Specify null as allowed value to make this method more easy to use.
The method is often used like that already and this makes it official.
Previously we were on a months-long trajectory to try and remove all
instances of passing null, but it was a never-ending quest (with new
ones introduced all the time). And in all cases the added handling
in the caller is the same as the handling for when this method
returns null. Requiring the caller to bounce null makes code more
complex, duplicates logic and serves no reason. Let this method be
a non-throwing validation method that returns null if given null.

Bug: T76305
Change-Id: I47517021471ac6fd6daca6deee039c8047224a33

8 years agoMerge "mw.ForeignStructuredUpload: Link author's username to their user page"
jenkins-bot [Thu, 5 Nov 2015 19:04:59 +0000 (19:04 +0000)]
Merge "mw.ForeignStructuredUpload: Link author's username to their user page"

8 years agoMerge "mw.ForeignStructuredUpload: Prevent categories and descriptions from being...
jenkins-bot [Thu, 5 Nov 2015 19:00:47 +0000 (19:00 +0000)]
Merge "mw.ForeignStructuredUpload: Prevent categories and descriptions from being duplicated"

8 years agoMerge "Fix name of PoolCounter callback in thumb.php"
jenkins-bot [Thu, 5 Nov 2015 18:57:48 +0000 (18:57 +0000)]
Merge "Fix name of PoolCounter callback in thumb.php"

8 years agoConvert JobQueueGroup::getCachedConfigVar to using WAN cache
Aaron Schulz [Tue, 3 Nov 2015 13:09:57 +0000 (05:09 -0800)]
Convert JobQueueGroup::getCachedConfigVar to using WAN cache

Change-Id: I793ab8c11698a1c6f6c3bdd20c61b3645ca5d544

8 years agoMerge "Make DeferredUpdates exception handling more robust"
jenkins-bot [Thu, 5 Nov 2015 18:53:44 +0000 (18:53 +0000)]
Merge "Make DeferredUpdates exception handling more robust"

8 years agoMerge "Convert recordUpload2() to using startAtomic/endAtomic"
jenkins-bot [Thu, 5 Nov 2015 18:50:59 +0000 (18:50 +0000)]
Merge "Convert recordUpload2() to using startAtomic/endAtomic"

8 years agomw.ForeignStructuredUpload: Link author's username to their user page
Bartosz Dziewoński [Thu, 5 Nov 2015 18:32:08 +0000 (19:32 +0100)]
mw.ForeignStructuredUpload: Link author's username to their user page

Bug: T117882
Change-Id: I3fa59264686fb67022b7e21a570761498baed690

8 years agomw.ForeignStructuredUpload: Prevent categories and descriptions from being duplicated
Bartosz Dziewoński [Thu, 5 Nov 2015 18:26:55 +0000 (19:26 +0100)]
mw.ForeignStructuredUpload: Prevent categories and descriptions from being duplicated

One copy would be added every time the user tried to save the file.
If they got an error and corrected it before trying again, there would
be two or more copies.

Bug: T116394
Change-Id: Ib4642d48e21d679ed675614efb29c77fa0e2c9c4

8 years agoConvert recordUpload2() to using startAtomic/endAtomic
Aaron Schulz [Sun, 1 Nov 2015 22:29:05 +0000 (14:29 -0800)]
Convert recordUpload2() to using startAtomic/endAtomic

* This avoids breaking transactions due to nesting
* Also improve readability a bit in this area

Change-Id: I81c41e83d14aa59930bfb99522ebcc25d8aa14f9

8 years agomw.ForeignStructuredUpload: Add some headers to file description page
Bartosz Dziewoński [Thu, 5 Nov 2015 18:17:20 +0000 (19:17 +0100)]
mw.ForeignStructuredUpload: Add some headers to file description page

Bug: T117878
Change-Id: I4b13134096cbb15d5bbab8d4688724e19ec94deb

8 years agoMerge "Use interwiki cache directly to resolve transwiki import sources"
jenkins-bot [Thu, 5 Nov 2015 16:52:31 +0000 (16:52 +0000)]
Merge "Use interwiki cache directly to resolve transwiki import sources"

8 years agoMerge "mediawiki.jqueryMsg: Don't duplicate link contents if parse() is called multip...
jenkins-bot [Thu, 5 Nov 2015 16:25:45 +0000 (16:25 +0000)]
Merge "mediawiki.jqueryMsg: Don't duplicate link contents if parse() is called multiple times"

8 years agomediawiki.jqueryMsg: Don't duplicate link contents if parse() is called multiple...
Bartosz Dziewoński [Wed, 4 Nov 2015 23:43:18 +0000 (00:43 +0100)]
mediawiki.jqueryMsg: Don't duplicate link contents if parse() is called multiple times

    mw.messages.set( 'foo', '[$1 Link]' );
    var msg = mw.message( 'foo', $( '<a>' ).attr( 'href', 'http://example.com/' ) );
    msg.parse(); msg.parse(); msg.parse();
    $( 'body ').append( msg.parse() ); // The link now says "LinkLinkLinkLink"

Change-Id: Id170b328164527320326178f24f56c5077cd50ab

8 years agoMerge "Don't link to title on "htmlform-title-not-exists""
jenkins-bot [Thu, 5 Nov 2015 13:48:30 +0000 (13:48 +0000)]
Merge "Don't link to title on "htmlform-title-not-exists""

8 years agoMerge "Add example of help for all query submodules"
jenkins-bot [Thu, 5 Nov 2015 13:43:26 +0000 (13:43 +0000)]
Merge "Add example of help for all query submodules"

8 years agoAdd triggeringRevisionId to LinksUpdate JobSpec
addshore [Thu, 5 Nov 2015 12:07:01 +0000 (12:07 +0000)]
Add triggeringRevisionId to LinksUpdate JobSpec

Bug: T117860
Change-Id: I8c730a434b8bdda7664fd1e3bb3fbc8840804950

8 years agoFix name of PoolCounter callback in thumb.php
Brian Wolff [Thu, 5 Nov 2015 06:59:58 +0000 (23:59 -0700)]
Fix name of PoolCounter callback in thumb.php

The callback is named doCachedWork, not getCachedWork. The typo
made it so that if multiple people try to render a file at once,
MediaWiki would not check if the last person to go already did the
needed work.

This might not make as much difference as it would sound, as the
pool counter lock is for the entire file, not a specific size,
and I'm unsure if swift has an equivalent of "slave lag", where the
check to see if a cached version is available might happen before
the write is totally visible.

Also merge the fallback handler into the error handler, so we get
actually error messages reported.

Change-Id: I12d228961de39cffc3d492554d93e30bd741adc9

8 years agoAdd example of help for all query submodules
S Page [Thu, 5 Nov 2015 02:38:28 +0000 (18:38 -0800)]
Add example of help for all query submodules

It's useful and shows difference from recursivesubmodules.

Change-Id: I85cb5c89fde0063bbd9dfc86d00c14553035f053

8 years agoRemoved raw HTML from tags-create-explanation message in SpecialTags.php
This, that and the other [Wed, 4 Nov 2015 23:47:23 +0000 (10:47 +1100)]
Removed raw HTML from tags-create-explanation message in SpecialTags.php

Bug: T111754
Change-Id: I0d1e84fae279845d1fa4f273e7c718010230eb36

8 years agoUse interwiki cache directly to resolve transwiki import sources
This, that and the other [Wed, 4 Nov 2015 23:42:14 +0000 (10:42 +1100)]
Use interwiki cache directly to resolve transwiki import sources

In order to resolve T17583, we will need to have a WMF-wide map of import
sources. This will most likely consist of a project dropdown, e.g.
"wikipedia", "wiktionary", "meta"... and a subproject dropdown, listing
each language edition of the selected project.

This would mean, if we wanted to import a page from French Wikipedia to
English Wikipedia, we would need to select project "wikipedia" and language
"fr". Currently, this causes the error "Bad interwiki link", because the
prefix "wikipedia:" maps to the local project namespace on enwiki, instead
of the relevant interwiki prefix.

To avoid this error we need to bypass Title and directly query the
interwiki map.

Change-Id: I68989203e367e7ea515e4ae2222c330b264a7cb1

8 years agoMerge "Allow passing detailed permission errors data to API"
jenkins-bot [Wed, 4 Nov 2015 22:38:47 +0000 (22:38 +0000)]
Merge "Allow passing detailed permission errors data to API"

8 years agoFindOrphanedFiles cleanups
Aaron Schulz [Wed, 4 Nov 2015 22:04:56 +0000 (14:04 -0800)]
FindOrphanedFiles cleanups

* Avoid empty DB list errors for some batches
* Use more convenient cannonical URLs

Change-Id: I37f59e0747525603828897196eabd6c64740aa02

8 years agoMerge "ApiQueryInfo.php: Add code and direction of the page content language"
jenkins-bot [Wed, 4 Nov 2015 21:02:30 +0000 (21:02 +0000)]
Merge "ApiQueryInfo.php: Add code and direction of the page content language"

8 years agoAPI: Forwards-compatibility for ApiTokens
Brad Jorsch [Wed, 4 Nov 2015 20:31:19 +0000 (15:31 -0500)]
API: Forwards-compatibility for ApiTokens

To make it easier for stuff to transition, allow action=tokens to return
the new types that action=query&meta=tokens supports.

Change-Id: I83887e555d54978b392933b4a3f6dada7ed00793

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 4 Nov 2015 20:03:34 +0000 (21:03 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: Ie228d496a844a954129782cac466cf691be4f3df

8 years agoImplement section support for OOUIHTMLForm
Florian [Wed, 4 Nov 2015 18:12:18 +0000 (19:12 +0100)]
Implement section support for OOUIHTMLForm

Using a PanelLayout to visually separate the outside content with
the inside one.

Bug: T117757
Change-Id: I177cd7a5f8e8ddf7dc90f452aadb804f6304b0c7

8 years agoMonologSpi: add support for customizing Monolog\Logger instances
Bryan Davis [Sun, 25 Oct 2015 21:39:44 +0000 (15:39 -0600)]
MonologSpi: add support for customizing Monolog\Logger instances

Proposed upstream changes to Monolog\Logger will require an ability to
call setter methods on newly created Logger instances to tune them for
use in high volume logging situations. Adding support for making these
types of adjustments to MediaWiki's Monolog integration will benefit
users of the updated library when they land upstream.

Arbitrary setters are called by adding a 'calls' array to the logger
specification. This array uses method names as keys and method arguments
as values. This syntax mirrors the setter invocation behavior of
ObjectFactory with the notable omission of Closure expansion in the
argument list before calling the Logger's setter method.

Bug: T116550
Change-Id: I990c7f00f57451f14954542f5404491b2660a0b7

8 years agoApiQueryInfo.php: Add code and direction of the page content language
Fomafix [Wed, 4 Nov 2015 16:50:48 +0000 (16:50 +0000)]
ApiQueryInfo.php: Add code and direction of the page content language

This change introduces two new keys in the response:
* "pagelanguagehtmlcode" for the BCP 47 conform language code
* "pagelanguagedir" for the direction of the language

Example:
 "pagelanguagehtmlcode": "en-GB"
 "pagelanguagedir": "ltr"

The existing key "pagelanguage" contains the internal language code format:
 "pagelanguage": "en-gb"

This duplication avoids reimplementing wfBCP47() and a mapping from
all language codes to the direction of the languages in JavaScript.

Bug: T117392
Change-Id: I26d033e33bfa60c8ff72ba70bb564cba4303a8b6

8 years agoMerge "HTMLFormField: Do not double-escape label in OOUI mode"
jenkins-bot [Wed, 4 Nov 2015 14:14:42 +0000 (14:14 +0000)]
Merge "HTMLFormField: Do not double-escape label in OOUI mode"

8 years agoRemove deprecated SiteObject and SiteArray classes
aude [Wed, 4 Nov 2015 12:16:10 +0000 (13:16 +0100)]
Remove deprecated SiteObject and SiteArray classes

SiteObject and SiteArray were deprecated in 1.21 and
can't find any use of them anywhere else in gerrit.

Change-Id: Iff3ba8a60ac9566998cce828c4034066fdefe804

8 years agoMerge "hooks.txt: don't use deprecated hooks in examples"
jenkins-bot [Wed, 4 Nov 2015 02:40:24 +0000 (02:40 +0000)]
Merge "hooks.txt: don't use deprecated hooks in examples"

8 years agoMerge "Remove WikiPage::doQuickEdit"
jenkins-bot [Wed, 4 Nov 2015 02:27:33 +0000 (02:27 +0000)]
Merge "Remove WikiPage::doQuickEdit"

8 years agohooks.txt: don't use deprecated hooks in examples
Ori Livneh [Wed, 4 Nov 2015 02:19:10 +0000 (18:19 -0800)]
hooks.txt: don't use deprecated hooks in examples

Change-Id: I01228e066de46f91d452767516ae0a11a9915bef

8 years agoRemove WikiPage::doQuickEdit
Aaron Schulz [Wed, 4 Nov 2015 02:13:45 +0000 (18:13 -0800)]
Remove WikiPage::doQuickEdit

Change-Id: If56f790b8a29b2262cba0feff7a96312c69cdb0c

8 years agoConvert ChangesList from MapCacheLRU to HashBagOStuff
Timo Tijhof [Tue, 3 Nov 2015 06:39:09 +0000 (06:39 +0000)]
Convert ChangesList from MapCacheLRU to HashBagOStuff

Also make use of getWithSetCallback() while at it.

Change-Id: I6bd29db7c6564fcaf4489ec0f226ac83bafc75e8

8 years agoobjectcache: Make HashBagOStuff LRU instead of least-recently-set
Aaron Schulz [Tue, 3 Nov 2015 10:06:40 +0000 (02:06 -0800)]
objectcache: Make HashBagOStuff LRU instead of least-recently-set

Refresh key in get() in addition to just set().

Change-Id: I7985b98b6a346eaed8bf0a7349b95fabea8e8614

8 years agoMerge "resourceloader: Use WAN cache for validateScriptFile cache"
jenkins-bot [Wed, 4 Nov 2015 01:19:57 +0000 (01:19 +0000)]
Merge "resourceloader: Use WAN cache for validateScriptFile cache"

8 years agoresourceloader: Use WAN cache for validateScriptFile cache
Aaron Schulz [Tue, 3 Nov 2015 13:12:28 +0000 (05:12 -0800)]
resourceloader: Use WAN cache for validateScriptFile cache

This keeps core callers more consistent.

Change-Id: I5e06a963a5e10204445a01c00109b46a6971bcfe

8 years agoAdd updateRevisionOn() sanity check for existing pages too
Aaron Schulz [Wed, 4 Nov 2015 00:44:52 +0000 (16:44 -0800)]
Add updateRevisionOn() sanity check for existing pages too

Change-Id: I4f2fc07b0365183efb431a828d40c557b691b18c

8 years agoHTMLFormField: Do not double-escape label in OOUI mode
Bartosz Dziewoński [Wed, 4 Nov 2015 00:15:29 +0000 (01:15 +0100)]
HTMLFormField: Do not double-escape label in OOUI mode

$this->getLabel() returns already parsed HTML. Who'd have thought?
https://www.wikidata.org/wiki/Wikidata:Contact_the_development_team#Display_issue_on_Special:NewItem

Change-Id: I52aa9b78fde27d4a16b3636fa6b70d3c69ff2346

8 years agoMerge "Add Timing interface"
jenkins-bot [Tue, 3 Nov 2015 23:36:57 +0000 (23:36 +0000)]
Merge "Add Timing interface"

8 years agoMerge "Avoid use of rollback() in WikiPage::doEditContent()"
jenkins-bot [Tue, 3 Nov 2015 23:36:53 +0000 (23:36 +0000)]
Merge "Avoid use of rollback() in WikiPage::doEditContent()"

8 years agoAvoid use of rollback() in WikiPage::doEditContent()
Aaron Schulz [Wed, 7 Oct 2015 20:01:20 +0000 (13:01 -0700)]
Avoid use of rollback() in WikiPage::doEditContent()

* Use the CAS style page row checks instead
* This a first step towards switching to startAtomic/endAtomic
* Only a sanity check uses rollback() now, which should never
  be hit unless there is a serious DB layer bug

Change-Id: Ideb189f918dee5d3e3c7b91cb92179df514ef35a

8 years agoAdd Timing interface
Ori Livneh [Tue, 3 Nov 2015 02:26:07 +0000 (18:26 -0800)]
Add Timing interface

* Add `Timing`, an interface which mimics the W3C User Timing API.
  It provides a canonical way to store and retrieve markers (timestamps)
  and measures (timestamps + duration).
* As the initial use-case, use it to record 'requestShutdown'.

Change-Id: I36b29162ffcc091406df025463b0e2797e52f19a

8 years agomw.widgets.ComplexTitleInputWidget: Add infusion helpers
Bartosz Dziewoński [Thu, 1 Oct 2015 23:30:52 +0000 (01:30 +0200)]
mw.widgets.ComplexTitleInputWidget: Add infusion helpers

* reusePreInfuseDOM
* gatherPreInfuseState
* restorePreInfuseState

Depends on I3c21b3710d16dbb4dbcbdd3871a70fdfd0e7b536 in OOjs UI.

Bug: T114134
Bug: T117310
Change-Id: I939551579fe1d03603d65b3562c1c977681994a6

8 years agoMerge "phpcs: Fix some "Single space expected before elseif""
jenkins-bot [Tue, 3 Nov 2015 22:10:54 +0000 (22:10 +0000)]
Merge "phpcs: Fix some "Single space expected before elseif""

8 years agoUpdate OOjs UI to v0.13.1
James D. Forrester [Tue, 3 Nov 2015 21:44:50 +0000 (13:44 -0800)]
Update OOjs UI to v0.13.1

Release notes:
 https://git.wikimedia.org/blob/oojs%2Fui.git/v0.13.1/History.md

Change-Id: Ic8fbb6ee4326c73243ea655708b9cfd09bc7e52a

8 years agoMake DeferredUpdates exception handling more robust
Aaron Schulz [Tue, 3 Nov 2015 20:47:05 +0000 (12:47 -0800)]
Make DeferredUpdates exception handling more robust

Change-Id: Ica2b8dce0978818a2f51684b97c93a3ba845d81a

8 years agoMerge "Add comment to unused EDIT_DEFER_UPDATES in Defines.php"
jenkins-bot [Tue, 3 Nov 2015 20:59:33 +0000 (20:59 +0000)]
Merge "Add comment to unused EDIT_DEFER_UPDATES in Defines.php"

8 years agoMerge "Localisation updates from https://translatewiki.net."
Translation updater bot [Tue, 3 Nov 2015 20:29:17 +0000 (20:29 +0000)]
Merge "Localisation updates from https://translatewiki.net."

8 years agoMerge "Add WebResponse::clearCookie()"
jenkins-bot [Tue, 3 Nov 2015 20:25:42 +0000 (20:25 +0000)]
Merge "Add WebResponse::clearCookie()"

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 3 Nov 2015 20:24:41 +0000 (21:24 +0100)]
Localisation updates from https://translatewiki.net.

Change-Id: Ifcaf9a55495655536dea379abeab91c265d47e36