Let plugins specifify dependencies and version requirements

Bug #1299908 reported by Aaron Wells
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mahara
Confirmed
Wishlist
Unassigned

Bug Description

See forum discussion: https://mahara.org/interaction/forum/topic.php?id=6191

Sometimes we have plugins that depend on the existence of other plugins, and they have to be installed after them. Or, we might have plugins that depend on other plugins (or the system itself) being at a certain version number.

We could make this happen by adding (optional) version requirements to the plugin's version.php file. It would look like this:

 $config = new stdClass();
 $config->version = 2014033100;
 $config->release = 1.0.0
 $config->coreversionrequired = 2014032700;
 $config->pluginsrequired = array(
     'artefact.blog' => 2011091400,
     'notification.email' => 2008040200,
 );

Part of the installation process would be to check all the plugins that are queued for installation and rearrange the installation sequence if some of them are dependencies of others.

This would complement the sanity check method also proposed in https://bugs.launchpad.net/mahara/+bug/1298855

Aaron Wells (u-aaronw)
tags: added: install upgrade
Revision history for this message
Aaron Wells (u-aaronw) wrote :

Currently the one bit of dependency management Mahara has, is the "live-in" blocktypes that live under artefacts. In Bug 1521418 I'm discussing getting rid of those. If we did that, then adding explicit plugin dependencies like this would become more important.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.