print "CodeVersion\t".get_code_version()."\n";
print "CompatibleHiveDatabaseSchemaVersion\t".Bio::EnsEMBL::Hive::DBSQL::SqlSchemaAdaptor->get_code_sql_schema_version()."\n";
print "MeadowInterfaceVersion\t".Bio::EnsEMBL::Hive::Meadow->get_meadow_major_version()."\n";
$meadow_class=~/^${meadow_class_path}::(.+)$/;
my $meadow_driver = $1;
my $meadow_version = $meadow_class->get_meadow_version;
my $compatible = $meadow_class->check_version_compatibility;
my $status = $compatible
? ( $meadow_class->name
? 'available'
: 'unavailable'
)
: 'incompatible';
print '',join("\t", 'Meadow::'.$meadow_driver, $meadow_version, $status)."\n";
}
print "GuestLanguageInterfaceVersion\t".Bio::EnsEMBL::Hive::GuestProcess->get_protocol_version()."\n";
foreach my $language (sort keys %$registered_wrappers) {
my $wrapper_path = $registered_wrappers->{$language};
my $status = 'unavailable';
my $language_version;
if (-s $wrapper_path and -x $wrapper_path) {
$language_version = `$wrapper_path version 2> /dev/null`;
chomp $language_version;
}
print join("\t", "GuestLanguage[$language]", $language_version || 'N/A', $status)."\n";
}
}