While testing out the recent Theme changes locally on my 1.35 box, I discovered an interesting thing: skins which have manifest_version set to 2 would not show up as having themes even if the skin.json file had a corresponding ThemeModules definition.
Theme uses ExtensionRegistry::getInstance()->getAttribute( 'ThemeModules' ); to get the list of skins which support themes. @Legoktm told me that between manifest_version 1 and 2 the format changed, so the impacted skins' skin.json files need to be updated before it's possible to switch them over to manifest_version 2 without breaking theme support.
Minimal test case:
- MW 1.35(+)
- Theme (master version)
- One or more of the listed impacted skins which currently support themes
Log in, go to Special:Preferences and check the checkbox next to e.g. Dusk. Currently, since it uses manifest_version 1, everything should work. If you change manifest_version to 2, you'd get the "The skin does not support themes" error-ish message.