Commit graph

25983 commits

Author SHA1 Message Date
Aaron Schulz
5563add9c5 Merge "Avoid extreme performance regression in ImagePage." 2012-05-25 17:04:52 +00:00
Catrope
97f2db74a0 Merge "Add some more detailed info about the xslt param of format=xml" 2012-05-25 16:01:28 +00:00
Liangent
69ebd8d7ce Add some more detailed info about the xslt param of format=xml
Change-Id: I77e1dcbdf3ff1d201a2346c5a397469b4fc21d74
2012-05-25 08:56:02 -07:00
umherirrender
2f190c4792 user table: replace some '*' with explicit fields in selects
It is good practice to select only fields, which are used later

Change-Id: Iaaa252d594112894334a8ee9916007352d5bc4e7
2012-05-25 17:53:29 +02:00
umherirrender
beccc67e36 Title.php: replace some '*' with explicit fields in selects
It is good practice to select only fields, which are used later

Change-Id: I4e765d60aea3c11261497346a85e65ed755a085d
2012-05-25 16:55:25 +02:00
umherirrender
6c2cf98e3d Block.php: replace '*' with explicit fields in selects
It is good practice to select only fields, which are used later

Change-Id: I50d149b3ecd3a9e0325fecbe8d0b6e1fff353893
2012-05-25 16:50:57 +02:00
Aaron Schulz
6435a6e737 [FileBackend] Purge Swift process cache before container delete for sanity.
* Also tweaked some documentation.

Change-Id: I89369d6211de216193ae1d895356137cacded5d7
2012-05-25 03:41:12 -07:00
Aaron Schulz
a81d96d313 Merge "HTMLForm: throw a warning when no callback is set" 2012-05-24 23:31:30 +00:00
Aaron Schulz
d30c514796 [FileBackend] Gave doQuickOperations() some wrapper methods just like doOperations().
Change-Id: I0186a60bddcb26f008f6a6512eb5190a08142802
2012-05-24 16:29:32 -07:00
Aaron Schulz
5824824bf6 Merge "(bug 36761) "Mark pages as visited" should submit previously established filter options The form was missing the hidden inputs containing the filter options already selected. This change fixes adds those inputs." 2012-05-24 23:21:12 +00:00
Aaron Schulz
98d2b49f9b Merge "Scribunto parser support" 2012-05-24 23:11:17 +00:00
Brion VIBBER
b47a2148c6 Merge "[FileBackend] Added getScopedLocksForOps() function." 2012-05-24 21:08:40 +00:00
Aaron Schulz
af16ce7257 Merge "Bug 36785 Special:Shortpages lists only NS_MAIN pages. (pages from all $wgContentNamespaces should be listed)" 2012-05-24 21:05:45 +00:00
Aaron Schulz
a86ae844e6 Merge "Workaround for autoloading when using php namespace." 2012-05-24 18:51:18 +00:00
Brion VIBBER
d9d8b099ad Merge "When file sha1 populator fixes wrong values, make it fix the other metadata." 2012-05-24 18:49:50 +00:00
mrbluesky
1aead61d4c Add and fix comments in some includes files
Change-Id: If781ad1a9eeba8310cef97dc9786685e8b265fa1
2012-05-24 20:42:56 +02:00
daniel
6d55d4450b Workaround for autoloading when using php namespace.
This is a Workaround for PHP bug <https://bugs.php.net/bug.php?id=49143> (5.3.2. is broken, it's fixed in 5.3.6):

Strip leading backslashes from class names. When namespaces are used, leading backslashes are used to indicate
the top-level namespace, e.g. \foo\Bar. When used like this in the code, the leading backslash isn't passed to
the auto-loader ($className would be 'foo\Bar'). However, if a class is accessed using a string instead of a
class literal (e.g. $class = '\foo\Bar'; new $class()), then some versions of PHP do not strip the leading
backlash in this case, causing autoloading to fail.

amended: as per Jeroen's suggestion, used // for comments and ltrim instead of preg_replace.

Change-Id: I71e0429ed1da5c83262dbf6f989c782385af9bcb
2012-05-24 19:06:54 +02:00
Aaron Schulz
ec002cdf8a [FileBackend] Worked around Akamai CDN purge limits.
* Added swiftCDNTTL to let the cache TTL be configurable
* Also added swiftCDNPurgable option to disable purges

Change-Id: Ic8e779c20f7501a5a55f4a49fc612923d0dc268c
2012-05-23 15:29:22 -07:00
Aaron Schulz
d2604f086f Merge "Revert "(bug 30625) Add, to every API upload response, the warnings raised."" 2012-05-23 19:32:51 +00:00
Brion VIBBER
bca71b173e Revert "(bug 30625) Add, to every API upload response, the warnings raised."
Inconsistent formatting (returns an empty array vs a full object, breaks UploadWizard)

This reverts commit e2b3d53db5
2012-05-23 19:27:48 +00:00
Alexandre Emsenhuber
aad9d5fd6b Removed checks for the "MEDIAWIKI" constant on files that only define classes.
This checks are not needed in that case.

Change-Id: Ia83447427de8b7ea32aced8ff43c7a252b8d504c
2012-05-23 21:20:42 +02:00
Aaron Schulz
b22063a6f9 When file sha1 populator fixes wrong values, make it fix the other metadata.
Change-Id: Ie03af8b97dc76d2ab4990108b9189693fcf81697
2012-05-23 12:04:29 -07:00
Aaron Schulz
eea4ecefa7 Added canonical url check for squid caching on view.
* This check is similar to the HistoryAction one. It prevents things from
  getting cached that do not get purged with the page is invalidated.

Change-Id: Ie38ae198b173533937103d66478a9ccb5b086175
2012-05-23 10:15:48 -07:00
Aaron
11b67f0093 [FileRepo] Cleanup of URL config.
* Made the 'zones' config a bit easier to set by falling back to defaults more piecemeal.
  Each zone now also has a 'url' parameter. This is useful for CDN support for third parties.
* Deprecated weirdly name getRootUrl() function and made it wrap getZoneUrl( 'public' ).

Change-Id: I8295a81e9cc56c08069b35fa4e4f883fd0108df7
2012-05-22 21:16:53 -07:00
Tim Starling
92c7c6f426 Remove OutputPage::uncacheableBecauseRequestvars()
Fix for r10265: OutputPage::uncacheableBecauseRequestvars() as written
in that revision is backwards, apparently declaring all requests to be
uncacheable except those with useskin or uselang. Luckily getText() has
always converted its default parameter to a string, so the triple-equals
comparisons always fail, and uncacheableBecauseRequestvars() always
returns false.

In any case, it was never necessary to suppress the client-side cache
for useskin/uselang views, so the accidental behaviour was appropriate.

Change-Id: I520940867509b986a47d63ead9b549e8aa82fa1f
2012-05-23 09:37:53 +10:00
awjrichards
f6f3fa86f2 Merge "Refactor DeviceDetection: make it OOP and extendable" 2012-05-22 21:40:59 +00:00
Max Semenik
fd17a43b07 Refactor DeviceDetection: make it OOP and extendable
Old interfaces are preserved for b/c for now. Stuff that needs to die
such as css_file_name has not been exposed for new interfaces.

Remove unused device properties.

Change-Id: I9b08eb81625a5570e700d9b690c03a001316de71
2012-05-23 01:35:38 +04:00
Aaron Schulz
e066ee0c47 Merge "(bug 30625) Add, to every API upload response, the warnings raised." 2012-05-22 21:26:33 +00:00
Mark Holmquist
e2b3d53db5 (bug 30625) Add, to every API upload response, the warnings raised.
The current API implementation has a parameter for uploads that is
called "ignorewarnings". Currently, it will not only suppress any
warnings from stopping the upload, it will also lose any data from
those warnings.

This patch is sort of on the way to solving Bug 30625, which is in
the UploadWizard extension. That extension needs to know when a file
upload *will* fail, barring a change in some data, in order to make
it easier for a user to fix the foreseeable problems. The solution is
either to fix it this way, or to somehow spoof a file upload, and see
if it succeeds. In the hopes that other extensions will also find
this useful, I opted for the former.

Change-Id: I08b4e29e89ade6cf391ae044fceb788aaba3f5b4
2012-05-22 14:23:23 -07:00
Alexandre Emsenhuber
44ec396481 Added missing GPLv2 headers in some places.
Also made file/class documentation more consistent.

Change-Id: Ife63db5d36d833de4e0944f9b79ab0f80e7b84c5
2012-05-22 20:43:10 +02:00
Aaron
826f82eacc [FileRepo] Avoiding useless purging for new uploads (not re-uploads).
Change-Id: If554c14c786cd5f743c4d8302660a8b1e5295393
2012-05-22 11:36:43 -07:00
Aaron Schulz
723b886429 [FileBackend] Avoid an extra RTT on Swift listing operations.
* Also tweaked timestamp tolerance in tests, intended for Swift
* Also made a few tweaks to speed up tests a bit

Change-Id: Ibdee36d3bf86089b027dc74bb2582acc1ab4b96b
2012-05-22 10:53:48 -07:00
Amir E. Aharoni
d4dd8419b9 bug 37015: Allow disabling special page summary
Replaced isBlank() with isDisabled() in SpecialPage::outputHeader.
This allows disabling the default headers (*-summary).

Patch set 2: Hid recentchangestext if nothing is written there.

Change-Id: Id3ec2aeb1fab00344908b7bff01929bdafbfd08f
2012-05-22 19:46:52 +03:00
Max Semenik
4d3620a08d HTMLForm: throw a warning when no callback is set
Change-Id: Ied019afaf607c4b5967989fcb53945a116eeaed6
2012-05-22 19:11:13 +04:00
Tim Starling
7fc5234cbe Scribunto parser support
Add $indexOffset parameter to PPFrame::newChild(). This makes it
possible to use newChild() for interpreting named parameters to
invoke in Scribunto -- otherwise I would have had to duplicate its
functionality, which would have been tricky given that I wanted to
make a real frame with an expand() method. Setting $indexOffset allows
newChild() to start counting numbered parameters from somewhere other
than the first pipe character, leaving room for the Scribunto function
name.

Fixed PPCustomFrame_*::getArguments(), was missing for no apparent
reason. I didn't end up using it in Scribunto, but there's no harm in
adding it anyway.

Change-Id: I0c761aab8a7f1ae74e8d151a1346febb5c466e18
2012-05-22 13:53:41 +10:00
Aaron Pramana
7c20a005e9 (bug 36761) "Mark pages as visited" should submit previously established filter options
The form was missing the hidden inputs containing the filter options already selected. This change fixes adds those inputs.

Change-Id: I67f3b34672c52c13789a967e81e0cb32813b2be2
2012-05-21 20:17:38 -07:00
Reedy
698b51118b Revert "Treat truncated HTTP requests as errors."
Caused bug 36950 among other issues

This reverts commit ded6170bd2

Change-Id: I26500896a09a9fe720dc31b3d48cdbb3cd6c8677
2012-05-21 23:10:51 +01:00
Alexandre Emsenhuber
1082c71e9b Added missing GPLv2 headers in some places.
Also made file/class documentation more consistent.

Change-Id: Ibe7815124d6915792dcbb150d01df21d9b22b0b0
2012-05-21 21:56:39 +02:00
Demon
a505649191 Merge "Remove some methods from FakeTitle that do not exist anymore in Title." 2012-05-21 19:32:08 +00:00
Siebrand
0fdb349fcb Merge "Improved/added parameter documentation" 2012-05-21 16:27:57 +00:00
Alexandre Emsenhuber
3783b0b51c Remove some methods from FakeTitle that do not exist anymore in Title.
There are :
- FakeTitle::moveOverExistingRedirect()
- FakeTitle::moveToNewTitle()

Change-Id: I09f689ef185357b9c9afbfe95bc06b6135ed115d
2012-05-21 10:18:58 +02:00
Siebrand
e1af77757a Merge "(bug 25946) The message on the top of Special:RecentChanges is now displayed in user language instead of content language" 2012-05-21 07:07:24 +00:00
Platonides
ac97386173 Messages parsed through MessageCache should never show edit links.
Copy to MessageCache.php the r92703 (d70ad8c) fix.
Fixes bug 36975

Change-Id: I4551aa32b8ff04d2209807c188051878b033285e
2012-05-21 01:14:58 +01:00
Reedy
6eb7b3475f Merge "[FileRepo] Added more upload profiling." 2012-05-20 23:22:59 +00:00
Tim Starling
18c291fb54 Merge "[FileBackend] Made supported ops check more explicit for sanity." 2012-05-20 23:16:46 +00:00
Reedy
a8fc5d9acb Merge "[FileBackend] Added some Swift listing profiling." 2012-05-20 23:15:39 +00:00
Aaron Schulz
a350d68e09 [FileBackend] Added some Swift listing profiling.
Change-Id: I61d1ec5725be2ebed4bb08e713dfcab7e85160fc
2012-05-20 12:44:38 -07:00
Aaron Schulz
fdb74872a8 Merge "multi dbms support in api" 2012-05-20 18:15:42 +00:00
Aaron Schulz
f1c86117a1 Merge "Fill GenderCache inside ApiPageSet" 2012-05-20 18:13:59 +00:00
Alexandre Emsenhuber
3bbda787b8 Added missing GPLv2 headers in some places.
Also made file/class documentation more consistent.

Change-Id: Ic1ba00472ef62fa4fd746f8f590fe694d490ecd9
2012-05-20 17:56:43 +02:00
Demon
280cb1c5f8 Merge "Set $wgLanguageConverterCacheType to CACHE_NONE in installer" 2012-05-20 14:28:12 +00:00
Aaron Schulz
1aaac4c915 Avoid extreme performance regression in ImagePage.
* For some reason, when 404 handling is off, all the links for
  $wgImageLimits were still generated but not put into the HTML.
  They still triggered convert() calls - 7 times by default.

Change-Id: I0d12c7ec3c02039c1307a1a1d04d1d1cbd44b547
2012-05-19 22:07:15 -07:00
Antoine Musso
7a0f6f5778 give path when not able to write the thumb
Change-Id: I970da631b4263b658c2c071a4c10b155100e53fc
2012-05-20 03:42:32 +02:00
Aaron Schulz
beebe060e3 Merge "(bug 23844) Add var dataCacheTime to mw.config" 2012-05-19 22:05:20 +00:00
umherirrender
dbaec6e71f Wrap message querypage-no-updates into a class
this allows easy styling of that message

Change-Id: Ief78cb598613e705dace65e4b8e36dcb544c6f4b
2012-05-19 19:48:13 +02:00
umherirrender
3992cd8f65 (bug 23844) Add var dataCacheTime to mw.config
Change-Id: I67c9cbf4fc01f4e8580b39852b27a1ac70993051
2012-05-19 19:44:09 +02:00
awjrichards
15599d3d39 Adds support to HTMLForm for rendering form fields wrapped in divs
or just plain old (mostly) raw form fields.

Also fixes minor code style issues

Change-Id: Ia9510d6960f2adb17c1bb19e378763a60169dee6
2012-05-19 07:06:15 -07:00
Aaron Schulz
fc4683ae7b [FileBackend] Made supported ops check more explicit for sanity.
Change-Id: I8d7b4e3dcae77f76d390432fe0c52366e63e3f2d
2012-05-19 01:33:01 -07:00
Aaron Schulz
2f5914c2ce Merge "Title::moveToInternal doesn't return anything, but it does throw an exception" 2012-05-19 07:55:54 +00:00
Aaron
dfa7120f1b [FileRepo] Added more upload profiling.
Change-Id: Ib79306fde3470ccaa1f6822b894f1b61f16d772b
2012-05-18 17:56:53 -07:00
Aaron
d0facbf7b1 [FileRepo] Disabled ancient migration code, kills performance.
Change-Id: I6ed49f447dda3235e22edbbf837dad66c66d0764
2012-05-18 15:35:23 -07:00
daniel
fa132be893 fix for Ibe3e88fa: restoring doDeleteUpdates().
When generalizing LinksUpdate to DataUpdate and introducing
WikiPage::getDeletionUpdates(), WikiPage::doDeleteUpdates()
was removed, even though it was still used by Title::moveToInternal().

This patch restores WikiPage::doDeleteUpdates(), using the
new logic based on WikiPage::getDeletionUpdates() to implement it.

Change-Id: I12a49d5ca3ccb6bb9cbb63dde436bcf2a7d8a985
2012-05-18 18:58:21 +02:00
Aaron Schulz
5ec99f4b24 Merge "Make errors from ArticleSave hooks propagate to the interface" 2012-05-18 05:39:19 +00:00
Aaron Schulz
9fc59854b4 Merge "Various fixes to Special:Mostlinked." 2012-05-18 05:22:55 +00:00
Aaron Schulz
fadea7c097 Merge "Document DBO_PERSISTENT in DefaultSettings.php" 2012-05-18 05:15:39 +00:00
Aaron Schulz
5f6b22de68 Merge "exclude immovable namespaces from the namespace selector on Special:MovePage" 2012-05-18 05:14:19 +00:00
Tim Starling
78d0b3cfa8 Merge "Remove extra unneeded whitespace" 2012-05-18 04:57:44 +00:00
Tim Starling
8fffd51059 Merge "[FileRepo] Use faster doQuickOperations() function for thumbnails ops." 2012-05-18 04:49:44 +00:00
Reedy
68f50015c7 Improved/added parameter documentation
Change-Id: Ie48852acb434f6b62fda0b13b13e076f833d8975
2012-05-18 03:58:15 +01:00
Aaron
24cad34372 [FileBackend] Moved closeResources() call up to parent class function.
Change-Id: I903b40c17e8f757bc3642e24552ddd518c0ef39d
2012-05-17 17:21:39 -07:00
Reedy
d34e01c12d Merge "[FileBackend] Fixed parallelize check in doQuickOperationsInternal()." 2012-05-17 23:48:58 +00:00
Aaron
0624af8f2e [FileBackend] Fixed parallelize check in doQuickOperationsInternal().
Change-Id: Ia552a5094e61f418bc3fa8958f1a4869018be536
2012-05-17 16:17:01 -07:00
Reedy
79b044a199 Document DBO_PERSISTENT in DefaultSettings.php
Change-Id: Iee17925fdfd011218a36d5e555ce6494c27837ff
2012-05-17 23:08:07 +01:00
Aaron
bbb1131501 [FileBackend] Added profiling to doQuickOperationsInternal().
Change-Id: I98ce4bdfb61bf55b5306dabf0f20427c26319c3c
2012-05-17 14:18:45 -07:00
Aaron
159cc27fde [FileBackend] A few code cleanups and some error message improvements.
Change-Id: I75f066104b98638ca956042c4e877c0f6327509c
2012-05-17 11:34:15 -07:00
Aaron
930c9f8060 [FileRepo] Use faster doQuickOperations() function for thumbnails ops.
Change-Id: I8139b7f6f8533bb0dbeddba12750ab9342b2dd82
2012-05-17 09:55:02 -07:00
Tim Starling
4024de4bd8 Merge "[FileBackend] Improved connection error handling and logging a bit for Swift." 2012-05-17 07:52:06 +00:00
Tim Starling
f03819f8eb Merge "[FileBackend] Added doQuickOperations() function for things like purging thumbnails." 2012-05-17 07:42:07 +00:00
Tim Starling
ea973a8a00 Merge "[FileBackend] Added CDN support to Swift for third-party sites." 2012-05-17 07:16:09 +00:00
Tim Starling
ad8b234b1b Merge "[FileBackend] Made it easy to use registed file backend config in multi-write backends." 2012-05-17 07:08:51 +00:00
Tim Starling
dbb2b3e664 Merge "[FileBackend] Syncing from journal support." 2012-05-17 07:03:34 +00:00
Liangent
7443931d5c Tweak includes/zhtable/Makefile.py
* Make it executable and use a more generic shebang line.
* Write ZhConversion.php to its own location directly, so it can be more
  convenient to do git checkout -b; edits; ./Makefile.py; git diff; to
  confirm changes made.
* Cosmetic text changes.

Change-Id: Ia3556e3b2cd5ee4eeaa67c4e535141576f13dc16
2012-05-17 07:10:59 +02:00
Catrope
92ee2e4964 Merge "Introduced the concept of raw ResourceLoader modules" 2012-05-17 03:11:04 +00:00
Aaron Schulz
1abcd5e30e [FileBackend] Improved connection error handling and logging a bit for Swift.
Change-Id: I9a128bc5027cba85b1cf4992434d697215b3277f
2012-05-16 18:51:38 -07:00
Reedy
5b4e4a06c7 Merge "add since tags" 2012-05-16 23:48:49 +00:00
Aaron
4b0a61227f [Upload] Added various profiling calls to upload code.
Change-Id: Ib13be24393eee05e3af4a942a1c8cdcf590b0da9
2012-05-16 16:44:48 -07:00
Aaron Schulz
edf417c8e1 Merge "prop=revisions: join user table to get user name" 2012-05-16 22:20:49 +00:00
Aaron Schulz
6e96a6e8e6 Merge "Add DebugInfos to api result" 2012-05-16 22:17:17 +00:00
Reedy
50661be3dc Merge "Renamed new BagOStuff getBatch() function to getMulti() for consistency." 2012-05-16 20:17:34 +00:00
umherirrender
7b8e963c88 empty string test for old page_restricions entries
some old page_restricions entries are move=:edit=,
which result in any empty string as level in the JS var
wgRestrictionEdit

Checking wgRestrictionEdit.length is than not possible

Change-Id: I250b4f9bda60361d4cd8c3139b17b299fec0a718
2012-05-16 21:14:40 +02:00
Aaron
86e2372772 Fixed call to setArticleBodyOnly() on wrong object type.
Change-Id: I492bbdb41aa849a86b162c7cc659dde391874454
2012-05-16 11:15:00 -07:00
Aaron
957f09b8a4 [FileBackend] Added doQuickOperations() function for things like purging thumbnails.
* doQuickOperations() lets us do things like purge thumbnails as fast as possible.
  Stat calls, SHA1 checks, and RTTs in general are avoided. It also avoids the
  slowness of lazy population of thumbnail SHA1s in Swift (for those made by rewrite.py).
* Removed supportedOperations() to avoid the extra complexity.
* Made a few variable type and exception documentation cleanups.
* Cleaned up unit test file removal a bit and made some functions private.

Change-Id: I6922368c6af7752a6927d96402519132203108a1
2012-05-16 10:30:34 -07:00
umherirrender
278bb4414f multi dbms support in api
Add some calls to Database::timestamp
Change some calls from Database::strencode to
Database::addQuotes to avoid ' in raw sql
Remove ' from ints in raw sql
Rename some vars to avoid duplicate names

Change-Id: I63f5602fa968f969a42932902a3ccc45fc54b432
2012-05-16 19:22:36 +02:00
jeroendedauw
6e9ca6e285 add since tags
Change-Id: I4601600f3d0de79c34f5a1a4074384b27f57b005
2012-05-16 18:27:17 +02:00
umherirrender
0ea2c38727 Fill GenderCache inside ApiPageSet
the queries for title and pageids are own queries created by the api,
which does not use the GenderCache, that can produce a query per row

Change-Id: I932f8d9d1cfa751dbb6f5237e2de325527d3ff53
2012-05-16 16:46:22 +02:00
umherirrender
a5e50e8b2f prop=revisions: join user table to get user name
this avoid a lazy load of the user name for each row

Change-Id: I5d8983476e03cc2f6dad074577402f5255080838
2012-05-16 16:38:40 +02:00
Reedy
aab0f8bc6f Merge "Add includes/zhtable/.gitignore to avoid data files to be committed." 2012-05-16 02:10:29 +00:00
Reedy
8f7fb6cffa Merge "[FileBackend] Avoid infinite loops when populating missing metadata in Swift." 2012-05-16 01:51:34 +00:00
Max Semenik
cd7923ac16 Introduced the concept of raw ResourceLoader modules
This is needed for mobile scripts that are supposed to work on dumb
devices and as such can't rely on client-side RL, but still can take
advantage of server-side minification and concatenation.

Patchset 2: Allow loading raw modules with &raw=true appended to URL.

Change-Id: I9410ffbf6633075e07bd06b10a98a4d12d9b6106
2012-05-16 01:03:12 +04:00
Aaron
634c3be2bb [FileBackend] Avoid infinite loops when populating missing metadata in Swift.
Change-Id: Ief13048256ee11caf3494d934eb5267f5eb71e8b
2012-05-15 13:05:46 -07:00
Reedy
df7b1cc716 Merge "[IP] Added an IP::prettifyIP() function for displaying IPs." 2012-05-15 19:10:51 +00:00
Aaron Schulz
6117b89f11 Merge "Various fixes to Special:Mostcategories." 2012-05-15 09:16:59 +00:00
Aaron Schulz
6a460ed446 Renamed new BagOStuff getBatch() function to getMulti() for consistency.
Change-Id: Icfe673919f65192565aa114c165c90d97d33785a
2012-05-15 01:48:22 -07:00
Aaron Schulz
e0f61b56b8 Merge "Don't log HttpError" 2012-05-15 08:45:04 +00:00
Aaron Schulz
cb559873da Merge "Minor PECL client fixes" 2012-05-15 08:38:54 +00:00
Tim Starling
e2aa8b4978 Don't log HttpError
Fix for r97314: don't log HttpError exceptions to the exception log channel. Do
this by overriding MWException::report() rather than
MWException::reportHTML(), same as every other child class in
Exception.php.

Change-Id: I3fb2b0ca9b0e7c67c210078d1fd90e1430be39df
2012-05-15 15:04:40 +10:00
Tim Starling
d3fd5db207 Minor PECL client fixes
* Fixed the check for igbinary presence. It's not enough for the
  extension to be loaded, the memcached extension also needs to be
  compiled with --enable-memcached-igbinary.
* When delete() is attempted on a key that doesn't exist, return true,
  as in the other BagOStuff implementations.

Change-Id: I298952f4a9925d860fa5673f632d073b1f20aa47
2012-05-15 14:13:58 +10:00
Tim Starling
cf11d9d95b Merge "Reduced contention slam potential in User::invalidateCache()." 2012-05-15 01:37:03 +00:00
Aaron
059823dae6 [FileBackend] Removed likely surperflous memcached retry code.
Change-Id: I934cd658d14c051f99f72d7e37e12f8646e59458
2012-05-14 18:26:56 -07:00
Aaron Schulz
a0aa7557fe Merge "Add/update function level parameter documentation" 2012-05-15 01:09:37 +00:00
Aaron Schulz
ba7a5f70f4 Merge "Implemented a wrapper for the memcached PECL client" 2012-05-15 01:07:05 +00:00
Tim Starling
3c62077fe2 Implemented a wrapper for the memcached PECL client
* Introduced a common base class for the two memcached clients, called
  MemcachedBagOStuff.
* Moved the expiry time normalisation from MemcachedClient.php to
  MemcachedBagOStuff since libmemcached needs the same workaround.

Change-Id: I507d4ec5a7fd863ae64a94f2c453981f9f03746c
2012-05-15 10:19:41 +10:00
Reedy
2df7fae395 Add/update function level parameter documentation
Change-Id: I148b84e3b81c29c63585f3bf524fc445fd7683a7
2012-05-15 00:44:25 +01:00
Reedy
2a1fa50eae Merge "Added missing GPLv2 headers in some places." 2012-05-14 23:38:10 +00:00
Aaron
908b4d4340 [FileBackend] Added CDN support to Swift for third-party sites.
Change-Id: I220ab8cf8fd97d3a080b8dcc8f010d97fcc09671
2012-05-14 16:10:11 -07:00
Aaron Schulz
348767cae2 Merge "Adding NamespaceIsMovable hook to isMovable in MWNamespace, much like done in Title::isMovable." 2012-05-14 22:23:46 +00:00
Aaron Schulz
060ba3cb68 Merge "Generalizing LinksUpdate to allow extensions to add arbitrary update handlers." 2012-05-14 22:20:04 +00:00
Aaron Schulz
d1f8301e62 Merge "GROUP BY and ORDER BY supports arrays in Database class" 2012-05-14 22:17:01 +00:00
Aaron Schulz
adedb66279 [FileBackend] Added getScopedLocksForOps() function.
This lets callers safely change files *and* update DB data.

Change-Id: I6ec70e98b1535528b756e109b8b28e4a3e839552
2012-05-14 13:11:12 -07:00
Alexandre Emsenhuber
15e9fcca01 Added missing GPLv2 headers in some places.
Also made file/class documentation more consistent.

Change-Id: Iaebd4e253ff3b35b568e9b394231a5691445ac95
2012-05-14 19:59:58 +02:00
Mark A. Hershberger
843738b4cd Bug 36785 Special:Shortpages lists only NS_MAIN pages. (pages from all $wgContentNamespaces should be listed)
Change-Id: I9d7307ae22745e7aa640ed611ea64f76e2507651
2012-05-14 13:11:48 -04:00
Tim Starling
50927f376b Merge "Fix typo in comment" 2012-05-14 07:25:13 +00:00
Tim Starling
2734ef7497 Fix typo in comment
Change-Id: I67d040cb9e4ed450b5487fcc4e5b4cdf857b8552
2012-05-14 17:23:47 +10:00
Tim Starling
6e49b1a966 Merge "[FileBackend] Added support for concurrent file write operations." 2012-05-14 07:23:29 +00:00
Nikerabbit
f43939a433 Merge "Use local context to get messages and time formatting methods of Language class" 2012-05-14 06:28:20 +00:00
Catrope
87e6aaf9bf Make the private-logs-UDP code path in saveContent() also return $newId
This was an oversight in a69fb48274 which
changed saveContent() (and, by extension, addEntry()) to return a log_id
rather than a boolean.

Also update the documentation comments to reflect this, and remove a
resolved TODO

Change-Id: I8fe269f452f8c8d4fa0318c120b676ac10efebae
2012-05-13 14:47:19 -07:00
daniel
a12ce17c6e Generalizing LinksUpdate to allow extensions to add arbitrary update handlers.
This supercedes I6d03bf2a, using better names for the new classes and
incorporating the changes requested by Aaron.

This change introduces the base class SecondaryDataUpdate to be used for any
updates that need to be applied when a page is changed or deleted. Until now,
this was done by the LinksUpdate class for updates and WikiPage::doDeletionUpdates
upon deletion. This patch uses a list of SecondaryDataUpdates in both cases.

This allows extensions (e.g. via the ContentHandler facility, once that is in) to
easily specify what needs to be done when a page is updated or deleted in order to
keep any secondary data stores (such as link tables) in sync.

Note that limited transactional logic is also introduced, so SecondaryDataUpdate
can be implemented to only commit their changes if all updates were performed
sucessfully.

Patch Set 2: fixing some coding style issues mentioned by Nikerabbit.

Patch Set 4: some stuff I kept from the old LinksUpdate class needs cleanup,
             but might break extensions when changed. Marking as todo for now.

Patch Set 5: fixed misnamed member in LinksDeletionUpdate (thanks Aaron).

Change-Id: Ibe3e88fadd8c1d4063cf13bb6972f2a23569a73f
2012-05-13 20:53:37 +02:00
umherirrender
0a5e1bf76a Add DebugInfos to api result
This allow to get the queries of the api due the same api request,
when setting $wgDebugToolbar = true, that acts like the inline script
added to index.php

Change-Id: I7c121822827137ba098d95a54ec90f824e0ddf01
2012-05-13 11:20:04 +02:00
umherirrender
41988661e4 GROUP BY and ORDER BY supports arrays in Database class
Change-Id: Ib431b07ffa2ce6843e21536de2ff19c648e0a595
2012-05-13 00:06:48 +02:00
robin
84b8ca9801 Remove extra unneeded whitespace
This whitespaces causes an extra empty paragraph between text and transcluding a special page.
When a heading precedes a transcluded special page, there is no difference and it's fine with or without this whitespace.

See for example http://incubator.wikimedia.org/w/index.php?title=Incubator:Sandbox&oldid=822299

Change-Id: I6b06006d921368619d3969660c244176344e8aff
2012-05-12 23:37:50 +02:00
Alexandre Emsenhuber
aa6ba56bf4 Use local context to get messages and time formatting methods of Language class
Also pass the context to the LogFormatter instance.

Change-Id: I30d88822d8ede5c138dd5403a998dd722f950bbe
2012-05-12 23:27:22 +02:00
Alexandre Emsenhuber
a682b7335a Added missing GPLv2 headers in some places.
Also made file/class documentation more consistent.

Change-Id: I0db3461139284edcb6ac02923eb83d54e6756ffb
2012-05-12 22:33:51 +02:00
Aaron Schulz
aefa39ead9 Merge "Add maxresults to list=querypage" 2012-05-12 17:13:35 +00:00
Aaron Schulz
53d7092ab4 Merge "ApiPageSet::populateFromTitles can work with Titles" 2012-05-12 17:13:03 +00:00
Aaron Schulz
d3ace7bdc3 Merge "set tidy = true for action=purge&forcelinkupdate=" 2012-05-12 17:09:08 +00:00
umherirrender
94395dcdd3 Add maxresults to list=querypage
Change-Id: I96e12428305d86c623e810d58f3f3173906f42e1
2012-05-12 17:11:47 +02:00
umherirrender
e552ca3dca ApiPageSet::populateFromTitles can work with Titles
Change-Id: I492c350cbb487c1a35bc96c7bcf5f0af9a9d530c
2012-05-12 17:02:53 +02:00
umherirrender
223abdc2ca set tidy = true for action=purge&forcelinkupdate=
Change-Id: Ibf17c312193629b64c3d5184b8fb26387862dd0d
2012-05-12 15:56:31 +02:00
Liangent
0803cf2d65 Update Chinese conversion table: 海淀山後
Change-Id: Iae9c711ff66a2694c5f1e120fd84e602ca7ceb21
2012-05-12 21:48:58 +08:00
Liangent
ebc43af0f4 Add includes/zhtable/.gitignore to avoid data files to be committed.
Change-Id: I7ac9cd01d4eac5357278e0fd50d7d728d3107def
2012-05-12 21:15:00 +08:00
Aaron Schulz
3a8c2e47f7 Merge "Add username as parameter for gender support" 2012-05-12 01:41:26 +00:00
robin
4909deab93 Add username as parameter for gender support
Change-Id: I66ec154e6d62172321f983f6898fa074d53e0e23
2012-05-12 03:25:29 +02:00
Reedy
c68ca4228e Merge "Integrating mobile device detection class into MW core" 2012-05-11 22:50:35 +00:00
Aaron Schulz
50adb91fee Merge "add Interwiki::selectFields" 2012-05-11 22:33:58 +00:00
Aaron Schulz
4104f10fe0 Merge "Add unit test for MWNamespace::isNonincludable" 2012-05-11 22:32:54 +00:00
Aaron Schulz
270b13df54 Merge "Add user talk page in newusers log to LinkBatch" 2012-05-11 22:31:15 +00:00
Aaron
8ffaa46662 Reduced contention slam potential in User::invalidateCache().
Change-Id: If40f368072d97e244295522003fbaa9c082f8f7c
2012-05-11 15:18:14 -07:00
Alexandre Emsenhuber
a06b79ab53 Use local context to get messages.
Also added "false, false" to Language::time() and Language::date() calls in Special:Lockdb, this is to have the date using the default format and not in the format of the user locking the database.

Change-Id: I9309022b005fcc7d31350242b8989ca7eabf69a8
2012-05-11 22:22:06 +02:00
umherirrender
38a2cd320a add Interwiki::selectFields
to avoid * inside select

Change-Id: I9d0ac631d9389744f68d744fa1d3fa3e3866a956
2012-05-11 22:16:19 +02:00
umherirrender
d6c651f608 Add user talk page in newusers log to LinkBatch
Using NewUsersLogFormatter::getPreloadTitles for that

Change-Id: Ib3bede90e33c3d240aad5950247d52d732d8876b
2012-05-11 21:27:40 +02:00
Aaron
456177bdee [IP] Added an IP::prettifyIP() function for displaying IPs.
Change-Id: I53b3fe70bd0091ef02740f2b8950c36a0e4cf32e
2012-05-11 10:53:14 -07:00
umherirrender
e9fa97f76e Add unit test for MWNamespace::isNonincludable
rename MWNamespace::isNonincludableNamespace
to MWNamespace::isNonincludable, because "Namespace" is already in the
class name

Change-Id: Ie982835c7dc84cb10c823996e5360cc1b342f704
2012-05-11 19:52:34 +02:00
Nikola Smolenski
b5153c2532 Set $wgLanguageConverterCacheType to CACHE_NONE in installer
Change-Id: I03ddd59fe7758032b3faa401ff1b0fa3b459e723
2012-05-11 19:13:13 +02:00
jeroendedauw
94fc70a48c exclude immovable namespaces from the namespace selector on Special:MovePage
Change-Id: Icd5645921e95bfd4b3a04c40d4b9bba3600d2f07
2012-05-11 16:32:52 +02:00
jeroendedauw
717e93bd81 Adding NamespaceIsMovable hook to isMovable in MWNamespace, much like done in Title::isMovable.
Change-Id: I72c19be541391857aa25ff2433c017e5d63a8ecd
2012-05-11 16:13:30 +02:00
Demon
f950f4b39f Merge "Added missing GPLv2 headers in some places." 2012-05-11 12:49:12 +00:00
Nikerabbit
03ecf97aec Merge "(bug 33928) make diff title page more relevant" 2012-05-11 09:05:44 +00:00
Alexandre Emsenhuber
d1f8640a3b Added missing GPLv2 headers in some places.
Also made file/class documentation more consistent.

Change-Id: Ia45d0756cd84138da267bf1cbd1a58be7f28c6d1
2012-05-11 10:34:29 +02:00
Aaron Schulz
ae78b076cd Merge "Parameter documentation stuffs" 2012-05-10 23:17:40 +00:00
Reedy
6885d1fd90 Parameter documentation stuffs
Change-Id: I2d9e800bf21d420fb26c130d0f271f6739c730a4
2012-05-11 00:09:58 +01:00
Aaron Schulz
d0bdc038e8 Merge "Revert r97711" 2012-05-10 23:00:50 +00:00
Catrope
f3b8e30521 Merge "[SiteStatsUpdate] Reduced contention by using a new lockIsFree() DB function." 2012-05-10 22:52:23 +00:00
Aaron
ff187ea7cc [SiteStatsUpdate] Reduced contention by using a new lockIsFree() DB function.
* Note: follows up a4b3979160
* Cleanup up transaction statements a bit; transactions don't effect the lock calls
* Also made DatabaseMysql::unlock() actually return a bool

Change-Id: Iade2efa94165b6918eae0863716cc163f36a07b8
2012-05-10 15:48:58 -07:00
Catrope
78ead2330b Merge "Add support for User:0 in 'user' and 'user.groups' RL modules." 2012-05-10 22:42:03 +00:00
Catrope
4a75357363 Merge "[SiteStatsUpdate] Added support for memcached staging of stats updates." 2012-05-10 22:23:14 +00:00
Aaron
a4b3979160 [SiteStatsUpdate] Added support for memcached staging of stats updates.
Change-Id: I0bfdd6a4c9b8b09355bf008bd97456401f8b485b
2012-05-10 15:19:43 -07:00
Alexandre Emsenhuber
0697701232 Various fixes to Special:Mostlinked.
* Show descriptive error message on invalid title
* Call methods directly on ResultWrapper instead of DatabaseBase

Change-Id: Ia437e73546ce664395f07c4a10bad6f04fcfb5d7
2012-05-10 21:57:22 +02:00
Catrope
b1e0daa428 Make errors from ArticleSave hooks propagate to the interface
Aborting a save from the ArticleSave hook and putting an error in
$status didn't actually propagate the error message to the user, but
instead displayed the edit conflict page (!). Fix this so that if we get
an unrecognized error from ArticleSave, we treat it as an extension
error and render it rather than going into conflict mode.

Similarly, make the API attempt to render the error through
dieUsageMsg() like it already does for AS_END

Change-Id: Iccf78480240d0c7ed321438c8190472805957099
2012-05-10 12:10:25 -07:00
Reedy
c87a63935a Merge "(bug 19195) Make user IDs more readily available with the API" 2012-05-10 18:47:42 +00:00
Petr Onderka
7264a75515 Fixed typo in description in categorymembers module
Change-Id: I7d82df6a4b0f65fe763e0eea23dfa05ae2e7c5f1
2012-05-10 20:36:34 +02:00
Szymon Świerkosz
bde989e74c Add support for User:0 in 'user' and 'user.groups' RL modules.
Change-Id: I290e44166306036629ada990e233f098558c2aea
2012-05-10 20:12:13 +02:00
Aaron Schulz
eec6d86af3 Merge "Use local context to get messages" 2012-05-10 18:11:02 +00:00
Aaron Schulz
afb23b2ad3 Merge "Fix typo in comments, rm debugging code" 2012-05-10 18:10:01 +00:00
Reedy
2705e07bfd Merge "Added missing GPLv2 headers in some places." 2012-05-10 18:09:23 +00:00
Max Semenik
aacbb6bea7 Fix typo in comments, rm debugging code
Change-Id: I1ae2e59048fbeaf1a1f279dd5bd38bd19b5a8498
2012-05-10 21:01:50 +04:00
Alexandre Emsenhuber
8138e2ab38 Use local context to get messages
Change-Id: I942ce637b53599b865f36012bd9a91f0fea63b1f
2012-05-10 17:58:38 +02:00
Alexandre Emsenhuber
bc9d9f1f9c Added missing GPLv2 headers in some places.
Also made file/class documentation more consistent and removed a duplicate comment from SpecialPageFactory.php in SpecialPage.php.

Change-Id: I99dd2de7fe461f2fad4e0bd315ebc2899958a90f
2012-05-10 17:51:44 +02:00
Kaldari
57975e257f Adding new getCreator and getOldestRevision methods to WikiPage class.
Patch 2: Adding getOldest method per comments
Patch 3: whitespace fix
Patch 4: renaming getOldest to getOldestRevision
Patch 5: separating into 3 methods: getOldestRevisionId, getOldestRevision, getCreator
Patch 6: more concise, fixing whitespace
Patch 7: return user object instead of user id
Patch 8: consolidating revision methods per discussion
Patch 9: whitespace
Patch 11: better commit summary
Patch 12: Typo, sigh
Patch 13: switching to use Revision::newFromRow per comment
Patch 14: using Revision::selectFields()
Patch 15: moving outside of while loop
Change-Id: I140e17a95b89c9263978942fd642d6a236a5cc4f
2012-05-09 20:41:16 -07:00
Aaron Schulz
f1a37c1618 Merge "Factor out module name validation into a static function" 2012-05-09 23:41:44 +00:00
Catrope
4910a61046 Factor out module name validation into a static function
Also add the requirement that module names be at most 255 bytes, so
they'll fit in the DB fields that we put module names in (md_module,
mr_resource, mrl_resource)

Change-Id: I7193c9beb7aff4eabfe20db461e6f9032ae994b1
2012-05-09 14:41:27 -07:00
awjrichards
8653accc60 Integrating mobile device detection class into MW core
Change-Id: Ic7bbeba746ea37a92c1df5dbaa1fb4fd08da130c
2012-05-09 14:28:16 -07:00
Aaron
b9ac85cbf3 [SiteStatsUpdate] Changing raw DB update calls to use SiteStatsUpdate.
* Made SiteStatsUpdate fields protected
* Added factory function for unretarded object construction
* Changed FileRepo code to use deferred stats updates like everything else

Change-Id: I93039104b14f0362509e37b6852604ffb0898dc7
2012-05-09 14:17:56 -07:00
Alexandre Emsenhuber
5c18fed079 (bug 25946) The message on the top of Special:RecentChanges is now displayed in user language instead of content language
Moved 'recentchangestext' message to 'recentchanges-summary'; left 'recentchangestext' empty by default for wikis that would like to display things in content language on the top of Special:RecentChanges

This a resubmit of r86186 (https://www.mediawiki.org/wiki/Special:Code/MediaWiki/86186) which was reverted in r86294 (https://www.mediawiki.org/wiki/Special:Code/MediaWiki/86294). The revert should have been temporary (at least from commit summary), but it seems that it was not the case.

Change-Id: Ia2061a581f754aa1bc374a615d41e8465996feac
2012-05-09 22:51:11 +02:00
Aaron Schulz
2004c44a14 Merge "Use local context to get messages" 2012-05-09 18:44:11 +00:00
Brion VIBBER
92f645b2ae Merge "[FileRepo] Purging/transaction fixes." 2012-05-09 18:37:23 +00:00
Alexandre Emsenhuber
28309ef5b4 Use local context to get messages
Change-Id: Ieb3564e5532e421b4b803ed6c327d6a75ed0103c
2012-05-09 20:18:30 +02:00
Alexandre Emsenhuber
2040d1337e Added missing GPLv2 headers in some places.
Also made file/class documentation more consistent.

Change-Id: Ib46e50da4ec649a6a06cbeed00752effb79ed06e
2012-05-09 20:11:36 +02:00
Aaron
d086fc9f6d [FileBackend] Made it easy to use registed file backend config in multi-write backends.
Change-Id: Idce8c06a56bd0debac5f2217bef89b4fe8bf5ba8
2012-05-09 10:39:32 -07:00
Timo Tijhof
5d0dae240b Revert r97711
WONTFIX:
 * (bug 30245) Use the correct way to construct a log page title.

 This was previously reverted for 1.19 and now reverting again for
 1.20, only this time proposing it not to be temporary.

 Right now this is already live on 2 wikis and as soon as it goes
 live on a non-English wiki (since English namespace name for Log
 matches the canonical name "Log", and as such causes no breakage yet
 for bots using the IRC feed), as soon as it goes live on a
 non-English wiki it will all log actions that bots are monitoring
 using the irc feed.

 (because no matter which log action is monitored, it all goes
 back to detecting the page title of Special:Log)

 If properly announced ahead of time it could be done, but we don't
 have that time anymore. Perhaps re-try in 1.21 or 1.22, but as far
 as I'm concerned, this bug can be kept WONTFIX as it only affects
 the IRC feed. And it's not worth the loss that will undoubtedly
 result from breaking this.
 Theoretically a certain amount of time for the announcement could be
 required, and if the change enables something or fixes a security
 problem, it could be justified, but for this it is just not worth
 it.

 The human-readable output from the API and on Special:Log are fully
 localized and even better so with the rewrite that Niklas did last
 year. The IRC feed however, has little to no gain from this and only
 causes breakages for the the large amount of bot usage from it, of
 which many are no longer maintained and as such will not be fixed,
 no matter how much time it is given. Granted those will probably
 break no matter what at some point, but hopefully we will have
 push notification *with* structured data[2] by that time to
 encourage rewrites of those bots.

Change-Id: I229e345c74b10f4d96b8d2d305b4a7623825b3f6
Links:
 * https://www.mediawiki.org/wiki/Special:Code/MediaWiki/97711
 * https://www.mediawiki.org/wiki/Requests_for_comment/Structured_data_push_notification_support_for_recent_changes
2012-05-09 16:45:39 +02:00
Aaron
23a0490b78 [FileBackend] Added support for concurrent file write operations.
* FS backends work via popen() and basic shell commands.
* Swift backends use the custom SwiftCloudFiles async features.
* Refactored storagePathsRead()/storagePathsChanged() to normalize the paths
  for correct dependency detection in FileOpBatch.
* Cleaned up SwiftFileBackend exception handling to make debugging easier.
* Added a quick and dirty performance testing script.
* Updated unit tests to include a run with parallelize=implicit.
* Improved file test failure output a bit.

Change-Id: I6a5ed743c30c598e0dd7301dbdb3631c460332fd
2012-05-09 05:37:41 -07:00
Alexandre Emsenhuber
12ddff3005 Various fixes to Special:Mostcategories.
* Show descriptive error message on invalid title
* Don't check for page existence if the query is not cached, since the page must exist to be listed here
* Do a LinkBatch if the query is cached, otherwise we end up with on database query per displayed row

Change-Id: Ia10d0e7d69def0ee1f42727124518bc6f6335dda
2012-05-09 09:56:56 +02:00
Krinkle
0c9a4522cc Merge "HTTP: Fix ded6170bd2, which broke all HTTP calls." 2012-05-09 06:39:09 +00:00
Aaron
e4f0c1f57b HTTP: Fix ded6170bd2, which broke all HTTP calls.
* respHeaders contains arrays for each header (should've been
  respHeaders['content-length'][0] instead of respHeaders['content-length'])
  using getResponseHeader() instead.
* This also fixes InstantCommons, which was broken by this (bug 36653).
* Also cleaned up a bit of w/s in foreign repo code while in the area.

Change-Id: I429b0a36618cc2b873077516e9c1023dc5b7d693
2012-05-09 08:35:14 +02:00
Timo Tijhof
2100e3e591 Merge "(bug 36669) Installer CSS outdated" 2012-05-09 06:09:42 +00:00
Aaron
fa1a8d5119 [FileRepo] Purging/transaction fixes.
* Purge old version thumbnails on move
* Pushed purge operations outside of the DB transaction for move/delete

Change-Id: I260940149599eea814226d3c5b7092f4d6544a72
2012-05-08 17:29:39 -07:00
Timo Tijhof
6540260001 (bug 36669) Installer CSS outdated
Change-Id: I7ac606f2e8538eb5fd10a3944cf9d8b42bbc5ed5
2012-05-09 02:20:03 +02:00
Aaron Schulz
7f04814796 Merge changes Ic19071c7,Icc8dc4ae
* changes:
  Message documentation for Icc8dc4ae (circular references in strip tags)
  (bug 35315) Detect circular references in strip tags
2012-05-08 22:54:59 +00:00
Platonides
2af392378d Typo in comment
Change-Id: Ic5e1451f86d7bcda374fd12b5a9b85fe199a7c1a
2012-05-08 23:27:21 +02:00
Brion VIBBER
d0d2c9bb49 Merge "Show descriptive error message on invalid title instead of showing an empty line" 2012-05-08 20:47:59 +00:00
Brion VIBBER
78a58988d4 Merge "Optimized SqlBagOStuff::getBatch() a bit." 2012-05-08 20:30:55 +00:00