MediaWiki 1.27/wmf.3/Changelog

Core changes

 * - Updated mediawiki/core
 * - LoggerFactory: Only check for Psr\Log\LoggerInterface once
 * - ObjectFactory: avoid using ReflectionClass
 * - Updated mediawiki/core
 * - Get rid of CSS transitions on form elements in mediawiki.ui
 * - mw.ForeignStructuredUpload: Mark description as being in source wiki's content language
 * - Updated mediawiki/core
 * - Language::truncate: don't chop up multibyte characters when input contains newlines
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Cherry-pick Ib7fc2f939, Ia46987d3b, I83ea7e733, & Ie04ea6059
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Make TransactionProfiler show the actual query times
 * - Update VisualEditor for I22411024, Ib3ba50f5
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Fix ChangeTag "lockTSE" values as INF does not actually work
 * - Properly make LinksUpdate be recursive when done from job queue
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - JobQueueRedis::doBatchPush: report metrics even when failures occur
 * - jobqueue: track real job inserts as 'inserts_actual'
 * - Make LinksUpdate job spec use "refreshLinksPrioritized"
 * - Make hookErrorHandler only care about serious signature errors
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - mw.ForeignStructuredUpload: Rearrange messages to always display license name
 * - mw.ForeignStructuredUpload: Provide category suggestions from the right wiki
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Push post-edit RefreshLinks jobs into 'refreshLinksPrioritized'
 * - Updated mediawiki/core
 * - Make triggerOpportunisticLinksUpdate directly use RefreshLinks
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Use specified pageId for LinksDeletionUpdate→DeleteLinksJob
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Update VisualEditor for I8bfbb309
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Revert "Enforce lagged-slave read-only mode on the DB layer"
 * - Use explicit methods instead of the jQuery constructor's second argument
 * - mw.ForeignUpload: Provide an edit summary to help track these uploads
 * - mw.ForeignStructuredUpload: Use the right license template for Commons
 * - mw.ForeignStructuredUpload: Use 'Own work' template for 'source' field
 * - OOjs UI: Backport aadaa8a1, 9aba218a
 * - Update comment about enabled extensions
 * - Added autopatrol parameter to MarkPatrolled and MarkPatrolledComplete hooks
 * - mw.Upload.BookletLayout: Correct some message parameters
 * - mw.Upload.BookletLayout: Use appropriate messages for warnings
 * - mediawiki.Upload.BookletLayout: Handle errors from TitleBlacklist (HACK)
 * - mw.Upload: Refactor error handling for the umpteenth time
 * - build: Upgrade grunt-banana-checker from v0.3.0 to v0.4.0
 * - RELEASE-NOTES-1.27: Add mw.Upload, its dialog, booklet layouts and subclasses
 * - UploadBase: Return 'was-deleted' warning in addition to 'exists-normalized', not instead of
 * - When using fopen on https streams, disable weak ciphers and compression
 * - Show different message if image thumb in different format than img
 * - Enable Squiz.Classes.ValidClassName.NotCamelCaps
 * - Clean up zh-tw.json
 * - Clear previously left-over PQresult before calling pg_get_result
 * - OutputPage: Fix typo in documentation
 * - Improve error message for missing content model on import
 * - Caching documentation tweaks and doxygen cleanups
 * - Adjust file name in style module after rename
 * - Remove outdated style for span.minor
 * - Add process cache support to WANObjectCache
 * - Skip user namespace prefix for rights log entry
 * - Fix broken min call in OutputPage
 * - Fix more LBFactory __construct IDEA errors
 * - Add ObjectCache::getMainClusterInstance
 * - Better explain WANObjectCache::TTL_NONE constant
 * - Fix "installer started" detection
 * - Set correct parentid on import
 * - mw.widgets.CategorySelector: Indicate pending requests and abort useless ones
 * - Add abort method to mw.api
 * - mediawiki.jqueryMsg: Support
 * - mediawiki.jqueryMsg: Strip leading colon in wikilinks
 * - Minor getWithSetCallback example formatting tweaks
 * - LocalisationCache::recache: Use array_fill_keys
 * - Implement ApiPageSet::setRedirectMergePolicy
 * - Fix namespaced class references for Doxygen
 * - mediawiki.Upload.BookletLayout: Add setFile method
 * - mw.widgets.DateInputWidget: Close calendar after a date is picked
 * - Remove .php5 entrypoints and $wgScriptExtension
 * - mw.ForeignStructuredUpload.BookletLayout: Reset forms after use
 * - Provide a default "max lag" value for LoadBalancer
 * - Made LinksUpdate on edit use the job queue
 * - Make ForeignDBRepo::getDBFactory actually work on 5.3
 * - Move SquidPurgeClient under /clientpool
 * - Allow change tags to be added via API action=delete
 * - Make DeferredUpdates::doUpdates use DataUpdate::runUpdates
 * - Effectively remove EDIT_DEFER_UPDATES flag
 * - Small clean-ups for OutputPage::userCanPreview
 * - Fix-up for I949fc289d: handle falsy cookie values correctly
 * - Update getWithSetCallback examples to use the new signature
 * - Various WikiPage code cleanups
 * - Replace XVO with support for the Key HTTP header
 * - Add get flags support to BagOStuff::getWithSetCallback
 * - Fix default $oldOpts from 09cbebb224
 * - Update getWithSetCallback callers to the newer signature
 * - WANObjectCache: Change getWithSetCallback signature to key/ttl/callback/opts
 * - objectcache: Fix flaky unit test
 * - Handle edge case in WikiPage::lock
 * - Site: fix copy-n-paste phpdoc
 * - Update OOjs UI to v0.12.11
 * - More quick fixes for mw.ForeignUpload
 * - Made Database atomic section errors mention the sections
 * - Fix class name of WfEscapeShellArgTest
 * - Use line comments for @codingStandardsIgnoreStart
 * - Convert updateChunkStatus to using a flush commit
 * - Convert doBatchPushInternal to use startAtomic/endAtomic
 * - Quick fixes for mw.ForeignUpload
 * - Whitelist ApiErrorFormatter_BackCompat as class not in camel case
 * - API: Allow generator=recentchanges to generate revids
 * - Use ForeignFileRepo information for foreign uploads
 * - Split out UserInputWidgets from mediawiki.widgets
 * - Return log id for file deletions
 * - Make WikiMap fall back to sites if a site couldn't be found using $wgConf
 * - Bump WANObjectCache::LOW_TTL to 30
 * - Change 1.26 to 1.27, mostly in doc comments
 * - Clean up BagOStuff::get interface
 * - Remove begin/commit from recordOldUpload
 * - Move WebRequestUpload class to its own file
 * - Update more docs and type hints to use IDatabase
 * - Lower CDN cache TTL when slave lag is high
 * - Add MemoizedCallable for APC-backed function memoization
 * - Restore "userAgent" MultiHttpClient constructor override
 * - Fix duplicate automatic file backend bug
 * - Fix AssembleUploadChunksJob/PublishStashedFileJob IDEA errors
 * - Defer execution of HTMLCacheUpdate instances
 * - Add UserMailerTransformX and UserMailerSplitTo hooks
 * - Remove ORM use from DBSiteStore
 * - MultiHttpClient: Don't use "MW" in User-Agent
 * - jquery.tablesorter: Match clobbered iso dates and fix edgecases
 * - Remove double load of mediawiki.action.view.filepage
 * - Revert "Remove mismatched COMMIT from FileDeleteForm"
 * - Remove begin/commit from recordUpload2
 * - SpecialEditWatchlist: Use 'parentheses' message instead of hard-coded
 * - API: Add ApiQueryAllRevisions
 * - Add more test cases to OldChangesListTest
 * - Consistent TODO spelling in JavaScript
 * - mw.Upload.BookletLayout: Add a catch all error state
 * - Change getCacheSetOptions callers to use "Database"
 * - Small optimization for FileContentsHasher
 * - Show password-required message only if $wgRequirePasswordforEmailChange = true
 * - Change "Subject/headline" to "Subject"
 * - Enforce lagged-slave read-only mode on the DB layer
 * - Pass the search term into the SpecialSearchResultsAppend hook
 * - Fix French special pages titles inconsistencies

AbuseFilter

 * - Avoid pointless range scan for 'load-recent-authors'
 * - Increase AbuseFilterTokenizer cache TTL from 10m to 1d
 * - Track tokenizer cache hits / misses
 * - Use isset to check array element exists rather than relying on @ operator
 * - AbuseFilter: don't install custom error handler
 * - Add composer test entry point
 * - Conversion to using startAtomic/endAtomic

AccountAudit

 * - Update identation to use tabs

ApiFeatureUsage

 * - Fix wrong translation of special page title in zh-hans

Babel

 * - Breaking change: Remove autoload from composer.json
 * - Update identation to use tabs
 * - build: Updating development dependencies

Calendar

 * - Update identation to use tabs

Campaigns

 * - Update identation to use tabs

CategoryTree

 * - Update identation to use tabs
 * - build: Updating development dependencies

CentralAuth

 * - build: Updating development dependencies

CharInsert

 * - Update identation to use tabs

CheckUser

 * - build: Updating development dependencies

CirrusSearch

 * - Add --forceParse UpdaterFlag and option in forceSearchIndex script
 * - Remove loggingSchema/search.js
 * - Added justMapping option to updateOneSearchIndexConfig
 * - Final tweaks for cross-cluster index copy script
 * - Handle ElasticaWrite job failures internally
 * - Add support for connect timeout
 * - Fails gracefully when running a job for an unknown cluster
 * - Split connection to source and target.
 * - Report common terms usage to javascript
 * - Fix browser test insource_api.feature
 * - Remove double space from message
 * - build: Updating development dependencies
 * - The replica count can also be 'false' to disable replicas
 * - Per-cluster timeouts for ElasticaWrite job
 * - Handle per-cluster shard and replica counts
 * - Log non-failures to CirrusSearch channel

Cite

 * - Do not double-parse 'cite_error_references_duplicate_key' error message
 * - Display 'cite_error_references_duplicate_key' next to the affected ref
 * - Add tests for the follow parameter

CiteThisPage

 * - Update identation to use tabs

Citoid

 * - Tweak error message CSS
 * - build: Updating development dependencies

CleanChanges

 * - Update identation to use tabs

CodeEditor

 * - Update identation to use tabs

CodeReview

 * - build: Updating development dependencies

Collection

 * - Update identation to use tabs
 * - Stop using $wgScriptExtension, deprecated

ConfirmEdit

 * - Update indentation to use tabs

ContentTranslation

 * - Remove obsolete README.md
 * - Reduce left padding title details for translation and suggestion lists
 * - Consistent TODO spelling in JavaScript
 * - Rename scrubWikitext to scrub_wikitext
 * - build: Updating development dependencies
 * - Set suggestions as active tab for new users
 * - Suggestions: Improve the source and target language identification
 * - Show progress, success, fail indication of draft restore
 * - Stop excess page image queries
 * - Move the spinner construction to ext.cx.widgets.spinner widget

CreditsSource

 * - Update indentation to use tabs

CustomData

 * - Update indentation to use tabs

DisableAccount

 * - build: Updating development dependencies

Disambiguator

 * - Update indentation to use tabs

DismissableSiteNotice

 * - Update indentation to use tabs

DonationInterface

 * - Update indentation to use tabs
 * - Add 'amount' to debug logging
 * - Astropay: record charged amount, not session amount
 * - GlobalCollect: record charged amount, not session amount

DoubleWiki

 * - Update indentation to use tabs

DynamicSidebar

 * - Update indentation to use tabs

Echo

 * - Add composer.json
 * - Support UserMerge into anonymous user
 * - build: Updating development dependencies
 * - Override footer buttons hover color in Modern
 * - Fix various bugs in mw.echo.Logger and its callers
 * - NotificationBadgeWidget: Fix alignment of actions buttons
 * - Follow-up f9e8c5057, 983c7a2463: fix JS error when there are no notifications
 * - Follow-up f9e8c5057: fix JS error
 * - Log notification impressions and clicks

Elastica

 * - Add support for connection timeout in ElasticaConnection
 * - Update indentation to use tabs

EventLogging

 * - Update indentation to use tabs

FlaggedRevs

 * - Update indentation to use tabs
 * - build: Updating development dependencies

Flow

 * - Fix cache key construction
 * - Temporarily disable RESTbase support to avoid data-parsoid issues
 * - Ensure memcached keys are valid ASCII
 * - Add RateLimits SpamFilter
 * - ElsaticaConnection doesnt have a constructor
 * - Update compiled handlebars for reverts
 * - Revert "Add categories to the sidebar"
 * - Revert "Remove existing categories from DOM after the widget ate them"
 * - Remove existing categories from DOM after the widget ate them
 * - Fixing summarize after resolve topic
 * - Fix edit board description
 * - ReplyWidget: Correct documentation of "expandable" option
 * - Use the new editor when editing topic summary in a new window
 * - Avoid using (slow) jQuery hide function in flow-initialize
 * - Recompile handlebars
 * - Move Flow DM population to the bottom
 * - build: Updating development dependencies
 * - Lazy load the ReplyWidget editor
 * - Remove useless unhelpful tooltips from moderation menu
 * - Add categories to the sidebar
 * - Use the new editor when undoing edits
 * - Get the correct topic DOM object when creating EditPostWidget
 * - Add 'clear:both' at the end of the topic summary
 * - Follow-up 5a35e04: reduce code duplication
 * - Load ext.flow as module => 'top'
 * - Use the new editor for topics that show on infinite scroll
 * - Avoid recursion in BufferedBagOStuff
 * - Update BagOStuff subclasses to implement doGet
 * - Remove cas method

FundraisingTranslateWorkflow

 * - Update indentation to use tabs

Gadgets

 * - build: Updating development dependencies
 * - Update getWithSetCallback callers to the newer signature

Gather

 * - build: Updating development dependencies

GeoCrumbs

 * - Update indentation to use tabs

GettingStarted

 * - Update indentation to use tabs
 * - build: Updating development dependencies

GlobalBlocking

 * - build: Updating development dependencies

GlobalCssJs

 * - build: Updating development dependencies

GlobalUsage

 * - build: Updating development dependencies

GoogleNewsSitemap

 * - Update indentation to use tabs

Graph

 * - build: Updating development dependencies

GuidedTour

 * - Update indentation to use tabs

ImageMap

 * - Update indentation to use tabs

ImageMetrics

 * - Update indentation to use tabs

Insider

 * - Update indentation to use tabs

Interwiki

 * - Update indentation to use tabs

LabeledSectionTransclusion

 * - Update indentation to use tabs

LandingCheck

 * - Update indentation to use tabs

LdapAuthentication

 * - Update indentation to use tabs

MapSources

 * - Update indentation to use tabs

Math

 * - build: Updating development dependencies

MobileFrontend

 * - Made MobileFrontendSkinHooks::getTermsLink public
 * - Beta: Add a "back to top" button to the bottom right of the page
 * - Follow up I20e46165fb
 * - Follow up I20e46165fb7695
 * - Hygiene: Empower any skin to be the default mobile skin
 * - Hygiene: Remove obsolete cookie
 * - Fix Special:Nearby reload and click actions
 * - Add support to Special:Nearby
 * - Remove 'header-loaded' event
 * - Update schema used for MobileOptionsTracking

MultimediaViewer

 * - Add extension.json, empty PHP entry point
 * - build: Updating development dependencies

MwEmbedSupport

 * - Update indentation to use tabs

NavigationTiming

 * - Use OR instead of AND for getTiming invalidation check
 * - Update indentation to use tabs

NewUserMessage

 * - Update indentation to use tabs

OAI

 * - Update indentation to use tabs

OATHAuth

 * - Update indentation to use tabs

OAuth

 * - build: Updating development dependencies

PageImages

 * - build: Updating development dependencies
 * - Add example to ApiQueryPageImages via getExamplesMessages
 * - Add basic PHPUnit tests

PageTriage

 * - Remove double spaces in messages
 * - Make review notifications less scary by explicitly saying they're about a page
 * - Updated watir-webdriver Ruby gem to the latest version

PagedTiffHandler

 * - Update indentation to use tabs

ParserFunctions

 * - Update indentation to use tabs

PdfHandler

 * - Update indentation to use tabs
 * - build: Updating development dependencies

Petition

 * - build: Updating development dependencies

Poem

 * - Update indentation to use tabs

PoolCounter

 * - Update indentation to use tabs

Popups

 * - Update indentation to use tabs
 * - build: Updating development dependencies

Quiz

 * - Update indentation to use tabs

RSS

 * - Update indentation to use tabs

RandomRootPage

 * - Update indentation to use tabs

RelatedArticles

 * - Update indentation to use tabs
 * - build: Updating development dependencies
 * - Remove CustomData dependency
 * - Use extension registration

RelatedSites

 * - Update indentation to use tabs

Renameuser

 * - build: Updating development dependencies

Score

 * - Update indentation to use tabs
 * - build: Updating development dependencies
 * - Remove values from checkboxes in score inspector

Scribunto

 * - build: Updating development dependencies

SearchExtraNS

 * - Update indentation to use tabs

SemanticForms

 * - Fixes for handling of SMW "yes" values for checkbox
 * - Checkbox now uses mb_strtolower to do its lowercasing for comparison
 * - Improved reading of "Yes" values for checkbox

SiteMatrix

 * - build: Updating development dependencies

SpamBlacklist

 * - build: Updating development dependencies

SubPageList3

 * - Update indentation to use tabs

SubpageSortkey

 * - Update indentation to use tabs

SyntaxHighlight_GeSHi

 * - Add missing linebreak
 * - Update indentation to use tabs

TemplateData

 * - build: Upgrade various devDependencies to latest and make pass

Thanks

 * - build: Updating development dependencies

TimedMediaHandler

 * - Update indentation to use tabs

TitleBlacklist

 * - build: Updating development dependencies

TocTree

 * - Update indentation to use tabs

TorBlock

 * - Update indentation to use tabs

Translate

 * - Close language selector if group selector is opened
 * - Move hooks from resource file to main php file
 * - ext.translate.special.translationstash.js: fix some whitespace
 * - Replace uses of dirname( __FILE__ )

TranslationNotifications

 * - Update indentation to use tabs
 * - build: Updating development dependencies

TrustedXFF

 * - Update indentation to use tabs

UnicodeConverter

 * - Update indentation to use tabs

UniversalLanguageSelector

 * - Update jquery.ime to ae3ae15
 * - build: Updating development dependencies

UploadWizard

 * - Remove default category for UploadWizard files
 * - Updated watir-webdriver Ruby gem to the latest version
 * - Remove hacks from 063cc6bc, no longer needed
 * - build: Updating development dependencies
 * - Build: Test PHP code quality with mediawiki-codesniffer

UserMerge

 * - Update indentation to use tabs
 * - build: Updating development dependencies

VipsScaler

 * - Update indentation to use tabs

VisualEditor

 * - ve.ui.MWMediaDialog: Only disable 'upload' and 'save' actions on setup, not on tab switch
 * - ve.ui.MWMediaDialog: Move upload booklet init further up
 * - Follow-up Id473b45: Call getResults on input widget
 * - Update VE core submodule to master (52eb218)
 * - [BrowserTest] Use English if i18n file does not exists to convert the text
 * - build: Updating development dependencies
 * - Media upload: Hide tabs after first stage of upload booklet
 * - Media upload: Only reset upload booklet on dialog setup
 * - MediaDialog: Rename bookletLayout to mediaSettingsBooklet
 * - MWLinkAnnotationInspector: Close inspector when a search result is clicked
 * - MWLinkAnnotationInspector: Use IndexLayout for internal/external
 * - [BrowserTest] Load i18n messages from MediaWiki to browser tests
 * - MWParameterPage: Focus value input when focussing page
 * - Update VE core submodule to master (c864138)
 * - Fix typo in MWMediaDialog
 * - Update VE core submodule to master (363adf2)
 * - Add image upload tab to media dialog
 * - ve.init.mw.Target: Remove jqueryMsg hacks in #saveErrorNewUser
 * - ReferenceContextItem: Factor out getReferenceNode and use correct node
 * - Find and replace: Add pref keys for find/replace text inputs

WikiEditor

 * - Update indentation to use tabs

Wikidata

 * - Update Wikibase to wmf3b

WikidataPageBanner

 * - build: Updating development dependencies
 * - Styles: Set z-index of .wpb-topbanner-toc and .wpb-name to 1
 * - Add newlines to code and documentation for readability
 * - Fix and add missing PHPDoc tags

WikimediaEvents

 * - Revert "Revert "Update satisfaction schema id due to bad varnish caching of old id""
 * - Revert "Update satisfaction schema id due to bad varnish caching of old id"
 * - Revert "Rename search.js -> searchSatisfaction.js"
 * - Revert "Move Schema:Search from CirrusSearch"
 * - Revert "Refactor search.js to only load deps for users in test"
 * - Update satisfaction schema id due to bad varnish caching of old id
 * - Refactor search.js to only load deps for users in test
 * - Move Schema:Search from CirrusSearch
 * - Rename search.js -> searchSatisfaction.js
 * - Revert multiple patches from WME due to suspected perf impact
 * - Add a change tag to log and RC entry of cross-wiki uploads, too
 * - Add a change tag to cross-wiki uploads
 * - Add common terms A/B test to search satisfaction
 * - Add new fields to TestSearchSatisfaction
 * - Update indentation to use tabs

WikimediaMaintenance

 * - getJobQueueLengths: add '--report' option for StatsD reporting

WikimediaMessages

 * - Add i18n messages for Meta Wiki, MediaWiki wiki and Wikispecies site links on Wikidata
 * - Update indentation to use tabs
 * - Change be-x-old to be-tarask
 * - Replace spaces with tabs in i18n/wikimedia/en.json
 * - Fix language names in messages

XAnalytics

 * - Update indentation to use tabs

ZeroBanner

 * - Fixing crashing bug - matching MobileFrontend changes
 * - Fix fatal error in ZeroSpecialPage
 * - build: Updating development dependencies
 * - Defer loading of ZeroOverlay until needed

cldr

 * - Update indentation to use tabs
 * - Update to CLDR 28
 * - Breaking change: Remove autoload from composer.json

intersection

 * - Update indentation to use tabs

timeline

 * - Update indentation to use tabs

wikihiero

 * - Update indentation to use tabs