|
Packit |
258f23 |
Revision history for Perl extension IPC::Run
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.99 Fri Mar 30 2018
|
|
Packit |
258f23 |
- Fixes for windows unit tests so they skip or pass.
|
|
Packit |
258f23 |
t/autoflush.t
|
|
Packit |
258f23 |
t/readonly.t
|
|
Packit |
258f23 |
t/run_stdin-callback-return-array.t
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.98 Thu Mar 29 2018
|
|
Packit |
258f23 |
- Switch to using $!{EINTR}
|
|
Packit |
258f23 |
- Honor umask for user/group permissions on a +rw file
|
|
Packit |
258f23 |
- Remove commented code from RT 50739
|
|
Packit |
258f23 |
- #63 - Patch for fixing _write on invalid objects
|
|
Packit |
258f23 |
- #54 - Make slave the controlling terminal so more programs can be called from IPC::Run reliably
|
|
Packit |
258f23 |
- #53 - Prevent Not a GLOB reference in close_terminal by untieing before close
|
|
Packit |
258f23 |
- #46 - '&' closing the stdin of the right process.
|
|
Packit |
258f23 |
- #41 - Do POSIX::_exit not ::exit
|
|
Packit |
258f23 |
- #40 - Assure child Win32 processes have same priority as parent
|
|
Packit |
258f23 |
- #38 - Add unit test for passing use of Readonly.pm
|
|
Packit |
258f23 |
- #39 - Fix GLOB test in IPC::Run::IO->new
|
|
Packit |
258f23 |
- #86 - Fix for memory leak [rt.cpan.org #57990]
|
|
Packit |
258f23 |
- MANIFEST was updated. New tests may start shipping now.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.97 Mon Mar 26 2018
|
|
Packit |
258f23 |
- Update meta and POD to point to GitHub issues not RT.
|
|
Packit |
258f23 |
- Update README with pod changes.
|
|
Packit |
258f23 |
- Fix variable name in synopsis - [Github #47]
|
|
Packit |
258f23 |
- Fix t/run.t to work on "perl in space" - [Github #100]
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.96 Fri May 12 2017
|
|
Packit |
258f23 |
- Update bug tracker to https://github.com/toddr/IPC-Run/issues
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.95 Mon Apr 24 2017
|
|
Packit |
258f23 |
- Spelling fixes
|
|
Packit |
258f23 |
- doc fix: full_result returns $?, not $? >> 8
|
|
Packit |
258f23 |
- Fix check for reaped PID in reap_nb
|
|
Packit |
258f23 |
- Re-remove unnecessary use of UNIVERSAL
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.94_02 Thu Apr 14 2016
|
|
Packit |
258f23 |
- Skip infinity test on perl below 5.8.9
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.94_01 Tue Apr 12 2016
|
|
Packit |
258f23 |
- Enable Travis-CI integration for IPC::Run
|
|
Packit |
258f23 |
- Use q{} and qq{} to fix problems with quotation in cmd.exe
|
|
Packit |
258f23 |
- sync $VERSION across all files to address kwalitee
|
|
Packit |
258f23 |
- RT 109243 - Stop side affect of altering flushing of STDOUT and STDERR
|
|
Packit |
258f23 |
- CHILD_HANDLE should be closed with 'Close' to prevent a warning.
|
|
Packit |
258f23 |
- require Win32API::File on Windows
|
|
Packit |
258f23 |
- Better timer error message + an additional unit test
|
|
Packit |
258f23 |
- Catching previously non-detected malformed time strings
|
|
Packit |
258f23 |
- Let Timer accept all allowable perl numbers
|
|
Packit |
258f23 |
- allow the OS to choose the ephemeral port to use
|
|
Packit |
258f23 |
- Don't use version.pm to parse the perl version in Makefile.PL
|
|
Packit |
258f23 |
- perltidy
|
|
Packit |
258f23 |
- Do not import POSIX into local namespace (it's a memory hog)
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.94 Sun Dec 14 2014
|
|
Packit |
258f23 |
- RT 100858 - Update License discrepancies.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.93_01 Wed Dec 10 2014
|
|
Packit |
258f23 |
- Many typo corrections from David Steinbrunner via github
|
|
Packit |
258f23 |
- RT 20105 - t/pty.t fails on Solaris 10
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.93 Wed Dec 10 2014
|
|
Packit |
258f23 |
- RT 100711 - Add aggressive exit to t/signal.t after skip_all to prevent failures.
|
|
Packit |
258f23 |
- RT 97926 - Fix for run argument with spaces in path
|
|
Packit |
258f23 |
- skip t/win32_compile.t on Android
|
|
Packit |
258f23 |
- RT 86133 - TODO failing POD tests for IPC::Run
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.92 Thu Aug 30 2012
|
|
Packit |
258f23 |
- Tests are good in dev version. Releasing to stable.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.92_01 Wed 22 Aug 2012
|
|
Packit |
258f23 |
- RT 59775 - Catching a signal during select() can lock up IPC::Run
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.91 Tue 14 Feb 2012
|
|
Packit |
258f23 |
- Tests are good in dev version. Releasing to stable.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.91_01 Mon 16 Jan 2012
|
|
Packit |
258f23 |
- RT 57277 - Apply suggested 1 line fix for dev release to public.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.90 Wed 29 Jun 2011
|
|
Packit |
258f23 |
- RT 57277 - Add breaking test. No solution at present.
|
|
Packit |
258f23 |
- RT 68623 - disable parallel tests on windows
|
|
Packit |
258f23 |
- RT 43072 - Skip dragonfly platform on t/pty.t (hangs)
|
|
Packit |
258f23 |
- RT 14078 - run() miscalculates length of UTF-8 strings
|
|
Packit |
258f23 |
- RT 49693 - security patch for lib/IPC/Run/Win32IO.pm s/INADDR_ANY//
|
|
Packit |
258f23 |
- RT 38193 - Fix error detection on non-English operating systems
|
|
Packit |
258f23 |
- Add a blank doc entry for IPC::Run::Win32IO::poll to quiet windows pod parser errors
|
|
Packit |
258f23 |
- RT 57190 - handle PATH environment variable not being defined. WILL NOT default to '.' since UNIX would not do this and the program has been behaving the UNIX way to date.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.89 Wed 31 Mar 2010
|
|
Packit |
258f23 |
- Revert extended tests to require "oslo consensus" variables - http://use.perl.org/~Alias/journal/36128
|
|
Packit |
258f23 |
- Add IO::Pty to META.yml requirement This has been inconsistently depended on over the years in META.yml
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.88 Tue 30 Mar 2010
|
|
Packit |
258f23 |
- Missed dangling isa in IPC::Run::Debug
|
|
Packit |
258f23 |
- Fix retry for read of fh when I get "Resource temporarily unavailable."
|
|
Packit |
258f23 |
It was previously pounding on the file handle with no rest 200 times then giving up.
|
|
Packit |
258f23 |
On fast systems this wasn't long enough. I'm implementing select(undef, undef, 0.01)
|
|
Packit |
258f23 |
to provide a more consistent retry among hardware and os.
|
|
Packit |
258f23 |
- Fix POD indentation in IO.pm
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.87 Mon 29 Mar 2010
|
|
Packit |
258f23 |
- Add doc type fixes - RT 56030 from carnil (Debian)
|
|
Packit |
258f23 |
- Remove recommends for AUTHOR only modules
|
|
Packit |
258f23 |
- add pod_coverage and simplify pod test.
|
|
Packit |
258f23 |
- document undocumented public subs with TODO and best guess as to what they do.
|
|
Packit |
258f23 |
- Explicitly recommend IO::Pty version number 1.08
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.86 Wed 24 Mar 2010
|
|
Packit |
258f23 |
- Add all files to subversion for easier releases
|
|
Packit |
258f23 |
- bump version on ALL files to 86
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.85 Mon 22 Mar 2010
|
|
Packit |
258f23 |
- Remove use UNIVERSAL. - RT 51509
|
|
Packit |
258f23 |
- fix pod for Win32Helper - RT 51695
|
|
Packit |
258f23 |
- Better PATHEXT logic bug if cmd_name contains periods - RT 50739
|
|
Packit |
258f23 |
- Enhance tests for run.t for better diagnostics - RT 47630
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.84 Mon 13 Jul 2009
|
|
Packit |
258f23 |
- Add darwin to the list of known-bad platforms
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.83 Fri 10 Jul 2009
|
|
Packit |
258f23 |
- Switch from command.com to cmd.exe so we work on 2008 or newer.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.82 Thu 18 Dec 2008
|
|
Packit |
258f23 |
- Moving changes in 0.81_01 to a production release
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.81_01 Wed 15 Oct 2008
|
|
Packit |
258f23 |
- This is the first in a series of refactoring test releases.
|
|
Packit |
258f23 |
- Removed Makefile.PL message noisily asking users to do CPAN Testers
|
|
Packit |
258f23 |
dirty work.
|
|
Packit |
258f23 |
- Simplified the Makefile.PL code a little.
|
|
Packit |
258f23 |
- Upgraded all tests to Test::More
|
|
Packit |
258f23 |
- Added a $VERSION for all modules
|
|
Packit |
258f23 |
- Adding some missing POD sections
|
|
Packit |
258f23 |
- Various other clean ups
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.80 (missing)
|
|
Packit |
258f23 |
- IPC::Run::IO now retries on certain "temporarily unavailable" errors.
|
|
Packit |
258f23 |
This should fix several reported issues with t/run.t, test 69.
|
|
Packit |
258f23 |
Many thanks to < Eric (at) Scratch Computing (.com) > for the patch!
|
|
Packit |
258f23 |
- Applied documentation patch from RT.
|
|
Packit |
258f23 |
- Fixed documentation to work with '<' redirect
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.79 Wed Jan 19 15:39:00 PST 2005
|
|
Packit |
258f23 |
- New maintainer: Richard Soderberg <rsod@cpan.org>
|
|
Packit |
258f23 |
- Resolved several RT tickets
|
|
Packit |
258f23 |
(4934, 8263, 8060, 8400, 8624, 5870, 4658, 8940, 1474, 4311)
|
|
Packit |
258f23 |
- Skip certain tests on AIX and OpenBSD as they deadlock otherwise
|
|
Packit |
258f23 |
- Applied AIX patch from ActiveState (#8263)
|
|
Packit |
258f23 |
- Fixed t/run.t on OS X (#8940)
|
|
Packit |
258f23 |
- Add check for EINTR to _read (#5870)
|
|
Packit |
258f23 |
- FreeBSD uses fds up to 4 by default, fixed tests to start at 5 (#8060)
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.78 Tue Mar 9 01:49:25 EST 2004
|
|
Packit |
258f23 |
- Removed all pseudohashes
|
|
Packit |
258f23 |
- Require Win32::Process when on Win32 (<CORION a t cpan . org>)
|
|
Packit |
258f23 |
- Retry the select() instead of croaking when EINTR occurs
|
|
Packit |
258f23 |
(Ilya Martynov, ilya a t iponweb.net)
|
|
Packit |
258f23 |
- This needs further testing and analysis, but works for
|
|
Packit |
258f23 |
the submitter.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.77 Fri Sep 26 15:36:56 EDT 2003
|
|
Packit |
258f23 |
- Non-binmoded pipes are now s/\r//g on Win32
|
|
Packit |
258f23 |
- Passes all tests on WinXPPro and WinNT
|
|
Packit |
258f23 |
- Deadlocks somewhere shortly after process creation on Win2K
|
|
Packit |
258f23 |
in some cases
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.76 (missing)
|
|
Packit |
258f23 |
- Does not use pseudohashes for perls >= 5.9.0 (reported by several
|
|
Packit |
258f23 |
users, patch by Nicholas Clark <nick@unfortu.net>)
|
|
Packit |
258f23 |
- pumpable() is now exported (reported by fetko@slaysys.com)
|
|
Packit |
258f23 |
- pumpable() now more thorough in checking for a dead child (reported
|
|
Packit |
258f23 |
by fetko@slaysys.com)
|
|
Packit |
258f23 |
- it checks for reapable processes when all pipes to the process
|
|
Packit |
258f23 |
are paused
|
|
Packit |
258f23 |
- pumpable() now yields the processor when all pipes to
|
|
Packit |
258f23 |
- Distro layout improved: Run.pm and Run/... are now under
|
|
Packit |
258f23 |
lib/IPC/...
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.75 Tue Jan 28 11:33:40 EST 2003
|
|
Packit |
258f23 |
- Fix a bug that was causing _pipe() to seem to fail when feeding
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.74 Thu May 23 09:24:57 EDT 2002
|
|
Packit |
258f23 |
- Skip a set of pty tests that deadlock on freebsd. Reported and
|
|
Packit |
258f23 |
investigated by Rocco Caputo <troc@pobox.com>. perldoc t/pty.t
|
|
Packit |
258f23 |
for details.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.73 Wed May 22 09:03:26 EDT 2002
|
|
Packit |
258f23 |
- Improved Win32 PATH and PATHEXT search;
|
|
Packit |
258f23 |
original patch by Ron Savage <ron@savage.net.au>
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.72 Thu May 9 10:25:55 EDT 2002
|
|
Packit |
258f23 |
- Doc patch from daniel@danielgardner.org
|
|
Packit |
258f23 |
- Backport Win32Helper to 5.00503 (compilation of this is
|
|
Packit |
258f23 |
tested on Unix or it would not have been spotted,
|
|
Packit |
258f23 |
not even by Matt Sergeant matts@sergeant.org).
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.71 Mon May 6 09:04:18 EDT 2002
|
|
Packit |
258f23 |
- Fix the pesky run/t check for specific error string (test 134 at
|
|
Packit |
258f23 |
the moment, bad file descriptor test) that keeps tripping up
|
|
Packit |
258f23 |
cpantesters
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.70 Fri Apr 26 10:15:13 EDT 2002
|
|
Packit |
258f23 |
- Massive performance improvements on Win32 See IPC::Run::Win32Helper's
|
|
Packit |
258f23 |
optimize() documentation.
|
|
Packit |
258f23 |
- moved data pump routine to IPC::Run::Win32Pump, now it loads much
|
|
Packit |
258f23 |
faster.
|
|
Packit |
258f23 |
- Where reasonably safe to do so, temporary files are used instead of
|
|
Packit |
258f23 |
pipes+pumps.
|
|
Packit |
258f23 |
- Setting $ENV{IPCRUNDEBUG}="notopt" can help find opportunities for
|
|
Packit |
258f23 |
optimizing. See IPC::Run::Debug for details.
|
|
Packit |
258f23 |
- Added 'noinherit => 1' option (parsed like 'debug => "basic") to
|
|
Packit |
258f23 |
allow stdin, stdout, and stderr to not be inherited by the child.
|
|
Packit |
258f23 |
- Factored debugging out in to IPC::Run::Debug so Win32Pump.pm need not load
|
|
Packit |
258f23 |
IPC::Run to get it.
|
|
Packit |
258f23 |
- Debugging code can be compile-time optimized away by setting
|
|
Packit |
258f23 |
$ENV{IPCRUNDEBUG} = "none" (or 0) before IPC::Run::Debug is first loaded
|
|
Packit |
258f23 |
causes all _debug... code to be optimized away before runtime.
|
|
Packit |
258f23 |
- Moved some functionality from IPC::Run in to IPC::Run::IO to allow
|
|
Packit |
258f23 |
IPC::Run::Win32IO to alter IPC::Run's behavior. More of this should
|
|
Packit |
258f23 |
happen; IPC::Run has grown too bloaty.
|
|
Packit |
258f23 |
- All the hokey hacky "manual imports" of IPC::Run's old _debug...()
|
|
Packit |
258f23 |
functions has been replaced by "use IPC::Run::Debug".
|
|
Packit |
258f23 |
- All the hokey hacky "manual imports" of IPC::Run's Win32_MODE()
|
|
Packit |
258f23 |
constant has been replaced by importing it from IPC::Run.
|
|
Packit |
258f23 |
- Cleaned up IPC::Run::Win32*'s debugging levels a bit to unclutter
|
|
Packit |
258f23 |
"basic" and "data" debugging level output.
|
|
Packit |
258f23 |
- exception handling in _open_pipes no longer silently eats exceptions.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.67 Fri Apr 19 12:14:02 EDT 2002
|
|
Packit |
258f23 |
- remove _q from the examples in the POD - it was inconsistent (the
|
|
Packit |
258f23 |
examples had bugs) and didn't help readability. Spotted by
|
|
Packit |
258f23 |
B.Rowlingson@lancaster.ac.uk.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.66 Wed Mar 27 07:42:27 EST 2002
|
|
Packit |
258f23 |
- Really dumb down that bad file descriptor test last tweaked in 0.64;
|
|
Packit |
258f23 |
the CLI does not script well under internationalization.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.65 (unreleased)
|
|
Packit |
258f23 |
- Mostly focused on Win32
|
|
Packit |
258f23 |
- pass filehandles to pumpers by number on the command line to avoid
|
|
Packit |
258f23 |
- use 2 arg binmode to force socket handles into/out of binmode
|
|
Packit |
258f23 |
- improve t/binmode.t
|
|
Packit |
258f23 |
- TODO: test ^Z and \000 pass-through.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.64 Wed Mar 13 11:04:23 EST 2002
|
|
Packit |
258f23 |
- Fix a test that fails on AIX because it uses a different message for
|
|
Packit |
258f23 |
"Bad file descriptor". Reported by "Dave Gomboc" <dave@cs.ualberta.ca>
|
|
Packit |
258f23 |
- If IO::Pty is loadable, require IO::Pty 1.00 or later.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.63 Wed Feb 27 12:25:22 EST 2002
|
|
Packit |
258f23 |
- the select loop will now poll (with logarithmic fallback) when all
|
|
Packit |
258f23 |
I/O is closed but we have children running. Problem report by
|
|
Packit |
258f23 |
"William R. Pearson" <wrp@alpha0.bioch.virginia.edu>.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.62 Tue Jan 1 16:40:54 EST 2002
|
|
Packit |
258f23 |
- Have all children close all file descriptors opened by the parent
|
|
Packit |
258f23 |
harness, otherwise children of different harnesses can unwittingly
|
|
Packit |
258f23 |
keep open fds the parent closes, thus preventing other children
|
|
Packit |
258f23 |
from seeing them close. Reported by Blair Zajac <blair@orcaware.com>.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.61 Fri Dec 7 05:21:28 EST 2001
|
|
Packit |
258f23 |
- Fix up signal.t to not fail due to printing not working quite right in
|
|
Packit |
258f23 |
signal handlers. Spotted in the wild by Blair Zajac <blair@orcaware.com>.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.6 Thu Dec 6 04:36:57 EST 2001
|
|
Packit |
258f23 |
- Get binmode--(">", binary) and ("<", binary)--working on Win32.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.56 Sun Dec 2 09:18:19 EST 2001
|
|
Packit |
258f23 |
- IPC::Run now throws exceptions from the post-fork, pre-exec child process
|
|
Packit |
258f23 |
back to the parent process using an additional pipe. This pipe also
|
|
Packit |
258f23 |
is used to pause the parent until the child performs the exec(), so
|
|
Packit |
258f23 |
that (when a new version of IO::Pty implements it) pty creation can
|
|
Packit |
258f23 |
be completed before the parent tries to write to it.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.55 Sat Dec 1 17:15:02 EST 2001
|
|
Packit |
258f23 |
- Fixups to Win32 code to get it compiling ok (added t/win32_compile.t
|
|
Packit |
258f23 |
to ensure that Win32Helper.pm at least compiles Ok).
|
|
Packit |
258f23 |
- Minor tweak to deal with "_" in $IO::Pty::VERSION, which is "0.92_04",
|
|
Packit |
258f23 |
including quotes, in the current version.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.54 Fri Nov 30 11:46:05 EST 2001
|
|
Packit |
258f23 |
- Win32 SUPPORT!!!!!
|
|
Packit |
258f23 |
- Added support for env. var. IPCRUNDEBUG=1 (or 2, 3, 4) to make it
|
|
Packit |
258f23 |
easier for users to debug the test suite.
|
|
Packit |
258f23 |
- Adapt to IO::Pty 0.91, which creates slave fds in new(), forcing us to
|
|
Packit |
258f23 |
close them in the parent after the fork(). We don't check for IO::Pty's
|
|
Packit |
258f23 |
version number, perhaps we should (waiting for a response from Roland
|
|
Packit |
258f23 |
Giersig <RGiersig@cpan.org> about what he intends, since this could affect
|
|
Packit |
258f23 |
all users of older IO::Ptys that upgrade).
|
|
Packit |
258f23 |
- Add a sleep(1) to allow the slave pty to be initted, otherwise a premature
|
|
Packit |
258f23 |
write() to the slave's input can be lost. This is a bogus hack, but
|
|
Packit |
258f23 |
IO::Pty 0.9x should fix it when it's released.
|
|
Packit |
258f23 |
- removed spurious use Errno qw( EAGAIN ), since this causes warnings with
|
|
Packit |
258f23 |
perl5.00505. Reported by Christian Jaeger <christian.jaeger@sl.ethz.ch>
|
|
Packit |
258f23 |
(pflanze).
|
|
Packit |
258f23 |
- IPC::Run::start() now does a kill_kill() if called on an already started
|
|
Packit |
258f23 |
harness. This is needed on Win32 to pass the test suite, but it's also a
|
|
Packit |
258f23 |
nice thing.
|
|
Packit |
258f23 |
- The debug file descriptor is built by dup()ing STDERR in the parent and
|
|
Packit |
258f23 |
passing it to the kids. This keeps us from needing to worry about
|
|
Packit |
258f23 |
debugging info in the select() loop and removes unnecessary complications.
|
|
Packit |
258f23 |
Still needs a bit of work: it should be dup()ed in _open_pipes and it's
|
|
Packit |
258f23 |
value should be stored in the harness, not a global.
|
|
Packit |
258f23 |
- child processes are now a little more clearly identified in debug output.
|
|
Packit |
258f23 |
- Some debugging messages are now clearer.
|
|
Packit |
258f23 |
- debugging is now almost ready to be compile-time optimized away.
|
|
Packit |
258f23 |
- "time since script start" is now shown when debugging. We should check to
|
|
Packit |
258f23 |
see if Time::HiRes is loaded and make this more accurate.
|
|
Packit |
258f23 |
- pipe opens are now down in Run::IO::open_pipe().
|
|
Packit |
258f23 |
- map_fds won't complain about no open fds unnecessarily (which was rare,
|
|
Packit |
258f23 |
but still).
|
|
Packit |
258f23 |
- the debug fd is now determined per-harness, not globally. This requires a
|
|
Packit |
258f23 |
bit of a hack (since I don't want to require $harness->_debug everywhere
|
|
Packit |
258f23 |
_debug might be called), but it seems worthwhile.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.5 Sat Nov 10 21:32:58 EST 2001
|
|
Packit |
258f23 |
- confess() when undef passed to _exec()
|
|
Packit |
258f23 |
- Cleaned up some POD and code comments.
|
|
Packit |
258f23 |
- Added patch to make the write side of pipes & ptys that IPC::Run must
|
|
Packit |
258f23 |
write to be non-blocking. Added a test for pipes, but Boris reports that
|
|
Packit |
258f23 |
Solaris 8 something seems to still block in the pty case, though Linux
|
|
Packit |
258f23 |
does not, so I did not add a test for that case. Probably should add one
|
|
Packit |
258f23 |
and complain bitterly if it fails (rather than actually failing the tests)
|
|
Packit |
258f23 |
and ptys are used. Patch from Borislav Deianov
|
|
Packit |
258f23 |
<borislav@users.sourceforge.net>.
|
|
Packit |
258f23 |
- Added a patch to invalidate the search path cache if the file is no longer
|
|
Packit |
258f23 |
executable, also from Borislav Deianov <borislav@users.sourceforge.net>
|
|
Packit |
258f23 |
- Started implementation of an adopt() external call that would let you
|
|
Packit |
258f23 |
aggregate harnesses, and a t/adopt.t, but different children need to
|
|
Packit |
258f23 |
properly close all FDs: they're inheriting each other's FDs and not
|
|
Packit |
258f23 |
properly closing them.
|
|
Packit |
258f23 |
- Close $debug_fd in &sub coprocesses.
|
|
Packit |
258f23 |
- Document the problems with &sub coprocesses.
|
|
Packit |
258f23 |
- Fixed fork error return detection to actually work, spotted by Dave
|
|
Packit |
258f23 |
Mitchell <davem@fdgroup.co.uk>.
|
|
Packit |
258f23 |
- Give errors if a path with a directory separator is passed in if the
|
|
Packit |
258f23 |
indicated filename does not exist, is not a file, or is not executable.
|
|
Packit |
258f23 |
They're unixish errors, but hey...
|
|
Packit |
258f23 |
- Allowed harness \@cmd, '>', $foo, timeout 10 ; to parse (it was mistakenly
|
|
Packit |
258f23 |
thinking I wanted to send output to the IPC::Run::Timer created by
|
|
Packit |
258f23 |
timeout().
|
|
Packit |
258f23 |
- pumpable() now returns true if there are any kids left alive, so that
|
|
Packit |
258f23 |
timers may continue to run.
|
|
Packit |
258f23 |
- A timeout of 1 second is forced if there are no I/O pipes left open, so
|
|
Packit |
258f23 |
that the select loop won't hang in select() if there is no I/O to do.
|
|
Packit |
258f23 |
Perhaps should only do that if there are timers.
|
|
Packit |
258f23 |
- Added a signal() to send specified signals to processes. Chose this over
|
|
Packit |
258f23 |
the more traditional Unix kill() to avoid people thinking that kill()
|
|
Packit |
258f23 |
should kill off processes.
|
|
Packit |
258f23 |
- Added kill_kill() which does kill off processes and clean up the harness.
|
|
Packit |
258f23 |
Sends TERM then (if need be) waits and sends KILL.
|
|
Packit |
258f23 |
- timeouts now work.
|
|
Packit |
258f23 |
- Removed eval{}s from a few subs, we were being over protective.
|
|
Packit |
258f23 |
- Preserve pos() across updates to scalars we append to, so m//g
|
|
Packit |
258f23 |
matches will work.
|
|
Packit |
258f23 |
- Cleaned up the examples/
|
|
Packit |
258f23 |
- Added abuse/ for (mostly user contributed) scripts that I can use as
|
|
Packit |
258f23 |
a manual regression test. Most/all are reflected in t/*.t, but not
|
|
Packit |
258f23 |
verbatim, so it's good to have to originals around in case they
|
|
Packit |
258f23 |
happen to trigger something t/*.t miss.
|
|
Packit |
258f23 |
- Cleaned up SYNOPSIS a bit: it was too scary. Still is, but less so.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.44 Mon Oct 2 17:20:29 EDT 2000
|
|
Packit |
258f23 |
- Commented out all code dealing with select()'s exception file descriptor
|
|
Packit |
258f23 |
mask. Exceptions are vaguely defined and until somebody asks for them
|
|
Packit |
258f23 |
I don't want to do anything automatic with them. Croaking on them
|
|
Packit |
258f23 |
was certainly a bad idea: FreeBSD and some other platforms raise an
|
|
Packit |
258f23 |
exception when a pipe is closed, even if there's data in the pipe.
|
|
Packit |
258f23 |
IPC::Run closes a pipe filehandle if it sees sysread() return an
|
|
Packit |
258f23 |
error or 0 bytes read.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.43 Thu Aug 17 23:26:34 EDT 2000
|
|
Packit |
258f23 |
- Added flushing of STDOUT and STDERR before fork()/spawn() so that the
|
|
Packit |
258f23 |
children won't inherit bufferloads of unflushed output. This seems
|
|
Packit |
258f23 |
to be automatic in 5.6.0, but can cause loads of grief in 5.00503.
|
|
Packit |
258f23 |
I wish there were a way to flush all open filehandles, like stdio's
|
|
Packit |
258f23 |
fflush( NULL ) ;
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.42 Thu Aug 17 23:26:34 EDT 2000
|
|
Packit |
258f23 |
- Worked around pseudo-hash features not implemented in perl5.00503
|
|
Packit |
258f23 |
- Deprecated passing hashes of options in favor of just passing
|
|
Packit |
258f23 |
name-value pairs.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.41 (missing)
|
|
Packit |
258f23 |
- Added result, results, full_result, full_results. I added so many
|
|
Packit |
258f23 |
variations because I expect that result and full_result are the most
|
|
Packit |
258f23 |
likely to get a lot of use, but I wanted to be able to return a list
|
|
Packit |
258f23 |
as well, without misusing wantarray.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.4 Thu Jun 15 14:59:22 EDT 2000
|
|
Packit |
258f23 |
- Added IPC::Run::IO and IPC::Run::Timer, bunches of tests. IPC::Run
|
|
Packit |
258f23 |
can now do more than just run child processes.
|
|
Packit |
258f23 |
- Scribbled more documentation. Needs a good edit.
|
|
Packit |
258f23 |
- Fixed some minor bugs here and there.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.34 Thu Jun 8 06:39:23 EDT 2000
|
|
Packit |
258f23 |
- Fixed bug in t/pty.t that prevented it from noticing IO::Pty
|
|
Packit |
258f23 |
- Converted IPC::Run to use fields.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.32 Thu Jun 8 06:15:17 EDT 2000
|
|
Packit |
258f23 |
- Added warning about missing IO::Pty in MakeMaker.PL. Thought about
|
|
Packit |
258f23 |
making it a prerequisite, but it's not: IPC::Run can do pipes, etc,
|
|
Packit |
258f23 |
if it's not found, and IO::Pty is more unix-specific than IPC::Run is.
|
|
Packit |
258f23 |
What I'd really like is an 'ENABLERS' section to MakeMaker.PL that
|
|
Packit |
258f23 |
tells CPAN.pm to try to install it but not to stress if it can't.
|
|
Packit |
258f23 |
- t/pty.t skips all tests if require IO::Pty fails.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.31 Tue Jun 6 01:54:59 EDT 2000
|
|
Packit |
258f23 |
- t/pty.t should now report what was received when checking it against
|
|
Packit |
258f23 |
a regex. This is because 0.3's failing a few tests on ppc-linux
|
|
Packit |
258f23 |
and the ok( $out =~ /.../ ) ; wasn't giving me enough info. I chose
|
|
Packit |
258f23 |
the 1 arg form due to older perl dists' Test.pm not grokking
|
|
Packit |
258f23 |
ok( $out, qr// ) ;. I should really do this to t/*.t, but I'm tired.
|
|
Packit |
258f23 |
- Removed the misfired Run/Pty.pm from the dist.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.3 Sat Jun 3 08:33:17 EDT 2000
|
|
Packit |
258f23 |
- Changed spelling of '<|<' and '>|>' to '<pipe' and '>pipe'. This
|
|
Packit |
258f23 |
is to make it less confusing (I hope), since '>|' is a valid construct
|
|
Packit |
258f23 |
in some shells with totally unrelated semantics, and I plan on adding
|
|
Packit |
258f23 |
it to IPC::Run if a noclobber option ever makes it in.
|
|
Packit |
258f23 |
- Added '<pty<' and '>pty>' operators.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.21 Fri Jun 2 12:49:08 EDT 2000
|
|
Packit |
258f23 |
- Added some advice for dealing with obstinate children
|
|
Packit |
258f23 |
- Converted many methods to plain subs for simplicity & performance
|
|
Packit |
258f23 |
- Converted to using local $debug to control debugging status for
|
|
Packit |
258f23 |
simplicity's sake. Don't know about performance effects, since
|
|
Packit |
258f23 |
dynamic scope lookups can be slow.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.2 Thu Jun 1 01:48:29 EDT 2000
|
|
Packit |
258f23 |
- Undid the creation of a pipe when passing a \*FOO or an IO::Handle
|
|
Packit |
258f23 |
ref and added '<|<', \*IN and '>|>', \*OUT syntax instead. This was
|
|
Packit |
258f23 |
because some very subtle bugs might have occurred if \*FOO was left
|
|
Packit |
258f23 |
in the wrong opened/closed state before calling run(), start() or
|
|
Packit |
258f23 |
harness(). Now, \*FOO must be open before the start() call, and
|
|
Packit |
258f23 |
'<|<' and '>|>' will close \*IN or \*OUT (or whatever) and open
|
|
Packit |
258f23 |
a pipe on it. This is analogous to IPC/Open{2,3}.pm behaviors.
|
|
Packit |
258f23 |
- Added eg/factorial_scalar and eg/runsh. Rewrote eg/factorial_pipe.
|
|
Packit |
258f23 |
- Fixed bug that was preventing input scalar refs (ie input for the
|
|
Packit |
258f23 |
child process) from ever being read from a second time. This
|
|
Packit |
258f23 |
caused pump() to hang.
|
|
Packit |
258f23 |
- Cleaned up calculation and use of timeout values so that when
|
|
Packit |
258f23 |
select() times out, it isn't called again. It's now adding one
|
|
Packit |
258f23 |
second to the timeout value because time() resolution is 1 second
|
|
Packit |
258f23 |
and we want to guarantee a minimum timeout even when we sample the
|
|
Packit |
258f23 |
start time at the end of a second
|
|
Packit |
258f23 |
- minor name changes to some field names to make the code marginally
|
|
Packit |
258f23 |
less obscure.
|
|
Packit |
258f23 |
- Fixed the MakeMaker settings and the directory layout so "make install"
|
|
Packit |
258f23 |
actually works.
|
|
Packit |
258f23 |
|
|
Packit |
258f23 |
0.1 Tue Apr 25 22:10:07 2000
|
|
Packit |
258f23 |
- Initial release
|