Enable use of a composer created autoloader in extensions. The result would need to be deployable to production. I'm not asking for composer being run during deployment or on production, but as now before in a build step. The resulting autoloader would then be commited to the vendor repository.
Status quo:
- Extensions deployed in production may declare composer dependencies which then get commited to mediawiki/vendor.git (the autoloader build by composer for those dependencies is included and works, but extensions may not have any autoloader prefixes and other composer autoloader settings that are added themselves).
- Wikibase and other Mediawiki extensions are build with composer to Wikidata.git (this includes the composer generated autoloader) which is then deployed like other extensions. (Which results in e.g. extensions/Wikidata/extensions/Wikibase/ on production.)
- https://github.com/wikimedia/composer-merge-plugin supports including requirements from other composer.json files, but not autoloader settings. See https://github.com/wikimedia/composer-merge-plugin/issues/18 for the feature request.
- Semantic Mediawiki also has a composer generated autoloader (I was told) and wikitech.w.o is stuck on an old pre-composer version until this is solved.
After this is solved all extensions may use those composer features and Wikibase would just be an extension that is like any other extension.