Revision history for Capture-Tiny
0.20 2012-09-19 13:20:57 America/New_York
Fixed:
- Nested merged captures that include an external program call no longer
leak STDERR to the outer scope [rt.cpan.org #79376]
0.19 2012-08-06 20:26:34 America/New_York
Fixed:
- Work around rt.perl.org #114404 by forcing PerlIO layers back on
original handles [rt.cpan.org #78819]
0.18 2012-05-04 16:31:53 America/New_York
Added:
- When capture or tee are called in void context, Capture::Tiny
skips reading back from the capture handles if it can do so safely
0.17_52 2012-03-09 11:45:19 EST5EDT
Fixed:
- Tied STDIN is always localized before redirections to avoid tees
hanging on MSWin32
- Copying and reopening STDIN is necessary to avoid tees hanging on MSWin32.
0.17_51 2012-03-07 18:22:34 EST5EDT
Fixed:
- Avoids reopening STDIN while setting up a capture, which avoids
some problems with pathological tied filehandle implementations
such as in FCGI
Tested:
- Re-enabled tied STDIN testing for MSWin32 to see if changes above
avoid crashes seen historically
0.17 2012-02-22 08:07:41 EST5EDT
Fixed:
- Added a workaround for failing t/08-stdin-closed.t under blead
perl / 5.15.8 [rt.perl.org #111070]
Documented:
- Clarified some limitations; added a link to CPAN Testers Matrix;
removed redundant BUGS section; standardized terminology
Tested:
- Added a test using Inline::C to print to stdout and stderr in response
to rt.cpan.org #71701
0.16 2012-02-12 21:04:24 EST5EDT
Documented:
- Noted problems and workaround for FCGI's pathological tied STDIN
[rt.cpan.org #74681; thank you Karl Gaissmaier for testing the
workaround]
0.15 2011-12-23 11:10:47 EST5EDT
Fixed:
- Repeated captures from a custom filehandle would return undef instead
of the empty string (and would warn). This has been fixed.
[rt.cpan.org #73374 part two. Thank you to Philipp Herz for help
in reproducing this bug.]
Other:
- Commented out debugging code for slightly less runtime overhead
0.14 2011-12-22 10:14:09 EST5EDT
Added:
- Capturing with custom filehandles will return only newly appended
output instead of everything already in the file.
[rt.cpan.org #73374]
0.13 2011-12-02 13:39:00 EST5EDT
Fixed:
- Fixed t/18-custom-capture.t failures on Windows due to tempfile
removal problems in the testfile
0.12 2011-12-01 16:58:05 EST5EDT
Added:
- New functions capture_stdout, capture_stderr, tee_stdout, tee_stderr
[rt.cpan.org #60515]
- Capture functions also returns the return values from the executed
coderef [rt.cpan.org #61794, adapted from patch by Christian Walde]
- Capture functions take optional custom filehandles for capturing
via named files instead of anonymous ones [inspired by Christian Walde]
Fixed:
- Tied filehandles based on Tie::StdHandle can now use the ":utf8"
layer; removed remaining TODO tests; adds Scalar::Util as a dependency
Changed:
- When Time::HiRes::usleep is available, tee operations will
sleep during the busy-loop waiting for tee processes to be ready
[rt.cpan.org #67858]
0.11 2011-05-19 23:34:23 America/New_York
Fixed:
- Tests will not use Test::Differences version 0.60 or greater
0.10 2011-02-07 07:01:44 EST5EDT
Fixed:
- Setting PERL_CAPTURE_TINY_TIMEOUT to 0 will disable timeouts
0.09 2011-01-27 23:52:16 EST5EDT
Added:
- Added support for $ENV{PERL_CAPTURE_TINY_TIMEOUT} to control
the timeout period under 'tee'; tests set not to timeout to
avoid false FAIL reports on overloaded virtual machine smokers
Fixed:
- $@ set within a captured block is no longer lost when the capture
is completed; likewise, the initial value of $@ is not lost
during capture (when no subsequent error occurs) (RT #65139)
0.08 Sun Jun 20 19:13:19 EDT 2010
Fixed:
- Exceptions in captured coderef are caught, then handles are restored
before the exception is rethrown (RT #58208)
0.07 Sun Jan 24 00:18:45 EST 2010
Fixed:
- Changed test for $? preservation to be more portable
- Dropped support for Perl 5.8.0 specifically due to excessive bugs.
Tests will bail out. (5.6.X is still supported)
0.06 Thu May 7 06:54:53 EDT 2009
Fixed:
- On Win32, subprocesses now close themselves on EOF instead of being
killed with a signal
0.05_51 Tue Apr 21 07:00:38 EDT 2009
Added:
- Support for wide characters on handles opened to utf8
- Support for STDOUT, STDERR or STDIN opened to in-memory
files (open to scalar reference) or tied, albeit with some limitations
Testing:
- Verify that $? is preserved during capture { system(@cmd) };
0.05 Tue Mar 3 06:56:05 EST 2009
Fixed:
- On Win32, increased a delay waiting for buffers to flush to avoid losing
final output during tee()
0.04 Wed Feb 25 09:25:27 EST 2009
Added:
- Can capture/tee even if STDIN, STDOUT or STDERR are closed prior to
capture/tee block
- Generally, added more error handling
Fixed:
- Will timeout instead of hang if subprocesses fail to start
0.03 Fri Feb 20 13:03:08 EST 2009
Added:
- capture_merged() and tee_merged()
Fixed:
- Tests skip if not Win32 and no fork() (rather than Build.PL and
Makefile.PL failing); this allows capture() on odd platforms, even if
fork doesn't work
0.02 Tue Feb 17 17:24:35 EST 2009
Fixed:
- Bug recovering output when STDOUT is empty (reported by Vincent Pit)
- Removed Fatal.pm to avoid global action-at-a-distance
0.01 Fri Feb 13 23:15:19 EST 2009
Added:
- 'capture' and 'tee' functions