One potentially useful feature for plugin dependencies would be to support conflicting plugins, e.g. plugin X can be enabled or plugin Y can be enabled, but not both. In the dependency sense, plugin X requires not plugin Y and vice versa.
A related concept could be applied to normal dependencies, where plugin X requires either plugin Y or plugin Z.
http://wordpress.org/extend/plugins/plugin-dependencies/
Yes, this is already possible with the development version, by using the "Provides:" header.
Sounds great, are there docs for the headers somewhere? I take it that Provides: would implement the second feature, is there anything that implements the conflicting feature?
No docs yet, since it's a development version. I should try to release it though, as it's basically done.
It will be great to be able to try it out
Only come across one issue so far, line 164 in plugin-dependencies.php doesn't check that the array index exists before using it, throwing out a pile of notices for those that aren't suppressing them. This then blocks the redirect header so we get a pile of notices on screen and nothing else.
Simple fix, either suppress errors or check first, e.g.
$deps = @self::$dependencies[ $dep ];
or
$deps = isset(self::$dependencies[ $dep ]) ? self::$dependencies[ $dep ] : array();
That shouldn't happen. Please paste the error messages and the header of the plugin(s) that are causing them.