r55353 - in /branches/upstream/libdevel-stacktrace-ashtml-perl/current: Changes MANIFEST META.yml lib/Devel/StackTrace/AsHTML.pm t/encoding.t

jawnsy-guest at users.alioth.debian.org jawnsy-guest at users.alioth.debian.org
Sat Apr 3 04:31:12 UTC 2010


Author: jawnsy-guest
Date: Sat Apr  3 04:31:02 2010
New Revision: 55353

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=55353
Log:
[svn-upgrade] Integrating new upstream version, libdevel-stacktrace-ashtml-perl (0.09)

Added:
    branches/upstream/libdevel-stacktrace-ashtml-perl/current/t/encoding.t
Modified:
    branches/upstream/libdevel-stacktrace-ashtml-perl/current/Changes
    branches/upstream/libdevel-stacktrace-ashtml-perl/current/MANIFEST
    branches/upstream/libdevel-stacktrace-ashtml-perl/current/META.yml
    branches/upstream/libdevel-stacktrace-ashtml-perl/current/lib/Devel/StackTrace/AsHTML.pm

Modified: branches/upstream/libdevel-stacktrace-ashtml-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libdevel-stacktrace-ashtml-perl/current/Changes?rev=55353&op=diff
==============================================================================
--- branches/upstream/libdevel-stacktrace-ashtml-perl/current/Changes (original)
+++ branches/upstream/libdevel-stacktrace-ashtml-perl/current/Changes Sat Apr  3 04:31:02 2010
@@ -1,4 +1,10 @@
 Revision history for Perl extension Devel::StackTrace::AsHTML
+
+0.09  Sun Mar 28 23:04:05 PDT 2010
+        - no warnings about # in qw()
+
+0.08  Sun Mar 28 20:35:26 PDT 2010
+        - Encode high bit characters as HTML entities.
 
 0.07  Sat Mar 27 06:31:23 PDT 2010
         - Hide the WithLexical recommendation from HTML

Modified: branches/upstream/libdevel-stacktrace-ashtml-perl/current/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libdevel-stacktrace-ashtml-perl/current/MANIFEST?rev=55353&op=diff
==============================================================================
--- branches/upstream/libdevel-stacktrace-ashtml-perl/current/MANIFEST (original)
+++ branches/upstream/libdevel-stacktrace-ashtml-perl/current/MANIFEST Sat Apr  3 04:31:02 2010
@@ -26,6 +26,7 @@
 META.yml
 README
 t/00_compile.t
+t/encoding.t
 t/output.t
 xt/perlcritic.t
 xt/pod.t

Modified: branches/upstream/libdevel-stacktrace-ashtml-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libdevel-stacktrace-ashtml-perl/current/META.yml?rev=55353&op=diff
==============================================================================
--- branches/upstream/libdevel-stacktrace-ashtml-perl/current/META.yml (original)
+++ branches/upstream/libdevel-stacktrace-ashtml-perl/current/META.yml Sat Apr  3 04:31:02 2010
@@ -26,4 +26,4 @@
 resources:
   license: http://dev.perl.org/licenses/
   repository: git://github.com/miyagawa/Devel-StackTrace-AsHTML.git
-version: 0.07
+version: 0.09

Modified: branches/upstream/libdevel-stacktrace-ashtml-perl/current/lib/Devel/StackTrace/AsHTML.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libdevel-stacktrace-ashtml-perl/current/lib/Devel/StackTrace/AsHTML.pm?rev=55353&op=diff
==============================================================================
--- branches/upstream/libdevel-stacktrace-ashtml-perl/current/lib/Devel/StackTrace/AsHTML.pm (original)
+++ branches/upstream/libdevel-stacktrace-ashtml-perl/current/lib/Devel/StackTrace/AsHTML.pm Sat Apr  3 04:31:02 2010
@@ -2,20 +2,28 @@
 
 use strict;
 use 5.008_001;
-our $VERSION = '0.07';
+our $VERSION = '0.09';
 
 use Data::Dumper;
 use Devel::StackTrace;
 use Scalar::Util;
 
+no warnings 'qw';
+my %enc = qw( & &amp; > &gt; < &lt; " &quot; ' &#39; );
+
+# NOTE: because we don't know which encoding $str is in, or even if
+# $str is a wide character (decoded strings), we just leave the low
+# bits, including latin-1 range and encode everything higher as HTML
+# entities. I know this is NOT always correct, but should mostly work
+# in case $str is encoded in utf-8 bytes or wide chars. This is a
+# necessary workaround since we're rendering someone else's code which
+# we can't enforce string encodings.
+
 sub encode_html {
     my $str = shift;
-    $str =~ s/&/&amp;/g;
-    $str =~ s/>/&gt;/g;
-    $str =~ s/</&lt;/g;
-    $str =~ s/"/&quot;/g;
-    $str =~ s/'/&#39;/g;
-    return $str;
+    $str =~ s/([^\x00-\x21\x23-\x25\x28-\x3b\x3d\x3f-\xff])/$enc{$1} || '&#' . ord($1) . ';' /ge;
+    utf8::downgrade($str);
+    $str;
 }
 
 sub Devel::StackTrace::as_html {

Added: branches/upstream/libdevel-stacktrace-ashtml-perl/current/t/encoding.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libdevel-stacktrace-ashtml-perl/current/t/encoding.t?rev=55353&op=file
==============================================================================
--- branches/upstream/libdevel-stacktrace-ashtml-perl/current/t/encoding.t (added)
+++ branches/upstream/libdevel-stacktrace-ashtml-perl/current/t/encoding.t Sat Apr  3 04:31:02 2010
@@ -1,0 +1,16 @@
+use strict;
+use Test::More;
+use Devel::StackTrace::AsHTML;
+
+my $html;
+
+sub foo {
+    my $t = Devel::StackTrace->new;
+    $html = $t->as_html;
+}
+
+foo("\x{30c6}");
+
+like $html, qr/Error: &#12486;/;
+
+done_testing;




More information about the Pkg-perl-cvs-commits mailing list