MediaWiki 1.23/wmf4/Changelog

Core changes

 * - Commit of various wmf-branch live hacks
 * - Update formatting on API classes
 * - Fix optional message key
 * - mediawiki.ui: Fix spacing for LESS
 * - Update formatting
 * - Declare visibility for class properties
 * - Port mediawiki.ui SASS to LESS
 * - Skip IP::isInRange test if input is not in CIDR notation
 * - Made cleanupUploadStash use batching for the last two loops
 * - mw.util.addPortletLink: Check length before access array index
 * - Remove extra space
 * - Short circuit $wgSquidServersNoPurge iteration if ip is specifically
 * - installer: shows status message on DB connection error
 * - Fix false positive in findHooks.php
 * - Fix one more profiling error from I0a9a7f10ea (f5a0c23)
 * - Standardize spacing
 * - Add GetLogTypesOnUser hook
 * - In Special:AllPages, limit the size of hierarchical lists
 * - Avoid HEAD requests for files missing from the destination
 * - Removed sanity regex since there are too many random formats to track
 * - Fix location of variable initialization
 * - Expand release notes for Iab02cbd4
 * - Rather than upsert module store, explicitly remove old value and then add new one
 * - Use correct case for SpecialRecentChanges class in SpecialPageFactory::$mList
 * - Use country neutral &quot;national identification number&quot;
 * - Change interlanguage link title message key
 * - Fix WikitextContentHandlerTest::testMakeRedirectContent when content language is not english
 * - thumb.php: map b/c params prior to attempting redirection
 * - Make 'quotation-marks' message non-optional
 * - DatabaseBase: Fix version number in deprecation notice
 * - Do not escape title attribute twice for tooltip-iwiki
 * - Increase LanguageConverter cache version
 * - Revert &quot;DifferenceEngine cleanup&quot;
 * - Exclude non-standard global $checkBlacklist in CodeSniffer checks
 * - Use suppress/restoreWarnings
 * - Use capital as first letter for class names
 * - Use capital for classes Languages and ExtensionLanguages
 * - Break long lines
 * - Update formatting in messages.inc
 * - Update formatting
 * - Fix release notes formatting
 * - Fix profiling error from I0a9a7f10ea (f5a0c23)
 * - New hook 'LocalisationChecksBlacklist' to allow to extend the localisation checks blacklist
 * - Add content model to the page information
 * - Revert &quot;Add a hook to validate account creation fields.&quot;
 * - BacklinkCache performance tweaks
 * - Add a hook to validate account creation fields.
 * - Sync RELEASE-NOTES-1.22 between master and REL1_22
 * - Remove duplicate entries in messages.inc
 * - Fixed loading of stat cache entries into the wrong key
 * - Create prepareQuickTemplate function
 * - Update docs in CdbPHP.php
 * - Don't use wfIsWindows in CDB writers
 * - Clean up CDB classes
 * - Suppress section edit links with action=render
 * - Give the search page a little UI love
 * - SpecialWatchlist: Minor cleanup
 * - DifferenceEngine cleanup
 * - SpecialRecentChanges: Remove '@todo Uses radio buttons (HASHAR)'
 * - Adding a quotation marks message to core.
 * - Clarify thumbnail log failure entries when the local file copy failed
 * - Cleanup watchlist preference usage
 * - Anons should not be able to use the change e-mail form at all
 * - Correct tooltip of &quot;Next n results&quot; on query special pages.
 * - Let mw.util.addCSS also return a CSSStyleSheet in IE8
 * - Improve variable naming in EnhancedChangesList
 * - Allow ParserLimitReportFormat to change $value
 * - Work around HHVM bug with stdin/stdout in proc_open
 * - filebackend: improved &quot;adviseStat&quot; performance
 * - Speed up thumbnail purging a bit for stash script
 * - FormOptions: Implement FLOAT type
 * - wikibits: Add some missing deprecation messages
 * - Set visibility for class property of RegexlikeReplacer
 * - Set visibility on class properties of ExplodeIterator
 * - Set visibility on class properties of ReplacementArray
 * - Set visibility of class properties of HashtableReplacer
 * - Declare visibility on class properties
 * - Declare visibility on class property
 * - Address some PHP CodeSniffer errors and warnings
 * - Remove underscore from CdbReader_[DBA|PHP] classes and related file
 * - Support CIDR ranges in $wgSquidServersNoPurge
 * - Add convenience maintenance script wrapper
 * - Use anon-specific text in Article::showMissingArticle
 * - Declare visibility on Autoloader::$autoloadLocalClassesLower
 * - Migrate usage of wikibits in legacy protect.js and upload.js
 * - Add close elements through code
 * - Break long lines
 * - Move files with tests to reflect the code
 * - Fix call to function applyPatch in MysqlUpdater
 * - Rename mw.util.wikiGetlink to getUrl
 * - Remove deprecated ChangesList::newFromUser function
 * - Cleaned up DatabaseBase constructor to use an array
 * - Cleanups to DB transaction handling
 * - Remove stupid one-cell table
 * - DifferenceEngine minor fixes
 * - Refactor diffs
 * - Expose iw_trans in siteinfo API interwikimap prop
 * - Add rc.unpatrolled to the recentchanges API
 * - Added --sleep-per-batch to purgeChangedFiles.php
 * - xml dump maintenance scripts should use the 'dump' db group

BetaFeatures

 * - Use existing global function for inserting personal link
 * - Rephrase mw-ui-feature-requirements-skins

Collection

 * - Merge i18n files, step 1
 * - Remove template blacklisting functionality
 * - Honor $wgExtensionAssetsPath
 * - Remove insane version check

Echo

 * - Disable DatabaseBase constructor
 * - Remove exclusive module group to reduce HTTP request fragmentation
 * - Avoid PHP warning in strripos
 * - ext.echo.overlay: Unbreak removal logic

EducationProgram

 * - Remove Settings::newFromGlobals (fixed version)
 * - Revert &quot;Remove Settings::newFromGlobals&quot;
 * - Whitespace fixes: adhere to PHP code conventions.
 * - Update INSTALL: this extension no longer uses SVN.
 * - Fix student name in dialogue for removing article
 * - Fix CourseStoreTest after change to DatabaseBase
 * - Remove Settings::newFromGlobals
 * - Increase limits to Special:MyCourses activity feeds

FlaggedRevs

 * - Avoid silly double-parse on edit bug
 * - Removed unused expandText method

MassMessage

 * - Change default name to 'MediaWiki message delivery'
 * - Add the log entry after we know the job is successful
 * - Localize plaintext log entry links properly

MobileFrontend

 * - QA: Attempt to get around bogus failure to type password
 * - Center heading on Special:Userlogin and friends
 * - Nearby pages: Don't change the background when open
 * - Beta desktop feature: Nearby pages
 * - i18n: Fix menu in RTL mode
 * - Story 1218: Allow users to modify their UserProfile intro
 * - Check Thank extension exists before rendering section on profile
 * - Hygiene: Address toggle fix me
 * - Hygiene: Remove userprofile.js
 * - Story 1312 Card 1312: Style UserProfile page
 * - Modernize the toggle tests
 * - Fix mode for qunit tests on non-english wikis
 * - Hygiene: Remove autoless from Node.js dependencies
 * - Don't throw fatals for non-existant usernames
 * - Hygiene: Separate overlay code from mobile.stable.common
 * - Avoid fatals in Special:History without parameter
 * - Add a note for SpecialWatchlistQuery hook usage for Iec4aab87 in core
 * - Added GENDER support to mobile-frontend-profile-last-edit
 * - Unbreak token fetching for anonymous users
 * - Hygiene: Make hook code readable
 * - Update progressive action button in new overlays
 * - Fix confirmation on upload cancel [beta]
 * - Hygiene: Address todo in SkinMobileBeta
 * - Make textarea in photo uploads autoresize
 * - Story 1289: Promote image viewer overlay to beta
 * - Regression: Revert Special:Search and friends styling to not show footer/header
 * - text and target for 'Terms of use' link changed
 * - Hygiene: Use getUrl rather than wikiGetlink
 * - Upstream: Mobile skin code to Minerva skin code
 * - Hygiene: Remove unused template variable in SkinMobile
 * - Hygiene: Fix upstream skin mobile to skin minerva fail...

MultimediaViewer

 * - Don't interfere with middle click

OAuth

 * - Corrected message spelling
 * - Put application name in quotes
 * - Removing parentheses
 * - Update Gender
 * - Improve user-facing error messages
 * - Update i18n from TWN comments
 * - Add hook to override message
 * - Reuse more understandable message

OpenStackManager

 * - Implement AbortNewAccount hook to check shell name.

Parsoid

 * - Treat WikiLink/Category like PageProp/Category while serializing
 * - Fixed bug serialization template args containing &quot; : &quot;
 * - Update AccessDeniedError message to reflect private wiki support
 * - Default initial MW page is Main Page (capitalized P)
 * - Improved dom-diff to deal with data-mw by recursing into object
 * - Fixed unhandled scenarios in the wikitext escaping &lt;td&gt; handler
 * - Fix parsing of image captions containing embedded image options.
 * - Fix css decoding in the sanitizer

ProofreadPage

 * - fix failure when $links = array and $params = null

SemanticForms

 * - Fix for apparent bug where too many pipes are added to generated templates
 * - fix bug (handling of alternate forms with no default form)
 * - Newline fix
 * - Added handling for new SMW #subobject capability for Page Schemas

TemplateData

 * - Specify &quot;content&quot; and &quot;unbalanced-wikitext&quot; as a valid parameter types
 * - Drop type prefixes because all values are strings in HTML (and wikitext)
 * - Fix roundtrip issues (normalised output for API must be valid input)

Translate

 * - Fix button styles in Special:Translate
 * - Fix ApiTokensTest class name collision
 * - Remove unexplained call to OutputPage::setRevisionId
 * - Update ULS RL module names
 * - Avoid using deprecated method and add some missing deps

UniversalLanguageSelector

 * - Updated Ruby gems
 * - Refactored Autonym font feature
 * - Add explicit mediawiki.util dependency to RL modules
 * - Keep previous input settings if new language selected and cancelled
 * - Remove the non-existing lazyload option for uls plugin
 * - Validate the dirty flag before saving preferences in each modules
 * - Refactor &quot;Edit area should use the fonts selected by the user from ULS for a language&quot;
 * - Refactor &quot;Open language selector when logged in&quot;
 * - Use data-i18n for system font l10n
 * - Page scrolls when opening language selector
 * - Revert &quot;Do not load jquery.jStorage for logged in users&quot;
 * - Update Autonym font (20131112)
 * - Do not load jquery.jStorage for logged in users
 * - Cleanup wgULSLanguages usage
 * - ResourceLoaderULSModule::getModifiedTime updates continuously
 * - Fix incorrect module name
 * - Refactored scenario: Edit area fonts should not change on UI language change if the user preferences for edit area font are set
 * - Remove the dependency on uls.data
 * - Lazyload jquery.uls library
 * - Update jquery.ime to latest version
 * - Fix URL for Autonym font.
 * - Simplify the test code - create autonyms dynamically
 * - Update jquery.i18n from upstream
 * - Update jquery.uls from upstream.

UploadWizard

 * - Set message and group used on Special:SpecialPages

VisualEditor

 * - Make generic localization utility for lang code keyed objects
 * - [browser test] Additional UTF-8 editing test string
 * - Add OO.ui.ToggleWidget
 * - Make inspector tools active when content is inspectable
 * - [browser test] identifier for Link close element changed
 * - Rename remapInteralListIndexes to correct typo
 * - Fix docs for ve.dm.Model.getAttributes
 * - Make tools disable correctly
 * - Cleanup after window refactor
 * - Use mw.util.getUrl instead of mw.util.wikiGetlink (deprecated)
 * - Guard against detached nodes in ve.ce.GeneratedContentNode#doneGenerating
 * - Fix edit source switch in Firefox
 * - Force LTR direction in MWSyntaxHighlightDialog
 * - Window refactor
 * - MWExtensionInspector input direction based on content
 * - Slight refactoring of global VE language variables
 * - Adapt beta features icons for RTL
 * - [browser test] one more variable string no longer hard coded
 * - [browser test] edit string no longer hard coded
 * - Add shortcut commands for underline &amp; sub/superscript.
 * - Add &lt;ref&gt; tags to wikitext detection regex
 * - Add a whole bunch of new ve.track events for instrumenting loading and saving
 * - Restore selection when editor is refocused

WikiEditor

 * - Kranitor: Make JSHint pass