lhc/web/wiklou.git
8 years agoUse Linker::linkKnown for some links to MediaWiki pages from navigation
umherirrender [Fri, 19 Jun 2015 16:55:30 +0000 (18:55 +0200)]
Use Linker::linkKnown for some links to MediaWiki pages from navigation

The title used for Linker::link in all places are mediawiki pages, which
are known to be exists (and blue), because there are definied in en.json

Change-Id: Ib3b6e4f4f6cef059a502aaabfcfc17730b4445a6

8 years agoMerge "resourceloader: Enable module content version for data modules"
jenkins-bot [Thu, 18 Jun 2015 21:19:46 +0000 (21:19 +0000)]
Merge "resourceloader: Enable module content version for data modules"

8 years agoMerge "Avoid assignment in return in TemplateParser.php"
jenkins-bot [Thu, 18 Jun 2015 20:57:08 +0000 (20:57 +0000)]
Merge "Avoid assignment in return in TemplateParser.php"

8 years agoMerge "resourceloader: Use content-neutral context when computing module versions"
jenkins-bot [Thu, 18 Jun 2015 20:43:11 +0000 (20:43 +0000)]
Merge "resourceloader: Use content-neutral context when computing module versions"

8 years agoresourceloader: Enable module content version for data modules
Timo Tijhof [Tue, 2 Jun 2015 17:27:23 +0000 (18:27 +0100)]
resourceloader: Enable module content version for data modules

This greatly simplifies logic required to compute module versions.
It also makes it significantly less error-prone.

Since f37cee996e, we support hashes as versions (instead of timestamps).
This means we can build a hash of the content directly, instead of compiling a
large array with all values that may influence the module content somehow.

Benefits:
* Remove all methods and logic related to querying database and disk for
  timestamps, revision numbers, definition summaries, cache epochs, and more.

* No longer needlessly invalidate cache as a result of no-op changes to
  implementation datails. Due to inclusion of absolute file paths in the
  definition summary, cache was always invalidated when moving wikis to newer
  MediaWiki branches; even if the module observed no actual changes.

* When changes are reverted within a certain period of time, old caches can now
  be re-used. The module would produce the same version hash as before.
  Previously when a change was deployed and then reverted, all web clients (even
  those that never saw the bad version) would have re-fetch modules because the
  version increased.

Updated unit tests to account for the change in version. New default version of
empty test modules is: "mvgTPvXh". For the record, this comes from the base64
encoding of the SHA1 digest of the JSON serialised form of the module content:
> $str = '{"scripts":"","styles":{"css":[]},"messagesBlob":"{}"}';
> echo base64_encode(sha1($str, true));
> FEb3+VuiUm/fOMfod1bjw/te+AQ=

Enabled content versioning for the data modules in MediaWiki core:
* EditToolbarModule
* JqueryMsgModule
* LanguageDataModule
* LanguageNamesModule
* SpecialCharacterDataModule
* UserCSSPrefsModule
* UserDefaultsModule
* UserOptionsModule

The FileModule and base class explicitly disable it for now and keep their
current behaviour of using the definition summary. We may remove it later, but
that requires more performance testing first.

Explicitly disable it in the WikiModule class to avoid breakage when the
default changes.

Ref T98087.

Change-Id: I782df43c50dfcfb7d7592f744e13a3a0430b0dc6

8 years agoFix phpcs warnings
paladox [Mon, 15 Jun 2015 06:35:58 +0000 (06:35 +0000)]
Fix phpcs warnings

Bug: T102614
Change-Id: Iecea365f83bbb0c336b58f1cfdebfc9b1112087e

8 years agoresourceloader: Use content-neutral context when computing module versions
Timo Tijhof [Tue, 16 Jun 2015 03:57:12 +0000 (04:57 +0100)]
resourceloader: Use content-neutral context when computing module versions

The startup module produces a manifest with versions representing the
entire module.

Typically, the request for the startup module itself has only=scripts.
However, that "only" must only apply to what resources of the startup module are
output in the request.

The context passed to getModifiedTime() and getVersionHash() must not suggest
any restriction of measuring only the scripts, or otherwise ignoring some
aspects of the module (such as stylesheets, or messages).

Most existing getModifiedTime() implementations compute timestamps of all
files, regardless of the context. So this bug didn't surface before.
However that will change for modules that compute the version hash based on
getModuleContent(), which does honour the getOnly() and shouldIncludeScripts()
methods of the request context.

Change-Id: Ib8f09c39d10724d146b53b6d53d82da18944a12b

8 years agoAllow limit and offset to be restricted in subclasses of QueryPage.php
daniel [Wed, 17 Jun 2015 15:26:03 +0000 (17:26 +0200)]
Allow limit and offset to be restricted in subclasses of QueryPage.php

Change-Id: Ib54b50619a0f412e53f92d48821221a243f19756

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 18 Jun 2015 18:14:01 +0000 (20:14 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ic0490a91badd0a39dfa93d0c51f7417a90e3e845

8 years agoMerge "registration: Improve error message if a non-array attribute is set"
jenkins-bot [Thu, 18 Jun 2015 17:29:15 +0000 (17:29 +0000)]
Merge "registration: Improve error message if a non-array attribute is set"

8 years agoMerge "Use HTMLForm for Special:Export"
jenkins-bot [Thu, 18 Jun 2015 17:20:47 +0000 (17:20 +0000)]
Merge "Use HTMLForm for Special:Export"

8 years agoMerge "Remove unused global from SpecialUserlogin.php"
jenkins-bot [Wed, 17 Jun 2015 22:09:20 +0000 (22:09 +0000)]
Merge "Remove unused global from SpecialUserlogin.php"

8 years agoMerge "Fixed spacing"
jenkins-bot [Wed, 17 Jun 2015 21:40:11 +0000 (21:40 +0000)]
Merge "Fixed spacing"

8 years agoFixed spacing
umherirrender [Wed, 17 Jun 2015 20:01:00 +0000 (22:01 +0200)]
Fixed spacing

- Removed space after casts
- Removed spaces in array index
- Added spaces around string concat
- Added space after words: switch, foreach
- else if -> elseif
- Removed parentheses around require_once, because it is not a function
- Added newline at end of file
- Removed double spaces
- Added spaces around operations
- Removed repeated newlines

Bug: T102609
Change-Id: Ib860222b24f8ad8e9062cd4dc42ec88dc63fb49e

8 years agoAvoid assignment in return in TemplateParser.php
umherirrender [Wed, 17 Jun 2015 20:12:47 +0000 (22:12 +0200)]
Avoid assignment in return in TemplateParser.php

Hard to read and may misread as boolean return

Change-Id: If6bfdbed7e647dde51db62ae6901874a83682d9e

8 years agoFix phpcs warnings
paladox [Mon, 15 Jun 2015 06:35:58 +0000 (06:35 +0000)]
Fix phpcs warnings

Change-Id: I2d7dbf7314257a3ad8f5f6b97a6949a2500d298f

8 years agoMerge "Revert "StashEdit: Use postWithToken""
jenkins-bot [Wed, 17 Jun 2015 20:03:10 +0000 (20:03 +0000)]
Merge "Revert "StashEdit: Use postWithToken""

8 years agoRevert "StashEdit: Use postWithToken"
Ori.livneh [Wed, 17 Jun 2015 19:51:49 +0000 (19:51 +0000)]
Revert "StashEdit: Use postWithToken"

This reverts commit 155ad712c3.

Bug: T102863
Change-Id: Ia30b535a44a3aa4d6e79f14bbccb6f4a1b065aa2

8 years agoRemove unused global from SpecialUserlogin.php
umherirrender [Wed, 17 Jun 2015 19:48:51 +0000 (21:48 +0200)]
Remove unused global from SpecialUserlogin.php

Change-Id: Idbdc8829d84e7dcce6b396bca8f90d9cf7864e45

8 years agoAPI: Give block details along with errors
Alex Monk [Sun, 10 May 2015 14:05:03 +0000 (15:05 +0100)]
API: Give block details along with errors

Bug: T95072
Change-Id: I295d74d5f33e6dd1072a1e85710a02597a46e14d

8 years agoMake a line shorter for phpcs
Amir E. Aharoni [Wed, 17 Jun 2015 15:37:29 +0000 (18:37 +0300)]
Make a line shorter for phpcs

phpcs failure reported at
I30a6af657a11bf822736d667a82b21e813f0db4e

Change-Id: Ia5941684300670e0f232b82393c9af28ce4b972e

8 years agoMerge "Fix ChangeTags functions after split of definedTags from tagUsageStatistics"
jenkins-bot [Wed, 17 Jun 2015 13:58:47 +0000 (13:58 +0000)]
Merge "Fix ChangeTags functions after split of definedTags from tagUsageStatistics"

8 years agoFix ChangeTags functions after split of definedTags from tagUsageStatistics
cenarium [Wed, 17 Jun 2015 13:22:37 +0000 (15:22 +0200)]
Fix ChangeTags functions after split of definedTags from tagUsageStatistics

This provides fixes to the can*Tag functions of ChangeTags following the
removal of listDefinedTags from the tagUsageStatistics function in
I410e9a935bd202faac92f430c0b4dae1a48e2d21.

Change-Id: I087bb7107ae0c83946f8e2f417a6121bb2da18b4

8 years agoFix braces code style
Vivek Ghaisas [Wed, 17 Jun 2015 13:28:51 +0000 (16:28 +0300)]
Fix braces code style

Bug: T102805
Change-Id: I7ce4c71dd605f9be79a630602391271bb269b962

8 years agoRemove multiple empty lines in functions
Vivek Ghaisas [Wed, 17 Jun 2015 10:29:33 +0000 (13:29 +0300)]
Remove multiple empty lines in functions

Functions must not contain multiple empty lines in a row
(Squiz.WhiteSpace.SuperfluousWhitespace sniff).

Bug: T102774
Change-Id: Ib706e4fc34b95c0d7c887e54af0ea61227767d8f

8 years agoMerge "Clarify that gender-unknown option is gender neutral"
jenkins-bot [Wed, 17 Jun 2015 06:15:44 +0000 (06:15 +0000)]
Merge "Clarify that gender-unknown option is gender neutral"

8 years agoMerge "ResourceLoaderImageModule: Fix incorrect documentation"
jenkins-bot [Wed, 17 Jun 2015 03:07:27 +0000 (03:07 +0000)]
Merge "ResourceLoaderImageModule: Fix incorrect documentation"

8 years agoResourceLoaderImageModule: Fix incorrect documentation
Roan Kattouw [Wed, 17 Jun 2015 02:33:59 +0000 (19:33 -0700)]
ResourceLoaderImageModule: Fix incorrect documentation

The docs claimed that you had to do something like
'images' => array( 'filename.svg' => array( 'name' => 'foo' ) )
but what you actually need to do is
'images' => array( 'foo' => array( 'file' => 'filename.svg' ) )

Change-Id: Idca2d5c58e4d9fcf008ef5cfe7f8ce77b996c203

8 years agoUpdate OOjs UI to v0.11.5
James D. Forrester [Wed, 17 Jun 2015 01:07:15 +0000 (18:07 -0700)]
Update OOjs UI to v0.11.5

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

Change-Id: I98bcf928a922e03f7024edaacc9beac95f2b74cf

8 years agoregistration: Improve error message if a non-array attribute is set
Kunal Mehta [Tue, 16 Jun 2015 23:08:44 +0000 (16:08 -0700)]
registration: Improve error message if a non-array attribute is set

Otherwise array_merge_recursive() will trigger a confusing and unhelpful
warning.

Bug: T102523
Change-Id: I7e4778cb7552fe93a08f315c9888ec64322e2501

8 years agoMerge "Don't include never-applied defined tags in tagUsageStatistics function"
jenkins-bot [Tue, 16 Jun 2015 22:41:18 +0000 (22:41 +0000)]
Merge "Don't include never-applied defined tags in tagUsageStatistics function"

8 years agoDon't include never-applied defined tags in tagUsageStatistics function
cenarium [Tue, 16 Jun 2015 19:47:04 +0000 (21:47 +0200)]
Don't include never-applied defined tags in tagUsageStatistics function

This removes the call to ChangeTags::listDefinedTags() in the function
tagUsageStatistics of ChangeTags. So only those in the change_tag table,
i.e. with a hitcount greater than zero, are returned.
Instead at SpecialTags, those tags in the list of defined tags, already
retrieved for other purposes, are appended with zero hitcount, when not
already inserted.
This incidentally makes it easier to get a list of tags applied at least
once, as needed for T27909 (where we don't want never applied tags).

Bug: T91535
Change-Id: I410e9a935bd202faac92f430c0b4dae1a48e2d21

8 years agoMerge "Made User generally use DB_SLAVE by default"
jenkins-bot [Tue, 16 Jun 2015 21:17:43 +0000 (21:17 +0000)]
Merge "Made User generally use DB_SLAVE by default"

8 years agoMerge "Localisation updates from https://translatewiki.net."
Translation updater bot [Tue, 16 Jun 2015 20:15:18 +0000 (20:15 +0000)]
Merge "Localisation updates from https://translatewiki.net."

8 years agoMerge "API: Add some BCarray into ApiQuerySiteinfo"
jenkins-bot [Tue, 16 Jun 2015 20:07:13 +0000 (20:07 +0000)]
Merge "API: Add some BCarray into ApiQuerySiteinfo"

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 16 Jun 2015 20:04:00 +0000 (22:04 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I8c1f493e82e411960f6743e77151fbee23c7342c

8 years agoMerge "Fix whitespace issues around parentheses"
jenkins-bot [Tue, 16 Jun 2015 19:50:51 +0000 (19:50 +0000)]
Merge "Fix whitespace issues around parentheses"

8 years agoMove dependency on user.tokens from mediawiki.api.edit to mediawiki.api
Timo Tijhof [Tue, 16 Jun 2015 19:14:35 +0000 (20:14 +0100)]
Move dependency on user.tokens from mediawiki.api.edit to mediawiki.api

The postWithToken() method used to be specific to the edit module.
However that logic was moved and refactored into getToken() and
postWithToken() a while back.

While waiting for user.tokens instead of making api requests for tokens
is worth it. The logic in mediawiki.api.js inspects mw.user.tokens
only at initial run time. So it must be on 'mediawiki.api'.

Anyhow, in practice it doesn't matter since the user.tokens is
embedded in the page. So there's no actual waiting of any kind.

Change-Id: I10fae93c8f1500b4aa752101256fbba94c2ae40d

8 years agoFix whitespace issues around parentheses
Vivek Ghaisas [Tue, 16 Jun 2015 19:06:19 +0000 (22:06 +0300)]
Fix whitespace issues around parentheses

Fix issues found by MediaWiki.WhiteSpace.SpaceyParenthesis sniff.

Bug: T102617
Change-Id: Iec7f71e64081659fba373ec20d9d2006306a98f4

8 years agoMade MessageCache use the WAN cache
Aaron Schulz [Wed, 20 May 2015 16:51:29 +0000 (09:51 -0700)]
Made MessageCache use the WAN cache

* This makes sure edits to MediaWiki: pages update
  the cache in all DCs

Bug: T99208
Change-Id: I177608729063b800fb97374f31f316779effce15

8 years agoAPI: Add some BCarray into ApiQuerySiteinfo
Brad Jorsch [Tue, 16 Jun 2015 16:55:11 +0000 (12:55 -0400)]
API: Add some BCarray into ApiQuerySiteinfo

The main change is that siprop=namespaces will output an array instead
of a numerically-keyed object with formatversion=2.

Various other properties also got the same treatment, but in those cases
the intention was always array and possible non-array output was due to
array_unique or odd indexes in config variables.

Bug: T102645
Change-Id: I486131ac0d6763c3fe40fa45bcee472fe1b46fd6

8 years agoMerge "Moved patrol code in commitRollback() down to reduce contention"
jenkins-bot [Tue, 16 Jun 2015 15:37:32 +0000 (15:37 +0000)]
Merge "Moved patrol code in commitRollback() down to reduce contention"

8 years agoMade User generally use DB_SLAVE by default
Aaron Schulz [Sun, 29 Mar 2015 01:01:27 +0000 (18:01 -0700)]
Made User generally use DB_SLAVE by default

* By default, users will load from the slave unless
  the thread did a recent DB write. This is to handle
  changes within a request.
* ChronologyProtector should avoid staleness in common
  cases, and the CAS check on user_touched is a final
  barrier to block stale user object updates.
* Note that passwords are not cached, so they hit the
  DB when ever needed. Passwords now load from slaves
  when possible, instead of the master.
* This should get the code closer to handling user
  login and logged in users when the master is down.
* Fixed loadFromId() when READ_LOCKING is used.
* Also addressed TODO comment in load().

Bug: T92357
Change-Id: I0a8bdab720c19fe3fc2381799ae2e90ff09bb4cf

8 years agoEnsure that files end with a newline
Vivek Ghaisas [Tue, 16 Jun 2015 13:19:50 +0000 (16:19 +0300)]
Ensure that files end with a newline

Bug: T102619
Change-Id: Iae6e722151581d15c9421d41c4d14b100bb6e437

8 years agoMerge "Correct quotes in Polish translation"
jenkins-bot [Tue, 16 Jun 2015 12:30:30 +0000 (12:30 +0000)]
Merge "Correct quotes in Polish translation"

8 years agoCorrect quotes in Polish translation
Bartosz Dziewoński [Tue, 16 Jun 2015 12:01:09 +0000 (14:01 +0200)]
Correct quotes in Polish translation

The correct closing quotation mark in Polish is ” rather than “.

This changes a bunch of messages, so I think it's easier to fix here
and then import in Translatewiki?

Change-Id: I77153964af15368b7f83512b17d3cc9e9066b675

8 years agoMerge "HTTPS-ify links to Wikimedia's sites in MW core source"
jenkins-bot [Tue, 16 Jun 2015 03:52:32 +0000 (03:52 +0000)]
Merge "HTTPS-ify links to Wikimedia's sites in MW core source"

8 years agoMerge "database: Don't treat $defaultSchemas as containing all types/drivers"
jenkins-bot [Tue, 16 Jun 2015 02:02:40 +0000 (02:02 +0000)]
Merge "database: Don't treat $defaultSchemas as containing all types/drivers"

8 years agoMerge "resourceloader: Fix broken getRequest/getDirection in derived context"
jenkins-bot [Tue, 16 Jun 2015 01:52:01 +0000 (01:52 +0000)]
Merge "resourceloader: Fix broken getRequest/getDirection in derived context"

8 years agoMerge "resourceloader: Use -1 instead of null in DerivativeResourceLoaderContext"
jenkins-bot [Tue, 16 Jun 2015 01:42:43 +0000 (01:42 +0000)]
Merge "resourceloader: Use -1 instead of null in DerivativeResourceLoaderContext"

8 years agoMerge "Reduce RC table contention for file deletion"
jenkins-bot [Tue, 16 Jun 2015 00:12:43 +0000 (00:12 +0000)]
Merge "Reduce RC table contention for file deletion"

8 years agoReduce RC table contention for file deletion
Aaron Schulz [Mon, 15 Jun 2015 23:58:54 +0000 (16:58 -0700)]
Reduce RC table contention for file deletion

Bug: T98706
Change-Id: I13f12b93abccb348c7093c77c363a54a65b59142

8 years agoMerge "Fix InstantCommons - HTTP access to Commons does not work anymore"
jenkins-bot [Mon, 15 Jun 2015 23:14:03 +0000 (23:14 +0000)]
Merge "Fix InstantCommons - HTTP access to Commons does not work anymore"

8 years agoMerge "Simplify canUpdateTags function in ChangeTags"
jenkins-bot [Mon, 15 Jun 2015 23:00:59 +0000 (23:00 +0000)]
Merge "Simplify canUpdateTags function in ChangeTags"

8 years agoFix InstantCommons - HTTP access to Commons does not work anymore
Gergő Tisza [Mon, 15 Jun 2015 22:47:08 +0000 (22:47 +0000)]
Fix InstantCommons - HTTP access to Commons does not work anymore

Bug: T102562
Change-Id: Ie0b4ec179b9ccd13015c9bcbfa5c9917ff26de36

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 15 Jun 2015 20:18:24 +0000 (22:18 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I85d0a4d444cf082e3e3fa51be190ee3248597d32

8 years agoMerge "Add a SpecialSearchResultsAppend hook"
jenkins-bot [Mon, 15 Jun 2015 20:09:24 +0000 (20:09 +0000)]
Merge "Add a SpecialSearchResultsAppend hook"

8 years agoAdd a SpecialSearchResultsAppend hook
James Earl Douglas [Thu, 11 Jun 2015 21:13:20 +0000 (14:13 -0700)]
Add a SpecialSearchResultsAppend hook

This allows additional HTML to be included below search results.  This
will be used to optionally include a feedback link fter search results.

Bug: T101783
Change-Id: I5c4bab12ed0b022c84aa6b50ab72635e9dd0bd0c

8 years agobuild: Remove obsolete jshint exclusion for jscompat
Timo Tijhof [Mon, 15 Jun 2015 19:38:53 +0000 (20:38 +0100)]
build: Remove obsolete jshint exclusion for jscompat

Upstream https://github.com/jshint/jshint/issues/729 was fixed.

Change-Id: Ia8f3e53ec0117b57156208033c0a49835a18702c

8 years agoMerge "jobqueue: use more sensible metric key names"
jenkins-bot [Mon, 15 Jun 2015 18:49:13 +0000 (18:49 +0000)]
Merge "jobqueue: use more sensible metric key names"

8 years agodatabase: Don't treat $defaultSchemas as containing all types/drivers
Timo Tijhof [Mon, 15 Jun 2015 17:15:28 +0000 (18:15 +0100)]
database: Don't treat $defaultSchemas as containing all types/drivers

The Database::factory() method treats $dbType as of one of
predefined "canonicalDBTypes", and defaults to using it as driver.
Which is then used for the name of the Database subclass.

This allows extensions and wiki farms to have custom subclasses
to override certain methods, or even provide new drivers.

The $defaultSchemas array added in f7174057a4 was given all canonical
keys (with null values) to allow unconditionally access. This
doesn't scale very well and is error-prone. Reduce it to the
override only and fallback make the fallback to null explicitly.

See T102285 for where this would help prevent a PHP Notice.

Change-Id: I3f1e1f59c300d34de30f6480ff4e54f159d51b16

8 years agoMerge "Update mediawiki/mediawiki-codesniffer dependency to 0.2.0"
jenkins-bot [Mon, 15 Jun 2015 06:35:58 +0000 (06:35 +0000)]
Merge "Update mediawiki/mediawiki-codesniffer dependency to 0.2.0"

8 years agoUpdate mediawiki/mediawiki-codesniffer dependency to 0.2.0
paladox [Sat, 13 Jun 2015 20:06:44 +0000 (22:06 +0200)]
Update mediawiki/mediawiki-codesniffer dependency to 0.2.0

Change-Id: If6887ce9d445fd6b7dc036f68e803f4c5d86dce7

8 years agojobqueue: use more sensible metric key names
Ori Livneh [Mon, 15 Jun 2015 05:31:13 +0000 (22:31 -0700)]
jobqueue: use more sensible metric key names

* Since JobQueue metrics are qualified with 'jobqueue.', don't add a 'job-'
  prefix to each metric.
* Separate the key from the job type with a dot rather than a dash.
* To avoid having a Graphite node that is both a "directory" and a metric, use
  '.all' as a suffix for aggregates.

Change-Id: I2ac604d3c042dbfb0b3a27759800f435ec22041e

8 years agoMerge "Disable Preferences save button before setting change"
jenkins-bot [Sun, 14 Jun 2015 20:51:15 +0000 (20:51 +0000)]
Merge "Disable Preferences save button before setting change"

8 years agoMerge "Avoid muliple cache calls to explicitly defined tags"
jenkins-bot [Sun, 14 Jun 2015 20:19:21 +0000 (20:19 +0000)]
Merge "Avoid muliple cache calls to explicitly defined tags"

8 years agocomposer.json: Set classmap-authoritative: true
Kunal Mehta [Wed, 28 Jan 2015 21:11:40 +0000 (13:11 -0800)]
composer.json: Set classmap-authoritative: true

For developers with older versions of composer the setting will
just be ignored.

Bug: T85182
Change-Id: I66d4eace301eb4319e4c0137c8f3ee6f35fe4e51

8 years agoSimplify canUpdateTags function in ChangeTags
cenarium [Sat, 13 Jun 2015 16:32:51 +0000 (18:32 +0200)]
Simplify canUpdateTags function in ChangeTags

This simplifies the function canUpdateTags by checking that none of the
tags are defined by an extension instead of checking that all of them
are either manually defined or not defined at all.
Doing so avoids a cache call and makes it easy to propose only relevant
tags for addition/removal to users at Special:EditTags.
This also makes the respective checks for adding/removing tags only when
necessary.

Change-Id: Iddee4d4efb109b0fccf1ece400d166147e1700fc

8 years agoMerge "Localisation updates from https://translatewiki.net."
Translation updater bot [Sun, 14 Jun 2015 18:47:15 +0000 (18:47 +0000)]
Merge "Localisation updates from https://translatewiki.net."

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 14 Jun 2015 18:44:16 +0000 (20:44 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Iaddc25ac27e8fa35a69b8751ae9890adf31fb101

8 years agoAvoid muliple cache calls to explicitly defined tags
cenarium [Sun, 14 Jun 2015 18:00:52 +0000 (20:00 +0200)]
Avoid muliple cache calls to explicitly defined tags

This avoids muliple cache calls to explicitly defined tags by
calling the showTagEditUI of ChangeTags only once in logs and
histories.

Change-Id: I2e36dbd96d3fcca06de0bf418bc6dc294d8d18d3

8 years agoUse HTMLForm for Special:Export
Florian [Fri, 17 Apr 2015 16:56:32 +0000 (18:56 +0200)]
Use HTMLForm for Special:Export

* Transform all input fields to use HtmlForm as preparation for enabling
  MediaWiki UI eveywhere.
* Remove protected whitespace for HTMLCheckField (adds empty line to div-layout)
* Add a new HTMLForm input field "Text with Button" and "Namespaceselector with Button"

Bug: T73434
Change-Id: I53cc019c3ca94cec8f3c05500d0c604c1af7f688

8 years agoMerge "Add Goan Konkani Language"
jenkins-bot [Sun, 14 Jun 2015 15:40:13 +0000 (15:40 +0000)]
Merge "Add Goan Konkani Language"

8 years agoMerge "specials: Simplify return logic of various SpecialUserlogin methods"
jenkins-bot [Sun, 14 Jun 2015 07:57:29 +0000 (07:57 +0000)]
Merge "specials: Simplify return logic of various SpecialUserlogin methods"

8 years agospecials: Simplify return logic of various SpecialUserlogin methods
Timo Tijhof [Sun, 31 May 2015 15:30:01 +0000 (16:30 +0100)]
specials: Simplify return logic of various SpecialUserlogin methods

* Handle exceptional case before common case in makeLanguageSelector
  by using early returns. Better reflects the intended effect
  of the exception by making it harder to accidentally run code
  after the 'else' statement.

Change-Id: I710a94adf22bc4e6dc539e12c69e4ba96bf1068c

8 years agoUpdate jQuery Client to v2.0.0
Timo Tijhof [Sun, 14 Jun 2015 02:19:29 +0000 (03:19 +0100)]
Update jQuery Client to v2.0.0

Project

* https://github.com/wikimedia/jquery-client

Release

* https://github.com/wikimedia/jquery-client/releases/tag/v2.0.0
* https://github.com/wikimedia/jquery-client/blob/v2.0.0/jquery.client.js

Breaking changes:

* Microsoft's new Edge browser is now identified as "edge" instead of "msie".

Change-Id: Id3df3e637cd9751a293ca655c51d39492d04d7f6

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 13 Jun 2015 20:06:44 +0000 (22:06 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I47268e9b17dfaa6b274ef28577b3a3e717fa486b

8 years agoMoved patrol code in commitRollback() down to reduce contention
Aaron Schulz [Sat, 13 Jun 2015 19:49:33 +0000 (12:49 -0700)]
Moved patrol code in commitRollback() down to reduce contention

* It still happens if the edit fails as before
* Also, women...they exist...

Change-Id: If8cc4c55d4edcfb083b7018b2645167c8220ec81

8 years agoHTTPS-ify links to Wikimedia's sites in MW core source
Alex Monk [Sat, 13 Jun 2015 17:29:15 +0000 (18:29 +0100)]
HTTPS-ify links to Wikimedia's sites in MW core source

See https://blog.wikimedia.org/2015/06/12/securing-wikimedia-sites-with-https/

Ignoring SVN stuff because svn.wikimedia.org's SSL certificate has expired, and
ignoring wgSharedUploadPath because T25122 wants to get rid of it.

Also a couple of BZ -> phab changes

Change-Id: I02fd23ac6c30a4a4c718e57d4dedbc693dd653c0

8 years agoMerge "Tablesorter: Replace wgContentLanguage by wgPageContentLanguage"
jenkins-bot [Sat, 13 Jun 2015 17:14:31 +0000 (17:14 +0000)]
Merge "Tablesorter: Replace wgContentLanguage by wgPageContentLanguage"

8 years agoTablesorter: Replace wgContentLanguage by wgPageContentLanguage
Fomafix [Tue, 3 Feb 2015 13:51:32 +0000 (13:51 +0000)]
Tablesorter: Replace wgContentLanguage by wgPageContentLanguage

wgContentLanguage contains the language code of whole project.
wgPageContentLanguage contains the language code of the content of the page.

For example https://translatewiki.net/wiki/Project:About/de?uselang=eo has
* wgContentLanguage en
* wgPageContentLanguage de
* wgUserLanguage eo

The tablesorter works on the content of the page.

Change-Id: I3e51d96c838a3a4f4562c1f27c360d515e4d8ca6

8 years agoMerge "Use XmlSelect to simplify Xml::monthSelector"
jenkins-bot [Sat, 13 Jun 2015 13:10:13 +0000 (13:10 +0000)]
Merge "Use XmlSelect to simplify Xml::monthSelector"

8 years agoresourceloader: Fix broken getRequest/getDirection in derived context
Timo Tijhof [Sat, 13 Jun 2015 05:00:33 +0000 (06:00 +0100)]
resourceloader: Fix broken getRequest/getDirection in derived context

getDirection() isn't a simple getter value like the others. It actually
is tightly coupled with getLanguage() and lazy-initialised.

When calling setLanguage(), we shouldn't reset direction back to the
parent class but make sure getDirection() will recompute it based
on the local value.

Added regression test (which fails without this patch).

The parent getDirection() looks for $this->request, but the subclass
doesn't assign that member in the constructor. getRequest() forwards
it accordingly, so make sure getRequest() is also used internally.

Change-Id: Ifec703647368c3bb58748288ed754aaaf3730e19

8 years agoresourceloader: Use -1 instead of null in DerivativeResourceLoaderContext
Timo Tijhof [Wed, 10 Jun 2015 17:43:32 +0000 (18:43 +0100)]
resourceloader: Use -1 instead of null in DerivativeResourceLoaderContext

The ResourceLoaderContext class used null to determine absence of
an overridde in the derivative object.

However three of the members in question allow null as legitimate value.
(Namely 'only', 'user', and 'version').

This makes is impossible for a derivative context to remove one
of those values if the parent context has them set.

Use case: I782df43c needs to create a derivative context of
          load.php?only=scripts&modules=startup without 'only'.

Use -1 instead as internal placeholder value.

Also:

* ResourceLoaderContext::getSkin() was documented as returning 'string|null' when in
  fact it always has a default value. Never returns null.

* DerivativeResourceLoaderContext::setOnly() and setVersion() were missing
  type hint for 'null' (as it was incompatible with their getter). Adding 'false'.

* Swap if/else statements to handle the special case first (inheriting).
  Allowing the rest of the function body to handle the local value.
  In preparation for further development.

Change-Id: I058884525237effe8aef35469ed7693bb7cea591

8 years agoMerge "Rename testBug25702() to testPrefixNormalizationSearchBug()"
jenkins-bot [Sat, 13 Jun 2015 01:57:25 +0000 (01:57 +0000)]
Merge "Rename testBug25702() to testPrefixNormalizationSearchBug()"

8 years agoMerge "Add "rel=discussion" attribute to talk page tabs in skin template"
jenkins-bot [Sat, 13 Jun 2015 01:53:28 +0000 (01:53 +0000)]
Merge "Add "rel=discussion" attribute to talk page tabs in skin template"

8 years agoRename testBug25702() to testPrefixNormalizationSearchBug()
Robert Hoenig [Tue, 30 Dec 2014 06:37:25 +0000 (00:37 -0600)]
Rename testBug25702() to testPrefixNormalizationSearchBug()

Change-Id: If17a2cd2c1481cc564c61be73af64938824d9a9c

8 years agoMerge "Omit 'external' changes from ChangesFeed"
jenkins-bot [Sat, 13 Jun 2015 01:18:56 +0000 (01:18 +0000)]
Merge "Omit 'external' changes from ChangesFeed"

8 years agoAdd "rel=discussion" attribute to talk page tabs in skin template
Matěj Grabovský [Sun, 15 Feb 2015 11:12:22 +0000 (12:12 +0100)]
Add "rel=discussion" attribute to talk page tabs in skin template

Bug: T65198
Change-Id: Ifd1a7333c7b657d74860d206ea5b82d29bf97851

8 years agoMerge "ApiQueryRevisions: Remove bogus query optimization"
jenkins-bot [Sat, 13 Jun 2015 01:08:48 +0000 (01:08 +0000)]
Merge "ApiQueryRevisions: Remove bogus query optimization"

8 years agoMerge "Consistency tweaks: xml -> XML, Href -> href"
jenkins-bot [Sat, 13 Jun 2015 01:05:27 +0000 (01:05 +0000)]
Merge "Consistency tweaks: xml -> XML, Href -> href"

8 years agoMerge "Fix rel="copyright" for ApiHelp"
jenkins-bot [Sat, 13 Jun 2015 00:08:48 +0000 (00:08 +0000)]
Merge "Fix rel="copyright" for ApiHelp"

8 years agoFix rel="copyright" for ApiHelp
Ricordisamoa [Mon, 8 Jun 2015 13:39:06 +0000 (15:39 +0200)]
Fix rel="copyright" for ApiHelp

Bug: T94038
Bug: T93995
Change-Id: I06e9bb6797c4e4ee00e5d72eda1e273800b2c7f4

8 years agoMerge "Allow 'uselang', 'useskin', 'debug' as query parameters in RedirectSpecialPages"
jenkins-bot [Fri, 12 Jun 2015 23:52:43 +0000 (23:52 +0000)]
Merge "Allow 'uselang', 'useskin', 'debug' as query parameters in RedirectSpecialPages"

8 years agoMerge "StashEdit: Use postWithToken"
jenkins-bot [Fri, 12 Jun 2015 23:50:57 +0000 (23:50 +0000)]
Merge "StashEdit: Use postWithToken"

8 years agoMerge "Check for link-local addresses in isPublic"
jenkins-bot [Fri, 12 Jun 2015 23:36:50 +0000 (23:36 +0000)]
Merge "Check for link-local addresses in isPublic"

8 years agoMerge "Add image/pjpeg as an alias for image/jpeg"
jenkins-bot [Fri, 12 Jun 2015 22:15:44 +0000 (22:15 +0000)]
Merge "Add image/pjpeg as an alias for image/jpeg"

8 years agoMerge "Do not support new installations via .php5 entrypoint any longer"
jenkins-bot [Fri, 12 Jun 2015 20:49:56 +0000 (20:49 +0000)]
Merge "Do not support new installations via .php5 entrypoint any longer"

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 12 Jun 2015 19:30:42 +0000 (21:30 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I5cc62b447fa6116ba6bab21556e4a0abc0d8738c

8 years agomediawiki.widgets: Add missing dependency on mediawiki.Title, mediawiki.api
Bartosz Dziewoński [Fri, 12 Jun 2015 18:27:51 +0000 (20:27 +0200)]
mediawiki.widgets: Add missing dependency on mediawiki.Title, mediawiki.api

Used by mw.widgets.TitleInputWidget.

Change-Id: Ic47fb914c62c227f37c7eadb7bb6fbb846ebf3ad