This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Revert the removal of 'use encoding'
authorKarl Williamson <khw@cpan.org>
Wed, 18 Jun 2014 00:00:13 +0000 (18:00 -0600)
committerKarl Williamson <khw@cpan.org>
Wed, 18 Jun 2014 00:25:04 +0000 (18:25 -0600)
We've decided to not remove 'use encoding' in v5.20.

This reverts commits b017fe877ad78f04afaa3c1327fc46391f572bfb,
7053d92917f7cb46452de86dc4c6d8644cae849c, and
b06e47f717f77453fbdaef628efc2b9c83898a8b

19 files changed:
Porting/Maintainers.pl
cpan/Encode/encoding.pm
cpan/Encode/t/enc_data.t
cpan/Encode/t/enc_eucjp.t
cpan/Encode/t/enc_module.t
cpan/Encode/t/enc_utf8.t
cpan/Encode/t/encoding.t
cpan/Encode/t/jperl.t
pod/perldelta.pod
t/op/concat2.t
t/porting/customized.dat
t/re/pat_advanced.t
t/uni/chr.t
t/uni/greek.t
t/uni/latin2.t
t/uni/tr_7jis.t
t/uni/tr_eucjp.t
t/uni/tr_sjis.t
t/uni/tr_utf8.t

index cd04093..6570126 100755 (executable)
@@ -383,14 +383,6 @@ use File::Glob qw(:case);
     'Encode' => {
         'DISTRIBUTION' => 'DANKOGAI/Encode-2.62.tar.gz',
         'FILES'        => q[cpan/Encode],
-        'CUSTOMIZED'   => [
-                            'encoding.pm',
-                            't/enc_data.t',
-                            't/enc_eucjp.t',
-                            't/enc_utf8.t',
-                            't/encoding.t',
-                            't/jperl.t',
-                            ],
     },
 
     'encoding::warnings' => {
index 7bc08f4..c0bff08 100644 (file)
@@ -102,9 +102,6 @@ sub _get_locale_encoding {
 }
 
 sub import {
-    if ($] >= 5.020) {
-        Carp::croak("encoding: pragma has been removed");
-    }
     if ($] >= 5.017) {
        warnings::warnif("deprecated",
                         "Use of the encoding pragma is deprecated")
@@ -212,7 +209,9 @@ encoding - allows you to write your script in non-ascii or non-utf8
 
 =head1 WARNING
 
-This module has been removed after being deprecated since perl 5.18.
+This module is deprecated under perl 5.18.  It uses a mechanism provided by
+perl that is deprecated under 5.18 and higher, and may be removed in a
+future version.
 
 The easiest and the best alternative is to write your script in UTF-8
 and declear:
@@ -221,9 +220,6 @@ and declear:
 
 See L<perluniintro> and L<utf8> for details.
 
-For reference only, the documentation of how it was supposed to work (some
-bugs never got fixed) is below.
-
 =head1 SYNOPSIS
 
   use encoding "greek";  # Perl like Greek to you?
index 1a1cfde..a0caf65 100644 (file)
@@ -1,8 +1,6 @@
 # $Id: enc_data.t,v 2.2 2013/02/18 02:23:56 dankogai Exp $
 
 BEGIN {
-    print "1..0 # Skip: 'use encoding' has been removed\n";
-    exit 0;
     require Config; import Config;
     if ($Config{'extensions'} !~ /\bEncode\b/) {
       print "1..0 # Skip: Encode was not built\n";
index 96e466d..7c78a68 100644 (file)
@@ -2,8 +2,6 @@
 # This is the twin of enc_utf8.t .
 
 BEGIN {
-    print "1..0 # Skip: 'use encoding' has been removed\n";
-    exit 0;
     require Config; import Config;
     if ($Config{'extensions'} !~ /\bEncode\b/) {
       print "1..0 # Skip: Encode was not built\n";
index 120b7ad..05fc6c2 100644 (file)
@@ -1,8 +1,6 @@
 # $Id: enc_module.t,v 2.2 2013/02/18 02:23:56 dankogai Exp $
 # This file is in euc-jp
 BEGIN {
-    print "1..0 # Skip: 'use encoding' has been removed\n";
-    exit 0;
     require Config; import Config;
     if ($Config{'extensions'} !~ /\bEncode\b/) {
       print "1..0 # Skip: Encode was not built\n";
index ce24b1d..9c6caa3 100644 (file)
@@ -2,8 +2,6 @@
 # This is the twin of enc_eucjp.t .
 
 BEGIN {
-    print "1..0 # Skip: 'use encoding' has been removed\n";
-    exit 0;
     require Config; import Config;
     if ($Config{'extensions'} !~ /\bEncode\b/) {
       print "1..0 # Skip: Encode was not built\n";
index c49e423..8c7f253 100644 (file)
@@ -1,6 +1,4 @@
 BEGIN {
-    print "1..0 # Skip: 'use encoding' has been removed\n";
-    exit 0;
     require Config; import Config;
     if ($Config{'extensions'} !~ /\bEncode\b/) {
       print "1..0 # Skip: Encode was not built\n";
index a47dddf..3abe86b 100644 (file)
@@ -4,8 +4,6 @@
 # This script is written in euc-jp
 
 BEGIN {
-    print "1..0 # Skip: 'use encoding' has been removed\n";
-    exit 0;
     require Config; import Config;
     if ($Config{'extensions'} !~ /\bEncode\b/) {
       print "1..0 # Skip: Encode was not built\n";
index 07883e6..65401d1 100644 (file)
@@ -86,11 +86,6 @@ XXX For a release on a stable branch, this section aspires to be:
     If any exist, they are bugs, and we request that you submit a
     report.  See L</Reporting Bugs> below.
 
-=head2 S<C<"use encoding">> now is a fatal error
-
-The C<encoding> pragma has been deprecated since v5.18, and its use now
-is a fatal error.
-
 =head2 C<\N{}> with a sequence of multiple spaces is now a fatal error.
 
 This has been deprecated since v5.18.
index 46ec02e..9dfcc5b 100644 (file)
@@ -14,7 +14,6 @@ BEGIN {
 plan 3;
 
 SKIP: {
-skip("XXX 'use encoding' is gone.  This test needs to be rewritten", 1);
 skip_if_miniperl("no dynamic loading on miniperl, no Encode", 1);
 fresh_perl_is <<'end', "ok\n", {},
     no warnings 'deprecated';
index b63e753..47d977b 100644 (file)
@@ -18,9 +18,3 @@ podlators cpan/podlators/scripts/pod2text.PL b4693fcfe4a0a1b38a215cfb8985a65d5d0
 version cpan/version/lib/version.pm fa9931d4db05aff9a0a6ef558610b1a472d9306e
 version vutil.c abd88f59a6e0cfe7b4e45b1859f414042ea254aa
 version vxs.inc 9064aacbdfe42bb584a068f62b505dd11dbb4dc4
-Encode cpan/Encode/encoding.pm 4dc8e5e81f7b13e185d453c0ac704a07d625f190
-Encode cpan/Encode/t/enc_data.t 82e46d0908fdd381ab01b700240050034336a66d
-Encode cpan/Encode/t/enc_eucjp.t 9b386c1ef035f22798b124aa361bfecb833456c0
-Encode cpan/Encode/t/enc_utf8.t 3414490ad30b155241f07e3e3f2079743de16d40
-Encode cpan/Encode/t/encoding.t 4ac06c1f1c1b958c4e4b11304b8372bc94396c11
-Encode cpan/Encode/t/jperl.t 3c21d9c62d1a68dc6da7431f364f8aa4b3e9d040
index d6d14df..302d90a 100644 (file)
@@ -1873,6 +1873,8 @@ EOP
           'IsPunct disagrees with [:punct:] outside ASCII');
 
         my @isPunctLatin1 = eval q {
+            no warnings 'deprecated';
+            use encoding 'latin1';
             grep {/[[:punct:]]/ != /\p{IsPunct}/} map {chr} 0x80 .. 0xff;
         };
         skip "Eval failed ($@)", 1 if $@;
index 226f1b7..9445d32 100644 (file)
@@ -2,7 +2,6 @@
 
 BEGIN {
     require './test.pl';
-    skip_all("'use encoding' has been removed");
     skip_all_without_dynamic_extension('Encode');
     skip_all("EBCDIC") if $::IS_EBCDIC;
     skip_all_without_perlio();
index d911a75..5326ab9 100644 (file)
@@ -2,7 +2,6 @@
 
 BEGIN {
     require './test.pl';
-    skip_all("'use encoding' has been removed");
     skip_all_without_dynamic_extension('Encode');
     skip_all("EBCDIC") if $::IS_EBCDIC;
     skip_all_without_perlio();
index 06299db..6e7d980 100644 (file)
@@ -2,7 +2,6 @@
 
 BEGIN {
     require './test.pl';
-    skip_all("'use encoding' has been removed");
     skip_all_without_dynamic_extension('Encode');
     skip_all("EBCDIC") if $::IS_EBCDIC;
     skip_all_without_perlio();
index 918655b..2108319 100644 (file)
@@ -6,7 +6,6 @@
 
 BEGIN {
     require './test.pl';
-    skip_all("'use encoding' has been removed");
     skip_all_without_dynamic_extension('Encode');
     skip_all("EBCDIC") if $::IS_EBCDIC;
     skip_all_without_perlio();
index 13ae4e1..a317bb1 100644 (file)
@@ -5,7 +5,6 @@
 
 BEGIN {
     require './test.pl';
-    skip_all("'use encoding' has been removed");
     skip_all_without_dynamic_extension('Encode');
     skip_all("EBCDIC") if $::IS_EBCDIC;
     skip_all_without_perlio();
index b172826..a82b35c 100644 (file)
@@ -5,7 +5,6 @@
 
 BEGIN {
     require './test.pl';
-    skip_all("'use encoding' has been removed");
     skip_all_without_dynamic_extension('Encode');
     skip_all("EBCDIC") if $::IS_EBCDIC;
     skip_all_without_perlio();
index 01a26bc..2a566d9 100644 (file)
@@ -6,7 +6,6 @@
 
 BEGIN {
     require './test.pl';
-    skip_all("'use encoding' has been removed");
     skip_all_without_dynamic_extension('Encode');
     skip_all("EBCDIC") if $::IS_EBCDIC;
     skip_all_without_perlio();