diff options
author | Steve Hay <steve.m.hay@googlemail.com> | 2017-10-10 08:30:01 +0100 |
---|---|---|
committer | Steve Hay <steve.m.hay@googlemail.com> | 2017-10-10 08:30:01 +0100 |
commit | 0c541dc5633a341cf44b818014b58e7f8be532e9 (patch) | |
tree | 3449e40dd6af4faecccf0838c2d1a0261f87f8ea /cpan/Encode | |
parent | 1fd91301492e395c7dd0a0b9fb56395147df763b (diff) | |
download | perl-0c541dc5633a341cf44b818014b58e7f8be532e9.tar.gz |
Upgrade Encode from version 2.92 to 2.93
Diffstat (limited to 'cpan/Encode')
-rw-r--r-- | cpan/Encode/Encode.pm | 4 | ||||
-rw-r--r-- | cpan/Encode/Makefile.PL | 4 | ||||
-rw-r--r-- | cpan/Encode/encoding.pm | 16 | ||||
-rw-r--r-- | cpan/Encode/lib/Encode/CN/HZ.pm | 4 | ||||
-rw-r--r-- | cpan/Encode/lib/Encode/JP/JIS7.pm | 4 | ||||
-rw-r--r-- | cpan/Encode/lib/Encode/MIME/Header.pm | 23 | ||||
-rw-r--r-- | cpan/Encode/lib/Encode/MIME/Name.pm | 3 | ||||
-rw-r--r-- | cpan/Encode/t/decode.t | 4 | ||||
-rw-r--r-- | cpan/Encode/t/mime-header.t | 2 | ||||
-rw-r--r-- | cpan/Encode/t/mime-name.t | 4 |
10 files changed, 33 insertions, 35 deletions
diff --git a/cpan/Encode/Encode.pm b/cpan/Encode/Encode.pm index 5a27c5990c..035169c594 100644 --- a/cpan/Encode/Encode.pm +++ b/cpan/Encode/Encode.pm @@ -1,5 +1,5 @@ # -# $Id: Encode.pm,v 2.92 2017/07/18 07:15:29 dankogai Exp dankogai $ +# $Id: Encode.pm,v 2.93 2017/10/06 22:21:33 dankogai Exp $ # package Encode; use strict; @@ -7,7 +7,7 @@ use warnings; use constant DEBUG => !!$ENV{PERL_ENCODE_DEBUG}; our $VERSION; BEGIN { - $VERSION = sprintf "%d.%02d", q$Revision: 2.92 $ =~ /(\d+)/g; + $VERSION = sprintf "%d.%02d", q$Revision: 2.93 $ =~ /(\d+)/g; require XSLoader; XSLoader::load( __PACKAGE__, $VERSION ); } diff --git a/cpan/Encode/Makefile.PL b/cpan/Encode/Makefile.PL index 8b801443d8..b52ad6c102 100644 --- a/cpan/Encode/Makefile.PL +++ b/cpan/Encode/Makefile.PL @@ -1,5 +1,5 @@ # -# $Id: Makefile.PL,v 2.21 2017/07/18 07:15:29 dankogai Exp dankogai $ +# $Id: Makefile.PL,v 2.22 2017/10/06 22:21:53 dankogai Exp dankogai $ # use 5.007003; use strict; @@ -20,7 +20,7 @@ if (!$ENV{PERL_CORE}) { $gccver =~ s/\.//g; $gccver =~ s/ .*//; $gccver .= "0" while length $gccver < 3; $gccver = 0+$gccver; - $ccflags .= ' -Werror=declaration-after-statement' if $gccver > 400; + $ccflags .= ' -Werror=declaration-after-statement' if $gccver > 412; $ccflags .= ' -Wpointer-sign' if !$Config{d_cplusplus} and $gccver > 400; $ccflags .= ' -fpermissive' if $Config{d_cplusplus}; } diff --git a/cpan/Encode/encoding.pm b/cpan/Encode/encoding.pm index 7cd9eb2949..1e82070afd 100644 --- a/cpan/Encode/encoding.pm +++ b/cpan/Encode/encoding.pm @@ -1,6 +1,6 @@ -# $Id: encoding.pm,v 2.20 2017/06/10 17:23:50 dankogai Exp $ +# $Id: encoding.pm,v 2.21 2017/10/06 22:21:53 dankogai Exp dankogai $ package encoding; -our $VERSION = sprintf "%d.%02d", q$Revision: 2.20 $ =~ /(\d+)/g; +our $VERSION = sprintf "%d.%02d", q$Revision: 2.21 $ =~ /(\d+)/g; use Encode; use strict; @@ -176,7 +176,7 @@ sub import { # implicitly 'use utf8' require utf8; # to fetch $utf8::hint_bits; $^H |= $utf8::hint_bits; - eval { + require Filter::Util::Call; Filter::Util::Call->import; filter_add( @@ -189,8 +189,6 @@ sub import { $status; } ); - 1; - } and DEBUG and warn "Filter installed"; } defined ${^UNICODE} and ${^UNICODE} != 0 and return 1; for my $h (qw(STDIN STDOUT)) { @@ -200,20 +198,14 @@ sub import { Carp::croak( "encoding: Unknown encoding for $h, '$arg{$h}'"); } - eval { binmode( $h, ":raw :encoding($arg{$h})" ) }; + binmode( $h, ":raw :encoding($arg{$h})" ); } else { unless ( exists $arg{$h} ) { - eval { no warnings 'uninitialized'; binmode( $h, ":raw :encoding($name)" ); - }; } } - if ($@) { - require Carp; - Carp::croak($@); - } } return 1; # I doubt if we need it, though } diff --git a/cpan/Encode/lib/Encode/CN/HZ.pm b/cpan/Encode/lib/Encode/CN/HZ.pm index a0dc59d153..e444cb01c3 100644 --- a/cpan/Encode/lib/Encode/CN/HZ.pm +++ b/cpan/Encode/lib/Encode/CN/HZ.pm @@ -5,7 +5,7 @@ use warnings; use utf8 (); use vars qw($VERSION); -$VERSION = do { my @r = ( q$Revision: 2.9 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r }; +$VERSION = do { my @r = ( q$Revision: 2.10 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r }; use Encode qw(:fallbacks); @@ -156,7 +156,7 @@ sub encode($$;$) { } elsif ( $str =~ s/(.)// ) { my $s = $1; - my $tmp = $GB->encode( $s, $chk ); + my $tmp = $GB->encode( $s, $chk || 0 ); last if !defined $tmp; if ( length $tmp == 2 ) { # maybe a valid GB char (XXX) if ($in_ascii) { diff --git a/cpan/Encode/lib/Encode/JP/JIS7.pm b/cpan/Encode/lib/Encode/JP/JIS7.pm index a0629a3690..6fc383c496 100644 --- a/cpan/Encode/lib/Encode/JP/JIS7.pm +++ b/cpan/Encode/lib/Encode/JP/JIS7.pm @@ -1,7 +1,7 @@ package Encode::JP::JIS7; use strict; use warnings; -our $VERSION = do { my @r = ( q$Revision: 2.7 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r }; +our $VERSION = do { my @r = ( q$Revision: 2.8 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r }; use Encode qw(:fallbacks); @@ -52,7 +52,7 @@ sub encode($$;$) { # empty the input string in the stack so perlio is ok $_[1] = '' if $chk; my ( $h2z, $jis0212 ) = @$obj{qw(h2z jis0212)}; - my $octet = Encode::encode( 'euc-jp', $utf8, $chk ); + my $octet = Encode::encode( 'euc-jp', $utf8, $chk || 0 ); $h2z and &Encode::JP::H2Z::h2z( \$octet ); euc_jis( \$octet, $jis0212 ); return $octet; diff --git a/cpan/Encode/lib/Encode/MIME/Header.pm b/cpan/Encode/lib/Encode/MIME/Header.pm index e23abffe37..848de99fa4 100644 --- a/cpan/Encode/lib/Encode/MIME/Header.pm +++ b/cpan/Encode/lib/Encode/MIME/Header.pm @@ -2,7 +2,7 @@ package Encode::MIME::Header; use strict; use warnings; -our $VERSION = do { my @r = ( q$Revision: 2.27 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r }; +our $VERSION = do { my @r = ( q$Revision: 2.28 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r }; use Carp (); use Encode (); @@ -128,26 +128,26 @@ sub decode($$;$) { } if ( not defined $enc ) { - Carp::croak qq(Unknown charset "$charset") if not ref $chk and $chk & Encode::DIE_ON_ERR; - Carp::carp qq(Unknown charset "$charset") if not ref $chk and $chk & Encode::WARN_ON_ERR; - $stop = 1 if not ref $chk and $chk & Encode::RETURN_ON_ERR; + Carp::croak qq(Unknown charset "$charset") if not ref $chk and $chk and $chk & Encode::DIE_ON_ERR; + Carp::carp qq(Unknown charset "$charset") if not ref $chk and $chk and $chk & Encode::WARN_ON_ERR; + $stop = 1 if not ref $chk and $chk and $chk & Encode::RETURN_ON_ERR; $output .= ($output =~ /(?:\A|[ \t])$/ ? '' : ' ') . $orig unless $stop; # $orig mime word is separated by whitespace $stop ? $orig : ''; } else { if ( uc($mime_enc) eq 'B' and $obj->{decode_b} ) { my $decoded = _decode_b($enc, $text, $chk); - $stop = 1 if not defined $decoded and not ref $chk and $chk & Encode::RETURN_ON_ERR; + $stop = 1 if not defined $decoded and not ref $chk and $chk and $chk & Encode::RETURN_ON_ERR; $output .= (defined $decoded ? $decoded : $text) unless $stop; $stop ? $orig : ''; } elsif ( uc($mime_enc) eq 'Q' and $obj->{decode_q} ) { my $decoded = _decode_q($enc, $text, $chk); - $stop = 1 if not defined $decoded and not ref $chk and $chk & Encode::RETURN_ON_ERR; + $stop = 1 if not defined $decoded and not ref $chk and $chk and $chk & Encode::RETURN_ON_ERR; $output .= (defined $decoded ? $decoded : $text) unless $stop; $stop ? $orig : ''; } else { - Carp::croak qq(MIME "$mime_enc" unsupported) if not ref $chk and $chk & Encode::DIE_ON_ERR; - Carp::carp qq(MIME "$mime_enc" unsupported) if not ref $chk and $chk & Encode::WARN_ON_ERR; - $stop = 1 if not ref $chk and $chk & Encode::RETURN_ON_ERR; + Carp::croak qq(MIME "$mime_enc" unsupported) if not ref $chk and $chk and $chk & Encode::DIE_ON_ERR; + Carp::carp qq(MIME "$mime_enc" unsupported) if not ref $chk and $chk and $chk & Encode::WARN_ON_ERR; + $stop = 1 if not ref $chk and $chk and $chk & Encode::RETURN_ON_ERR; $output .= ($output =~ /(?:\A|[ \t])$/ ? '' : ' ') . $orig unless $stop; # $orig mime word is separated by whitespace $stop ? $orig : ''; } @@ -198,6 +198,7 @@ sub _decode_q { sub _decode_octets { my ($enc, $octets, $chk) = @_; + $chk = 0 unless defined $chk; $chk &= ~Encode::LEAVE_SRC if not ref $chk and $chk; my $output = $enc->decode($octets, $chk); return undef if not ref $chk and $chk and $octets ne ''; @@ -238,7 +239,9 @@ sub _encode_string { my ($obj, $str, $chk) = @_; my $wordlen = $obj->{bpl} > 76 ? 76 : $obj->{bpl}; my $enc = Encode::find_mime_encoding($obj->{charset}); - my $enc_chk = (not ref $chk and $chk) ? ($chk | Encode::LEAVE_SRC) : $chk; + my $enc_chk = $chk; + $enc_chk = 0 unless defined $enc_chk; + $enc_chk |= Encode::LEAVE_SRC if not ref $enc_chk and $enc_chk; my @result = (); my $octets = ''; while ( length( my $chr = substr($str, 0, 1, '') ) ) { diff --git a/cpan/Encode/lib/Encode/MIME/Name.pm b/cpan/Encode/lib/Encode/MIME/Name.pm index 1a8d788aec..72ec79adda 100644 --- a/cpan/Encode/lib/Encode/MIME/Name.pm +++ b/cpan/Encode/lib/Encode/MIME/Name.pm @@ -1,7 +1,7 @@ package Encode::MIME::Name; use strict; use warnings; -our $VERSION = do { my @r = ( q$Revision: 1.2 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r }; +our $VERSION = do { my @r = ( q$Revision: 1.3 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r }; # NOTE: This table must be 1:1 mapping our %MIME_NAME_OF = ( @@ -38,6 +38,7 @@ our %MIME_NAME_OF = ( 'cp866' => 'IBM866', 'cp869' => 'IBM869', 'cp936' => 'GBK', + 'euc-cn' => 'EUC-CN', 'euc-jp' => 'EUC-JP', 'euc-kr' => 'EUC-KR', #'gb2312-raw' => 'GB2312', # no, you're wrong, I18N::Charset diff --git a/cpan/Encode/t/decode.t b/cpan/Encode/t/decode.t index 3995412895..0cc6c87644 100644 --- a/cpan/Encode/t/decode.t +++ b/cpan/Encode/t/decode.t @@ -1,11 +1,13 @@ # -# $Id: decode.t,v 1.3 2016/10/28 05:03:52 dankogai Exp $ +# $Id: decode.t,v 1.4 2017/10/06 22:21:53 dankogai Exp dankogai $ # use strict; use Encode qw(decode_utf8 FB_CROAK find_encoding decode); use Test::More tests => 17; +use Test::Builder; sub croak_ok(&) { + local $Test::Builder::Level = $Test::Builder::Level + 1; my $code = shift; eval { $code->() }; like $@, qr/does not map/; diff --git a/cpan/Encode/t/mime-header.t b/cpan/Encode/t/mime-header.t index 7abb0206cb..bf48753d93 100644 --- a/cpan/Encode/t/mime-header.t +++ b/cpan/Encode/t/mime-header.t @@ -1,5 +1,5 @@ # -# $Id: mime-header.t,v 2.15 2017/07/18 07:15:29 dankogai Exp dankogai $ +# $Id: mime-header.t,v 2.15 2017/07/18 07:15:29 dankogai Exp $ # This script is written in utf8 # BEGIN { diff --git a/cpan/Encode/t/mime-name.t b/cpan/Encode/t/mime-name.t index ced4e7c031..46bd4bf96b 100644 --- a/cpan/Encode/t/mime-name.t +++ b/cpan/Encode/t/mime-name.t @@ -1,5 +1,5 @@ # -# $Id: mime-name.t,v 1.2 2016/10/28 05:03:52 dankogai Exp $ +# $Id: mime-name.t,v 1.3 2017/10/06 22:21:53 dankogai Exp dankogai $ # This script is written in utf8 # BEGIN { @@ -23,7 +23,7 @@ use strict; use warnings; use Encode; #use Test::More qw(no_plan); -use Test::More tests => 277; +use Test::More tests => 281; BEGIN { use_ok("Encode::MIME::Name"); |