Revision history for System-Command
1.122 2023-02-04 BOOK
[TESTS]
- Use $^X in Perl tests, instead of 'perl' (RT #141674 by SREZIC)
- Fix t/30-exit.t to pass on Windows (RT #133230 by Lisa Hansen)
- Drop some author developement modules from BuildRequires (GH #30 by OALDERS)
1.121 2020-06-03 BOOK
- No functional change: update Changes and contributors
1.120 2020-06-03 BOOK
[ENHANCEMENTS]
- System::Command does not clobber $? and $! any more
when DESTOYed (GH #27 by MMCCLIMON)
1.119 Mon Apr 2 2018
[TESTS]
- Various test fixes for Win32 and "perl in space" (ETJ)
[DOCUMENTATION]
- document the 'input_record_separator' option to loop_on()
1.118 Thu Jun 2 2016
[ENHANCEMENTS]
- Avoid calling waitpid() more than necessary in _reap()
- Close all pipes when loop_on() ends successfully, and avoid a warning
when the exit value is not available
[TESTS]
- Fix t/20-zombie.t, which was broken in Strawberry Perl (viviparous)
1.117 Sun Jan 17 2016
[ENHANCEMENT]
- New method loop_on() allows to run callbacks on the output/errput
1.116 Sun Jan 3 2016
[BUG FIX]
- Fix for the 'interactive' option (RKINYON)
[COMPATIBILITY]
- Remove a warning that was showing up under Perl 5.6
1.115 Mon Sep 28 2015
[BUG FIX]
- ensure test counts and skip counts remain tied together (MITHALDU)
[DOCUMENTATION]
- for each option/feature, document in which version it appeared
1.114 Fri Sep 18 2015
[ENHANCEMENTS]
- added proper accessors for the following System::Command::Reaper
attributes: sdtin, stdout, stderr, exit, signal, core
(after discussion with TIMB in RT #106330)
- added 'exit', 'signal', 'core' options to System::Command, to allow
direct update of variables at reaping time
- added the 'interactive' option, to make it possible to run interactive
commands directly with system (after discussion with TIMB in RT #106330)
1.113 Sun Sep 6 2015
[ENHANCEMENTS]
- add proper accessors for the following System::Command::Reaper
attributes: sdtin, stdout, stderr, exit, signal, core
(after discussion with TIMB in RT #106330)
- System::Command::close() now returns the object itself (RT #106867)
[DOCUMENTATION]
- document the return value of close() can be used to access the
value of exit, signal and core
1.112 Sat Jul 25 2015
[ENHANCEMENTS]
- the 'trace' option now also outputs some information about process
termination and status (as requested by TIMB in RT #106046)
1.111 Sat Feb 14 2015
[ENHANCEMENTS]
- throw an error on empty string env variables on Win32 (MITHALDU)
(RT #99824)
[DOCUMENTATION]
- minor documentation improvements
- added the list of contributors to the META file
1.110 Wed Aug 27 2014
[ENHANCEMENTS]
- the 'setpgrp' option can be used to enable/disable the call to
setpgrp() in the spawned process
[TESTS]
- t/10-command.t now ignores environment variables set by ConEmu
1.109 Wed Jul 2 2014
[BUG FIX]
- fix the test failures on Solaris, thanks to Wolfgang Pecho
(RT #82857). The reaper code was actually buggy (since v1.03!)
and only accidentally worked on platforms where WNOHANG == 1
(which was most of them)
1.108 Wed Feb 26 2014
[ENHANCEMENTS]
- the 'trace' option makes it possible to see exactly which commands
were spawned, with their options (including environment)
[DOCUMENTATION]
- style fixes
1.107 Sun Oct 20 2013
[ENHANCEMENTS]
- zombies do not exist under Win32, so no need to warn about
waitpid return value (many thanks to MITHALDU for his
continued help in testing on this platform)
[DOCUMENTATION]
- removed duplicated NAME section
[FUN]
- more zombie quotes in System::Command::Reaper comments
1.106 Sat Oct 12 2013
[ENHANCEMENTS]
- brought back System::Command::Reaper, which properly deals
with zombies
- execute the command in its own process group whenever possible
(thanks to Vincent Pit)
[TESTS]
- test for the zombie processes is not TODO anymore
- tests for the timely destruction of the reaper are back
1.105 Sat Oct 5 2013
[TESTS]
- add a TODO test for the zombie processes created in certain cases
- various other test improvements
1.104 Thu Sep 12 2013
[ENHANCEMENTS]
- fixed for Perl versions < 5.8.9
[DOCUMENTATION]
- minor documentation improvements
[PACKAGING]
- switch to Dist::Zilla for maintaining the distribution
1.103 Mon Jul 29 2013
[ENHANCEMENTS]
- rewrote the _spawn code to work properly under Plack
- version 1.100 and 1.102 re-introduced old bugs: they
have been squished again, and tests fixed to prevent
re-re-introduction
1.102 Fri Jul 26 2013
[ENHANCEMENTS]
- ported an older fix from Git::Repository, to make System::Command
work with modules that do bad things to STDIN, STDOUT and STDERR
(thanks to Todd Rinaldo for his 2010 patch to Git::Repository)
[work done during the patch -p0 hackathon]
1.101 Thu Jul 11 2013
[TESTS]
- various minor test improvements (thanks to Oleg Gashev and mokko)
[DOCUMENTATION]
- minor documentation improvements
1.100 Sun Apr 14 2013
[ENHANCEMENTS]
- use a IPC::Run-based implementation on Win32
- thanks to a lot of testing help from Christian Walde (MITHALDU)
the test suite passes on Win32
- while working on this, we established that kill 0, $pid is broken
under Win32 (reported to the perl5-porters mailing-list via
<op.wvi2ygw1ydyjqt@digitizedsqueak.lancs.ac.uk>)
1.09 Sun Dec 9 2012
[ENHANCEMENTS]
- list all dependencies and the github public repo in the META files
(RT #81302)
- use Symbol::gensym to create anonumous GLOBs (github #4)
1.08 Mon Nov 26 2012
[ENHANCEMENTS]
- remove a superfluous eval {} that was hiding open3 exception
(RT #80171)
- set a handler for the PIPE signal only if Perl knows about it
1.07 Wed Apr 18 03:00:50 CEST 2012
[TESTS]
- t/20-zombie.t sometimes failed because of a race condition.
I'm now testing my assumptions, make the test in question a
little bit useless, and closing RT #74959
1.06 Sun Jan 8 00:36:40 CET 2012
[ENHANCEMENTS]
- add tests that show that I don't understand what I'm doing
with STDIN/OUT/ERR, and remove the offending code (RT #73614)
1.05 Fri Jul 8 09:16:25 CEST 2011
[ENHANCEMENTS]
- make spawn() work properly with subclasses
1.04 Tue Jun 7 00:47:13 CEST 2011
[ENHANCEMENTS]
- allow removing variables from the environment by setting
keys with an 'undef' value in the 'env' option
[TESTS]
- tests for the import options
- added tests that were created for version 1.02 to the MANIFEST
1.03 Thu Mar 17 22:47:38 CET 2011
[ENHANCEMENTS]
- removed all the System::Command::Reaper logic which, while
being really nice, didn't actually add any value, and made
things more complex
1.02 Tue Mar 15 20:27:29 CET 2011
[FEATURES]
- new method is_terminated() allows to inquire about the child
process state
[ENHANCEMENTS]
- added a relatively sane behaviour when a SIGCHLD handler exists
- warns when such a SIGCHLD handler may prevent prevent the
capture of status information at the death of a child process
- added a -quiet option to silence the warning
- ported fixes from Git::Repository to work with modules that do
bad things to STDIN, STDOUT and STDERR (thanks to Todd Rinaldo)
1.01 Tue Feb 1 00:13:33 CET 2011
[FEATURES]
- new shortcut class method: spawn()
1.00 Wed Jan 20 00:50:17 CET 2011
[FEATURES]
- Generic version of the Git::Repository::Command process spawner
[BUGS]
- No work has been put on the Win32 version yet.