MediaWiki 1.36/wmf.3/Changelog

Core changes

 * - Branch commit for wmf/1.36.0-wmf.3 by trainbranchbot
 * - Add Edge to MediaWiki:Clearyourcache by Jon Harald Søby
 * - reassignEdits: Update script to use User::newFromName for anon users by daniel
 * - tables.json: lowercase notNull by Reedy
 * - Remove Skin::getDynamicStylesheetQuery by Ammar Abdulhamid
 * - maintenance: Remove executable bit from scripts without shebang by Kunal Mehta
 * - Translate expiry period in pop-up message for watchlist expiry by hmonroy
 * - resources: Add license information for promise-polyfill by Kunal Mehta
 * - includes: Use expression assignment operator += or |= where possible by Umherirrender
 * - Use multi-catch block in fetchText.php by Umherirrender
 * - Use IResultWrapper as doc type instead of FakeResultWrapper by Umherirrender
 * - Remove duplicate call to setMockTime in MultiWriteBagOStuff by Umherirrender
 * - Do not use @var on const by Umherirrender
 * - Use strict (in)equality with namespaces constants when LHS is definitely an integer by Ed Sanders
 * - Migrate user_properties to abstract schema   by Amir Sarabadani
 * - Permit temporary table writes on replica DB connections by Máté Szabó
 * - Account for non-existence namespaces in makeTitle by jdlrobson
 * - Edit page expiry dropdown should keep state after disabling/enabling by Dayllan Maza
 * - Prep 1.35.0-rc.0 by Reedy
 * - Write category parent hierarchy when handling categorization by David Causse
 * - categoryChangesAsRdf: Add test for categorization by David Causse
 * - Add UI support in Special:EditWatchlist for watchlist expiry by hmonroy
 * - Migrate site_stats table to abstract schema  by Amir Sarabadani
 * - Fix bold of watched items on Special:RecentChangesLinked by Sam Wilson
 * - Combine input type directionality selectors by Volker E
 * - Add disclaimer about experimental watchlist expiry in MW 1.35 by MusikAnimal
 * - Update time period for watchlist expiry pop-up by hmonroy
 * - Ensure cursor is pointer for watch-star notification by Sam Wilson
 * - Drop Sanitizer::escapeId, deprecated in MediaWiki 1.30 by James D. Forrester
 * - Mark OutputPageBodyAttributes as non-abortable. by Ammar Abdulhamid
 * - Fix parserTests.php by ensuring change_tag tables are cloned by C. Scott Ananian
 * - Disable wgLegacyJavaScriptGlobals by default by James D. Forrester
 * - Add a DatabaseBlockStore service by DannyS712
 * - Hard deprecate ExternalStoreDB::getSlave by Reedy
 * - Don't output HTMLDebugLog div element when not needed by Ammar Abdulhamid
 * - Drop the LinkBegin and LinkEnd hooks, deprecated since 1.28 by James D. Forrester
 * - Fix RequestFromGlobalsTest failing in Travis CI by Ammar Abdulhamid
 * - Set $wgShellRestrictionMethod to 'autodetect' by default by Kunal Mehta
 * - shell: Make ->restrict( RESTRICT_NONE ) actually work by Kunal Mehta
 * - Remove CategoryFinder class by Reedy
 * - Fix RecentChanges watchlist filters when WatchlistExpiry is off by Sam Wilson
 * - installer: Write to wgLogos, not wgLogo   by James D. Forrester
 * - Fix pop-up height for watchlist expiry by hmonroy
 * - Storage: Disable NameTableStoreTest case that fails on sqlite  by Timo Tijhof
 * - installer: Remove deprecated getWarningBox and getErrorBox by Timo Tijhof
 * - Hard deprecate CategoryFinder by Kunal Mehta
 * - tests: Disable the broken ignore and cases of DatabasePostgresTest  by Timo Tijhof
 * - mediawiki.page.ready: Allow skins to disable search lazy load by jdlrobson
 * - Allow skins to override mediawiki.page.ready initialisation by Peter Ovchyn
 * - Sync up with Parsoid parserTests.txt by C. Scott Ananian
 * - Fix expiry dropdown not getting disabled on edit page. by Dayllan Maza
 * - /contributions/user/{user}/count by Nikki Nikkhoui
 * - mw.widgets.UsersMultiSelectWidget: Don't assume `suggestions` array element exists by Sam Smith
 * - MessagesTyv.php: set $namespaceGenderAliases to an empty array by MarcoAurelio
 * - Simplify safe-guard code in MWExceptionHandler::handleFatalError by Umherirrender
 * - Fix runBatchedQuery.php for no result from select by Umherirrender
 * - Fix Database::getTempTableWrites for multi table DDLs by Umherirrender
 * - Fix unit test in SpecialRecentchangesTest for postgres by Umherirrender
 * - filebackend: Fix index error in SwiftFileBackend by Thiemo Kreuz
 * - RCFilters: Remove feedback link by Roan Kattouw
 * - Add watchlist clock icon to RecentChanges by Sam Wilson
 * - Update wikimedia/html-formatter to 2.0.0 by Timo Tijhof
 * - Watchlist: Fix action=watch caching the wrong expiry by Dayllan Maza
 * - Watchlist: Return null instead of 0 days remaining by Dayllan Maza
 * - Fix watchlist query and filters for RecentChanges by Sam Wilson
 * - Remove $wgMemc by Timo Tijhof
 * - WikiPageFactory: use runtime exceptions for logic errors by Gergő Tisza
 * - Add WikiPageFactory by Gergő Tisza
 * - REST /page/{title}: Fix title encoding. by daniel
 * - rdbms: Strongly discourage simple joins in $conds by Lucas Werkmeister
 * - objectcache: cleanup bogus config field from MemcachedBagOStuff by Aaron Schulz
 * - Flip Yoda conditionals by Ed Sanders
 * - rdbms: improve DBConnRef domain selection exception message by Aaron Schulz

Vendor

 * - Bump wikimedia/parsoid to v0.13.0-a4    by C. Scott Ananian
 * - Bump wikimedia/parsoid to v0.13.0-a3 by C. Scott Ananian
 * - Update wikimedia/html-formatter to 2.0.0 by Timo Tijhof

3D
No changes for 3D

AbuseFilter
No changes for AbuseFilter

ActiveAbstract
No changes for ActiveAbstract

AdvancedSearch

 * - Selenium: Update to WebdriverIO v5 by vidhi-mody

AntiSpoof
No changes for AntiSpoof

ApiFeatureUsage
No changes for ApiFeatureUsage

ArticleCreationWorkflow
No changes for ArticleCreationWorkflow

ArticlePlaceholder
No changes for ArticlePlaceholder

Babel
No changes for Babel

BetaFeatures
No changes for BetaFeatures

BounceHandler
No changes for BounceHandler

Calendar
No changes for Calendar

Campaigns
No changes for Campaigns

Capiunto
No changes for Capiunto

CategoryTree
No changes for CategoryTree

CentralAuth
No changes for CentralAuth

CentralNotice
No changes for CentralNotice

CharInsert
No changes for CharInsert

CheckUser

 * - Add help links and link to restart tour on SpecialInvestigate by David Barratt
 * - Add CheckUserHookRunner to the service container by David Barratt
 * - Use the content language for the Special:Investigate tab urls. by David Barratt
 * - Use getPageTitle instead of getTitleFor by David Barratt
 * - Add a link on Special:CheckUser to Special:Investigate by Thalia
 * - Skip page content if the result of the form submission is a redirect by David Barratt

CirrusSearch

 * - Remove deprecated settings by David Causse
 * - Selenium: Update README file by vidhi-mody

Cite

 * - Sync up with Parsoid citeParserTests.txt by C. Scott Ananian
 * - Restore preview of a section alone by Thiemo Kreuz

CiteThisPage
No changes for CiteThisPage

Citoid
No changes for Citoid

cldr

 * - Add phn-latn and phn-phnx by Raymond

CodeEditor
No changes for CodeEditor

CodeMirror
No changes for CodeMirror

CodeReview
No changes for CodeReview

Cognate
No changes for Cognate

Collection
No changes for Collection

CommonsMetadata
No changes for CommonsMetadata

ConfirmEdit
No changes for ConfirmEdit

CongressLookup
No changes for CongressLookup

ContactPage
No changes for ContactPage

ContentTranslation

 * - SX Content Comparator: Fix showing of target section content by NikG
 * - CX3 UI library: Export components and plugins at lib entry and organize imports by Santhosh Thottingal
 * - Remove axios dependency, use sitemapper by Santhosh Thottingal
 * - SXContentComparator: Add section navigation by NikG
 * - SX: Move wikimedia-ui-base to devDependency from dependencies by Santhosh Thottingal
 * - Dashboard: Make suggestions the default view by Santhosh Thottingal
 * - Section translation: version 0.1.0+20200729 by Santhosh Thottingal
 * - CXDashboard: Fix infinite spinner for empty translation lists by NikG
 * - SX Quick Tutorial: Go to sentence selector upon completion by NikG
 * - SXArticleSelector: Fix non translated message by NikG
 * - UI Library: Set icon svg viewBox as 0 0 20 20 by Santhosh Thottingal
 * - UI Library: Add MWMessage for error, notices, warning & success messages by Santhosh Thottingal
 * - SXSectionSelector: Move sad robot svg to file by NikG

CreditsSource
No changes for CreditsSource

Dashiki
No changes for Dashiki

Disambiguator
No changes for Disambiguator

DiscussionTools

 * - Swap toolbar and mode switcher by Ed Sanders
 * - Fix links to mediawiki.org to include www. prefix by Ed Sanders
 * - Add a test case for replies to top-level comments with mixed indentation by Bartosz Dziewoński
 * - Restore error message for when comment is deleted while replying by Bartosz Dziewoński
 * - Do not auto-add "Mention a user" to "Insert" menu by Bartosz Dziewoński
 * - Log when editor switching is prevented by David Lynch

DismissableSiteNotice
No changes for DismissableSiteNotice

DonationInterface

 * - Nigh-imperceptible update to PayTM logo by Elliott Eggleston

DoubleWiki
No changes for DoubleWiki

DynamicSidebar
No changes for DynamicSidebar

Echo

 * - Stop using ResourceLoaderTestModules hook by Amir Sarabadani
 * - Mobile Special:Notifications: Properly close overlay on selection by Roan Kattouw
 * - Fix width of buttons-as-option-widgets by Ed Sanders
 * - Minerva popup: Fix scope of border-left/right rule by Ed Sanders
 * - Merge in styles from Minerva by Ed Sanders
 * - Use user IDs, not User objects, for reverted-user-id by Kosta Harlan

Elastica
No changes for Elastica

ElectronPdfService
No changes for ElectronPdfService

EntitySchema
No changes for EntitySchema

EventBus
No changes for EventBus

EventLogging

 * - Process sampling rules in stream config  by Mikhail Popov

EventStreamConfig
No changes for EventStreamConfig

ExtensionDistributor
No changes for ExtensionDistributor

ExternalGuidance
No changes for ExternalGuidance

FeaturedFeeds
No changes for FeaturedFeeds

FileExporter
No changes for FileExporter

FileImporter

 * - Use and absolute weblinks in all messages  by Thiemo Kreuz

FlaggedRevs

 * - Avoid inline variables in some absolutely trivial places by Thiemo Kreuz
 * - Use self and __CLASS__ to reference the own class name by Thiemo Kreuz
 * - Minor fixes for wrong and unspecific PHPDoc tags by Thiemo Kreuz
 * - Fix mismatching capitalization of many method calls by Thiemo Kreuz
 * - Remove empty setUp from FRInclusionManagerTest by Thiemo Kreuz
 * - Add PHPDoc documentation to all class properties by Thiemo Kreuz
 * - Remove unused properties from two classes by Thiemo Kreuz
 * - Declare missing $this->user property in tests by Thiemo Kreuz
 * - Use absolute class names in @covers tags by Thiemo Kreuz
 * - Fix formatting of per-class documentation by Thiemo Kreuz
 * - Add many more @inheritDoc where it makes sense by Thiemo Kreuz

Flow

 * - Fix Flow message dependencies by Ed Sanders
 * - Searcher: Fix repo with phan ignore for wfLogWarning double-escape issue by James D. Forrester
 * - Remove generatecss.php and Gemfile by Roan Kattouw
 * - build: Updating grunt to 1.2.1 by libraryupgrader

FundraiserLandingPage
No changes for FundraiserLandingPage

FundraisingTranslateWorkflow
No changes for FundraisingTranslateWorkflow

Gadgets
No changes for Gadgets

GeoCrumbs
No changes for GeoCrumbs

GeoData
No changes for GeoData

GettingStarted
No changes for GettingStarted

GlobalBlocking
No changes for GlobalBlocking

GlobalCssJs

 * - Enable on 'mobile' ResourceLoader target  by Kunal Mehta

GlobalPreferences
No changes for GlobalPreferences

GlobalUsage
No changes for GlobalUsage

GlobalUserPage
No changes for GlobalUserPage

GoogleNewsSitemap
No changes for GoogleNewsSitemap

Graph

 * - build: Updating elliptic to 6.5.3 by libraryupgrader

GrowthExperiments

 * - Fix "include page title" checkbox by Gergő Tisza
 * - Fix homepage mentorship module by Gergő Tisza
 * - WelcomeSurvey: Tweaks for language question by Roan Kattouw
 * - Fast and ugly fix for T258609 by Gergő Tisza
 * - Introduce MentorManager and virtually assign mentors to all users  by Gergő Tisza
 * - Fix help panel ask screen wording by Gergő Tisza
 * - Add QuestionPosterFactory by Gergő Tisza
 * - Alphabetize service definitions by Gergő Tisza
 * - Introduce GrowthExperimentsServices by Gergő Tisza
 * - Fix reference to MentorChangeLogFormatter in extension.json by Martin Urbanec
 * - WelcomeSurvey: Add languages question by Kosta Harlan

GuidedTour
No changes for GuidedTour

GWToolset

 * - Add Special:MyLanguage for better user experience by Yuki Shira

ImageMap
No changes for ImageMap

InputBox
No changes for InputBox

Insider
No changes for Insider

intersection
No changes for intersection

Interwiki
No changes for Interwiki

InterwikiSorting
No changes for InterwikiSorting

Jade
No changes for Jade

Josa
No changes for Josa

JsonConfig

 * - gracefully handle error for malformed data object by Mateus Santos
 * - Implement GetContentModels hook by Kunal Mehta

Kartographer

 * - Add missing pieces of documentation across the codebase by Thiemo Kreuz
 * - Remove a few minor pieces of dead, unused code by Thiemo Kreuz
 * - Add @inheritDoc to mark code in subclasses as documented by Thiemo Kreuz
 * - Fix a few minor type issues in PHPDoc tags by Thiemo Kreuz
 * - Fix visibility of setUp methods by Thiemo Kreuz
 * - build: Updating elliptic to 6.5.3 by libraryupgrader
 * - Disable panning and zooming until ready by jdlrobson

LabeledSectionTransclusion
No changes for LabeledSectionTransclusion

LandingCheck
No changes for LandingCheck

LdapAuthentication
No changes for LdapAuthentication

Linter
No changes for Linter

LiquidThreads
No changes for LiquidThreads

Listings
No changes for Listings

LocalisationUpdate
No changes for LocalisationUpdate

LoginNotify
No changes for LoginNotify

MachineVision

 * - Remove superfluous ext.MachineVision.polyfill and ext.MachineVision.config by Timo Tijhof

MapSources
No changes for MapSources

MassMessage
No changes for MassMessage

Math
No changes for Math

MediaModeration
No changes for MediaModeration

MobileApp

 * - Update AbuseFilter hook for user_app variable by Daimona Eaytoy

MobileFrontend

 * - Copy 'thumbborder' class from image to image placeholder by Peter Ovchyn
 * - Fix wrong section name in edit summary when editing whole page in source mode by Bartosz Dziewoński
 * - Factor Style-related functions out of LazyImageTransform by Peter Ovchyn
 * - mf_useformat cookie should be HttpOnly by sbassett
 * - Copy `usemap` attribute from original image to lazy loaded by Peter Ovchyn
 * - LanguageInfo Overlay: Preprocess data for better UX by Kosta Harlan

MultimediaViewer
No changes for MultimediaViewer

NavigationTiming
No changes for NavigationTiming

Newsletter
No changes for Newsletter

NewUserMessage
No changes for NewUserMessage

Nuke

 * - Replace call to deprecated User::isBlocked with User::getBlock by DannyS712

OATHAuth
No changes for OATHAuth

OAuth

 * - Updating league/oauth2-server (8.1.0 => 8.1.1) by Reedy

OAuthRateLimiter
No changes for OAuthRateLimiter

OpenStackManager
No changes for OpenStackManager

ORES
No changes for ORES

PageAssessments
No changes for PageAssessments

PagedTiffHandler

 * - Make img_lossy case-sensitive by C. Scott Ananian

PageImages
No changes for PageImages

PageTriage
No changes for PageTriage

PageViewInfo
No changes for PageViewInfo

ParserFunctions
No changes for ParserFunctions

PdfHandler
No changes for PdfHandler

Petition
No changes for Petition

Poem
No changes for Poem

PoolCounter
No changes for PoolCounter

Popups
No changes for Popups

ProofreadPage

 * - Fixed alignment of buttons in pagelist preview by Sohom

PropertySuggester
No changes for PropertySuggester

QuickSurveys
No changes for QuickSurveys

Quiz
No changes for Quiz

ReadingLists
No changes for ReadingLists

RelatedArticles
No changes for RelatedArticles

Renameuser
No changes for Renameuser

RevisionSlider
No changes for RevisionSlider

RSS
No changes for RSS

SandboxLink
No changes for SandboxLink

Score

 * - Remove NO_EXECVE when executing gs for now by Tim Starling
 * - Update README for recent changes by Tim Starling

Scribunto
No changes for Scribunto

SearchExtraNS
No changes for SearchExtraNS

SecureLinkFixer

 * - Updating domains.php from Mozilla by SecureLinkFixer updater bot

SecurePoll
No changes for SecurePoll

ShortUrl
No changes for ShortUrl

SiteMatrix
No changes for SiteMatrix

SpamBlacklist
No changes for SpamBlacklist

SubPageList3
No changes for SubPageList3

SubpageSortkey
No changes for SubpageSortkey

SyntaxHighlight_GeSHi
No changes for SyntaxHighlight_GeSHi

TemplateData

 * - Set import button to display:block, fixing text overflow by Ed Sanders

TemplateSandbox
No changes for TemplateSandbox

TemplateStyles
No changes for TemplateStyles

TemplateWizard
No changes for TemplateWizard

TextExtracts
No changes for TextExtracts

Thanks
No changes for Thanks

TheWikipediaLibrary
No changes for TheWikipediaLibrary

TimedMediaHandler

 * - Sync up with Parsoid timedMediaHandlerParserTests.txt by C. Scott Ananian

timeline
No changes for timeline

TitleBlacklist
No changes for TitleBlacklist

TocTree
No changes for TocTree

TorBlock
No changes for TorBlock

Translate

 * - Remove unused stuff from ext.translate.quickedit.css by Niklas Laxström
 * - Remove custom edit buttons from legacy fallback editor by Niklas Laxström
 * - TranslationHelpers: small code cleanup by Niklas Laxström
 * - Remove TranslationHelpers::setTextareaId by Niklas Laxström
 * - Update multiple language selector to OOUI by Niklas Laxström
 * - Remove TranslationHelpers::getOtherLanguagesBox by Niklas Laxström
 * - Fix smell: overwritten visibility by Niklas Laxström
 * - Sort items in ext.translate.specialpages.styles by Niklas Laxström
 * - Merge ext.translate.special.supportedlanguages by Niklas Laxström
 * - Update README to include link to Developer guide by Niklas Laxström
 * - Remove unused StatsTable::formatTooltip by Niklas Laxström
 * - Merge ext.translate.special.searchtranslations.styles by Niklas Laxström
 * - Merge ext.translate.special.pagetranslation.styles by Niklas Laxström

TranslationNotifications
No changes for TranslationNotifications

TrustedXFF
No changes for TrustedXFF

TwoColConflict
No changes for TwoColConflict

UniversalLanguageSelector

 * - Replace deprecated `background-image-svg` mixin calls by Volker E
 * - Define unsupported skins  by jdlrobson
 * - update Bali fonts to fix spacing issue by David Kamholz

UploadsLink
No changes for UploadsLink

UploadWizard

 * - Moving stray license definition from CommonSettings.php by Kaldari

UrlShortener
No changes for UrlShortener

UserMerge
No changes for UserMerge

VipsScaler
No changes for VipsScaler

VisualEditor

 * - CollabTarget: Add close button on mobile by Ed Sanders
 * - MobileArticleTarget: Move MWBackTool to a separate file by Ed Sanders
 * - ExportWikitextDialog: Make height of wikitext input fit dialog by Ed Sanders
 * - ExportWikitextDialog: Add explicit editfont dependency by Ed Sanders
 * - Make import button progressive (but not primary) by Ed Sanders
 * - Update VE core submodule to master (0866080cf) by Ed Sanders
 * - Special:CollabPad: Replace getPageClasses as if the page were an article by Ed Sanders
 * - Use mw.cookie instead of jquery.cookie by David Lynch
 * - Follow-up I0a1a889: Show user uploads in gallery dialog by Ed Sanders
 * - ExportWikitextDialog: Add help text by Ed Sanders
 * - ExportWikitextDialog: Add ellipses to "Export" buttons by Ed Sanders
 * - ExportWikitextDialog: Add copy button to wikitext by Ed Sanders
 * - ExportWikitextDialog: Fix title comparison by Ed Sanders

WebAuthn
No changes for WebAuthn

Wikibase

 * - Remove repo hack from pageterms API by Lucas Werkmeister
 * - Separate language fallback indicator from title by gtzatchkova
 * - Remove usage of deprecated Skin methods by Ammar Abdulhamid
 * - Deprecate using ResourceLoaderTestModules, Part I by Amir Sarabadani
 * - Undo constructor parameter being transitionally optional by Michael Große
 * - Add validation to LanguageFallbackChain by Michael Große
 * - Remove the ASCII art comment by Amir Sarabadani

WikibaseCirrusSearch

 * - Disable checking for spaces temporarily by gtzatchkova
 * - TermLanguageFallbackChain constructor changed. by Tobias Andersson

WikibaseLexeme

 * - Adjust for signature change in TermFallbackLanguageChain constructor by Michael Große

WikibaseLexemeCirrusSearch
No changes for WikibaseLexemeCirrusSearch

WikibaseMediaInfo

 * - Initialize UI with default "bitmap" tab if none specified by Eric Gardner
 * - Add components for empty state and no results by Eric Gardner
 * - Fix Typo by saloniig
 * - Add QuickView to search results by Eric Gardner
 * - Adjust for signature change in TermFallbackLanguageChain constructor by Michael Große

WikibaseQualityConstraints
No changes for WikibaseQualityConstraints

Wikidata.org
No changes for Wikidata.org

WikidataPageBanner

 * - Add Korean translations by lens0021

WikiEditor
No changes for WikiEditor

wikihiero
No changes for wikihiero

WikiLove
No changes for WikiLove

WikimediaApiPortalOAuth
No changes for WikimediaApiPortalOAuth

WikimediaBadges
No changes for WikimediaBadges

WikimediaEditorTasks
No changes for WikimediaEditorTasks

WikimediaEvents

 * - PrefUpdate: Add property tracking filter by Timo Tijhof

WikimediaIncubator
No changes for WikimediaIncubator

WikimediaMaintenance
No changes for WikimediaMaintenance

WikimediaMessages

 * - Add messages for lldwiki by Martin Urbanec

Wikisource
No changes for Wikisource

XAnalytics
No changes for XAnalytics

CologneBlue
No changes for CologneBlue

MinervaNeue

 * - Don't add the "minerva--history-page-action-enabled" class to for non-Minerva skins like MonoBook etc. by Jack Phoenix
 * - build: Updating elliptic to 6.5.3 by libraryupgrader
 * - Load mediawiki.page.ready on Minerva  by Peter Ovchyn
 * - Remove usage of deprecated Skin::getRevisionId by Ammar Abdulhamid
 * - Run bundlesize tests on every commit by jdlrobson
 * - Selenium: Skip nested reference test. by Edward Tadros
 * - Remove styles moved over to Echo by Ed Sanders
 * - Remove -affixed selector by Ed Sanders
 * - Fix layout of NotificationsInboxWidget on narrow screen by Ed Sanders

Modern
No changes for Modern

MonoBook

 * - Rename #searchGoButton -> #searchButton (2) by Ammar Abdulhamid

Nostalgia
No changes for Nostalgia

Timeless
No changes for Timeless

Vector

 * - Print: Add layout print styles on Ctrl+p and ElectronPdf by jdlrobson
 * - Drop support for building sidebar portal with non-standard format by Ammar Abdulhamid
 * - [build] Make the pre-commit hook optional by Stephen Niedzielski
 * - Don't add Vector-specific classes when not using Vector by Jack Phoenix
 * - [less] Remove normalize rules covered by mediawiki.skinning/normalize module by Volker E
 * - Refactor: Replace PHP complexity with JS simplicity by jdlrobson
 * - [build] Add NVM configuration by Stephen Niedzielski
 * - [build] Fold NPM build script into test by Stephen Niedzielski
 * - Cleanup: Drop unnecessary isLegacy checks by jdlrobson
 * - Cleanup: Drop unused template variable by jdlrobson
 * - Merge SkinVector and VectorTemplate (step 2/2) by jdlrobson
 * - Merge SkinVector and VectorTemplate (step 1/2) by jdlrobson
 * - Fix Yoda conditionals by Ed Sanders
 * - build: Updating elliptic to 6.5.3 by libraryupgrader
 * - Collapse media print query by jdlrobson
 * - Print: Logo styles should apply in printed media by jdlrobson
 * - Restrict image border to images in border by jdlrobson

WikimediaApiPortal

 * - Misc docs and code quality clean ups by Timo Tijhof

VisualEditor

 * - GCN: Don't try to resolveAttributes when rendering.length=0 by Ed Sanders

Total Changes
248 Changes in 48 repos by 62 authors