Siebrand Mazeland [Wed, 17 Apr 2013 09:11:38 +0000 (11:11 +0200)]
Rebuild MessagesEn.php
php maintenance\language\rebuildLanguage.php --lang=en
Change-Id: I6a51f75b393e7c85b93a79bc1f09c57ad7e79f93
Liangent [Wed, 17 Apr 2013 04:01:16 +0000 (12:01 +0800)]
Clean up old way to disable variants (using a special name 'disable')
$wgDisabledVariants is the preferred setting now since 1.16. For some
reason, the 'disable' magic name hasn't been cleaned up completely and
only affects skinning.
Someone may want to run rebuildLanguage.php later because messages.inc
is modified here. I didn't run it because it introduces too many
unrelated edits messing up this patch.
Change-Id: Ifb005e7cc9efd0b4a4f87fd491a71c8d5e1a5748
Chad Horohoe [Tue, 16 Apr 2013 23:07:12 +0000 (19:07 -0400)]
Support HTTP timeout detection in curl backend
We already do this for the pure-PHP backend, and it's easy to
catch this single error and pass a more specific message
Change-Id: I8a81dd90b691c35c51a19f8790f06578dd067613
Translation updater bot [Tue, 16 Apr 2013 19:19:33 +0000 (19:19 +0000)]
Localisation updates from translatewiki.net.
Change-Id: Ibba6af6cc653791657989c97d74ed2a6a4c25014
Aaron Schulz [Tue, 16 Apr 2013 17:16:10 +0000 (10:16 -0700)]
Use onTransactionIdle() for page invalidations when not using the job queue.
* This will do the page_touched UPDATE in autocommit mode to avoid
locking a bunch of titles for some unknown amount of time that
depends on how big the transaction is.
Change-Id: I6ec16a73c11fbf19c24d2b7fe7d01f91b9dcf33a
Aaron Schulz [Tue, 16 Apr 2013 07:28:45 +0000 (00:28 -0700)]
Some tweaks to the database commit callback docs.
Change-Id: Ifc1687f5393046d000a49aa7850c6454d03154b8
Aaron Schulz [Tue, 9 Apr 2013 20:55:36 +0000 (13:55 -0700)]
Account for $wgSquidMaxage in OutputPage::checkLastModified().
* This deals with the fact that seldom edited pages can end up cached
with very stale resource (JS/CSS) references since the response to
IMS GET requests will be 304 Not Modified if page_touched is ancient.
When squid revalidates its stale cache it will keep getting 304s and
renewing the TTL on the stale cache.
Bug: 44570
Change-Id: I3889f300012aeabd37e228653279ad19b296e4ae
jenkins-bot [Tue, 16 Apr 2013 06:50:19 +0000 (06:50 +0000)]
Merge "Cleanup and performance tweaks for BacklinkCache."
Aaron Schulz [Thu, 11 Apr 2013 21:02:12 +0000 (14:02 -0700)]
Pushed updateCategoryCounts() to transaction end to reduce contention.
* This can really be a problem if locks are held during file related operations.
Change-Id: I00107ffc9951915d3af6002b258b3dae2de5fa92
Aaron Schulz [Thu, 11 Apr 2013 06:54:14 +0000 (23:54 -0700)]
[Database] Added onTransactionPreCommitOrIdle() function.
* Also fixed case where onTransactionIdle() could start uncommitted
transactions if there was no transanction and DBO_TRX was set.
Change-Id: I0bf6171fac692cf3d6e04011321bed075f58724b
jenkins-bot [Mon, 15 Apr 2013 22:24:36 +0000 (22:24 +0000)]
Merge "Set Agora font stack to mw-ui-container in Vector"
Translation updater bot [Mon, 15 Apr 2013 21:11:56 +0000 (21:11 +0000)]
Merge "Localisation updates from translatewiki.net."
csteipp [Mon, 15 Apr 2013 20:56:14 +0000 (20:56 +0000)]
Merge "Disable external entities in Import"
jenkins-bot [Mon, 15 Apr 2013 20:55:10 +0000 (20:55 +0000)]
Merge "Add git HEAD date to Special:Version for core and extensions"
csteipp [Mon, 15 Apr 2013 20:55:07 +0000 (20:55 +0000)]
Merge "Disable external entities in XMLReader"
csteipp [Mon, 15 Apr 2013 20:54:19 +0000 (20:54 +0000)]
Merge "Sanitize $limitReport before outputting"
csteipp [Mon, 15 Apr 2013 20:47:10 +0000 (13:47 -0700)]
Disable external entities in Import
Temporarily disable loading entities in XMLReader when calling read()
during import.
bug: 47251
Change-Id: I0b39386e6cf4ec0244aab8ebc4095922511e2964
csteipp [Mon, 15 Apr 2013 20:44:23 +0000 (13:44 -0700)]
Disable external entities in XMLReader
Temporarily disable loading entities in XMLReader when calling read()
with libxml_disable_entity_loader(true).
bug: 46859
Change-Id: I0b2ef270f15c7b4da17edee680bf7e2410919915
csteipp [Mon, 15 Apr 2013 20:42:02 +0000 (13:42 -0700)]
Sanitize $limitReport before outputting
Prevents possible injection of "-->" and other HTML by extensions using
the ParserLimitReport hook.
bug: 46084
Change-Id: Id97b6668da6df3e5e4c0acefffa00c82cac3c44a
DaSch [Wed, 1 Aug 2012 20:49:17 +0000 (22:49 +0200)]
Add git HEAD date to Special:Version for core and extensions
The patch adds the localised commit date of i) core and ii) extensions
in the Special:Version page tables. It requires the Git version control
system being installed, which is checked during the installation.
Introduces a new parameter for the git binary in DefaultSettings.php:
$wgGitBin = '/usr/bin/git';
Patch authored by DaSch <dasch@daschmedia.de> and updated and fixed
by Wikinaut<mail@tgries.de>.
Bug: 38783
Change-Id: I0931400ecacf91ed2ab4fc7aa46dceac17661768
Translation updater bot [Mon, 15 Apr 2013 20:43:19 +0000 (20:43 +0000)]
Localisation updates from translatewiki.net.
Change-Id: Ie18fd3023c90008b80d8bf3eb888dce4d872fd90
Translation updater bot [Mon, 15 Apr 2013 20:28:38 +0000 (20:28 +0000)]
Merge "Localisation updates from translatewiki.net."
Brion VIBBER [Mon, 15 Apr 2013 18:15:41 +0000 (18:15 +0000)]
Merge "Moved JobQueueDB::recycleAndDeleteStaleJobs() function below overriden ones."
jenkins-bot [Mon, 15 Apr 2013 17:09:42 +0000 (17:09 +0000)]
Merge "(bug 42607) $.tablesorter: require separators when detecting dates"
GWicke [Mon, 15 Apr 2013 16:46:32 +0000 (16:46 +0000)]
Merge "5 new tests (3 Parsoid serializer, 2 parser) & fixed 4 tests."
Tobias Gritschacher [Mon, 15 Apr 2013 09:50:07 +0000 (11:50 +0200)]
Get rid of wfScript in MediaWikiSite::normalizePageName
wfScript should not be used to construct URLs for calls to other wikis
Bug: 47242
Change-Id: Id5aaa58f10d513e082b217aeb8d88b8228341a48
Aaron Schulz [Thu, 11 Apr 2013 18:12:52 +0000 (11:12 -0700)]
Removed old cache update b/c code from 2007.
Change-Id: Ia19062cb48f7748501c061544b2949bf3beaba4d
jenkins-bot [Sun, 14 Apr 2013 22:04:25 +0000 (22:04 +0000)]
Merge "Fixed incorrect parameter passed to LoginForm::userBlockedMessage()"
jenkins-bot [Sun, 14 Apr 2013 22:01:51 +0000 (22:01 +0000)]
Merge "Added spaces before and removed spaces after 'array'"
Alexandre Emsenhuber [Sun, 14 Apr 2013 20:43:58 +0000 (22:43 +0200)]
Fixed incorrect parameter passed to LoginForm::userBlockedMessage()
The error is Catchable fatal error: Argument 1 passed to
LoginForm::userBlockedMessage() must be an instance of Block, null given.
The problem is that User::$mBlock is not always the correct block, when
checking that a blocked logged-in user can create an account.
bug: 47138
Change-Id: I43f35cfa342737f05a08a693a86949c14348321f
umherirrender [Sun, 14 Apr 2013 19:57:46 +0000 (21:57 +0200)]
Added spaces before and removed spaces after 'array'
Fix some other spacing while at it
Change-Id: I13f81533eaf40e06c13cf377c0f08ef5cef01d00
jenkins-bot [Sun, 14 Apr 2013 19:49:05 +0000 (19:49 +0000)]
Merge "Use a provider for Xff blocking tests"
Siebrand Mazeland [Sun, 14 Apr 2013 19:18:38 +0000 (21:18 +0200)]
Update/add documentation
Change-Id: I897d5833cdaf7dc2d3bca5bb5551958611f22bd9
csteipp [Sat, 30 Mar 2013 17:05:15 +0000 (10:05 -0700)]
Use a provider for Xff blocking tests
Move the block insertion to addDBData(), and use a provider to
itterate through the test strings.
This seems like the more correct way to run these tests, although it
still seems hacky, since the db isn't cleaned up after each test.
Change-Id: Ib22ce69797ec03a61b0cc330e8572865290ebd31
jenkins-bot [Sun, 14 Apr 2013 08:41:20 +0000 (08:41 +0000)]
Merge "Added/Removed spaces around string concatenation"
Translation updater bot [Sat, 13 Apr 2013 20:31:14 +0000 (20:31 +0000)]
Localisation updates from translatewiki.net.
Change-Id: I019d72ecef04cd1851c951d76818afb81ae3f763
jenkins-bot [Sat, 13 Apr 2013 19:14:19 +0000 (19:14 +0000)]
Merge "JSHint: Re-order jshintrc options to split common from project settings"
umherirrender [Sat, 13 Apr 2013 11:36:24 +0000 (13:36 +0200)]
Added/Removed spaces around string concatenation
And added/removed spaces around some other tokens,
like +, -, *, /, <, >, =, !
Fixed windows newline style
Change-Id: I0b9c8c408f3f6bfc0d685a074d7ec468fb848fc8
Timo Tijhof [Sat, 13 Apr 2013 06:47:00 +0000 (08:47 +0200)]
JSHint: Re-order jshintrc options to split common from project settings
There are certain options required by our coding conventions.
The others are specifically overriding it for core. Either
because we have certain code that needs laxing or because we
can be stricter.
Comments can be used in jshintrc since a while now. Though
they are invalid JSON, many parsers (including JSHint) allow
them for documentation purposes.
Change-Id: I43ace21208121e866900b2cbe1efbcebadd2946a
jenkins-bot [Sat, 13 Apr 2013 01:26:59 +0000 (01:26 +0000)]
Merge "Various code and doc cleanups to ChronologyProtector."
S Page [Fri, 12 Apr 2013 23:37:05 +0000 (16:37 -0700)]
Set Agora font stack to mw-ui-container in Vector
We moved the language links outside the new compact vertical form
layout, hence also need to apply the font stack to mw-ui-container when
using Vector skin.
Also
* a comment-only CSS change
* set relative_assets = true in Compass sourcefiles configuration
Bug: 47187
Change-Id: Id064dc8ada5c43c33e17d1e66d327ba05e918657
Matthew Flaschen [Fri, 12 Apr 2013 23:19:35 +0000 (23:19 +0000)]
Merge "Fix sequence issue with /signup URL form"
kaldari [Fri, 12 Apr 2013 21:01:30 +0000 (14:01 -0700)]
Some comments for Preferences.php
Change-Id: I65d448acf1a53c95efe94587b695718f3231f538
jenkins-bot [Fri, 12 Apr 2013 20:28:38 +0000 (20:28 +0000)]
Merge "Update/fix docs"
Siebrand Mazeland [Mon, 1 Apr 2013 18:24:26 +0000 (20:24 +0200)]
Update/fix docs
Change-Id: Ifa3cfc6fe38ea45e70b50683c36e7cbf3bb4ef82
Matthew Flaschen [Fri, 12 Apr 2013 05:10:53 +0000 (01:10 -0400)]
Fix sequence issue with /signup URL form
/signup subpage affects form display and title (just like ?type=signup),
so check for it earlier in execute().
Also rename execute()'s $par parameter to $subPage to match SubPage.php.
Change-Id: Ida615a1039bfa1d8328f5fda24c4e3da66b9d162
jenkins-bot [Fri, 12 Apr 2013 19:25:22 +0000 (19:25 +0000)]
Merge "Update limit/urlwidth param doc of prop=imageinfo"
Translation updater bot [Fri, 12 Apr 2013 18:41:21 +0000 (18:41 +0000)]
Merge "Localisation updates from translatewiki.net."
Aaron Schulz [Fri, 12 Apr 2013 17:47:31 +0000 (10:47 -0700)]
Made $wgMaxBacklinksInvalidate actually work.
* The check never worked before due to the 200 limit passed to getNumLinks().
Change-Id: I009c757c6437f22544a8d7d09d3534950c32c887
Translation updater bot [Fri, 12 Apr 2013 17:43:42 +0000 (17:43 +0000)]
Localisation updates from translatewiki.net.
Change-Id: Ie707fb7d84d7ceb47089a618707a05c45c29e7f1
jenkins-bot [Fri, 12 Apr 2013 15:02:41 +0000 (15:02 +0000)]
Merge "Support for linking directly to sections in ApiFeedWatchlist. It works only if a section name is present in item's comment."
umherirrender [Thu, 11 Apr 2013 18:22:11 +0000 (20:22 +0200)]
Use wfAppendQuery to append a query
Also pass a array to wfAppendQuery, which than does the urlencoding.
Prefer a wfScript() over the global or string
Change-Id: Icada534cb4c99c9441938a2e8dcbc11a142360c6
jenkins-bot [Fri, 12 Apr 2013 00:54:25 +0000 (00:54 +0000)]
Merge "Add devunt to CREDITS as patch contributor"
JuneHyeon Bae [Sat, 16 Mar 2013 15:33:29 +0000 (00:33 +0900)]
Add devunt to CREDITS as patch contributor
Contributions to core are in Gerrit changes I316685262, I42be68c6a, and I45d04691a.
Change-Id: Ic917af8e0c7c9f49528a7309e22c0a60505ba5e8
Subramanya Sastry [Tue, 2 Apr 2013 16:42:51 +0000 (11:42 -0500)]
5 new tests (3 Parsoid serializer, 2 parser) & fixed 4 tests.
* Updated html output of two parsoid-centric tests to reflect
changes in parsoid output.
* Updated 'disabled parsoid' options on two tests to 'parsoid'.
* Added three more tests for the Parsoid serializer.
* Added two tests documenting differences in PHP and Parsoid
output for overlapping HTML tags (sometimes seen on wikipedia
pages).
Change-Id: Id72fc5de5a09490028b64a522db3461970008960
jenkins-bot [Thu, 11 Apr 2013 23:31:51 +0000 (23:31 +0000)]
Merge "Revised design of Special:Userlogin"
Aaron Schulz [Thu, 11 Apr 2013 23:20:57 +0000 (16:20 -0700)]
Various code and doc cleanups to ChronologyProtector.
Change-Id: I4d76e4c627e399f733d078c5cc97020f363094c4
jenkins-bot [Thu, 11 Apr 2013 22:40:37 +0000 (22:40 +0000)]
Merge "Add ChronologyProtector to ExternalLBs"
S Page [Tue, 5 Mar 2013 03:13:39 +0000 (19:13 -0800)]
Revised design of Special:Userlogin
If a global variable is set or if you add ?useNew=1 to the query string,
Special:Userlogin loads a different login template (UserloginVForm.php)
with the new Vertical Form appearance and different messaging.
Otherwise the current unchanged template renders so that wikis can cut
over to the new look when ready (with messages and links). Once they do
so, the variable and flag will be retired.
The new template applies mw-ui-vform and mw-ui-button styles defined in
a new 'mediawiki.ui' CSS module in core to create a compact vertical
form. The mw-ui styles specify a Helvetica font stack (that we tested
in the Account creation experiment) in the form area, but NOT if the
user is using some other skin than Vector.
The CSS code is developed using Sass. The patch includes the
Sass scss files, along with a Makefile that uses their Compass build
configuration (config.rb).
The redesigned Special:Userlogin also:
* Displays a "secure login" link if HTTPS is available.
* Loads additional CSS for its form features (e.g. more attractive
errorbox, "Join wiki" messaging).
* Defines new "userlogin-xx" messages; many are the same as
existing messages but without ':' on the end.
* Uses a distinct title for Login instead of generic "Log in /
Create account".
* Removes the [mailmypassword] code branch from its login template as it
is never executed.
Bug: 44628
Change-Id: I489042c50aa060c90ca18b05097dbe25c4ae6395
Brion VIBBER [Thu, 11 Apr 2013 21:47:48 +0000 (21:47 +0000)]
Merge "Moved ChronologyProtector to its own file."
jenkins-bot [Thu, 11 Apr 2013 21:31:44 +0000 (21:31 +0000)]
Merge "Fixed use of __METHOD__ in a closure."
jenkins-bot [Thu, 11 Apr 2013 21:20:58 +0000 (21:20 +0000)]
Merge "phpcs: Fix Squiz.WhiteSpace.ScopeClosingBrace.ContentBefore violations"
Aaron Schulz [Thu, 11 Apr 2013 21:08:45 +0000 (14:08 -0700)]
Moved ChronologyProtector to its own file.
Change-Id: I01bf0206322454e36633921887d10356a48ab5cb
Aaron Schulz [Thu, 11 Apr 2013 21:04:23 +0000 (14:04 -0700)]
Fixed use of __METHOD__ in a closure.
Change-Id: I41dc0ba4aff39d5a65cd1ccb3fba6c102974e6c2
Translation updater bot [Thu, 11 Apr 2013 20:29:10 +0000 (20:29 +0000)]
Merge "Localisation updates from translatewiki.net."
jenkins-bot [Thu, 11 Apr 2013 20:02:08 +0000 (20:02 +0000)]
Merge "Disable Special:PasswordReset when $wgEnableEmail is false"
Translation updater bot [Thu, 11 Apr 2013 19:56:07 +0000 (19:56 +0000)]
Localisation updates from translatewiki.net.
Change-Id: I6c19864b175b2cbb84273326a981467af2db8610
JuneHyeon Bae [Tue, 12 Mar 2013 06:10:17 +0000 (15:10 +0900)]
Disable Special:PasswordReset when $wgEnableEmail is false
Previously one could still navigate to the page by entering its URL directly,
and from there be able to request a password reset e-mail for any user who has
an e-mail address configured. This patch adds a check for $wgEnableEmail in the
SpecialPage code, replacing the interface with an error message when e-mail is
not enabled.
Change-Id: I42be68c6a068aafdf45623eb35bb21aa684f54f6
jenkins-bot [Thu, 11 Apr 2013 19:50:21 +0000 (19:50 +0000)]
Merge "Minor fix to redis queue docs."
Yuvipanda [Thu, 11 Apr 2013 19:27:21 +0000 (19:27 +0000)]
Merge "Consistency tweak: Wrap variable names into <code></code>"
Aaron Schulz [Thu, 11 Apr 2013 18:50:19 +0000 (11:50 -0700)]
Minor fix to redis queue docs.
Change-Id: I27394ddc8187ab3e9c275e2d72911318cc496604
jenkins-bot [Thu, 11 Apr 2013 17:25:43 +0000 (17:25 +0000)]
Merge "Added a quick test for getAllQueuedJobs()."
umherirrender [Thu, 4 Apr 2013 15:34:22 +0000 (17:34 +0200)]
Update limit/urlwidth param doc of prop=imageinfo
Follow up Id0ec6a and to clarify things like bug 46782
Change-Id: I2215d022a47cd8ceeadd2f5d38064495f3197772
jenkins-bot [Thu, 11 Apr 2013 16:15:27 +0000 (16:15 +0000)]
Merge "Remove externaledit/externaldiff preference"
Siebrand Mazeland [Mon, 8 Apr 2013 12:09:48 +0000 (14:09 +0200)]
Update documentation and styling
Remove some trailing whitespace, break long lines, make PHPDoc consistent
and update it in places.
Change-Id: I340b43a47e121a44ebd4aaa2a45dff12e945e645
Matthias Mullie [Thu, 11 Apr 2013 13:22:40 +0000 (15:22 +0200)]
Add ChronologyProtector to ExternalLBs
Change-Id: Ic6c4e86b520f7899172e3ab43e81c4d1d9637d82
Chad Horohoe [Thu, 11 Apr 2013 13:20:36 +0000 (09:20 -0400)]
Remove externaledit/externaldiff preference
Change-Id: Ic3791d188688f556753ab5556a4d9733bbf2e85e
Wikinaut [Thu, 11 Apr 2013 10:39:14 +0000 (12:39 +0200)]
given name correction in CREDITS
Change-Id: I1afdad0129980a988e5626351cff94c38d01688f
Timo Tijhof [Thu, 11 Apr 2013 05:29:05 +0000 (07:29 +0200)]
phpcs: Fix Squiz.WhiteSpace.ScopeClosingBrace.ContentBefore violations
ERROR: Closing brace must be on a line by itself
Squiz.WhiteSpace.ScopeClosingBrace.ContentBefore
- For non-empty scopes it means the closing brace must be on a separate
line. This is already the case in most classes in some cases the "lazy
closing" is still used.
array(
'x' ); // Moved } to next line
function () { return 'x'; } // Moved } to next line
case 1:
stuff; break; // Moved break to next line
- For empty function it serves as a visual distinction between there not
being a scope block / function body and there being an empty function
body.
function foo(); // No body
function foo() {} // Empty body - violation
function bar() { // Empty body corrected
}
Change-Id: I0310ec379c6d41cc7d483671994d027a49f32164
Kevin Israel [Thu, 11 Apr 2013 02:18:43 +0000 (22:18 -0400)]
Add @since line for User::groupHasPermission()
Change-Id: Ibcd20a3921058a010334e0e0983e2d9541aea734
Follows-up: I41edb091fa35c8c68b6f95cc5fd208ea99418cdb
jenkins-bot [Wed, 10 Apr 2013 22:35:11 +0000 (22:35 +0000)]
Merge "Minor coding style whitespace cleanup"
Amir E. Aharoni [Thu, 14 Mar 2013 22:23:30 +0000 (00:23 +0200)]
Minor coding style whitespace cleanup
Change-Id: Ic066eda3a1a2db51b2a953a81829ce7f92568125
Translation updater bot [Wed, 10 Apr 2013 20:02:19 +0000 (20:02 +0000)]
Localisation updates from translatewiki.net.
Change-Id: Id27f47305ed695264d422df9fa51d6492b838b88
rahul21 [Sun, 31 Mar 2013 21:55:52 +0000 (03:25 +0530)]
Vector: Move 'editwarning' feature from Vector extension
* Created a new Resource Loader module
* Created an entry for the RL module in the Resources.php
* Added messages to languages/MessagesEn.php and languages/MessagesQqq.php
* Called the new RL module from the EditPage.php
* Added required entries in the messages.inc, DefaultSettings.php
Corresponding change in the Vector extension: I164f17255bc927
Bug: 46514
Change-Id: I7bdbd09f4083ccb316156307400ccfacdfec79e1
jenkins-bot [Wed, 10 Apr 2013 17:13:09 +0000 (17:13 +0000)]
Merge "Use HTMLForm::setWrapperLegendMsg() in FormSpecialPage::getForm()"
Brad Jorsch [Wed, 10 Apr 2013 13:38:56 +0000 (09:38 -0400)]
Add release notes for Iea1f7842
Change Iea1f7842 (Add timezone support to Language::sprintfDate) did not
include an update for RELEASE-NOTES-1.22.
Change-Id: Icad1228b90b1e30130cc820faaba7c0c8f2254a2
Alexandre Emsenhuber [Wed, 10 Apr 2013 10:04:48 +0000 (12:04 +0200)]
Use HTMLForm::setWrapperLegendMsg() in FormSpecialPage::getForm()
There is no need to call $this->msg() directly for the fieldset legend
as there is already a method in HTMLForm to do it.
Change-Id: I771520ea230301b51cece685f47e6a606ad860be
jenkins-bot [Wed, 10 Apr 2013 09:09:20 +0000 (09:09 +0000)]
Merge "Remove dependency on ORMTable from ORMRow"
JuneHyeon Bae [Wed, 20 Mar 2013 05:14:49 +0000 (14:14 +0900)]
make error message pretty
Change-Id: I45d04691aca8a1e2c7bb94537da8e04d2bbf0481
umherirrender [Sat, 6 Apr 2013 17:42:04 +0000 (19:42 +0200)]
Add nosummary, minor and watchthis to Special:MyPage and friends
These are options usable with action=edit and allows better options
for the inital edit view from urls or the InputBox extension.
Change-Id: I696c47ddf9f29764bc8cc6136c618c56dbc2d726
jeroendedauw [Mon, 18 Feb 2013 19:43:03 +0000 (20:43 +0100)]
Remove dependency on ORMTable from ORMRow
IORMRow implementing objects take a IORMTable object in their constructor.
The later is a hard to construct service object while the former ideally
should just be a simple wrapper around a database row. This means IORMRow
objects are tightly coupled with IORMTable objects, which makes them
inflexible and makes various things such as testing logic contained in
them needlessly difficult.
This commit gets rid of this nonsense by allowing for construction of
ORMRow objects without providing an ORMTable. All methods dependent on
the table field have been deprecated. Most of these methods have a new
alternative in ORMTable. For instance, saving an ORMRow can now be done
by passing an instance of ORMRow to the updateRow method of an ORMTable
instance, rather then calling save on the ORMRow instance.
Backwards compatibility has been retained except for the fields passed
in the constructor no longer undergoing magical unserialization if it
looks like this is needed. I do not expect this will affect any existing
code though.
Change-Id: I86368821fc2cd0729df5342b8572eb470c0f77a0
Timo Tijhof [Wed, 10 Apr 2013 07:37:19 +0000 (09:37 +0200)]
startup: Lower blacklist for Firefox from 4 to 3.
Though Firefox is 3.6 is both unsupported by Mozilla, by jQuery
and by MediaWiki JS, it is not known to have fatal errors in
javascript run time execution so moving from Grade B (blacklist)
to Grade X (unsupported but given Grade A source code at own risk).
This is done following a thread in English Wikipedia's Village
pump requesting to get the Grade A resources again.
Follows-up
02fe025e6364ebf6f.
Change-Id: Ia54dd738b3ce0995fab6aae7a2729cc7b1a0dcb1
Tim Starling [Wed, 3 Apr 2013 10:54:34 +0000 (21:54 +1100)]
Fix message cache expiry semantics
* Use the stale message cache while the new one is being generated
* Revert I811755d4 (make message cache load failure fatal). This
escalated several very plausible temporary site issues from barely
noticeable to complete downtime -- for example, memcached being down
on a site with only one memcached server.
* Remove $wgLocalMessageCacheSerialized, it's always been pointless
* Clarify a couple of comments.
* Increased lock wait timeout to 30s
* Make lock() fail immediately on memcached connection refused
Tests done:
* With local cache enabled: normal cold refill; refill local from
global cache; use stale local cache during remote refill; use stale
global cache during remote refill; cold cache wait for remote refill;
saveToCaches() failure; memcached connection refused.
* With local cache disabled: saveToCaches() failure; cache disabled due
to "error" status key; memcached connection refused.
Setting a 1-day expiry in memcached, with a ~10s CPU cost to replace, is
not the best idea since it inevitably leads to a cache stampede. Dealing
with the stampede by waiting for a lock is not ideal, even if it were
implemented properly, since it's not necessary to deliver perfectly
fresh message cache data to all clients.
This is especially obvious when you note that barring bugs, expiry and
regeneration always gives you back the exact same data, because we have
incremental updates (MessageCache::replace()). Keeping all clients
waiting for 10s just to give them the data they have already is pretty
pointless.
So, continue to serve the site from the stale message cache while the
new one is being generated.
One caveat: if local caching enabled, when the message cache becomes
stale, a sudden spike in network bandwidth may result due to the full
array (also typically stale) being fetched from the shared cache.
Bug: 43516
Change-Id: Ia145fd90da33956d8aac127634606aaecfaa176b
Kevin Israel [Tue, 9 Apr 2013 00:25:47 +0000 (20:25 -0400)]
ApiFormatXml: remove broken xmldoublequote param
r55641 was a refactoring of ApiFormatXml::recXmlPrint() that added
a $doublequote parameter, yet the parameter was not actually passed
along in recursive calls, rendering the formatter's xmldoublequote
parameter useless.
XPath support was the sole reason this parameter was added. It was
argued that because in the XPath 1.0 grammar, a Literal is:
'"' [^"]* '"' | "'" [^']* "'"
it is not possible to match attribute values that contain both an
apostrophe and a double quote.
However, conforming XPath implementations include a concat() function
that can be used to work around this limitation. Furthermore, XPath 2.0
allows escaping a double-quoted " as "" (and a single-quoted ' as '').
Because there was no Bugzilla report (other than mine) filed in the
last 3-1/2 years, and working around the XPath flaw is possible, I
think it's safe to remove the parameter. The worst that could happen
is that a not-very-robust API client chokes on the "Unrecognized
parameter" warning.
Bug: 46626
Change-Id: I9a4d8c13b78ffd2634d03c8c8b4bbeff69f4bc08
jenkins-bot [Tue, 9 Apr 2013 23:48:06 +0000 (23:48 +0000)]
Merge "add htmlform-no and htmlform-yes messages for generic yes-no questions"
jenkins-bot [Tue, 9 Apr 2013 23:39:55 +0000 (23:39 +0000)]
Merge "Added a script to copy jobs from one queue to another."
jenkins-bot [Tue, 9 Apr 2013 23:30:42 +0000 (23:30 +0000)]
Merge "Honor transform limit for images with many old revisions"
jenkins-bot [Tue, 9 Apr 2013 23:23:06 +0000 (23:23 +0000)]
Merge "(bug 33454) Add timezone support to Language::sprintfDate"
Aaron Schulz [Tue, 9 Apr 2013 07:01:32 +0000 (00:01 -0700)]
Added a script to copy jobs from one queue to another.
Change-Id: I9173f21563089e094d67deaf203797d90aa84990
jenkins-bot [Tue, 9 Apr 2013 23:08:04 +0000 (23:08 +0000)]
Merge "ResourceLoader: Don't cache ob_get_level"