From: Mischa POSLAWSKY Date: Thu, 29 May 2008 20:13:29 +0000 (+0000) Subject: improve plpinfo page X-Git-Tag: 3.21~16 X-Git-Url: http://git.shiar.net/perl/plp/.git/commitdiff_plain/e994dec90ddc213dccf471686d8abf04c7f9ad40 improve plpinfo page Fix version display in Perl >= 5.10: $^V no longer consists out of single characters for each level. Use the recommended practise of formatting with sprintf (see perlvar) which seems to work in at least 5.6.1 (ie good enough). Add 'Perl API' version analogous to 'PHP API' in phpinfo(). Some fallbacks if variables are empty or undefined. --- diff --git a/eg/plpinfo.plp b/eg/plpinfo.plp index 748d40c..9b3b704 100644 --- a/eg/plpinfo.plp +++ b/eg/plpinfo.plp @@ -25,9 +25,10 @@ use Config; printf "%s%s\n", @$_ for ( ["System" => qx(uname -snrvm)], ["Server API" => $PLP::interface ? $PLP::interface : "?"], - ["Perl" => join ".", map ord, split //, $^V], - ["Build Date" => $Config{cf_time}], - ["Debug Build" => $^P ? "yes" : "no"], + ["Perl" => sprintf '%vd', $^V], + ["Perl API" => $Config{api_versionstring} || "?"], + ["Build Date" => $Config{cf_time} || "?"], + ["Debug Build" => $^P ? "yes ($^P)" : "no"], ["Thread Safety" => $Config{usethreads} ? "enabled" : "disabled"], ["Include Path" => join "; ", @INC], ); @@ -40,13 +41,13 @@ printf "%s%s\n", @$_ for ( my %modules; s!/!::!g, s/\.pm$// and $modules{$_} = $_->VERSION || "" for keys %INC; printf "%s%s\n", @$_ for ( - ["Modules" => join "
\n", + ["Loaded Modules" => join "
\n", map "$_ $modules{$_}", sort grep /^PLP/, keys %modules ], - ["Debug Output" => join "; ", + ["Debug Output" => join("; ", $PLP::DEBUG & 1 ? "run-time errors" : (), $PLP::DEBUG & 2 ? "headers" : (), - ], + ) || "disabled"], ["Caching" => $PLP::use_cache ? "on" : "off"], #TODO ); :>