Gergő Tisza [Fri, 5 Aug 2016 22:50:11 +0000 (22:50 +0000)]
Revert "API: Remove deprecated response values from action=login"
Revert commit
23e5cdb5034dca5bbdfc2ac9c111c5fac20ff579
temporarily so Pywikibot users can catch up with API changes
Bug: T121527
Bug: T142155
Change-Id: I3879a5d76a1727dd653daeebc79d4d9cabd0332e
Brad Jorsch [Wed, 27 Jul 2016 15:50:33 +0000 (11:50 -0400)]
API: Remove deprecated response values from action=login
Bug: T121527
Change-Id: Ie370d6dc5a922ad9c50758ba81b98aa8492f83cb
jenkins-bot [Wed, 27 Jul 2016 14:54:48 +0000 (14:54 +0000)]
Merge "Adding support for numeric collation when using UCA collations"
jenkins-bot [Wed, 27 Jul 2016 09:18:33 +0000 (09:18 +0000)]
Merge "Push common search api parameters into SearchApi class"
Aaron Schulz [Wed, 27 Jul 2016 01:44:41 +0000 (18:44 -0700)]
Remove web-request usages of deadlockLoop()
Add comment discouraging use of the method. There are no problems
with deadlocks/timeouts in these code paths according to WMF logs.
Change-Id: I5b21cc423df584efa881361063000e01932cc2ea
jenkins-bot [Wed, 27 Jul 2016 00:47:03 +0000 (00:47 +0000)]
Merge "Make revision deletion acquire file locks to avoid races"
jenkins-bot [Wed, 27 Jul 2016 00:46:59 +0000 (00:46 +0000)]
Merge "Make onTransactionIdle() safer for multi-DB commits"
jenkins-bot [Wed, 27 Jul 2016 00:37:23 +0000 (00:37 +0000)]
Merge "Only pretty-print the parser report JS vars"
Kaldari [Fri, 15 Jul 2016 03:47:52 +0000 (20:47 -0700)]
Adding support for numeric collation when using UCA collations
To use, add '-u-kn' to the end of a collation name and set it as
the value for $wgCategoryCollation.
Bug: T8948
Change-Id: Ica7908daf80624fa2648127114d01665e96234c0
Aaron Schulz [Tue, 26 Jul 2016 20:29:17 +0000 (13:29 -0700)]
Only pretty-print the parser report JS vars
Follow-up to
b7c4c8717f9.
Change-Id: I3030df4ed890d9d20daca31fbd33c6d9db91b94c
Aaron Schulz [Thu, 21 Jul 2016 17:33:26 +0000 (10:33 -0700)]
Make revision deletion acquire file locks to avoid races
Also made RevisionListBase an Iterator to avoid ugly loops here
Change-Id: I40d2d8cf63df95c59d0e1275e3ec45aff238e1cb
Aaron Schulz [Sat, 23 Jul 2016 05:37:13 +0000 (22:37 -0700)]
Make onTransactionIdle() safer for multi-DB commits
* For DBs managed by LBFactory, they will trigger after the COMMIT
step finishes for all DBs.
* Make commitAll() respect the same logic as commitMasterChanges().
* Add LoadBalancer::forEachOpenMasterConnection() convenience method.
* Rename logMultiDbTransaction() to less confusing logIfMultiDbTransaction().
* Various other small code cleanups.
Change-Id: I6c9b40ba8b9e7600cce774f26b9c401e60fa8803
jenkins-bot [Tue, 26 Jul 2016 21:47:57 +0000 (21:47 +0000)]
Merge "Add comment to ChangesList::showCharacterDifference"
Aaron Schulz [Tue, 26 Jul 2016 02:39:26 +0000 (19:39 -0700)]
Clean up forEachOpenConnection() loop and use the method more
Change-Id: I431b68c763970101804e09ea6634480e1ba79cda
Translation updater bot [Tue, 26 Jul 2016 20:21:21 +0000 (22:21 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I288d171b23b6376328c90c95409801c76147acf1
Aaron Schulz [Mon, 18 Jul 2016 19:52:10 +0000 (12:52 -0700)]
Move NewPP limit report HTML comments to JS variables
* Instead of having messy code to create a hidden HTML
comment of English strings at the bottom of the page,
expose the structured data of the parse information
to JS so tools can use it.
* Make makeConfigSetScript() use pretty output so these
variables are also easy to read in "view source".
* Remove ParserLimitReportFormat hook, since the data
is not formatted to HTML anymore.
Bug: T110763
Change-Id: I2783c46c6d80f828f9ecf5e71fc8f35910454582
Erik Bernhardson [Thu, 2 Jun 2016 20:32:59 +0000 (13:32 -0700)]
Push common search api parameters into SearchApi class
We have a number of parameters that are pretty much the same between
these different search api's. Lets make them actually the same by
sharing the definitions, and then letting individual classes tweak them
as needed by removing the offset, or adjusting the max limits as
necessary.
Change-Id: I6f987db8ecb63dc943b4d2518bfe3703c677448e
jenkins-bot [Tue, 26 Jul 2016 15:22:12 +0000 (15:22 +0000)]
Merge "Don't magically make MediaWiki\Widget classes infusable"
Kunal Mehta [Tue, 12 Jul 2016 22:26:53 +0000 (15:26 -0700)]
Mark Linker::link() as @deprecated
...and add a link to the on-wiki LinkRenderer documentation to the
class. Actual wfDeprecated and replacements in all the uses to come in
follow-up patches.
Change-Id: I2fefb6c38153028d2cc68c13bc62434d3df69cd2
jenkins-bot [Tue, 26 Jul 2016 12:34:18 +0000 (12:34 +0000)]
Merge "Apply $wgMaxArticleSize more exactly"
jenkins-bot [Tue, 26 Jul 2016 12:33:54 +0000 (12:33 +0000)]
Merge "API: Use rev_user when possible for list=usercontribs"
jenkins-bot [Tue, 26 Jul 2016 12:30:21 +0000 (12:30 +0000)]
Merge "Make importTextFiles.php work with wildcards on the Windows shell"
jenkins-bot [Tue, 26 Jul 2016 12:26:39 +0000 (12:26 +0000)]
Merge "WebRequest::getText(): Update more of the doc comment"
jenkins-bot [Tue, 26 Jul 2016 12:23:43 +0000 (12:23 +0000)]
Merge "mediawiki.htmlform: Remove deprecated $.fn.liveAndTestAtStart"
jenkins-bot [Tue, 26 Jul 2016 12:20:25 +0000 (12:20 +0000)]
Merge "syncFileBackend.php: ellapsed => elapsed"
jenkins-bot [Tue, 26 Jul 2016 12:16:09 +0000 (12:16 +0000)]
Merge "SectionProfiler: Remove $profileOutCallback"
jenkins-bot [Tue, 26 Jul 2016 12:15:22 +0000 (12:15 +0000)]
Merge "Remove modulemessages from ApiParse and Output (deprecated in 1.26)"
jenkins-bot [Tue, 26 Jul 2016 12:10:37 +0000 (12:10 +0000)]
Merge "Add MWTidy::factory()"
Bartosz Dziewoński [Tue, 26 Jul 2016 11:56:47 +0000 (13:56 +0200)]
Don't magically make MediaWiki\Widget classes infusable
For consistency with how normal OOjs UI widgets behave.
Only one usage outside of HTMLForm needed updating. There
are no usages in extensions in Gerrit.
Change-Id: I9b5de86307a13ca7355b7541e8683e4d6a10431f
addshore [Thu, 14 Jul 2016 12:48:10 +0000 (13:48 +0100)]
Remove unused deprecated WatchedItem methods
Not used in core or in any extensions on Gerrit
Change-Id: I10f0e98f52189f60480f5adb824a5cca9820d5f5
Aaron Schulz [Tue, 26 Jul 2016 10:42:57 +0000 (03:42 -0700)]
Renamed MWCallableUpdate class file to match the class
Change-Id: Ia595cee94a696b83b00fe9f2a91b49bce51c08dd
Tim Starling [Tue, 26 Jul 2016 05:10:42 +0000 (15:10 +1000)]
Add MWTidy::factory()
A convenient factory function to eliminate code duplication in
ParserMigration's MigrationEditPage::tidyParserOutput().
Change-Id: I058912885025e7a9402912236c65c44e32ef036e
jenkins-bot [Tue, 26 Jul 2016 00:52:16 +0000 (00:52 +0000)]
Merge "Convert onTransactionIdle() callers to DeferredUpdate subclasses"
Kunal Mehta [Tue, 26 Jul 2016 00:27:24 +0000 (17:27 -0700)]
MediaHandler: Fix @return for getHandler()
Change-Id: I9373501e0055d0cddcb6c5bf72f5496ed22133c3
Aaron Schulz [Thu, 21 Jul 2016 19:43:26 +0000 (12:43 -0700)]
Convert onTransactionIdle() callers to DeferredUpdate subclasses
* This puts the complex logic here after the commit step for
all DBs, making the main multi-DB transaction more likely
to be atomic. Previously, the idle callbacks could be hit
bewteen DB commits.
* Enforce transactionality via AtomicSectionUpdate.
* Use $this instead of $that hacks for old PHP versions.
Change-Id: Idf7d54fdac6487f86907099680f5c1c4f5530b4e
jenkins-bot [Mon, 25 Jul 2016 23:42:05 +0000 (23:42 +0000)]
Merge "Update justinrainbow/json-schema in require-dev to ~1.6"
Timo Tijhof [Mon, 25 Jul 2016 20:51:57 +0000 (21:51 +0100)]
Remove modulemessages from ApiParse and Output (deprecated in 1.26)
No uses of 'modulemessages', getModuleMessages() or addModuleMessages()
anywhere in Wikimedia Git.
Change-Id: I59420880f3545d1aabf9bcbea1e34b1475697d26
jenkins-bot [Mon, 25 Jul 2016 22:59:17 +0000 (22:59 +0000)]
Merge "Avoid use of DB rollback() in LocalFileMoveBatch"
Kunal Mehta [Mon, 25 Jul 2016 22:36:12 +0000 (15:36 -0700)]
registration: Fix "config" schema validation
The "properties" field is only interpreted if the value is an object,
which was not being required. Add that missing type in, so
manifest_version 1 type config entries should fail.
Bug: T141289
Change-Id: Iffb084eb7a81a398a74370a1f9561198a88f5779
Aaron Schulz [Thu, 21 Jul 2016 06:17:25 +0000 (23:17 -0700)]
Avoid use of DB rollback() in LocalFileMoveBatch
* Verify the DB updates and bail before doing anything instead
of relying on rollback() if something does not match up.
* Do the file copying before updating the DB so that there is
nothing to rollback if they fail.
* Improved failCount in case the current version is missing.
It should also reflect all the missing old versions.
Change-Id: Ie2d316548d8e5584cc69bb9f1425db108b05be5c
addshore [Thu, 14 Jul 2016 15:23:14 +0000 (16:23 +0100)]
Count edit conflicts for each namespace separately
Bug: T140368
Change-Id: I5591f53063db32b2c74a2f74751d4af0ef5424d7
Florian [Sun, 3 Jul 2016 12:05:42 +0000 (14:05 +0200)]
Add addition of 'maxarticlesize' in ApiQuerySiteinfo to RELEASE-NOTES
Follows-up I25a4c1b9013f98e5b0a263a637c8b006dccfd5ad.
Change-Id: If3ffa6635e18e53a642ebaa0b93c4c265612299f
jenkins-bot [Mon, 25 Jul 2016 20:31:00 +0000 (20:31 +0000)]
Merge "Make onTransactionPreCommitOrIdle() atomic when immediate"
Translation updater bot [Mon, 25 Jul 2016 19:58:15 +0000 (21:58 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Iea286077578232c907a4bddf4516c3fe9994397f
jenkins-bot [Mon, 25 Jul 2016 19:42:18 +0000 (19:42 +0000)]
Merge "objectcache: Disable RedisBagOStuff constructor in unit test"
Aaron Schulz [Sun, 24 Jul 2016 18:22:59 +0000 (11:22 -0700)]
Make onTransactionPreCommitOrIdle() atomic when immediate
One of the main uses of this method is to tack on some DB
updates to the end of atomic transactions to reduce lock
contention problems. In this case, multiple updates in the
callback are atomic. However, if no transaction is active,
then such updates were previously not atomic. Wrap them in
transactions now.
Change-Id: I18c56e65063a61000c4dfd1979bf972800b173ac
jenkins-bot [Mon, 25 Jul 2016 18:47:44 +0000 (18:47 +0000)]
Merge "objectcache: Add callable doc comments for WANObjectCache"
Aaron Schulz [Mon, 25 Jul 2016 05:33:06 +0000 (22:33 -0700)]
objectcache: Add callable doc comments for WANObjectCache
Change-Id: I28a705ae12e065dc8a3921e33c873f9a7fbb7490
Reedy [Mon, 25 Jul 2016 16:36:35 +0000 (17:36 +0100)]
MW_DIFF_VERSION is globally defined, drop MW_ prefix when used as
the class constant
Bug: T141272
Change-Id: I0a9e9037b2259515df6366184cc781ecb78f424c
Timo Tijhof [Mon, 25 Jul 2016 15:53:03 +0000 (16:53 +0100)]
objectcache: Disable RedisBagOStuff constructor in unit test
Follows-up
c4e698dc2. The tests are failing on Travis CI because
php5-redis isn't installed by default. These tests shouldn't need
that to be installed (and even then, we should skip gracefully as
it is an optional dependency).
> RedisBagOStuffTest::testUnserialize with data set #0
> Exception: RedisConnectionPool requires a Redis client library.
> ./mediawiki/includes/clientpool/RedisConnectionPool.php:86
Fixed by using a mock and disabling the original constructor.
Change-Id: Icced7c30a75516c2118489ad29eac2aa5cff80ad
Kevin Israel [Mon, 25 Jul 2016 02:55:20 +0000 (22:55 -0400)]
syncFileBackend.php: ellapsed => elapsed
As in
c099155a17d26f03 for copyFileBackend.php.
Change-Id: Ifbc0673ee092f782de654eeca636d3b1ec061ae7
jenkins-bot [Mon, 25 Jul 2016 14:25:19 +0000 (14:25 +0000)]
Merge "Revert "mediawiki.special.userlogin.signup: Remove unnecessary field hiding code""
Bartosz Dziewoński [Mon, 25 Jul 2016 13:55:20 +0000 (13:55 +0000)]
Revert "mediawiki.special.userlogin.signup: Remove unnecessary field hiding code"
Whoops, we actually still have the option to bring back the old
custom HTML login forms ($wgDisableAuthManager). Too early.
This reverts commit
23e5bcb767c57d3a3f90b9fc597b87c8706a4027.
Change-Id: Ifb3ab1bf27ba2190177b65f5442dde74d20140e9
Kevin Israel [Mon, 25 Jul 2016 03:02:49 +0000 (23:02 -0400)]
SectionProfiler: Remove $profileOutCallback
Unused since
626aede99bf83733.
Change-Id: I12c0d7900cd81d8b33b1a5a8dbe866ddd9664083
jenkins-bot [Mon, 25 Jul 2016 11:17:43 +0000 (11:17 +0000)]
Merge "mediawiki.special.userlogin.signup: Remove unnecessary field hiding code"
Bartosz Dziewoński [Mon, 25 Jul 2016 11:07:57 +0000 (13:07 +0200)]
mediawiki.htmlform: Remove deprecated $.fn.liveAndTestAtStart
I don't think anybody ever used it anywhere outside of this file.
Change-Id: I19ad0e81c0cb262a03fa10d45eaa951cdcc9848a
Bartosz Dziewoński [Mon, 25 Jul 2016 10:59:28 +0000 (12:59 +0200)]
mediawiki.special.userlogin.signup: Remove unnecessary field hiding code
We now use HTMLForm, which implements a generic method to do this
using 'hide-if' parameters. We already use it for the signup form too.
This is just dead code.
Change-Id: I35cfc31aae714f3be8aa0d044de1119c279e3d34
jenkins-bot [Mon, 25 Jul 2016 10:58:45 +0000 (10:58 +0000)]
Merge "Allow providing 'notices' for OOUI HTMLForm fields"
Translation updater bot [Sun, 24 Jul 2016 19:53:44 +0000 (21:53 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ie72f1651a43be65682e451a1ee1c44fc14f31f67
Aaron Schulz [Fri, 22 Jul 2016 23:56:10 +0000 (16:56 -0700)]
Minor transaction callback cleanups
* Give the flush commit() in close() a chance to handle callbacks.
Also detect onTransactionResolution() callbacks when an error is
thrown.
* Avoid resetting callbacks redundantly, as they already get
cleared when they actually run.
* Fix a few doc comments.
Change-Id: I5c62262661b97a6c28ce0ab0949307dc119953ca
Reedy [Sun, 24 Jul 2016 15:46:59 +0000 (16:46 +0100)]
Update justinrainbow/json-schema in require-dev to ~1.6
This matches the version that Kartographer is tracking, and hence
the committed vendor repo
Change-Id: I92bc1d03e62482bf9de4903ac14f79a4340ed1f2
Kunal Mehta [Fri, 22 Jul 2016 22:08:21 +0000 (15:08 -0700)]
registration: Support config setings that are relative paths
Add support for configuration settings that are relative paths to the
extension directory. The most common use-case for this is where the
extension ships a generic default file, but sysadmins or packagers may
want to override it. Setting `"path": true` on the config definition
will make the value be interpreted as a relative path.
And add tests!
Bug: T100956
Change-Id: Ia87ced25b35be7a314ee2937e0ccc63f9acc5bb5
jenkins-bot [Sun, 24 Jul 2016 13:56:29 +0000 (13:56 +0000)]
Merge "Session: Improvements to encryption functionality"
Kunal Mehta [Fri, 22 Jul 2016 21:59:07 +0000 (14:59 -0700)]
registration: Fix merge_strategy in manifest_version 2
merge_strategy is set in $data, which is the definition of the config
setting, not the default value of it ($value).
Change-Id: I12ee95892b2c157bb0beb97cf2cd5ef920b7d52e
Kunal Mehta [Fri, 22 Jul 2016 21:57:28 +0000 (14:57 -0700)]
registration: Update conversion script for manifest_version 2
Config settings are now an object, with the value set as the 'value'
key.
Change-Id: Iba3999fdfc8994d50331825c9a416334db602e46
Translation updater bot [Sat, 23 Jul 2016 19:55:14 +0000 (21:55 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I7912884168f4cae479c1e6f674961feedbb261e6
jenkins-bot [Sat, 23 Jul 2016 00:57:15 +0000 (00:57 +0000)]
Merge "Use current content model for blank page content (not title default)"
jenkins-bot [Fri, 22 Jul 2016 23:44:02 +0000 (23:44 +0000)]
Merge "filebackend: Fix DBLockManager IDEA warnings"
Aaron Schulz [Fri, 22 Jul 2016 22:38:05 +0000 (15:38 -0700)]
filebackend: Fix DBLockManager IDEA warnings
Change-Id: I5e671bcee0915f65082c139be8f42aafad6413f1
jenkins-bot [Fri, 22 Jul 2016 23:30:27 +0000 (23:30 +0000)]
Merge "Make statsd counts for MWCallableUpdate actually useful"
Aaron Schulz [Fri, 22 Jul 2016 05:15:21 +0000 (22:15 -0700)]
objectcache: Add "busyValue" option to WANObjectCache::getWithSetCallback
This is useful for avoiding stampedes in the one case that lockTSE
does not alone cover, which is when the key does not exist or is
tombstoned.
Also avoid saving interim values unless the key is tombstoned
since there is no point in doing that otherwise.
Change-Id: I70997e90217a0979e0589afa7a5107b0e623c7cf
jenkins-bot [Fri, 22 Jul 2016 22:19:42 +0000 (22:19 +0000)]
Merge "Pingback: Show exactly what data is being sent during the installer"
jenkins-bot [Fri, 22 Jul 2016 22:03:11 +0000 (22:03 +0000)]
Merge "Unbreak the DB updater by removing transaction from doUpdates()"
Kunal Mehta [Fri, 22 Jul 2016 21:08:14 +0000 (14:08 -0700)]
Pingback: Show exactly what data is being sent during the installer
We have access to all the information that will be transmitted, so for
full transparency, display the actual JSON blob that will be sent.
Change-Id: I7dcc7bafb42619a8d49a27649fd7ac981efcd960
Translation updater bot [Fri, 22 Jul 2016 19:54:08 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I9a2afba022af74a48775b62abbc2f589447ed974
Bartosz Dziewoński [Mon, 30 May 2016 21:11:33 +0000 (23:11 +0200)]
HTMLForm: Allow distinguishing between form views and submission attempts
Calling HTMLForm::setFormIdentifier() will set an internal identifier
for this form. It will be submitted as a hidden form field, allowing
HTMLForm to determine whether the form was submitted (or just viewed).
Setting this serves two purposes:
* If you use two or more forms on one page, it allows HTMLForm to
identify which of the forms was submitted, and not attempt to
validate the other ones. (T102114)
* If you use checkbox or multiselect fields inside a form using the
GET method, it allows HTMLForm to distinguish between the initial
page view and a form submission with all checkboxes or select
options unchecked. (T29676)
Bug: T102114
Bug: T29676
Change-Id: Ib6ce3fd8941be86211cff5c6932b5e84982490fa
jenkins-bot [Fri, 22 Jul 2016 17:51:03 +0000 (17:51 +0000)]
Merge "DifferenceEngine: Move MW_DIFF_VERSION to class constant DIFF_VERSION"
jenkins-bot [Fri, 22 Jul 2016 17:40:59 +0000 (17:40 +0000)]
Merge "Avoid calling rollback() in setVisibility() when nothing changed"
Chad Horohoe [Wed, 20 Jul 2016 21:10:02 +0000 (14:10 -0700)]
DifferenceEngine: Move MW_DIFF_VERSION to class constant DIFF_VERSION
Deprecated the former. It's only used in 2 extensions (both active),
so we can probably get rid of this within a single release cycle.
Change-Id: I39bef62556f8f0625a5741d54f9f84d15b50610d
Aaron Schulz [Fri, 22 Jul 2016 02:32:09 +0000 (19:32 -0700)]
Make statsd counts for MWCallableUpdate actually useful
Include the method that made the callback in the key.
Change-Id: Ifc7c486ee5c8d57b2516456569bb724cf7dc2b99
jenkins-bot [Fri, 22 Jul 2016 05:34:20 +0000 (05:34 +0000)]
Merge "Avoid the use of DB rollback() in LocalFileDeleteBatch"
Tim Starling [Mon, 18 Jul 2016 02:05:13 +0000 (12:05 +1000)]
Preprocessor_Hash: use child arrays instead of linked lists
The singly-linked list data structure of Preprocessor_Hash was causing
stack exhaustion due to the need for a recursion depth proportional to
the number of children of a given PPNode, in serialize() and on
object destruction. So, switch to array-based storage. PPNode_* becomes
a temporary proxy around the underlying storage, which avoids circular
references and keeps the storage very compact. Preprocessor_DOM uses
similar temporary PPNode objects, so the fact that
$node->getFirstChild() !== $node->getFirstChild()
should not cause any new problems.
* Increment cache version
* Use JSON serialization of the store array instead of serialize(),
since JSON is more compact, even after gzipping.
* For efficiency, make $accum a plain array, and use it as an array
where possible, instead of using helper functions.
Performance and memory usage for typical input are slightly improved:
something like 4% faster for the whole parse, and 20% less memory for
the tree.
Bug: T73486
Change-Id: I0d6c162b790d6dc1ddb0352aba6e4753854f4c56
Aaron Schulz [Thu, 21 Jul 2016 05:16:20 +0000 (22:16 -0700)]
Avoid the use of DB rollback() in LocalFileDeleteBatch
Race conditions are already handled by LockManager now.
Change-Id: Idb9ac511d565db4920aff7faa6ff291e05079798
jenkins-bot [Fri, 22 Jul 2016 03:36:51 +0000 (03:36 +0000)]
Merge "Allow 'data-*' attributes in personal tools links"
jenkins-bot [Fri, 22 Jul 2016 02:12:28 +0000 (02:12 +0000)]
Merge "Improve database endAtomic() error messages"
Moriel Schottlender [Wed, 20 Jul 2016 21:15:01 +0000 (14:15 -0700)]
Allow 'data-*' attributes in personal tools links
We are limiting the attributes that are read and rendered for the
personal toolbar, but there are cases -- especially as tools get
more and more complex -- for needing to supply and read more information.
The use case that led to this change is the need to style Notification
badges with values in ::before and ::after pseudo-elements; these
elements need to display some prefixed content, and the best (only)
way to do that in no-js mode, is to set it up in CSS to be read
out of an attribute (using attr( xxx ); ).
This means that we need to read a specific attribute from the element,
but the only attributes allowed were insufficient. Allowing for data-*
attributes seemed not only a good solution for this specific case,
but a good idea in general for future tools that are added and
manipulate the personal toolbar links - allowing for storing information
without polluting the DOM.
Bug: T115845
Change-Id: Ic666540d70de52f337f839da0518cb83a990f5fd
jenkins-bot [Fri, 22 Jul 2016 02:08:26 +0000 (02:08 +0000)]
Merge "Make non-exception rollback() calls safer"
Aaron Schulz [Thu, 21 Jul 2016 01:06:46 +0000 (18:06 -0700)]
Avoid calling rollback() in setVisibility() when nothing changed
Change-Id: I7fde64fe1e6c9553447bcb9e62a1a9530f9e52ce
jenkins-bot [Fri, 22 Jul 2016 00:01:21 +0000 (00:01 +0000)]
Merge "OutputPage: Fix blank line between <html> and <head>"
Timo Tijhof [Thu, 21 Jul 2016 22:37:11 +0000 (23:37 +0100)]
mediawiki.page.startup: Remove back-compat for MediaWiki 1.25 and earlier
Follow-ups
d7905627fd (released in MediaWiki 1.26).
This commit will be released in MediaWiki 1.28.
Change-Id: I2a3e91a3efb9db3d92aa2f92fc2572b4fe4e6707
jenkins-bot [Thu, 21 Jul 2016 22:10:24 +0000 (22:10 +0000)]
Merge "Do not override content format in EditPage when loading rev."
Brian Wolff [Thu, 21 Jul 2016 21:37:08 +0000 (21:37 +0000)]
Use current content model for blank page content (not title default)
This means that if you specify ?model=MODEL_ID you can create a
page using the non-default content model (but only if you have
the correct rights. Admin by default). Previously this only worked
if you specified a preload parameter that had the content model
that you wanted.
Additionally, I believe that this makes more sense logically in
terms of using the class state instead of the global state for
the current content model.
Change-Id: I938be1abcae8ac0b5fdb82d0d57bad5526aa5dee
Ori Livneh [Thu, 30 Jun 2016 09:29:10 +0000 (02:29 -0700)]
Add option for sharing info about this MediaWiki install via pingback
When $wgPingback is true, MediaWiki will periodically ping
https://www.mediawiki.org/beacon with basic information about the local
MediaWiki installation. This data includes, for example, the type of system,
PHP version, and chosen database backend.
The pingback is sent via a deferred (post-send) update whenever $wgVersion
changes, using the updatelog table to ensure we don't send duplicate pingbacks.
A database lock ensures only one thread attempts to send the pingback, and a
cache key throttles attempts to no more than once per hour.
$wgPingback is false by default. The web installer has a checkbox for
controlling this option, and it is checked by default. This nudges new installs
to turn on pingbacks, but does not sneak this decision past sysops of existing
installs.
Change-Id: Ie43a6b46a07ebd9ccc1b9c3001f2ea02435d826b
Translation updater bot [Thu, 21 Jul 2016 20:21:50 +0000 (22:21 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I0aa5901d8414d3106e0af0fb3c5284481b243ef6
Timo Tijhof [Thu, 21 Jul 2016 19:55:04 +0000 (20:55 +0100)]
OutputPage: Fix blank line between <html> and <head>
Follows-up
a464d1d41 which changed OutputPage::headElement()
to join pieces by a line break instead of hardcoding line breaks
after (some) generated pieces.
This caused a minor regression in the form of a blank line between
<html> and <head> on every page, because I missed the one that
came from this class.
Change-Id: I5e48b852809699b205f4581c833605f3e232610a
jenkins-bot [Thu, 21 Jul 2016 19:49:06 +0000 (19:49 +0000)]
Merge "objectcache: Fix RESTBagOStuff class doc"
jenkins-bot [Thu, 21 Jul 2016 18:23:24 +0000 (18:23 +0000)]
Merge "Add missing file locks to deleteArchivedFiles.php"
Aaron Schulz [Thu, 21 Jul 2016 01:33:25 +0000 (18:33 -0700)]
Make non-exception rollback() calls safer
Use rollbackMasterChanges() instead so that all DBs get reverted.
Otherwise, external DB updates may get committed while related local
DB changes are rolled back.
Change-Id: I74de77f4b12dc15c0473c272d090caeeb97d6983
jenkins-bot [Thu, 21 Jul 2016 17:56:49 +0000 (17:56 +0000)]
Merge "Add AutoCommitUpdate class and replace some onTransactionIdle callers"
Aaron Schulz [Thu, 21 Jul 2016 17:48:50 +0000 (10:48 -0700)]
Improve database endAtomic() error messages
Change-Id: I3317012befe454654429bb5acb8988d4e7ccfb5a