MediaWiki 1.28/wmf.18/Changelog

Core changes

 * - Updated git submodules
 * - Updated git submodules
 * - Updated git submodules
 * - Updated git submodules
 * - Updated git submodules
 * - Rename mediawiki.action.history.diff to mediawiki.diff.styles
 * - Renamed some variables from "slave" to "replica"
 * - More replication var cleanups in /maintenance
 * - Rename DB_SLAVE constant to DB_REPLICA
 * - Make Maintenance::commitTransaction avoid using deprecated method
 * - Change "slave" => "replica DB" in /maintenance
 * - Change "slave" => "replica DB" in /includes
 * - Renamed load balancer replica DB functions for consistency
 * - Renamed "slave" internal LB/DB info field to "replica"
 * - Cache revision lookups done by Parser
 * - Clean array syntax in docs, part V
 * - Added a Database::buildStringCast and use on int/string join
 * - Rename some variables in DatabaseMysqlBase
 * - Remove unused DB position values in LoadBalancer
 * - Rename some DB/LB variables to be more consistent
 * - Fix IDEA error in prepareQuickTemplate call
 * - OutputPage: Ensure setupSkinUserCss always applies to headElement
 * - Typo in a test: '+' instead of '.' to concatenate strings
 * - Make replication DB-related comments/messages more uniform
 * - Make deferred updates fully own their transaction rounds
 * - resourceloader: Shorten cache expiry if 'version' query doesn't match
 * - Use WAN cache adaptiveTTL method in FileBackendStore
 * - Fix deletion handling of rev_deleted
 * - Convert Revision::fetchFromConds to using more modern selectRow
 * - Don't mention $wgUser, it's ugly and it messes my grep-fu
 * - Add flushReplicaSnapshots method for just clearing snapshots
 * - Clean up user handling in UploadStash
 * - Let a few unit tests actually be unit tests
 * - Rename CSS files for printing to a consistent file name
 * - Remove spammy reuseConnection wfDebug call
 * - Special:MovePage: Use LinkBatch when constructing subpages
 * - RevertAction: Prevent file revert if current version is identical
 * - LogPager: Use normalized value for log_user_text in query condition
 * - Replace DataUpdate::doUpdates callers in maintenance/
 * - Make DeferredUpdates able to run DataUpdates
 * - Move run-on-add logic in DeferredUpdates to addUpdate
 * - Remove $recursionGuard var from tryOpportunisticExecute
 * - Set "run when DBs idle" DeferredUpdates logic in Maintenance
 * - Remove unused custom transaction logic from DataUpdate
 * - Set some missing INTERNAL DB transaction flags and add wfWarn calls
 * - ImageHistoryList: Remove 'wpEditToken' parameter from the "revert" link for files
 * - objectcache: allow for callbacks to mask SYNC_WRITE latency
 * - Remove SourceIndexField FLAG_SOURCE_DATA
 * - Use transaction listener to run DeferredUpdates in CLI mode
 * - mediawiki.util: Remove deprecated tooltipAccessKeyPrefix/tooltipAccessKeyRegexp
 * - bidi-isolate usernames in Linker::userLink
 * - Add LoadBalancer::setTransactionListener
 * - Convert LocalFile to using getWithSetCallback for caching
 * - Deprecate SqlDataUpdate
 * - Make insertSelect do two separate queries in non-CLI mode
 * - Links update class cleanups
 * - Improve beginMasterChanges and make methods for DeferredUpdates
 * - Use wiki email for From of CC messages when $wgUserEmailUseReplyTo is set
 * - ApiParamInfo: Allow fetching info for all submodules of a module
 * - ApiQueryAllDeletedRevisions: More namespace handling fixes
 * - Adapt the ParserOutput cache TTL when including special pages
 * - Enable jquery.ui.position on mobile
 * - Always fail over to sync jobs when Special:RunJobs fails
 * - MediaWikiServices: Import NoSuchServiceException
 * - objectcache: add and use adaptiveTTL method
 * - resourceloader: Make cache-eval in mw.loader.work asynchronous
 * - mw.loader: Use requestAnimationFrame for addEmbeddedCSS
 * - mw.loader: Make 'mwLoadEnd' less expensive with a single using
 * - mw.Title: Correct handling of Unicode whitespace and bidi control characters
 * - objectcache: Make SqlBagOStuff::waitForSlaves no-op without slaves
 * - Expand SessionManager / AuthManager documentation
 * - mw.Upload.BookletLayout: Use 'amenableparser' to handle templates in error messages
 * - mw.api.messages: Allow passing extra parameters for the API call
 * - mediawiki.toc: Simplify function toggleToc call
 * - MediaWikiServices: Don't assume, that old and new instances contains the same services
 * - Revert "EditPage: Use context instead of globals (1/4)"
 * - Revert "EditPage: Use context instead of globals (2/4)"
 * - Revert "EditPage: Use context instead of globals (3/4)"
 * - Revert "EditPage: Use context instead of globals (4/4)"
 * - mediawiki.toc: Simplify ternary operator
 * - Add more estimation modes to pendingWriteQueryDuration
 * - Add DEFAULTSORT to search index field data
 * - Register a default value for the timecorrection preference
 * - Make statsd sampling rates configurable

AbuseFilter

 * - Add basic AbuseFilter reading rights for OAuth

CategoryTree

 * - Remove unused attribute mIsAjaxRequest

CentralAuth

 * - Make Special:GlobalRenameProgress work in read-only mode and for blocked users
 * - Parse right description in Special:GlobalGroupPermissions

CheckUser

 * - Add populateCheckUserTable script
 * - Modernize CheckUser old logs import script

CirrusSearch

 * - Reset the LocalClusterObjectCache service in tests
 * - Add script to compare cluster document existence
 * - Minor cleanups
 * - Remove SearchIndexField FLAG_SOURCE_DATA support
 * - Do not use the suggest reverse field if it's a non local search
 * - Add Ascii-Folding for French Language Analysis
 * - Add support for FLAG_SOURCE_DATA and defaultsort in completion suggester
 * - Saneitizer: Check if revisions are up to date

ConfirmEdit

 * - Update AUTHORS.txt

ContentTranslation

 * - Hide the 0 height sections in source column
 * - Split the MT card from ext.cx.tools.mt module
 * - Don't access EditPage::$mTitle directly
 * - Make Draft::fetch use DB_SLAVE

DonationInterface

 * - Set order_id earlier for paypal legacy
 * - Refund "country" argument is option, omit it
 * - Reenable AmEx on Adyen form for France.

Echo

 * - Improve mention success and failure messages.
 * - Remove apparently unused PNG files
 * - Followup I3daae156d: Don't truncate body text for small screens
 * - Fix notification page width responsiveness issues
 * - Remove unused CSS and icon for old preferences button
 * - Convert 'generic' icon to SVG
 * - Hide xwiki widget separator when widget is expanded
 * - Provide title when parsing wikitext
 * - Clean up Special:Notifications output
 * - Add confirmation popup widget
 * - Add the best CSS rule to notifications: word-break: break-word;
 * - Adjust Special:Notifications width for small screens
 * - Fix sidebar counts Special:Notifications in monobook
 * - Fix line-height for notification item text
 * - Follow-up 191a3309eb: merge duplicate skinStyles for monobook

ExtensionDistributor

 * - Don't escape "Return to {extension_name} extension/skin page" messages

Flow

 * - Use __DIR__ directly in Flow.php & Resources.php
 * - Make flushDeferredQueue not try to commit the transaction round
 * - Flow mentions: Don't allow invalid users (IPs are invalid)
 * - Fix category update
 * - Allow moderating resolved topic
 * - Protect against target.getSurface returning null
 * - Pass full HTML documents into VE, not fragments
 * - Add unwatch actions to bundle items
 * - Followup I7ad9dd5b436: Truncate title in item label

GlobalBlocking

 * - Migrate globalblock whitelist log entries to new system
 * - Use HTMLForm in SpecialGlobalBlockList
 * - Cleanup and improve SpecialRemoveGlobalBlock code
 * - Slightly improve globalblocks queries

GuidedTour

 * - Don't actually flip direction of page for directionality unit tests

JsonConfig

 * - Convert JsonConfigModels and JsonConfigs to attributes

Kartographer

 * - Handle geoshapes ExternalData
 * - Only call API if missing groups data
 * - Disable mapframe insertion conditionally
 * - Redo mapframe disabling
 * - Remove unused parameter
 * - Fix map dialog not displaying properly in RTL mode
 * - Fix map overlapping on mobile
 * - Fix maplink and mapframe when lat/lon/zoom are undefined
 * - Fix map position when switching from align=right to align=center
 * - Nearby markers and popups style should be consistent.
 * - Import wmui-base.less and override leaflet styling to match wikimedia style.

LiquidThreads

 * - Fix doc comments
 * - Override main context in addition to globals

MobileFrontend

 * - Add 'mark all read' button to the notification overlay
 * - Revert "Revert "Re-Apply Introduce MediaWikiServices""
 * - Revert "Re-Apply Introduce MediaWikiServices"
 * - Fix case of Title::getLocalURL function call
 * - Don't cause fatals on preferences page when default skin is Minerva
 * - Rotate chevron in opposite direction for RTL
 * - Ensure lazy image placeholders without height can be loaded
 * - Re-Apply Introduce MediaWikiServices

OAuth

 * - Add period to i18n string for consistency with other prefs

ORES

 * - Not including results when oresm_is_current = 0
 * - Improve CheckModelVersions.php
 * - Purging should delete when model is null too

Popups

 * - Do not log the click event multiple times

ProofreadPage

 * - Use EditPage's context
 * - Don't localize content model name inside exception

RelatedArticles

 * - Cache "morelike" requests for all users
 * - Use mw.viewport to check when to load related pages
 * - Remove styles for old Minerva design
 * - Don't hit the DB unnecessarily
 * - Revert "Don't hit the DB unnecessarily"
 * - Don't hit the DB unnecessarily

RevisionSlider

 * - Temporarily trigger revslider.diffreload to re-add Thanks JS code
 * - Fix position of pointers in RTL mode
 * - Do not nest mw-content-text element when reloading a diff
 * - Add temporary code to re-add WikEdDiff gadget after reloading a diff
 * - Wait for auto expand button before checking its state in browser tests
 * - Add eslint, to be used instead of jscs and/or jshint
 * - Add licence, home page URL and repository URL to package.json
 * - Close tooltips when clicking somewhere outside of them
 * - Avoid having multiple revision tooltips at once
 * - Improve tooltip handling
 * - Use progress bar instead of text when initializing the slider
 * - Avoid errors when elements are not loaded yet
 * - Update URL in print footer when reloading a diff
 * - Simplify visiblity checks for tooltips
 * - Remove not need browser test helper method
 * - Add button to have revision slider expanded automatically
 * - Do not include Revision Slider in the printable version of the page

Scribunto

 * - Use context from EditPage/Article instead of global objects

SemanticForms

 * - Clean up transformMsg usage
 * - Undefined JS variables in no-global-variables mode

SpamBlacklist

 * - Fix bogus stats where stashes counted as misses

TemplateData

 * - Don't pull in oojs-ui-toolbars, it's big and we don't use it
 * - Bump MediaWiki requirement to 1.26+
 * - Only enable OOUI if it will be used

TemplateSandbox

 * - Fix case of OutputPage::addHTML function call
 * - Use context instead of global objects

Translate

 * - Update csrf comments
 * - Revert "Use csrf token instead of edit token"
 * - MessageTable: refactor a bit to reduce use of DOM
 * - Remove use of deprecated mw.util tooltip methods
 * - tux: Change URL when the language is changed through language selector
 * - Avoid master queries on read-only parsing APIs that POST
 * - Prevent saving translations if it matches $wgTranslateBlacklist

UniversalLanguageSelector

 * - Update jquery.uls to a9dc11b
 * - Do not use tipsy class with new popup
 * - Remove unused variable loginUri

UploadWizard

 * - mw.UploadWizardDetails, mw.UploadWizardUpload: Use 'amenableparser' to handle templates in error messages
 * - mw.FormDataTransport: Don't return undefined instead of a promise

VisualEditor

 * - Disable veaction=editsource if NWE is disabled
 * - Make VE<->NWE switching progress bars non-cancellable and labelled
 * - Update tab and history state when switching between NWE & VE
 * - Update VE core submodule to master (da920dc)
 * - DesktopWikitextArticleTarget#switchToVisualEditor: Use correct revision ID property
 * - Increase Mocha and Selenium timeout for language screenshots to 40 s
 * - Preserve data when switching from NWE to VE
 * - Use super property to call parent methods
 * - Follow-up 51dd790 & c40070b: Drop T135171 debug tracking
 * - Fix restoration of redirect HTML after exiting without saving

WikimediaEvents

 * - Get rid of T135171 logging schema
 * - Turn on CirrusSearch bm25 A/B test

ZeroBanner

 * - Move qunit tests to tests/qunit
 * - Add basic test for Zero
 * - Update router code