477 lines
17 KiB
Plaintext
477 lines
17 KiB
Plaintext
IO 1.38 -- Apr 19 2018 - Todd Rinaldo
|
||
* Remove pre 5.8 logic from code base.
|
||
* Bump all IO modules to 1.38 and set required Perl to 5.8.1
|
||
* Fix for perl #125723
|
||
* IO test: adjust require for non CORE perl
|
||
* IO::Handle - fix precedence issue
|
||
* Document IO::Select error detection
|
||
* Rely on C89 <time.h>
|
||
* (perl #130856) deal with unpack_sockaddr_un() croaking
|
||
* Switch most open() calls to three-argument form.
|
||
* (perl #129788) IO::Poll: fix memory leak
|
||
* (perl #128095) check pack_sockaddr_un()'s return value
|
||
* dist/: remove . from @INC when loading optional modules
|
||
* Fix IO::Handle documentation mangled by a manually applied patch
|
||
* Make IO::Poll->poll call _poll even with an empty fd array
|
||
* Fix assertion when calling IO::Poll::_poll() with an empty fd array
|
||
* Some BSD implementations might have <sys/poll.h> instead of <poll.h>.
|
||
|
||
IO 1.36 -- Jun 26 2015 (Not released to CPAN)
|
||
* dist/IO/t/io_utf8argv.t: Generalize for non-ASCII platforms.
|
||
* VMS does have fsync, so configure accordingly.
|
||
* Skip obsolete skip in io_xs.t.
|
||
* Label conditionally unused.
|
||
* Use <sys/poll.h> if available before going select().
|
||
* Fix assertion when calling IO::Poll::_poll() with an empty fd array
|
||
* Make IO::Poll->poll call _poll even with an empty fd array
|
||
|
||
IO 1.35 -- Dec 7 2014 (Not released to CPAN)
|
||
* Change OP_SIBLING to OpSIBLING
|
||
* Improve connected() doc
|
||
* IRIX: fsync documented to fail on read-only filehandles.
|
||
* Convert all use of Test.pm to Test::More
|
||
|
||
IO 1.34 -- Sep 10 2014 (Not released to CPAN)
|
||
* Add dual life support for use of op_sibling in IO.xs
|
||
|
||
IO 1.33 -- Jun 10 2014 (Not released to CPAN)
|
||
* wrap op_sibling field access in OP_SIBLING* macros
|
||
* Make like() and unlike() in t/test.pl refuse non-qr// arguments
|
||
* Further simplify the sockatmark(). (And do not assign the fd in PREINIT.)
|
||
|
||
IO 1.32 -- May 29 2014 (Not released to CPAN)
|
||
* fcntl receiving -1 from fileno, fcntl failing.
|
||
* Also very few spots of negative numgroups for getgroups(), and fgetc() return, but almost all checking is for fcntl.
|
||
* merged fix for perl #121743 and perl #121745: hopefully picked up all the fixes-to-fixes from the ticket.
|
||
* Fix for Coverity perl5 CIDs 28990..29003,29005..29011,29013,45354,45363,49926
|
||
* Argument cannot be negative (NEGATIVE_RETURNS) fd is passed to a parameter that cannot be negative.
|
||
* CIDs 29004, 29012: Argument cannot be negative (NEGATIVE_RETURNS) num_groups is passed to a parameter that cannot be negative and because of CIDs 29005 and 29006 also CID 28924.
|
||
* In the first set of issues a fd is retrieved from PerlIO_fileno, and that is then used in places like fstat(), fchown(), dup(), etc., without checking whether the fd is valid (>=0).
|
||
* In the second set of issues a potentially negative number is potentially passed to getgroups().
|
||
* The CIDs 29005 and 29006 were a bit messy: fixing them needed also resolving CID 28924 where the return value of fstat() was ignored, and for completeness adding two croak calls (with perldiag updates): a bit of a waste since it's suidperl code.
|
||
|
||
IO 1.31 -- Mar 4 2014 (Not released to CPAN)
|
||
* dist/IO: Allow to be dual-lived - This dual-lived module has not been able to be compiled on releases earlier than 5.10.1.
|
||
* IO::Socket::INET: Handle getprotobyn{ame,umber} not being available
|
||
* dist/IO/t/io_pipe.t: Work around android only having an inbuilt echo
|
||
* Add examples for IO::Socket::UNIX.
|
||
* Remove an old note about autoflush from the POD.
|
||
* ioctl on perlhost platforms take a char*, not void*
|
||
|
||
IO 1.30 -- Nov 13 2013 (Not released to CPAN)
|
||
* IO.xs: fix compiler warning
|
||
* [perl #75156] fix the return value and bits for removing a closed fh
|
||
* [perl #75156] tests for deleting a closed handle from IO::Select
|
||
* Fix IO::Socket::connect() in the light of $! changes
|
||
|
||
IO 1.29 -- Mar 15 2013 (Not released to CPAN)
|
||
* Use separate macros for byte vs uv Unicode
|
||
* IO::Socket::INET's documentation for its Listen parameter was somewhat misleading, and the documentation for IO::Socket::Unix even more so.
|
||
* Address [perl #117999] for now by skipping known bad test on AIX
|
||
* [perl #117791] Clarify that write does not match the C 'write' semantics
|
||
* fix dist/IO/t/cachepropagate-unix.t
|
||
|
||
IO 1.28 -- Feb 2 2013 (Not released to CPAN)
|
||
* dist/IO/IO.xs: Silence compiler warning. This variable is unused, doesn't need to be declared.
|
||
|
||
IO 1.27 -- Feb 17 2013 (Not released to CPAN)
|
||
* [perl #116322]: getc() and ungetc() with unicode failure (ungetc() had no knowledge of UTF-8. )
|
||
|
||
IO 1.26 -- May 13 2009 - Jan 16 2013 (Not released to CPAN)
|
||
* portability to Haiku-OS for the cachepropagate-*.t tests
|
||
* sync() on a read-only file handle doesn't work on cygwin either
|
||
* [rt.cpan.org #61577] VMS doesn't support UNIX sockets
|
||
* add Test::More as a prereq to Makefile.PL
|
||
* document the limitations of protocol(), sockdomain(), socktype()
|
||
* [rt.cpan.org #61577] try to populate socket info when not cached
|
||
* [rt.cpan.org #61577] propagate socket details on accept
|
||
* [rt.cpan.org #61577] sockdomain and socktype undef on newly accepted sockets
|
||
* [perl #64772] check both input and output file handles for sync (This allows sync() to be called on directory handles.)
|
||
* [perl #64772] TODO test for sync on read only handle
|
||
* Convert some tests to Test::More
|
||
* Correct bug report email in docs from perl5-porters@perl.org to perlbug@perl.org
|
||
* Remove ‘use File::Spec’ from IO::File (It is not using it any more.)
|
||
* [RT #36079] Convert ` to '.
|
||
* use :raw to avoid interference from PERL_UNICODE when creating test data
|
||
* Make IO::Handle::getline(s) respect the open pragma (RT 66474)
|
||
* Fix setting sockets nonblocking in Win32
|
||
* Use the exception set in select (connect()) to early return when remote end is busy or in non existing port
|
||
* Keep verbatim pod within 79 cols
|
||
* Keep verbatim pod in IO.pm within 80 cols
|
||
* [perl #88486] IO::File does not always export SEEK*
|
||
* Explicitly force the load of IO::File in IO::Handle (see the discussion in [perl #87940]).
|
||
* Remove various indirect method calls in IO's docs
|
||
* IO::Select: allow removal of IO::Handle objects without fileno
|
||
* Actuall excise 'Apollo DomainOS' support. We officially killed it in 5.11.0. It hadn't worked for years before that.
|
||
* fix various compiler warnings from XS code (void return value)
|
||
* Only bind to localhost in tests: "in general, tests shouldn't be listening on all interfaces."
|
||
* Document IO::Socket getsockopt and setsockopt
|
||
* Convert sv_2mortal(newSVpvn()) to newSVpvn_flags(), for 5.11.0 and later. (
|
||
* Minor documentation and typo fixes.
|
||
* Move IO from ext to dist in core perl
|
||
|
||
IO 1.25 -- Wed May 13 18:37:33 CDT 2009
|
||
* Fix test warnings in io_dir
|
||
* skip tests known to cause a segfault 5.10.0
|
||
|
||
IO 1.24 -- Mon May 11 14:15:51 CDT 2009
|
||
|
||
* Make Makefile.PL usable by core and CPAN
|
||
* Reorganize files to be under lib/ directory structure now matches core perl
|
||
* Update with following changes made to core perl distribution
|
||
* Silence Win32 compiler warning in IO.xs
|
||
* Make non-blocking mode work on Windows in IO::Socket::INET
|
||
* fix some missing parts of IO::Handle pod
|
||
* Implement IO::Handle::say the same way as the builtin say().
|
||
* Undo io_linenum.t part of #34148. It was io_multihomed.t that I meant (my mistake), and that is now covered by #34155.
|
||
* watchdog() some IO tests
|
||
* Some more missing isGV_with_GP()s
|
||
* IO::Dir destructor
|
||
* IO::Socket::INET unnecessarily resolves "udp"
|
||
* IO::Handle->say should ignore $\ (bug #49266)
|
||
* consting IO.xs
|
||
* Net::SMTP can't send large messages with bleadperl
|
||
* Fix for IO::Socket send method
|
||
* Fixes for the test suite on OS/2
|
||
* Silence VC++ compiler warnings
|
||
* IO::Socket's IO.xs fails to compile
|
||
* IO::Socket::connect returns wrong errno on timeout
|
||
* Coverity correctly reports that gv might (just) be NULL. So don't dereference it if it is.
|
||
* Simplify tests for fork() capabilities
|
||
* Fix syntax error in io_pipe test
|
||
* Making IO::Socket pass test on Win32
|
||
* ext/IO/t/io_unix.t
|
||
|
||
IO 1.23 -- Sat Mar 25 19:28:28 CST 2006
|
||
|
||
* Adjust the regression tests to use t/test.pl when $ENV{PERL_CORE} is defined
|
||
* Reduce number of calls to getpeername
|
||
* Call qualify on format name passed to format_write. Bug reported by Johan Vromans
|
||
* Reduce calls to getprotobyname/number. Patch from Gisle Aas
|
||
* Remove references to file TEST used in core so appropriate tests are skipped
|
||
during an install from CPAN
|
||
* Add method say to IO::Handle
|
||
* Performance improvement for IO::File::open
|
||
* Don't warn about a directory being closed in the DESTROY
|
||
|
||
IO 1.22 -- Mon Sep 5 10:29:35 CDT 2005
|
||
|
||
* Update with changes made in perl core distribution
|
||
|
||
Change 173 on 1998/07/14 by <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO::Socket
|
||
- Added method connected
|
||
|
||
IO.xs
|
||
- Added check that file * is not null
|
||
|
||
t/io_udp.t
|
||
- Added check for connected
|
||
- Made change to catch recv not returning the address, and added a fix to
|
||
ensure test does not hang
|
||
|
||
t/io_sock.t
|
||
- Added check for connected.
|
||
|
||
Change 137 on 1998/05/21 by <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO::Socket::INET
|
||
- Added checks to all peer* and host* methods for undef
|
||
|
||
Change 134 on 1998/05/09 by <gbarr@pobox.com> (Graham Barr)
|
||
|
||
t/io_sock.t
|
||
- fix race condition on Solaris & SunOS
|
||
|
||
IO::Handle
|
||
- Applied patch from Gisle Aas <gisle@aas.no> for
|
||
documentation update
|
||
- Applied patch from Kuma <tgy@chocobo.org>
|
||
changed input_line_number to be on a per-handle basis.
|
||
|
||
IO::File
|
||
- Applied patch from Gisle Aas <gisle@aas.no> for
|
||
documentation update
|
||
|
||
IO::Seekable
|
||
- Applied patch from Gisle Aas <gisle@aas.no> for
|
||
documentation update
|
||
added sysseek
|
||
|
||
IO, IO::Socket::INET
|
||
- documentation update
|
||
|
||
IO.xs
|
||
- Applied patch from Gisle Aas <gisle@aas.no> for
|
||
blocking
|
||
|
||
Change 133 on 1998/05/09 by <gbarr@pobox.com> (Graham Barr)
|
||
|
||
t/io_sock.t
|
||
- Added checks for blocking()
|
||
|
||
Sun Apr 12 1998 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO.xs
|
||
- enclosed newCONSTSUB in #ifdef as _64 now defines it.
|
||
|
||
Thu Mar 19 1998 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
All
|
||
- Changed copyright/distribution policy back to be the same as perl
|
||
|
||
Sun Feb 15 1998 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO::Socket
|
||
- Fix to ->accept, accept() returns false on error not undef.
|
||
|
||
*** Release 1.19
|
||
|
||
Thu Feb 5 1998 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
All
|
||
- change copyright notice
|
||
|
||
IO::Socket::INET
|
||
- changed configure to accept PeerHost and LocalHost as well as the
|
||
PeerAddr and LocalAddr arguments.
|
||
|
||
Mon Feb 2 1998 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO::Handle
|
||
- Added printflush so that flush.pl can be depreciated
|
||
|
||
IO::Socket
|
||
- Remove C<use Config> statement as it was not needed
|
||
|
||
Tue Jan 27 1998 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO::Socket::INET
|
||
- removed carp if $^W
|
||
|
||
*** Patch 1.1804
|
||
|
||
Sat Jan 17 1998 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
t/io_sock.t
|
||
- Replaced C<Listen => 0> with C<LocalAddr => 'localhost'>
|
||
|
||
IO/Socket/INET.pm
|
||
- Modified the MultiHomed code. Now each address for a given host has
|
||
a timeout of C<Timeout>.
|
||
- added _get_addr method for doing hostname lookups. Now Net::DNS can be
|
||
use by sub-classing IO::Socket::INET, Thanks Gisle Aas
|
||
|
||
t/io_multihomed.t
|
||
- new test added. Thanks Gisle Aas.
|
||
|
||
*** Patch 1.1803
|
||
|
||
Mon Nov 17 1997 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
poll.c
|
||
- Added #ifdef I_* tests
|
||
|
||
IO::Socket
|
||
- Changed initialization of @domain2pkg to fix problem of Domain option
|
||
not working
|
||
- Added patch for multi-homed hosts, Thanks to Gisle Aas <gisle@aas.no>
|
||
|
||
IO::Socket::INET
|
||
- Change default proto to getprotobyname instead of 'tcp' constant string
|
||
- Added patch for multi-homed hosts, Thanks to Gisle Aas <gisle@aas.no>
|
||
|
||
t/io_sock.t
|
||
- Change to test fix for Domain problem fixed in IO::Socket and be
|
||
more comprehensive, Thanks to Gisle Aas <gisle@aas.no>
|
||
|
||
t/io_unix.t
|
||
- New test, Thanks to Gisle Aas <gisle@aas.no>
|
||
|
||
*** Patch 1.1802
|
||
|
||
Wed Nov 12 1997 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
t/io_poll.t
|
||
- test 4 made an assumption that was not portable, fixed.
|
||
|
||
*** Patch 1.1801
|
||
|
||
Wed Oct 22 1997 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO.xs
|
||
- change #ifdef's to allow compilation with 5.002
|
||
|
||
IO::Socket
|
||
- Fix to ensure that socket is not returned as non-blocking
|
||
unless the user asks for it
|
||
|
||
t/io_udp.t
|
||
- Fix to stop endless loop
|
||
|
||
*** Release 1.18
|
||
|
||
Mon Oct 13 1997 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO.xs, IO::Handle
|
||
- 1.17 broke compatibility with 5.003, small tweaks to restore
|
||
compatibility
|
||
|
||
t/io_const.t
|
||
- Added new test to ensure backwards compatibility with constants
|
||
is not broken
|
||
|
||
Wed Oct 8 1997 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO.xs
|
||
- Added #define's to cope with argument changes to start_subparse
|
||
from 5.003_22, _23 and _24
|
||
|
||
IO::Select
|
||
- Renamed has_error to be has_exception which is more correct,
|
||
has_error is a wrapper around has_exception with a warning if
|
||
$^W is set.
|
||
|
||
Makefile.PL
|
||
- Remove 'linkext' option to WriteMakefile so that static linking
|
||
should work properly, cannot remember why I added it.
|
||
|
||
Sun Oct 5 1997 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO::Pipe
|
||
- GLOB assignment does not copy the fileno while under -T
|
||
added checks for undefined fileno, and added fdopen
|
||
- reader and write can now be called as static methods
|
||
|
||
Makefile.PL
|
||
- Attempt to locate <poll.h> and define I_POLL if found
|
||
|
||
*** Release 1.17
|
||
|
||
Fri Sep 26 1997 <gbarr@pobox.com> (Graham Barr)
|
||
|
||
IO.xs
|
||
- Fix bug in _poll for ANSI C compilers
|
||
|
||
IO::Socket
|
||
- Split IO::Socket::INET and IO::Socket::UNIX into separate files
|
||
|
||
IO::File
|
||
- Patch to open() for when file is in current directory.
|
||
|
||
*** Release 1.16
|
||
|
||
Mon 15 Sep 1997 <gbarr@pobox.com> Graham Barr
|
||
|
||
o New modules
|
||
- IO::Dir
|
||
- IO::Poll
|
||
|
||
o IO::Socket
|
||
- Changed new to call autoflush on the new socket
|
||
- IO::Socket::INET->new now accepts a single argument
|
||
- IO::Socket::INET default to protocol 'tcp'
|
||
|
||
o IO::File
|
||
- Added doc for new_tmpfile
|
||
|
||
o IO::Handle
|
||
- Removed use of AutoLoader for constants, constants are
|
||
now defined as constant XS subs
|
||
- Added fsync, but will not be available for use
|
||
unless HAS_FSYNC is defined, perls configure does not define
|
||
this yet.
|
||
- Moved bootstrap of IO.xs to IO.pm. IO::Handle no longer
|
||
contains an AUTOLOAD sub in it's ISA hier
|
||
|
||
o IO::Seekable
|
||
- Remove clearerr, as it is defined in IO.xs
|
||
|
||
o IO.xs
|
||
- Patched IO.xs with patch from Chip for setvbuf warning
|
||
- Added XS sub "constant" for backwards compatibility
|
||
|
||
o Misc
|
||
- Fixed IO::Socket::configure, it was not passing $arg to domain
|
||
specific package
|
||
- Changed all $fh variables in IO::Handle to $io and all $fh
|
||
variables in IO::Socket to $sock as Chip suggested
|
||
- Fixed usage messages to be consistent
|
||
|
||
*** Release 1.15
|
||
|
||
Sun 19 Jan 1997 <bodg@tiuk.ti.com> Graham Barr
|
||
|
||
o Updated PODs for IO::Handle and IO::File
|
||
o Modified IO.xs so that DESTROY gets called on IO::File
|
||
objects that were created with IO::File->new_tmpfile
|
||
o Modified the domain2pkg code in IO::Socket so that it
|
||
does not use blessed refs
|
||
o Created a new package IO::Pipe::End so that pipe specific
|
||
stuff can be moved out of IO::Handle.
|
||
o Added Ilya's OS/2 changes to Pipe.pm and io_pipe.t
|
||
|
||
o These changes happened sometime before the release of 1.15
|
||
- added shutdown to IO::Socket
|
||
- modified connect to not use alarm
|
||
- modified accept and connect to use IO::Select
|
||
|
||
*** Release 1.14
|
||
|
||
Tue 24 Dec 1996 <bodg@tiuk.ti.com> Graham Barr
|
||
|
||
o Updated to patches in perl core dist.
|
||
o Added C<use strict> to all modules
|
||
o Modified t/io_sock.t, hopefully the race condition has gone
|
||
o Added close statements to reader/writer in IO::Pipe
|
||
o IO::Handle::syswrite was calling sysread, fixed :-)
|
||
|
||
*** Release 1.12
|
||
|
||
Thu 19 Sep 1996 <bodg@tiuk.ti.com> Graham Barr
|
||
|
||
o Modified IO.xs so that it will compile with pre perlio version
|
||
of perl (ie pre perl5.003_02)
|
||
o Modified IO::Socket::send so not to pass 4 arguments to send
|
||
if the socket is connected
|
||
|
||
*** Release 1.10
|
||
|
||
Mon 11 Sep 1996 <bodg@tiuk.ti.com> Graham Barr
|
||
|
||
o Fixed a bug in IO::Socket which caused DESTROY to be called
|
||
on a partly initialised connection
|
||
o Changed IO.xs to use Perlio
|
||
o Modified usage message to report correct package
|
||
o Added IO::File::new changes from Chip, to allow PERM to be passed
|
||
o Added sysread and syswrite methods to IO::Handle
|
||
o Updated documentation
|
||
o Fixed a bug in IO::Select that caused a hang if the last handle
|
||
was removed.
|
||
o Added count method to IO::Select
|
||
o Renamed and modified tests so that they can be copied into the
|
||
perl distribution
|
||
o Added fcntl and ioctl methods to IO::Handle
|
||
|
||
Thu 25 Jul 1996 <bodg@tiuk.ti.com> Graham Barr
|
||
|
||
o It is now not necessary to call the domain sub-classes of
|
||
IO::Socket. when connect is called it notes the domain.
|
||
Domain specific methods, which are normally non-critical, are
|
||
called via this note-ing.
|
||
o Added methods to IO::Socket to retrieve the domain, type and
|
||
protocol of a given socket
|
||
|
||
Tue 23 Jul 1996 <bodg@tiuk.ti.com> Graham Barr
|
||
|
||
o IO::Socket::connect changed how we do timeouts, as it did not work
|
||
|
||
o IO::Handle::new_from_fd removed method call to _ref_fd, which was
|
||
a leftover from FileHandle
|
||
|
||
Fri 28 Jun 1996 <bodg@tiuk.ti.com> Graham Barr
|
||
|
||
o Modified IO::Socket::UNIX::configure to default to using a socket
|
||
type of SOCK_STREAM if no type is specified.
|