[feedquote='Trac','http://trac.i-mscp.net/ticket/1008#comment:3']
The problem is that the error is related to librrds-perl, not mailgraph, mailgraph just pulls librrds-perl as a dependency.
I've tried to make the error more informative as with other plugins (such as for example RoundcubePlugins?), checking for the dependency prior doing the 'use RRDs;',but with the current structure this isn't possible.
So far there is this code at engine/PerlLib/Modules/Plugin.pm:
- # We trap any compile time error(s)
- eval { require $backendPluginFile; };
- if($@) { # We got an error due to a compile time error or missing file
- if(-f $backendPluginFile) {
- # Compile time error, we remove the file to force re-installation on next run
- iMSCP::File->new('filename' => $backendPluginFile)->delFile();
- } else {
- $forceBackendInstall = 1;
- goto INSTALL_PLUGIN_BACKEND; # File not found, we try to re-install it from the plugin package
- }
- error($@);
- return 1;
- }
It does an eval, and in case the component can't be compiled (such as this case because it's missing dependencies) just throws a generic output.
Having a web to specify system depends when installing a plugin would be neat, maybe the info.php information could be extended for this usage...
What do you think?
[/feedquote]