MediaWiki 1.23/wmf1/Changelog

Core changes

 * - Commit of various wmf-branch live hacks
 * - Initial bump to 1.23
 * - Fix double-parsing of account creation messages.
 * - Cleanup skins/SiteBarTest and @todo/covers
 * - @covers for all GlobalFunc tests
 * - Improve linkprefix regular expressions
 * - Fix scope on all /phpunit test methods
 * - Cleanup tests/includes/media
 * - mediawiki.inspect: use $.toJSON &amp; add workaround for FF oddity
 * - New hook accommodates non-revision rc queries
 * - Add $wgSemiprotectedRestrictionLevels
 * - Remove all instances of the word &quot;iff&quot;
 * - Fix doc error in new incr test
 * - Address PHP CodeSniffer errors and warnings
 * - General cleanup of Parser tests
 * - tablesorter: Unbreak abbreviated month name support
 * - Cleanup MagicVariableTest
 * - Parser::replaceInternalLinks: fix batching
 * - Use restriction-level-* messages in Linker::formatTemplates
 * - Avoid master queries in Revision::newFromTitle(..., Revision::READ_NORMAL)
 * - Fix Redis increment behavior by using BagOStuff-&gt;incr instead
 * - Test BagOStuff-&gt;incr method
 * - mediawiki.util: Use 'wikipage.content' hook for TOC hiding
 * - lockmanager: QuorumLockManager subclasses can get EX/SH locks at once
 * - Cleanup /languages/* tests
 * - mw.api.postWithToken now forwards promise on fail if we have token
 * - Add more @covers tags and test cleanup
 * - Mention the new HTMLForm 'vform' display format.
 * - Fix typo erronously -&gt; erroneously
 * - jquery.localize: Fix incorrect use of void tag for &lt;html:msg&gt;
 * - Add 'RedisPubSubFeedEngine' feed engine
 * - Added ceph comment
 * - Added a few more trx sanity checks to DatabaseBase
 * - Declare visibility on class properties
 * - Add @covers tags for more tests
 * - Fixes for duplicateStderr (I833aeb3a)
 * - Remove proxy check in EditPage.php
 * - mediawiki.inspect: add CSS report
 * - BaseTemplate: Exclude two more attributes in makeLink
 * - Simplify boolean attribute handling for Html::input in templates
 * - Clean up old title on move before reset article id
 * - Make it possible for EditPage::getCopyrightWarning to return HTML
 * - Have list items occupy their own line
 * - Split changes list classes into separate files
 * - mediawiki.notification: Expose close method to hide a Notification
 * - Added more Message parameter functions
 * - Correct release notes for I9dd9f0fd499c37f2
 * - filebackend: try to combine SH and EX lock acquisition
 * - Small JobQueueFederated performance tweaks
 * - Fixed a bunch of annoying deprecation notices
 * - Rename Toolbox to Tools
 * - Reduce excess lock contention and chance for failure on rename
 * - importImages.php: Correctly generate automatic summary
 * - Don't blindly overwrite $options in importImages.php
 * - Add @covers for GenderCache + MessageCache tests
 * - Add @covers tags for /content files
 * - Add @covers for main Database test types
 * - Tweak bidi on Special:Contributions/newbies
 * - Removed unused const QoS_Atomic constant (odd casing)
 * - jobqueue: various cleanups to JobQueueFederated
 * - Try to make sure jobs will not get pushed twice on failures
 * - Remove 'Debug' hook from wfDebug and wfDebugLog
 * - Fix SQLite exception when $wgDBuser is set
 * - Add $wgEnableParserLimitReporting to control whether the NewPP limit
 * - mediawiki.api: add postWithToken and getToken
 * - Add archive, externallinks PK
 * - If $wgShowHostnames is true, add parsed by to NewPP limit report
 * - FormOptions: Document getValueReal, consistency fixes
 * - deleteEqualMessages: Exclude messages that are empty by default
 * - Split change_tag sql patch

CentralAuth

 * - Implement OAuth hook to get userid from username
 * - Vary on X-Forwarded-Proto for changing-protocol redirects

DataTypes

 * - update composer file

DataValues

 * - update composer file
 * - Reorganize and add tests for inherit's naming features + skip some tests in IE8
 * - Split inherit tests into different files
 * - $.ui.suggester: Suppress autocomplete's native blur handling
 * - Factored getscrollbarwidth utility function out of suggester widget
 * - Introducing QuantityValue::transform
 * - Introducing DecimalMath
 * - (bug #55512) QuantityValue rewrite based on DecimalValue
 * - (bug #55511) Introducing DecimalValue
 * - $.ui.suggester: Implemented autocompletestring for static result set
 * - Removed replacing of suggester input text when hovering a suggestion
 * - inputAutoExpand: Catch miscalculation
 * - (hotfix) Make inherit work with IE 8 again

Diff

 * - update composer file
 * - Optimized imports
 * - Update README.md
 * - Update README.md
 * - Update OrderedListDiffer.php

DonationInterface

 * - Zero-padding branch code out to 4, as per GC instructions
 * - (FR #1090) trim inputs before validation
 * - Address warning in GatewayFormChooser
 * - Wire up the new RapidError form functionality so we can actually use it.
 * - Massive cleanup of session behavior.

Echo

 * - Remove &quot;Talk:&quot; prefix from &quot;You have new messages&quot;
 * - EchoBasicFormatter::formatFragment returns a Message object
 * - Remove duplicate &quot;global $wgUser&quot;
 * - Replace wfMessage calls with $this-&gt;msg

FlaggedRevs

 * - ValidationStatistics: Showing unreviewed pages depends on config
 * - Remove calls to wfDebugDieBacktrace

MassMessage

 * - Use EditPage::getCopyrightWarning directly for message
 * - Use TitleCase for job names
 * - Use $this-&gt;msg instead of $context-&gt;msg

MobileFrontend

 * - Regression: Fix login logo
 * - Update editing schema to support A/B test
 * - Define EventLogging schemas in MobileFrontend
 * - Regression: Fix &quot;Start uploading&quot; button on lead uploads tutorial
 * - Add a warning about mobileformat changes
 * - Moving shared code to mediawiki-selenium Ruby gem
 * - Fix scripts/cucumber.sh
 * - Ensure namespace is passed when history code loaded
 * - Hygiene: Deprecate polyfills.js
 * - Hygiene: Remove LESS comment
 * - QA#1211 External links and images test
 * - Fix incorrect value being passed in second argument of MobileContext::getMobileUrl
 * - Hygiene: Cleanup handling of stylesheets in skins
 * - Add topics to the correct namespace
 * - Make View's defaults inheritable and extendable
 * - Alpha: Make hamburger menu slide in/out when opened
 * - i18n: Remove dead message
 * - Make sure auto expanded sections have contents
 * - Story 1258: Move last modified to top of page
 * - Story 1262: Adding user to last modified
 * - Alpha: Turn random into a campaign
 * - Story 1281: Promote section level editing tutorial A/B test to stable
 * - Hide drawers underneath overlays
 * - Regression: Fix images on uploads page
 * - Fix image width in user profiles
 * - Add missing module dependency
 * - Pass query string parameters to mobile view url
 * - Hygiene: factor out common code
 * - i18n: Change &quot;security text&quot; to &quot;confirmation code&quot;
 * - Make watchlist user icons consistent with rest of UI
 * - Make sure KeepGoingDrawer gets set correctly
 * - Fix wrong variable in a template
 * - Hygiene: Clean up editor.js
 * - Updated Ruby gems
 * - Make mobileformat not change the output structure

OAI

 * - Remove calls to wfDebugDieBacktrace

OAuth

 * - Simplify language so it's easier for end-users to understand.
 * - Only show the log on the management wiki
 * - Enable consumer listing page everywhere
 * - Adjust wording of preference link
 * - Utility function to get central id from username
 * - Split up ManageMyGrants form into update and revoke forms
 * - Provide default messages for OAuth tags
 * - Added Special:MWOAuthListConsumers page
 * - Added sanity check for updating &quot;wiki&quot; field of consumer acceptance
 * - Slight message tweak to be clearer
 * - Tweaked some of the preferences language
 * - Avoid duplicate key error on /authorize page

Parsoid

 * - Match all characters when testing comments for JSON
 * - Bug fix in serialiation of &lt;div attr=&quot;&quot;&gt;foo&lt;/div&gt; style tags
 * - ]: &lt;BR&gt; special case in makeSeparator
 * - Remove attribute dropping to avoid masking issues with sanitizer
 * - Preserve non-canonical interwiki prefixes
 * - Sanitize void tags and drop attributes for end tags
 * - Only copy data-parsoid attribute from element to shadow meta
 * - Update contentOffsets for extlinks in shiftTokenTSR
 * - Only minimize interwikis when content was edited

Scribunto

 * - Translate namespaces for [be]

Translate

 * - Sandbox: remove requests once accepted or rejected
 * - Stash: ensure user does not run out of messages
 * - Multiple fixes to sandbox
 * - Sandbox review styling
 * - Stash: fix one tests, mark one as pending
 * - Remove the magic number for translation limit
 * - Make it explicit that the feature file should use sandbox.translatewiki.net
 * - Use autonym font for language list
 * - Update formatting
 * - Browser tests for translation stash
 * - Stash: Open the first *untranslated* message by default
 * - Change wording of welcome note as recommended by Pau
 * - Styling review for translator stash editor
 * - Fix regression in Ifde21874 originally fixed in I18c885ca
 * - Quick fix fuzzy.php: getArg takes index, convert input to array
 * - Display autonyms in language list
 * - Add missing i18n for percentage
 * - Use autonym class for tagcloud in Special:SupportedLanguages
 * - User postWithToken for saving translations of sandboxed users
 * - Improvements to Special:ManageMessageGroups
 * - Use hard newlines instead of groups
 * - Fix regression that prevented saving translations to stash
 * - Use postWithToken
 * - Replace STDERR calls with wfWarn

UniversalLanguageSelector

 * - Update jquery.uls from upstream
 * - Make ULS+commons Jenkins job green
 * - Refactoring tests to make them more robust
 * - Strip hints from Jomolhari font, reducing size by 50%
 * - Update jquery.webfonts from upstream
 * - Fix the selector for interlanguage links
 * - Edit area monospace font test
 * - Fix monospace font usage for input fields for latin scripts
 * - Update jquery.webfonts.js to upstream dcbed4f
 * - Run Accept-Language feature at sandbox.translatewiki.net
 * - Fix gems for tests
 * - Use Autonymfont for interlanguage links
 * - Update Autonym font
 * - Update jquery.ime from upstream
 * - Update Meera font from upstream

VisualEditor

 * - Split ext.visualEditor.experimental into specific modules
 * - Use jsdifflib for QUnit diff
 * - Revert &quot;Followup c41f96c: doc parameter in ve.dm.InternalList constructor is not optional, remove check&quot;
 * - doc: Adding missing @static to a static dm.GeneratedContentNode method
 * - Add Moriel Schottlender to AUTHORS.txt and authors string
 * - [browser test] Moving shared code to mediawiki-selenium Ruby gem
 * - Defer selection-triggered updates in ve.ui.Context
 * - Ignore change events while opening and closing inspectors
 * - Use update rather than show in focusable node re-render
 * - Remove simpleArray utilities from ve.js and use oojs instead
 * - Update oojs to v1.0.5
 * - Followup bb03e8f: fix toolbar floating
 * - Add bin/ directory with updateStaticLoaders and generateDocs
 * - Cache multiple requests for $resizable's offset
 * - Recalculate $resizable offset when positioning resize label
 * - Rename ui.Tool.static.canEditModel to isCompatibleWith
 * - Rename oo.js to oojs.js per library name
 * - Remove oo from ve.js closure
 * - Remove ve.Factory and ve.Registry and use oojs instead
 * - Remove ve.getHash and use getHash from oojs instead
 * - Update oojs to v1.0.4
 * - Rename @emits to @fires so we're forward compatible with JSDuck 5
 * - Added SVG logos in new style, rm'd old pngs
 * - Use OO.EventEmitter instead of ve.EventEmitter
 * - Fix save dialog crash on load error
 * - Fix typo in documentation for ve.ce.View.prototype.getModel
 * - [browser test] cursor feature was not tagged @login
 * - Use a sane recursion guard in ve.ui.Context.prototype.hide
 * - Followup 1878c7c5: fix check for nonexistent property .draggingAndDropping
 * - Add a node type for numbered external links
 * - Remove ve.{inheritClass,mixinClass} and use OO instead
 * - Document constructor params for dm.MWMathNode and dm.MWExtensionNode
 * - [Browser tests] identifier for anonymous warning changed for test2
 * - Split out popup functionality from ve.ui.PopupButtonWidget to ve.ui.PopuppableElement
 * - [browser test] Updated Ruby gems
 * - Follow-up 8dfbc5baa: Really don't select unselectable items
 * - Make category suggestions dropdown appear below the input box
 * - Use .done/.fail instead of 'success'/'error'
 * - Followup 8a4058584: use a single media source for rerendering images
 * - Followup c41f96c: doc parameter in ve.dm.InternalList constructor is not optional, remove check
 * - Rename performance.parsoid.domLoad to performance.domLoad

Wikibase

 * - update readme
 * - update composer file
 * - Use PropertyId objects in TermPropertyLabelResolver, ensure recache when needed
 * - use ClaimGuid::SEPARATOR in claim guid validator
 * - Reflect changes to ByPropertyIdArray in Wikibase
 * - RTL tweaks for label title
 * - Fix comment in ApiWikibase that is not correct
 * - remove duplicate datatypes-type-quantity message in Wikibase
 * - Cleanup lib/Validators.
 * - Cleanup lib/util file headers.
 * - Consistency tweak: article -&gt; page
 * - Remove one hard-coded constant
 * - Removes MWException from serializer objects
 * - Documenting external JSON format
 * - (bug #55513) Baseline for Quantity data type.
 * - Updated Ruby gems
 * - Better &quot;start page&quot; for ItemDisambiguation
 * - add test case for UnDeserializableValue in snak formatter builders
 * - Cleanup namespaces and code style issues in content classes.
 * - entityselector: Properly set value when selecting a suggestion
 * - Make the wbgetentities examples look nicer
 * - Implement entity deserialization
 * - Register undeserializable value formatter
 * - Fix UpdateRepoOnMoveJob autosummary
 * - Implemented index in SetReference API module
 * - (hotfix) claimview: Correctly rebuild qualifiers
 * - Add basic tests for SearchEntities...
 * - claimview: Re-attaching event listeners when creating qualifiers
 * - remove unused WikibaseClient use statements in lib
 * - Implemented index in ChangeOpReference
 * - Improved toolbarcontroller's event namespace assignment
 * - Removed movetoolbar widget's listView option
 * - Implemented claimgrouplistview widget
 * - Allow entry by qunit jenkins tests
 * - allow ftp links
 * - Remove the SetStatementRank API module as we are not going to use it
 * - (bug #55569) Fix tests after Claims no longer use hashes.
 * - (hotfix) SiteLinksEditTool: Address correct scope
 * - claimgrouplabelscroll: Prevent running in error
 * - Raised QUnit timeout
 * - Only run setrank tests if experimental is on
 * - Implements option for locking snaktype in snakview widget
 * - Remove use of 2 deprecated js methods
 * - Refactor Jenkins Job Entry File
 * - setClaim autosummary should not be overwritten by ChangeOp autosummary
 * - Fix encoding bug in sitelinks browsertest
 * - Fix claim weirdness
 * - load ValueView when Wikibase is installed via composer
 * - Update dependency version
 * - Improved snaklistview styling
 * - Show only topmost property label for snakview in snaklistview
 * - Claimview &quot;movetoolbar&quot; definition refactoring

WikibaseDataModel

 * - update composer file
 * - Using property id serialization in ByPropertyIdArray
 * - Implemented numeric index in Claims
 * - Removes references to QuantityValue from SnakTest.
 * - Implemented indexOf method in ReferenceList
 * - Allow passing index when adding a Reference to a ReferenceList

WikimediaMessages

 * - Add messages for new group 'templateeditor'

cldr

 * - Code formatting fixes
 * - Do not add empty arrays