MediaWiki 1.21/wmf9/uk

Остання версія (з позначкою "1.21wmf9") MediaWiki, програмного забезпечення, на якому працює Вікіпедія та її сестринські проекти, запроваджується на усі сайти Вікімедіа поетапно, починаючи з 4 лютого 2013 року (див. план).

Ми продовжуватимемо впроваджувати найновіше програмне забезпечення що два тижні. Це має на меті мінімізувати збої і можливі проблеми та полегшити розпізнавання причин цих проблем, оскільки теоретично проблематичний код буде набагато свіжішим.

Core changes

 * - Update GeoData: https://gerrit.wikimedia.org/r/#/c/50844/
 * - Update E3Experiments, GuidedTour &amp; GettingStarted for split test
 * - Updating MobileFrontend to tip of production branch
 * - Update Scribunto for today's deployment
 * - Update Wikibase with revised lang link sort orders
 * - update Wikibase
 * - Treat a null result of Job::run like &quot;true&quot;.
 * - Start yelling if a job's run does not return bool
 * - Implement mw.message.text:
 * - Update Wikibase with backport
 * - Update Wikibase
 * - [Database] Log transaction mismatch errors to the DB log.
 * - Set timeout for Sites object in memcached.
 * - update the sites cache version
 * - Add debug log points for SiteSQLStore and SiteList
 * - Update Wikibase
 * - Update Scribunto
 * - Weaken the recursion guard on RequestContext::getLanguage
 * - mediawiki.action.view.dblClickEdit: Fix undefined $content.
 * - Load default variant tables before using them
 * - Update Wikibase again
 * - Fix Wikibase reference
 * - Update Wikibase
 * - Add GuidedTour
 * - Add SearchExtraNS
 * - style: normalize end of files
 * - New list and table attr. tests based on recent Parsoid bug fixes.
 * - Include Postgres tables and maintenance scripts for Change I23c47c2c
 * - Add column job_attempts and index job_cmd_token_id to PostgreSQL.
 * - [LockManager] Renamed getBucketFromKey -&gt; getBucketFromPath.
 * - [LockManager] Generallized wiki field to a domain field.
 * - Add return to HttpError::getStatusCode.
 * - Profiling for hook calls.
 * - Log profiling info from maintenance scripts.
 * - [LockManager] Split QuorumLockManager into its own file.
 * - [FileBackend] Added more documentation.
 * - Implement deleteEqualMessages.php
 * - [LockManager] Updated DBLockManager for cross-wiki support.
 * - Made nextJobDB.php respect $wgJobTypesExcludedFromDefaultQueue.
 * - Make cats which are redirects italic in category links.
 * - Fixed use of long memcached keys in AllPages.
 * - fix some spacing
 * - Make Sites::singleton actually return a singleton.
 * - Genderize user namespace for 'be' locale
 * - [JobQueue] Re-try jobs that fail normally.
 * - Respect --quiet in mergeMessageFileList.php
 * - -  The return value of realpath should be tested
 * - Installer: Fix double escaping of config-download-localsettings.
 * - Add getters to HttpError, to use it in tests.
 * - Fix double colons in api help output
 * - Better way for extensions to add to ParserOutput.
 * - Make jquery.client recognize Iceweasel
 * - fix hardcoded quote in Special:DoubleRedirects/BrokenRedirects
 * - Make HttpError set actual HTTP error code.
 * - .gitignore Composer related files
 * - Fix invalid link of `others` during installation
 * - Dump unit tests no longer fail if gzip is not available
 * - Sprinkle &lt;code&gt; over some strings for consistency
 * - test: helper to skip tests depending on 'gzip'
 * - raise PHPUnit default timeouts
 * - api: remove duplicate __contruct calls
 * - [FileRepo] Lazy load large metadata from the DB.
 * - [LockManager] Refactoring to allow proper cross-wiki support.
 * - Rename calls to wfArrayToCGI to wfArrayToCgi
 * - [FileRepo] Use getHandler is some places that should use it.
 * - [FileRepo] Lowered negative caching duration.
 * - Use tabs to indent lines
 * - Whitelisting publicly readable title with regex
 * - raise timeout for CdbTest::testCdb
 * - rename vars in SkinTemplate::outputPage
 * - test: some Revision tests depends on PHP zlib ext
 * - testPngNativetZtxt requires zlib extension
 * - test: helper to skip tests depending on a PHP ext
 * - pass codesniffer on tests/
 * - Implement Language::isKnownLanguageTag
 * - [FileBackend] Added duplicate backend check.
 * - Changed Message::content to pass $this to MessageContent.
 * - Drops possessive from watchlist header
 * - Spell checked docs/hooks.txt
 * - Sprinkle &lt;code&gt; over some strings.
 * - Remove obsolete entries in MessagesBh.php
 * - fix some spacing
 * - Let nextJobDB.php narrow down the type based on a set.
 * - Followup Id9f2fea7: Remove wall time restriction for readline.
 * - The use of function sizeof is forbidden; use count instead
 * - fix some spacing
 * - The static declaration must come after the visibility declaration
 * - The final declaration must precede the visibility declaration
 * - The abstract declaration must precede the visibility declaration
 * - fix some spacing
 * - Fixed the usage message text if parameters are missing.
 * - refactor Database::makeSelectOptions
 * - [ExternalStore] Refactored external store classes to use a base class.
 * - Check for existence of the timeout script in ulimit5.sh
 * - Allow '+' in MySQL database names.
 * - $wgContLang global unused in addNewUserLogEntry since b65893755
 * - More tests for mismatched attr quotes + entities in nowiki &amp; pre.
 * - Added typehint
 * - use strict null check
 * - Simplified code. Removed not needed if-else
 * - Improved BagOStuff docs.
 * - Fixed call signature for PingLimiter hook.
 * - Fixed typo
 * - Added new &quot;byemail&quot; action to the new users log
 * - add profiling points in SiteSQLStore
 * - Change name of section so it does not get confused with Wikidata
 * - set the site internal id when loading sites from the db
 * - Add link to the php manual to the IBM DB2 installer entry.
 * - Implement Language::isWellFormedLanguageTag
 * - Fix self link issues about titles in different or mixed variants
 * - Test improperly quoted attribute values in HTML tags and table cells
 * - Made a message more accourate by changing the word &quot;edit&quot; for &quot;action&quot;.
 * - Add a method to clear the site list programmatically.
 * - Clear caches automatically when changing site list.
 * - Added missing documentation to SiteStore interface
 * - Fix cache key used by SiteSQLStore.
 * - Implemented Serializable interface in Site
 * - Don't return invalid XML from paraminfo when one of parameter values is null
 * -  Enable subpages per default on Project and Help namespaces.
 * - [FileBackend] Fixed bug where &quot;false&quot; could be included in getDirectoryList.
 * - Preserve warnings on API error
 * - Make Job::toString handle non-primitive parameters.
 * - Make TextContentTest and WikitextContentTest work in all cases
 * - Do not flip partial keys in CSSJanus.
 * - Invalid value of &quot;link&quot; parameter in &lt;gallery&gt; no longer produces a fatal error
 * - Added a new &quot;api-error-publishfailed&quot; message.
 * - Improved concurrency of copyFileBackend.php with pipelined downloads.
 * - : Don't rollback after successful commit
 * - Address gender support issues in page enotif subject and intro
 * - API imageinfo correctly handle redirects
 * - Minor tweak to MediaWiki:Readonlywarning
 * - Design improvements to sites code
 * - Avoid raw SQL queries in Maintenance::purgeRedundantText
 * - make purgeRedundantText not fail on pre MW1.5 records
 * - [ExternalStore] Various cleanups to ExternalStore class.
 * - Remove references to non-existent 'execute' right in Title.php
 * - Use better variable name in CoreParserFunctions::pagesize
 * - Update doc comments and code formatting.
 * - [FileRepo] Flipped RENDER_FORCE check order to avoid stat.
 * - Account creation through API no longer leaks IP address of account creator
 * - Change InfoAction cache key to use SHA1.
 * - Add Language::isSupportedLanguage
 * - Use a LinkBatch for the creator/last editor user (talk) pages in InfoAction
 * - Fix changes for Ia1878588 to work with databases that use non-integer timestamps.
 * - Trim spaces on user supplied comments
 * - mediawiki.Uri: Fix parsing of URIs with @ in path.
 * - Use array for join condition
 * - Document that default timestamp is current time.
 * - ObjectCache changes break XCache 3.x support
 * -  use real links for search suggestions
 * - Align comment whitespace a bit.
 * - Mark slow unit test as @group medium
 * - Check for no title and throw an exception
 * -  should be able to return the status for pages besides the one it's on
 * - Http function logic cleanups and comments.
 * - Add ability to reset certain option kinds in API.
 * - Do not send data for 0 increment calls in wfIncrStats.
 * - Remove hardcoded quotes on integer
 * - Fix hardcode database quotes in Special:Watchlist
 * - API debugging flag $wgDebugAPI to disable some security checks
 * - remove api version string and parameter
 * - Use array for database fields
 * - Fix return type doc. On SQLite ResultWrapper is returned
 * - testDecodeTagAttributes now use a data provider
 * - normalize sanitizerTest and add coverage tips
 * - Correct method name in ContentHandler comment
 * - Disable template expansion in message &lt;autoblocker&gt;.
 * - Pass context to UserGetLanguageObject
 * - Fix message movepagetext: Move to a empty page not possible
 * - Made ORMTable and ORMRow non-abstract
 * - Adding SpecialSearchResultsPrepend/Append hooks
 * - Revert &quot;Overriding Vector's footer margin when in print mode&quot;
 * - Add guard to Resources.php
 * - Moved $function definition up to make IDE happy.
 * - [FileBackend] Added work-around for lack of temp url support in rgw.
 * - Added a read-only check to runJobs.php to avoid log spam.
 * - Skip screen sheets with media queries when printing
 * - mcc can now set memcached debug mode and has help
 * - Fix typo in exception message
 * - Make redirect update in refreshLinks.php bypass the redirect table
 * - [JobQueue] Added push convenience wrapper function.
 * - Make protect level messages clear and consistent
 * - We don't use SVN anymore
 * - Follow-up Id75401be (e32c8afe): no more need to prefix debug messages
 * - Minor tweaks to installer text
 * - Additional tests to catch Parsoid regressions.
 * - Pass database connection to SpecialWatchlist::countItems
 * - Fix ApiCreateAccountTest for $wgEnableEmail = false;
 * - More natural flow for the &quot;By e-mail&quot; feature
 * - Followup I888c616e: Keep IRC line format unchanged.
 * - Followup I888c616e: one more string to localize.
 * - Force case-sensitivity on the LIKE operator, to ensure similar behaviour between MySQL and SQLite
 * - Cleanup to ImagePage::openShowImage
 * - Default to the current year in the history page filter form
 * - Further tweaks to pipe trick documentation (follow-up Iaf365e31)
 * - Links created by Linker::makeExternalLink didn't include rel=nofollow
 * - Include original URL params in variant links
 * - Simplify DatabaseBase::tableName

AbuseFilter

 * - Add trailing newlines to wikitext before sending for diff
 * - Avoid fatal error for non-text content.
 * - Allow special pages as context for abuse filter.
 * - Added Older and Newer change link to Abusefilter diff
 * - Use Status object to report filter results.
 * - AbuseFilter + EditFilterMergedContent
 * - Fix the abusefilter array parser test

ApiSandbox

 * - use .hasOwnProperty when checking for presence of object keys
 * - Change description for grammar and clarity

ArticleFeedback

 * - replace call to MAX with GREATEST
 * - Drop ClickTracking integration from mw.user.bucket
 * - - mysql 5.5 / ansi sql incompatibility

ArticleFeedbackv5

 * - Add composer.json
 * - Fix i18n issues.
 * - Added new translation message 'articlefeedbackv5-timestamp-days'
 * - Use Status object to report filter results.
 * - Drop ClickTracking integration from mw.user.bucket
 * - cleanup i18n messages
 * - AFTv5 controls not selectable with tab
 * - remove ClickTracking dependency

Babel

 * - Update code formatting

CategoryTree

 * - Do not re-implement http_build_query :-)

CentralAuth

 * - Fixup some old badly built SQL queries

CentralNotice

 * - Next Attempt at CN Namespace Foo

Cite

 * - Adapt the &lt;gallery&gt; parser test for $wgResponsiveImages

CodeEditor

 * - Disable background linting using WebWorkers

DataValues

 * - _getRawValue implementation in commonsMedia widget
 * - &quot;parse&quot; and &quot;afterparse&quot; events for valueview widget
 * - (minor) improved handling of invalid values in valueview Widget
 * - Added missing dependency
 * - Makes eachchange tests fully independent from Wikibase
 * - Moved jquery.eachchange from Wikibase since its needed here
 * - Added TimeValue
 * - Fix extension path
 * - Added test helper method to facilitate valueparsers that have required options
 * - Added extra tests
 * - Killed class I forgot to remove a few weeks ago
 * - Added ValueFormatterOptionsTest
 * - Added tests for set and get option in ValueParserOptions
 * - Added tests for Error objects
 * - ignore covreage of test registration
 * - &quot;change&quot; event for valueview widget
 * - Disable/enable methods for valueview widgets
 * - (minor) more flexible handling of valueview's value updating
 * - (minor) improve destruction of PersistentDomWidget valueviews
 * - (minor) focus/blur on some valueview widgets no longer fails in non-edit mode
 * - Adding eachchange dependency to dataTypes valueview module
 * - Fix test

Diff

 * - Object conversion for diff arrayalisation.
 * - Removed obsolete code
 * - Added tests that check for exceptions being thrown on invalid data
 * - bump version nr
 * - Improve documentation
 * - Don't use strict comparison for objects.
 * - Retain keys in Diff::toArray
 * - Added DiffOpFactory
 * - Added toArray method to DiffOp interface
 * - Added missing @throws tag
 * - Removed obsolete example code
 * - Fixed a bunch of incorrect @since tags
 * - Removed already done todo
 * - Removed deprecated Removed Diff::getApplicableDiff
 * - Use DiffOp rather then IDiffOp
 * - Add deprecation doc
 * - fix doc

DonationInterface

 * - Shunting the final status log line off to a gateway-indifferent syslog bucket of its very own, so we can tail everything at once.
 * - Logging Cleanup: Searched for log lines that deserved to be qualified as LOG_ERR or something more severe, and added what I feel is a vaguely appropriate log level. Added a setting that will, when unset, suppress the avalanche of LOG_DEBUG level statements that we usually don't want. Also some documentation. Gasp.
 * - Let's make Amazon work with the form chooser
 * - Making GatewayFormChooser work
 * - (FR #595) Adyen payment gateway
 * - Readding Exception Details
 * - Abstract out redirect method

E3Experiments

 * - Revert &quot;Update logging for end of split test.&quot;
 * - Update logging for end of split test.
 * - Bump schema and change GettingStarted experimentId to ob3-split.

Echo

 * - Fixing notification type to be 'web' in controller
 * - Excludes user-dismissed events from count
 * - Adding dismiss functionality to flyout overlay.
 * - Don't double-escape the date header on Special:Notifications
 * - Update comment and db selection
 * - Some consistency tweaks for I484a24b424e69be3640e63b76f82735edae6f13a
 * - Adding dismiss functionality to special page
 * - Fixing unread state for flyout - CSS tweak
 * - Abstracting MySQL in Echo so storage type can be swapped easily
 * - Add special page to the &quot;users&quot; section on Special:SpecialPages
 * - Allow events to specify that they should notify the agent.
 * - Using human-friendly relative timestamps rather than absolute timestamps
 * - Update 'cross referenced' to 'linked' for consistency
 * - Putting all the default user options together in the config

EducationProgram

 * - Creating or editing an ambassador profile prompts &quot;leave page&quot; warning
 * - Move description field below title and name fields.
 * - admins who are not campus/online volunteers should not be able to create Ambassador profiles
 * - Fix query error when there no orgs to select on
 * - Prevent fatal error when making a redirect to an education page
 * - experimental composer.json
 * - Add a few profiling calls to SpecialEducationProgram
 * - Remove broken test
 * - rem roadmap
 * - Students table should be included in the Table of Contents on course pages
 * - Fixed var that accidentally got renamed
 * - Fix notice when sysop key does not exist yet
 * - Fixed loading of default course description
 * - added &quot;current and planned&quot; option to the courses pager
 * - Added alias for Special:EducationProgram
 * - : remove the entry field for &quot;real name&quot; when students enroll in a course
 * - : default language for new courses should be the wikis content language
 * - : prevent people from acidentally running testing scripts and thus causing security issues and other badness
 * - Also list planned courses on Special:MyCourses
 * - : show mycourses link for enrollment of any role (not just students)
 * - : Only log edits by students enrolled in a course
 * - : always load needed resources
 * - Move description field to the top of course pages and remove header
 * - * Moved classes into EducationProgram namespace

EventLogging

 * - Capsule: 'isValid' =&gt; 'clientValidated'
 * - Default schema value: 'UKNOWN' =&gt; -1
 * - Drop unicode shenanigans from DevServer
 * - Python 3 support for dev server.
 * - Remove deprecated DevServer.php
 * - Add requirements.txt, improve test coverage.
 * - Add a Python dev server for debugging purposes.
 * - Tidy up some rough edges.
 * - fix message for &quot;Invalid JSON&quot;
 * - Key formatter interpolates $wgEventLoggingDBname
 * - Generate &amp; show sample PHP / JavaScript in Schema NS
 * - Remove unnecessary type-coercion from account creation event
 * - Tolerate string revIds.
 * - Declare $wgEventLoggingLogSHA1 as global in efLogServerSideEvent.
 * - Use SIGALRM to fail tests that exceed a timeout.
 * - Add raw JSON to alert e-mails
 * - Various fixes to alerter module
 * - Use a generic map of attribute values to SQL
 * - Use 'format' to detect and typecast timestamps
 * - Sort column names lexicographically
 * - Allow exceptions from efSchemaValidate
 * - enable EventLogging on alpha, beta and stable of mobile site

FeaturedFeeds

 * - Rename calls to wfArrayToCGI to wfArrayToCgi

FlaggedRevs

 * - Removed references to bogus functions.
 * - Rename calls to wfArrayToCGI to wfArrayToCgi
 * - Avoid showing a page itself in the &quot;changed inclusion&quot; lists.

GeoData

 * - Decrease update batch size, but remove the delay
 * - Clear killlist on resets
 * - Don't use a closure for wgExtensionFunctions
 * - php_sapi_name =&gt; PHP_SAPI

GettingStarted

 * - Revert &quot;Remove implementation of split test:&quot;
 * - Remove implementation of split test:
 * - Don't send users on GuidedTour when they loaded Special:GettingStarted manually (isNew false).
 * - Put link description back.

GuidedTour

 * - Fix encoding mismatch for titles containing special characters or non-ASCII.
 * - Fix monobook issue and allow customization by skin.
 * - Implement link actions using actual links:
 * - Implement isSinglePage, removing end tour and no cookies:
 * - Don't validate next in gt.initGuider:
 * - Embed arrows using ResourceLoader
 * - Fix tests broken by gt.currentTour validation in gt.initGuider.
 * - Use community portal message, remove obsolete comment.
 * - Improve way gt.currentTour is handled and deprecate gt.initGuider
 * - Add unused to jshint, and various refactoring:
 * - Remove duplicate Arabic messages.
 * - Remove it messages deleted on wiki: move to ar
 * - Don't show X button.

LiquidThreads

 * - Fix JSHint quotmark
 * - JSHint: Write some things in dot notation instead
 * - Rename calls to wfArrayToCGI to wfArrayToCgi
 * - Remove unclear unicode art from LQT new message bar
 * - remove unused lqt-quote and lqt-quote-intro messages
 * - JSHint: strict equalities for strings
 * - JSHint: missing curly braces
 * - JSHint: disable 'quotmark' check
 * - JSHint: ignore jquery/jquery.autogrow.js 3rd party
 * - JSHint: .jshintrc from MediaWiki core
 * - - WikiEditor Search and Replace dialog uses a nonexistent message key for &quot;replace next&quot;

Listings

 * - : use mediawiki:listings-template to override formatting

MWSearch

 * - Rename calls to wfArrayToCGI to wfArrayToCgi

Math

 * - Only update the cache on cache miss
 * - Add unit tests, demonstrating how to stub out deps.
 * - Add and register PHP unit tests for MathSource class
 * - Fix MathRenderer::renderMath.
 * - Change default LockManager back to nullLockManager.
 * - Restructuring Math classes
 * - JSHint: Equality, unused arguments and other minor remnants.
 * - JSHint: Fix var statement and global scope issues.
 * - JSHint: Fix curly braces.
 * - JSHint: Fix quotmark and semicolon warnings.
 * - JSHint: Add .jshintrc
 * - JSHint: ignore modules/MathJax

MobileFrontend

 * - : Fix photo uploads not being marked as mobile edits
 * - : Fix no edit comment after adding image to article
 * - Watchlist with PageImages fixes
 * - Disable photo upload button on main and protected pages
 * - fix typo breaking languages
 * - Move lead photo upload to stable
 * - Fix margin for thumbnails in watchlist (alpha)
 * - Updated Ruby version to 2.0
 * - Detect disabled file upload controls on Firefox OS 1.0
 * - Show upload button again if user cancels upload
 * - Revert &quot;Move lead photo upload to stable&quot;
 * - Updated Ruby gems
 * - Fix left and right margin in uploads dashboard
 * - Move lead photo upload to stable
 * - Workaround for missing #content_0
 * - (mingle #405) Add dynamic head msg on login/acct create form
 * - Use autoless to compile LESS files
 * - (mingle 397) Append configurable string to photo upload description
 * - Don't show or log an error when user cancels photo upload
 * - Add photo upload support for Firefox
 * - Send all upload request parameters inside FormData
 * - Updated Ruby gems
 * - Fix dependencies support in MFResourceLoaderModule
 * - Specify test group explicitly
 * - Fix photo upload button not working after error
 * - Add event logging to photo uploads
 * - Add M#getSessionId
 * - Updated Ruby gems
 * - Increase geosearch radius to 10km
 * - Updated Ruby gems
 * - Updated multi_json Ruby gem
 * - Display thumbnails in watchlist using PHP
 * - Minor wording improvement for readme file
 * - : Mobile device detection for third parties
 * - Fix margins in uploads dashboard
 * - Fix photo upload bug when the same image selected twice
 * - (mingle 330) Displays number of user uploads on upload dashboard
 * - Make sure API wrapper doesn't process FormData objects
 * - Add template support to ResourceLoader
 * - : return more than 10 languages
 * - : correct padding of watchlist icon on watchlist page
 * - Disable forwarding of progress events
 * - Now fix for realz
 * - Prevent fatals in dumps
 * - Remove a lot of b/c cruft
 * - Upgrade Ruby to version 1.9.3-p385

OAI

 * - Rename calls to wfArrayToCGI to wfArrayToCgi

OpenStackManager

 * - Combine netadmin and sysadmin
 * - Set domain explicitly when getting config options
 * - Create default sudo policy for new projects.
 * - Add a checkbox to require sudo passwords.
 * - Use project groups rather than ALL for sudoers.
 * - Slight refactor of projectName handling.
 * - Fix typo

PageTriage

 * - Fix message key and default user option for Echo
 * - rebuild the cache rather than flushing it.
 * - Workaround for Change Ifbeae7e9
 * - Missing a comma
 * - Another userjs- API fix
 * - Fixing PageTriage option setting for list view.
 * - Don't add rationale into the mfd tag
 * - Kill double spaces
 * - unbind click when disabled.
 * - Disable reviewing buttons for page creators.
 * - Improve localization in flyout of curation tool.
 * - make 'Pagetriage-tags-tooltip' less negative.
 * - Change the desc message of

ProofreadPage

 * - Add namespaces for is

Renameuser

 * - Add flag to RenameuserSQL to skip username check

Scribunto

 * - Explicitly destroy the loadedLibraries array
 * - Scribunto language library
 * - Document Scribunto_LuaEngine
 * - Hide mw.makeProtectedEnvFuncs from modules
 * - Fix mw.ustring.gmatch and patterns with '^'
 * - Allow extensions to add libraries
 * - Test for leaked global variables
 * - Fix further non-local effects of library registration
 * - Remove global side-effects from mw.ustring library registration
 * - Lua ustring implementation
 * - Make pairs and ipairs work with frame.args
 * - Handle session loss in the console
 * - Make our loader work like Lua's built-in loaders
 * - Fix unit tests after I62259b76
 * - Clean up title handling for defaultUrl
 * - Add mw.uri library
 * - Fix title passed to API scribunto-console
 * - $wgServerName doesn't exist anymore
 * - Add mw.site library
 * - Make Lua engine tests modular
 * - php_sapi_name =&gt; PHP_SAPI
 * - Add incrementExpensiveFunctionCount methods
 * - Lua library support functions
 * - Fix package.loaded and other cleanups
 * - Fix LuaStandalone nil handling
 * - Fix unit test parameter order
 * - Support __pairs and __ipairs
 * - Fix reference handling in LuaEnvironmentComparisonTest
 * - Fix string extending
 * - Refactor unit tests

SecurePoll

 * - Hide private data after election
 * - Rename calls to wfArrayToCGI to wfArrayToCgi

SyntaxHighlight_GeSHi

 * - Disable some highlighting for MOUSs

TimedMediaHandler

 * - - File: pages for images broken on wmf9 (www.mediawiki.org) by TimedMediaHandler
 * - - File: pages for images broken on wmf9 (www.mediawiki.org) by TimedMediaHandler
 * - Fix undefined $wgTmhFileExtensions
 * - Add support for audio derivatives
 * - Add special page to the &quot;media&quot; section on Special:SpecialPages
 * - Typos: fix browser support punctuation

TorBlock

 * - More annoying debugging
 * - Comment out annoying useless log entries
 * - Swap wfDebug for wfDebugLog so output can be grouped
 * - Added SSL verification when retrieving node list.
 * - Added Onionoo list loader and reorganized functions.
 * - Sanitized coding style and improved documentation.
 * - Put loadExitNodes.php into a Maintenance class.

Translate

 * - Expose mw.translate.getGroup
 * - Show unset as workflow status if no workflow set
 * - Search integration in message table
 * - Ajaxify message filters
 * - We have messages where whitespace is significant
 * - Fetch the workflow states for the group
 * - Get workflow state related information from APIs
 * - Make the inline editor functional
 * - Remove an outdated FIXME
 * - Correct event binding and update api.parse call
 * - Make translatewiki.net's work
 * - Update the group description upon a group change
 * - Show that Special:AggregateGroups is restricted
 * - Create /source-language unit pages for translatable pages
 * - Cleanup Special:PageTranslation more
 * - Use machine translation as translation suggestions
 * - Simplify Special:PageTranslation a bit
 * - experimental composer.json
 * - Make messageListScrollHandler less repetitive and more readable
 * - More space for edit link to take care of languages with long translations
 * - Add ext.translate.messagetable as dependency
 * - Workflow state selector
 * - Remove unneeded text-left classes and RTL hacks
 * - Cleanup
 * - Styling for paste from source actions
 * - Add a class to the paste button and hide it per the spec
 * - Update code formatting
 * - Refactor Translate editor
 * - Add a &quot;Paste original&quot; button
 * - Cleanup whitespace and reduce jQuery calls
 * - Fetch description of message group
 * - Return TUX warnings only on TUX pages
 * - Replace ok and err with .done and .fail in AJAX
 * - Clean up the use of isBeta
 * - Stale state displayed in Special:PageTranslation after (dis|en)couraging
 * - Use mw.Api more consistently and a bit of error handling
 * - Fix the preloading of message details
 * - Collapse same-value translation memory suggestions
 * - A little cleanup
 * - Avoid PHP warning when CDBMessageIndex has only one key
 * - Preload next message while opening a message editor
 * - WIP - Inline message editor on Search page
 * - Whitespace
 * - Change the save button label as per nature of translation
 * - Fix a js error, follow up Ie7aeab2b
 * - Use correct classes for optional, fuzzy, translated messages
 * - Change the URLs as per the group and language change
 * - Ajaxify the group selection and language selection
 * - Pass the current state of message to update the statsbar correctly
 * - Use a single data attribute message for the message items
 * - Link to full-page doc editing
 * - Instantly parse edited documentation
 * - Message documentation language name was always in English
 * - Remove deprecated TMessage::author
 * - Add hook for TranslationAids and small doc tweak
 * - Query recent groups only once per page load
 * - Load all messages from client side on page load
 * - Refactor messagetable
 * - Replace .hide and .show with class 'hide'
 * - Add placeholder message
 * - Disable translation text area when user has no translation rights
 * - Test fixes
 * - Default protwords.txt is useless
 * - Expose all properties via ApiQueryMessageCollection
 * - Remove setInFile calls that should not be used.
 * - Project selector tabs toggle when clicking twice
 * - Fix statsbar update trigger- typo fix
 * - Remove the default filter
 * - Set the direction of source and translation
 * - Cleanup whitespace and remove repeated jQuery calls
 * - Set correct title in the loaded translation editor

TranslationNotifications

 * - Really return success value for run
 * - experimental composer.json

UniversalLanguageSelector

 * - Incorrect vertical alignment for Telugu web font
 * - Update code formatting
 * - Update to match core changes in Idc11b547
 * - Make disabling input methods work
 * - Update jquery.ime and jquery.webfonts from upstream

UploadWizard

 * - Remove redundant &quot;address&quot;
 * - Remove superfluous space
 * - never transcode images into videos with Firefogg
 * - Workaround for Change Ifbeae7e9
 * - Only enable async if file is larger 10Mb
 * - Cleanup Firefogg integration
 * - Don't show invalid license wrongly
 * - Followup I883f6f44: Use XHTML compliant line break
 * -  Errant line break in &quot;Use a different license option&quot;
 * - Revert &quot;Disabled async publish per logging bug.&quot;
 * - Disabled async publish per logging bug.

UserMerge

 * - Add action-usermerge message

VisualEditor

 * - Fix bug where inline nodes didn't trigger wrapping
 * - Node cleanup
 * - i18n icons
 * - Remove trailing commas
 * - Make JSHint ignore the docs/ directory
 * - Introduce context object in getDataFromDom
 * - Use AnnotationSet rather than array in getDataFromDom
 * - Hybrid-ify MetaBlock/MetaInline
 * - Hybrid-ify AlienBlock/AlienInline
 * - Specify (but do not implement) the context parameter to toDataElement
 * - Fixed documentation warning
 * - Add Iceweasel to supported browsers list
 * - Added tests and fixed inconsistencies for empty text node handling
 * - Automatically prune empty text nodes
 * - Trigger refactor
 * - Added support for passing data into annotation constructors
 * - Add extension-specific types functionality to ModelRegistry
 * - Allow matchTagNames = null in ve.dm.Converter
 * - Added @source links to externals
 * - Add wrapper for Array.prototype.filter
 * - Actually use this.nodeFactory and this.annotationFactory in ve.dm.Converter
 * - Drop name parameter from ModelRegistry.register, use .static.name
 * - Move matching code from AnnotationFactory to ModelRegistry
 * - Fixed documentation errors
 * - Enable VisualEditor in MediaWiki integration for IE 9 and up.
 * - Make defaultAttributes a static property as well
 * - Convert node rules to static properties
 * - Add annotation-like static properties to nodes
 * - Replace nodeFactory invocations with direct static access
 * - Fix naming of phantoms
 * - Add TriggerRegistry to tests
 * - Introduced method replacePhantoms in ve.ce.Surface in order to avoid accessing ve.ce.Surface local variable ($phantoms) from ve.ce.AlienNode
 * - Convert &quot;var\t&quot; to &quot;var &quot;
 * - Fixes for typos and some missing documentation
 * - ImageNode Todos
 * - Add interplatform, i18n shortcuts to ui buttons.
 * - Double spaces optimization
 * - Reorganization of ve.ce.Surface methods
 * - Cleaned up paste target and surface styles
 * - Slug Todos
 * - Fix minor bug (typo - was: ve.ve, is: ve.ce)
 * - Minor cleanup.
 * - Inline ve.dm.Document.offsetContainsAnnotation
 * - Removing alienblock tag
 * - Remove range.normalize (not needed), use range.isCollapsed more often
 * - Major Documentation Cleanup

WikiEditor

 * - experimental composer.json
 * - fix ext.wikiEditor.publish so that it actually works

WikiLove

 * - Fixing WikiLove error handling for post-preview errors

Wikibase

 * - Fix sort order for minwiki for alphabetic and revised
 * - Omit external wikibase changes from watchlist query w/ enhanced changes
 * - Add minwiki to the sort order
 * - check for enhanced changes preference in more places
 * - Make client robust against unknown sites.
 * - mark wikibase edits as autopatrolled in client
 * - Omit wikidata changes from enhanced changes
 * - (minor) fix show-wikidata-rc preferences message
 * - remove todo from the code
 * - Fixed test failing after change to reference serialization
 * - (/hot fix) added EntitySerializer option setIncludeValuesWithMissingReferences
 * - Limit labels etc to 250 characters.
 * - Statements are no longer an experimental feature
 * - Fix JS error if repoScriptPath or repoUrl settings not defined
 * - Make it optional to include claims in diff, saved to changes table
 * - added HashArray indicesAreUpToDate and rebuildIndices
 * - Changed ClaimAggregate::getClaims to return Claim[] rather then Claims
 * - fixed assertion violation caused by inconsistent state of Claims object
 * - use map diffing rather then list diffing for claim lists
 * - fix edit links link to include namespace
 * - (minor) change message for statementview 'sources' label
 * - removing references is working now
 * - moved claimview claim remove related API interaction in its own fn
 * - JS wb.RepoApi removeReferences
 * - Using trigger to trigger tooltip's afterhide event
 * - editing of existing reference
 * - Cleanup for listview.ListItemAdapter, constructor now expects options
 * - slightly adjustment to tests
 * - css: Correct claim container / statement view bottom padding
 * - Entity selector widget: Set entity when focusing suggestion
 * - Remove unused (and defunc) module ApiSearchByName
 * - Handle invalid values in statements ui
 * - Basic css for statement references
 * - statementview can display and add references now
 * - statementview: counter for number of references
 * - introduction of jQuery.wikibase.statementview
 * - fix refs to Settings class
 * - Entity selector: Option to trigger &quot;select&quot; event
 * - claimlistview can now serve a list of other widgets than claimview
 * - Changed Reference interface and ReferenceObject to just a Reference class
 * - Modified reference serialization to accomodate non-snaks elements such as the reference hash
 * - Minor updates to help URLS to make them correct and consistent
 * - Add needsToken, mustBePosted and isWriteMode
 * - reference related bugfix in wb.Claim.newFromJSON
 * - ReferencedEntitiesFinder::findClaimLinks aware about Statements now
 * - extend repoApi to support editing existing references
 * - repo API module for adding a reference
 * - introduction of wb.SnakList, a list containing a set of Snaks
 * - Add new _postAndPromiseWithAbstraction to repo API
 * - minor cleanup and optimization in repo API
 * - Change comments to avoid failures during test
 * - fixed SnakListTest::testToArrayRoundtrip
 * - up rel notes
 * - Added links to referenced entities in pagelinks table
 * - Fix exists check, array elements can be null
 * - fix type hint
 * - (testing) added selenium test for setAliases special page
 * - add bunch of profiling points for LangLinkHandler
 * - Fix name of dataproviders
 * - (testing) added Selenium tests for setDescription special page
 * - (hotfix) fixing SetLabel Selenium tests after refactoring
 * - Move jquery.eachchange to DataTypes since code there needs it
 * - minor fix at checkKey function
 * - Added special pages to special page group
 * - ( - ) New Special Pages to edit entities without javascript
 * - (minor) some documentation updates in old JS UI components
 * - (minor) added some documentation for SiteLinkEditTool + minor cleanup
 * - (minor) fix against crashes during certain console/debugging operations
 * - Add a plural message to avoid confusion
 * - Display error when site API not accessible
 * - Option to lock snakview elements
 * - (hotfix) fixing calls of Sites::singleton in ClientChangeHandler
 * - Fix populateSitesTable, use new SiteSQLStore class.
 * - Use wikibase- as prefix for all messages
 * - Updated entity id parser implementation
 * - Add some tests for ChangeNotificationJob.
 * - Correct SiteLinksEditTool table fixation
 * - Mark ChangesTable testSaveSelectCountAndDelete as skipped on Wikibase Client
 * - Make use of new sites code in core
 * - (minor) adjusting client selenium tests for dispatcher script
 * - wikibase.RepoApiError QUnit tests
 * - Making wb.Tooltip use wb.RepoApiError instead of custom object
 * - Using RepoApiError in EditableValue
 * - New RepoApiError constructor handling wikibase API errors
 * - add $wgContentHandlerUseDB = true; to example settings
 * - terms search key schema update for sqlite
 * - Updated site link table fixation for IE
 * - (hotfix) fixing entitieswithoutlabel-test in chrome
 * - (testing) selenium tests for label/description/aliases length constraints
 * - (hotfix) wrong order of parameters in messages
 * - (minor) selenium: only run client qunit tests on client
 * - (hotfix) fix to selenium protected page object
 * - Specify options for entityidparser that have all required fields set
 * - Added doc to apisetreference
 * - Provide text for filtering to AbuseFilter.
 * - (minor) moved jQuery.TemplatedWidget template related fields into options
 * - Introduce wb.RepoApi which queries the repo independent from the current wiki
 * - Moving baseclasses and preparing for reuse
 * - (minor) Add group medium to a test that otherwise complains
 * - merge runs of changes for RC.
 * - Replace toolbar with message while saving/removing
 * - display labels and descriptions in user languages
 * - (minor) optimization of claimview error handling
 * - Checking on initial snak when drawing property
 * - Trigger claimview widget's error handling out of claimlistview
 * - display labels and descriptions in user languages
 * - (hot fix) fixes broken 'add' button introduced in I14e89ecc
 * - (minor) stick closer to jQuery.Widget implementation of snakview disable/enable
 * - Simpler implementation of disable for SnakTypeSelector
 * - Honor $wgSend404Code for missing entities.
 * - docs++
 * - fix error in test (not spotted so far because test is not run on mysql installs)
 * - fix test failing on sqlite
 * - Added asserts in methods otherwise not performing any tests
 * - Rem test that fails on some setups
 * - Remove Statement interface and rename StatementObject to Statement
 * - (minor) fix for calling options in Widgets based on TemplatedWidget
 * - Disable input element and toolbar on saving/removing
 * - Define EntityChange::__toString
 * - (testing) snaktype selector seleneium tests
 * - (testing) method to exclude certain browsers in selenium tests
 * - Remove Claim interface and rename ClaimObject to Claim
 * - added selenium tests for localizing numbers
 * - claimview widget: Attach to valueview widget's change event
 * - Added Claims::getDiff tests
 * - Improved snakview error handling
 * - (minor) remove check for user.isAnon. Should always be set now
 * - Localized numbers in WikiBase js
 * - (testing) removing workarounds for in selenium tests
 * - (minor) cleanup of lib resources
 * - Added TODO in diff visualizer to prevent notices when visualizing diffs containing claims
 * - fix error detection in createclaim api
 * - Added claims to entity patching
 * - 'wikibase-item' data type now uses 'wikibase-entityid' data value
 * - Fix ExternalRecentChange::getParam
 * - add --max-time param to dispatchChanges
 * - Added claims diffing and added this to entitydiff
 * - Re-apply &quot;Added EntityId and EntityIdParser in JS&quot;
 * - (hotfix) selenium sitelinks tests fix
 * - selenium tests for statements UI errorhandling
 * - Corrected checks of emptiness of labels and descriptions
 * - (minor) snakview value didn't update view in all cases
 * - Claimview/Claimlistview: Set tooltip before setting error class
 * - Entity selector: Show id when focusing an entity without a label
 * - Entity selector: Check for entity id when validating input
 * - Making remove button state changeable
 * - rem unused use statements
 * - Adding mediawiki.user dependency to entityViewInit
 * - Special page group for Wikibase repo
 * - (minor) remember each variation's value when switching variation + re-use it
 * - (minor) in snakview, only show snak type selector if property is chosen
 * - Handling of changed data types
 * - Moving snak type selector to left of the value input
 * - Custom object constructor for templates
 * - A small addition about the database user login
 * - testing 0 as value for label/description/aliases
 * - ResourceLoader modules dependency clean-up
 * - use prefixed text for title when adding edit link
 * - check rc_params is array in client
 * - Entity selector: Setting entity on mousedown event
 * - suggester widget: Replace input value with suggestion list item
 * - (minor) workaround for failing qunit tests in firefox
 * - Show Git hash in Special:Version
 * - Prevent entity selector widget from resetting entity
 * - Only adapt first letter in AutocompleteInterface
 * - suggester jQuery widget: Option to adapt letter case
 * - (minor) proper destruction of certain snakview variations
 * - Revert &quot;Added EntityId and EntityIdParser in JS&quot;
 * - adjust watchlist query to use rc_this_oldid=page_latest
 * - make changes line hook more backwards compatible
 * - Added EntityId and EntityIdParser in JS
 * - (minor) re-organized 'jquery.wikibase.snakview' resource loader module

WikimediaMaintenance

 * - Make getJobQueueLengths only count jobs with no token
 * - Fix paths back to /h/w/c based
 * - Remove /dblist from path (no git deploy yet)
 * - Change script for creating translate tables to more generic

WikimediaMessages

 * - Followup I6cddbdc6: Use protocol relative for creativecommons.org
 * - Add Wikidata license terms

cldr

 * - experimental composer.json
 * - Add English local name for nds-nl

timeline

 * - fixes for install-ploticus.sh
 * - consistently use &lt;div class=&quot;error&quot;&gt; for user-visible errors