As part of the desktop refresh project, Vector will soon no longer run the SkinTemplateOutputPageBeforeExec hook as part of its move away from BaseTemplate in T251212. This will require updates in various extensions. I will open specific bugs in specific projects as I get to them and will likely post the required Gerrit patches so help with code review would be appreciated.
The migration will be done slowly to allow impacted projects to update to preferred hooks and add any ones that are missing.
## Impacted projects:
### WikimediaMessages
Please use https://www.mediawiki.org/wiki/Manual:Hooks/SkinAddFooterLinks to add footer items to skins.
[[ https://gerrit.wikimedia.org/g/mediawiki/extensions/WikimediaMessages/+/33217b8036059ee817b169f59f8d78726a4ed852/includes/WikimediaMessagesHooks.php#229 | code ]]
[[ https://gerrit.wikimedia.org/r/596247 | Fix ]]
### Wikibase
Permitted hooks: SkinTemplateGetLanguageLink (Modify language items) BaseTemplateAfterPortlet for adding link after languages. To omit languages altogether from a page, use SidebarBeforeOutput and set languages to false.
* Wikibase [[ https://github.com/wikimedia/mediawiki-extensions-Wikibase/blob/fafca1f24bfab9e7e0419f1d9a43503a66b5adb0/client/includes/Hooks/SkinTemplateOutputPageBeforeExecHandler.php#L52 | link]] (modifies language_urls - emptying it and adding a link).
### UniversalLanguageSelector
Permitted hooks: SkinTemplateGetLanguageLink (Modify language items) BaseTemplateAfterPortlet for adding link after languages. To omit languages altogether from a page, use SidebarBeforeOutput and set languages to false.
* https://gerrit.wikimedia.org/g/mediawiki/extensions/UniversalLanguageSelector/+/18552a71428f46d0ba6a955c6679b2f0965c0ca0/includes/UniversalLanguageSelectorHooks.php#426 (also modifies language_urls)
### BlogPage
(using the hook to modifying categories)
NOTE: The inline comment from ashley on 23 January 2017 suggests we don't understand why this is happening
* BlogPage https://gerrit.wikimedia.org/g/mediawiki/extensions/BlogPage/+/ea18eb7cf03321e912c89e975fef766417bcb851/includes/BlogPage.hooks.php#29
### Wikidata.org
Please use https://www.mediawiki.org/wiki/Manual:Hooks/SkinAddFooterLinks to add footer items to skins.
* https://gerrit.wikimedia.org/g/mediawiki/extensions/Wikidata.org/+/32193c6100734e27a4b525d795ae85da2af4c954/src/Hooks.php#53 (adds footer link)
### WhoIsWatching
Please use https://www.mediawiki.org/wiki/Manual:Hooks/SkinAddFooterLinks to add footer items to skins.
https://gerrit.wikimedia.org/g/mediawiki/extensions/WhoIsWatching/+/7e4ac0dee460de88aaeebd0da078820ee7929d44/src/Hook.php#42
### SharedHelpPages
Use OutputPage::setCopyright inside an OutputPage hook to modify copyright.
* SharedHelpPages (modifies copyright) https://gerrit.wikimedia.org/g/mediawiki/extensions/SharedHelpPages/+/cc4801a5fbc2a7f4476e108ba19a584bd0eabf83/SharedHelpPages.hooks.php#236 Recommendation: TBC
### SemanticMediaWiki
* https://github.com/SemanticMediaWiki/SemanticBreadcrumbLinks/blob/master/src/HookRegistry.php#L102 does SemanticMediaWiki use Vector?
## Impacted xtensions that are not compatible with latest MediaWiki
### News
To modify feeds it should use OutputPage::addFeedLink instead in any of the OutputPage hooks.
* News (modifies feeds https://gerrit.wikimedia.org/g/mediawiki/extensions/News/+/18480933ba03da21b4596fa006830b801a244a64/News.php#112)
### LanguageSelector
* LanguageSelector modifies side bar (https://gerrit.wikimedia.org/g/mediawiki/extensions/LanguageSelector/+/8e3c6d6c8a17170b103f7de2f1ee4b5f2b2be111/LanguageSelector.php#299) however the extension is not compatible with the latest mediawiki
Please use SidebarBeforeOutput to add items to the side bar.
### StickToThatLanguage
NOTE: THIS extension is not compatible with latest MediaWiki.
* https://gerrit.wikimedia.org/g/mediawiki/extensions/StickToThatLanguage/+/896663af81498ddb5e7f7d01c50edcc0c245ad9e/StickToThatLanguage.hooks.php#79
### PushToWatch
Updates footer
https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/extensions/PushToWatch/+/master/PushToWatch.class.php
Permitted hooks: SkinTemplateGetLanguageLink (Modify language items) BaseTemplateAfterPortlet for adding link after languages. To omit languages altogether from a page, use SidebarBeforeOutput and set languages to false.