},
);
+our %loaded;
+
our @EXPORT_OK = map { keys %$_ } values %dependencies;
our %EXPORT_TAGS = (
all => \@EXPORT_OK,
eval "require $module_name; 1";
};
+ $loaded{$module_name} = $loaded;
+
for my $method_name (keys %{ $dependencies{ $module_name } }) {
my $producer = $dependencies{$module_name}{$method_name};
my $implementation;
use_ok 'Mouse';
+diag "Soft dependency versions:";
+for my $module_name (keys %Mouse::Util::loaded) {
+ my $version;
+ if ($Mouse::Util::loaded{$module_name}) {
+ no strict 'refs';
+ $version = ${$module_name . '::VERSION'};
+ }
+ else {
+ $version = "(provided by Mouse::Util)";
+ }
+
+ diag " $module_name: $version";
+}
+