MediaWiki 1.23/wmf9/Changelog

Core changes

 * - Make WikiPage::$mPreparedEdit public
 * - Update AbuseFilter
 * - Call to a member function getCommonMetaArray on a non-object at
 * - ULS backported bug fixes
 * - Revert Id39d4457a: Remove experiment code for moduleStorage
 * - Backport update plural rules to CLDR 24
 * - Deoptimize SVG versions of enhanced recent changes collapse/show arrows
 * - Revert &quot;Optimize all SVGs&quot;
 * - Update Disambiguator to deployment branch head
 * - Update MobileFrontend to wmf9 tip
 * - Update EducationProgram to wmf/1.23wmf9 head
 * - Commit of various wmf-branch live hacks
 * - void methods don't return anything. Especially when they always throw an exception
 * - Throw exception for unknown field in SpecialListfiles::formatValue
 * - Use SpecialPage::getPageTitle instead of SpecialPage::getTitle
 * - Update docs for Revision::getRevisionText
 * - Update comment for wfMsgExt
 * - Refactor ProfilerSimple
 * - Update Special:ChangePassword to use HTMLForm
 * - Add RunningStat class, tests
 * - changed memcached server parsing to allow for local unix domain socket connections
 * - action=feedcontributions no longer has one item more than limit
 * - LogEntry: Make newFromRow work with RC object
 * - Remove version check for mysql 4.1 from Maintenance scripts
 * - wfRunHooks return value no longer implies whether variable value was found
 * - Add @since tag to SpecialPage::getPageTitle
 * - Make MagicWordArray compatible with PCRE 8.34+
 * - With mysqli, avoid setting the charset twice
 * - Move non-API release notes out of the API section
 * - Added $purgeBlobs flag to LocalisationCacheRecache hook
 * - Format functions in CacheTime
 * - Removed trailing whitespace from ParserCache.php
 * - Removed const ParserCache::try116cache
 * - Revert &quot;Update type hint for CreditsAction::getAuthor&quot;
 * - Update type hint for CreditsAction::getAuthor
 * - Fix typo - fuction -&gt; function
 * - Remove @todo that has since been done
 * - Remove ProfilerSimple::getCpuTime
 * - Show a warning on page deletion if a page is linked to
 * - Fixed locking in JobQueueAggregatorRedis
 * - Fixed backwards JobQueueFederated::doIsEmpty method
 * - Fix more concatenation errors
 * - Define $showAll when special page is included
 * - Fix string concatenation in api documentation
 * - mediawiki.action.edit.collapsibleFooter.js use $.cookie
 * - Replace usage of deprecated Title::escapeLocalURL
 * - Fixed silly regression with $job not being set in runJobs.php
 * - Update #firstHeading on livepreview to show
 * - Fix error introduced in Change Ieae80c63e391cfb1af61841a6badd51b87d00cfe
 * - Add SVG versions of enhanced recent changes collapse/show arrows
 * - mw.loader.store: Detect malformed function stringification
 * - Optimize all SVGs
 * - API: Include variant name in meta=siteinfo
 * - Break some long lines
 * - Reduce insane amount of code duplication and long lines
 * - Release notes for removed and renamed classes
 * - Remove deprecated methods from Revision, SkinTemplate, and WikiPage
 * - Use Title::isWatchable in ApiWatch
 * - Update documentation for ApiQueryWatchlist::parseRCType
 * - Add missing return value for DatabaseBase::open overrides
 * - Throw exception when ArchivedFile::getUser has unkown type
 * - Update documentation for WebInstaller_DBConnect::execute
 * - Add release notes for I9c9f5bb8af
 * - Update documentation for QueryPage::execute
 * - Remove unreachable statement
 * - Type cast formatted time
 * - Remove Exif::makeFormattedData and Exif::getFormattedData
 * - Remove deprecated SpecialRevisionDelete::extractBitField
 * - Remove long deprecated methods from Linker
 * - Replace use of deprecated SpecialPageFactory::getGroup
 * - Remove last remainig use in core of Title::escapeFullURL
 * - Update documentation related to newFromRow and formatRow
 * - Remove unused local variables
 * - 4
 * - Fixed typo in comment in MediaWikiTestCase
 * - Declare visibility for class properties in DatabaseMssql
 * - Declare visibility for class properties in DatabaseOracle.php
 * - Declare visibility for class properties in DatabaseUtility.php
 * - Make MediaWiki:Redirectpagesub accept all wikitext.
 * - Add SVG versions of link type icons
 * - Declare visibility for class property of LoadBalancerSingle
 * - Remove underscore from classes LBFactory_*, LoadBalancer_*, LoadMonitor_*
 * - Disabled, unticked &quot;Leave redirect&quot; checkbox when redirect impossible
 * - Fix typo in DerivativeContext doc
 * - Updated location of zhtable in comment
 * - Remove old styles for #userlogin and #userloginForm
 * - Deprecate SpecialPage::getTitle
 * - Remove grey background from login/createaccount form on Monobook
 * - Added a page_links_updated column for job de-duplication
 * - Clarify comment on SpecialPage::getDescription
 * - Don't escape HTML title of Special:Contributions for newbies
 * - Added $wgJobBackoffThrottling to replace wmf sleep hack
 * - mediawiki.js: Add mw.track
 * - Release notes for Ia193571a, I56758908, I9fd40bcb
 * - Apply mediawiki.ui.button colors to all skins
 * - Allow searching for IPs' logs
 * - mediawiki.Uri: Fix host example and change foo.com to example.com
 * - Fix mediawiki-core-regression-master
 * - Fix capitalization in ApiQueryBase::titlePartToKey
 * - Add NS_USER, NS_USER_TALK aliases for Old English
 * - generateJsonI18n.php: replace i18n.php with a shim
 * - Add Travis CI job configuration for testing MediaWiki on HHVM
 * - Fix doc for NullJob
 * - mediawiki.hlist: Use mw.hook( 'wikipage.content' ) in JS fallback
 * - mediawiki.hlist: Remove skin-specific styles
 * - Remove spacing between $wgLogo and value in generated LocalSettings
 * - Clearer message for range blocks on CreateAccount
 * - Move BitmapHandler::canRotate call out of Setup.php
 * - Refactor RL modules related to Special:Userlogin
 * - vector: Switch around regular and HD content padding
 * - Make Language::fetchLanguageName lowercase its first argument.
 * - Split skins.common up into a proper trio of .elements, .content, and .interface modules.
 * - Add logging for &quot;Invalid message parameter&quot;
 * - Improvements to KSS CSS documentation generation
 * - Make SpecialContributionsBeforeMainOutput hook more useful
 * - i18n: add full-stop to three block related messages
 * - Make SpecialWatchlist extend SpecialRecentChanges (temporarily)
 * - Add ability to generate KSS files for mediawiki.ui
 * - Rename $wgExtensionMessagesDirs to $wgMessagesDirs
 * - Script to convert PHP i18n to JSON
 * - Add support for JSON i18n files
 * - mediawiki.action.edit.preview: Run hook on detached node
 * - Make the warning from TextContent::__construct show caller.
 * - remove forced index causing full index scans
 * - Make Special:Redirect able to redirect by page ID
 * - Move VectorBeta modules to VectorBeta extension
 * - Removed isQueueDeprioritized
 * - Build Special:Search's title without escaping
 * - Added a MemoryFileBackend class and made MockFileBackend subclass it
 * - Make executeReadyPeriodicTasks notify the aggregator when jobs are released/recycled
 * - Include delayed job count in showJobs.php
 * - Updated location of zhtable in comment
 * - User::loadFromRow takes a stdClass object, not an array
 * - i18n: Make LogEventsList user language direction aware
 * - Fix formatting in release notes
 * - Integrate feed-specific setup into general setup
 * - Special special page group for ExpandTemplates
 * - Add mediawiki.ui.button to places in core using mw.ui
 * - Moved ScopedCallback to /libs
 * - Removed deprecated functions and merged ProxyTools into GlobalFunctions
 * - Use a better regular expression to find documented hooks in findHooks.php
 * - Plural rules: updates for UTS #35 Rev 33
 * - Declare visibility on log class related properties
 * - Made Title cache use MapCacheLRU
 * - Add missing subjectspace pages to watchlist on update.

AbuseFilter

 * - Removing AbuseFilter::checkConditions' param
 * - Restore b/c for pre-1.23 MediaWiki versions
 * - Replace usage of SpecialPage::getTitle with getPageTitle
 * - Adding back /*_*/ prefix to table in patch-afl_action_id.sql

BetaFeatures

 * - Allow mediawiki ui resource loader module to target mobile

CheckUser

 * - Replace usage of SpecialPage::getTitle with getPageTitle

CodeEditor

 * - Combine var statements
 * - Update formatting of JavaScript files

CodeReview

 * - Revert &quot;Replace usage of SpecialPage::getTitle with getPageTitle&quot;
 * - Replace usage of SpecialPage::getTitle with getPageTitle

CommonsMetadata

 * - Rewrite template parsing with DOMDocument

Echo

 * - Replace usage of SpecialPage::getTitle with getPageTitle
 * - Add logging support for mobile boolean flag in EchoInteraction
 * - i18n: Native digits on 'agent-other-display'
 * - Allow icons to set different ltr/rtl versions
 * - Allow defining clousre for notification icon path

EducationProgram

 * - Add Arabic namespace names
 * - Replace usage of SpecialPage::getTitle with getPageTitle
 * - i18n: Add GENDER support to epoa-visible and epca-visible
 * - i18n: capitalize &quot;Commons&quot;

Elastica

 * - Delete submodule Elastica/adding Elastic library

FlaggedRevs

 * - Replace usage of SpecialPage::getTitle with getPageTitle

Flow

 * - Don't toss in parent post as old revision when validating reply
 * - Check User::isBlocked for write actions
 * - SpamBlacklist integration
 * - SpamRegex implementation
 * - Fix multi-error message: &lt;ul&gt; wasn't output
 * - Make general SpamFilter controller, allowing more than just AbuseFilter
 * - Revert &quot;emergency spam prevention&quot;
 * - AbuseFilter integration
 * - emergency spam prevention
 * - Only make the last paragraph of a post inline
 * - [Untested] Drop sqlite-specific script to add *_user_ip columns
 * - No longer pass $user arround to action message callbacks
 * - Get rid of unused var causing E_NOTICE
 * - Fix typo: convetedContent -&gt; convertedContent
 * - Updated Ruby, RubyGems and Firefox
 * - Fix undefined variable in recentchanges formatter
 * - No longer pass $permissionsUser in Templating
 * - Remove unused variable
 * - Explicitly specify db transaction
 * - Clean up meaningless &quot;post body&quot; language
 * - Utilize BufferedCache in TreeRepository
 * - Any user can hide, not just autoconfirmed
 * - Fix double moderation dialog
 * - Automatically run FlowSetUserIp on update.php
 * - Use container namespace
 * - Fix small errors in board history page
 * - Improve code to update related revision tables
 * - Use AbstractRevision::getRevisionType instead of array['rev_type']
 * - Fix FlowSetUserIp to run against larger-than-mBatchSize revision sets
 * - Improve fix comment.
 * - Post content with more than 5 lines is showing a scrollbar
 * - Fix fatal error comparing revisions
 * - When executing an action on a post, just replace the .flow-post,
 * - Fix issue with change 102154, one call to isAllowed was left.
 * - Repair missed conversion to new username lookup
 * - Update constructor arguments
 * - prevent fatal when passing null to getInnerHtml
 * - &quot;
 * - Add some comments
 * - Load usernames directly from wiki's in batches
 * - No-js css tweaks
 * - Interface shows if someone has edited a post/topic
 * - Convert UUID length 'magic' numbers to named constants
 * - white space in topic title appears in 'Comment on &quot; title&quot;' placeholder
 * - Add error handling to contributions
 * - 1
 * - 1
 * - Remove dupicate scrollTo event for topic reply link
 * - update for new collapse display
 * - No Reply button after clicking Be the first to comment
 * - Multiple moderated topics in a row takes up too much space
 * - Make condensed view more condensed
 * - Only roundtrip through parsoid for wikitext when necessary
 * - minor changes to messages shown when topics collapse
 * - Provide test files to the UnitTestList hook
 * - Special characters are being mis-encoded in links
 * - Reuse code from MWException
 * - Prevent blank topic titles
 * - Prevent overflow of post content
 * - Avoid unexpected results by using unitless line-height
 * - Split redlinking out of Templating class
 * - i18n: consistency tweaks
 * - Fetch moderation status from last revision
 * - Topic appearance tweaks
 * - Show original topic title if expanded
 * - 'prevRevId' should be 'prevRevision'
 * - pre-commit hook that checks for whitespace
 * - No longer load blocks to format
 * - `make master` command, useful for ee-flow
 * - BC for renamed actions in AbstractFormatter
 * - Correct NoIndexException class name in autoloader
 * - Merge RecentChanges &amp; Contributions' formatters extend from 1 same base class
 * - Improve findMulti for BasicDbStorage
 * - Add rtl and ltr icons for flow notification
 * - Get rid of 'Talk to User' link for moderated posts
 * - Add flow specific exceptions
 * - Consolidate and clean up &quot;scroll to this element&quot; code

GWToolset

 * - translatewiki-issues
 * - i18n: consistency tweaks
 * - add templatedata api check
 * - adding a more appropriate user-agent
 * - Couple of type hints
 * - correcting gwtoolset permission check
 * - update-install-instructions
 * - removing initial delay

Gadgets

 * - Fix typo in API doc
 * - Replace usage of SpecialPage::getTitle with getPageTitle

GettingStarted

 * - i18n: consistency tweaks
 * - Handle empty Redis sets without a warning from array_key_exists

GlobalBlocking

 * - Title::makeTitleSafe can return null

GuidedTour

 * - Follow CSS conventions, including @embed
 * - Remove unused button CSS (inherited from GuidersJS)

InputBox

 * - Replace usage of deprecated Title::escapeLocalURL

Interwiki

 * - Replace usage of SpecialPage::getTitle with getPageTitle

LiquidThreads

 * - Allow page_namespace IS NULL in watchlist query
 * - Remove use of deprecated mwEditButtons property
 * - Replace usage of SpecialPage::getTitle with getPageTitle
 * - Fix comment edited text for comments which have since been deleted
 * - Remove invalid wikitext New reply

MassMessage

 * - Replace usage of SpecialPage::getTitle with getPageTitle
 * - Store title as a job parameter

Math

 * - Remove db2 support, core MW did this a while ago
 * - Fix depreciation warnings in FileBackend construction
 * - Buffer png writes and flush them all at once

MobileFrontend

 * - Revert &quot;Add short-curcuit in api.getTokens for tokens availble in user.tokens&quot;
 * - Hygiene: Give feedback when topic added to talk page
 * - Update wgPageName on refresh
 * - Move GerritCommandLine to a new home
 * - Ensure that EnableMobileModules hook always gets an OutputPage
 * - Prevent preview and editor being shown at the same time
 * - Fix refresh icon on nearby
 * - Hygiene: Update LESS variable names
 * - Update Talk overlay to use new overlays
 * - Truncate title if too long in page preview overlay
 * - Remove unnecessary confirm dialogs in stable editor
 * - Add short-curcuit in api.getTokens for tokens availble in user.tokens
 * - Add variable to disable WAP
 * - Add support for language variants in LanguageOverlay
 * - Hygiene: Making sure people don't confuse the two notification systems.
 * - Update page previews and geonotahack to use new overlays
 * - Hygiene: Kill SkinMobile
 * - Show &quot;already logged-in&quot; notice at Special:UserLogin
 * - Story 1512: Update the chrome header
 * - i18n: Add message output format
 * - i18n: consistency tweaks
 * - i18n: consistency tweaks
 * - Fix section hash url lost after reloading page in alpha
 * - Hygiene: LESS file reorg (killing enwp.less)
 * - Hygiene: Gerrit tool
 * - Tablet detection support
 * - Hygiene: Replace usage of SpecialPage::getTitle with getPageTitle
 * - Use main page mode when appropriate for previews
 * - Remove tap highlight on section headings
 * - Use Special:MobileLanguages in beta/alpha
 * - Add Special:MobileLanguages
 * - Tool: Blow Kaldari's code review mind
 * - Hygiene: Fix use of deprecated function
 * - Redo the logic for initializing the editor button
 * - Hygiene: use the same base HTML in normal editor and VE
 * - Experiment: Disabling per-section tidy
 * - Remove focus outlines on touch devices
 * - Hygiene: clean up overlay header related code
 * - Prevent accidental editor button clicks on toggling
 * - Hygiene: remove unused check for jQuery
 * - Hygiene: remove fallback for no header-loaded event
 * - Story 1457: Promote micro.tap to beta
 * - Regression: bring back the CC-BY-SA logo in overlays
 * - Make sure we error out if token retrieval fails on save
 * - Restore error messages on account creation page
 * - Adding support for mobile flag in EchoInteraction logging schema
 * - Docs: Document overlays with KSS
 * - Hygiene: Cleanup cookie usage in MobileFrontend
 * - Introduce OverlayManager
 * - Improve mobileview tests isolation
 * - Story 1465: Add a call to action on main pages
 * - Regression: bring back fixed headers in overlays
 * - KeepGoing tweaks
 * - Don't display mobile view links on blacklisted pages
 * - View source of old revisions
 * - use send_keys instead of = to avoid corrupting file path
 * - Regression: make editor work in beta and alpha
 * - Hygiene: Fix VisualEditorOverlay and ZeroOverlay
 * - Make Special:Preferences work on Minerva
 * - Hygiene: kill applyCustomisations and template variable tweaking
 * - Hygiene: Correct the hook parameter
 * - Hygiene: Remove hookOptions
 * - Hygiene: Fixing default table styling
 * - Add intermediate Special:MobileEditor to catch users without JavaScript
 * - Rv accidental graffiti
 * - Fix fatal for non-existent users on SpecialMobileContributions
 * - Hygiene: Remove dependency between mobile.newusers and mobile.toggling
 * - Hygiene: Separate toggling code into own module
 * - Reset the issues array before we populate it
 * - Add additional instructions for new editor overlay messages
 * - Remove terrible FORCE INDEX that causes query timeouts
 * - Regression: Don't attempt to load EditorOverlayBase in stable
 * - load the page into cache before trying to use it
 * - Introduce EditorOverlayBase
 * - Don't remove .toc
 * - QA: New browser test for &quot;Nearby&quot; page
 * - Avoid using router for Issues overlay when we are in Editing overlay

MoodBar

 * - Replace usage of SpecialPage::getTitle with getPageTitle

MultimediaViewer

 * - Updated icons
 * - Add tests for the link construction code
 * - Move 'x' button, shift arrows away from screen edges
 * - Added 'Learn more' message
 * - Introduce image size bucketing
 * - Include license in title attribute of link in FileUsageDialog

OAuth

 * - Replace usage of SpecialPage::getTitle with getPageTitle

OpenStackManager

 * - Sort role members in a few places.
 * - Replace usage of SpecialPage::getTitle with getPageTitle
 * - Grab the host from the instance before deleting the instance.

PageTriage

 * - i18n: replace whitespace by entity 32

ParserFunctions

 * - a6469b6d95c447869a1a427a66150b76a2c58

ProofreadPage

 * - Add redlink=1 to previous and next page links if needed
 * - Add limitation to the zoom scale factor
 * - Replace usage of SpecialPage::getTitle with getPageTitle
 * - Add the level tag even if an other autosummary is created

Renameuser

 * - Replace usage of SpecialPage::getTitle with getPageTitle

SecurePoll

 * - Replace usage of deprecated Title::escapeLocalURL
 * - Replace usage of SpecialPage::getTitle with getPageTitle

SemanticForms

 * - Fix to avoid JS validation of fields hidden by &quot;show on select&quot;
 * - Changed redirect from Javascript to HTML
 * - Fix to prevent cross-site request forgeries
 * - Fix for removal of MW 1.17 support
 * - Fixed handling of carets (&quot;^&quot;) in template names

SpamBlacklist

 * - Revert &quot;Use WikiPage::prepareContentForEdit in SpamBlacklistHooks::filterMergedContent&quot;

Thanks

 * - Add special page alias file

TimedMediaHandler

 * - 0
 * - Clear Squid/Varnish cache on transcode delete and creation.
 * - Add timedmedia-flac message

Translate

 * - Better i18n for user creation log when promoted from sandbox
 * - Fixed failing tests when interface language changes.
 * - Save user creation comment in wiki content language
 * - Update version date.
 * - Fix typos in API docs
 * - Escape special namespaces in some messages
 * - Split the functionality of processMessageChanges script to a class
 * - Replace usage of SpecialPage::getTitle with getPageTitle
 * - For translatable pages, go directly to page mode when translating
 * - Add useful shortcuts to TUX editor
 * - Remove Special:FirstSteps
 * - Replace new Article with WikiPage::factory
 * - Update documentation
 * - Change test email addresses to @example.com
 * - Fix insertables matching
 * - Tracking beginning and end of DOM changing for testability
 * - Create a user page when granting translator rights
 * - Send confirmation email when registering user
 * - Migrate to json based i18n files
 * - Update the statsbar when saving or proofreading
 * - Refactor message tools menu item creation
 * - Fix PHP warning that breaks author output in JsonFFS
 * - Whitespace and comment cleanup
 * - Simplify jQuery calls for readability
 * - Fix typo $patern
 * - Add group desc message for Scholarship app
 * - Remove the unneeded -o-isolate CSS rule
 * - Derive targetPattern automatically from sourcePattern
 * - Remove debug printouts
 * - Really fix Intuition and format
 * - Select only older requests with the same number of translations
 * - Retain existing authors in JsonFFS
 * - Define format in intutition by hard-coding
 * - Send the reminder with subject in the target language
 * - While approving/rejecting, show next message from results matching current filter
 * - Display the absence of any requests as a header
 * - Bidi isolation for the counters in the footer of translate sandbox
 * - Special:ManageTranslatorSandbox: hide page title
 * - Add rejected user's name in quotes
 * - Update rejection message.
 * - Also rename the special page title

UniversalLanguageSelector

 * - When clicking a region, scroll only the list and not the whole page
 * - Fix alignment issue of ULS trigger
 * - Fix the Malayalam element selector in the live preview test
 * - Fix the Autonym tests after the removal of the 'end' class
 * - Update version date.
 * - Update AbyssinicaSIL font to new upstream version
 * - Updating from ULS upstream

UploadWizard

 * - Allow category prefix when entering categories
 * - Focus to Flickr URL input field after &quot;upload from Flickr&quot; is clicked
 * - Replacing 'show on map' button with a link
 * - Replace usage of SpecialPage::getTitle with getPageTitle
 * - Add smoke test to LicenseInput class and needed testing hooks.
 * - Add &quot;Test images&quot; category to &quot;upload-wizard_tests.py&quot; script
 * - Smoke tests for Upload Wizard using the API.

UserMerge

 * - Replace usage of SpecialPage::getTitle with getPageTitle

VectorBeta

 * - Blockquote styling
 * - Thumbnail styling
 * - Typography tweaks
 * - Don't set the max width on special pages or non-view actions

VisualEditor

 * - [Browser test] Retry loop for beta warning dismissal.
 * - interim move prevents edit conflicts while we sort test data issues
 * - [Browser test] Update test to handle SSL in test2
 * - [Browser test] Update test to use existing hook
 * - Use submodule for VisualEditor core
 * - Move libraries to the lib/ directory
 * - demo: Fix initial load and add error handling
 * - OOjs UI to v0.1.0-pre (04754daaa9)
 * - Documentation fix in MWBlockImageNode

WikimediaIncubator

 * - Require Module: to be prefixed
 * - Replace usage of SpecialPage::getTitle with getPageTitle

WikimediaMessages

 * - Change &quot;Massmessage&quot; to &quot;Mass message&quot;
 * - Restore wikidata-copyright message... still needed
 * - Remove two wikidata specific messages per I7d7d8a9
 * - dding messages for the cc-by-4.0 and cc-by-sa-4.0 licenses.

ZeroRatedMobileAccess

 * - Replace usage of SpecialPage::getTitle with getPageTitle
 * - Don't overwrite the banner for WAP users
 * - Updates to documentation. We'll probably move this to MediaWiki.org.
 * - Removed bottom banner border color from CSS
 * - Remove unused hook parameter, will be removed from MF too
 * - Reduce api caching, hide api warnings