man/man0/VERSION.html in tork-19.8.0 vs man/man0/VERSION.html in tork-19.8.1
- old
+ new
@@ -5,17 +5,31 @@
<meta name="generator" content="md2man 3.0.0 https://github.com/sunaku/md2man" />
<title>VERSION</title>
<link rel="stylesheet" href="../style.css"/>
<!--[if lt IE 9]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
</head>
-<body><div class="navbar"><div class="navbar-inner"><span class="brand"><a href="../index.html#man0">man0</a>/VERSION</span></div></div><div class="container-fluid"><h2 id="version-19-8-0-2014-06-23"><a name="version-19-8-0-2014-06-23" href="#version-19-8-0-2014-06-23" class="md2man-permalink" title="permalink"></a>Version 19.8.0 (2014-06-23)</h2><h3 id="minor"><a name="minor" href="#minor" class="md2man-permalink" title="permalink"></a>Minor:</h3>
+<body><div class="navbar"><div class="navbar-inner"><span class="brand"><a href="../index.html#man0">man0</a>/VERSION</span></div></div><div class="container-fluid"><h2 id="version-19-8-1-2014-06-28"><a name="version-19-8-1-2014-06-28" href="#version-19-8-1-2014-06-28" class="md2man-permalink" title="permalink"></a>Version 19.8.1 (2014-06-28)</h2><h3 id="patch"><a name="patch" href="#patch" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
+<li><p><a class="md2man-reference" href="../man1/tork-driver.1.html">tork-driver(1)</a>: sanitize the file paths reported by <a class="md2man-reference" href="../man1/tork-herald.1.html">tork-herald(1)</a>.</p><p>This allows a user to override <a class="md2man-reference" href="../man1/tork-herald.1.html">tork-herald(1)</a> with their own program
+that reports changed file paths in a less than ideal, but valid, way.
+For example, with relative directory traversals and redundant slashes.</p></li>
+<li><p><a class="md2man-reference" href="../man1/tork-remote.1.html">tork-remote(1)</a>: deal with stale server socket files; don't just exit.</p><p>A stale socket file is left behind by a server that was prematurely
+killed so it should be safe to delete it and start up a new server.</p></li>
+<li><p>tork/server: ensure that <a class="md2man-reference" href="../man1/tork-remote.1.html">tork-remote(1)</a> gets the same ARGV we did.</p></li>
+</ul>
+<h3 id="other"><a name="other" href="#other" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<ul>
+<li><p>Rename <code>*.md</code> file extension to the full <code>*.markdown</code>.</p></li>
+<li><p>README: link to manuals index; demote package link.</p></li>
+</ul>
+<h2 id="version-19-8-0-2014-06-23"><a name="version-19-8-0-2014-06-23" href="#version-19-8-0-2014-06-23" class="md2man-permalink" title="permalink"></a>Version 19.8.0 (2014-06-23)</h2><h3 id="minor"><a name="minor" href="#minor" class="md2man-permalink" title="permalink"></a>Minor:</h3>
+<ul>
<li><p>Add <code>bundler</code> configuration helper to load a bundle into <a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a>.</p><p>This lets you run Tork inside any application that uses Bundler without
having to first add Tork to its <code>Gemfile</code> and then <code>bundle install</code> it.
In fact, installing the Tork gem <em>outside</em> of the bundle is sufficient.</p><p>Try it: go into a bundled application and call <code>tork</code> to run its tests!</p></li>
</ul>
-<h3 id="patch"><a name="patch" href="#patch" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-1"><a name="patch-1" href="#patch-1" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Server: fix crash when Fixnum is sent as a message.</p>
<pre><code>lib/tork/server.rb:45:in `block (2 levels) in loop':
undefined method `empty?' for 6:Fixnum (NoMethodError)
@@ -33,35 +47,35 @@
from /usr/lib/ruby/2.1.0/json/common.rb:155:in `parse'
from (irb):2
from /usr/bin/irb:11:in `<main>'
</code></pre></li>
</ul>
-<h3 id="other"><a name="other" href="#other" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-1"><a name="other-1" href="#other-1" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li>Upgrade to md2man 3.0 for improved HTML manuals.</li>
</ul>
<h2 id="version-19-7-0-2014-03-04"><a name="version-19-7-0-2014-03-04" href="#version-19-7-0-2014-03-04" class="md2man-permalink" title="permalink"></a>Version 19.7.0 (2014-03-04)</h2><p>This release automatically re-runs failed tests after reabsorbing overhead.</p><h3 id="minor-1"><a name="minor-1" href="#minor-1" class="md2man-permalink" title="permalink"></a>Minor:</h3>
<ul>
<li><p>Re-run failed tests after reabsorbing overhead.</p><p>Thanks to Chris Scharf for <a href="https://github.com/sunaku/tork/pull/57">contributing this
patch</a>.</p></li>
</ul>
-<h2 id="version-19-6-1-2014-03-04"><a name="version-19-6-1-2014-03-04" href="#version-19-6-1-2014-03-04" class="md2man-permalink" title="permalink"></a>Version 19.6.1 (2014-03-04)</h2><p>This release improves support for old Rails versions.</p><h3 id="patch-1"><a name="patch-1" href="#patch-1" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-19-6-1-2014-03-04"><a name="version-19-6-1-2014-03-04" href="#version-19-6-1-2014-03-04" class="md2man-permalink" title="permalink"></a>Version 19.6.1 (2014-03-04)</h2><p>This release improves support for old Rails versions.</p><h3 id="patch-2"><a name="patch-2" href="#patch-2" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Rails < 3.1.0 does not have <code>connection_config()</code>.</p></li>
<li><p><code>schema_cache()</code> is only defined in Rails >= 4.</p></li>
</ul>
<h2 id="version-19-6-0-2014-01-02"><a name="version-19-6-0-2014-01-02" href="#version-19-6-0-2014-01-02" class="md2man-permalink" title="permalink"></a>Version 19.6.0 (2014-01-02)</h2><p>This release improves <a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> responsiveness and fixes <a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a>.</p><h3 id="minor-2"><a name="minor-2" href="#minor-2" class="md2man-permalink" title="permalink"></a>Minor:</h3>
<ul>
<li><a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> now prints the percentage of completed tests to stderr.</li>
</ul>
-<h3 id="patch-2"><a name="patch-2" href="#patch-2" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-3"><a name="patch-3" href="#patch-3" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a> emitted the <code>idle</code> event when tests were still running.</li>
</ul>
<h2 id="version-19-5-1-2013-12-02"><a name="version-19-5-1-2013-12-02" href="#version-19-5-1-2013-12-02" class="md2man-permalink" title="permalink"></a>Version 19.5.1 (2013-12-02)</h2><p>This release restores support for Capybara integration tests in the <code>rails</code>
configuration helper, corrects the <code>idle</code> event in <a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a>, and fixes
-some minor bugs in <a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> and <a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>.</p><h3 id="patch-3"><a name="patch-3" href="#patch-3" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+some minor bugs in <a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> and <a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>.</p><h3 id="patch-4"><a name="patch-4" href="#patch-4" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Rails: keep sub-Rails connected to in-memory SQLite3 test database.</p><p>When another Rails instance is started by Capybara, it sets up a new
connection to the test database instead of re-using our in-memory DB.</p><p><a href="http://www.spacevatican.org/2012/8/18/threading-the-rat/">http://www.spacevatican.org/2012/8/18/threading-the-rat/</a></p></li>
<li><p><a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a> sent <code>idle</code> event when 1 test was still running.</p></li>
<li><p><a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a>: prevent Test::Unit from running in <code>at_exit</code> hook.</p><p>Test::Unit is finding and running 0 tests in <a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> itself.</p></li>
@@ -81,11 +95,11 @@
then run <a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> in another terminal in the same working directory
to re-use the former's resources to run your test suite non-interactively.</p></li>
<li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: show help message to clients upon connecting.</p></li>
<li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: tell user to input 'h' key for help message.</p></li>
</ul>
-<h3 id="patch-4"><a name="patch-4" href="#patch-4" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-5"><a name="patch-5" href="#patch-5" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p><a class="md2man-reference" href="../man1/tork-notify.1.html">tork-notify(1)</a>: must pass mutable local variables into Thread.new.</p><p>The <code>icon</code> local variable would be overwritten (to nil sometimes)
outside of the thread and cause the thread body to silently fail.</p><p>See <a href="http://stackoverflow.com/q/16745840">http://stackoverflow.com/q/16745840</a> for details.</p></li>
<li><p>Socket files were always deleted: even if not ours.</p><p>If a tork instance was already running and a new tork instance was
started up in the same directory, then the latter would always delete
@@ -113,11 +127,11 @@
<li>The <code>:relative_paths</code> option no longer works:
<a href="https://github.com/guard/listen/issues/170">https://github.com/guard/listen/issues/170</a></li>
</ul></li>
<li><p><a class="md2man-reference" href="../man1/tork-herald.1.html">tork-herald(1)</a>: downgrade to listen 1.x gem to maintain Ruby 1.8 support.</p></li>
</ul>
-<h3 id="other-1"><a name="other-1" href="#other-1" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-2"><a name="other-2" href="#other-2" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>GH-56: specify license in gemspec for rubygems.org.</p></li>
<li><p>Document <a class="md2man-reference">sh(1)</a> word splitting in manual pages of all tork servers.</p></li>
<li><p>README: use <code>ps uf</code> to visualize process hierarchy.</p></li>
</ul>
@@ -125,51 +139,51 @@
<ul>
<li>The "rails" configuration helper now automatically sets up your test
database for Tork's parallel testing system if your test database is
SQLite3 and you are using Rails 3 or newer.</li>
</ul>
-<h3 id="other-2"><a name="other-2" href="#other-2" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-3"><a name="other-3" href="#other-3" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>rails: remove unused capture of rescued exception</p></li>
<li><p>coverage: document the use of Ruby 1.9 hash syntax</p></li>
<li><p>rename <code>*.markdown</code> file extension to shorter <code>*.md</code></p></li>
</ul>
-<h2 id="version-19-3-2-2013-10-29"><a name="version-19-3-2-2013-10-29" href="#version-19-3-2-2013-10-29" class="md2man-permalink" title="permalink"></a>Version 19.3.2 (2013-10-29)</h2><h3 id="other-3"><a name="other-3" href="#other-3" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h2 id="version-19-3-2-2013-10-29"><a name="version-19-3-2-2013-10-29" href="#version-19-3-2-2013-10-29" class="md2man-permalink" title="permalink"></a>Version 19.3.2 (2013-10-29)</h2><h3 id="other-4"><a name="other-4" href="#other-4" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>GH-55: upgrade listen & rake gem dependencies.</p><p>Thanks to Matthew Albright for reporting this issue in GH-55:
<a href="https://github.com/sunaku/tork/issues/55">https://github.com/sunaku/tork/issues/55</a></p></li>
</ul>
-<h2 id="version-19-3-1-2013-06-07"><a name="version-19-3-1-2013-06-07" href="#version-19-3-1-2013-06-07" class="md2man-permalink" title="permalink"></a>Version 19.3.1 (2013-06-07)</h2><h3 id="patch-5"><a name="patch-5" href="#patch-5" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-19-3-1-2013-06-07"><a name="version-19-3-1-2013-06-07" href="#version-19-3-1-2013-06-07" class="md2man-permalink" title="permalink"></a>Version 19.3.1 (2013-06-07)</h2><h3 id="patch-6"><a name="patch-6" href="#patch-6" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>server: rescue from failed writes to asynchronously closed clients.</p><p>Thanks to Jonathan Cairns for reporting and fixing this bug in GH-53:
<a href="https://github.com/sunaku/tork/issues/53">https://github.com/sunaku/tork/issues/53</a></p></li>
</ul>
-<h3 id="other-4"><a name="other-4" href="#other-4" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-5"><a name="other-5" href="#other-5" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li>Upgrade to md2man 2.0.</li>
</ul>
<h2 id="version-19-3-0-2013-05-05"><a name="version-19-3-0-2013-05-05" href="#version-19-3-0-2013-05-05" class="md2man-permalink" title="permalink"></a>Version 19.3.0 (2013-05-05)</h2><h3 id="minor-5"><a name="minor-5" href="#minor-5" class="md2man-permalink" title="permalink"></a>Minor:</h3>
<ul>
<li><p><a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a> now emits <code>["idle"]</code> messages whenever all tests
have finished running and no more tests are queued for running.</p><p>Thanks to Jonathan Cairns for requesting this feature in GH-50:
<a href="https://github.com/sunaku/tork/issues/50">https://github.com/sunaku/tork/issues/50</a></p></li>
</ul>
-<h3 id="other-5"><a name="other-5" href="#other-5" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-6"><a name="other-6" href="#other-6" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>add man/man0 subdir containing README and VERSION</p></li>
<li><p>README: use manpage xrefs for linking in HTML mans</p></li>
</ul>
<h2 id="version-19-2-2-2013-05-04"><a name="version-19-2-2-2013-05-04" href="#version-19-2-2-2013-05-04" class="md2man-permalink" title="permalink"></a>Version 19.2.2 (2013-05-04)</h2><p>This release makes Tork resilient to <code>Errno::EADDRINUSE</code> errors that may occur
-sometimes, intermittently, when test execution overhead is being reabsorbed.</p><h3 id="patch-6"><a name="patch-6" href="#patch-6" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+sometimes, intermittently, when test execution overhead is being reabsorbed.</p><h3 id="patch-7"><a name="patch-7" href="#patch-7" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li>server: retry until the socket opens successfully</li>
</ul>
-<h3 id="other-6"><a name="other-6" href="#other-6" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-7"><a name="other-7" href="#other-7" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li>include md2man rake tasks in developer's rakefile</li>
</ul>
-<h2 id="version-19-2-1-2013-02-08"><a name="version-19-2-1-2013-02-08" href="#version-19-2-1-2013-02-08" class="md2man-permalink" title="permalink"></a>Version 19.2.1 (2013-02-08)</h2><h3 id="patch-7"><a name="patch-7" href="#patch-7" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-19-2-1-2013-02-08"><a name="version-19-2-1-2013-02-08" href="#version-19-2-1-2013-02-08" class="md2man-permalink" title="permalink"></a>Version 19.2.1 (2013-02-08)</h2><h3 id="patch-8"><a name="patch-8" href="#patch-8" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>GH-46: allow reassigning <code>$tork_*</code> variable values. Thanks to Joe
Escalante for reminding me to fix this issue.</p></li>
<li><p>GH-48: disable class caching at the ActiveSupport level for Devise.
Thanks to Ryan Ahearn for fixing this issue and to Jonathan Cairns for
@@ -179,46 +193,46 @@
<ul>
<li>Add "devise" configuration helper that adds support for testing Rails
applications that use the Devise authentication framework. Thanks to Ryan
Ahearn for this contribution.</li>
</ul>
-<h3 id="patch-8"><a name="patch-8" href="#patch-8" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-9"><a name="patch-9" href="#patch-9" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>gemspec: upgrade to <em>listen</em> 0.7.0 to fix issue #43. Thanks to Ryan
Ahearn for reporting this issue and helping debug it, and to Thibaud
Guillaume-Gentil for fixing this issue upstream in the <em>listen</em> library.</p></li>
<li><p>Fix <code>undefined method 'path' for nil</code> error on socket file removal.</p></li>
</ul>
<h2 id="version-19-1-0-2012-12-12"><a name="version-19-1-0-2012-12-12" href="#version-19-1-0-2012-12-12" class="md2man-permalink" title="permalink"></a>Version 19.1.0 (2012-12-12)</h2><h3 id="minor-7"><a name="minor-7" href="#minor-7" class="md2man-permalink" title="permalink"></a>Minor:</h3>
<ul>
<li>tork-driver: don't run overhead files as test files</li>
</ul>
-<h3 id="patch-9"><a name="patch-9" href="#patch-9" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-10"><a name="patch-10" href="#patch-10" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>rails: run dependent tests when <code>app/views/*</code> change</p></li>
<li><p>Clear FactoryGirl sequences and traits on fork in the <code>factory_girl</code>
configuration helper. Thanks to Ryan Ahearn for this contribution.</p></li>
<li><p>server: fix clean up of socket files upon exit</p></li>
</ul>
-<h2 id="version-19-0-2-2012-11-07"><a name="version-19-0-2-2012-11-07" href="#version-19-0-2-2012-11-07" class="md2man-permalink" title="permalink"></a>Version 19.0.2 (2012-11-07)</h2><h3 id="patch-10"><a name="patch-10" href="#patch-10" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-19-0-2-2012-11-07"><a name="version-19-0-2-2012-11-07" href="#version-19-0-2-2012-11-07" class="md2man-permalink" title="permalink"></a>Version 19.0.2 (2012-11-07)</h2><h3 id="patch-11"><a name="patch-11" href="#patch-11" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Monkeypatch <code>at_exit()</code> to fix RSpec and MiniTest:</p><p><a href="https://github.com/rspec/rspec-core/pull/720">https://github.com/rspec/rspec-core/pull/720</a></p><p><a href="https://github.com/seattlerb/minitest/pull/183">https://github.com/seattlerb/minitest/pull/183</a></p></li>
</ul>
-<h3 id="other-7"><a name="other-7" href="#other-7" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-8"><a name="other-8" href="#other-8" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>README: document RSpec 2.9.0+ autorun skipping bug</p></li>
<li><p>README: MiniTest 1.3.2+ also has autorun skip bug</p></li>
</ul>
-<h2 id="version-19-0-1-2012-10-26"><a name="version-19-0-1-2012-10-26" href="#version-19-0-1-2012-10-26" class="md2man-permalink" title="permalink"></a>Version 19.0.1 (2012-10-26)</h2><h3 id="patch-11"><a name="patch-11" href="#patch-11" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-19-0-1-2012-10-26"><a name="version-19-0-1-2012-10-26" href="#version-19-0-1-2012-10-26" class="md2man-permalink" title="permalink"></a>Version 19.0.1 (2012-10-26)</h2><h3 id="patch-12"><a name="patch-12" href="#patch-12" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Support testing projects that have both test/ and spec/ directories.</p><p>I assumed that users would only have either test/ or spec/ but not both.
Do you know what happens when a test/ is run by RSpec or vice versa? :-)</p><p>Thanks to Kyle Peyton for reporting this issue.</p></li>
<li><p>Automatically load the "autorun" helpers for RSpec and MiniTest.</p><p>RSpec users are accustomed to not having <code>require "rspec/autorun"</code> in
their spec/spec_helper.rb file because they use the <a class="md2man-reference">rspec(1)</a> executable
to run their tests. This commit makes things Just Work for them again.</p></li>
</ul>
-<h3 id="other-8"><a name="other-8" href="#other-8" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-9"><a name="other-9" href="#other-9" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>test whether input is JSON by actually parsing it</p></li>
<li><p>server: use Set instead of Array for faster lookup</p></li>
</ul>
<h2 id="version-19-0-0-2012-10-17"><a name="version-19-0-0-2012-10-17" href="#version-19-0-0-2012-10-17" class="md2man-permalink" title="permalink"></a>Version 19.0.0 (2012-10-17)</h2><h3 id="major"><a name="major" href="#major" class="md2man-permalink" title="permalink"></a>Major:</h3>
@@ -254,55 +268,55 @@
<li><p><a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a>: add <code>["run_test_files"]</code> command to run multiple files</p></li>
<li><p><a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a>: emit edge-triggered <code>pass_now_fail</code> and <code>fail_now_pass</code>
events to notify you about changes in a test file's pass/fail status.</p></li>
<li><p>typing Control-D now breaks tork programs out of <code>Tork::Server#loop()</code></p></li>
</ul>
-<h3 id="patch-12"><a name="patch-12" href="#patch-12" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-13"><a name="patch-13" href="#patch-13" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a>: stop workers with SIGKILL when quitting</li>
</ul>
-<h3 id="other-9"><a name="other-9" href="#other-9" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-10"><a name="other-10" href="#other-10" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: document parameters for <code>t</code> and <code>s</code> commands</p></li>
<li><p>README: add tip about rlwrap for better interactive</p></li>
<li><p>README: simplify watch command using pgrep & xargs</p></li>
<li><p>README: use standard bundle exec; no <code>--binstubs</code></p></li>
</ul>
-<h2 id="version-18-2-4-2012-10-10"><a name="version-18-2-4-2012-10-10" href="#version-18-2-4-2012-10-10" class="md2man-permalink" title="permalink"></a>Version 18.2.4 (2012-10-10)</h2><h3 id="other-10"><a name="other-10" href="#other-10" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h2 id="version-18-2-4-2012-10-10"><a name="version-18-2-4-2012-10-10" href="#version-18-2-4-2012-10-10" class="md2man-permalink" title="permalink"></a>Version 18.2.4 (2012-10-10)</h2><h3 id="other-11"><a name="other-11" href="#other-11" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li>GH-39: upgrade listen gem version to fix a bug in OSX.
Thanks to Adam Grant for reporting this issue.</li>
</ul>
-<h2 id="version-18-2-3-2012-09-26"><a name="version-18-2-3-2012-09-26" href="#version-18-2-3-2012-09-26" class="md2man-permalink" title="permalink"></a>Version 18.2.3 (2012-09-26)</h2><h3 id="patch-13"><a name="patch-13" href="#patch-13" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-18-2-3-2012-09-26"><a name="version-18-2-3-2012-09-26" href="#version-18-2-3-2012-09-26" class="md2man-permalink" title="permalink"></a>Version 18.2.3 (2012-09-26)</h2><h3 id="patch-14"><a name="patch-14" href="#patch-14" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Restored support for building Tork from its gemspec under Ruby 1.8.
Thanks to Ohno Shin'ichi for reporting this issue and contributing a
preliminary fix.</p></li>
<li><p>Add resilience against failed command dispatch in <code>Tork::Server#loop()</code>.</p></li>
</ul>
-<h3 id="other-11"><a name="other-11" href="#other-11" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-12"><a name="other-12" href="#other-12" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>It's not worth rescuing Interrupt only to exit silently.
Let the user see stack traces when they press Control-C.</p></li>
<li><p>Update old comments about SIGCHLD handler, which was
replaced by reaping threads quite a few releases ago.</p></li>
<li><p>Use $0 instead of hard-coding the program name.</p></li>
</ul>
-<h2 id="version-18-2-2-2012-07-11"><a name="version-18-2-2-2012-07-11" href="#version-18-2-2-2012-07-11" class="md2man-permalink" title="permalink"></a>Version 18.2.2 (2012-07-11)</h2><h3 id="patch-14"><a name="patch-14" href="#patch-14" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-18-2-2-2012-07-11"><a name="version-18-2-2-2012-07-11" href="#version-18-2-2-2012-07-11" class="md2man-permalink" title="permalink"></a>Version 18.2.2 (2012-07-11)</h2><h3 id="patch-15"><a name="patch-15" href="#patch-15" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>GH-35: resume dispatched but not yet started tests.</p><p>After reabsorbing overhead, we need to resume previously dispatched test
files that have not yet finished running. This includes the waiting set
(dispatched but not yet running) as well as the running set (dispatched
and already started running). Otherwise, we encounter a bug where test
files in the waiting set can NEVER be run again!</p></li>
</ul>
-<h2 id="version-18-2-1-2012-07-05"><a name="version-18-2-1-2012-07-05" href="#version-18-2-1-2012-07-05" class="md2man-permalink" title="permalink"></a>Version 18.2.1 (2012-07-05)</h2><h3 id="patch-15"><a name="patch-15" href="#patch-15" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-18-2-1-2012-07-05"><a name="version-18-2-1-2012-07-05" href="#version-18-2-1-2012-07-05" class="md2man-permalink" title="permalink"></a>Version 18.2.1 (2012-07-05)</h2><h3 id="patch-16"><a name="patch-16" href="#patch-16" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li>GH-37: switch from Guard::Listener to Listen gem.
Thanks to Jesse Cooke for reporting this issue.</li>
</ul>
-<h3 id="other-12"><a name="other-12" href="#other-12" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-13"><a name="other-13" href="#other-13" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>gemspec: need to provide .0 suffix for ~> operator.</p></li>
<li><p>gemspec: LICENSE file contains UTF-8 author names.</p></li>
</ul>
<h2 id="version-18-2-0-2012-03-27"><a name="version-18-2-0-2012-03-27" href="#version-18-2-0-2012-03-27" class="md2man-permalink" title="permalink"></a>Version 18.2.0 (2012-03-27)</h2><h3 id="minor-9"><a name="minor-9" href="#minor-9" class="md2man-permalink" title="permalink"></a>Minor:</h3>
@@ -311,11 +325,11 @@
experience by giving them immediate feedback. For example, if you issue
the "rerun<em>failed</em>tests" command and no tests have failed yet, you will
now see a warning message that explains the situation. Thanks to
NagaChaitanya Vellanki (@chaitanyav) for suggesting this change.</li>
</ul>
-<h3 id="patch-16"><a name="patch-16" href="#patch-16" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-17"><a name="patch-17" href="#patch-17" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>GH-32: Restore support for Selenium and Capybara by replacing the global
SIGCHLD handler in <a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a> with individual threads, one per forked
worker process. Thanks to Bjørn Trondsen (@Sharagoz) for reporting this
issue and verifying the fix.</p></li>
@@ -336,11 +350,11 @@
<h2 id="version-18-0-1-2012-02-13"><a name="version-18-0-1-2012-02-13" href="#version-18-0-1-2012-02-13" class="md2man-permalink" title="permalink"></a>Version 18.0.1 (2012-02-13)</h2><h3 id="alert"><a name="alert" href="#alert" class="md2man-permalink" title="permalink"></a>Alert:</h3>
<ul>
<li>If you're on Ruby 1.9, please use 1.9.3 or newer because 1.9.2 is
known to segfault under RSpec and Rails. See GH-30 and GH-32.</li>
</ul>
-<h3 id="patch-17"><a name="patch-17" href="#patch-17" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-18"><a name="patch-18" href="#patch-18" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>GH-27: Cucumber features now run correctly under RSpec. Thanks to Scott
Radcliff for reporting this issue and to David Burrows for solving it!</p></li>
<li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: fix undefined method `strip' for nil:NilClass error.</p></li>
<li><p>tork/config: ignore directories given as configuration files.</p></li>
@@ -364,11 +378,11 @@
<h3 id="minor-11"><a name="minor-11" href="#minor-11" class="md2man-permalink" title="permalink"></a>Minor:</h3>
<ul>
<li><p>tork-driver now recursively expands dependent test files while globbing.</p></li>
<li><p>Extracted bookkeeping stuff from tork-driver into tork-engine component.</p></li>
</ul>
-<h3 id="other-13"><a name="other-13" href="#other-13" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-14"><a name="other-14" href="#other-14" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>tork/config: do not reabsorb when .tork.rb
changes. Since the configuration is loaded in
multiple processes, it is difficult to reload
the configuration on the fly without adding
@@ -390,18 +404,18 @@
<li><p>Lambda functions in <code>Tork::Config.test_file_globbers</code> can now return
multiple globs in an array, in addition to just a single glob or <code>nil</code>.</p></li>
<li><p>Added support for the MiniTest convention of naming test files as
<code>test/**/test_*.rb</code> and <code>spec/**/spec_*.rb</code>. (Jose Pablo Barrantes)</p></li>
</ul>
-<h2 id="version-17-0-1-2012-01-29"><a name="version-17-0-1-2012-01-29" href="#version-17-0-1-2012-01-29" class="md2man-permalink" title="permalink"></a>Version 17.0.1 (2012-01-29)</h2><h3 id="patch-18"><a name="patch-18" href="#patch-18" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-17-0-1-2012-01-29"><a name="version-17-0-1-2012-01-29" href="#version-17-0-1-2012-01-29" class="md2man-permalink" title="permalink"></a>Version 17.0.1 (2012-01-29)</h2><h3 id="patch-19"><a name="patch-19" href="#patch-19" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p><a class="md2man-reference" href="../man1/tork-herald.1.html">tork-herald(1)</a> <em>sometimes</em> reported changed test files twice.</p></li>
<li><p>tork/driver: only whole test file runs should qualify as pass.</p></li>
<li><p>tork/config/cucumber: only set ARGV for <code>*.feature</code> test files.</p></li>
<li><p>Tork::Client::Transceiver needs to stop both TX & RX loops.</p></li>
</ul>
-<h3 id="other-14"><a name="other-14" href="#other-14" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-15"><a name="other-15" href="#other-15" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>tork/driver: store test file lists in Set, not Array.</p></li>
<li><p>HISTORY: use single-word change-set descriptions.</p></li>
</ul>
<h2 id="version-17-0-0-2012-01-27"><a name="version-17-0-0-2012-01-27" href="#version-17-0-0-2012-01-27" class="md2man-permalink" title="permalink"></a>Version 17.0.0 (2012-01-27)</h2><h3 id="major-2"><a name="major-2" href="#major-2" class="md2man-permalink" title="permalink"></a>Major:</h3>
@@ -423,11 +437,11 @@
<li><p>GH-25: add <code>tork/config/logdir</code> configuration helper to isolate log files.
(Jose Pablo Barrantes)</p></li>
<li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a> now strips all whitespace from your input, in case you pressed
spacebar or tab a few times, by accident, before entering your command.</p></li>
</ul>
-<h3 id="other-15"><a name="other-15" href="#other-15" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-16"><a name="other-16" href="#other-16" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>tork/client: Replace write lock with queue to support SIGCHLD handler.</p><p>The SIGCHLD handler in <a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a> can be triggered at any time, even
in the middle of writing to the standard output stream! Locking access
to the output stream in normal code (outside the signal handler) would
freeze the program because the signal handler, waiting for the lock to
@@ -447,35 +461,35 @@
</ul>
<h3 id="minor-14"><a name="minor-14" href="#minor-14" class="md2man-permalink" title="permalink"></a>Minor:</h3>
<ul>
<li>tork/config/cucumber: only run changed scenarios in changed features.</li>
</ul>
-<h3 id="other-16"><a name="other-16" href="#other-16" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-17"><a name="other-17" href="#other-17" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li>README: update instructions on running Tork directly from Git clone.</li>
</ul>
<h2 id="version-15-1-0-2012-01-25"><a name="version-15-1-0-2012-01-25" href="#version-15-1-0-2012-01-25" class="md2man-permalink" title="permalink"></a>Version 15.1.0 (2012-01-25)</h2><h3 id="minor-15"><a name="minor-15" href="#minor-15" class="md2man-permalink" title="permalink"></a>Minor:</h3>
<ul>
<li>GH-19: add <code>tork cucumber</code> for running cucumber features.</li>
</ul>
-<h3 id="patch-19"><a name="patch-19" href="#patch-19" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-20"><a name="patch-20" href="#patch-20" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>tork/config/rails: support Rails 2 and don't assume AR is used. (Benjamin
Quorning)</p></li>
<li><p>tork/config: settings from configuration helpers specified in
$TORK_CONFIGS should override settings from the <code>.tork.rb</code> file.</p></li>
<li><p>README: need to set $PATH to run this project from a git clone.</p></li>
<li><p>LICENSE: give copyright to major contributors only.
See <a href="http://stackoverflow.com/questions/1497756">http://stackoverflow.com/questions/1497756</a>.
Also added forgotten Luke Wendling to the list.</p></li>
</ul>
-<h2 id="version-15-0-1-2012-01-24"><a name="version-15-0-1-2012-01-24" href="#version-15-0-1-2012-01-24" class="md2man-permalink" title="permalink"></a>Version 15.0.1 (2012-01-24)</h2><h3 id="patch-20"><a name="patch-20" href="#patch-20" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-15-0-1-2012-01-24"><a name="version-15-0-1-2012-01-24" href="#version-15-0-1-2012-01-24" class="md2man-permalink" title="permalink"></a>Version 15.0.1 (2012-01-24)</h2><h3 id="patch-21"><a name="patch-21" href="#patch-21" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>GH-21: Ruby 1.9 class_eval() is smarter than 1.8.</p></li>
<li><p>GH-20: forgot <code>require 'thread'</code> for Mutex class. (Jesse Cooke)</p></li>
</ul>
-<h3 id="other-17"><a name="other-17" href="#other-17" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-18"><a name="other-18" href="#other-18" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: fix shadowed variable names. (Jose Pablo Barrantes)</p></li>
<li><p>GH-22: fix command to build & install gem from source.</p></li>
<li><p>GH-22: add m2dman as development dependency in gemspec.</p></li>
<li><p>GH-18: windows not supported; lacks fork & SIGCHLD.</p></li>
@@ -502,11 +516,11 @@
PGError: connection not open
</code></pre>
<p>Thanks to Spencer Steffen for <a href="https://github.com/sunaku/tork/issues/14#issuecomment-3539470">contributing this solution</a>.</p></li>
<li><p><a class="md2man-reference">testr-driver(1)</a>: document the "over" status message in manual page.</p></li>
</ul>
-<h3 id="other-18"><a name="other-18" href="#other-18" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-19"><a name="other-19" href="#other-19" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p><a class="md2man-reference">testr-driver(1)</a>: keep same herald; only replace master.</p></li>
<li><p><a class="md2man-reference">testr(1)</a>: shorten code for loop break on quit command.</p></li>
<li><p>server: rename <code>@upstream</code> to <code>@client</code> for coherence.</p></li>
<li><p>Can pass lambda and proc with block to <code><<</code> method.</p></li>
@@ -517,42 +531,42 @@
<ul>
<li><p>Add ability to run <code>testr rails</code> without needing a <code>.testr.rb</code> file.</p></li>
<li><p><a class="md2man-reference">testr(1)</a> no longer shows command menu at startup. Press ENTER to see it.</p></li>
<li><p><a class="md2man-reference">testr(1)</a> now notifies you before absorbing overhead at startup.</p></li>
</ul>
-<h3 id="patch-21"><a name="patch-21" href="#patch-21" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-22"><a name="patch-22" href="#patch-22" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><a class="md2man-reference">testr(1)</a> now accepts death silently when Control-C is pressed.</li>
</ul>
-<h2 id="version-14-1-3-2012-01-13"><a name="version-14-1-3-2012-01-13" href="#version-14-1-3-2012-01-13" class="md2man-permalink" title="permalink"></a>Version 14.1.3 (2012-01-13)</h2><h3 id="patch-22"><a name="patch-22" href="#patch-22" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-14-1-3-2012-01-13"><a name="version-14-1-3-2012-01-13" href="#version-14-1-3-2012-01-13" class="md2man-permalink" title="permalink"></a>Version 14.1.3 (2012-01-13)</h2><h3 id="patch-23"><a name="patch-23" href="#patch-23" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li>Add support Guard v0.9.0 and newer in <code>testr-herald</code>. (Jose Pablo
Barrantes)</li>
</ul>
-<h3 id="other-19"><a name="other-19" href="#other-19" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-20"><a name="other-20" href="#other-20" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li>Tighten version constraints for gem dependencies to avoid future
breakages.</li>
</ul>
<h2 id="version-14-1-2-2012-01-09"><a name="version-14-1-2-2012-01-09" href="#version-14-1-2-2012-01-09" class="md2man-permalink" title="permalink"></a>Version 14.1.2 (2012-01-09)</h2><h3 id="minor-18"><a name="minor-18" href="#minor-18" class="md2man-permalink" title="permalink"></a>Minor:</h3>
<ul>
<li>Don't consider partial test file pass as full pass.</li>
</ul>
-<h3 id="other-20"><a name="other-20" href="#other-20" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-21"><a name="other-21" href="#other-21" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li>Upgrade to binman 3 for better bundler support.</li>
</ul>
-<h2 id="version-14-1-1-2011-12-07"><a name="version-14-1-1-2011-12-07" href="#version-14-1-1-2011-12-07" class="md2man-permalink" title="permalink"></a>Version 14.1.1 (2011-12-07)</h2><h3 id="patch-23"><a name="patch-23" href="#patch-23" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-14-1-1-2011-12-07"><a name="version-14-1-1-2011-12-07" href="#version-14-1-1-2011-12-07" class="md2man-permalink" title="permalink"></a>Version 14.1.1 (2011-12-07)</h2><h3 id="patch-24"><a name="patch-24" href="#patch-24" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Do not fail when given test file no longer exists.</p></li>
<li><p>Make xUnit <code>--name</code> option regexp case-insensitive.</p></li>
<li><p>RSpec does not accept regexp for <code>--example</code> option;
see <a href="https://github.com/rspec/rspec-core/issues/445">https://github.com/rspec/rspec-core/issues/445</a>
and <a href="https://github.com/dchelimsky/rspec/issues/44">https://github.com/dchelimsky/rspec/issues/44</a></p></li>
<li><p>Ruby 187 does not have Symbol#upcase() method.</p></li>
</ul>
-<h3 id="other-21"><a name="other-21" href="#other-21" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-22"><a name="other-22" href="#other-22" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>README: add another SQLite3 error to known issues.
Thanks to Luke Wendling for contributing this patch.</p></li>
<li><p>README: add a section explaining usage and theory.</p></li>
<li><p>README: show example earlier in factory_girl tip.</p></li>
@@ -568,44 +582,44 @@
<li><p>Add embedded BinMan manual pages to bin scripts. All TestR scripts now
have a <code>--help</code> option which displays their UNIX manual page. Try it!</p><p>The single-line JSON message protocol used by these scripts is now
documented in their manual pages, so you should have everything you
need to create <em>your own custom user interface to TestR</em> if you wish! :-)</p></li>
</ul>
-<h3 id="patch-24"><a name="patch-24" href="#patch-24" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-25"><a name="patch-25" href="#patch-25" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li>SIGCHLD does not awaken main thread in Ruby 1.9.3p0.</li>
</ul>
-<h3 id="other-22"><a name="other-22" href="#other-22" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-23"><a name="other-23" href="#other-23" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>Simplify <a class="md2man-reference">watch(1)</a> <a class="md2man-reference">ps(1)</a> process title monitoring.</p></li>
<li><p>Testr: tell user to press ENTER after command key.</p></li>
<li><p>README: add tip on loading factory_girl factories.</p></li>
</ul>
-<h2 id="version-14-0-3-2011-10-11"><a name="version-14-0-3-2011-10-11" href="#version-14-0-3-2011-10-11" class="md2man-permalink" title="permalink"></a>Version 14.0.3 (2011-10-11)</h2><h3 id="patch-25"><a name="patch-25" href="#patch-25" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-14-0-3-2011-10-11"><a name="version-14-0-3-2011-10-11" href="#version-14-0-3-2011-10-11" class="md2man-permalink" title="permalink"></a>Version 14.0.3 (2011-10-11)</h2><h3 id="patch-26"><a name="patch-26" href="#patch-26" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li>Forgot to migrate the <code>testr/config/rails</code> configuration helper to use the
new TestR configuration parameter names.</li>
</ul>
-<h2 id="version-14-0-2-2011-10-11"><a name="version-14-0-2-2011-10-11" href="#version-14-0-2-2011-10-11" class="md2man-permalink" title="permalink"></a>Version 14.0.2 (2011-10-11)</h2><h3 id="patch-26"><a name="patch-26" href="#patch-26" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-14-0-2-2011-10-11"><a name="version-14-0-2-2011-10-11" href="#version-14-0-2-2011-10-11" class="md2man-permalink" title="permalink"></a>Version 14.0.2 (2011-10-11)</h2><h3 id="patch-27"><a name="patch-27" href="#patch-27" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Fix updating passed/failed test files bookkeeping. Once a test file
failed, it was (incorrectly) always considered failed, even if it passed
later on.</p></li>
<li><p>Do not requeue test files that are waiting to run.</p></li>
</ul>
-<h3 id="other-23"><a name="other-23" href="#other-23" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-24"><a name="other-24" href="#other-24" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li>Rename <code>*.md</code> files to <code>*.markdown</code> to avoid ambiguity.</li>
</ul>
-<h2 id="version-14-0-1-2011-10-10"><a name="version-14-0-1-2011-10-10" href="#version-14-0-1-2011-10-10" class="md2man-permalink" title="permalink"></a>Version 14.0.1 (2011-10-10)</h2><h3 id="patch-27"><a name="patch-27" href="#patch-27" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-14-0-1-2011-10-10"><a name="version-14-0-1-2011-10-10" href="#version-14-0-1-2011-10-10" class="md2man-permalink" title="permalink"></a>Version 14.0.1 (2011-10-10)</h2><h3 id="patch-28"><a name="patch-28" href="#patch-28" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Use blue/red for pass/fail instead of green/red to accommodate the color
blind.</p></li>
<li><p>Incorrect test name regexp was passed down to Test::Unit. This broke
focused testing, where only changed tests in a changed test file are run.</p></li>
</ul>
-<h3 id="other-24"><a name="other-24" href="#other-24" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-25"><a name="other-25" href="#other-25" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li>Make <code>testr-master</code> wait for killed worker processes before exiting.</li>
</ul>
<h2 id="version-14-0-0-2011-10-09"><a name="version-14-0-0-2011-10-09" href="#version-14-0-0-2011-10-09" class="md2man-permalink" title="permalink"></a>Version 14.0.0 (2011-10-09)</h2><h3 id="major-5"><a name="major-5" href="#major-5" class="md2man-permalink" title="permalink"></a>Major:</h3>
<ul>
@@ -633,18 +647,18 @@
<code>max_forked_workers</code> configuration parameter.</p></li>
<li><p>Added <code>overhead_load_paths</code>, <code>all_test_file_globs</code>, and
<code>before_fork_hooks</code> configuration parameters.</p></li>
<li><p>Added ability to re-run passed and failed tests in the <code>testr</code> script.</p></li>
</ul>
-<h3 id="other-25"><a name="other-25" href="#other-25" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-26"><a name="other-26" href="#other-26" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>The monolithic <code>test-loop</code> script has been replaced by several smaller
ones that communicate with each other using single-line JSON messages via
their standard input & output streams. See "Architecture" in the README.</p></li>
<li><p>Now using Bundler to manage development dependencies and gem packaging.</p></li>
</ul>
-<h2 id="version-13-0-1-2011-09-21"><a name="version-13-0-1-2011-09-21" href="#version-13-0-1-2011-09-21" class="md2man-permalink" title="permalink"></a>Version 13.0.1 (2011-09-21)</h2><h3 id="other-26"><a name="other-26" href="#other-26" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h2 id="version-13-0-1-2011-09-21"><a name="version-13-0-1-2011-09-21" href="#version-13-0-1-2011-09-21" class="md2man-permalink" title="permalink"></a>Version 13.0.1 (2011-09-21)</h2><h3 id="other-27"><a name="other-27" href="#other-27" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>Forgot to include <code>test/loop/coco</code> preset in gem package.</p></li>
<li><p>Forgot to mention <code>test/loop/parallel_tests</code> preset in README.</p></li>
</ul>
<h2 id="version-13-0-0-2011-08-24"><a name="version-13-0-0-2011-08-24" href="#version-13-0-0-2011-08-24" class="md2man-permalink" title="permalink"></a>Version 13.0.0 (2011-08-24)</h2><h3 id="major-6"><a name="major-6" href="#major-6" class="md2man-permalink" title="permalink"></a>Major:</h3>
@@ -664,22 +678,22 @@
gem. (Corné Verbruggen)</p></li>
<li><p>Assign rotating sequence numbers to workers so that you can handle parallel
processes like connecting to separate databases better. (Corné
Verbruggen)</p></li>
</ul>
-<h3 id="other-27"><a name="other-27" href="#other-27" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-28"><a name="other-28" href="#other-28" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>README: move configuration presets above options.</p></li>
<li><p>Eliminate 1 SLOC: .rb extension used in file glob.</p></li>
<li><p>Turn off executable bit on loop.rb file mode.</p></li>
<li><p>Pass child ENV directly to exec() for atomicity.</p></li>
</ul>
-<h2 id="version-12-3-1-2011-07-19"><a name="version-12-3-1-2011-07-19" href="#version-12-3-1-2011-07-19" class="md2man-permalink" title="permalink"></a>Version 12.3.1 (2011-07-19)</h2><h3 id="patch-28"><a name="patch-28" href="#patch-28" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-12-3-1-2011-07-19"><a name="version-12-3-1-2011-07-19" href="#version-12-3-1-2011-07-19" class="md2man-permalink" title="permalink"></a>Version 12.3.1 (2011-07-19)</h2><h3 id="patch-29"><a name="patch-29" href="#patch-29" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li>Binary data could not be stored in environment variable values.</li>
</ul>
-<h3 id="other-28"><a name="other-28" href="#other-28" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-29"><a name="other-29" href="#other-29" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li>Forgot to add Jacob Helwig to the gemspec's authors list.</li>
</ul>
<h2 id="version-12-3-0-2011-07-19"><a name="version-12-3-0-2011-07-19" href="#version-12-3-0-2011-07-19" class="md2man-permalink" title="permalink"></a>Version 12.3.0 (2011-07-19)</h2><h3 id="minor-22"><a name="minor-22" href="#minor-22" class="md2man-permalink" title="permalink"></a>Minor:</h3>
<ul>
@@ -687,11 +701,11 @@
the number of test files run concurrently (default 4). Otherwise, with
large test suites, we could end up swamping the machine running the tests
by forking hundreds of test files at once. (Jacob Helwig)</p></li>
<li><p>Rails: add matcher for <code>test/factories/*_factory.rb</code>.</p></li>
</ul>
-<h3 id="other-29"><a name="other-29" href="#other-29" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-30"><a name="other-30" href="#other-30" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>ENV returns a Hash with duplicate/frozen keys/values. (Brian D. Burns)</p></li>
<li><p>Use Marshal to propagate resume_files to reabsorb.</p></li>
<li><p>Store test_files in a Set instead of an Array.</p></li>
</ul>
@@ -706,19 +720,19 @@
<h2 id="version-12-1-0-2011-04-29"><a name="version-12-1-0-2011-04-29" href="#version-12-1-0-2011-04-29" class="md2man-permalink" title="permalink"></a>Version 12.1.0 (2011-04-29)</h2><h3 id="minor-23"><a name="minor-23" href="#minor-23" class="md2man-permalink" title="permalink"></a>Minor:</h3>
<ul>
<li>Add <code>Test::Loop.delay_per_iteration</code> parameter to control the number of
seconds (or fractions thereof) to sleep in between test-loop iterations.</li>
</ul>
-<h2 id="version-12-0-4-2011-04-29"><a name="version-12-0-4-2011-04-29" href="#version-12-0-4-2011-04-29" class="md2man-permalink" title="permalink"></a>Version 12.0.4 (2011-04-29)</h2><h3 id="patch-29"><a name="patch-29" href="#patch-29" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-12-0-4-2011-04-29"><a name="version-12-0-4-2011-04-29" href="#version-12-0-4-2011-04-29" class="md2man-permalink" title="permalink"></a>Version 12.0.4 (2011-04-29)</h2><h3 id="patch-30"><a name="patch-30" href="#patch-30" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Reabsorb overhead when user's configuration file changes. (Brian D. Burns
and Daniel Pittman)</p></li>
<li><p><code>Thread.new { system() }</code> really is backgrounded so <code>fork { system() }</code> is
not necessary! <a href="https://github.com/sunaku/test-loop/issues/5">This issue</a>
was solved by upgrading to the newer 2.6.38.4-1 Linux kernel on my system.</p></li>
</ul>
-<h2 id="version-12-0-3-2011-04-25"><a name="version-12-0-3-2011-04-25" href="#version-12-0-3-2011-04-25" class="md2man-permalink" title="permalink"></a>Version 12.0.3 (2011-04-25)</h2><h3 id="patch-30"><a name="patch-30" href="#patch-30" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-12-0-3-2011-04-25"><a name="version-12-0-3-2011-04-25" href="#version-12-0-3-2011-04-25" class="md2man-permalink" title="permalink"></a>Version 12.0.3 (2011-04-25)</h2><h3 id="patch-31"><a name="patch-31" href="#patch-31" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Fix SIGCHLD handling and test completion reporting (Daniel Pittman).</p><p>We need to reap all ready children in SIGCHLD, not just the first, and
should not be reporting completion in the signal handler.</p><p>On a fast machine, or where there is a slow hook executed at the
completion of a test run, more than one test child can terminate before
the SIGCHLD handler is invoked, or while it is running.</p><p>In that event we will only get another SIGCHLD when a new child
@@ -747,30 +761,30 @@
that would also stop you from doing clever things." ~Doug Gwyn</p></blockquote></li>
<li><p><code>Thread.new { system() }</code> is not really backgrounded so <code>fork()</code> instead!
Many thanks to Brian D. Burns and Daniel Pittman for helping solve <a href="https://github.com/sunaku/test-loop/issues/5">this
issue</a>.</p></li>
</ul>
-<h2 id="version-12-0-2-2011-04-21"><a name="version-12-0-2-2011-04-21" href="#version-12-0-2-2011-04-21" class="md2man-permalink" title="permalink"></a>Version 12.0.2 (2011-04-21)</h2><h3 id="patch-31"><a name="patch-31" href="#patch-31" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-12-0-2-2011-04-21"><a name="version-12-0-2-2011-04-21" href="#version-12-0-2-2011-04-21" class="md2man-permalink" title="permalink"></a>Version 12.0.2 (2011-04-21)</h2><h3 id="patch-32"><a name="patch-32" href="#patch-32" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Consider DB schema dump file as overhead in Rails.</p></li>
<li><p>Do not consider test factories as overhead in Rails.</p></li>
<li><p>Run test files when test factory files change in Rails.</p></li>
</ul>
-<h3 id="other-30"><a name="other-30" href="#other-30" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-31"><a name="other-31" href="#other-31" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>Detach worker from master's terminal device sooner.</p></li>
<li><p>All required signals must be present in irb check.</p></li>
<li><p>Prevent <a class="md2man-reference">ps(1)</a> from truncating lines to $TERM width.</p></li>
<li><p>Retain <a class="md2man-reference">ps(1)</a> column header in watch command output.</p></li>
<li><p>Begin parameter descriptions with the noun itself.</p></li>
</ul>
-<h2 id="version-12-0-1-2011-04-20"><a name="version-12-0-1-2011-04-20" href="#version-12-0-1-2011-04-20" class="md2man-permalink" title="permalink"></a>Version 12.0.1 (2011-04-20)</h2><h3 id="patch-32"><a name="patch-32" href="#patch-32" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-12-0-1-2011-04-20"><a name="version-12-0-1-2011-04-20" href="#version-12-0-1-2011-04-20" class="md2man-permalink" title="permalink"></a>Version 12.0.1 (2011-04-20)</h2><h3 id="patch-33"><a name="patch-33" href="#patch-33" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Restore support for Ruby 1.8.7.</p></li>
<li><p>Allow user's test execution overhead to fork.</p></li>
</ul>
-<h3 id="other-31"><a name="other-31" href="#other-31" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-32"><a name="other-32" href="#other-32" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>Freeze master's ENV properly; keep resume key.</p></li>
<li><p>Remove completed test from running list sooner.</p></li>
<li><p>Add instructions to check for POSIX prerequisites.</p></li>
<li><p>Support multiple test-loop instances in watch command.</p></li>
@@ -782,19 +796,19 @@
caching) after the overhead has been loaded, and by then it's too late:
your models are already loaded & cached by the Rails environment.</p></li>
<li><p>Your tests can no longer read from the user's terminal (master's STDIN);
instead they will read from an empty stream (the reading end of IO.popen).</p></li>
</ul>
-<h3 id="patch-33"><a name="patch-33" href="#patch-33" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-34"><a name="patch-34" href="#patch-34" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Replace threads with SIGCHLD for reporting test results.</p><p>This fixes deadlock errors that sometimes occurred when the user's chosen
test library tried to print something to STDOUT/STDERR (even though those
streams were redirected to a log file in the worker process).</p><p>Thanks to Brian D. Burns for suggesting and verifying that the use of
threads to monitor workers was the culprit behind the deadlocks errors.</p></li>
<li><p>Ctrl-C did not raise Interrupt in my Rails 3 test suite.</p></li>
</ul>
-<h3 id="other-32"><a name="other-32" href="#other-32" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-33"><a name="other-33" href="#other-33" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>Ensure a clean ENV when reabsorbing overhead. Environment variables set
by your test execution overhead are not propagated to subsequent
reabsorptions. (Brian D. Burns)</p></li>
<li><p>Call <code>setsid()</code> to detach worker from master's terminal.
@@ -806,11 +820,11 @@
<li><p>Add LICENSE file to gem package.</p></li>
<li><p>Add prerequisites section about POSIX environment.</p></li>
<li><p>Add tip about annihilating test-loop processes.</p></li>
<li><p>Fix markdown formatting.</p></li>
</ul>
-<h2 id="version-11-0-1-2011-04-14"><a name="version-11-0-1-2011-04-14" href="#version-11-0-1-2011-04-14" class="md2man-permalink" title="permalink"></a>Version 11.0.1 (2011-04-14)</h2><h3 id="patch-34"><a name="patch-34" href="#patch-34" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-11-0-1-2011-04-14"><a name="version-11-0-1-2011-04-14" href="#version-11-0-1-2011-04-14" class="md2man-permalink" title="permalink"></a>Version 11.0.1 (2011-04-14)</h2><h3 id="patch-35"><a name="patch-35" href="#patch-35" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li>Only attempt to define Railtie if the current Rails version supports it.</li>
</ul>
<h2 id="version-11-0-0-2011-04-14"><a name="version-11-0-0-2011-04-14" href="#version-11-0-0-2011-04-14" class="md2man-permalink" title="permalink"></a>Version 11.0.0 (2011-04-14)</h2><h3 id="major-8"><a name="major-8" href="#major-8" class="md2man-permalink" title="permalink"></a>Major:</h3>
<ul>
@@ -821,21 +835,21 @@
<ul>
<li>If you are using Rails 3, test-loop will automatically set
<code>config.cache_classes = false</code> for your test environment. (Brian D.
Burns)</li>
</ul>
-<h3 id="patch-35"><a name="patch-35" href="#patch-35" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-36"><a name="patch-36" href="#patch-36" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Avoid deadlock errors when printing output from Test::Unit and MiniTest.
(Brian D. Burns)</p>
<pre><code>`write': deadlock detected (fatal)
</code></pre></li>
<li><p>Signaled worker termination is neither pass nor fail.
Do not treat it as a failure by printing the log file.</p></li>
<li><p>Ignore SIGINT in workers; only master must honor it.</p></li>
</ul>
-<h2 id="version-10-0-1-2011-04-08"><a name="version-10-0-1-2011-04-08" href="#version-10-0-1-2011-04-08" class="md2man-permalink" title="permalink"></a>Version 10.0.1 (2011-04-08)</h2><h3 id="patch-36"><a name="patch-36" href="#patch-36" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h2 id="version-10-0-1-2011-04-08"><a name="version-10-0-1-2011-04-08" href="#version-10-0-1-2011-04-08" class="md2man-permalink" title="permalink"></a>Version 10.0.1 (2011-04-08)</h2><h3 id="patch-37"><a name="patch-37" href="#patch-37" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p>Workers must ignore SIGTSTP, otherwise master waits forever before
exiting.</p></li>
<li><p>Unregister trap in workers upon first reception instead of racing to
unregister the trap handlers inherited from the master process.</p></li>
@@ -856,17 +870,17 @@
searchability. The monitoring command in the README is now simplified to
the following:</p>
<pre><code>watch 'ps xf | grep test-loop | sed 1,3d'
</code></pre></li>
</ul>
-<h3 id="patch-37"><a name="patch-37" href="#patch-37" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-38"><a name="patch-38" href="#patch-38" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li>Skip <code>at_exit()</code> when exiting master process. This prevents an empty test
from being run when exiting the loop after having processed a test/spec
helper that loads the Test::Unit library. (Brian D. Burns)</li>
</ul>
-<h3 id="other-33"><a name="other-33" href="#other-33" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-34"><a name="other-34" href="#other-34" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>Use throw/catch to break loop instead of raising SystemExit exception.</p></li>
<li><p>Trap SIGTERM with IGNORE/DEFAULT instead of using a closure in master.</p></li>
<li><p>Unregister master's custom signal handlers inside worker processes.</p></li>
<li><p>Separate configuration parameters into subsections in README.</p></li>
@@ -882,11 +896,11 @@
<li><p>Notify user when running all tests and when exiting. (Brian D. Burns)</p></li>
<li><p>Notify user when overhead changes instead of when restarting the loop.</p></li>
<li><p>Use ANSI clear line command to erase control-key combinations outputted by
shells such as BASH and ZSH in test-loop's output. (Brian D. Burns)</p></li>
</ul>
-<h3 id="patch-38"><a name="patch-38" href="#patch-38" class="md2man-permalink" title="permalink"></a>Patch:</h3>
+<h3 id="patch-39"><a name="patch-39" href="#patch-39" class="md2man-permalink" title="permalink"></a>Patch:</h3>
<ul>
<li><p><code>@last_ran_at</code> was being set during every iteration of the loop. This is
problematic when Ruby's <code>Time.now</code> is more precise than your filesystem's
modification timestamp. For example, in the ext3 filesystem under Linux,
file modification timestamps have a precision of 1 second. (Brian D.
@@ -894,10 +908,10 @@
<li><p>Exit gently on SIGINT by sending SIGTERM to all worker processes and then
running waitall(), instead of sending SIGKILL to the entire process group.
As a result, test-loop no longer exits with a non-zero status upon SIGINT.</p></li>
<li><p>Remove 'ansi' gem dependency. (Brian D. Burns)</p></li>
</ul>
-<h3 id="other-34"><a name="other-34" href="#other-34" class="md2man-permalink" title="permalink"></a>Other:</h3>
+<h3 id="other-35"><a name="other-35" href="#other-35" class="md2man-permalink" title="permalink"></a>Other:</h3>
<ul>
<li><p>Add tip on deleting logs for passing tests. (Brian D. Burns)</p></li>
<li><p>Add tip on monitoring test processes with <a class="md2man-reference">watch(1)</a> in README.</p></li>
</ul>
<h2 id="version-9-2-0-2011-03-28"><a name="version-9-2-0-2011-03-28" href="#version-9-2-0-2011-03-28" class="md2man-permalink" title="permalink"></a>Version 9.2.0 (2011-03-28)</h2>