On 09/26/2012 01:54 PM, Krinkle wrote:
We're going towards a flexible modular system, which means components have dependencies and build on each other - as opposed to just "being there".
This sounds great, but I do see an important missing piece of infrastructure.
First, I am absolutely in favor of a loosely-coupled, modular system instead of just building a larger and larger core.
The problem, though, is that there is no way to install, use, or update extensions apart from doing it by hand. Requiring the installation of multiple modules by hand isn't going to lead to a thriving, modular ecosystem. We need a dependency manager.
Thankfully, I think there is already a dependency manager that we can build on.
I'm talking about Composer (http://getcomposer.org/).
Of course, MediaWiki isn't aware of this dependency manager and so MediaWiki's extensions aren't either. I've only looked at it briefly, but it appears that adding support wouldn't be difficult at all -- it would just mean adding a file to the git repository.
What do you think?
Mark.