MediaWiki 1.27/wmf.7/Changelog

Core changes

 * - Add cards extensions to appease l10nupdate
 * - Updated mediawiki/core
 * - Update CentralNotice
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Don't install a custom error handler for hooks
 * - Bump CentralNotice to HEAD of wmf_deploy
 * - Update ContentTranslation to 3d551a9
 * - Connect OOjs UI to MediaWiki's localisation system
 * - Updated mediawiki/core
 * - tests: let us select/exclude ParserTests
 * - Update VisualEditor for I11d37b86 and Ib9c45e60d3
 * - Updated mediawiki/core
 * - mediawiki.ForeignStructuredUpload: Behave correctly when '=' appears in a description
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Added Rakefile
 * - Update VisualEditor for Iee9ae2bb
 * - fbbc737c86b500c11bbb471ec1001c50ab8853c
 * - Special:Watchlist: Add user preference to &quot;Show last&quot; options, fix float comparison
 * - Update CentralNotice
 * - Update cached user ID after user is added to the database
 * - Use User::getId instead of trying to fix the ID in BlockTest
 * - resources: Upgrade jquery.i18n from 1.0.3 to 1.0.4
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Fix conflicting configuration name in TitleInputWidget
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - Updated mediawiki/core
 * - phpunit: Omit long xdiff test provider from Jenkins output
 * - resourceloader: Centralise expected version hash for blank test modules
 * - objectcache: Implement check keys per cache key in WANObjectCache::getMulti
 * - resourceloader: Use 'phpunit' instead of 'test' as default target in PHPUnit tests
 * - objectcache: Add more WAN cache check key unit tests
 * - Remove vendor prefix support for SVG embedding
 * - Reduce updateLinksTimestamp DB contention
 * - Add 'mobile' target to 'mediawiki.raggett' module
 * - Don't claim model validation failed if the content couldn't be loaded
 * - objectcache: Add more @covers to WANObjectCache unit tests
 * - phpcs: Assignment expression not allowed
 * - Improve error message if check not defined for a password policy.
 * - Allow a TitleInputWidget user to decide, if an empty value should be validated
 * - ApiFeedWatchlist: Set messages for param-per-value too when copying from ApiQueryWatchlist
 * - Make JobQueueAggregator::doNotifyQueueNonEmpty avoid queries
 * - phpcs: Use __DIR__ constant instead of calling
 * - Clean up some wfDebug calls in LoadBalancer
 * - Generalize the LinkCache clear call to JobRunner
 * - Add i18n messages for API feedrecentchanges 'categories' and 'categories_any'
 * - resourceloader: Update MessageBlobStore documentation and code cleanup
 * - Add LBFactory::disableChronologyProtection method
 * - Decouple ChronologyProtector from user sessions
 * - Remove PHP detection from entry points other than index.php
 * - Release notes for Ic7cd6f77
 * - Move down $logEntry publish call in recordUpload2
 * - Followup a88df43d: make $wgDebugDumpSql log commented queries again
 * - Revert &quot;Avoid doNotifyQueueEmpty race conditions for Redis&quot;
 * - resourceloader: Remove deprecated MessageBlobStore::getInstance
 * - startup.test: Add IE11 and Edge strings to Grade A tests
 * - Really validate that $wgArticlePath starts with a slash
 * - Remove spammy wfDebug from LocalFile::loadFromCache
 * - Allow undo via ApiEditPage for all content models
 * - Update OOjs to v1.1.10
 * - mediawiki.Uri: Remove redundant jshint overrides for latedef
 * - TitleSearchWidget: Only update results if the query is current
 * - UserMailer: Use PHP_EOL instead of DIY
 * - Add flexbox mixins to mediawiki.mixins
 * - Update OOjs UI to v0.13.2
 * - Validates wgArticlePath does start with slash (/).
 * - Avoid doNotifyQueueEmpty race conditions for Redis
 * - mw.loader: Use requestIdleCallback to update module store
 * - Make TitleInputWidget configurable, if term should be highlighted or not
 * - Avoid using !important and hide the nolabel instead
 * - Make getLaggedSlaveMode use reuseConnection as needed
 * - Migrate feeds from $messageMemc to the WAN cache
 * - Various JobQueue test tweaks
 * - resourceloader: Log if MessageBlobStore failed to fetch a message
 * - Language: Convert names cache from MapCacheLRU to HashBagOStuff
 * - Title: Convert cache from MapCacheLRU to HashBagOStuff
 * - build: Enable all remaining jsduck jsDoc rules except two
 * - Make FindOrphanedFiles handle bad file titles
 * - Make FindOrphanedFiles handle files with ! properly
 * - Make runOnTransactionIdleCallbacks handle dangling transactions
 * - Cleaner Special:Watchlist options form

BounceHandler

 * - Add Reedy to BounceHandler maintainers list
 * - Add Username to the Unsubscribe log message

Cards

 * Newly deployed extension

CentralAuth

 * - Don't fatal even if the Title for the log extract can't be instantiated

CentralNotice

 * - impressionDiet: don't count impressions if banner hidden by close cookie
 * - ext.centralNotice.display.customHideBanner: fix var name and actually hide
 * - ext.centralNotice.display: Add API for custom hide cookie reasons and durations
 * - ext.centralNotice.display: add 'namespace' hide reason
 * - impressionDiet: default hide banners if no storage is available
 * - impressionDiet: handle deployed problem for campaign categories using legacy

CirrusSearch

 * - Try interwiki search if we have less that N (default 3) results
 * - Record if language detection occured in UserTesting logs
 * - Remove unused use imports
 * - Record the test bucket in CirrusSearchRequestSet log
 * - Remove unused &quot;use&quot; statements

Collection

 * - Generate PDFs if $wgScriptPath is empty

ContentTranslation

 * - FOLLOWUP I80edee5f0: Move Echo presentation model into CX namespace
 * - Revert &quot;Update firebase/php-jwt to 3.0.0&quot;
 * - Convert notification to the new Echo Notifications Model
 * - Suggestions: Show only two category based lists at any time
 * - Suggestions: For list classes use type instead of name
 * - ApiContentTranslationSuggestionList: Avoid lists with zero suggestions
 * - Add display name option for manually curated campaigns
 * - Remove trailing slash from ContentTranslationRESTBase URL
 * - Suggestions: Fix a js error in list refresh logic
 * - PublishedTranslations API: Include published date &amp; translation id in output
 * - Suggestions: For a fresh favorite list, set display name and type
 * - Suggestions: While refreshing scroll to top of public suggestion list
 * - Do not delete the saved translation when published
 * - Suggestions: When suggestions are empty from all sources, show empty info
 * - Suggestions: Wrap the personal and public collections
 * - CX should default to using rest.wm.o, not parsoid-lb
 * - Update firebase/php-jwt to 3.0.0
 * - Add some extra information to save failure logging
 * - Suggestions: Personalized recommendations

Disambiguator

 * - Empty PHP entry point, replace with shim that loads extension.json

DonationInterface

 * - js updates for mustache
 * - add submethods to adyen adapter
 * - move adyen to mustache templates

Echo

 * - Unstub $wgLang in BasicFormatter::getLanguage too
 * - Remove old, now unused mention flyout messages
 * - Unstub $wgLang before passing it to DiscussionParser::getTextSnippet
 * - Browser Tests: fix
 * - EventPresentationModel: Add accessor for current user's username
 * - Allow welcome notifications to have a primary link
 * - Fix some phpdoc, add missing @throws
 * - Remove unncessary code from NotifUserTest
 * - Remove unused NotifUser::getFormattedNotificationCount
 * - Don't export unused wgEchoOverlayConfiguration/wgEchoHelpPage JS variables
 * - Separate skin specific styles and improve Monobook appearance

EventLogging

 * - Add docs dir to jshintignore

ExtensionDistributor

 * - Don't explicitly mention data going to graphite

Flow

 * - Surface permission errors
 * - Unbrand VisualEditor to &quot;the visual editor&quot;, for consistency with VE
 * - &quot;wikitext&quot; is not a proper noun
 * - Convert the post-summary query in ContributionsQuery to use JOINs
 * - Fix JS error in topic page width toggle
 * - Don't use array plus to merge SQL condition arrays
 * - Remove wgFlowDefaultWorkflow
 * - Fix log entries for topic lock/unlock

Gadgets

 * - Add note about excluding default gadgets in Special:GadgetUsage

GettingStarted

 * - Upgrade browser tests to use mediawiki_selenium 1.6 Ruby gem

Graph

 * - Insert new graphs in a page inside VisualEditor
 * - VisualEditor: Make dialog 'larger' when editing JSON
 * - VE: Use a force size refresh when switching to JSON editing
 * - VisualEditor: Remove border-radii from TableWidget elements
 * - VE: Clear Ace's undo manager after setting initial value

MobileApp

 * - Roll out RESTBase usage to Android Beta app: 10%

MobileFrontend

 * - Vary HTML output by NetSpeed designation
 * - Improve disableImages cookie code
 * - Disable the optin to beta message / make it configurable
 * - build: Updating development dependencies
 * - Hygiene: PHP fix ups
 * - Hygiene: Deprecate api

MwEmbedSupport

 * - Use mediawiki.util to insert style tags

NavigationTiming

 * - Add isHiDPI and isHttp2 properties; drop isHttps

OATHAuth

 * - Fix QR code generation module dependency

OAuth

 * - Fixup for Ib9b800d3d7ddd095856c5deaf88be82d64db0fb8
 * - Fix MWOAuthRequest::fromRequest logging

PageImages

 * - Author prefers full name in @author tag
 * - Add missing and fix wrong @license tags

PagedTiffHandler

 * - Convert hex value to decimal. Don't just cast to int.

QuickSurveys

 * - Fix clear:both breaking pages

Scribunto

 * - Fix typo in comment and missing spaces

SemanticForms

 * - Added JS validation to disallow pipes, unless in template calls
 * - Random numbers now get another digit if too many failed attempts
 * - Fix for de74f1f - changed removal method for null Cargo values

TemplateData

 * - Display format icon and message inside parameters table caption
 * - Use checkbox widgets instead of toggle widgets
 * - Add block/inline icons
 * - Introduce new 'format' template property

Thanks

 * - Fix link to Flow posts
 * - Use new EventPresentationModel::getViewingUserForGender helper
 * - Set explicit output format for message in ThanksPresentationModel

TimedMediaHandler

 * - Add opus to accepted file extensions

UploadWizard

 * - UploadWizardCampaign: Enable tidy when parsing
 * - UploadWizardCampaign: Fix PHP warning when checking buttons

UserMerge

 * - Actually pass phpcs

VisualEditor

 * - Avoid embedding Git metadata in ext.visualEditor.data
 * - AceEditorWidget: Ensure loadingPromise is set when setupEditor runs
 * - Prevent switching from unedited section directly into VE
 * - Don't load non-existant 'visualeditor-linkinspector-open' message
 * - Ensure we always catch the wikiEditor-toolbar-doneInitialSections event
 * - AceEditorWidget: Allow users to force an Ace editor refresh
 * - AceEditorWidget: Refactor to ensure setValue runs synchronously
 * - Update VE core submodule to master (3549158)
 * - Provide a tool to insert a signature in namespaces that need it
 * - AceEditorWidget: Emit resize event at end of cycle
 * - Ensure magic link nodes inherit the annotations of their text
 * - mailmap: Remove unused alias for ttijhof@wikimedia.org
 * - Update VE core submodule to master (77d786a)
 * - Edit mode switching: Separate styles
 * - Edit mode switching: Only show WE toolbar button once module is loaded
 * - Remove redundant VisualEditorDataModule::getGitHeadHash static cache
 * - Enable new module versioning for VisualEditorDataModule
 * - Replace 'source' icon with OOUI's 'wikiText' one

WikiEditor

 * - extension.json: Remove call to non-existent wikieditor-toolbar-tool-file-pre i18n
 * - extension.json: Remove calls to non-existent wikieditor-toolbar-help-content-heading1-*
 * - extension.json: Remove calls to non-existent wikieditor-toolbar-characters-*

Wikidata

 * - Fix exception handling during dump creation
 * - Update Wikidata - Adjust watchlist filter for changes in core

WikimediaEvents

 * - Restore satisfaction schema and fix the performance issue that it had

WikimediaMaintenance

 * - Don't do a wfWaitForSlave call on every row in refreshMessageBlobs.php
 * - Add changeSkinPref

WikimediaMessages

 * - Update ExtensionDistributor messages for 1.26 release