MediaWiki 1.30/wmf.2/Changelog

Core changes

 * - Protect language converter markup in the preprocessor (take 2).
 * - Initialize mw.util.$content in mediawiki.util
 * - mediawiki.page.patrol.ajax: Remove dependency on mediawiki.page.startup
 * - ApiHelp: Avoid deprecated ObjectCache::getMainWANInstance
 * - Deprecate wfMemcKey and wfGlobalCacheKey
 * - GlobalFunctions: Avoid unnecessary fully-namespaced MediaWikiServices
 * - Avoid SearchEnginePrefixTest postgres failures
 * - Remove $wgExceptionHooks
 * - resourceloader: Allow modules to be registered via a factory callback
 * - Put print click handler on link, not on list item
 * - In Autopromote skip edit count lookup if requirement is 0 or invalid
 * - Update CREDITS
 * - Print: prefer JS print over printable version.
 * - Fix EnhancedChangesList::getDiffHistLinks null exception
 * - resourceloader: Add tests for OutputPage::buildExemptModules
 * - Improve grammar of message on Special:GoToInterwiki
 * - Added increase editcount upon page move
 * - Typofixes in two apihelp messages for search and templates
 * - HTMLUsersMultiselectField: Make auto-infusable when used inside a legacy HTMLForm
 * - Remove untranslated "editinguser" message from tyv (tuvinian)
 * - Allow more customization on the default toggle system
 * - Disable broken TemplateCategoriesTest unit test
 * - ApiSandbox: Fix HTTP error handling
 * - Add release notes for T151633
 * - Add \b to regexes in BlockLevelPass to avoid confusing tr & track
 * - Hack around icu breakage for fa sorting
 * - Fix Closure detection in MediaWikiTestCase
 * - Fix the web updater
 * - Add type hint to ThumbnailRenderJob::hitThumbUrl
 * - Add missing doUpdates call to refreshLinks.php
 * - Use test user helper methods in UserGroupMembershipTest/UserTest
 * - Add workaround for HHVM issue 6206
 * - Use Devanagari digits for list items on ne.wikipedia
 * - Make sure all functions in Database.php are documented
 * - MediaSearchWidget: Only resize new results
 * - Tests: correct order of assertEquals arguments
 * - MimeAnalyzer: Detect magic bytes for mp3
 * - Add HHVM version check
 * - Improve HTTP logging
 * - Avoid postgres PrefixSearchTest failures due to collation differences
 * - Various test fixes for postgres
 * - Introduce wgRelevantPageIsProbablyEditable
 * - Remove Selenium tests written in Ruby
 * - Resources.php: Add missing dependencies to module 'mediawiki.user'
 * - Make sure unique keys carry over to postgres table duplicates
 * - RCFilters UI: Actually backwards-compat instead of overriding false
 * - ContribsPager: Use one TemplateParser instance
 * - EnhancedChangesList: Use one TemplateParser instance
 * - TemplateParser: Improve cache integrity check failure scenario
 * - Update OOjs UI to v0.21.4
 * - Sync up with Parsoid parserTests.txt
 * - ApiLogin: i18n for 'Aborted' reasons
 * - Apply EXIF rotation to X-Content-Dimensions
 * - Improve output of refreshImageMetadata and refreshFileHeaders
 * - Resources.php: Add missing dependencies to module 'mediawiki.util'
 * - registration: Move attributes out of the top level
 * - registration: Deprecate not having manifest_version set
 * - RCFilters: Actually be consistent when storing 'highlight' state
 * - EditPage: Preserve &ooui=1 / &ooui=0 from URL after preview
 * - OutputPage: Remove deprecated addParserOutputNoText, getHeadLinks methods
 * - Removed deprecated ExtractThumbParameters hook
 * - ParserOptions: Include wrapping class in options hash
 * - RCFilters: Always put highlight values in the URL
 * - RCFilters: Fix getFilterRepresentation to consider '0' as false
 * - resourceloader: Add filename to validateScriptFile cache key
 * - RCFilters: Rephrase 'unset' to 'remove' in default option menu
 * - resourceloader: Simplify validateScriptFile with getWithSetCallback
 * - ApiQueryRevisions: Don't be so tricky handling rvstartid/rvendid
 * - Refactor filter-specific logic into group models
 * - RCFilters UI: Add a placeholder to SavedLinksListWidget when it's empty
 * - Date range filtering in Special:NewFiles
 * - RCFilters UI: Add tooltip to saved links items
 * - Pager class for filtering by date range
 * - More magic word translations for Catalan (ca)
 * - RCFilters: Treat saved query with multiple spaces as empty
 * - RCFilters: Actually read/write highlight parameter
 * - Gate option to save RC filters to default false
 * - Fix comment typo in MimeMagic.php
 * - Check for null before calling a textResults method to (fixes T165091)
 * - mw.Upload.Dialog: Define .static.name
 * - Add X-Content-Dimensions support to DjVu
 * - Allow namespaces defined in extension.json to be overwritten locally.
 * - Add 'show-multimedia-search-results' to SearchEngine feature data
 * - RCFilters UI: Add down indicator to SavedLinksListWidget button
 * - RCFilters UI: Don't remove removed saved links twice
 * - Factor out changetag name validation check
 * - Check for index to exist before accessing it.
 * - Fix usage of $db->nextSequenceValue
 * - Avoid postgres CategoryMembershipChangeTest failures
 * - Handle proxy-based TLS when placed in front of Swift
 * - Add collation for Bashkir (ba)
 * - Make LocalPasswordPrimaryAuthenticationProviderTest use TS_MW timestamp conversion
 * - Avoid assuming a user with ID 0 exists in ApiMainTest::testAssert
 * - Fix some postgres test failures
 * - Make loadWatchedItem coerce the DB timestamp to TS_MW
 * - Update OOjs UI to v0.21.3
 * - Add missing addQuotes to ChangesListSpecialPage
 * - Store original media dimensions as additional header
 * - Make registerTempTableOperation detect TRUNCATE operations
 * - benchmarks: Convert benchmarkHooks to use Benchmarker
 * - Remove TestingAccessWrapper class (now available via composer)
 * - OOUI-ificiation of TablePager nav
 * - Chinese Conversion Table Update 2017-3
 * - Match Parsoid's attribute sanitization for video elements

Vendor

 * - Add mustangostang/spyc 0.6.2
 * - Update OOjs UI to v0.21.4
 * - Make testing-access-wrapper available in production
 * - build: add jakub-onderka/php-console-highlighter
 * - Update OOjs UI to v0.21.3

AbuseFilter

 * - Fix usage of $db->nextSequenceValue

AntiSpoof

 * - Add phpcs and make pass

Babel

 * - Cache the result of getUserLanguageInfo
 * - Add a missing pipe in gn translation
 * - Map MediaWiki's fake language codes to real ones

Calendar

 * - Add phpcs and make pass

Campaigns

 * - Add phpcs and make pass

Cards

 * - Delete outdated composer.lock
 * - Update two packages and also update some js

CategoryTree

 * - build: Update eslint to 0.4.0, banana-checker to 0.5.0 and jsonlint to 1.0.8

CirrusSearch

 * - Add the ability to control visibility of multimedia search results
 * - Fix index usage on archive indexing
 * - build: add parallel-lint

Cite

 * - Revert "Update ve.ui.MWWikitextStringTransferHandler.test results for wrapping"
 * - Describe group changes for references and references lists
 * - Update ve.ui.MWWikitextStringTransferHandler.test results for wrapping

Citoid

 * - Add phpcs and make pass
 * - Use TabPanelLayout instead of deprecated CardLayout
 * - i18n: Tell users they can use ISBNs

CodeReview

 * - Fix styles queue violation for "ext.codereview.local"

Cognate

 * - Add a clear-first option to populatePages script
 * - Don't pass ConnectionRefs to ConnectionManager::releaseConnection

CollaborationKit

 * - Fix edit conflict handling in lists.
 * - Assign column-agnostic UID to individual list entries
 * - Ask the user for confirmation before overwriting an existing page
 * - Using getText to get canonical username instead of getDBkey
 * - Adding .pushPending to certain process dialogs
 * - Change JS list editor to use numeric indices instead of titles.
 * - Treating the "empty column" message as a list item for CSS selector
 * - Check for parent page being a hub earlier in the process.
 * - Updating unit tests

Collection

 * - Remove comment in .eslintrc.json

CommonsMetadata

 * - Add php-console-highlighter

ConfirmEdit

 * - Remove implode erroneously left

ContactPage

 * - Add phpcs and make pass
 * - Add php-parallel-lint

ContentTranslation

 * - CX2: Fix deprecation warnings about CardLayout
 * - CX2: New link tool - Add any internal or external links
 * - Fix js error in mw.cx.ui.TranslationView#onTranslationTitleChange
 * - Fix the Qunit failures
 * - CX2: Categories: Use MenuTagMultiselectWidget widget
 * - CX2: UI changes for the MT tool card
 * - CX2: Fix the js error in publishing and show success message
 * - CX2: Remove dummy dictionary tool linked to section for now
 * - CX2: Basic formatting toolbar functionality

ContributionTracking

 * - Add php-parallel-lint

CreditsSource

 * - Add php-parallel-lint

Dashiki

 * - Downgrade extension.json to manifest_version 1
 * - Add phpcs and make pass
 * - Add php-parallel-lint

DisableAccount

 * - Add php-parallel-lint

Disambiguator

 * - Add php-parallel-lint
 * - Disable parser tests due to T159014

DismissableSiteNotice

 * - Add phpcs and make pass
 * - Add php-parallel-lint

DonationInterface

 * - Rename amount to gross
 * - Rename state field to match backend state_province
 * - Rename currency_code to currency
 * - Rename 'lname' to normalized 'last_name'
 * - Rename 'fname' to normalized 'first_name'
 * - Rename 'street' field to normalized 'street_address'
 * - Use normalized key for supplemental_address_1
 * - Add gateway_session_id to queue messages
 * - Log session IDs when adding info & failing to find it
 * - Revert "process payment before popping out of iframe"
 * - Don't crash error form on missing keys
 * - Deal with retry errors in pp recurring
 * - Fix PP express for new encapsulated errors
 * - Update translated error messages for new scheme
 * - Encapsulate errors
 * - Use consistent width constraints
 * - Remove Verisign secure seal

DoubleWiki

 * - Add phpcs and make pass
 * - Add php-parallel-lint

DynamicSidebar

 * - Add php-parallel-lint

Echo

 * - Trivial docfix in DiscussionParser
 * - Fix usage of $db->nextSequenceValue

Elastica

 * - Add phpcs and make pass

ExtensionDistributor

 * - Add php-parallel-lint

FeaturedFeeds

 * - Add php-parallel-lint

Flow

 * - TalkpageManager: Add non-master mode to checkIfCreationIsPossible for API

FundraiserLandingPage

 * - Add php-parallel-lint

FundraisingTranslateWorkflow

 * - Add phpcs and make pass
 * - Add php-parallel-lint

Gadgets

 * - Revert "Move gadget styles from main stylesheet request to site request"

GeoCrumbs

 * - Add php-parallel-lint

GeoData

 * - build: Replace jshint with eslint
 * - Add php-parallel-lint

GettingStarted

 * - Add php-parallel-lint

GlobalUsage

 * - Convert to new array syntax
 * - Add php-parallel-lint

GlobalUserPage

 * - Add php-parallel-lint

GoogleNewsSitemap

 * - Add php-parallel-lint

Graph

 * - Add phpcs and make pass
 * - Add php-parallel-lint

ImageMap

 * - Add phpcs and make pass

InputBox

 * - Add phpcs and make pass

Insider

 * - Add phpcs and make pass
 * - Add php-parallel-lint

Josa

 * - Add php-parallel-lint

JsonConfig

 * - Add php-parallel-lint

LabeledSectionTransclusion

 * - Add phpcs and make pass
 * - Add php-parallel-lint

LandingCheck

 * - Add phpcs and make pass
 * - Add php-parallel-lint

Linter

 * - build: Replace jshint/jscs with eslint
 * - Handle multi-part-template-block output from Parsoid's linter

LiquidThreads

 * - Remove hacks for unsupported IE versions
 * - Re-initialize WikiEditor when not present
 * - Remove unused jQuery.autogrow
 * - build: Replace jscs/jshint with eslint and make a pass
 * - Remove code that initialises WikiEditor

Listings

 * - Add phpcs and make pass
 * - Add php-parallel-lint

LoginNotify

 * Newly deployed extension

MapSources

 * - Add php-parallel-lint

MassMessage

 * - Allow to filter by log_action in massmessage log
 * - build: Replace jshint/jscs with eslint

Math

 * - Use TabPanelLayout instead of the deprecated CardLayout
 * - Remove MathJax messages from en.json
 * - Better error handling for math render errors

MobileApp

 * - Add phpcs and make pass
 * - Consolidate collapse table CSS
 * - Add php-parallel-lint

MobileFrontend

 * - Hygiene: Improve MenuBuilder code quality
 * - Display newly added talk topic
 * - rl: Break out mobile.mainMenu style module
 * - rl: Break out mobile.messageBox styles module
 * - Vertical-align heading indicator with page content
 * - Not-existent references should fall back to hash change
 * - Drop legacy code comment
 * - Execute SVG check in CI
 * - Introduce IContentProvider
 * - Only wrap top level headings
 * - Revert "Use csrf token for watching"
 * - Updates to print styles
 * - Check data type before calling member function
 * - Fix broken tests
 * - Fix scrolling calls to VE core
 * - Sign up edit tutorial fixes
 * - Refactor functions for Notification filter - Mobile version
 * - Please don't abuse global events on M object when you dont need to
 * - Correctly handle the mw-parser-output wrapper

MultimediaViewer

 * - Add php-parallel-lint
 * - build: Update eslint to 0.4.0 and make a pass
 * - Code lint: Throw errors, no strings
 * - Fix mmv.model.TaskQueue qunit tests
 * - Fix mmv.lightboxInterface qunit tests
 * - Fix mmv.logging.DurationLogger qunit tests
 * - Fix mmv.logging.PerformanceLogger qunit tests
 * - Fix mmv.logging.ActionLogger qunit tests
 * - Fix mmv.logging.ViewLogger qunit tests
 * - Fix mmv.model.TaskQueue qunit tests
 * - Fix mmw.ui.metadataPanel qunit tests
 * - Fix mmv qunit tests
 * - Fix mmv.bootstrap qunit tests

NavigationTiming

 * - Add phpcs and make pass
 * - Add php-parallel-lint

NewUserMessage

 * - Add phpcs and make pass
 * - Add php-parallel-lint

OATHAuth

 * - Remove unused private variable
 * - Prevent pagebreaking in the middle of the form
 * - Don't allow scratch tokens when enrolling for 2 auth.
 * - OathAuth: rename failedtovalidateoauth
 * - OathAuth: remove message Oathauth-displayoathinfo

ORES

 * - Do not error out when threshold can't be found

OpenStackManager

 * - Prevent a few errors noticed in production
 * - Fix undefined OpenStackNovaProject::$serviceUsers

PageAssessments

 * - build: Replace jshint and jscs with eslint; upgrade other devDeps

PageImages

 * - Make PageImages default API license parameter configurable
 * - Increase default API limit from 1 to 50
 * - Add php-parallel-lint

PageTriage

 * - Avoid PHP notices about unset indexes in ApiPageTriageList
 * - Bringing back the top reviewers stats
 * - Ensure the number of fitlered pages respects all filters
 * - Fix checkbox checkedness setting
 * - Avoid DB_MASTER queries on HTTP GET in ArticleMetadata->getMetadata

PageViewInfo

 * - build: Replace jshint and jscs with eslint; bump other devDeps
 * - Forward request details to upstream API

PagedTiffHandler

 * - Store original media dimensions as additional header
 * - Add php-parallel-lint

ParsoidBatchAPI

 * - Add phpcs and make pass
 * - Add a defensive is_callable check on setWrapOutputClass
 * - Add a pageprop action
 * - Disable parser output wrapper
 * - Add php-parallel-lint

PdfHandler

 * - Add phpcs and make pass
 * - Store original media dimensions as additional header

Petition

 * - Add php-parallel-lint

Poem

 * - Add phpcs and make pass

PoolCounter

 * - Add php-parallel-lint

Popups

 * - doc: Document counts module
 * - doc: Document schema module
 * - doc: Document wait module
 * - doc: Document preview/model module
 * - Add service container
 * - doc: Replace JSDuck v5.3.4 with JSDoc v3.4.3
 * - Introduce PHPCS check in CI
 * - Clear interaction after an event for it is logged in EL
 * - actions: Mix title and namespaceID into LINK_DWELL
 * - eventLogging: Add missing *Hover properties
 * - Docs: Add ADR about using webpack's production mode and UglifyJS
 * - Tools: Add pre-commit git hook to auto test and build
 * - Enable production settings for the production bundle
 * - Hygiene: Make webpack.config.js conform to eslint
 * - eventLogging: Discard events with duplicate tokens
 * - QA: Test renderer#show
 * - QA: Test renderer#layoutPreview

ProofreadPage

 * - Don't build our own SQL query strings...
 * - [i18n] Names of the new content models
 * - Avoids CSS flicker when loading Page: pages editing interface
 * - Adds used file to dependencies
 * - build: Replace jshint/jscs with eslint
 * - Use ContentHandler for index pages

QuickSurveys

 * - Do not run internal or external survey browser tests on BC
 * - Explicitly add mediawiki.cookie dependency

Quiz

 * - Remove executable flags
 * - Use HTTPS instead of HTTP for www.mediawiki.org

RSS

 * - Add php-parallel-lint

RelatedSites

 * - Add phpcs and make pass
 * - Add php-parallel-lint

RevisionSlider

 * - Fix handling of escape key
 * - Split ext.RevisionSlider.lazy into Js and Css modules

Score

 * - Use TabPanelLayout instead of deprecated CardLayout
 * - Add php-parallel-lint

Scribunto

 * - build: Replace jscs/jshint with eslint

SearchExtraNS

 * - Add php-parallel-lint

ShortUrl

 * - Add php-parallel-lint

SubPageList3

 * - Add php-parallel-lint

SubpageSortkey

 * - Add phpcs and make pass
 * - Add php-parallel-lint

SyntaxHighlight_GeSHi

 * - Remove RejectParserCacheValue hook for old GeSHi parser cache
 * - Remove 'GeSHi' name from composer and npm manifests
 * - Remove GeSHi from class and filenames
 * - Pass dataElement type to parent's toDataElement
 * - VE: Support editing start line parameter
 * - GeSHi: Make sure the autoload of Compat doesn't load GeSHi
 * - Do not extend GeSHi class with private modifications

TemplateData

 * - Change "Template preferred format" to "Suggested wikitext formatting"
 * - Fix styles queue violation for "ext.templateData"

TextExtracts

 * - Increase default API limit from 1 to 20
 * - Add to list of tags to remove
 * - Suppress parser output wrapper div
 * - API: Change memcache key to clear cache
 * - Add php-parallel-lint

TimedMediaHandler

 * - Bring Video.JS beta feature integration up to standard
 * - Fix typo in README ("thoera" etc.)
 * - PHP7: Use intval to baseconvert instead of string casting
 * - Only add the resolution switcher to video files
 * - jQuery3: size -> length
 * - Ensure parsercache consistency
 * - VideoJS Beta Feature: Provide a better landing page and discussion page
 * - TMH: Add support for MP3 upload and playback
 * - Fix X-Content-Dimensions support
 * - Store original media dimensions as additional header

TocTree

 * - Add phpcs and make pass
 * - Add php-parallel-lint

TorBlock

 * - Add php-parallel-lint

Translate

 * - Fix cxserver service showing only empty suggestions
 * - Bring in spyc via composer
 * - QueryAggregator: Add userAgent to make it easy to identify Translate
 * - Remove duplicate "Message group" title
 * - Avoid exceptions in ApiTranslateSandbox signup
 * - Use TranslateUtils::getSafeReadDB in loadAggregateGroups
 * - Use DB_REPLICA in isSourcePage
 * - Avoid DB master use on GET in SpecialExportTranslations
 * - lint: Inline alert exceptions, and remove window. prefix consistently
 * - Streamline dec to hex color calculation
 * - Use better colors for ranking
 * - Add CaighdeanWebService
 * - Rewrite of translatable page moving code

TrustedXFF

 * - Add php-parallel-lint

TwoColConflict

 * - Fix Ruby Selenium tests
 * - Use tags in changes div
 * - Fix issues with column alignment
 * - Add "oojs-ui" dep to ext.TwoColConflict.filterOptionsJs

UnicodeConverter

 * - Add phpcs and make pass
 * - Add php-parallel-lint

UniversalLanguageSelector

 * - Fix callout positioning logic
 * - Determine callout directionality based on position as opposed to language
 * - Update jquery.uls from upstream
 * - extension.json: Remove no-op dependency on deprecated es5-shim module
 * - build: Update eslint to 0.4.0

UploadWizard

 * - Don't use property before it's defined
 * - build: Update eslint to 0.4.0

UrlShortener

 * - Add php-parallel-lint

VipsScaler

 * - Add phpcs and make pass
 * - Add php-parallel-lint

VisualEditor

 * - Remove mobile browsers from the blacklist
 * - Update VE core submodule to master (0c243838f)
 * - Follow-up 7e72163ea: Fix CBN alien unit test I missed and force-merged
 * - Update VE core submodule to master (c00d2fa38)
 * - rebaser: Initialize toolbar
 * - Update VE core submodule to master (69d8607cf)
 * - CollabPad: Move synchronizer/authorList to Target from Target.init
 * - Move getWikitextFragment up to Target from ArticleTarget
 * - CollabPad: Add popstate/teardown handling
 * - Provide VE-rebaser in MediaWiki as Special:CollabPad
 * - Update VE core submodule to master (2a8f71d02)
 * - Update VE core submodule to master (ee59e9d33)
 * - dm.MWTransclusionNode: remove TableCellableNode mixin
 * - Allow extension nodes to convert to a specified type of dataElement
 * - MWCategoryInputWidget: missing 'new' for cached redirected optionwidgets
 * - Update VE core submodule to master (de3447ce5)
 * - Do not check for visual editor availability when loading source editor
 * - MWTransclusionNode: Implement MWTransclusionTableCell
 * - Update VE core submodule to master (45aa796b3)
 * - Always prefer wikitext for action=edit on non-SET wikis
 * - Fix action=edit links for NWE
 * - Enable edit tab setup on appropriate Special pages
 * - Update VE core submodule to master (8e29310db)
 * - build: Enable MediaWiki.Commenting.FunctionComment.MissingParamComment
 * - Update VE core submodule to master (347765f82)
 * - build: Enable MediaWiki.Commenting.FunctionComment.MissingParamTag
 * - build: Enable MediaWiki.Commenting.FunctionComment.MissingParamName
 * - build: Enable MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment
 * - build: Enable MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName
 * - build: Enable MediaWiki.Commenting.FunctionComment.MissingReturn
 * - build: Enable MediaWiki.Commenting.FunctionComment.ParamNameNoMatch
 * - build: Bump mediawiki-codesniffer to 0.8.0 and make pass
 * - Rename deprecated Card to current TabPanel
 * - MWWikitextDataTransferHandlerFactory: Don't reimplement getText
 * - Update VE core submodule to master (fbeb0db2c)
 * - Add php-console-highlighter
 * - MWWikitextDataTransferHandlerFactory: skip getWikitextFragment if possible

WikiEditor

 * - Follow-up d400102: Drop irrelevant comment, merge var declaration
 * - Remove IE8 hacks
 * - Add parameter useskin to action=parse for live preview
 * - Make toolbar and dialog part of the core module

WikiLove

 * - git.wikimedia.org -> phab
 * - Add php-parallel-lint

WikimediaEvents

 * - RecentChangesClicks: Address minor performance concerns
 * - Track RC clicks for all users, not just logged-in users

WikimediaIncubator

 * - Add php-parallel-lint

WikimediaMaintenance

 * - Add license, description message and create and load i18n messages
 * - Skip connecting to wiki if connection error
 * - table_type -> default_storage_engine
 * - Follow-up ba3cae5d887: deal with unserialize returning false
 * - Add populateCognateSites.php to addwiki.php

WikimediaMessages

 * - Rename "codeofcontact" to "codeofconduct"
 * - Add messages for Code of Conduct footer links
 * - Add phpcs and make pass
 * - Fix accidental capitalisation in Polish grammar rules
 * - Serve meta. Russian translation for the privacy policy

XAnalytics

 * - Add phpcs and make pass

ZeroBanner

 * - Update attributes for new extension.json format

ZeroPortal

 * - Update attributes for new extension.json format

cldr

 * - build: Replace jshint with eslint

intersection

 * - Add php-parallel-lint

wikihiero

 * - Add php-parallel-lint

CologneBlue

 * - Add phpcs and make pass

Modern

 * - Add phpcs

MonoBook

 * - Add phpcs and make pass

Nostalgia

 * - Add phpcs and make pass