MediaWiki 1.21/wmf12/Changelog

Core changes

 * - Revert &quot;Remove E3Experiments and LastModified submodules&quot;
 * - Update Wikibase
 * - Avoid sending multiple UDP packets for the same key in wfIncrStats.
 * - [JobQueue] Added more isQueueDeprioritized checks to avoid refreshLinks spam.
 * - Remove E3Experiments and LastModified submodules
 * - Revert changes in fallback behavior
 * - Update Wikibase for deployment
 * - Upping version of OATHAuth and OpenStackManager
 * - Update Wikibase
 * - Rollback MobileFrontend to what was before today+Reedy's fix
 * - Update Wikibase
 * - Revert &quot;mw.loader: Add debugging&quot;
 * - mw.loader: Guard against odd setTimeout behaviour in old Firefox
 * - mw.loader: Log argument in debug for mw.loader#canExpandStylesheetWith
 * - mw.loader: Add debugging for mw.loader#canExpandStylesheetWith
 * - Update Wikibase
 * - Update Translate
 * - Revert &quot;Misc follow-ups to I2fc3966e (a161c5e)&quot;
 * - Revert &quot;Remove the page from the LinkCache before adding it again in WikiPage::loadFromRow&quot;
 * - Revert &quot;Call loadFromRow as needed in Title::moveToInternal.&quot;
 * - Revert &quot;Call loadPageData as needed in Title::moveToInternal.&quot;
 * - Revert &quot;Maintain the page ID in WikiPage instead of relying on Title&quot;
 * - Update E3Experiments entry-point
 * - Call loadFromRow as needed in Title::moveToInternal.
 * - Add Thanks
 * - Bump GuidedTour for deployment
 * - Bump E3Experiments for deploy
 * - Bump GettingStarted for deployment
 * - Call loadPageData as needed in Title::moveToInternal.
 * - Fix wfWaitForSlaves for foreign DBs
 * - Fix wfWaitForSlaves so the $wiki parameter actually works correctly
 * - Update Wikidata related extensions for todays 1.21wmf12 deployment
 * - acessor for MediaWikiTestCase::$useTemporaryTables
 * - Add array with watchlist options to SpecialWatchlistQuery
 * - Remove error suppression from Parser::formatHeadings
 * - Move plural rules of Samogitian(sgs) to plurals-mediawiki.xml
 * - Remove error suppression in Exif::isRational
 * - Revert &quot;Refactored use of $wgMemc in JobQueueDB to use a field.&quot;
 * - [LockManager] Refactor lock TTL code to base class.
 * - Refactored use of $wgMemc in JobQueueDB to use a field.
 * - a43f751 removed the usage of $wgMiserMode
 * - jquery.tablesorter: Fix explodeRowspans
 * - jquery.tablesorter: Fix broken getElementSortKey
 * - Remove call to &quot;new Database&quot;
 * - Fix rsvg converter command line when thumbnailing.
 * - Remove spaces between parentheses in function calls
 * - jquery.makeCollapsible: don't fail if no options given
 * - Readd GENDER to english logentry messages
 * - Special:RevisionDelete: DatabaseBase::makeList: empty input
 * - Rephrase password reset messages to remove 'reminder' language
 * - Cache Revision::selectFields call result
 * - jquery.makeCollapsible: add plainMode support
 * - jquery.makeCollapsible: add a few explicit options to the jQuery plugin
 * - jquery.makeCollapsible: move helper functions to the outer scope
 * - jquery.makeCollapsible: clean up the handler toggling logic
 * - Add id for domain list on user create form
 * - Fixed importScopedSession and moved exportUserSession to RequestContext.
 * - Update autonym of the Pali (pi) language
 * - $.tablesorter: remove and inline getTextFromRowAndCellIndex
 * - Cleanup for ApiImageRotate
 * - API: Remove useless PARAM_REQUIRED = false
 * - DefaultSettings: Add @since annotations.
 * - mwdocgen.php: Implement --version option.
 * - Added a --cache option to mctest.php and mcc.php.
 * - Fixed E_STRICT warning:
 * - Tweaked MessageCache locks to handle exceptions better.
 * - mwdocgen.php: Exit with exit code of passthru(doxygen)
 * - Removed user table JOIN from ActiveUsers query.
 * - jquery.badge: Treat non-Latin variants of zero as zero as well.
 * - Cleaned up upload job error reporting.
 * - mark UtfNormal::CleanUpTest as expensive
 * - typo in @cover statement
 * - Fix composer.json to prevent infinite loops.
 * - Allow having no serializer in RedisConnectionPool.
 * - Changing OutputPage param to a Context param in PageHistoryBeforeList
 * - servers =&gt; serves
 * - Fixes to Special:LinkSearch form
 * - Fix Ifb93e49b
 * - API: Check amlang in meta=allmessages
 * - Filtered &quot;LOCK IN SHARE MODE&quot; from SQLite
 * - Spellchecked /includes directory
 * - Implement htmlEqual QUnit helper (QUnit.assert.htmlEqual)
 * - Allow first letter data to be invalidated
 * - Adding output parameter to PageHistoryBeforeList hook
 * - Restore SET cl_timestamp=cl_timestamp
 * - Reduce disruption during updateCollation.php
 * - Handle certain errors in action=createaccount api module
 * - [FileBackend] Fixed &quot;ignoreMissingSource&quot; bug in multiwrite backend.
 * - Fix default value of the SpecialWatchlistFilters hook
 * - Add space between number and unit of measure
 * - Adding hooks for thank you notification links
 * - Remove mention of non-existing script in DefaultSettings.php
 * - jquery.makeCollapsible: Clean up issues caused by wrong nesting
 * - jquery.makeCollapsible: Move functions out of the var statement
 * - [FileBackend] Suppress missing container errors with &quot;ignoreMissingSource&quot;.
 * - [LockManager] Various fixes to lock managers.
 * - Update docs
 * - [JobQueue] Try to cut down on waitForBackups calls in runJobs.php.
 * - Rewrite user_touched comment, since apparently it is not clear enough
 * - Fixed redis auth error spam in logs.
 * - Fixed connection comparison in RedisConnectionPool::handleException.
 * - IcuCollation::$tailoringFirstLetters: implement letter removal
 * - Reformatted some array parameter docs.
 * - Fixed @param tags to conform with Doxygen format.
 * - Correct case of Special:Userrights' canonical name
 * - IcuCollation::$tailoringFirstLetters: 'en', 'it', 'hu', 'pt', 'uk' verified
 * - lowercase second character in digraph letters in IcuCollation tailorings
 * - Fixed many small spelling mistakes and php docs, var decl.
 * - Lots of spelling mistakes and phpdoc attributes
 * - Add &quot;User rights management&quot; link on user page toolbox
 * - More job queue doc tweaks.
 * - fix wlexcludeuser for ApiFeedWatchlist
 * - Format jquery.ui.button.css so it's easier to work with
 * - Don't use isset to check whether an existing variable is null
 * - numRows on MySQL no longer propagates unrelated errors
 * - Made backend sync script update the pos file periorically.
 * - Changed formatting of &quot;anontalkpagetext&quot;
 * - Use User::groupHasPermission
 * - API param validation: Add wrong value to error message on user params
 * - Correct case of Title::getPrefixedDBkey calls
 * - Remove the page from the LinkCache before adding it again in WikiPage::loadFromRow
 * - Use ContextSource::getLanguage instead of $wgLang
 * - Use TargetLanguage of the Parser in ImageGallery
 * - Sync messages.inc with MessagesEn.php
 * - createaccount api action didn't handle no token and no cookie
 * - Updated job queue README.
 * - Fix arbitrary inconsistency in page title and headings for message accmailtitle
 * - Synced the FeedUtils.php page with mediawiki.action.history.diff.css
 * - Fixes for e288e4036
 * - Fix more UnitTests for databases that do not use integer timestamps
 * - [JobQueue] Made supportedOrders protected.
 * - Fixed $vCallback comment and removed unused return value.
 * - fix MessageCacheTest for non-english wikis
 * - Add the global correctly
 * - Unset the cgroup if we don't have a memory limit
 * - [JobQueue] Cleaned up handling of orders a bit.
 * - Removed &quot;poolSize&quot; option from RedisConnectionPool.
 * - [JobQueue] Added JobQueue::getAllQueuedJobs function.
 * - Use output/error maintenance functions
 * - Kill off numerous unused variables
 * - Adding validation for checkmatrix (same as for multiselect)
 * - image rotate api
 * - Two typo-bugs, credits update
 * - Add SpecialPage::getGroupName and use it
 * - Docs for gerrit 47419
 * - fix some spacing
 * - Fix align of block comments
 * - Read full memcached response before manipulating data
 * - getBools doesn't exist in Translate anymore
 * - Changing position of colon
 * - Add full stop to full sentences
 * - Remove the mediawiki.api.titleblacklist module
 * - CSSJanus: support text-shadow and box-shadow flipping&quot;
 * - [FileBackend] Added a &quot;ttl&quot; option to getFileHttpUrl.
 * - mw.loader: Buffer cssText in addEmbeddedCSS.
 * - mw.loader: Create new style tags instead of appending text
 * - Fix ApiQueryAllPages and old indef protections
 * - Made syncFileBackend.php clearer with handling --postime.
 * - Few more message parameter type hints
 * - Don't set wgPostEdit for null edits.
 * - Enable on-wiki message language fallbacks
 * - Remove german special page alias for 'Version'
 * - American spelling - recognize/customize
 * - Make default params to CategoryViewer usable as defaults.
 * - Extend the SpecialStatsAddExtra hook for a more distinct display of extra items
 * - Add CategoryAfterPageAdded / CategoryAfterPageRemoved hooks
 * - Made runJobs.php wait for slave lag.
 * - normalize filenames of maintenance scripts
 * - Check if files exist with a different extension during
 * - Boolean issue when using sqlite.
 * - Fix ApiQueryAllPages duplicate rows in protection query
 * - Fix API list=deletedrevs continuation in mode 1
 * - Vector: Don't create an extra request for skins.vector module
 * - Few minor parameter type hints in documentation
 * - Reverting temporary change Iedb304f8 as promised
 * - Avoid instantiating ResourceLoader modules twice
 * - Make sure Parsoid doesn't get snobbish and treat non-html5 tags badly.
 * - Return empty string for trail/prefix if disabled
 * - [JobQueue] Throttle refreshLinks2 jobs based on finishing the refreshLinks jobs.
 * - Add ID to Nested Fieldsets
 * - Changing position of colon for consistency
 * - Fixed ArrayUtils::pickRandom when $rand=0.
 * - Moved wfPickRandom to ArrayUtils.
 * - [LockManager] Added ScopedLock::release function.
 * - CSSJanus: support text-shadow and box-shadow flipping
 * - ]: fix API paging for recentchanges
 * - Force $wgCategoryCollation to be uppercase in tests
 * - Documentation improvements in includes/actions
 * - adjusted comments for IcuCollation::$tailoringFirstLetters
 * - Changing position of colon for consistency
 * - Add option to pass defaultNamespace to ApiPageSet
 * - mw.Map: Avoid using 'undefined' to check for real existance.
 * - jquery.qunit.completenessTest: Remove redundant jshint override
 * - Adjusting badge size per Vibha
 * - Fix checkstyle issues in JavaScript.
 * - Gitignore: Clean up and ensure /includes/cache is not ignored.
 * - Add username for GENDER in LogFormatter only when visible
 * - API action=unblock should return the user name, not the full user object
 * - Revert &quot;Update WikiData extensions to correct points for 1.21wmf11&quot;
 * - Update WikiData extensions to correct points for 1.21wmf11
 * - Use American English spelling for behavior
 * - Normalise documentation in tests/selenium
 * - Vector: fix jump-to-navigation link href
 * - Added --postime option syncFileBackend.
 * - Resolve config defaults in RedisConnectionPool in the singleton.
 * - Default $wgContentHandlerUseDB to true
 * - language-specific collations: be-tarask added; be, be-tarask, ru verified
 * - Adding new subclass to HTMLForm for constructing a checkbox matrix
 * - Make update.php and install.php use wfPHPVersionError and reorganise it
 * - Read of arbitrary files through mwdoc-filter.php
 * - Maintain the page ID in WikiPage instead of relying on Title
 * - Return user ID as userid in watchlist API module
 * - Set initial language and variant user preferences to user's preferred variant on user registration

AbuseFilter

 * - Change right needed to see filter id in API to hidden from private.
 * - Adding trailing dot + comment for grep (24 messages)
 * - Overhaul of the AbuseFilter JS
 * - Changing position of colon + American spelling of normalize
 * - American spelling for &quot;Unrecognized&quot;

ApiSandbox

 * - Force api-sandbox-examples to ltr direction
 * - Adding comments for grep
 * - Changing position of colon for consistency

ArticleFeedback

 * - populateAFStatistics: die if extension is not loaded
 * - Adding comments for grep

CheckUser

 * - Support query continue in CheckUserLog API
 * - Renaming CheckUser_body.php to SpecialCheckUser.php and moving to specials folder
 * - Adding comments for grep
 * - Find common range box must always flow left-to-right

CodeReview

 * - Mark API tests as 'medium'
 * - Adding comments for grep

Collection

 * - Fix FormatJson related fatal
 * - follow-up I0065e259878; clean up return_to links
 * - Adding comments for grep
 * - Remove dependency on Services_JSON class
 * - Output sidebar portlet as array

ConfirmEdit

 * - Remove german special page alias for 'Captcha'

ContributionReporting

 * - Adding comments for grep

DataValues

 * - Stopgap to avoid excessively long string values (backport)
 * - Improve type hints
 * - $.eachchange: Allow attaching plugin to every input type

Diff

 * - Use American English spelling for behavior

DonationInterface

 * - un&quot;fix&quot;: final status was being set twice after SET_PAYMENT
 * - Adding the common JPY symbol template to the mix.
 * - Use double quotes consistently
 * - paypal recurring is set explicitly
 * - Flooring non-fractional currencies in the DonationData class. Apparently just not decimal-formatting them is insufficient for some forms.
 * - paypal form to make corrections before redirect
 * - Round 1 of Japan Localization feedback changes
 * - Fine print on Boletos and direct debit: beware the GC!
 * - (FR #806) log message when STOMP send fails
 * - direct debit fixes
 * - Quieting down some error logs and surfacing some other problems we're seeing with minfraud in production
 * - Prevent Donors from Using the CC# as a Name
 * - (FR #822) Direct Debit
 * - rtl fix for leftmar and rightmar css

Echo

 * - A bunch of Echo style tweaks per Vibha
 * - Change content of welcome message.
 * - Fixing text alignment of Echo flyout in Monobook skin
 * - use numParams for numeric argument

FlaggedRevs

 * - Adding comments for grep

GettingStarted

 * - Move isWelcomeCreation from E3Experiments.
 * - Drop dependency on 'stall'

GuidedTour

 * - Bump guiders for couple small bugfixes.
 * - Preserve the 'tour' parameter on special page redirects.

LiquidThreads

 * - Optimize pngs

MoodBar

 * - Correct UI orientation in RTL environments
 * - Remove optional ClickTracking integration
 * - Adding comments for grep

NavigationTiming

 * - Fix mobileMode property name (was: 'mobile')
 * - Enable NavigationTiming on stable mobile site

OAI

 * - Use sequence numbers instead of timestamps
 * - ; needs parallel changes to lucene_search_2&quot;

OATHAuth

 * - OATHAuth should have relevant links in preferences
 * - Add link from Special:Preferences to manage OATH

OpenStackManager

 * - Fix a typo that was breaking 'Create shared project storage'
 * - Fixup bad hack usage of $wgOut
 * - Fix exception when trying to configure instance with wrong
 * - Fixup array_push usages
 * - clarify loginviashell error message
 * - Fix returnto links for ssh key additions/deletions
 * - Fixup a few undefined variables
 * - SSH key management should exist as a tab in preferences
 * - Fix project configuration interface
 * - Display shell username on Special:Preferences
 * - Remove unused uuid4 function
 * - Add Manage ssh keys link to Special:Preferences
 * - &amp; ) Add maintenance script for instance reboot/build completions
 * - Move OpenStackNova files to nova folder
 * - Add admin list to project page

ParserFunctions

 * - The hebrew translation for #ifexpr is borked on 1.21wmf12, breaking tons of templates
 * - Adding comments for grep

ReaderFeedback

 * - Adding comments for grep

Renameuser

 * - Update archive table for old user renames
 * - Restructure Renameuser extension

Score

 * - Use TimedMediaHandler to render Ogg Vorbis Player

Scribunto

 * - Don't record self-link from mw.title
 * - Added Vietnamese translations for Module namespaces
 * - Add Portuguese translations for Module namespaces

SecurePoll

 * - Adding comments for grep
 * - Americal spelling - authorize/initialize/normalize/recognize (messages/comments) + removing whitespace

SemanticForms

 * ** Newly deployed extension

SemanticMediaWiki

 * ** Newly deployed extension

SemanticResultFormats

 * ** Newly deployed extension

SyntaxHighlight_GeSHi

 * - Fix bundled GeSHi library inclusion path
 * - Disable Ie260c22680ec9a

TimedMediaHandler

 * - Adding comments for grep

TitleBlacklist

 * - Fix a warning due to no blacklist source specified.

Translate

 * - Indentation fix - Minor
 * - Check that a tag is defined
 * - Messages from wrong message group displayed
 * - Fix broken long message documentation compact mode.
 * - Replace Language::getLanguageNames with TranslateUtils::getLanguageNames
 * - Move comments to the correct position
 * - Filter unneeded messages from additions
 * - Allow translation in page view
 * - Provide descriptions for statsbar
 * - $namespace isn't unused after all
 * - Remove duplicate grid system inside Translate and use jquery.uls.grid
 * - Speed up translatable page move page
 * - Again list section pages when moving translatable page
 * - Show the &quot;Accept&quot; tooltip to proofreaders
 * - Fix dos line endings to unix
 * - Stop event propagation after click events
 * - TTMServer solr schema.xml improvements
 * - Workflow selector: Show a progress text while changing the state
 * - Avoid invitation to &quot;unmark as proofread&quot; since it is not allowed
 * - Fix workflow selector in TUX
 * - Code cleanup
 * - [TUX] Statsbar dynamic update issues
 * - Cleanups of whitespace and docs
 * - TUX broken if ULS is not enabled
 * - &quot;You have unsaved changes&quot; warning for TUX
 * - Use ULS for long language list in SearchTranslations page
 * - Position group selector menu correctly
 * - Fix badly broken If4f11ab
 * - Prepare the groupselector early and use dataready event to render data
 * - Clicking group selector does nothing until data is loaded
 * - Update indentation and spacing
 * - Add escaping
 * - Make sure that the fuzzy warning is shown
 * - Add 'Discard changes' button
 * - [TUX] Delay the proofread tooltip
 * - Handle &quot;invalid group&quot; in user friendly way
 * - Some bandage to avoid fatal errors in non-TUX
 * - SolrTTMServer: corner case tweaks
 * - Only record skipped fuzzy and untranslated as hard
 * - Fix link
 * - Adjust floating/sticking headers/footers when filtering
 * - Show workflow state selector when needed
 * - Fix switching to Page mode
 * - Show message documentation to anon users
 * - Fix the diff display in TUX
 * - Add message group description for Wikimedia Commons app
 * - Fix bad merge of I1e131a
 * - Make sure qqq is included in supported languages
 * - Refactor formatGettextComments
 * - Apply light formatting in page mode
 * - [TUX] Workflow state selector hard to hide
 * - Alphabetical order of modules
 * - Proofread by others styling
 * - Use __DIR__
 * - Move resources to separate file
 * - Fix javascript error on click on Show all messages link
 * - Remove redundant unit of measure
 * - Remove unused variable
 * - Styling adjustments for self-translations
 * - Add comments for grep
 * - Fix unclosed div in TUX mode
 * - PageTranslation with ULS
 * - Rewrite non-TUX urls in TUX mode
 * - Remove suggestions and other unused tasks
 * - Fixes for Monobook button issue
 * - Remove unwanted h1 underline in SpecialSearchTranslation page
 * - Indicate that users cannot proofread their own translations
 * - [TUX] Skip and next does not work in filtered list
 * - Leave the previous message visible after sliding up
 * - Show message when the language is blacklisted
 * - Add Unproofread filter for the Proofread view
 * - Add special page group for SupportedLanguages
 * - Add Special:SearchTranslations to wiki page group
 * - Add tooltips to the proofread and edit buttons
 * - Api should not return results for blacklisted languages
 * - Show other user votes when proofreading
 * - Add &quot;Loading...&quot; while translation helpers are loading
 * - Fix docs
 * - Remove unused globals
 * - Fix docs
 * - Remove superfluous return
 * - Reduce size of SVG images
 * - [TUX] Unclear filtering completion status
 * - Messages from wrong message group displayed
 * - Consistent permissions for all the images
 * - Optimize pngs even further

TranslationNotifications

 * - Adding comments for grep

UniversalLanguageSelector

 * - Add ext.uls.geoclient back to deps
 * - Provide a base ULS RL module and seperate UI language selection
 * - Update jquery.uls and make it more modular
 * - Adding the Alef font for Hebrew
 * - Make &quot;disable IME tools&quot; effects immediate as a preview
 * - Update jquery.uls from upstream
 * - Add Tuladha Jejeg font for Javanese
 * - Optimize pngs
 * - Update jquery.ime from upstream
 * - Update jquery.ime from upstream
 * - Simplify variables and clean up comments
 * - Cache the options token for preferences system
 * - Update jquery.uls from upstream
 * - Update jquery.ime from upstream
 * - Cleanup for JSHint
 * - Check that ime was defined before selecting a language

UploadWizard

 * - Fix bug where flickr button is shown for users without permission
 * - scroll to first error on clicking 'next'

Validator

 * ** Newly deployed extension

Vector

 * - Use $( window ).load instead of window.onload.

VisualEditor

 * - Remove duplicate and nonexistent files from demos/ve/index.php
 * - Layouts, grids and panels
 * - Add MetaList
 * - Added categories and language icons
 * - Toolbar style fixes
 * - Remove 1px left margin from toolbar in Vector
 * - docgen: Exit with exit code of jsduck command
 * - Disable the save button when there is no past history
 * - Remove ve.dm.MWMetaNode.js from extension
 * - Add Ed Sanders to the authors list for the MW extension
 * - Change MetaNodes to MetaItems
 * - Emit a transact event on the ve.dm.Document when a transaction occurs
 * - Make metadata reaping handle replacement operations more sanely
 * - Move toolbar-shadow.png to correct location
 * - Remove unused .data
 * - Link inspector menu not appearing in the right place
 * - Toolbar actions not floating
 * - Add support for non-Latin scripts to wordBoundaryPattern
 * - Context, frame, window, dialog and inspector refactor
 * - Fix Surface constructor in IndentationAction tests
 * - Correct name of can(Node)HaveGrandchildren functions
 * - Add tests for ve.dm.Document.getNearestWordBoundary
 * - Fix current annotation being nullified
 * - Fix new lint warnings previously uncaught by jshint
 * - Refactor convert to use isolateAndUnwrap
 * - Only unwrap { generated: wrapper } based on context.
 * - Create MediaWiki specific nodes to contain MW specific rules.
 * - Fix JSDuck warnings
 * - Pass through error message to VE if Parsoid is unreachable.
 * - Fix broken FormatAction tests.
 * - Do not display phantoms while dragging mouse over alien nodes.
 * - Emit apply and close dialog when apply changes is clicked.
 * - Adding comments for grep
 * - In MW integration, dialog was overlapping toolbar shadow.
 * - Use static.name once for ce and dm nodes
 * - Fix for incorrect usage of ve.Range
 * - Tweak i18n for meta and content dialog title
 * - More work on dialog classes and their mw specific handling.
 * - Fix for IE bug where clearTimeout doesn't clear the timeout
 * - Introduce dialogs
 * - DomRange makes more sense as a name for this class (cause it is not rangy specific).
 * - Pass parsoid server errors through to VisualEditor.

WikiEditor

 * - Toolbar icons for bold L and italic E

WikiLove

 * - Fix wikilove-food-coffee-desc wording so it actually makes sense

Wikibase

 * - Handle invalid entity IDs in SetReference::getEntityContent
 * - Handle unknown entities in PropertySQLLookup::getMainSnaksByPropertyId
 * - Make MessageReporter available in production.
 * - avoid namespace checker error, check variable type
 * - (hotfix) Preventing default event handling when stopping snakview edit mode
 * - Add profiling to dispatchChanges script.
 * - Fix misleading output of Special:DispatchStats.
 * - Don't prune undispatched changes.
 * - Give default value to new onSpecialWatchlistQuery parameter $values
 * - use allowDataTransclusion setting in ChangeHandler
 * - (hotfix) removed hardcoded values from dispatcher options
 * - Follow-up, fix entity namespace link, rm 'wikibase-'
 * - Fix link with item namespace
 * - Improve default and parameter docu for dispatcher.
 * - count idle passes against --max-passes
 * - Improve handling of comment messages in client
 * - Ensure wikibase-comment-update is handled as message
 * - Fix ref to undefined variable in dispatch changes
 * - Fix grammar (comma before but)
 * - Fix removed underscores in site id
 * - More extensive testing of Change classes.
 * - Use sentence case on dispatch stats page
 * - Send changes to most stale wiki first.
 * - add tests for PropertySQLLookup
 * - (testing) adjusting selenium tests for sitelink-widget
 * - diff view support for multiline references
 * - show edit link if an item is connected to a client page
 * - introducing Special:DispatchStats
 * - (testing) extended selenium tests for inclusion syntax
 * -, ) add setting to enable site link widget per wiki and make logged-in only
 * - Removed toolbar placeholder node from statement template
 * - Fix NamespaceChecker
 * - FIX bad syntax of ORDER BY.
 * - Fix example links in API
 * - Removing obsolete getInputElement QUnit test
 * - Merging wb-toolbar and wb-toolbar-container templates
 * - Using wb-ui-toolbar-container template for statementview widget
 * - Removing toolbar node from snaklistview template
 * - Removed wb-claim-container node from wb-claim template
 * - Removing toolbar node from wb-claim template
 * - Removing &quot;add&quot; placeholder DOM from claimlistview
 * - Removing toolbar node from claimlistview template
 * - Removed remaining toolbar references from snaklistview widget
 * - Introducing removetoolbar widget
 * - suggester widget: Always show custom item
 * - Fixing coding error reference's snakview &quot;add&quot; toolbar
 * - (testing) small fix in selenium rollback test
 * - Fixed typos in documentation
 * - Remove references to wikidata.org w/o www
 * - Removing entity selector padding
 * - Enable changesAsJson per default.
 * - Making entity search non-experimental
 * - require and include Ask extension only if in experimental mode
 * - Add null check for property in property lookup
 * - Second iteration of property parser function
 * - Minor performance optimization for entityview initialization
 * - (#46126) Lua function sitelink(id) that returns the link with the element
 * - Improved Selenium site links test stability
 * - Initializing referenceview &quot;add&quot; toolbar via toolbar controller
 * - (hotfix) PropertyParserFunction should be non-experimental
 * - rebuildTermSearchKey should wait for slaves.
 * - WikibaseClient uses __FILE__ instead of __DIR_
 * - Add &quot;experimental&quot; to the version string when in exp mode.
 * - Kill more poll for changes stuff in docs and settings
 * - Remove the obsolete pollForChanges script.
 * - (testing) adjusted selenium test to check for changed error msg
 * - Fix namespace filtering in ChangeHandler.
 * - Use correct meta data keys in test changes.
 * - entity selector: Prevent closing of suggestion list
 * - entityselector: Instantly closing list of suggestions
 * - (#46125) Lua function label(id) that takes an ID and returns the label in the language of the client Wiki
 * - Emptying wb_changes_dispatch on deleteAllData
 * - (#46124) Restrict getEntity to connected entity only
 * - Reduce dialog box size of site link widget
 * - Re-focusing entity search box after clicking &quot;more&quot;
 * - Using toggle_reference_section in statements Selenium tests
 * - Prevent type errors on unexpected diff types in changes.
 * - Make tests more robust against config.
 * - (testing) waiting in Selenium tests for propagation of removed sitelinks
 * - (testing) Selenium tests for client inclusion syntax
 * - Use the watchlist options given by the hook
 * - show edit link only if we have repo links
 * - propagate claim and label changes
 * -, ) Use SiteLink instead of Title
 * - Show/hide the wikibase watchlist entries server side
 * - (testing) selenium tests for multiline references
 * - Implementing missing equals and toJSON methods
 * - Finally make wbclient.linkItem non-experimental
 * - (hot fix) fix of two obvious mistakes in jQuery.wikibase.snaklistview
 * - Fix title encoding for repo titles in linkItem
 * - Put sql classes in store/sql directory in lib
 * - (linkItem) Always dismiss tooltips on dialog click
 * - Added file to clarify DataModel component dependencies
 * - Work on data value tables access in the SQLStore
 * - ReferencedEntitiesFinder::findSnakLinks handling of delete properties
 * - adding Selenium tests for linking items on client
 * - swicth to disable data transclusion
 * - Lua support to access the repo data and implement getEntity
 * - Change watchlist preference message: your -&gt; my
 * - Move data model classes into its own component
 * - new wb.utilities.ui.buildPrettyEntityLabel and cleaned up message dependencies
 * -, hot fix) Activated language terms table would not allow for editing statements
 * - in-process caching for entities.
 * - noexternallanglinks needs to be serialized
 * - Remove duplicate aliases
 * - Correctly dis-/enabling reference toolbars
 * - Sort use statements in SQLStore
 * - Return full error report from API.
 * - Re-enabling &quot;add source&quot; link after saving claim
 * - Use isOk instead of isGood
 * - Triggering snakviewchange when manipulating property
 * - Disabling &quot;remove&quot; link when there is just one reference snak
 * - Parse intro messages
 * - (testing) adding selenium tests for deleted-property/item-handling in UI
 * - Add fywiki sort order and allow custom order in settings
 * - (testing) fix edit-conflict selenium tests
 * - (hotfix) passing baseRevisionId from API request to EditEntity again
 * - show edit link only if we have repo links&quot;
 * - show edit link only if we have repo links
 * - Moved ClaimSaver and ExceptionWithCode to their own files
 * - initial implementation of property parser hook
 * - Followup for restrictions for special pages
 * - Display copyright warning bubble above toolbar for references
 * - &quot;strict&quot; option for startItemPageEditMode in entityview
 * - Added extra SetClaim tests and split of non-api code to own class
 * - Moving &quot;add&quot; toolbar initialization from snaklistview to referenceview
 * - Introducing the Summary class.
 * - Make WikiPageEntityLookup work on installs with a table prefix
 * - Correct wb.Statement instantiation in statementview widget
 * - Prevent creating &quot;remove&quot; toolbar twice for a reference
 * - Logging for change notification lag.
 * - Entity selector: Using user language when in MediaWiki context
 * - Add method to get EntityId for a SiteLink
 * - Cleanup in SiteLinkTableTest
 * - (testing) added qunit eachchange-tests to selenium
 * - Fix prev diff link to work in special:contributions etc.
 * - Entity search: Prevent closing suggestion list
 * - Separated toolbar for editing a reference's snaks
 * - Remove unused argument in method call
 * - Enabling multiple snaks per reference
 * - Splitting snaklistview from referenceview
 * - Triggering &quot;remove&quot; event in the edittoolbar widget
 * - Stop use of entity ids with wrong prefix
 * - Introducing snaklistview widget
 * - (testing) added selenium tests for string datatype
 * - (hotfix) adjusting selenium tests to use NewItem instead of CreateItem
 * - Improve term normalization.
 * - Rewrite of rebuildTermSearchKey
 * - Back to weird title
 * - Check show wikibase preference for watchlist
 * - Add description of &quot;string&quot; to the list in DataTypes
 * - Do not hide entity selector's list of suggestion
 * - &quot;Full-text search&quot; section for entity search
 * - Entity search: Allow random text input in entity selector
 * - Entity selector: Option to emulate search box behavior
 * - Proper &quot;enter&quot; key handling for entity selector's &quot;more&quot; link
 * - Improving focusing after &quot;add&quot; action in statements UI
 * - Simplifying listview widget while introducing snaklistview
 * - Added TermsToClaimsTranslator
 * - Added insert, update and delete methods to query interface
 * - Change example namespace base
 * - Fix CORS requests in wikibase.RepoApi
 * - Hotfix for &lt;0&gt; in language urls
 * - Rename CreateEntity and CreateItem to NewEntity and NewItem
 * - Update hook to include site link widget in experimental mode
 * - Add missing param for LangLinkHandler
 * - Fix for references counter behavior
 * - Add dt/dd msgs for of the datatypes in Special:ListDatatypes
 * - Copyright notice on editing will use Wikidata license text if available
 * - make sort utils not static and move sort orders out of class
 * - Added some stub code in the SQLStore QueryEngine
 * - make string datatype non-experimental
 * - Removing reference specific handling from the listview widget
 * - Added table for valueless snaks
 * - Added IriHandler
 * - Added MonolingualTextHandler
 * - Work on SQLStore setup
 * - Removing toolbar definition from listview widget
 * - Added FieldDefinition::mutateFields
 * - Added docs to FieldDefinition
 * - Added preliminary definition of two non DV tables of the SQL Store
 * - Return correct value for getName in the SQL Store
 * - Added stubs to QueryStoreUpdater
 * - Create tables from SQL store setup
 * - Figured out layout of the QueryStore interface
 * - API module wbremoveclaims fail to use baserevid
 * - Add doc
 * - URL-escape title before it is used in URL
 * - Add setting to exclude namespaces
 * - Added BooleanHandler
 * - Implemented getLabelFieldName in the DVHandlers
 * - Added NumberHandler
 * - Added some more stub stuff in the sqlstore
 * - Added StringHandler
 * - Added EntityIdHandler
 * - Added getWhereConditions and getInsertValues to the DVHandlers
 * - Fix conflict between merged commits
 * - Added base of GeoCoordinateHandler
 * - Implementing create table in the query interface
 * - Don't display (none) in case we don't have langlinks
 * - Fix for no-JS anonymous edit warning messages
 * - Add a callback for the hook for reordering of special pages
 * - Correctly accessing entity object for anon edit warning
 * - Fix for snakview.isInitialSnak
 * - Toggle &quot;action message&quot; on stopediting event
 * - Removing isSaveDisabled from claimview
 * - Use American English spelling for behavior
 * - improved handling of claimlistview's &quot;add&quot; row
 * - when displaying Snak using deleted item, also mark it as deleted
 * - /) Deleted properties handling by the JavaScript UI
 * - 'wikibase-item' datatype valueview works for 'wikibase-entityid' datavalues now
 * - Toolbar controller widget
 * - Change squashing to trimming of whitespace and control chars
 * - Make use of new data model constructors all over the UI now
 * - Changes wb.RepoApi.getEntities to promise a collection of wb.Entity
 * - Introduction of wb.Entity and related constructors and its usage in our code
 * - implemented wb.Claim.equals
 * - Claims now use wb.SnakList instead of wb.Snak[] for their qualifiers
 * -, ) Add ItemByTitle and ItemDisambiguation to the special pages list
 * - (testing) fix for selenium sitelinks tests
 * - Further work on claim diff visualization
 * - Simple diff visualization
 * - enhanced claim diff visualizaion including refs
 * - Make language names available in other languages.
 * - Allows to restrict output in Special:EntitiesWithoutLabels to a specific
 * - Less static stuff in noexternallanglinks
 * - Added DataValueHandler tests
 * - Defined most of the DataValueHandler interface
 * - Cleanup in EntityContent.php
 * - Fix typo in name of LangLinkHandler class
 * -, 45353) Add Special:ItemByTitle and Special:ItemDisambiguation to Special:SpecialPages
 * - Add user-select:none to wb-u-toolbar and -group

cldr

 * - Remove duplicate array keys