From: Stéphane Payrard Date: Tue, 15 Oct 2002 02:17:03 +0000 (+0200) Subject: Re: [PATCH] Warning on pararameterless 'use IO' and doc update X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=40a3dda160f7716cf8fb3c9068ec08ae7f6c681e;p=p5sagit%2Fp5-mst-13.2.git Re: [PATCH] Warning on pararameterless 'use IO' and doc update Message-ID: <20021015001703.GG7914@stefp.dyndns.org> p4raw-id: //depot/perl@18039 --- diff --git a/ext/IO/IO.pm b/ext/IO/IO.pm index 0087530..eb78c8a 100644 --- a/ext/IO/IO.pm +++ b/ext/IO/IO.pm @@ -10,6 +10,8 @@ XSLoader::load 'IO', $VERSION; sub import { shift; + warnings::warn('all', qq|parameterless "use IO" deprecated|) + if defined &warnings::warn && warnings::enabled('all'); my @l = @_ ? @_ : qw(Handle Seekable File Pipe Socket Dir); eval join("", map { "require IO::" . (/(\w+)/)[0] . ";\n" } @l) @@ -26,12 +28,13 @@ IO - load various IO modules =head1 SYNOPSIS - use IO; + use IO qw(Handle File); # loads IO modules, here IO::Handle, IO::File + use IO; # DEPRECATED =head1 DESCRIPTION -C provides a simple mechanism to load some of the IO modules at one go. -Currently this includes: +C provides a simple mechanism to load several of the IO modules +in one go. The IO modules belonging to the core are: IO::Handle IO::Seekable @@ -39,9 +42,23 @@ Currently this includes: IO::Pipe IO::Socket IO::Dir + IO::Select + IO::Poll + +Some other IO modules don't belong to the perl core but can be loaded +as well if they have been installed from CPAN. You can discover which +ones exist by searching for "^IO::" on http://search.cpan.org. For more information on any of these modules, please see its respective documentation. +=head1 DEPRECATED + + use IO; # loads all the modules listed below + +The loaded modules are IO::Handle, IO::Seekable, IO::File, IO::Pipe, +IO::Socket, IO::Dir. You should instead explicitly import the IO +modules you want. + =cut