User:Jeroen De Dauw/GSoC2010/Status

Project status
Plans have changed considerably as I've checked out all relevant components. Still need to confirm some things with Brion, who dropped of the interwebs for a while, but will publish new plans in more detail soon.

Plans 3.0
The goal now is to take on deployment for MediaWiki and extensions as a whole, as it makes little sense to have 2 separate systems with duplicate functionality, and integration issues. A lot of the work needed to have functionality similar to WordPress is already there, and simply needs to be adapted slightly to work in a more general system.



Stuff we already have
Some of these things still require some work, but if they are here, it means the bulkload of effort is already done.


 * Web interface for the core installer (new installer chad has been working on).
 * CLI interface for the core installer? (not really checked this out yet, but appears to be there)
 * Core installer class with database install and upgrade capabilities.
 * Filesystem abstraction (I ported this from WP, mostly done, no testing done yet though).

Stuff that's still needed

 * Everything related to detecting updates, fetching packages and instructions, ect. The DF has some nice stuff that can be used here, so does WP. It's be nice to also have an abstraction layer here, so multiple mechanisms can be used here.
 * Filesystem support for the installer, so it can be used to upgrade MW by clicking a button and then just fetching the new release and doing all the work. This can be achieved by creating the generic installer class and making the core installer inherit from it.
 * Extension installer class and the special pages that provide an interface to it.
 * Extension support for the core installer: installation and upgrade. This can be done by re-using the code of the special pages.
 * CLI support for extension management

Roadmap
This is the very loose planning I have right now:


 * Finish porting SSH2 filesystem abstraction class.
 * Get confirmation of Brion to go ahead with Plans 3.0 and get core access. (required for following steps)
 * Create installer class, adapt to core installer to work with this, and also create the extension installer class.
 * Take care of the fetching stuff.
 * Create the interfaces.