Brian Wolff [Sat, 7 Jul 2018 15:57:36 +0000 (15:57 +0000)]
Mention MariaDB first, before MySQL in installer.
At this point all WMF servers have been using MariaDB for a while
now. This defacto makes MariaDB the primary target for MediaWiki.
I think we should thus word the installer options as MariaDB
being the primary thing, and mysql being compatible with it,
instead of the other way around.
Also fix reference to debian package php5-mysql. We live in a php 7
world.
Change-Id: Ide585714b1476f9b1b51e032d12c075e1a53de06
Brian Wolff [Sat, 7 Jul 2018 15:28:16 +0000 (15:28 +0000)]
Mark InnoDB as recomended in the installer.
Most users will have no idea what this is, and I honestly wonder
why we even offer a choice here.
Change-Id: I496d1056f089c35bff321a8206ca264b12a54d56
Arlo Breault [Thu, 12 Jul 2018 15:18:46 +0000 (11:18 -0400)]
Sync up with Parsoid parserTests.txt
This now aligns with Parsoid commit
564b5d3a37580912793b81a021011e3e33d1219a
Change-Id: I8203797d6d6383a6a2d58d6e6f9a7d46b5c788f3
Volker E [Thu, 12 Jul 2018 15:17:18 +0000 (17:17 +0200)]
RCFilters: Standardize loading indicator appearance
Increasing contrast slightly and removing design artefacts compared to
design template.
Bug: T199430
Change-Id: Ifa0de8be95d456c1d4433ee2240b2e080c8fb964
Aaron Schulz [Wed, 11 Jul 2018 22:54:24 +0000 (23:54 +0100)]
objectcache: make BagOStuff::mergeViaLock() timeout more sensible
Interpret "1 attempt" as non-blocking and use 3 seconds otherwise
(instead of 6 seconds). This means that the WAN cache merge call
does not block.
Bug: T198239
Change-Id: Ieb194a949f18785c2cc9dd20fdc4d2e3fed51abf
jenkins-bot [Thu, 12 Jul 2018 11:10:22 +0000 (11:10 +0000)]
Merge "Special:Log: Convert to HTMLForm"
Brian Wolff [Thu, 12 Jul 2018 02:48:34 +0000 (02:48 +0000)]
Start working on phan-taint-check warnings. Fix minor escaping issues.
This fixes 26 of the phan-taint-check warnings on MW core. Some
are outright fixed, others are false positives that were suppressed.
This really only covers some of the easy ones. There are still
314 warnings to go.
Change-Id: I30463bc3a09fd4324d190de8533f51784764dd3a
jenkins-bot [Thu, 12 Jul 2018 03:22:36 +0000 (03:22 +0000)]
Merge "objectcache: make CachedBagOStuff implement makeKeyInternal()"
Aaron Schulz [Tue, 10 Jul 2018 20:44:24 +0000 (21:44 +0100)]
objectcache: minor fix to MultiWriteBagOStuff::doWrite()
For the case of add(), any non-zero index can have async writes
Bug: T198239
Change-Id: I95f63143dcb894b9d12859c221f7d8e72fdf076f
jenkins-bot [Wed, 11 Jul 2018 22:13:07 +0000 (22:13 +0000)]
Merge "Add config to use change_tag_def table for Special:Tags"
jenkins-bot [Wed, 11 Jul 2018 20:36:22 +0000 (20:36 +0000)]
Merge "Hide TOC with CSS instead of JavaScript"
Translation updater bot [Wed, 11 Jul 2018 20:21:50 +0000 (22:21 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I2a5c983b0576df41ee9258890589c45448d24b53
jenkins-bot [Wed, 11 Jul 2018 20:01:06 +0000 (20:01 +0000)]
Merge "shell.php: prevent permission error"
jenkins-bot [Wed, 11 Jul 2018 19:52:36 +0000 (19:52 +0000)]
Merge "Convert numerous UNIQUE INDEX to PRIMARY KEY"
jenkins-bot [Wed, 11 Jul 2018 19:52:31 +0000 (19:52 +0000)]
Merge "rdbms: add IDatabase::lockForUpdate() convenience method"
Reedy [Wed, 4 Jul 2018 19:13:07 +0000 (20:13 +0100)]
Convert numerous UNIQUE INDEX to PRIMARY KEY
MySQL, SQLite, PostgreSQL and MSSQL done with transitional patches.
One additional duplicate index removed from PostgreSQL schema.
Having a PK is essential to do maintenance, specially on large tasks.
By not having a PK it is impossible to add it in a safe way if not done
directly on the master.
Having a PK means that we can easily change the PK into another one if
needed in the future. The ones we chose might not be the best ones, but
will allow us to get them changed.
Bug: T198811
Change-Id: I6b96a427687085c6c24bcd759c9739f81288b919
jenkins-bot [Wed, 11 Jul 2018 19:30:22 +0000 (19:30 +0000)]
Merge "Rename index type_action to log_type_action"
Reedy [Wed, 11 Jul 2018 14:36:27 +0000 (14:36 +0000)]
Rename index type_action to log_type_action
Bug: T51199
Change-Id: I697fd5689e573bfa965ca75385f919c9a8403c14
jenkins-bot [Wed, 11 Jul 2018 19:05:52 +0000 (19:05 +0000)]
Merge "Update OOUI to v0.27.5"
jenkins-bot [Wed, 11 Jul 2018 18:57:31 +0000 (18:57 +0000)]
Merge "RCFilters: Explicitly set the default highlight color to null"
Brian Wolff [Mon, 16 Oct 2017 05:53:30 +0000 (05:53 +0000)]
Deprecate specialized file errors in OutputPage and fix escaping
OutputPage has a number of specialized error reporting methods
related to file handling. With exception of showFileDeleteError,
they are all unused. In my opinion such specialized error handling
does not belong in OutputPage, but in whatever class is generating
the error.
Futhermore, these functions do not appropriately escape their
arguments or their i18n messages. I replaced the one usage
in SpecialUpload with an equivalent that does escape properly.
This is not exploitable as the attacker is not in control of
the temporary file name, but it is very bad practice.
This deprecates the following methods:
* OutputPage::showFileDeleteError()
* OutputPage::showFileNotFoundError()
* OutputPage::showFileRenameError()
* OutputPage::showFileCopyError()
* OutputPage::showUnexpectedValueError()
[Discovered with the help of an experimental phan plugin]
Change-Id: I9e7aaa59ded66f32c78cfdfed1e59e073ffd5051
James D. Forrester [Wed, 11 Jul 2018 18:43:15 +0000 (11:43 -0700)]
Update OOUI to v0.27.5
Release notes:
https://phabricator.wikimedia.org/diffusion/GOJU/browse/master/History.md;v0.27.5
Depends-On: I9d3b2480e1bece91f1e43fd268fa5ab0fbfb89aa
Change-Id: I2896bc9a07ab9939e254b18ee5ff3b38fdf5c44a
Roan Kattouw [Tue, 10 Jul 2018 17:56:53 +0000 (10:56 -0700)]
RCFilters: Explicitly set the default highlight color to null
Other code checks !== null on this, and since undefined !== null, it
will incorrectly think a highlight color is set when it's not.
Bug: T199144
Change-Id: I5dbe95ff3c2a5e9c4597a1794a0d3256b671238f
Fomafix [Tue, 3 Jul 2018 20:14:06 +0000 (22:14 +0200)]
Use $lang->hasVariants() instead of count( $lang->getVariants() ) > 1
Change-Id: I23668c69a8d8cc886168cbbd4f94cf13b597b5a6
Amir Sarabadani [Wed, 11 Jul 2018 14:44:28 +0000 (16:44 +0200)]
Add config to use change_tag_def table for Special:Tags
Bug: T199334
Change-Id: Ieb8709caf0d8ee16086296baa75f751c7723c101
Aaron Schulz [Wed, 11 Jul 2018 13:07:10 +0000 (14:07 +0100)]
Convert Title::getTitleCache() to using MapCacheLRU
Change-Id: I0de4194a37b6ef260d35feb1e6730985775d5351
Aaron Schulz [Wed, 11 Jul 2018 12:41:46 +0000 (13:41 +0100)]
objectcache: make CachedBagOStuff implement makeKeyInternal()
Change-Id: I38821d131982d103b9d130e7310bc652f57ea696
Aaron Schulz [Wed, 11 Jul 2018 12:43:03 +0000 (13:43 +0100)]
objectcache: avoid direct "bag" field references in CachedBagOStuff
Change-Id: I853e2e3a33c7f765f74c7273e1b118b1ebf4e84c
Aaron Schulz [Wed, 11 Jul 2018 09:39:05 +0000 (10:39 +0100)]
rdbms: fix value of ChronologyProtector::POSITION_COOKIE_TTL
This was supposed to be 10 (~LoadBalancer::MAX_WAIT_DEFAULT) but
ended up as 60 by mistake in
52af356cad (when the constant was added).
Bug: T194403
Change-Id: Ie94949eebaafde2e0c4e2fcffabcb78866363a27
jenkins-bot [Wed, 11 Jul 2018 09:56:15 +0000 (09:56 +0000)]
Merge "In RevisionStore, use DB_MASTER when READ_LATEST is set."
jenkins-bot [Wed, 11 Jul 2018 09:09:18 +0000 (09:09 +0000)]
Merge "Simplify PHP by using ?? and ?:"
Jack Phoenix [Wed, 11 Jul 2018 08:08:48 +0000 (11:08 +0300)]
Add new 'ArticleShowPatrolFooter' hook to allow extensions to decide if the [mark as patrolled] link should not be shown
Used on wikiHow to simply never show this particular link.
Change-Id: Id6b11135cc062798964a6b3e927ad665fd757616
jenkins-bot [Wed, 11 Jul 2018 05:00:44 +0000 (05:00 +0000)]
Merge "Implement makeKeyInternal() for ReplicatedBagOStuff/MultiWriteBagOStuff"
Tim Starling [Fri, 6 Jul 2018 05:53:26 +0000 (15:53 +1000)]
Use a closure instead of PathRouterPatternReplacer
In PHP 5.3+ it's simpler to use closures rather than a replacer class to
pass parameters through to the preg_replace_callback() callback.
Remove without deprecation internal class PathRouterPatternReplacer,
unused in core and Gerrit-hosted extensions.
The new implementation is very similar, except that I renamed some
variables for clarity.
Also fixed an incorrect doc comment parameter type.
Change-Id: I4cd3c0162acdb02d51ab5b7f03b0a16e0a818d99
James D. Forrester [Tue, 10 Jul 2018 23:08:58 +0000 (16:08 -0700)]
Expand the default watchlist time from 3 to 7 days
Bug: T194414
Change-Id: I682161b93ea018dc1f552b6ac1a0555c162e7339
Brad Jorsch [Tue, 10 Jul 2018 18:13:58 +0000 (14:13 -0400)]
SpecialChangeEmail: Log email changes
Bug: T151415
Change-Id: Icc403be286f87a591ebc9d3e07d84b09f8b87713
Fomafix [Wed, 20 Jun 2018 05:26:57 +0000 (07:26 +0200)]
Simplify PHP by using ?? and ?:
Also remove not necessary surrounding parentheses.
Change-Id: I0eb5c9c1bdfb09a800258379cdcefb5fd4d3d21c
jenkins-bot [Tue, 10 Jul 2018 20:02:07 +0000 (20:02 +0000)]
Merge "mediawiki.language: Combine with 'mediawiki.language.data' and 'mediawiki.language.init'"
jenkins-bot [Tue, 10 Jul 2018 19:59:30 +0000 (19:59 +0000)]
Merge "mediawiki.api: Simplify mw.Api constructor"
Translation updater bot [Tue, 10 Jul 2018 19:54:00 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I3e4bbf58fac272565129be799bb50912296bcb4c
Timo Tijhof [Tue, 10 Jul 2018 19:10:34 +0000 (12:10 -0700)]
Replace redundant Assert calls with native typehint
* PageUpdater: Plain class type hints never needed Assert,
not sure why that was here.
* CategoryMembershipChange: The 'callable' typehint was introduced
in PHP 5.4.
Change-Id: I958bd63a7f9edec3a297f34fe43339fac5f43006
daniel [Tue, 10 Jul 2018 18:54:33 +0000 (20:54 +0200)]
In RevisionStore, use DB_MASTER when READ_LATEST is set.
This fixes a few instances where a replica connection was used to read
auxilliary data even if the READ_LATEST flag was passed.
Bug: T198869
Change-Id: Ie3b5f7921f939e6bd5216130dc4adcf242e5c624
Aaron Schulz [Mon, 2 Jul 2018 18:02:54 +0000 (19:02 +0100)]
rdbms: add IDatabase::lockForUpdate() convenience method
Change-Id: I238fd96407e1122e90058e2c4acf743044a267ec
jenkins-bot [Tue, 10 Jul 2018 18:37:26 +0000 (18:37 +0000)]
Merge "Use master when fetching revision to base a null-revison on."
jenkins-bot [Tue, 10 Jul 2018 18:33:51 +0000 (18:33 +0000)]
Merge "Run populateContentTables.php from update.php"
jenkins-bot [Tue, 10 Jul 2018 18:25:11 +0000 (18:25 +0000)]
Merge "RELEASE-NOTES-1.32: Re-wrap to 80 chars again"
Timo Tijhof [Tue, 10 Jul 2018 04:43:09 +0000 (21:43 -0700)]
mediawiki.language: Combine with 'mediawiki.language.data' and 'mediawiki.language.init'
The latter two modules are never used separately and have no references
anywhere in Wikimedia Git outside MediaWiki core.
Remove without deprecation as they were introduced only as internal
work-around to be able to call setData after init.js and the rest of
'mediawiki.language'. Which is actually trivially done by concatenating
one after the other, but for some reason I didn't think of that when
reviewing
4c6c50f20661 in 2012.
Also fix an annoying race condition in the unit tests that
often caused tests to fail locally.
Change-Id: Ic61f86b0dcbfac82da230770f66cb72e97bd9a03
daniel [Tue, 10 Jul 2018 17:54:11 +0000 (19:54 +0200)]
Use master when fetching revision to base a null-revison on.
Bug: T198869
Change-Id: I7396246581deabc2cb7206b3e5d2a6f97f6d7418
jenkins-bot [Tue, 10 Jul 2018 17:24:24 +0000 (17:24 +0000)]
Merge "Special:PasswordReset: Make the user field a user lookahead field, not just text"
Brad Jorsch [Tue, 10 Jul 2018 17:09:37 +0000 (13:09 -0400)]
Run populateContentTables.php from update.php
Since update.php will eventually be dropping the old columns and fields,
we should make sure the migration script gets run first.
Bug: T197818
Change-Id: I47f5ba4e21b4fe2ef0beb9fc83896cd4b0a0d505
Timo Tijhof [Tue, 10 Jul 2018 04:14:28 +0000 (21:14 -0700)]
mediawiki.api: Simplify mw.Api constructor
* Use a different variable for the argument and the created
'defaults' object for this instance.
* Don't modify the given object (it could previously modify
the 'ajax.url' property).
* Make the 'useUS' logic more explicit and merge it with the
'ajax.url' handling, that it previously reacted to.
Change-Id: Ib1f50876359152935b8cb9b021ea0a95915808e2
Bartosz Dziewoński [Tue, 10 Jul 2018 15:28:43 +0000 (17:28 +0200)]
mw.special.preferences: Prevent invisible accessibility hint from affecting content
With the current styles, if there is some text before the preferences
form (it can be defined in the 'preferences-summary' message), the
`<div class="mw-navigation-hint">` somehow pushes the rest of the page
content down by a few pixels. I think it might be preventing some
margins from collapsing? This actually causes a tiny FOUC after the
styles load.
Instead, use a neat pure CSS technique borrowed from Vector:
b843094a2d8c27a17e2c2b2ba97fb4aeea1d95d4.
I'm only changing the OOUI version, since the old one doesn't have the
problem.
Bug: T195986
Change-Id: I21924dd13bb83a0cb75b337ae7439c8ad8357946
jenkins-bot [Tue, 10 Jul 2018 15:05:27 +0000 (15:05 +0000)]
Merge "List deleted revisions in well defined order"
jenkins-bot [Tue, 10 Jul 2018 15:04:59 +0000 (15:04 +0000)]
Merge "[MCR] Make PageArchive aware of MCR"
daniel [Tue, 10 Jul 2018 14:39:37 +0000 (16:39 +0200)]
List deleted revisions in well defined order
Change-Id: I3040e0a3f6367809a22198b8b3f76048aa6c1562
daniel [Fri, 13 Apr 2018 12:01:18 +0000 (14:01 +0200)]
[MCR] Make PageArchive aware of MCR
Bug: T194015
Change-Id: I92afda87961860983f080d96fa0616a6fcca64e4
Aaron Schulz [Tue, 10 Jul 2018 12:25:04 +0000 (13:25 +0100)]
Implement makeKeyInternal() for ReplicatedBagOStuff/MultiWriteBagOStuff
Make these proxy to the "write"/"main" cache backend like the other
key methods.
Change-Id: Ie176577d9b52807493d6da9eea963ba440b86330
Prateek Saxena [Wed, 25 Apr 2018 05:22:19 +0000 (10:52 +0530)]
Special:Log: Convert to HTMLForm
* All Xml generation code has been removed.
* The LogEventsListGetExtraInputs hook now needs a form
descriptor array and not plain HTML.
See I37e0d3e81a46239750465b9299279fbbd7c7f87a.
* LogPager and LogEventList also take the $day parameter
for 'From date (and earlier)' and pass it to getDateCond
as well.
* Since FormOptions can't automatically extract the date
from the request this is being done manually in the
execute method of Special:Log using MWTimestamp.
Bug: T117737
Change-Id: Iba3c6aa5ac40dcdee0792c2d045b238b02d76521
jenkins-bot [Tue, 10 Jul 2018 11:15:05 +0000 (11:15 +0000)]
Merge "mediawiki.inspect: Add headings to console and use console.group()"
jenkins-bot [Tue, 10 Jul 2018 08:55:56 +0000 (08:55 +0000)]
Merge "Fix the bug for dates between 1912 and 1941 in Thai language"
jenkins-bot [Tue, 10 Jul 2018 01:24:59 +0000 (01:24 +0000)]
Merge "Use Language::equals to compare Language objects"
jenkins-bot [Tue, 10 Jul 2018 01:19:44 +0000 (01:19 +0000)]
Merge "Language: compare on same object in equals()"
jenkins-bot [Tue, 10 Jul 2018 01:15:35 +0000 (01:15 +0000)]
Merge "registration: Document ResourceLoaderImageModule's useDataURI option"
Fomafix [Mon, 9 Jul 2018 04:26:57 +0000 (06:26 +0200)]
Use Language::equals to compare Language objects
With I8a47a8500922906bd4e4936b59b657de3bb9abdc Language::equals can
directly and faster compare the objects.
$wgLanguageCode can differ from $wgContLang->getCode() when a deprecated
language code is used. This change prevents this because Language
replaces deprecated language codes in Language::factory().
Change-Id: I07f47eceff8b3a4192278b1e9e1cfd9a41816a1c
Fomafix [Thu, 28 Jun 2018 07:04:09 +0000 (09:04 +0200)]
Language: compare on same object in equals()
Change-Id: I8a47a8500922906bd4e4936b59b657de3bb9abdc
Timo Tijhof [Tue, 10 Jul 2018 00:25:20 +0000 (17:25 -0700)]
mediawiki.inspect: Add headings to console and use console.group()
This adds a log message before each dump to indicate which report follows.
Most of the table's headings communicated to some extend what the table is
about, but the heading should make it easier to use.
Also, where available, use console.group(), which makes the
tables collapsible for easier navigation.
Change-Id: I6855441ce6e3052cdc875e439380820b61d040c1
jdlrobson [Mon, 9 Jul 2018 23:26:15 +0000 (16:26 -0700)]
registration: Document ResourceLoaderImageModule's useDataURI option
Without these rules, validation will fail in any skin or
extension that tries to use it.
Follows-up
36252b7.
Bug: T198930
Change-Id: Iee77655d4868a7d921be8cc23776a7859d9acf0c
Brian Wolff [Mon, 2 Jul 2018 06:52:51 +0000 (06:52 +0000)]
CSP: Allow an option of disabling nonces
The current rollout plan calls for initial rollout to only
disallow external JS, and leave removing unsafe inline stuff
to a later date. Thus this adds a useNonces option to the CSP
config to allow that.
Renamed ContentSecurityPolicy::isEnabled() to isNonceRequired
for clarity. The old name has never been in a released version
of MediaWiki, so is removed immediately.
Change-Id: I756d8e97b77c6f97dbbf040a20c8750fecb157c5
jenkins-bot [Mon, 9 Jul 2018 23:53:13 +0000 (23:53 +0000)]
Merge "Avoid arithmetics on localized number string ("0,04") in SpecialWatchlist"
jenkins-bot [Mon, 9 Jul 2018 22:34:40 +0000 (22:34 +0000)]
Merge "Ensure whether user can rollback page in ChangesList"
James D. Forrester [Mon, 9 Jul 2018 22:34:01 +0000 (15:34 -0700)]
Special:PasswordReset: Make the user field a user lookahead field, not just text
Change-Id: If7795ca038d230e4a9bc665bae0c90d534f0f3ad
jenkins-bot [Mon, 9 Jul 2018 19:58:48 +0000 (19:58 +0000)]
Merge "UsersMultiselectWidget: Reduce default non-JS rows to 10"
Translation updater bot [Mon, 9 Jul 2018 19:53:16 +0000 (21:53 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I9831872a1c218da0ac6b25c8b39548d269a64025
jenkins-bot [Mon, 9 Jul 2018 18:35:24 +0000 (18:35 +0000)]
Merge "Add a method to HTMLForm that allows the preText to be accessed externally."
jenkins-bot [Mon, 9 Jul 2018 18:29:18 +0000 (18:29 +0000)]
Merge "Remove most uses of deprecated Language::truncate()"
C. Scott Ananian [Wed, 13 Jun 2018 17:49:29 +0000 (13:49 -0400)]
Hard deprecate Language::truncate()
This was split into Language::truncateForVisual() (which measures characters)
and Language::truncateForDatabase() (which measures bytes) in 1.31.
Bug: T197492
Change-Id: I949eab4ceb8dcb707b45edf7623e496eb99fe33b
C. Scott Ananian [Wed, 13 Jun 2018 17:49:29 +0000 (13:49 -0400)]
Replace use of deprecated Language::truncate()
Follow-up to I2291c69d9df17c1a9e4ab1b7d4cbc73bc51d3ebb -- this code uses
sprintf to align text, which won't really work for multibyte UTF8 or
unicode combining characters. Alas. Do the best we can for now.
Bug: T197492
Change-Id: Iaa4d7bd64588ca1f215921339d84f960380ae12b
jenkins-bot [Mon, 9 Jul 2018 18:02:59 +0000 (18:02 +0000)]
Merge "Replace 'capsule' with appropriate 'tag'"
jenkins-bot [Mon, 9 Jul 2018 17:57:23 +0000 (17:57 +0000)]
Merge "Avoid losing cached ParserOutput in doEditContent."
Volker E [Mon, 9 Jul 2018 17:44:09 +0000 (19:44 +0200)]
Replace 'capsule' with appropriate 'tag'
UsersMultiselectWidget class extends OOUI's MenuTagMultiselectWidget,
not CapsuleMultiselectWidget any more.
Change-Id: Iea7450a371720bed392dfedb1032bc8c63c89fc4
C. Scott Ananian [Wed, 13 Jun 2018 17:49:29 +0000 (13:49 -0400)]
Remove most uses of deprecated Language::truncate()
The Language::truncate() function was split into
Language::truncateForVisual() (which measures characters) and
Language::truncateForDatabase() (which measures bytes) in 1.31, but
the patch which soft-deprecated Language::truncate() didn't actually
remove all the uses in the codebase. Replace most of those old uses
now, which should actually improve the situation for
non-latin-alphabet users who were getting unfairly squeezed in a
number of places.
Bug: T197492
Change-Id: I2291c69d9df17c1a9e4ab1b7d4cbc73bc51d3ebb
Volker E [Mon, 9 Jul 2018 17:35:39 +0000 (19:35 +0200)]
UsersMultiselectWidget: Reduce default non-JS rows to 10
Reducing non-JS textarea `rows` attribute value to a more sane
default of `10`.
Bug: T194525
Change-Id: I6457ff354023a68d3e878e62161912dea4ff3d70
Brad Jorsch [Sun, 8 Jul 2018 19:25:18 +0000 (15:25 -0400)]
WebReponse: Use values altered in 'WebResponseSetCookie' hook
The 'WebResponseSetCookie' hook is allowed to alter the data for the
cookie being set. We need to actually use those altered values, rather
than setting $cookie and $data earlier in the function.
Bug: T198525
Change-Id: Ia817e3dc5ce17fdcf5057ee5fcb6980baa1333d6
David Barratt [Mon, 9 Jul 2018 14:30:06 +0000 (10:30 -0400)]
Add a method to HTMLForm that allows the preText to be accessed externally.
Currently there is no way to access the preText outside of an HTMLForm. Adding
a getPreText method to HTMLForm so the preText is accessible.
Bug: T199115
Change-Id: I937028e7025b4a7b5d333e9bf5a25920f6a88316
jenkins-bot [Mon, 9 Jul 2018 14:24:36 +0000 (14:24 +0000)]
Merge "Allow ResourceLoaderImage modules without data URIs"
daniel [Sun, 8 Jul 2018 19:01:32 +0000 (21:01 +0200)]
Avoid losing cached ParserOutput in doEditContent.
Without this fix, the Content would be parsed twice during an edit,
if extensions that hook into EditFilter and similar
pre-parse hooks call WikiPage::prepareContentForEdit.
With this fix, ParserOutput created by prepareContentForEdit is
re-used by doEditContent.
This is a stop-gap solution. The Real Fix (tm) is to stop using
doEditContent, and use a PageUpdater instead.
Bug: T198483
Change-Id: I42123e48de2b087ef98d8a4855ee3aebd7f1de57
jenkins-bot [Mon, 9 Jul 2018 12:34:28 +0000 (12:34 +0000)]
Merge "Tweak 'mediawiki.skinning.elements' documentation"
Jack Phoenix [Wed, 4 Jul 2018 16:26:59 +0000 (19:26 +0300)]
Tweak 'mediawiki.skinning.elements' documentation
Skins haven't been a part of MediaWiki core for a while now,
they are very much separate things existing in their own,
separate repositories.
Change-Id: I55e3b6382b8fef3b25562b52580d1b1f902a760e
Fomafix [Thu, 17 Aug 2017 21:56:40 +0000 (23:56 +0200)]
Hide TOC with CSS instead of JavaScript
Changes in the behavior:
* The toggle button generate no FOUC on loading.
* On keyboard navigation the toggle key is the space key and not the
return key.
* Animation on hide and show is missing. Maybe a new animation with CSS
can added.
* The state of the button is not saved in a cookie.
* Self-build TOCs can not get hidden.
Browser support:
* The new implementation does not need JavaScript and therefor it works
on browser with disabled JavaScript and on Grade C browser.
* The new implementation requires the CSS pseudo-class selector
:checked. Therefor IE8 and lower are not supported.
Risks:
* The new implementation needs additional HTML elements. These elements
also get cached and crawled. The elements have no content so they get
hopefully ignored by crawler.
* The new CSS code imitates some styles (link, focus). This must kept
up to date.
* Multiple TOCs on one page would generate the same id attribute.
This can avoided by appending a counter or better and easier a random
string to the id attribute.
Bug: T195053
Change-Id: I82db33d656b3795d7134a91d20ed9d93a3471086
jenkins-bot [Mon, 9 Jul 2018 04:26:42 +0000 (04:26 +0000)]
Merge "Web installer: Correctly escape U+00A0 NO-BREAK SPACE"
Kevin Israel [Mon, 9 Jul 2018 02:27:52 +0000 (22:27 -0400)]
Web installer: Correctly escape U+00A0 NO-BREAK SPACE
Unicode escape sequences cannot be used in single quoted strings,
in which they are treated as literal text.
Follows-up
125cbd8c017b872c.
Change-Id: Ife53a613a801b8bb96542b42fd3d2bb3dccaf629
Translation updater bot [Sun, 8 Jul 2018 21:05:10 +0000 (23:05 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Iedc84ad218c0997bf7a36637aa68c8b1f69189d6
Timo Tijhof [Sun, 8 Jul 2018 06:48:35 +0000 (23:48 -0700)]
resourceloader: Add coverage for StartupModule::getAllModuleHashes
Change-Id: I94551a938cd93152eb1bb0a4748e1c0155539c4c
jenkins-bot [Sat, 7 Jul 2018 23:07:45 +0000 (23:07 +0000)]
Merge "Avoid deprecated IDatabase::getWikiId() reference"
Aaron Schulz [Fri, 6 Jul 2018 19:19:51 +0000 (20:19 +0100)]
Avoid deprecated IDatabase::getWikiId() reference
Change-Id: I26991079b1630335c8a6e907554760fc85c1bad6
Translation updater bot [Sat, 7 Jul 2018 20:08:00 +0000 (22:08 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I6cbbc67a417d2c38ea4ce6e155ce2f101d0fd52d
Aaron Schulz [Sat, 7 Jul 2018 08:52:43 +0000 (09:52 +0100)]
Fix ParserTestRunner DB table test prefix logic
Follow-up to
6cfdbdf60
Bug: T198943
Change-Id: I3c3553f2ec6b5ca0d401712e4018c7eec4d9204d
Umherirrender [Tue, 26 Jun 2018 21:14:43 +0000 (23:14 +0200)]
Fix PhanTypeMismatchDeclaredParam
Auto fix MediaWiki.Commenting.FunctionComment.DefaultNullTypeParam sniff
Change-Id: I865323fd0295aabd06f3e3c75e0e5043fb31069e
jenkins-bot [Fri, 6 Jul 2018 23:55:51 +0000 (23:55 +0000)]
Merge "Avoid duplicate IDs on Special:Preferences"
Edward Chernenko [Sun, 1 Jul 2018 02:10:56 +0000 (05:10 +0300)]
Avoid arithmetics on localized number string ("0,04") in SpecialWatchlist
In SpecialWatchlist::cutoffselector(), values like 1/24 or 6/24 are cast
to string via strval(). However, in some locales (e.g. ru_RU.utf8) strval
will return a localized form of the number, e.g. "0,04" instead of "0.04".
This "0,04" is then used in arithmetic operations, where it's treated as 0,
resulting in "0 hours" being shown instead of "1 hour", "2 hours", etc.
Bug: T198501
Change-Id: Iaa4e6170b30a7bb9ce0f22d9d2cc4772b0faa3b8