Ed Sanders [Fri, 12 Jun 2015 15:09:07 +0000 (16:09 +0100)]
mediawiki.jqueryMsg: Remove toLowerCase from {{int:}} substitution
While it is recommended that message keys be lower case, it is
not a requirement, nor is it enforced anywhere else (including the
PHP version of this function).
Only lowercase the first letter (which is case-insensitive) for
compatibility with messages data provided by ResourceLoader.
Change-Id: I1be039e9c76d114e251baa585b58efd2c8602a8a
jenkins-bot [Wed, 10 Jun 2015 17:49:40 +0000 (17:49 +0000)]
Merge "API: Add api-format-prettyprint-header-only-html"
jenkins-bot [Wed, 10 Jun 2015 17:46:20 +0000 (17:46 +0000)]
Merge "Password validity by policy per group"
csteipp [Thu, 23 Apr 2015 01:48:48 +0000 (18:48 -0700)]
Password validity by policy per group
Make password policies defined in a configurable policy, which is
defined by group. A user's password policy will be the maximum of
each group policy that the user belongs to.
Bug: T94774
Change-Id: Iad8e49ffcffed38df6293db0ef31a227d3962003
jenkins-bot [Wed, 10 Jun 2015 09:35:50 +0000 (09:35 +0000)]
Merge "mediawiki.jqueryMsg: Phase out redundant data module and minor clean up"
jenkins-bot [Wed, 10 Jun 2015 09:26:09 +0000 (09:26 +0000)]
Merge "Convert mediawiki.toc and mediawiki.user to using mw.cookie"
Yaroslav Melnychuk [Tue, 2 Dec 2014 15:58:43 +0000 (17:58 +0200)]
Convert mediawiki.toc and mediawiki.user to using mw.cookie
* Remove redundant 'path' parameter (handled by mw.cookie)
* Remove redundant 'expires' parameter (handled by mw.cookie)
* Return value for absent cookie is now reliably 'null'.
This changes the cookie name due to mw.cookie adding the standard
cookie prefix. This will cause existing values to be lost. Make
use of this oppertunity to rename some cookie names.
* mw_hidetoc -> {wikiprefix} hidetoc
* mediaWiki.user.sessionId -> {wikiprefix} mwuser-sessionId
* mediaWiki.user.bucket -> {wikiprefix} mwuser-bucket
This is a re-submission of
a4d3d3b427713, which was reverted due
to T101857. Commit amended to use "sessionId" instead of "session".
Bug: T67384
Change-Id: Ibe88778cf3b6db90b3875c89305ffba53ac84104
Timo Tijhof [Wed, 10 Jun 2015 03:53:41 +0000 (04:53 +0100)]
objectcache: Minor code clean up in ObjectCache.php
* Whitespace.
* Simplify logic.
* Apply coding conventions to documentation blocks (empty line
before annotations, no empty lines between annotation, consistent
order of annotations).
Change-Id: I3e5268d6a6295643d5725c66ea2a01bccf610ed8
Aaron Schulz [Wed, 10 Jun 2015 01:47:49 +0000 (18:47 -0700)]
Fixed "wfTimestamp() fed bogus time value" errors
* This broke OutputPage::checkLastModified() as the touched time was false
Change-Id: I118d3ddf07c7b69ad269f3aee0c70ab4159df192
jenkins-bot [Tue, 9 Jun 2015 23:02:11 +0000 (23:02 +0000)]
Merge "Fix variants for OO UI images"
Matthew Flaschen [Tue, 9 Jun 2015 20:55:50 +0000 (16:55 -0400)]
Fix variants for OO UI images
Fixes T101895, caused by https://gerrit.wikimedia.org/r/#/c/212917/
Bug: T101895
Change-Id: Icd9af0d2eba2a62a1761cb9c9dcd90fc736c2b39
jenkins-bot [Tue, 9 Jun 2015 22:44:00 +0000 (22:44 +0000)]
Merge "Update OOjs UI to v0.11.4"
jenkins-bot [Tue, 9 Jun 2015 22:24:44 +0000 (22:24 +0000)]
Merge "Html: Add buttonAttributes() more diligently"
James D. Forrester [Tue, 9 Jun 2015 22:05:33 +0000 (15:05 -0700)]
Update OOjs UI to v0.11.4
Release notes:
https://git.wikimedia.org/blob/oojs%2Fui.git/v0.11.4/History.md
Change-Id: Id329e753412b33d5b4cf55bfc04ee072843bacc0
jenkins-bot [Tue, 9 Jun 2015 22:20:00 +0000 (22:20 +0000)]
Merge "Move several unit tests to directly subclass PHPUnit_Framework_TestCase"
Translation updater bot [Tue, 9 Jun 2015 20:11:11 +0000 (22:11 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Icfa21b09f24744c22245a540daa568a846592786
Timo Tijhof [Mon, 8 Jun 2015 14:47:21 +0000 (15:47 +0100)]
mediawiki.jqueryMsg: Phase out redundant data module and minor clean up
Follows-up
4a3e50a54.
* Merge mediawiki.jqueryMsg.data and mediawiki.jqueryMsg modules.
There's no need for this to be a separate module. The data is not for public consumption,
it's provided to jqueryMsg only.
* Remove unused default-default values for 'allowedHtmlElements'.
* Remove conditionals around data providing at initial run-time. Instead, expose
private method can call that. This way, we don't have two code paths claim
ownership over the namespace. And it makes the module easier to test and re-use
by not requiring the data to exist at first run time.
* Fix getDefinitionSummary() implementation to append data instead of setting
arbitary keys in parent data. ResourceLoader documentation of getDefinitionSummary()
has been updated to reflect this practice.
Change-Id: I40006d39514a997dce4930756a3dac84a0c9bb83
umherirrender [Sat, 6 Jun 2015 19:15:36 +0000 (21:15 +0200)]
API: Add api-format-prettyprint-header-only-html
Setting format=rawfm suggest to set format=raw ("To see the non-HTML
representation of the RAW format, set format=raw.") which does not
exists.
Add a new message for this case which does not contains the hint.
Change-Id: I40fe0b6e52dc0c70b07b368a3eace430e0c8f68c
jenkins-bot [Tue, 9 Jun 2015 17:07:27 +0000 (17:07 +0000)]
Merge "Revert "Implement MalformedTitleException for JS and use in constructor""
Chad Horohoe [Tue, 9 Jun 2015 17:02:48 +0000 (10:02 -0700)]
Move several unit tests to directly subclass PHPUnit_Framework_TestCase
Change-Id: I306166c116b9787a5568e5289799440dd1030345
jenkins-bot [Tue, 9 Jun 2015 14:07:13 +0000 (14:07 +0000)]
Merge "Consistent spacing after colon in apihelp"
Kevin Israel [Tue, 9 Jun 2015 12:28:56 +0000 (08:28 -0400)]
api/i18n: Fix a couple typos
Change-Id: I5990bd9e92b0ffb592ec7c3eb80280a2d3e2f19f
jenkins-bot [Tue, 9 Jun 2015 12:14:25 +0000 (12:14 +0000)]
Merge "Improve the srsearch API param doc"
jenkins-bot [Tue, 9 Jun 2015 09:25:55 +0000 (09:25 +0000)]
Merge "Fixed race condition in MessageCache::replace"
jenkins-bot [Tue, 9 Jun 2015 09:13:49 +0000 (09:13 +0000)]
Merge "resourceloader: Move packaging to a new getModuleContent() method"
Amir E. Aharoni [Tue, 9 Jun 2015 06:17:54 +0000 (09:17 +0300)]
Consistent spacing after colon in apihelp
Change-Id: Ic85554b29f78f1d26878879b9a408bbcbc702d8c
jenkins-bot [Tue, 9 Jun 2015 02:20:31 +0000 (02:20 +0000)]
Merge "resourceloader: Add context param to ResourceLoaderModule::getDependencies"
jenkins-bot [Tue, 9 Jun 2015 02:15:42 +0000 (02:15 +0000)]
Merge "Use assertSame in LogFormatterTestCase"
Andrew Green [Wed, 8 Apr 2015 21:34:08 +0000 (17:34 -0400)]
resourceloader: Add context param to ResourceLoaderModule::getDependencies
By providing context as a parameter in getDependencies, we allow
modules to dyanamically determine dependencies based on context.
Note: To ease rollout, the parameter is optional in this patch. It is expected
that it will be made non-optional in the near future.
The use case is for CentralNotice campaigns to be able to add special
modules ahead of deciding which banner to show a user. The dynamically
chosen RL modules would replace ad-hoc JS currently sent with some banners.
A list of possible campaigns and banners is already sent as a PHP-
implemented RL module; that's the module that will dynamically choose other
modules as dependencies when appropriate. This approach will save a round
trip as compared to dynamically loading the modules client-side.
For compatibility, extensions that override
ResourceLoaderModule::getDependencies() should be updated with the new
method signature. Here are changes for extensions currently deployed on
Wikimedia wikis:
* CentralNotice: I816bffa3815e2eab7e88cb04d1b345070e6aa15f
* Gadgets: I0a10fb0cbf17d095ece493e744296caf13dcee02
* EventLogging: I67e957f74d6ca48cfb9a41fb5144bcc78f885e50
* PageTriage: Ica3ba32aa2fc76d11a44f391b6edfc871e7fbe0d
* UniversalLanguageSelector: Ic63e617f51702c27104e123d4bed91983a726b7f
* VisualEditor: I0ac775ca286e64825e31a9213b94648e41a5bc30
For more on the CentralNotice use case, please see I9f80edcbcacca2.
Bug: T98924
Change-Id: Iee61e5b527321d01287baa03ad9b4d4f526ff3ef
S Page [Tue, 9 Jun 2015 01:21:03 +0000 (18:21 -0700)]
Improve the srsearch API param doc
Mention that it may be a way to invoke fancy search features.
Message-only change.
Change-Id: I6df02b53612f7c55f69a6bcad407a3a28a07bd2b
Timo Tijhof [Thu, 14 May 2015 19:05:47 +0000 (20:05 +0100)]
resourceloader: Move packaging to a new getModuleContent() method
Centralise the building of module packages into this method so
that it can be easily re-used.
This is in preparation for providing the option for modules to use
content-based hashing (instead of based on meta-data) in the version
string of modules. Having a getModuleContent method allows that to
be implemented in a way that is well-cached (as we'll be calling it
from multiple multiple code paths) and without duplicating this logic.
Bug: T98087
Change-Id: I376233caaabe44b6101565b70a50904abdf8ab4f
Aaron Schulz [Mon, 8 Jun 2015 23:05:54 +0000 (16:05 -0700)]
Avoid parser cache miss that often occurs post-save
* This should not happen as doEditContent() saves the parser cache,
so only the rare casing if incompatible options should have misses
* The bug could also cause post-save misses with edit stashing
* Avoid the second page parse post-redirect by making sure cache
timestamps match up instead of calling time() at several points
* Likewise for null edits, which used a different code path
* Removed redundant purge in onArticleCreate() as the new row sets _touched
* Removed pointless purge in onArticleDelete() as there is no row to update
(the method no-ops in that case to avoid contention already)
Change-Id: I178fe334a3f8691ffd9452bec30561a0c5d37c6c
paladox [Sat, 6 Jun 2015 19:25:55 +0000 (21:25 +0200)]
Update sinon from 1.10.3 to 1.15.0
Project
* http://sinonjs.org/
* https://github.com/cjohansen/Sinon.JS
Source code
* http://sinonjs.org/releases/sinon-1.15.0.js
Changelog
* https://github.com/cjohansen/Sinon.JS/blob/v1.15.0/Changelog.txt
Notable changes:
* 1.15.0: Deprecate sinon.mock()
* 1.12.0: Fake timers are now extracted as lolex: http://github.com/sinonjs/lolex
Change-Id: Icca3eb7ef42c0a456fd309eb0ebc09a0518517bd
Translation updater bot [Mon, 8 Jun 2015 19:23:10 +0000 (21:23 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ib07fd19243eb0bca5bd7cb9553f20853d05135ac
jenkins-bot [Mon, 8 Jun 2015 16:52:18 +0000 (16:52 +0000)]
Merge "LanguageConverter fix of empty and numeric strings"
Timo Tijhof [Thu, 4 Jun 2015 03:53:23 +0000 (04:53 +0100)]
resourceloader: Audit debug log channels and messages
* Change "private module denied" level to 'debug'.
This is quite unimportant and occupies over 90% of the logstash
entries for resourceloader.
* Changes all failure signals to 'warning' and using context data.
Left out method in most case since the messages are unambiguous.
Change-Id: Ibb2faaa54020ab0fd9685551689d9a89161e1ce7
Liangent [Tue, 6 May 2014 16:16:12 +0000 (16:16 +0000)]
LanguageConverter fix of empty and numeric strings
Bug: T51072
Bug: T48634
Bug: T53551
Change-Id: I2c88f1cf7c0014bebf5c798916b660b334a0b78b
jenkins-bot [Mon, 8 Jun 2015 10:08:23 +0000 (10:08 +0000)]
Merge "Run generateLocalAutoload.php to sort entries in autoload.php"
Kunal Mehta [Mon, 8 Jun 2015 05:41:11 +0000 (22:41 -0700)]
build: Updating development dependencies
* grunt-banana-checker: 0.2.1 → 0.2.2
* grunt-karma: 0.10.1 → 0.11.0
* karma: 0.12.31 → 0.12.36
* karma-chrome-launcher: 0.1.8 → 0.1.12
* karma-firefox-launcher: 0.1.4 → 0.1.6
Change-Id: Ic8bd8563c6f3313a7c8fc936c0753b071441c2b0
Kunal Mehta [Mon, 8 Jun 2015 05:27:24 +0000 (22:27 -0700)]
Run generateLocalAutoload.php to sort entries in autoload.php
Will reduce dirty diffs in future changes.
Change-Id: I4f97c1e4f9eaf0dc807435209b6a0e8494b60db1
Translation updater bot [Sun, 7 Jun 2015 19:41:03 +0000 (21:41 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ie3ce821ae62fad2938416276ed9a92448731eb39
paladox [Sat, 6 Jun 2015 19:25:55 +0000 (21:25 +0200)]
Update json2 to revision 2015-05-03
Project link
* https://github.com/douglascrockford/JSON-js
File link
* https://github.com/douglascrockford/JSON-js/blob/
c98948ae19/json2.js
Change-Id: Ifeb41140c13718162d1c0bd7a5a815acaf7bfd56
Timo Tijhof [Sun, 7 Jun 2015 11:09:59 +0000 (12:09 +0100)]
Update es5-shim to v4.1.5
Project site
* https://github.com/es-shims/es5-shim
File source
* https://github.com/es-shims/es5-shim/tree/v4.1.5
Changelog
* https://github.com/es-shims/es5-shim/blob/v4.1.5/CHANGES
Change-Id: I21ecf04e7ba82d4bd726ce9b5e84eac1046914c0
Translation updater bot [Sat, 6 Jun 2015 19:25:55 +0000 (21:25 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ia5cb16ef86a58a1a39c0856c0261c3801363563b
umherirrender [Sat, 6 Jun 2015 18:55:03 +0000 (20:55 +0200)]
Use assertSame in LogFormatterTestCase
Using assertSame also checks for internal types to be correct.
Needs the following fixes:
- MergeLogFormatterTest: Use correct array key order
- NewUsersLogFormatterTest: Input user id as integer
- PatrolLogFormatter: Ensure in LogFormatter that
integer is not casted to float
Change-Id: I2cab5335d6654f6cda15fc4e9fbae2c1ca1b27ff
Brad Jorsch [Sat, 6 Jun 2015 12:16:28 +0000 (08:16 -0400)]
PatrolLogFormatter: Tag curid and previd as numbers for API
In the database the values might be strings, depending on the source of
the RecentChanges object when the log entry was created. In
getParametersForApi(), tag the vars as 'number' so they'll always be
output as actual integers.
Bug: T101603
Change-Id: I6d3e8fd2653ce810eec59b94bf75063e5fb6bcab
paladox [Fri, 5 Jun 2015 22:47:58 +0000 (22:47 +0000)]
Fix tab in en.json
Change-Id: I152646a368f4b2f0142907a2fbf876f8d27eb694
jenkins-bot [Fri, 5 Jun 2015 22:47:58 +0000 (22:47 +0000)]
Merge "ResourceLoaderImageModule: Add missing doc stuffs"
jenkins-bot [Fri, 5 Jun 2015 22:43:46 +0000 (22:43 +0000)]
Merge "resourceloader: Unbreak ResourceLoaderImageModule's rasterization"
Bartosz Dziewoński [Fri, 5 Jun 2015 22:38:06 +0000 (00:38 +0200)]
ResourceLoaderImageModule: Add missing doc stuffs
Follow-up to
1fc57830e257f47ae0508899dc35b80674475859.
Change-Id: I66985fe2edc4d0e92aebcdb39cd56d212fd3270c
Bartosz Dziewoński [Fri, 5 Jun 2015 22:26:56 +0000 (00:26 +0200)]
resourceloader: Unbreak ResourceLoaderImageModule's rasterization
Follow-up to
1fc57830e257f47ae0508899dc35b80674475859. Forgot to
update a method call.
Change-Id: I2b3113c853a37f802f781a848b495e036971710c
jenkins-bot [Fri, 5 Jun 2015 20:15:23 +0000 (20:15 +0000)]
Merge "Automatically deduplicate root jobs on insertion"
Translation updater bot [Fri, 5 Jun 2015 19:32:42 +0000 (19:32 +0000)]
Merge "Localisation updates from https://translatewiki.net."
jenkins-bot [Fri, 5 Jun 2015 18:39:13 +0000 (18:39 +0000)]
Merge "Various code cleanup to JobRunner"
Aaron Schulz [Fri, 5 Jun 2015 18:15:57 +0000 (11:15 -0700)]
Various code cleanup to JobRunner
* Made the pickup stats name be similar to other queue stats
* Renamed $jobsRun => $jobPopped
* Simplified some code and comments
Change-Id: I8ab1a68f04fc3ab4c0ba7f6f0b428a5a811a97fb
jenkins-bot [Fri, 5 Jun 2015 18:11:41 +0000 (18:11 +0000)]
Merge "Make sure job queue partitions use the null aggregator"
Translation updater bot [Fri, 5 Jun 2015 17:49:22 +0000 (19:49 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ie564be94e20109b4972a5392f843ec3fc75658a5
jenkins-bot [Fri, 5 Jun 2015 17:46:02 +0000 (17:46 +0000)]
Merge "ApiTestCase: Set correct user for derivate requests"
Matthias Mullie [Fri, 5 Jun 2015 09:52:40 +0000 (11:52 +0200)]
ApiTestCase: Set correct user for derivate requests
RequestContext::getMain()->getUser() in a (faux) API request doesn't return the
user the (faux) API call is made with, but the user running the tests.
Bug: T101388
Change-Id: Icbbf14a6433edf5c91162a9d67899d6a2d5c33df
jenkins-bot [Fri, 5 Jun 2015 16:16:46 +0000 (16:16 +0000)]
Merge "Expose RL modules and js config vars in action=expandtemplates"
Marc Ordinas i Llopis [Thu, 4 Jun 2015 10:32:23 +0000 (03:32 -0700)]
Expose RL modules and js config vars in action=expandtemplates
Adds the 'modules', 'jsconfigvars', and 'encodedjsconfigvars' props
to action=expandtemplates, that output the modules and Javascript
configuration variables added to ResourceLoader by extensions and
parser functions, in the same way action=parse does.
This is needed by Parsoid to correctly include all modules used by
parser functions.
Based on I5c3ccb25385e57633639bb0c7e6f562eb58b05a2 by @Jackmcbarn.
Bug: T69540
Change-Id: Iaf58c66c987a318c0dd1ee2b81774106c40e7561
Dan Duvall [Tue, 2 Jun 2015 21:17:41 +0000 (14:17 -0700)]
QA: Upgrade mediawiki_selenium for fix to Raita logging
Bug: T100904
Change-Id: Ibb92e9e5dfc1dc24250f44a9d291b25dac2da0a6
jenkins-bot [Fri, 5 Jun 2015 01:42:26 +0000 (01:42 +0000)]
Merge "mw.loader.store: decline to store items > 100 kB"
jenkins-bot [Fri, 5 Jun 2015 01:21:02 +0000 (01:21 +0000)]
Merge "HTMLForm: Break long lines"
Bartosz Dziewoński [Fri, 5 Jun 2015 01:07:11 +0000 (03:07 +0200)]
Html: Add buttonAttributes() more diligently
It was done only for elements generated with linkButton() or
submitButton(), and not input().
Change-Id: Idd7e01d596997bd5cade5a7851daf64bee10bb49
Florian [Fri, 17 Apr 2015 16:56:32 +0000 (18:56 +0200)]
HTMLForm: Break long lines
Change-Id: Ia09a28ccc361d1a54069bd23a412831fe9c20f34
Ori Livneh [Fri, 5 Jun 2015 00:06:49 +0000 (17:06 -0700)]
mw.loader.store: decline to store items > 100 kB
If the length of the string representation of a module exceeds 100,000
characters, decline to store it in localStorage, due to bug T66721.
(While it is true that string length !== byte length, the skew introduced by
counting multi-byte characters as single bytes is not important enough to merit
the use of $.byteLength).
Based on my analysis, the modules that would be ineligible for caching in local
storage under the new schema are:
- ext.visualEditor.core (624 kB)
- oojs-ui (179 kB)
- oojs-ui.styles.icons (132 kB)
To fix this bug, it is not enough to not store new items; we must also ensure
that any old values cached prior to the introduction of a limit are purged. So
update mw.loader.store#prune to do that, too.
Bug: T66721
Change-Id: Ie45467fc0b2db7cc283f30626af7d587da24bd90
jenkins-bot [Fri, 5 Jun 2015 00:16:19 +0000 (00:16 +0000)]
Merge "resourceloader: Refactor ResourceLoaderWikiModule to reduce database queries"
Aaron Schulz [Thu, 4 Jun 2015 23:53:56 +0000 (16:53 -0700)]
Make sure job queue partitions use the null aggregator
* Fixes problem from
37042262e32e
* The main class already handles the calls.
* Partitions call notifyQueueNonEmpty() on pop() even
when the other partitions have jobs, so it is also wrong
in addition to redundant.
Bug: T101427
Change-Id: Ic3235e1f2038053fabf92f97c663479a21d75317
Timo Tijhof [Thu, 4 Jun 2015 01:52:42 +0000 (02:52 +0100)]
resourceloader: Refactor ResourceLoaderWikiModule to reduce database queries
Wiki modules are special due to their isKnownEmpty implementation and support
for foreign databases. MediaWiki doesn't have convenient ways of making
Revision objects for remote wikis. As such, wiki modules will keep using meta
data to generate the hash.
However minimise needless cache invalidation by refining the implementation.
Impact:
* Remove use of getMsgBlobMtime(). This module doesn't support getMessages().
* In the title info, use the revision content sha1 and size for tracking.
The page_touched previously used updates too often. It's updated both on edits
for various types of purges. Using the rev_sha1 means old versions return
when the content is the same. Regardless of how the content changed via
revert or actual edits resulting in the same contnet.
* Change in-process cache to be keyed by page list instead of entire
ResourceLoaderContext.
Because of this, getTitleInfo() was previously performing its batch query
twice on the same page. Once for only=styles (top) and only=scripts (bottom).
Both operate on the full getPages() set but had different context keys.
Clean up:
* Better document the support for foreign databases.
* Move Title construction to getContent to reduce duplication.
* Remove use of getDefinitionMtime(). That method is a no-op since the switch
to version hashing.
* Remove remaining use of mtime in getModifiedTime(). This is now covered by
hashing the title info in getDefinitionSummary().
Also refactor the code to be more readable. No intended change in behaviour.
Bug: T98087
Change-Id: Id46740db04c0c42bc5ca87d1487230a32feb34df
Sn1per [Thu, 4 Jun 2015 21:43:37 +0000 (21:43 +0000)]
Revert "Implement MalformedTitleException for JS and use in constructor"
This reverts commit
52bc467b31066d557ce7263b5bd448fb05742d3e.
Change-Id: I4ccd057559251317134da36d75fa8532ede4c51b
Aaron Schulz [Wed, 20 May 2015 02:34:20 +0000 (19:34 -0700)]
Fixed race condition in MessageCache::replace
* The cache has to reload and *after* locking to avoid
losing any concurrent changes.
* Also fixed incorrect assumption in MessageCacheTest.
Message overrides for the content language do not use
the language suffix.
Change-Id: I98ff158a1575330bc59efe6badb27f8de8717951
jenkins-bot [Thu, 4 Jun 2015 20:25:37 +0000 (20:25 +0000)]
Merge "Use HttpStatus::header instead of manually crafting header()"
jenkins-bot [Thu, 4 Jun 2015 20:24:12 +0000 (20:24 +0000)]
Merge "WebResponse: Implement statusHeader() using the new HttpStatus::header()"
Timo Tijhof [Thu, 4 Jun 2015 03:52:45 +0000 (04:52 +0100)]
resourceloader: Make ResourceLoader logger aware
Change-Id: Ifa197cce1906bc0530dfa873dfde91abbe540637
Translation updater bot [Thu, 4 Jun 2015 19:14:12 +0000 (21:14 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ia78d394ebff2c701442d32f63c1936d1139200c5
jenkins-bot [Thu, 4 Jun 2015 18:33:29 +0000 (18:33 +0000)]
Merge "Deprecate $wgEnableParserCache"
jenkins-bot [Thu, 4 Jun 2015 18:23:03 +0000 (18:23 +0000)]
Merge "resourceloader: Remove redundant getModifiedTime implementations"
Aaron Schulz [Tue, 19 May 2015 21:47:33 +0000 (14:47 -0700)]
Deprecate $wgEnableParserCache
* There is little reason to disable it and one can set $wgParserCacheType
if truly needed
Change-Id: Iec5fc7729d0f9de67ec2aa6c0e9c2c1e3e0d57ad
jenkins-bot [Thu, 4 Jun 2015 18:16:09 +0000 (18:16 +0000)]
Merge "resourceloader: Add unit test for validateScriptFile()"
jenkins-bot [Thu, 4 Jun 2015 17:58:04 +0000 (17:58 +0000)]
Merge "language: Use item 'fallbackSequence' instead of duplicating logic"
Timo Tijhof [Mon, 1 Jun 2015 23:04:26 +0000 (00:04 +0100)]
language: Use item 'fallbackSequence' instead of duplicating logic
The 'fallbackSequence' is exactly generated for this purpose. It
is equal to the value of 'fallback' after splitting, trimming
and ensuring 'en' is present. See LocalisationCache::recache().
Also simplify returning of the first array index by returning it
directly instead of modifying the array first.
Due to an inconsistency between how LocalisationCache and Language classes
treat the fallback sequence differently, we have to manually fallback
to 'en' in case of unknown language codes. This is because otherwise
Language::factory() will throw an exception causing tests to fail.
We should investigate whether this is desirable or not, but keeping
existing behaviour for now and documenting it.
Change-Id: I9c1d51b59aabebf5a31f38205304bb8cc22dcd8c
jenkins-bot [Thu, 4 Jun 2015 16:23:04 +0000 (16:23 +0000)]
Merge "Use a faster 7z command line by default"
jenkins-bot [Thu, 4 Jun 2015 16:16:59 +0000 (16:16 +0000)]
Merge "Revert "Add 'mediawiki.skinning.logo' module""
daniel [Thu, 4 Jun 2015 15:02:19 +0000 (17:02 +0200)]
Avoid data loss if compression fails
Change-Id: I0b6de030b101fdc3b2ea2cd0c15913e33e9da98d
Krinkle [Thu, 4 Jun 2015 15:00:02 +0000 (15:00 +0000)]
Revert "Add 'mediawiki.skinning.logo' module"
This is redundant and creates more modules than necessary.
The use case of not wanting to load "mediawiki.skinning.interface"
in a custom skin is invalid. For this exact purpose we already created
the ResourceLoaderSkinModule class which is generic and re-usable.
Skins can add that class name to their stylesheet file module to
append the logo styles. This way involves no extra modules. Not in
core, and not in any skin.
This reverts commit
43346e1527dc6f30e33c5acd4f479acc0eab7d0a.
Change-Id: I2b0a1d5ed72f2d5338ad26af6e04227bec45dcc1
Baha Man [Tue, 28 Apr 2015 20:03:52 +0000 (16:03 -0400)]
mediawiki.searchSuggest: Add track event on search form submission
Only fired from the skin-provided search box currently.
Bug: T97310
Change-Id: Iaccacdabca427afe1c1d5c42ae6d18d19a70543b
Timo Tijhof [Mon, 1 Jun 2015 14:31:52 +0000 (15:31 +0100)]
Use HttpStatus::header instead of manually crafting header()
Also:
* Update wfHttpError() to use uppercase DOCTYPE, to match other code
such as Html.php, wfThumbError(), HttpError.php, etc.
Change-Id: I4027e7fe1a138b03f78797b6d1bfe7bd1064d360
Timo Tijhof [Sun, 24 May 2015 12:31:11 +0000 (14:31 +0200)]
WebResponse: Implement statusHeader() using the new HttpStatus::header()
* Convert existing use of WebResponse::header() for HTTP status headers
to use this new statusHeader() method.
* Extend unit test forFauxResponse.
I'm not calling HttpStatus::header directly in code. We keep the abstraction
layer of WebResponse so that responses can continue to be mocked/fauxed without
affecting the outer HTTP response.
Change-Id: I8a536e16659fa88b54cffa1457efb889efa5fcd6
Timo Tijhof [Sun, 24 May 2015 12:05:13 +0000 (14:05 +0200)]
HttpStatus: Implement header() method
Standardise this. Currently MediaWiki does this in many different ways.
> WebResponse->header( "HTTP/1.0 $code $message" );
> WebResponse->header( "HTTP/1.1 $code $message" );
> WebResponse->header( "HTTP/1.x $code $message" );
> WebResponse->header( "HTTP/1.1 $code " . HttpStatus::getMessage( $code ) );
> WebResponse->header( "HTTP/1.1 $code $message", true, $code );
> header( "Status: $code $message", true, $code );
Change-Id: I1551e89808a1a67310549ec8d9fcb387754c9169
jenkins-bot [Wed, 3 Jun 2015 23:51:47 +0000 (23:51 +0000)]
Merge "hierarchicalize(!) stat names"
Ori Livneh [Wed, 3 Jun 2015 22:38:02 +0000 (15:38 -0700)]
hierarchicalize(!) stat names
Graphite expects name components to be dot-separated, so our habit of using
dashes doesn't really make sense. Change metric names to be more compatible
with Graphite, except the job queue's, since that will require a gdash
dashboard definition migration.
Change-Id: I77d0ff7606a8fc88434e4352d23415a9a8f4725a
jenkins-bot [Wed, 3 Jun 2015 21:59:15 +0000 (21:59 +0000)]
Merge "Explicitly define module position for mediawiki.htmlform.ooui.styles"
jenkins-bot [Wed, 3 Jun 2015 21:50:32 +0000 (21:50 +0000)]
Merge "Normalize hooks.txt formatting"
Aaron Schulz [Sat, 23 May 2015 17:53:12 +0000 (10:53 -0700)]
Automatically deduplicate root jobs on insertion
* This makes lazyPush() simple to use in more cases
Change-Id: I22e74485eaf3120e5669c5ee55dc7ab7310d7300
jenkins-bot [Wed, 3 Jun 2015 20:29:41 +0000 (20:29 +0000)]
Merge "Implemented getAllAcquiredJobs in JobQueueDB"
jenkins-bot [Wed, 3 Jun 2015 20:24:21 +0000 (20:24 +0000)]
Merge "ResourceLoader::filter: use APC when running under HHVM"
Aaron Schulz [Wed, 3 Jun 2015 20:04:42 +0000 (13:04 -0700)]
Implemented getAllAcquiredJobs in JobQueueDB
Change-Id: Ie9f0b9357b365f8bddd1f2fdcac11dec29aec876
Translation updater bot [Wed, 3 Jun 2015 20:17:02 +0000 (20:17 +0000)]
Merge "Localisation updates from https://translatewiki.net."
Ori Livneh [Wed, 13 May 2015 03:45:01 +0000 (20:45 -0700)]
ResourceLoader::filter: use APC when running under HHVM
On HHVM, (a) the cost of a ResourceLoader::filter cache miss is smaller, and
(b) APC is faster and more resilient than PHP's. These two things tilt the
scales in favor of using APC rather than Memcached.
Change-Id: I30b490e5bc815849d4b0bb06f2dbbb68825ed225