tork 19.7.0 → 19.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 29fe9cacab3befd580fd2fa2a41fb37fea5e8e0d
4
- data.tar.gz: b14440b66ef448d1a669551a9904c209fd9ec552
3
+ metadata.gz: c9e3bb898a427cc4522c4fb0c32f465f950d3bf4
4
+ data.tar.gz: e3a9f195320cae504b437fd8ce09ce850ac6dcc7
5
5
  SHA512:
6
- metadata.gz: 2eb28244d74b6645156865742acdd87d4e0c9e62f511a00057536cc2da389fa46a59323b7f725b81e0690eda45dcf86ce306f1b3383b215c130bb4fcc6d897a3
7
- data.tar.gz: 352d1b035514155effe92269eb9caa2bf0467ab5108b7521593d55df11992a4e33954785c8bbab277c852aa9b3d6b640e0a69485008fc7836c35b21ed1b7ff30
6
+ metadata.gz: a66757f50f0d2e2f7218243761dd5fdcd94fb4276e9db137e78d68d7546647555fe7ea88b1dc218b05b23b123fed680ceaf3a7cbe9fbc266720bceab95215dfb
7
+ data.tar.gz: c0f468e29b6cf7e51d6a98f08f27ab1153cc02ecc85ed4a7977059b15c2ae92801a1984f290c3dd5484a47db6044ebc7606e0c48bb20c095bd317abd5a9e8f34
data/README.md CHANGED
@@ -5,6 +5,11 @@
5
5
  \__/\____/_/ /_/|_\
6
6
  >>>------>
7
7
 
8
+ * Package: <https://rubygems.org/gems/tork>
9
+ * Manuals: <https://sunaku.github.io/tork>
10
+ * Sources: <https://github.com/sunaku/tork>
11
+ * Support: <https://github.com/sunaku/tork/issues>
12
+
8
13
  # _Test with fork_
9
14
 
10
15
  Tork runs your tests as they change, in parallel:
@@ -133,6 +138,17 @@ You can monitor your test processes from another terminal:
133
138
 
134
139
  watch 'pgrep -f ^tork | xargs -r ps uf'
135
140
 
141
+ ### With Bundler
142
+
143
+ The `bundler` configuration helper loads a Bundler bundle into tork-master(1).
144
+ The `default` configuration helper does this for you automatically if there is
145
+ a `Gemfile` or `Gemfile.lock` file present in your current working directory.
146
+
147
+ As a result, you don't need to add Tork to your `Gemfile` _just_ to run tests!
148
+ Instead, installing Tork as a Ruby gem _outside_ of your bundle is sufficient.
149
+
150
+ Try it: go into any bundled application and call `tork` to run its test suite.
151
+
136
152
  ### With MiniTest
137
153
 
138
154
  MiniTest 1.3.2 and newer contain a bug where `minitest/autorun` won't run any
data/VERSION.md CHANGED
@@ -1,3 +1,42 @@
1
+ ## Version 19.8.0 (2014-06-23)
2
+
3
+ ### Minor:
4
+
5
+ * Add `bundler` configuration helper to load a bundle into tork-master(1).
6
+
7
+ This lets you run Tork inside any application that uses Bundler without
8
+ having to first add Tork to its `Gemfile` and then `bundle install` it.
9
+ In fact, installing the Tork gem _outside_ of the bundle is sufficient.
10
+
11
+ Try it: go into a bundled application and call `tork` to run its tests!
12
+
13
+ ### Patch:
14
+
15
+ * Server: fix crash when Fixnum is sent as a message.
16
+
17
+ lib/tork/server.rb:45:in `block (2 levels) in loop':
18
+ undefined method `empty?' for 6:Fixnum (NoMethodError)
19
+
20
+ lib/tork/cliapp.rb:59:in `recv':
21
+ undefined method `lstrip' for 6:Fixnum (NoMethodError)
22
+
23
+ Because JSON.load() and JSON.parse() are different:
24
+
25
+ $ irb -r json
26
+ >> JSON.load '6'
27
+ 6
28
+ >> JSON.parse '6'
29
+ JSON::ParserError: A JSON text must at least contain two octets!
30
+ from /usr/lib/ruby/2.1.0/json/common.rb:155:in `initialize'
31
+ from /usr/lib/ruby/2.1.0/json/common.rb:155:in `new'
32
+ from /usr/lib/ruby/2.1.0/json/common.rb:155:in `parse'
33
+ from (irb):2
34
+ from /usr/bin/irb:11:in `<main>'
35
+
36
+ ### Other:
37
+
38
+ * Upgrade to md2man 3.0 for improved HTML manuals.
39
+
1
40
  ## Version 19.7.0 (2014-03-04)
2
41
 
3
42
  This release automatically re-runs failed tests after reabsorbing overhead.
data/bin/tork CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  =begin =======================================================================
3
3
 
4
- # TORK 1 2014-03-04 19.7.0
4
+ # TORK 1 2014-06-23 19.8.0
5
5
 
6
6
  ## NAME
7
7
 
@@ -61,6 +61,7 @@ This program can be controlled remotely by multiple tork-remote(1) instances.
61
61
  > current working directory appears to utilize what they configure.
62
62
  > See below for complete descriptions of these configuration helpers.
63
63
  >
64
+ > * bundler
64
65
  > * rails
65
66
  > * devise
66
67
  > * test
@@ -98,6 +99,9 @@ This program can be controlled remotely by multiple tork-remote(1) instances.
98
99
  > `cucumber`
99
100
  > Supports the [Cucumber] testing framework.
100
101
  >
102
+ > `bundler`
103
+ > Supports the [Bundler] dependency framework.
104
+ >
101
105
  > `rails`
102
106
  > Supports the [Ruby on Rails] web framework.
103
107
  >
@@ -121,6 +125,7 @@ tork-runner(1), tork-driver(1), tork-master(1)
121
125
  [Cucumber]: https://cukes.info
122
126
  [RSpec]: http://rspec.info
123
127
  [Devise]: https://github.com/plataformatec/devise
128
+ [Bundler]: http://bundler.io
124
129
 
125
130
  =end =========================================================================
126
131
 
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  =begin =======================================================================
3
3
 
4
- # TORK-DRIVER 1 2014-03-04 19.7.0
4
+ # TORK-DRIVER 1 2014-06-23 19.8.0
5
5
 
6
6
  ## NAME
7
7
 
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  =begin =======================================================================
3
3
 
4
- # TORK-ENGINE 1 2014-03-04 19.7.0
4
+ # TORK-ENGINE 1 2014-06-23 19.8.0
5
5
 
6
6
  ## NAME
7
7
 
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  =begin =======================================================================
3
3
 
4
- # TORK-HERALD 1 2014-03-04 19.7.0
4
+ # TORK-HERALD 1 2014-06-23 19.8.0
5
5
 
6
6
  ## NAME
7
7
 
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  =begin =======================================================================
3
3
 
4
- # TORK-MASTER 1 2014-03-04 19.7.0
4
+ # TORK-MASTER 1 2014-06-23 19.8.0
5
5
 
6
6
  ## NAME
7
7
 
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  =begin =======================================================================
3
3
 
4
- # TORK-NOTIFY 1 2014-03-04 19.7.0
4
+ # TORK-NOTIFY 1 2014-06-23 19.8.0
5
5
 
6
6
  ## NAME
7
7
 
@@ -56,7 +56,7 @@ begin
56
56
  while input = socket.gets
57
57
  stream =
58
58
  begin
59
- JSON.load input
59
+ JSON.parse input
60
60
  STDOUT
61
61
  rescue JSON::ParserError
62
62
  STDERR
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  =begin =======================================================================
3
3
 
4
- # TORK-RUNNER 1 2014-03-04 19.7.0
4
+ # TORK-RUNNER 1 2014-06-23 19.8.0
5
5
 
6
6
  ## NAME
7
7
 
@@ -77,7 +77,7 @@ IO.popen('tork-driver', 'w+') do |driver|
77
77
  # track test runs & exit when finished
78
78
  tested, passed, failed = 0, 0, []
79
79
  while line = driver.gets
80
- response = JSON.load(line)
80
+ response = JSON.parse(line)
81
81
  case response.first.to_sym
82
82
  when :test then tested += 1
83
83
  when :pass then passed += 1
@@ -0,0 +1,2 @@
1
+ require 'rubygems'
2
+ require 'bundler/setup'
@@ -1,3 +1,4 @@
1
+ ENV['TORK_CONFIGS'] += ':bundler' if Dir['Gemfile{,.lock}'].any?
1
2
  ENV['TORK_CONFIGS'] += ':rails' if Dir['script/{rails,console}'].any?
2
3
  ENV['TORK_CONFIGS'] += ':devise' if File.exist? 'config/initializers/devise.rb'
3
4
  ENV['TORK_CONFIGS'] += ':test' if File.directory? 'test'
@@ -66,7 +66,7 @@ protected
66
66
 
67
67
  # Returns nil if the message received was not meant for processing.
68
68
  def hear sender, message
69
- JSON.load message
69
+ JSON.parse message
70
70
  rescue JSON::ParserError => error
71
71
  if @clients.include? sender
72
72
  # accept non-JSON "command lines" from clients
@@ -1,3 +1,3 @@
1
1
  module Tork
2
- VERSION = "19.7.0"
2
+ VERSION = "19.8.0"
3
3
  end
@@ -2,7 +2,7 @@
2
2
  <html>
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
- <meta name="generator" content="md2man 2.0.2 https://github.com/sunaku/md2man" />
5
+ <meta name="generator" content="md2man 3.0.0 https://github.com/sunaku/md2man" />
6
6
  <title>man/index</title>
7
7
  <link rel="stylesheet" href="style.css"/>
8
8
  <!--[if lt IE 9]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
@@ -2,7 +2,7 @@
2
2
  <html>
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
- <meta name="generator" content="md2man 2.0.2 https://github.com/sunaku/md2man" />
5
+ <meta name="generator" content="md2man 3.0.0 https://github.com/sunaku/md2man" />
6
6
  <title>README</title>
7
7
  <link rel="stylesheet" href="../style.css"/>
8
8
  <!--[if lt IE 9]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
@@ -12,15 +12,22 @@
12
12
  _ __/ __ \ __/ /_/
13
13
  / /_/ /_/ / / / ,\
14
14
  \__/\____/_/ /_/|_\
15
- &gt;&gt;&gt;------>
15
+ &gt;&gt;&gt;------&gt;
16
16
  </code></pre>
17
- <h1 id="Test-with-fork"><em>Test with fork</em></h1><p>Tork runs your tests as they change, in parallel:</p>
17
+
18
+ <ul>
19
+ <li>Package: <a href="https://rubygems.org/gems/tork">https://rubygems.org/gems/tork</a></li>
20
+ <li>Manuals: <a href="https://sunaku.github.io/tork">https://sunaku.github.io/tork</a></li>
21
+ <li>Sources: <a href="https://github.com/sunaku/tork">https://github.com/sunaku/tork</a></li>
22
+ <li>Support: <a href="https://github.com/sunaku/tork/issues">https://github.com/sunaku/tork/issues</a></li>
23
+ </ul>
24
+ <h1 id="test-with-fork"><a name="test-with-fork" href="#test-with-fork" class="md2man-permalink" title="permalink"></a><span class="md2man-title"><em>Test</span> <span class="md2man-section">with</span> <span class="md2man-date">fork</em></span></h1><p>Tork runs your tests as they change, in parallel:</p>
18
25
  <ol>
19
26
  <li><p>Absorbs test execution overhead into a master process.</p></li>
20
27
  <li><p>Forks to inherit overhead and run test files in parallel.</p></li>
21
28
  <li><p>Avoids running unchanged tests inside changed test files.</p></li>
22
29
  </ol>
23
- <h2 id="Features">Features</h2>
30
+ <h2 id="features"><a name="features" href="#features" class="md2man-permalink" title="permalink"></a>Features</h2>
24
31
  <ul>
25
32
  <li><p>No configuration necessary: simply run <code>tork</code> to start testing <em>now!</em></p></li>
26
33
  <li><p>Runs test files in parallel using fork for multi-core/CPU utilization.</p></li>
@@ -32,20 +39,20 @@ your application&#39;s <code>test/test_helper.rb</code> or <code>spec/spec_helpe
32
39
  <li><p>Logs the output from your tests into separate files: one log per test.</p></li>
33
40
  <li><p>Configurable through Ruby scripts in your current working directory.</p></li>
34
41
  <li><p>You can override the modular <code>tork*</code> programs with your own in $PATH.</p></li>
35
- <li><p>You can remotely control other <code>tork*</code> programs using <a class="md2man-xref" href="../man1/tork-remote.1.html">tork-remote(1)</a>.</p></li>
42
+ <li><p>You can remotely control other <code>tork*</code> programs using <a class="md2man-reference" href="../man1/tork-remote.1.html">tork-remote(1)</a>.</p></li>
36
43
  </ul>
37
- <h3 id="Architecture">Architecture</h3><p>Following UNIX philosophy, Tork is composed of simple text-based programs that
44
+ <h3 id="architecture"><a name="architecture" href="#architecture" class="md2man-permalink" title="permalink"></a>Architecture</h3><p>Following UNIX philosophy, Tork is composed of simple text-based programs that
38
45
  <em>do one thing well</em>. As a result, you can even create your own user interface
39
- for Tork by wrapping the <a class="md2man-xref" href="../man1/tork-driver.1.html">tork-driver(1)</a> program appropriately!</p>
46
+ for Tork by wrapping the <a class="md2man-reference" href="../man1/tork-driver.1.html">tork-driver(1)</a> program appropriately!</p>
40
47
  <ul>
41
- <li><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a> is an interactive command-line user interface for <a class="md2man-xref" href="../man1/tork-driver.1.html">tork-driver(1)</a></li>
42
- <li><a class="md2man-xref" href="../man1/tork-runner.1.html">tork-runner(1)</a> runs your test suite once, non-interactively, and then exits</li>
43
- <li><a class="md2man-xref" href="../man1/tork-herald.1.html">tork-herald(1)</a> monitors current directory tree and reports changed files</li>
44
- <li><a class="md2man-xref" href="../man1/tork-driver.1.html">tork-driver(1)</a> drives the engine according to the herald&#39;s observations</li>
45
- <li><a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a> tells master to run tests and keeps track of test results</li>
46
- <li><a class="md2man-xref" href="../man1/tork-master.1.html">tork-master(1)</a> absorbs test execution overhead and forks to run your tests</li>
47
- <li><a class="md2man-xref" href="../man1/tork-remote.1.html">tork-remote(1)</a> remotely controls any Tork program running in the same <code>pwd</code></li>
48
- <li><a class="md2man-xref" href="../man1/tork-notify.1.html">tork-notify(1)</a> notifies you when previously passing tests fail or vice versa</li>
48
+ <li><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a> is an interactive command-line user interface for <a class="md2man-reference" href="../man1/tork-driver.1.html">tork-driver(1)</a></li>
49
+ <li><a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> runs your test suite once, non-interactively, and then exits</li>
50
+ <li><a class="md2man-reference" href="../man1/tork-herald.1.html">tork-herald(1)</a> monitors current directory tree and reports changed files</li>
51
+ <li><a class="md2man-reference" href="../man1/tork-driver.1.html">tork-driver(1)</a> drives the engine according to the herald&#39;s observations</li>
52
+ <li><a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a> tells master to run tests and keeps track of test results</li>
53
+ <li><a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a> absorbs test execution overhead and forks to run your tests</li>
54
+ <li><a class="md2man-reference" href="../man1/tork-remote.1.html">tork-remote(1)</a> remotely controls any Tork program running in the same <code>pwd</code></li>
55
+ <li><a class="md2man-reference" href="../man1/tork-notify.1.html">tork-notify(1)</a> notifies you when previously passing tests fail or vice versa</li>
49
56
  </ul>
50
57
  <p>When the herald observes that files in or beneath the current directory have
51
58
  been written to, it tells the driver, which then commands the master to fork a
@@ -56,14 +63,14 @@ performed <em>automatically</em>. However, to run a test file <em>manually</em>
56
63
  inside your newly saved test file have changed (using diff and regexps)
57
64
  and then attempts to run just those. To make it run <em>all</em> tests in your
58
65
  saved file, simply save the file <em>again</em> without changing it.</p></li>
59
- <li><p>Type <code>t</code> followed by a space and the file you want to run into <a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>:</p>
66
+ <li><p>Type <code>t</code> followed by a space and the file you want to run into <a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>:</p>
60
67
  <pre><code># run all of test/some_test.rb
61
68
  t test/some_test.rb
62
69
 
63
70
  # run lines 4, 33, and 21 of test/some_test.rb
64
71
  t test/some_test.rb 4 33 21
65
72
  </code></pre></li>
66
- <li><p>Send a <code>[&quot;run_test_file&quot;]</code> message to <a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a> using <a class="md2man-xref" href="../man1/tork-remote.1.html">tork-remote(1)</a>:</p>
73
+ <li><p>Send a <code>[&quot;run_test_file&quot;]</code> message to <a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a> using <a class="md2man-reference" href="../man1/tork-remote.1.html">tork-remote(1)</a>:</p>
67
74
  <pre><code># run all of test/some_test.rb
68
75
  echo run_test_file test/some_test.rb | tork-remote tork-engine
69
76
 
@@ -71,41 +78,41 @@ echo run_test_file test/some_test.rb | tork-remote tork-engine
71
78
  echo run_test_file test/some_test.rb 4 33 21 | tork-remote tork-engine
72
79
  </code></pre></li>
73
80
  </ol>
74
- <p>Alternatively, you can use <a class="md2man-xref" href="../man1/tork-runner.1.html">tork-runner(1)</a> to run your test suite in one shot
75
- and then exit with a nonzero status if tests failed, similar to <code>rake test</code>.</p><h2 id="Installation">Installation</h2>
81
+ <p>Alternatively, you can use <a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> to run your test suite in one shot
82
+ and then exit with a nonzero status if tests failed, similar to <code>rake test</code>.</p><h2 id="installation"><a name="installation" href="#installation" class="md2man-permalink" title="permalink"></a>Installation</h2>
76
83
  <pre><code>gem install tork
77
84
  </code></pre>
78
- <h3 id="Prerequisites">Prerequisites</h3>
85
+ <h3 id="prerequisites"><a name="prerequisites" href="#prerequisites" class="md2man-permalink" title="permalink"></a>Prerequisites</h3>
79
86
  <ul>
80
87
  <li><p>Ruby 1.8.7 or 1.9.3 or newer.</p></li>
81
88
  <li><p>Operating system that supports POSIX signals and the <code>fork()</code> system call.
82
- To check if your system qualifies, launch <a class="md2man-xref">irb(1)</a> and enter the following:</p>
89
+ To check if your system qualifies, launch <a class="md2man-reference">irb(1)</a> and enter the following:</p>
83
90
  <pre><code>Process.respond_to? :fork # must be true
84
91
  Signal.list.key? &#39;TERM&#39; # must be true
85
92
  Signal.list.key? &#39;KILL&#39; # must be true
86
93
  </code></pre></li>
87
- <li><p>To make the <a class="md2man-xref" href="../man1/tork-herald.1.html">tork-herald(1)</a> program&#39;s filesystem monitoring more efficient:</p>
94
+ <li><p>To make the <a class="md2man-reference" href="../man1/tork-herald.1.html">tork-herald(1)</a> program&#39;s filesystem monitoring more efficient:</p>
88
95
  <pre><code>gem install rb-inotify # linux
89
96
  gem install rb-fsevent # macosx
90
97
  </code></pre></li>
91
98
  </ul>
92
- <h3 id="Development">Development</h3>
99
+ <h3 id="development"><a name="development" href="#development" class="md2man-permalink" title="permalink"></a>Development</h3>
93
100
  <pre><code>git clone git://github.com/sunaku/tork
94
101
  cd tork
95
102
  bundle install
96
103
  bundle exec tork --help # run it directly
97
104
  bundle exec rake --tasks # packaging tasks
98
105
  </code></pre>
99
- <h2 id="Usage">Usage</h2><h3 id="At-the-command-line">At the command line</h3>
106
+ <h2 id="usage"><a name="usage" href="#usage" class="md2man-permalink" title="permalink"></a>Usage</h2><h3 id="at-the-command-line"><a name="at-the-command-line" href="#at-the-command-line" class="md2man-permalink" title="permalink"></a>At the command line</h3>
100
107
  <pre><code>tork --help
101
108
  </code></pre>
102
109
  <p>You can add line editing, history, and filename completion:</p>
103
110
  <pre><code>rlwrap -c tork
104
111
  </code></pre>
105
- <p>You can control <a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a> interactively from another terminal:</p>
112
+ <p>You can control <a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a> interactively from another terminal:</p>
106
113
  <pre><code>tork-remote tork-engine
107
114
  # type your commands here, one per line.
108
- # press Control-D to exit <a class="md2man-xref" href="../man1/tork-remote.1.html">tork-remote(1)</a>
115
+ # press Control-D to exit <a class="md2man-reference" href="../man1/tork-remote.1.html">tork-remote(1)</a>
109
116
  </code></pre>
110
117
  <p>You can also do the same non-interactively using a pipeline:</p>
111
118
  <pre><code># run lines 4, 33, and 21 of test/some_test.rb
@@ -114,15 +121,18 @@ echo run_test_file test/some_test.rb 4 33 21 | tork-remote tork-engine
114
121
  <p>You can monitor your test processes from another terminal:</p>
115
122
  <pre><code>watch &#39;pgrep -f ^tork | xargs -r ps uf&#39;
116
123
  </code></pre>
117
- <h3 id="With-MiniTest">With MiniTest</h3><p>MiniTest 1.3.2 and newer contain a bug where <code>minitest/autorun</code> won&#39;t run any
124
+ <h3 id="with-bundler"><a name="with-bundler" href="#with-bundler" class="md2man-permalink" title="permalink"></a>With Bundler</h3><p>The <code>bundler</code> configuration helper loads a Bundler bundle into <a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a>.
125
+ The <code>default</code> configuration helper does this for you automatically if there is
126
+ a <code>Gemfile</code> or <code>Gemfile.lock</code> file present in your current working directory.</p><p>As a result, you don&#39;t need to add Tork to your <code>Gemfile</code> <em>just</em> to run tests!
127
+ Instead, installing Tork as a Ruby gem <em>outside</em> of your bundle is sufficient.</p><p>Try it: go into any bundled application and call <code>tork</code> to run its test suite.</p><h3 id="with-minitest"><a name="with-minitest" href="#with-minitest" class="md2man-permalink" title="permalink"></a>With MiniTest</h3><p>MiniTest 1.3.2 and newer contain a bug where <code>minitest/autorun</code> won&#39;t run any
118
128
  tests if someone calls <code>Kernel#exit</code> explicitly or simply loads a library
119
129
  (such as RSpec) which makes the call implicitly. Use Tork 19.0.2+ to avoid
120
- this problem or <a href="https://github.com/seattlerb/minitest/pull/183/files">apply this patch to the minitest library</a> to fix the problem.</p><h3 id="With-RSpec">With RSpec</h3><p>RSpec 2.9.0 and newer contain a bug where RSpec&#39;s autorun helper won&#39;t run any
130
+ this problem or <a href="https://github.com/seattlerb/minitest/pull/183/files">apply this patch to the minitest library</a> to fix the problem.</p><h3 id="with-rspec"><a name="with-rspec" href="#with-rspec" class="md2man-permalink" title="permalink"></a>With RSpec</h3><p>RSpec 2.9.0 and newer contain a bug where RSpec&#39;s autorun helper won&#39;t run any
121
131
  specs if someone calls <code>Kernel#exit</code> explicitly or simply loads a library
122
132
  (such as Test::Unit) which makes the call implicitly. Use Tork 19.0.2+ to
123
133
  avoid this problem or <a href="https://github.com/rspec/rspec-core/pull/720/files">apply this patch to the rspec-core library</a> to fix the problem.</p><p>RSpec 2.8.0 and older contain <a href="https://github.com/sunaku/tork/issues/31">a bug</a> where a nonzero exit status (caused
124
134
  by an uncaught exception) is overridden by RSpec&#39;s <code>Kernel#at_exit</code> handler to
125
- be zero, thereby falsely indicating that a spec had passed. <a href="https://github.com/rspec/rspec-core/pull/569/files">This patch</a> fixes the problem.</p><h3 id="With-Ruby-on-Rails">With <a href="http://rubyonrails.org">Ruby on Rails</a></h3><p>For Rails 3 or newer, use the <code>rails</code> configuration helper <em>before</em> the <code>test</code>
135
+ be zero, thereby falsely indicating that a spec had passed. <a href="https://github.com/rspec/rspec-core/pull/569/files">This patch</a> fixes the problem.</p><h3 id="with-ruby-on-rails"><a name="with-ruby-on-rails" href="#with-ruby-on-rails" class="md2man-permalink" title="permalink"></a>With <a href="http://rubyonrails.org">Ruby on Rails</a></h3><p>For Rails 3 or newer, use the <code>rails</code> configuration helper <em>before</em> the <code>test</code>
126
136
  or <code>spec</code> helpers. Otherwise your test helper will load Rails <em>before</em> the
127
137
  specified <code>rails</code> configuration helper has a chance to disable class caching!</p><p>For older Rails, make sure your <code>config/environments/test.rb</code> file contains:</p>
128
138
  <pre><code>config.cache_classes = false
@@ -133,9 +143,9 @@ database adapter</a>. Otherwise, you <em>might</em> face these errors:</p>
133
143
  <p>SQLite3::BusyException: database is locked</p><p>cannot start a transaction within a transaction</p></blockquote>
134
144
  <p>For older Rails, to use SQLite3 as your test database along with browser-based
135
145
  acceptance testing frameworks such as Capybara, see
136
- <a href="http://www.spacevatican.org/2012/8/18/threading-the-rat/">http://www.spacevatican.org/2012/8/18/threading-the-rat/</a></p><h2 id="Configuration">Configuration</h2><p>Tork looks for a configuration directory named <code>.tork/</code> inside its working
146
+ <a href="http://www.spacevatican.org/2012/8/18/threading-the-rat/">http://www.spacevatican.org/2012/8/18/threading-the-rat/</a></p><h2 id="configuration"><a name="configuration" href="#configuration" class="md2man-permalink" title="permalink"></a>Configuration</h2><p>Tork looks for a configuration directory named <code>.tork/</code> inside its working
137
147
  directory. The configuration directory contains specially-named Ruby scripts,
138
148
  within which you can query and modify the settings for various tork programs.
139
149
  See the &quot;FILES&quot; sections in the manual pages of tork programs for details.</p><p>Note that tork <em>does not</em> automatically reload changes from your configuration
140
- directory. Consequently, you must restart tork if your configuration changes.</p><h2 id="License">License</h2><p>Released under the ISC license. See the LICENSE file for details.</p></div></body>
150
+ directory. Consequently, you must restart tork if your configuration changes.</p><h2 id="license"><a name="license" href="#license" class="md2man-permalink" title="permalink"></a>License</h2><p>Released under the ISC license. See the LICENSE file for details.</p></div></body>
141
151
  </html>
@@ -5,6 +5,11 @@
5
5
  \__/\____/_/ /_/|_\
6
6
  >>>------>
7
7
 
8
+ * Package: <https://rubygems.org/gems/tork>
9
+ * Manuals: <https://sunaku.github.io/tork>
10
+ * Sources: <https://github.com/sunaku/tork>
11
+ * Support: <https://github.com/sunaku/tork/issues>
12
+
8
13
  # _Test with fork_
9
14
 
10
15
  Tork runs your tests as they change, in parallel:
@@ -133,6 +138,17 @@ You can monitor your test processes from another terminal:
133
138
 
134
139
  watch 'pgrep -f ^tork | xargs -r ps uf'
135
140
 
141
+ ### With Bundler
142
+
143
+ The `bundler` configuration helper loads a Bundler bundle into tork-master(1).
144
+ The `default` configuration helper does this for you automatically if there is
145
+ a `Gemfile` or `Gemfile.lock` file present in your current working directory.
146
+
147
+ As a result, you don't need to add Tork to your `Gemfile` _just_ to run tests!
148
+ Instead, installing Tork as a Ruby gem _outside_ of your bundle is sufficient.
149
+
150
+ Try it: go into any bundled application and call `tork` to run its test suite.
151
+
136
152
  ### With MiniTest
137
153
 
138
154
  MiniTest 1.3.2 and newer contain a bug where `minitest/autorun` won't run any
@@ -2,63 +2,95 @@
2
2
  <html>
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
- <meta name="generator" content="md2man 2.0.2 https://github.com/sunaku/md2man" />
5
+ <meta name="generator" content="md2man 3.0.0 https://github.com/sunaku/md2man" />
6
6
  <title>VERSION</title>
7
7
  <link rel="stylesheet" href="../style.css"/>
8
8
  <!--[if lt IE 9]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
9
9
  </head>
10
- <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-7-0-2014-03-04">Version 19.7.0 (2014-03-04)</h2><p>This release automatically re-runs failed tests after reabsorbing overhead.</p><h3 id="Minor">Minor:</h3>
10
+ <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>
11
+ <ul>
12
+ <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
13
+ having to first add Tork to its <code>Gemfile</code> and then <code>bundle install</code> it.
14
+ 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>
15
+ </ul>
16
+ <h3 id="patch"><a name="patch" href="#patch" class="md2man-permalink" title="permalink"></a>Patch:</h3>
17
+ <ul>
18
+ <li><p>Server: fix crash when Fixnum is sent as a message.</p>
19
+ <pre><code>lib/tork/server.rb:45:in `block (2 levels) in loop&#39;:
20
+ undefined method `empty?&#39; for 6:Fixnum (NoMethodError)
21
+
22
+ lib/tork/cliapp.rb:59:in `recv&#39;:
23
+ undefined method `lstrip&#39; for 6:Fixnum (NoMethodError)
24
+ </code></pre>
25
+ <p>Because JSON.load() and JSON.parse() are different:</p>
26
+ <pre><code>$ irb -r json
27
+ &gt;&gt; JSON.load &#39;6&#39;
28
+ 6
29
+ &gt;&gt; JSON.parse &#39;6&#39;
30
+ JSON::ParserError: A JSON text must at least contain two octets!
31
+ from /usr/lib/ruby/2.1.0/json/common.rb:155:in `initialize&#39;
32
+ from /usr/lib/ruby/2.1.0/json/common.rb:155:in `new&#39;
33
+ from /usr/lib/ruby/2.1.0/json/common.rb:155:in `parse&#39;
34
+ from (irb):2
35
+ from /usr/bin/irb:11:in `&lt;main&gt;&#39;
36
+ </code></pre></li>
37
+ </ul>
38
+ <h3 id="other"><a name="other" href="#other" class="md2man-permalink" title="permalink"></a>Other:</h3>
39
+ <ul>
40
+ <li>Upgrade to md2man 3.0 for improved HTML manuals.</li>
41
+ </ul>
42
+ <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>
11
43
  <ul>
12
44
  <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
13
45
  patch</a>.</p></li>
14
46
  </ul>
15
- <h2 id="Version-19-6-1-2014-03-04">Version 19.6.1 (2014-03-04)</h2><p>This release improves support for old Rails versions.</p><h3 id="Patch">Patch:</h3>
47
+ <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>
16
48
  <ul>
17
49
  <li><p>Rails &lt; 3.1.0 does not have <code>connection_config()</code>.</p></li>
18
50
  <li><p><code>schema_cache()</code> is only defined in Rails &gt;= 4.</p></li>
19
51
  </ul>
20
- <h2 id="Version-19-6-0-2014-01-02">Version 19.6.0 (2014-01-02)</h2><p>This release improves <a class="md2man-xref" href="../man1/tork-runner.1.html">tork-runner(1)</a> responsiveness and fixes <a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a>.</p><h3 id="Minor">Minor:</h3>
52
+ <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>
21
53
  <ul>
22
- <li><a class="md2man-xref" href="../man1/tork-runner.1.html">tork-runner(1)</a> now prints the percentage of completed tests to stderr.</li>
54
+ <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>
23
55
  </ul>
24
- <h3 id="Patch">Patch:</h3>
56
+ <h3 id="patch-2"><a name="patch-2" href="#patch-2" class="md2man-permalink" title="permalink"></a>Patch:</h3>
25
57
  <ul>
26
- <li><a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a> emitted the <code>idle</code> event when tests were still running.</li>
58
+ <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>
27
59
  </ul>
28
- <h2 id="Version-19-5-1-2013-12-02">Version 19.5.1 (2013-12-02)</h2><p>This release restores support for Capybara integration tests in the <code>rails</code>
29
- configuration helper, corrects the <code>idle</code> event in <a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a>, and fixes
30
- some minor bugs in <a class="md2man-xref" href="../man1/tork-runner.1.html">tork-runner(1)</a> and <a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>.</p><h3 id="Patch">Patch:</h3>
60
+ <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>
61
+ 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
62
+ 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>
31
63
  <ul>
32
64
  <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
33
65
  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>
34
- <li><p><a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a> sent <code>idle</code> event when 1 test was still running.</p></li>
35
- <li><p><a class="md2man-xref" 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-xref" href="../man1/tork-runner.1.html">tork-runner(1)</a> itself.</p></li>
36
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>: forgot to update man page: ENTER by itself does nothing now.</p></li>
66
+ <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>
67
+ <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>
68
+ <li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: forgot to update man page: ENTER by itself does nothing now.</p></li>
37
69
  </ul>
38
- <h2 id="Version-19-5-0-2013-11-30">Version 19.5.0 (2013-11-30)</h2><p>This release adds a <a class="md2man-xref" href="../man1/tork-runner.1.html">tork-runner(1)</a> program for non-interactive test execution,
70
+ <h2 id="version-19-5-0-2013-11-30"><a name="version-19-5-0-2013-11-30" href="#version-19-5-0-2013-11-30" class="md2man-permalink" title="permalink"></a>Version 19.5.0 (2013-11-30)</h2><p>This release adds a <a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> program for non-interactive test execution,
39
71
  makes connections to tork subprocesses self-healing, eliminates &quot;address
40
- already in use&quot; errors, and fixes bugs in <a class="md2man-xref" href="../man1/tork-herald.1.html">tork-herald(1)</a> and <a class="md2man-xref" href="../man1/tork-notify.1.html">tork-notify(1)</a>.</p><h3 id="Minor">Minor:</h3>
72
+ already in use&quot; errors, and fixes bugs in <a class="md2man-reference" href="../man1/tork-herald.1.html">tork-herald(1)</a> and <a class="md2man-reference" href="../man1/tork-notify.1.html">tork-notify(1)</a>.</p><h3 id="minor-3"><a name="minor-3" href="#minor-3" class="md2man-permalink" title="permalink"></a>Minor:</h3>
41
73
  <ul>
42
- <li><p>Add <a class="md2man-xref" href="../man1/tork-runner.1.html">tork-runner(1)</a> to run tests once, non-interactively, and then exit.</p><p>You can use <a class="md2man-xref" href="../man1/tork-runner.1.html">tork-runner(1)</a> to run your test suite in one shot and then
74
+ <li><p>Add <a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> to run tests once, non-interactively, and then exit.</p><p>You can use <a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> to run your test suite in one shot and then
43
75
  exit with a nonzero status if tests failed, similar to <code>rake test</code>.</p></li>
44
76
  <li><p>Add Tork::Bridge to make connections to tork subprocesses self-healing.</p><p>When a tork subprocess terminates, its parent process now replaces it
45
77
  with a fresh instance. Thus the tork process tree is now self-healing.</p></li>
46
78
  <li><p>Server: become a remote control to existing instance on socket fail.</p><p>If an another instance of this tork program is already running, then
47
79
  become a remote to it rather than failing on binding its socket file.</p><p>This lets you run the same tork program more than once in the same working
48
- directory; latter runs will become remote controls for the first instance!</p><p>This also lets you run an instance of <a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a> for interactive usage and
49
- then run <a class="md2man-xref" href="../man1/tork-runner.1.html">tork-runner(1)</a> in another terminal in the same working directory
80
+ directory; latter runs will become remote controls for the first instance!</p><p>This also lets you run an instance of <a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a> for interactive usage and
81
+ then run <a class="md2man-reference" href="../man1/tork-runner.1.html">tork-runner(1)</a> in another terminal in the same working directory
50
82
  to re-use the former&#39;s resources to run your test suite non-interactively.</p></li>
51
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>: show help message to clients upon connecting.</p></li>
52
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>: tell user to input &#39;h&#39; key for help message.</p></li>
83
+ <li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: show help message to clients upon connecting.</p></li>
84
+ <li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: tell user to input &#39;h&#39; key for help message.</p></li>
53
85
  </ul>
54
- <h3 id="Patch">Patch:</h3>
86
+ <h3 id="patch-4"><a name="patch-4" href="#patch-4" class="md2man-permalink" title="permalink"></a>Patch:</h3>
55
87
  <ul>
56
- <li><p><a class="md2man-xref" 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)
88
+ <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)
57
89
  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>
58
90
  <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
59
91
  started up in the same directory, then the latter would always delete
60
92
  the common socket files (currently belonging to the former) upon exit.</p></li>
61
- <li><p>Fail earlier on socket bind: avoid wasted overhead.</p><p>Before this patch, <a class="md2man-xref" href="../man1/tork-master.1.html">tork-master(1)</a> would first pay the price of absorbing
93
+ <li><p>Fail earlier on socket bind: avoid wasted overhead.</p><p>Before this patch, <a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a> would first pay the price of absorbing
62
94
  the test execution overhead before trying to bind its socket. In case
63
95
  of socket bind failure, the process would exit and the overhead wasted.</p></li>
64
96
  <li><p>Server: don&#39;t call method for empty command array.</p><p>This error would occur when pressing ENTER in tork-remote tork-driver:</p>
@@ -75,67 +107,67 @@ tork-driver: /home/skurapati/lab/tork/bin/tork-driver:173:in `&lt;top (required)
75
107
  tork-driver: /home/skurapati/.rvm/gems/ruby-1.9.3-p448/bin/tork-driver:23:in `load&#39;
76
108
  tork-driver: /home/skurapati/.rvm/gems/ruby-1.9.3-p448/bin/tork-driver:23:in `&lt;main&gt;&#39;
77
109
  </code></pre></li>
78
- <li><p><a class="md2man-xref" href="../man1/tork-herald.1.html">tork-herald(1)</a>: listen 2.2.0 gem is non-blocking and gives absolute paths.</p>
110
+ <li><p><a class="md2man-reference" href="../man1/tork-herald.1.html">tork-herald(1)</a>: listen 2.2.0 gem is non-blocking and gives absolute paths.</p>
79
111
  <ul>
80
112
  <li>Calling #start no longer blocks the caller.</li>
81
113
  <li>The <code>:relative_paths</code> option no longer works:
82
114
  <a href="https://github.com/guard/listen/issues/170">https://github.com/guard/listen/issues/170</a></li>
83
115
  </ul></li>
84
- <li><p><a class="md2man-xref" href="../man1/tork-herald.1.html">tork-herald(1)</a>: downgrade to listen 1.x gem to maintain Ruby 1.8 support.</p></li>
116
+ <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>
85
117
  </ul>
86
- <h3 id="Other">Other:</h3>
118
+ <h3 id="other-1"><a name="other-1" href="#other-1" class="md2man-permalink" title="permalink"></a>Other:</h3>
87
119
  <ul>
88
120
  <li><p>GH-56: specify license in gemspec for rubygems.org.</p></li>
89
- <li><p>Document <a class="md2man-xref">sh(1)</a> word splitting in manual pages of all tork servers.</p></li>
121
+ <li><p>Document <a class="md2man-reference">sh(1)</a> word splitting in manual pages of all tork servers.</p></li>
90
122
  <li><p>README: use <code>ps uf</code> to visualize process hierarchy.</p></li>
91
123
  </ul>
92
- <h2 id="Version-19-4-0-2013-11-25">Version 19.4.0 (2013-11-25)</h2><h3 id="Minor">Minor:</h3>
124
+ <h2 id="version-19-4-0-2013-11-25"><a name="version-19-4-0-2013-11-25" href="#version-19-4-0-2013-11-25" class="md2man-permalink" title="permalink"></a>Version 19.4.0 (2013-11-25)</h2><h3 id="minor-4"><a name="minor-4" href="#minor-4" class="md2man-permalink" title="permalink"></a>Minor:</h3>
93
125
  <ul>
94
126
  <li>The &quot;rails&quot; configuration helper now automatically sets up your test
95
127
  database for Tork&#39;s parallel testing system if your test database is
96
128
  SQLite3 and you are using Rails 3 or newer.</li>
97
129
  </ul>
98
- <h3 id="Other">Other:</h3>
130
+ <h3 id="other-2"><a name="other-2" href="#other-2" class="md2man-permalink" title="permalink"></a>Other:</h3>
99
131
  <ul>
100
132
  <li><p>rails: remove unused capture of rescued exception</p></li>
101
133
  <li><p>coverage: document the use of Ruby 1.9 hash syntax</p></li>
102
134
  <li><p>rename <code>*.markdown</code> file extension to shorter <code>*.md</code></p></li>
103
135
  </ul>
104
- <h2 id="Version-19-3-2-2013-10-29">Version 19.3.2 (2013-10-29)</h2><h3 id="Other">Other:</h3>
136
+ <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>
105
137
  <ul>
106
138
  <li><p>GH-55: upgrade listen &amp; rake gem dependencies.</p><p>Thanks to Matthew Albright for reporting this issue in GH-55:
107
139
  <a href="https://github.com/sunaku/tork/issues/55">https://github.com/sunaku/tork/issues/55</a></p></li>
108
140
  </ul>
109
- <h2 id="Version-19-3-1-2013-06-07">Version 19.3.1 (2013-06-07)</h2><h3 id="Patch">Patch:</h3>
141
+ <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>
110
142
  <ul>
111
143
  <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:
112
144
  <a href="https://github.com/sunaku/tork/issues/53">https://github.com/sunaku/tork/issues/53</a></p></li>
113
145
  </ul>
114
- <h3 id="Other">Other:</h3>
146
+ <h3 id="other-4"><a name="other-4" href="#other-4" class="md2man-permalink" title="permalink"></a>Other:</h3>
115
147
  <ul>
116
148
  <li>Upgrade to md2man 2.0.</li>
117
149
  </ul>
118
- <h2 id="Version-19-3-0-2013-05-05">Version 19.3.0 (2013-05-05)</h2><h3 id="Minor">Minor:</h3>
150
+ <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>
119
151
  <ul>
120
- <li><p><a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a> now emits <code>[&quot;idle&quot;]</code> messages whenever all tests
152
+ <li><p><a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a> now emits <code>[&quot;idle&quot;]</code> messages whenever all tests
121
153
  have finished running and no more tests are queued for running.</p><p>Thanks to Jonathan Cairns for requesting this feature in GH-50:
122
154
  <a href="https://github.com/sunaku/tork/issues/50">https://github.com/sunaku/tork/issues/50</a></p></li>
123
155
  </ul>
124
- <h3 id="Other">Other:</h3>
156
+ <h3 id="other-5"><a name="other-5" href="#other-5" class="md2man-permalink" title="permalink"></a>Other:</h3>
125
157
  <ul>
126
158
  <li><p>add man/man0 subdir containing README and VERSION</p></li>
127
159
  <li><p>README: use manpage xrefs for linking in HTML mans</p></li>
128
160
  </ul>
129
- <h2 id="Version-19-2-2-2013-05-04">Version 19.2.2 (2013-05-04)</h2><p>This release makes Tork resilient to <code>Errno::EADDRINUSE</code> errors that may occur
130
- sometimes, intermittently, when test execution overhead is being reabsorbed.</p><h3 id="Patch">Patch:</h3>
161
+ <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
162
+ 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>
131
163
  <ul>
132
164
  <li>server: retry until the socket opens successfully</li>
133
165
  </ul>
134
- <h3 id="Other">Other:</h3>
166
+ <h3 id="other-6"><a name="other-6" href="#other-6" class="md2man-permalink" title="permalink"></a>Other:</h3>
135
167
  <ul>
136
168
  <li>include md2man rake tasks in developer&#39;s rakefile</li>
137
169
  </ul>
138
- <h2 id="Version-19-2-1-2013-02-08">Version 19.2.1 (2013-02-08)</h2><h3 id="Patch">Patch:</h3>
170
+ <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>
139
171
  <ul>
140
172
  <li><p>GH-46: allow reassigning <code>$tork_*</code> variable values. Thanks to Joe
141
173
  Escalante for reminding me to fix this issue.</p></li>
@@ -143,111 +175,111 @@ Escalante for reminding me to fix this issue.</p></li>
143
175
  Thanks to Ryan Ahearn for fixing this issue and to Jonathan Cairns for
144
176
  reporting it.</p></li>
145
177
  </ul>
146
- <h2 id="Version-19-2-0-2012-12-30">Version 19.2.0 (2012-12-30)</h2><h3 id="Minor">Minor:</h3>
178
+ <h2 id="version-19-2-0-2012-12-30"><a name="version-19-2-0-2012-12-30" href="#version-19-2-0-2012-12-30" class="md2man-permalink" title="permalink"></a>Version 19.2.0 (2012-12-30)</h2><h3 id="minor-6"><a name="minor-6" href="#minor-6" class="md2man-permalink" title="permalink"></a>Minor:</h3>
147
179
  <ul>
148
180
  <li>Add &quot;devise&quot; configuration helper that adds support for testing Rails
149
181
  applications that use the Devise authentication framework. Thanks to Ryan
150
182
  Ahearn for this contribution.</li>
151
183
  </ul>
152
- <h3 id="Patch">Patch:</h3>
184
+ <h3 id="patch-8"><a name="patch-8" href="#patch-8" class="md2man-permalink" title="permalink"></a>Patch:</h3>
153
185
  <ul>
154
186
  <li><p>gemspec: upgrade to <em>listen</em> 0.7.0 to fix issue #43. Thanks to Ryan
155
187
  Ahearn for reporting this issue and helping debug it, and to Thibaud
156
188
  Guillaume-Gentil for fixing this issue upstream in the <em>listen</em> library.</p></li>
157
189
  <li><p>Fix <code>undefined method &#39;path&#39; for nil</code> error on socket file removal.</p></li>
158
190
  </ul>
159
- <h2 id="Version-19-1-0-2012-12-12">Version 19.1.0 (2012-12-12)</h2><h3 id="Minor">Minor:</h3>
191
+ <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>
160
192
  <ul>
161
193
  <li>tork-driver: don&#39;t run overhead files as test files</li>
162
194
  </ul>
163
- <h3 id="Patch">Patch:</h3>
195
+ <h3 id="patch-9"><a name="patch-9" href="#patch-9" class="md2man-permalink" title="permalink"></a>Patch:</h3>
164
196
  <ul>
165
197
  <li><p>rails: run dependent tests when <code>app/views/*</code> change</p></li>
166
198
  <li><p>Clear FactoryGirl sequences and traits on fork in the <code>factory_girl</code>
167
199
  configuration helper. Thanks to Ryan Ahearn for this contribution.</p></li>
168
200
  <li><p>server: fix clean up of socket files upon exit</p></li>
169
201
  </ul>
170
- <h2 id="Version-19-0-2-2012-11-07">Version 19.0.2 (2012-11-07)</h2><h3 id="Patch">Patch:</h3>
202
+ <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>
171
203
  <ul>
172
204
  <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>
173
205
  </ul>
174
- <h3 id="Other">Other:</h3>
206
+ <h3 id="other-7"><a name="other-7" href="#other-7" class="md2man-permalink" title="permalink"></a>Other:</h3>
175
207
  <ul>
176
208
  <li><p>README: document RSpec 2.9.0+ autorun skipping bug</p></li>
177
209
  <li><p>README: MiniTest 1.3.2+ also has autorun skip bug</p></li>
178
210
  </ul>
179
- <h2 id="Version-19-0-1-2012-10-26">Version 19.0.1 (2012-10-26)</h2><h3 id="Patch">Patch:</h3>
211
+ <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>
180
212
  <ul>
181
213
  <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.
182
214
  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>
183
215
  <li><p>Automatically load the &quot;autorun&quot; helpers for RSpec and MiniTest.</p><p>RSpec users are accustomed to not having <code>require &quot;rspec/autorun&quot;</code> in
184
- their spec/spec_helper.rb file because they use the <a class="md2man-xref">rspec(1)</a> executable
216
+ their spec/spec_helper.rb file because they use the <a class="md2man-reference">rspec(1)</a> executable
185
217
  to run their tests. This commit makes things Just Work for them again.</p></li>
186
218
  </ul>
187
- <h3 id="Other">Other:</h3>
219
+ <h3 id="other-8"><a name="other-8" href="#other-8" class="md2man-permalink" title="permalink"></a>Other:</h3>
188
220
  <ul>
189
221
  <li><p>test whether input is JSON by actually parsing it</p></li>
190
222
  <li><p>server: use Set instead of Array for faster lookup</p></li>
191
223
  </ul>
192
- <h2 id="Version-19-0-0-2012-10-17">Version 19.0.0 (2012-10-17)</h2><h3 id="Major">Major:</h3>
224
+ <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>
193
225
  <ul>
194
226
  <li><p>The <code>.tork.rb</code> configuration file has been replaced by the <code>.tork/</code>
195
227
  directory, which contains specially-named Ruby scripts. Refer to the
196
- <code>TORK_CONFIGS</code> environment variable in <a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a> for more information.</p></li>
228
+ <code>TORK_CONFIGS</code> environment variable in <a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a> for more information.</p></li>
197
229
  <li><p>The <code>Tork::Config</code> object has been replaced by various data structures in
198
230
  the <code>Tork::</code> namespace. See the &quot;FILES&quot; sections in the manual pages of
199
231
  tork programs for information on the data structures that replaced it.</p></li>
200
232
  <li><p><code>Tork::Config.test_event_hooks</code> has been removed. Instead, you must now
201
- monitor the STDOUT of <a class="md2man-xref" href="../man1/tork-master.1.html">tork-master(1)</a> or <a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a> either directly
202
- or indirectly, via <a class="md2man-xref" href="../man1/tork-remote.1.html">tork-remote(1)</a>, and react to their status messages.
203
- See the <a class="md2man-xref" href="../man1/tork-notify.1.html">tork-notify(1)</a> program for an example of how to implement this.</p></li>
204
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>: &#39;t&#39; now runs a specified test, whereas &#39;a&#39; runs all tests.</p></li>
205
- <li><p><a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a>: the <code>run_test_file</code> command now takes line numbers as a
233
+ monitor the STDOUT of <a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a> or <a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a> either directly
234
+ or indirectly, via <a class="md2man-reference" href="../man1/tork-remote.1.html">tork-remote(1)</a>, and react to their status messages.
235
+ See the <a class="md2man-reference" href="../man1/tork-notify.1.html">tork-notify(1)</a> program for an example of how to implement this.</p></li>
236
+ <li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: &#39;t&#39; now runs a specified test, whereas &#39;a&#39; runs all tests.</p></li>
237
+ <li><p><a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a>: the <code>run_test_file</code> command now takes line numbers as a
206
238
  variable-length list of arguments (varargs) rather than as an array.</p></li>
207
- <li><p><a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a>: the <code>run_test_file</code> command now runs an entire test file
239
+ <li><p><a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a>: the <code>run_test_file</code> command now runs an entire test file
208
240
  when zero is given as one of the line numbers to be run.</p></li>
209
- <li><p><a class="md2man-xref" href="../man1/tork-master.1.html">tork-master(1)</a>: the <code>load</code> command is no longer accepted. Instead, you
241
+ <li><p><a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a>: the <code>load</code> command is no longer accepted. Instead, you
210
242
  must specify load paths and overhead files in the <code>.tork/master.rb</code> file.</p></li>
211
243
  <li><p>The <code>TORK_CONFIGS</code> env-var is now a colon delimited list of directories.</p></li>
212
244
  <li><p>The <code>tork/client</code> library has been removed. The threaded IO and popen()
213
245
  wrappers that it provided have been replaced by the powerful IO.select().</p></li>
214
246
  </ul>
215
- <h3 id="Minor">Minor:</h3>
247
+ <h3 id="minor-8"><a name="minor-8" href="#minor-8" class="md2man-permalink" title="permalink"></a>Minor:</h3>
216
248
  <ul>
217
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>: allow user to specify arguments after command key</p></li>
218
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>: add &#39;k&#39; to stop all currently running tests with SIGKILL</p></li>
219
- <li><p>add <a class="md2man-xref" href="../man1/tork-remote.1.html">tork-remote(1)</a> to remotely control any tork program. This feature is
249
+ <li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: allow user to specify arguments after command key</p></li>
250
+ <li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: add &#39;k&#39; to stop all currently running tests with SIGKILL</p></li>
251
+ <li><p>add <a class="md2man-reference" href="../man1/tork-remote.1.html">tork-remote(1)</a> to remotely control any tork program. This feature is
220
252
  made possible by the awesome power of IO.select() and UNIX domain sockets.</p></li>
221
- <li><p>add <a class="md2man-xref" href="../man1/tork-notify.1.html">tork-notify(1)</a> as example of using <a class="md2man-xref" href="../man1/tork-remote.1.html">tork-remote(1)</a> and <a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a></p></li>
222
- <li><p><a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a>: add <code>[&quot;run_test_files&quot;]</code> command to run multiple files</p></li>
223
- <li><p><a class="md2man-xref" href="../man1/tork-engine.1.html">tork-engine(1)</a>: emit edge-triggered <code>pass_now_fail</code> and <code>fail_now_pass</code>
253
+ <li><p>add <a class="md2man-reference" href="../man1/tork-notify.1.html">tork-notify(1)</a> as example of using <a class="md2man-reference" href="../man1/tork-remote.1.html">tork-remote(1)</a> and <a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a></p></li>
254
+ <li><p><a class="md2man-reference" href="../man1/tork-engine.1.html">tork-engine(1)</a>: add <code>[&quot;run_test_files&quot;]</code> command to run multiple files</p></li>
255
+ <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>
224
256
  events to notify you about changes in a test file&#39;s pass/fail status.</p></li>
225
257
  <li><p>typing Control-D now breaks tork programs out of <code>Tork::Server#loop()</code></p></li>
226
258
  </ul>
227
- <h3 id="Patch">Patch:</h3>
259
+ <h3 id="patch-12"><a name="patch-12" href="#patch-12" class="md2man-permalink" title="permalink"></a>Patch:</h3>
228
260
  <ul>
229
- <li><a class="md2man-xref" href="../man1/tork-master.1.html">tork-master(1)</a>: stop workers with SIGKILL when quitting</li>
261
+ <li><a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a>: stop workers with SIGKILL when quitting</li>
230
262
  </ul>
231
- <h3 id="Other">Other:</h3>
263
+ <h3 id="other-9"><a name="other-9" href="#other-9" class="md2man-permalink" title="permalink"></a>Other:</h3>
232
264
  <ul>
233
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>: document parameters for <code>t</code> and <code>s</code> commands</p></li>
265
+ <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>
234
266
  <li><p>README: add tip about rlwrap for better interactive</p></li>
235
267
  <li><p>README: simplify watch command using pgrep &amp; xargs</p></li>
236
268
  <li><p>README: use standard bundle exec; no <code>--binstubs</code></p></li>
237
269
  </ul>
238
- <h2 id="Version-18-2-4-2012-10-10">Version 18.2.4 (2012-10-10)</h2><h3 id="Other">Other:</h3>
270
+ <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>
239
271
  <ul>
240
272
  <li>GH-39: upgrade listen gem version to fix a bug in OSX.
241
273
  Thanks to Adam Grant for reporting this issue.</li>
242
274
  </ul>
243
- <h2 id="Version-18-2-3-2012-09-26">Version 18.2.3 (2012-09-26)</h2><h3 id="Patch">Patch:</h3>
275
+ <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>
244
276
  <ul>
245
277
  <li><p>Restored support for building Tork from its gemspec under Ruby 1.8.
246
278
  Thanks to Ohno Shin&#39;ichi for reporting this issue and contributing a
247
279
  preliminary fix.</p></li>
248
280
  <li><p>Add resilience against failed command dispatch in <code>Tork::Server#loop()</code>.</p></li>
249
281
  </ul>
250
- <h3 id="Other">Other:</h3>
282
+ <h3 id="other-11"><a name="other-11" href="#other-11" class="md2man-permalink" title="permalink"></a>Other:</h3>
251
283
  <ul>
252
284
  <li><p>It&#39;s not worth rescuing Interrupt only to exit silently.
253
285
  Let the user see stack traces when they press Control-C.</p></li>
@@ -255,7 +287,7 @@ Let the user see stack traces when they press Control-C.</p></li>
255
287
  replaced by reaping threads quite a few releases ago.</p></li>
256
288
  <li><p>Use $0 instead of hard-coding the program name.</p></li>
257
289
  </ul>
258
- <h2 id="Version-18-2-2-2012-07-11">Version 18.2.2 (2012-07-11)</h2><h3 id="Patch">Patch:</h3>
290
+ <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>
259
291
  <ul>
260
292
  <li><p>GH-35: resume dispatched but not yet started tests.</p><p>After reabsorbing overhead, we need to resume previously dispatched test
261
293
  files that have not yet finished running. This includes the waiting set
@@ -263,17 +295,17 @@ files that have not yet finished running. This includes the waiting set
263
295
  and already started running). Otherwise, we encounter a bug where test
264
296
  files in the waiting set can NEVER be run again!</p></li>
265
297
  </ul>
266
- <h2 id="Version-18-2-1-2012-07-05">Version 18.2.1 (2012-07-05)</h2><h3 id="Patch">Patch:</h3>
298
+ <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>
267
299
  <ul>
268
300
  <li>GH-37: switch from Guard::Listener to Listen gem.
269
301
  Thanks to Jesse Cooke for reporting this issue.</li>
270
302
  </ul>
271
- <h3 id="Other">Other:</h3>
303
+ <h3 id="other-12"><a name="other-12" href="#other-12" class="md2man-permalink" title="permalink"></a>Other:</h3>
272
304
  <ul>
273
305
  <li><p>gemspec: need to provide .0 suffix for ~&gt; operator.</p></li>
274
306
  <li><p>gemspec: LICENSE file contains UTF-8 author names.</p></li>
275
307
  </ul>
276
- <h2 id="Version-18-2-0-2012-03-27">Version 18.2.0 (2012-03-27)</h2><h3 id="Minor">Minor:</h3>
308
+ <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>
277
309
  <ul>
278
310
  <li>Emit warnings when commands cannot be performed. This improves the user
279
311
  experience by giving them immediate feedback. For example, if you issue
@@ -281,15 +313,15 @@ the &quot;rerun<em>failed</em>tests&quot; command and no tests have failed yet,
281
313
  now see a warning message that explains the situation. Thanks to
282
314
  NagaChaitanya Vellanki (@chaitanyav) for suggesting this change.</li>
283
315
  </ul>
284
- <h3 id="Patch">Patch:</h3>
316
+ <h3 id="patch-16"><a name="patch-16" href="#patch-16" class="md2man-permalink" title="permalink"></a>Patch:</h3>
285
317
  <ul>
286
318
  <li><p>GH-32: Restore support for Selenium and Capybara by replacing the global
287
- SIGCHLD handler in <a class="md2man-xref" href="../man1/tork-master.1.html">tork-master(1)</a> with individual threads, one per forked
319
+ SIGCHLD handler in <a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a> with individual threads, one per forked
288
320
  worker process. Thanks to Bjørn Trondsen (@Sharagoz) for reporting this
289
321
  issue and verifying the fix.</p></li>
290
322
  <li><p>README: Recommend a newer fork of the &quot;memory<em>test</em>fix&quot; Rails plugin.</p></li>
291
323
  </ul>
292
- <h2 id="Version-18-1-0-2012-02-26">Version 18.1.0 (2012-02-26)</h2><h3 id="Minor">Minor:</h3>
324
+ <h2 id="version-18-1-0-2012-02-26"><a name="version-18-1-0-2012-02-26" href="#version-18-1-0-2012-02-26" class="md2man-permalink" title="permalink"></a>Version 18.1.0 (2012-02-26)</h2><h3 id="minor-10"><a name="minor-10" href="#minor-10" class="md2man-permalink" title="permalink"></a>Minor:</h3>
293
325
  <ul>
294
326
  <li><p>Add <code>tork/config/coverage</code> configuration helper for Ruby 1.9, which prints
295
327
  a coverage report at the end of your log file in YAML format. The report
@@ -301,19 +333,19 @@ that exist in or beneath the current working directory:</p>
301
333
  <li>:holes - line numbers of source lines that were not covered</li>
302
334
  </ul></li>
303
335
  </ul>
304
- <h2 id="Version-18-0-1-2012-02-13">Version 18.0.1 (2012-02-13)</h2><h3 id="Alert">Alert:</h3>
336
+ <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>
305
337
  <ul>
306
338
  <li>If you&#39;re on Ruby 1.9, please use 1.9.3 or newer because 1.9.2 is
307
339
  known to segfault under RSpec and Rails. See GH-30 and GH-32.</li>
308
340
  </ul>
309
- <h3 id="Patch">Patch:</h3>
341
+ <h3 id="patch-17"><a name="patch-17" href="#patch-17" class="md2man-permalink" title="permalink"></a>Patch:</h3>
310
342
  <ul>
311
343
  <li><p>GH-27: Cucumber features now run correctly under RSpec. Thanks to Scott
312
344
  Radcliff for reporting this issue and to David Burrows for solving it!</p></li>
313
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>: fix undefined method `strip&#39; for nil:NilClass error.</p></li>
345
+ <li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: fix undefined method `strip&#39; for nil:NilClass error.</p></li>
314
346
  <li><p>tork/config: ignore directories given as configuration files.</p></li>
315
347
  </ul>
316
- <h2 id="Version-18-0-0-2012-02-06">Version 18.0.0 (2012-02-06)</h2><h3 id="Alert">Alert:</h3>
348
+ <h2 id="version-18-0-0-2012-02-06"><a name="version-18-0-0-2012-02-06" href="#version-18-0-0-2012-02-06" class="md2man-permalink" title="permalink"></a>Version 18.0.0 (2012-02-06)</h2><h3 id="alert-1"><a name="alert-1" href="#alert-1" class="md2man-permalink" title="permalink"></a>Alert:</h3>
317
349
  <ul>
318
350
  <li>RSpec 2.8.0 and older contain <a href="https://github.com/sunaku/tork/issues/31">a bug</a> where a nonzero
319
351
  exit status (caused by an uncaught exception) is overridden
@@ -321,7 +353,7 @@ by RSpec&#39;s <code>Kernel#at_exit</code> handler to be zero, thereby
321
353
  falsely indicating that a spec had passed. <a href="https://github.com/rspec/rspec-core/pull/569/files">This patch</a> fixes the
322
354
  problem. Thanks to Gumaro Melendez for reporting this issue.</li>
323
355
  </ul>
324
- <h3 id="Major">Major:</h3>
356
+ <h3 id="major-1"><a name="major-1" href="#major-1" class="md2man-permalink" title="permalink"></a>Major:</h3>
325
357
  <ul>
326
358
  <li><p>Dropped first parameter to <code>Tork::Config::test_file_globbers</code>.</p></li>
327
359
  <li><p>GH-31: tork-master now emits separate exit code and info.
@@ -329,12 +361,12 @@ Update your <code>Tork::Config::test_event_hooks</code> accordingly.</p></li>
329
361
  <li><p>tork/server: switch from modules to class inheritance.</p></li>
330
362
  <li><p>tork/config: switch to Struct to prevent misspellings.</p></li>
331
363
  </ul>
332
- <h3 id="Minor">Minor:</h3>
364
+ <h3 id="minor-11"><a name="minor-11" href="#minor-11" class="md2man-permalink" title="permalink"></a>Minor:</h3>
333
365
  <ul>
334
366
  <li><p>tork-driver now recursively expands dependent test files while globbing.</p></li>
335
367
  <li><p>Extracted bookkeeping stuff from tork-driver into tork-engine component.</p></li>
336
368
  </ul>
337
- <h3 id="Other">Other:</h3>
369
+ <h3 id="other-13"><a name="other-13" href="#other-13" class="md2man-permalink" title="permalink"></a>Other:</h3>
338
370
  <ul>
339
371
  <li><p>tork/config: do not reabsorb when .tork.rb
340
372
  changes. Since the configuration is loaded in
@@ -346,7 +378,7 @@ restart Tork if you change your configuration.</p></li>
346
378
  <li><p>GH-29: bump guard version requirement to v1 series.</p></li>
347
379
  <li><p>Improve documentation; revise markdown; clean up.</p></li>
348
380
  </ul>
349
- <h2 id="Version-17-1-0-2012-01-30">Version 17.1.0 (2012-01-30)</h2><h3 id="Minor">Minor:</h3>
381
+ <h2 id="version-17-1-0-2012-01-30"><a name="version-17-1-0-2012-01-30" href="#version-17-1-0-2012-01-30" class="md2man-permalink" title="permalink"></a>Version 17.1.0 (2012-01-30)</h2><h3 id="minor-12"><a name="minor-12" href="#minor-12" class="md2man-permalink" title="permalink"></a>Minor:</h3>
350
382
  <ul>
351
383
  <li><p>Added <code>Tork::Config.test_event_hooks</code> configuration option.</p></li>
352
384
  <li><p>Added <code>tork/config/notify</code> configuration helper for receiving
@@ -360,42 +392,42 @@ multiple globs in an array, in addition to just a single glob or <code>nil</code
360
392
  <li><p>Added support for the MiniTest convention of naming test files as
361
393
  <code>test/**/test_*.rb</code> and <code>spec/**/spec_*.rb</code>. (Jose Pablo Barrantes)</p></li>
362
394
  </ul>
363
- <h2 id="Version-17-0-1-2012-01-29">Version 17.0.1 (2012-01-29)</h2><h3 id="Patch">Patch:</h3>
395
+ <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>
364
396
  <ul>
365
- <li><p><a class="md2man-xref" href="../man1/tork-herald.1.html">tork-herald(1)</a> <em>sometimes</em> reported changed test files twice.</p></li>
397
+ <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>
366
398
  <li><p>tork/driver: only whole test file runs should qualify as pass.</p></li>
367
399
  <li><p>tork/config/cucumber: only set ARGV for <code>*.feature</code> test files.</p></li>
368
400
  <li><p>Tork::Client::Transceiver needs to stop both TX &amp; RX loops.</p></li>
369
401
  </ul>
370
- <h3 id="Other">Other:</h3>
402
+ <h3 id="other-14"><a name="other-14" href="#other-14" class="md2man-permalink" title="permalink"></a>Other:</h3>
371
403
  <ul>
372
404
  <li><p>tork/driver: store test file lists in Set, not Array.</p></li>
373
405
  <li><p>HISTORY: use single-word change-set descriptions.</p></li>
374
406
  </ul>
375
- <h2 id="Version-17-0-0-2012-01-27">Version 17.0.0 (2012-01-27)</h2><h3 id="Major">Major:</h3>
407
+ <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>
376
408
  <ul>
377
- <li><p><a class="md2man-xref" href="../man1/tork-herald.1.html">tork-herald(1)</a> now emits batches of single-line JSON arrays instead of
409
+ <li><p><a class="md2man-reference" href="../man1/tork-herald.1.html">tork-herald(1)</a> now emits batches of single-line JSON arrays instead of
378
410
  printing one (raw) path per line. This makes IPC uniform across Tork.</p></li>
379
- <li><p><a class="md2man-xref" href="../man1/tork-master.1.html">tork-master(1)</a> now emits log<em>file and worker</em>number in status messages.</p></li>
411
+ <li><p><a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a> now emits log<em>file and worker</em>number in status messages.</p></li>
380
412
  <li><p>The order of parameters for before/after fork hooks has been changed to
381
- better reflect the order of items in <a class="md2man-xref" href="../man1/tork-master.1.html">tork-master(1)</a>&#39;s status messages.</p>
413
+ better reflect the order of items in <a class="md2man-reference" href="../man1/tork-master.1.html">tork-master(1)</a>&#39;s status messages.</p>
382
414
  <ul>
383
415
  <li>The old order was: worker<em>number, log</em>file, test<em>file, line</em>numbers.</li>
384
416
  <li>The new order is: test<em>file, line</em>numbers, log<em>file, worker</em>number.</li>
385
417
  </ul></li>
386
418
  </ul>
387
- <h3 id="Minor">Minor:</h3>
419
+ <h3 id="minor-13"><a name="minor-13" href="#minor-13" class="md2man-permalink" title="permalink"></a>Minor:</h3>
388
420
  <ul>
389
421
  <li><p>GH-24: add <code>tork/config/dotlog</code> configuration helper to &quot;hide&quot; log files.
390
422
  (Nicolas Fouché)</p></li>
391
423
  <li><p>GH-25: add <code>tork/config/logdir</code> configuration helper to isolate log files.
392
424
  (Jose Pablo Barrantes)</p></li>
393
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a> now strips all whitespace from your input, in case you pressed
425
+ <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
394
426
  spacebar or tab a few times, by accident, before entering your command.</p></li>
395
427
  </ul>
396
- <h3 id="Other">Other:</h3>
428
+ <h3 id="other-15"><a name="other-15" href="#other-15" class="md2man-permalink" title="permalink"></a>Other:</h3>
397
429
  <ul>
398
- <li><p>tork/client: Replace write lock with queue to support SIGCHLD handler.</p><p>The SIGCHLD handler in <a class="md2man-xref" href="../man1/tork-master.1.html">tork-master(1)</a> can be triggered at any time, even
430
+ <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
399
431
  in the middle of writing to the standard output stream! Locking access
400
432
  to the output stream in normal code (outside the signal handler) would
401
433
  freeze the program because the signal handler, waiting for the lock to
@@ -407,25 +439,25 @@ responsibility of (and access to) continually writing those outgoing
407
439
  items to the output stream.</p></li>
408
440
  <li><p>README: revise instructions, reorganize document, and other improvements.</p></li>
409
441
  </ul>
410
- <h2 id="Version-16-0-0-2012-01-25">Version 16.0.0 (2012-01-25)</h2><h3 id="Major">Major:</h3>
442
+ <h2 id="version-16-0-0-2012-01-25"><a name="version-16-0-0-2012-01-25" href="#version-16-0-0-2012-01-25" class="md2man-permalink" title="permalink"></a>Version 16.0.0 (2012-01-25)</h2><h3 id="major-3"><a name="major-3" href="#major-3" class="md2man-permalink" title="permalink"></a>Major:</h3>
411
443
  <ul>
412
444
  <li><p>Drop the <code>Tork::Config.test_name_extractor</code> configuration option.</p></li>
413
445
  <li><p>Pass line numbers instead of test names to before/after fork hooks.</p></li>
414
446
  <li><p>Pass $~ (MatchData) to <code>Tork::Config::test_file_globbers</code> functions.</p></li>
415
447
  </ul>
416
- <h3 id="Minor">Minor:</h3>
448
+ <h3 id="minor-14"><a name="minor-14" href="#minor-14" class="md2man-permalink" title="permalink"></a>Minor:</h3>
417
449
  <ul>
418
450
  <li>tork/config/cucumber: only run changed scenarios in changed features.</li>
419
451
  </ul>
420
- <h3 id="Other">Other:</h3>
452
+ <h3 id="other-16"><a name="other-16" href="#other-16" class="md2man-permalink" title="permalink"></a>Other:</h3>
421
453
  <ul>
422
454
  <li>README: update instructions on running Tork directly from Git clone.</li>
423
455
  </ul>
424
- <h2 id="Version-15-1-0-2012-01-25">Version 15.1.0 (2012-01-25)</h2><h3 id="Minor">Minor:</h3>
456
+ <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>
425
457
  <ul>
426
458
  <li>GH-19: add <code>tork cucumber</code> for running cucumber features.</li>
427
459
  </ul>
428
- <h3 id="Patch">Patch:</h3>
460
+ <h3 id="patch-19"><a name="patch-19" href="#patch-19" class="md2man-permalink" title="permalink"></a>Patch:</h3>
429
461
  <ul>
430
462
  <li><p>tork/config/rails: support Rails 2 and don&#39;t assume AR is used. (Benjamin
431
463
  Quorning)</p></li>
@@ -436,14 +468,14 @@ $TORK_CONFIGS should override settings from the <code>.tork.rb</code> file.</p><
436
468
  See <a href="http://stackoverflow.com/questions/1497756">http://stackoverflow.com/questions/1497756</a>.
437
469
  Also added forgotten Luke Wendling to the list.</p></li>
438
470
  </ul>
439
- <h2 id="Version-15-0-1-2012-01-24">Version 15.0.1 (2012-01-24)</h2><h3 id="Patch">Patch:</h3>
471
+ <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>
440
472
  <ul>
441
473
  <li><p>GH-21: Ruby 1.9 class_eval() is smarter than 1.8.</p></li>
442
474
  <li><p>GH-20: forgot <code>require &#39;thread&#39;</code> for Mutex class. (Jesse Cooke)</p></li>
443
475
  </ul>
444
- <h3 id="Other">Other:</h3>
476
+ <h3 id="other-17"><a name="other-17" href="#other-17" class="md2man-permalink" title="permalink"></a>Other:</h3>
445
477
  <ul>
446
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>: fix shadowed variable names. (Jose Pablo Barrantes)</p></li>
478
+ <li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: fix shadowed variable names. (Jose Pablo Barrantes)</p></li>
447
479
  <li><p>GH-22: fix command to build &amp; install gem from source.</p></li>
448
480
  <li><p>GH-22: add m2dman as development dependency in gemspec.</p></li>
449
481
  <li><p>GH-18: windows not supported; lacks fork &amp; SIGCHLD.</p></li>
@@ -451,17 +483,17 @@ Also added forgotten Luke Wendling to the list.</p></li>
451
483
  <li><p>README: missed a testr =&gt; tork rename in watch cmd.</p></li>
452
484
  <li><p>README: add tip about Guard&#39;s FS watching backends.</p></li>
453
485
  </ul>
454
- <h2 id="Version-15-0-0-2012-01-23">Version 15.0.0 (2012-01-23)</h2><h3 id="Major">Major:</h3>
486
+ <h2 id="version-15-0-0-2012-01-23"><a name="version-15-0-0-2012-01-23" href="#version-15-0-0-2012-01-23" class="md2man-permalink" title="permalink"></a>Version 15.0.0 (2012-01-23)</h2><h3 id="major-4"><a name="major-4" href="#major-4" class="md2man-permalink" title="permalink"></a>Major:</h3>
455
487
  <ul>
456
488
  <li><p>This project has been renamed from TestR to Tork (test with fork) in order
457
489
  to better compete with rival projects, namely Spork! &gt;:-) Credit goes to
458
490
  Brian D. Burns for thinking of this most succinct &amp; awesome project name!
459
491
  He also created the snazzy ASCII-art logo featured in the project README.</p></li>
460
- <li><p><a class="md2man-xref" href="../man1/tork.1.html">tork(1)</a>: rename <code>r</code> command, which runs all tests, to <code>t</code>, for <em>t</em>ork.</p></li>
492
+ <li><p><a class="md2man-reference" href="../man1/tork.1.html">tork(1)</a>: rename <code>r</code> command, which runs all tests, to <code>t</code>, for <em>t</em>ork.</p></li>
461
493
  </ul>
462
- <h2 id="Version-14-3-0-2012-01-20">Version 14.3.0 (2012-01-20)</h2><h3 id="Minor">Minor:</h3>
494
+ <h2 id="version-14-3-0-2012-01-20"><a name="version-14-3-0-2012-01-20" href="#version-14-3-0-2012-01-20" class="md2man-permalink" title="permalink"></a>Version 14.3.0 (2012-01-20)</h2><h3 id="minor-16"><a name="minor-16" href="#minor-16" class="md2man-permalink" title="permalink"></a>Minor:</h3>
463
495
  <ul>
464
- <li><p><a class="md2man-xref">testr(1)</a>: notify user while dispatching their commands. This is especially
496
+ <li><p><a class="md2man-reference">testr(1)</a>: notify user while dispatching their commands. This is especially
465
497
  useful when the &quot;rerun<em>passed</em>test_files&quot; command has been dispatched but
466
498
  there are no passed test files, so nothing happens and from the user&#39;s
467
499
  perspective: TestR sucks because it&#39;s unresponsive.</p></li>
@@ -470,46 +502,46 @@ perspective: TestR sucks because it&#39;s unresponsive.</p></li>
470
502
  PGError: connection not open
471
503
  </code></pre>
472
504
  <p>Thanks to Spencer Steffen for <a href="https://github.com/sunaku/tork/issues/14#issuecomment-3539470">contributing this solution</a>.</p></li>
473
- <li><p><a class="md2man-xref">testr-driver(1)</a>: document the &quot;over&quot; status message in manual page.</p></li>
505
+ <li><p><a class="md2man-reference">testr-driver(1)</a>: document the &quot;over&quot; status message in manual page.</p></li>
474
506
  </ul>
475
- <h3 id="Other">Other:</h3>
507
+ <h3 id="other-18"><a name="other-18" href="#other-18" class="md2man-permalink" title="permalink"></a>Other:</h3>
476
508
  <ul>
477
- <li><p><a class="md2man-xref">testr-driver(1)</a>: keep same herald; only replace master.</p></li>
478
- <li><p><a class="md2man-xref">testr(1)</a>: shorten code for loop break on quit command.</p></li>
509
+ <li><p><a class="md2man-reference">testr-driver(1)</a>: keep same herald; only replace master.</p></li>
510
+ <li><p><a class="md2man-reference">testr(1)</a>: shorten code for loop break on quit command.</p></li>
479
511
  <li><p>server: rename <code>@upstream</code> to <code>@client</code> for coherence.</p></li>
480
512
  <li><p>Can pass lambda and proc with block to <code>&lt;&lt;</code> method.</p></li>
481
513
  <li><p>Explain <code>$0</code> override at the start of bin/ scripts.</p></li>
482
514
  <li><p>LICENSE: credit our most recent contributors.</p></li>
483
515
  </ul>
484
- <h2 id="Version-14-2-0-2012-01-16">Version 14.2.0 (2012-01-16)</h2><h3 id="Minor">Minor:</h3>
516
+ <h2 id="version-14-2-0-2012-01-16"><a name="version-14-2-0-2012-01-16" href="#version-14-2-0-2012-01-16" class="md2man-permalink" title="permalink"></a>Version 14.2.0 (2012-01-16)</h2><h3 id="minor-17"><a name="minor-17" href="#minor-17" class="md2man-permalink" title="permalink"></a>Minor:</h3>
485
517
  <ul>
486
518
  <li><p>Add ability to run <code>testr rails</code> without needing a <code>.testr.rb</code> file.</p></li>
487
- <li><p><a class="md2man-xref">testr(1)</a> no longer shows command menu at startup. Press ENTER to see it.</p></li>
488
- <li><p><a class="md2man-xref">testr(1)</a> now notifies you before absorbing overhead at startup.</p></li>
519
+ <li><p><a class="md2man-reference">testr(1)</a> no longer shows command menu at startup. Press ENTER to see it.</p></li>
520
+ <li><p><a class="md2man-reference">testr(1)</a> now notifies you before absorbing overhead at startup.</p></li>
489
521
  </ul>
490
- <h3 id="Patch">Patch:</h3>
522
+ <h3 id="patch-21"><a name="patch-21" href="#patch-21" class="md2man-permalink" title="permalink"></a>Patch:</h3>
491
523
  <ul>
492
- <li><a class="md2man-xref">testr(1)</a> now accepts death silently when Control-C is pressed.</li>
524
+ <li><a class="md2man-reference">testr(1)</a> now accepts death silently when Control-C is pressed.</li>
493
525
  </ul>
494
- <h2 id="Version-14-1-3-2012-01-13">Version 14.1.3 (2012-01-13)</h2><h3 id="Patch">Patch:</h3>
526
+ <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>
495
527
  <ul>
496
528
  <li>Add support Guard v0.9.0 and newer in <code>testr-herald</code>. (Jose Pablo
497
529
  Barrantes)</li>
498
530
  </ul>
499
- <h3 id="Other">Other:</h3>
531
+ <h3 id="other-19"><a name="other-19" href="#other-19" class="md2man-permalink" title="permalink"></a>Other:</h3>
500
532
  <ul>
501
533
  <li>Tighten version constraints for gem dependencies to avoid future
502
534
  breakages.</li>
503
535
  </ul>
504
- <h2 id="Version-14-1-2-2012-01-09">Version 14.1.2 (2012-01-09)</h2><h3 id="Minor">Minor:</h3>
536
+ <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>
505
537
  <ul>
506
538
  <li>Don&#39;t consider partial test file pass as full pass.</li>
507
539
  </ul>
508
- <h3 id="Other">Other:</h3>
540
+ <h3 id="other-20"><a name="other-20" href="#other-20" class="md2man-permalink" title="permalink"></a>Other:</h3>
509
541
  <ul>
510
542
  <li>Upgrade to binman 3 for better bundler support.</li>
511
543
  </ul>
512
- <h2 id="Version-14-1-1-2011-12-07">Version 14.1.1 (2011-12-07)</h2><h3 id="Patch">Patch:</h3>
544
+ <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>
513
545
  <ul>
514
546
  <li><p>Do not fail when given test file no longer exists.</p></li>
515
547
  <li><p>Make xUnit <code>--name</code> option regexp case-insensitive.</p></li>
@@ -518,7 +550,7 @@ see <a href="https://github.com/rspec/rspec-core/issues/445">https://github.com/
518
550
  and <a href="https://github.com/dchelimsky/rspec/issues/44">https://github.com/dchelimsky/rspec/issues/44</a></p></li>
519
551
  <li><p>Ruby 187 does not have Symbol#upcase() method.</p></li>
520
552
  </ul>
521
- <h3 id="Other">Other:</h3>
553
+ <h3 id="other-21"><a name="other-21" href="#other-21" class="md2man-permalink" title="permalink"></a>Other:</h3>
522
554
  <ul>
523
555
  <li><p>README: add another SQLite3 error to known issues.
524
556
  Thanks to Luke Wendling for contributing this patch.</p></li>
@@ -528,9 +560,9 @@ Thanks to Luke Wendling for contributing this patch.</p></li>
528
560
  <li><p>Better variable naming for self-documentation.</p></li>
529
561
  <li><p>Upgrade to binman 2.0.0 for UNIX man pages.</p></li>
530
562
  </ul>
531
- <h2 id="Version-14-1-0-2011-11-03">Version 14.1.0 (2011-11-03)</h2><h3 id="Minor">Minor:</h3>
563
+ <h2 id="version-14-1-0-2011-11-03"><a name="version-14-1-0-2011-11-03" href="#version-14-1-0-2011-11-03" class="md2man-permalink" title="permalink"></a>Version 14.1.0 (2011-11-03)</h2><h3 id="minor-19"><a name="minor-19" href="#minor-19" class="md2man-permalink" title="permalink"></a>Minor:</h3>
532
564
  <ul>
533
- <li><p>Make servers responsive to quit request (SIGTERM) from upstream.</p><p>This change lets the user quit <a class="md2man-xref">testr-master(1)</a> while it is loading
565
+ <li><p>Make servers responsive to quit request (SIGTERM) from upstream.</p><p>This change lets the user quit <a class="md2man-reference">testr-master(1)</a> while it is loading
534
566
  test execution overhead (which can be a lengthy, blocking operation).</p><p>By sending a signal to the server, we don&#39;t have to wait for it to
535
567
  finish processing its current command before seeing our :quit command.</p></li>
536
568
  <li><p>Add embedded BinMan manual pages to bin scripts. All TestR scripts now
@@ -538,44 +570,44 @@ have a <code>--help</code> option which displays their UNIX manual page. Try it
538
570
  documented in their manual pages, so you should have everything you
539
571
  need to create <em>your own custom user interface to TestR</em> if you wish! :-)</p></li>
540
572
  </ul>
541
- <h3 id="Patch">Patch:</h3>
573
+ <h3 id="patch-24"><a name="patch-24" href="#patch-24" class="md2man-permalink" title="permalink"></a>Patch:</h3>
542
574
  <ul>
543
575
  <li>SIGCHLD does not awaken main thread in Ruby 1.9.3p0.</li>
544
576
  </ul>
545
- <h3 id="Other">Other:</h3>
577
+ <h3 id="other-22"><a name="other-22" href="#other-22" class="md2man-permalink" title="permalink"></a>Other:</h3>
546
578
  <ul>
547
- <li><p>Simplify <a class="md2man-xref">watch(1)</a> <a class="md2man-xref">ps(1)</a> process title monitoring.</p></li>
579
+ <li><p>Simplify <a class="md2man-reference">watch(1)</a> <a class="md2man-reference">ps(1)</a> process title monitoring.</p></li>
548
580
  <li><p>Testr: tell user to press ENTER after command key.</p></li>
549
581
  <li><p>README: add tip on loading factory_girl factories.</p></li>
550
582
  </ul>
551
- <h2 id="Version-14-0-3-2011-10-11">Version 14.0.3 (2011-10-11)</h2><h3 id="Patch">Patch:</h3>
583
+ <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>
552
584
  <ul>
553
585
  <li>Forgot to migrate the <code>testr/config/rails</code> configuration helper to use the
554
586
  new TestR configuration parameter names.</li>
555
587
  </ul>
556
- <h2 id="Version-14-0-2-2011-10-11">Version 14.0.2 (2011-10-11)</h2><h3 id="Patch">Patch:</h3>
588
+ <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>
557
589
  <ul>
558
590
  <li><p>Fix updating passed/failed test files bookkeeping. Once a test file
559
591
  failed, it was (incorrectly) always considered failed, even if it passed
560
592
  later on.</p></li>
561
593
  <li><p>Do not requeue test files that are waiting to run.</p></li>
562
594
  </ul>
563
- <h3 id="Other">Other:</h3>
595
+ <h3 id="other-23"><a name="other-23" href="#other-23" class="md2man-permalink" title="permalink"></a>Other:</h3>
564
596
  <ul>
565
597
  <li>Rename <code>*.md</code> files to <code>*.markdown</code> to avoid ambiguity.</li>
566
598
  </ul>
567
- <h2 id="Version-14-0-1-2011-10-10">Version 14.0.1 (2011-10-10)</h2><h3 id="Patch">Patch:</h3>
599
+ <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>
568
600
  <ul>
569
601
  <li><p>Use blue/red for pass/fail instead of green/red to accommodate the color
570
602
  blind.</p></li>
571
603
  <li><p>Incorrect test name regexp was passed down to Test::Unit. This broke
572
604
  focused testing, where only changed tests in a changed test file are run.</p></li>
573
605
  </ul>
574
- <h3 id="Other">Other:</h3>
606
+ <h3 id="other-24"><a name="other-24" href="#other-24" class="md2man-permalink" title="permalink"></a>Other:</h3>
575
607
  <ul>
576
608
  <li>Make <code>testr-master</code> wait for killed worker processes before exiting.</li>
577
609
  </ul>
578
- <h2 id="Version-14-0-0-2011-10-09">Version 14.0.0 (2011-10-09)</h2><h3 id="Major">Major:</h3>
610
+ <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>
579
611
  <ul>
580
612
  <li><p>Renamed this project and its resources from test-loop to TestR.</p></li>
581
613
  <li><p>Renamed the <code>reabsorb_file_globs</code> configuration parameter to
@@ -592,7 +624,7 @@ focused testing, where only changed tests in a changed test file are run.</p></l
592
624
  parameters.</p></li>
593
625
  <li><p>Removed the <code>test/loop/notify</code> and <code>test-loop/coco</code> libraries.</p></li>
594
626
  </ul>
595
- <h3 id="Minor">Minor:</h3>
627
+ <h3 id="minor-20"><a name="minor-20" href="#minor-20" class="md2man-permalink" title="permalink"></a>Minor:</h3>
596
628
  <ul>
597
629
  <li><p>The file system is no longer polled to detect modified files. Instead, it
598
630
  is monitored for file modification events in a portable and efficient
@@ -603,24 +635,24 @@ manner using the <a href="https://github.com/guard/guard">Guard</a> library.</p>
603
635
  <code>before_fork_hooks</code> configuration parameters.</p></li>
604
636
  <li><p>Added ability to re-run passed and failed tests in the <code>testr</code> script.</p></li>
605
637
  </ul>
606
- <h3 id="Other">Other:</h3>
638
+ <h3 id="other-25"><a name="other-25" href="#other-25" class="md2man-permalink" title="permalink"></a>Other:</h3>
607
639
  <ul>
608
640
  <li><p>The monolithic <code>test-loop</code> script has been replaced by several smaller
609
641
  ones that communicate with each other using single-line JSON messages via
610
642
  their standard input &amp; output streams. See &quot;Architecture&quot; in the README.</p></li>
611
643
  <li><p>Now using Bundler to manage development dependencies and gem packaging.</p></li>
612
644
  </ul>
613
- <h2 id="Version-13-0-1-2011-09-21">Version 13.0.1 (2011-09-21)</h2><h3 id="Other">Other:</h3>
645
+ <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>
614
646
  <ul>
615
647
  <li><p>Forgot to include <code>test/loop/coco</code> preset in gem package.</p></li>
616
648
  <li><p>Forgot to mention <code>test/loop/parallel_tests</code> preset in README.</p></li>
617
649
  </ul>
618
- <h2 id="Version-13-0-0-2011-08-24">Version 13.0.0 (2011-08-24)</h2><h3 id="Major">Major:</h3>
650
+ <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>
619
651
  <ul>
620
652
  <li>Pass worker sequence number as the last argument to lambda functions in
621
653
  <code>Test::Loop.before_each_test</code> and <code>Test::Loop.after_each_test</code> arrays.</li>
622
654
  </ul>
623
- <h3 id="Minor">Minor:</h3>
655
+ <h3 id="minor-21"><a name="minor-21" href="#minor-21" class="md2man-permalink" title="permalink"></a>Minor:</h3>
624
656
  <ul>
625
657
  <li><p>In the <code>test/loop/rails</code> configuration preset:</p>
626
658
  <ul>
@@ -634,22 +666,22 @@ gem. (Corné Verbruggen)</p></li>
634
666
  processes like connecting to separate databases better. (Corné
635
667
  Verbruggen)</p></li>
636
668
  </ul>
637
- <h3 id="Other">Other:</h3>
669
+ <h3 id="other-27"><a name="other-27" href="#other-27" class="md2man-permalink" title="permalink"></a>Other:</h3>
638
670
  <ul>
639
671
  <li><p>README: move configuration presets above options.</p></li>
640
672
  <li><p>Eliminate 1 SLOC: .rb extension used in file glob.</p></li>
641
673
  <li><p>Turn off executable bit on loop.rb file mode.</p></li>
642
674
  <li><p>Pass child ENV directly to exec() for atomicity.</p></li>
643
675
  </ul>
644
- <h2 id="Version-12-3-1-2011-07-19">Version 12.3.1 (2011-07-19)</h2><h3 id="Patch">Patch:</h3>
676
+ <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>
645
677
  <ul>
646
678
  <li>Binary data could not be stored in environment variable values.</li>
647
679
  </ul>
648
- <h3 id="Other">Other:</h3>
680
+ <h3 id="other-28"><a name="other-28" href="#other-28" class="md2man-permalink" title="permalink"></a>Other:</h3>
649
681
  <ul>
650
682
  <li>Forgot to add Jacob Helwig to the gemspec&#39;s authors list.</li>
651
683
  </ul>
652
- <h2 id="Version-12-3-0-2011-07-19">Version 12.3.0 (2011-07-19)</h2><h3 id="Minor">Minor:</h3>
684
+ <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>
653
685
  <ul>
654
686
  <li><p>Add <code>Test::Loop::max_concurrent_tests</code> configuration parameter to limit
655
687
  the number of test files run concurrently (default 4). Otherwise, with
@@ -657,13 +689,13 @@ large test suites, we could end up swamping the machine running the tests
657
689
  by forking hundreds of test files at once. (Jacob Helwig)</p></li>
658
690
  <li><p>Rails: add matcher for <code>test/factories/*_factory.rb</code>.</p></li>
659
691
  </ul>
660
- <h3 id="Other">Other:</h3>
692
+ <h3 id="other-29"><a name="other-29" href="#other-29" class="md2man-permalink" title="permalink"></a>Other:</h3>
661
693
  <ul>
662
694
  <li><p>ENV returns a Hash with duplicate/frozen keys/values. (Brian D. Burns)</p></li>
663
695
  <li><p>Use Marshal to propagate resume_files to reabsorb.</p></li>
664
696
  <li><p>Store test_files in a Set instead of an Array.</p></li>
665
697
  </ul>
666
- <h2 id="Version-12-2-0-2011-06-01">Version 12.2.0 (2011-06-01)</h2>
698
+ <h2 id="version-12-2-0-2011-06-01"><a name="version-12-2-0-2011-06-01" href="#version-12-2-0-2011-06-01" class="md2man-permalink" title="permalink"></a>Version 12.2.0 (2011-06-01)</h2>
667
699
  <ul>
668
700
  <li><p>Prevent empty test suite run in master process. (Brian D. Burns)</p></li>
669
701
  <li><p>Report test execution statistics in <code>test/loop/notify</code> preset as
@@ -671,12 +703,12 @@ requested by Juan G. Hurtado..</p></li>
671
703
  <li><p>Add <code>test/loop/coco</code> preset for integrating the <a href="http://lkdjiin.github.com/coco/">Coco code coverage
672
704
  library</a>.</p></li>
673
705
  </ul>
674
- <h2 id="Version-12-1-0-2011-04-29">Version 12.1.0 (2011-04-29)</h2><h3 id="Minor">Minor:</h3>
706
+ <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>
675
707
  <ul>
676
708
  <li>Add <code>Test::Loop.delay_per_iteration</code> parameter to control the number of
677
709
  seconds (or fractions thereof) to sleep in between test-loop iterations.</li>
678
710
  </ul>
679
- <h2 id="Version-12-0-4-2011-04-29">Version 12.0.4 (2011-04-29)</h2><h3 id="Patch">Patch:</h3>
711
+ <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>
680
712
  <ul>
681
713
  <li><p>Reabsorb overhead when user&#39;s configuration file changes. (Brian D. Burns
682
714
  and Daniel Pittman)</p></li>
@@ -684,7 +716,7 @@ and Daniel Pittman)</p></li>
684
716
  not necessary! <a href="https://github.com/sunaku/test-loop/issues/5">This issue</a>
685
717
  was solved by upgrading to the newer 2.6.38.4-1 Linux kernel on my system.</p></li>
686
718
  </ul>
687
- <h2 id="Version-12-0-3-2011-04-25">Version 12.0.3 (2011-04-25)</h2><h3 id="Patch">Patch:</h3>
719
+ <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>
688
720
  <ul>
689
721
  <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
690
722
  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
@@ -717,33 +749,33 @@ that would also stop you from doing clever things.&quot; ~Doug Gwyn</p></blockqu
717
749
  Many thanks to Brian D. Burns and Daniel Pittman for helping solve <a href="https://github.com/sunaku/test-loop/issues/5">this
718
750
  issue</a>.</p></li>
719
751
  </ul>
720
- <h2 id="Version-12-0-2-2011-04-21">Version 12.0.2 (2011-04-21)</h2><h3 id="Patch">Patch:</h3>
752
+ <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>
721
753
  <ul>
722
754
  <li><p>Consider DB schema dump file as overhead in Rails.</p></li>
723
755
  <li><p>Do not consider test factories as overhead in Rails.</p></li>
724
756
  <li><p>Run test files when test factory files change in Rails.</p></li>
725
757
  </ul>
726
- <h3 id="Other">Other:</h3>
758
+ <h3 id="other-30"><a name="other-30" href="#other-30" class="md2man-permalink" title="permalink"></a>Other:</h3>
727
759
  <ul>
728
760
  <li><p>Detach worker from master&#39;s terminal device sooner.</p></li>
729
761
  <li><p>All required signals must be present in irb check.</p></li>
730
- <li><p>Prevent <a class="md2man-xref">ps(1)</a> from truncating lines to $TERM width.</p></li>
731
- <li><p>Retain <a class="md2man-xref">ps(1)</a> column header in watch command output.</p></li>
762
+ <li><p>Prevent <a class="md2man-reference">ps(1)</a> from truncating lines to $TERM width.</p></li>
763
+ <li><p>Retain <a class="md2man-reference">ps(1)</a> column header in watch command output.</p></li>
732
764
  <li><p>Begin parameter descriptions with the noun itself.</p></li>
733
765
  </ul>
734
- <h2 id="Version-12-0-1-2011-04-20">Version 12.0.1 (2011-04-20)</h2><h3 id="Patch">Patch:</h3>
766
+ <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>
735
767
  <ul>
736
768
  <li><p>Restore support for Ruby 1.8.7.</p></li>
737
769
  <li><p>Allow user&#39;s test execution overhead to fork.</p></li>
738
770
  </ul>
739
- <h3 id="Other">Other:</h3>
771
+ <h3 id="other-31"><a name="other-31" href="#other-31" class="md2man-permalink" title="permalink"></a>Other:</h3>
740
772
  <ul>
741
773
  <li><p>Freeze master&#39;s ENV properly; keep resume key.</p></li>
742
774
  <li><p>Remove completed test from running list sooner.</p></li>
743
775
  <li><p>Add instructions to check for POSIX prerequisites.</p></li>
744
776
  <li><p>Support multiple test-loop instances in watch command.</p></li>
745
777
  </ul>
746
- <h2 id="Version-12-0-0-2011-04-19">Version 12.0.0 (2011-04-19)</h2><h3 id="Major">Major:</h3>
778
+ <h2 id="version-12-0-0-2011-04-19"><a name="version-12-0-0-2011-04-19" href="#version-12-0-0-2011-04-19" class="md2man-permalink" title="permalink"></a>Version 12.0.0 (2011-04-19)</h2><h3 id="major-7"><a name="major-7" href="#major-7" class="md2man-permalink" title="permalink"></a>Major:</h3>
747
779
  <ul>
748
780
  <li><p>You must now explicitly <code>require &#39;test/loop/rails&#39;</code> for Rails support
749
781
  because we can only <em>automatically</em> apply our Railtie (to disable class
@@ -752,7 +784,7 @@ your models are already loaded &amp; cached by the Rails environment.</p></li>
752
784
  <li><p>Your tests can no longer read from the user&#39;s terminal (master&#39;s STDIN);
753
785
  instead they will read from an empty stream (the reading end of IO.popen).</p></li>
754
786
  </ul>
755
- <h3 id="Patch">Patch:</h3>
787
+ <h3 id="patch-33"><a name="patch-33" href="#patch-33" class="md2man-permalink" title="permalink"></a>Patch:</h3>
756
788
  <ul>
757
789
  <li><p>Replace threads with SIGCHLD for reporting test results.</p><p>This fixes deadlock errors that sometimes occurred when the user&#39;s chosen
758
790
  test library tried to print something to STDOUT/STDERR (even though those
@@ -760,7 +792,7 @@ streams were redirected to a log file in the worker process).</p><p>Thanks to Br
760
792
  threads to monitor workers was the culprit behind the deadlocks errors.</p></li>
761
793
  <li><p>Ctrl-C did not raise Interrupt in my Rails 3 test suite.</p></li>
762
794
  </ul>
763
- <h3 id="Other">Other:</h3>
795
+ <h3 id="other-32"><a name="other-32" href="#other-32" class="md2man-permalink" title="permalink"></a>Other:</h3>
764
796
  <ul>
765
797
  <li><p>Ensure a clean ENV when reabsorbing overhead. Environment variables set
766
798
  by your test execution overhead are not propagated to subsequent
@@ -776,22 +808,22 @@ reabsorptions. (Brian D. Burns)</p></li>
776
808
  <li><p>Add tip about annihilating test-loop processes.</p></li>
777
809
  <li><p>Fix markdown formatting.</p></li>
778
810
  </ul>
779
- <h2 id="Version-11-0-1-2011-04-14">Version 11.0.1 (2011-04-14)</h2><h3 id="Patch">Patch:</h3>
811
+ <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>
780
812
  <ul>
781
813
  <li>Only attempt to define Railtie if the current Rails version supports it.</li>
782
814
  </ul>
783
- <h2 id="Version-11-0-0-2011-04-14">Version 11.0.0 (2011-04-14)</h2><h3 id="Major">Major:</h3>
815
+ <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>
784
816
  <ul>
785
817
  <li>The <code>test/loop/rails</code> preset has been internalized and is now applied
786
818
  automatically if your test execution overhead includes Ruby on Rails.</li>
787
819
  </ul>
788
- <h3 id="Minor">Minor:</h3>
820
+ <h3 id="minor-24"><a name="minor-24" href="#minor-24" class="md2man-permalink" title="permalink"></a>Minor:</h3>
789
821
  <ul>
790
822
  <li>If you are using Rails 3, test-loop will automatically set
791
823
  <code>config.cache_classes = false</code> for your test environment. (Brian D.
792
824
  Burns)</li>
793
825
  </ul>
794
- <h3 id="Patch">Patch:</h3>
826
+ <h3 id="patch-35"><a name="patch-35" href="#patch-35" class="md2man-permalink" title="permalink"></a>Patch:</h3>
795
827
  <ul>
796
828
  <li><p>Avoid deadlock errors when printing output from Test::Unit and MiniTest.
797
829
  (Brian D. Burns)</p>
@@ -801,7 +833,7 @@ Burns)</li>
801
833
  Do not treat it as a failure by printing the log file.</p></li>
802
834
  <li><p>Ignore SIGINT in workers; only master must honor it.</p></li>
803
835
  </ul>
804
- <h2 id="Version-10-0-1-2011-04-08">Version 10.0.1 (2011-04-08)</h2><h3 id="Patch">Patch:</h3>
836
+ <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>
805
837
  <ul>
806
838
  <li><p>Workers must ignore SIGTSTP, otherwise master waits forever before
807
839
  exiting.</p></li>
@@ -810,36 +842,36 @@ unregister the trap handlers inherited from the master process.</p></li>
810
842
  <li><p>Prevent uncaught throw error on subsequent Ctrl-C.</p></li>
811
843
  <li><p>Simpler solution for terminating loop upon Ctrl-C.</p></li>
812
844
  </ul>
813
- <h2 id="Version-10-0-0-2011-04-06">Version 10.0.0 (2011-04-06)</h2><h3 id="Major">Major:</h3>
845
+ <h2 id="version-10-0-0-2011-04-06"><a name="version-10-0-0-2011-04-06" href="#version-10-0-0-2011-04-06" class="md2man-permalink" title="permalink"></a>Version 10.0.0 (2011-04-06)</h2><h3 id="major-9"><a name="major-9" href="#major-9" class="md2man-permalink" title="permalink"></a>Major:</h3>
814
846
  <ul>
815
847
  <li>The <code>Test::Loop.before_each_test</code> and <code>Test::Loop.after_each_test</code>
816
848
  parameters are arrays now.</li>
817
849
  </ul>
818
- <h2 id="Version-9-4-0-2011-04-06">Version 9.4.0 (2011-04-06)</h2><h3 id="Minor">Minor:</h3>
850
+ <h2 id="version-9-4-0-2011-04-06"><a name="version-9-4-0-2011-04-06" href="#version-9-4-0-2011-04-06" class="md2man-permalink" title="permalink"></a>Version 9.4.0 (2011-04-06)</h2><h3 id="minor-25"><a name="minor-25" href="#minor-25" class="md2man-permalink" title="permalink"></a>Minor:</h3>
819
851
  <ul>
820
852
  <li><p>Allow lambda functions in <code>Test::Loop.test_file_matchers</code> to return <code>nil</code>
821
853
  so that you can exclude certain tests from being executed. (Brian D.
822
854
  Burns)</p></li>
823
- <li><p>Prefix worker process title with &quot;test-loop&quot; for easier <a class="md2man-xref">ps(1)</a>
855
+ <li><p>Prefix worker process title with &quot;test-loop&quot; for easier <a class="md2man-reference">ps(1)</a>
824
856
  searchability. The monitoring command in the README is now simplified to
825
857
  the following:</p>
826
858
  <pre><code>watch &#39;ps xf | grep test-loop | sed 1,3d&#39;
827
859
  </code></pre></li>
828
860
  </ul>
829
- <h3 id="Patch">Patch:</h3>
861
+ <h3 id="patch-37"><a name="patch-37" href="#patch-37" class="md2man-permalink" title="permalink"></a>Patch:</h3>
830
862
  <ul>
831
863
  <li>Skip <code>at_exit()</code> when exiting master process. This prevents an empty test
832
864
  from being run when exiting the loop after having processed a test/spec
833
865
  helper that loads the Test::Unit library. (Brian D. Burns)</li>
834
866
  </ul>
835
- <h3 id="Other">Other:</h3>
867
+ <h3 id="other-33"><a name="other-33" href="#other-33" class="md2man-permalink" title="permalink"></a>Other:</h3>
836
868
  <ul>
837
869
  <li><p>Use throw/catch to break loop instead of raising SystemExit exception.</p></li>
838
870
  <li><p>Trap SIGTERM with IGNORE/DEFAULT instead of using a closure in master.</p></li>
839
871
  <li><p>Unregister master&#39;s custom signal handlers inside worker processes.</p></li>
840
872
  <li><p>Separate configuration parameters into subsections in README.</p></li>
841
873
  </ul>
842
- <h2 id="Version-9-3-0-2011-04-01">Version 9.3.0 (2011-04-01)</h2><h3 id="Minor">Minor:</h3>
874
+ <h2 id="version-9-3-0-2011-04-01"><a name="version-9-3-0-2011-04-01" href="#version-9-3-0-2011-04-01" class="md2man-permalink" title="permalink"></a>Version 9.3.0 (2011-04-01)</h2><h3 id="minor-26"><a name="minor-26" href="#minor-26" class="md2man-permalink" title="permalink"></a>Minor:</h3>
843
875
  <ul>
844
876
  <li><p>Resume currently running tests--as well as those currently needing to be
845
877
  run--after reabsorbing test execution overhead. (Brian D. Burns)</p></li>
@@ -852,7 +884,7 @@ system resources.</p></li>
852
884
  <li><p>Use ANSI clear line command to erase control-key combinations outputted by
853
885
  shells such as BASH and ZSH in test-loop&#39;s output. (Brian D. Burns)</p></li>
854
886
  </ul>
855
- <h3 id="Patch">Patch:</h3>
887
+ <h3 id="patch-38"><a name="patch-38" href="#patch-38" class="md2man-permalink" title="permalink"></a>Patch:</h3>
856
888
  <ul>
857
889
  <li><p><code>@last_ran_at</code> was being set during every iteration of the loop. This is
858
890
  problematic when Ruby&#39;s <code>Time.now</code> is more precise than your filesystem&#39;s
@@ -864,29 +896,29 @@ running waitall(), instead of sending SIGKILL to the entire process group.
864
896
  As a result, test-loop no longer exits with a non-zero status upon SIGINT.</p></li>
865
897
  <li><p>Remove &#39;ansi&#39; gem dependency. (Brian D. Burns)</p></li>
866
898
  </ul>
867
- <h3 id="Other">Other:</h3>
899
+ <h3 id="other-34"><a name="other-34" href="#other-34" class="md2man-permalink" title="permalink"></a>Other:</h3>
868
900
  <ul>
869
901
  <li><p>Add tip on deleting logs for passing tests. (Brian D. Burns)</p></li>
870
- <li><p>Add tip on monitoring test processes with <a class="md2man-xref">watch(1)</a> in README.</p></li>
902
+ <li><p>Add tip on monitoring test processes with <a class="md2man-reference">watch(1)</a> in README.</p></li>
871
903
  </ul>
872
- <h2 id="Version-9-2-0-2011-03-28">Version 9.2.0 (2011-03-28)</h2>
904
+ <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>
873
905
  <ul>
874
906
  <li><p>Extract Rails-specific configuration to &#39;test/loop/rails&#39; sublibrary.</p></li>
875
907
  <li><p>Add &#39;test/loop/notify&#39; sublibrary for OSD notifications on failures.</p></li>
876
908
  </ul>
877
- <h2 id="Version-9-1-1-2011-03-15">Version 9.1.1 (2011-03-15)</h2>
909
+ <h2 id="version-9-1-1-2011-03-15"><a name="version-9-1-1-2011-03-15" href="#version-9-1-1-2011-03-15" class="md2man-permalink" title="permalink"></a>Version 9.1.1 (2011-03-15)</h2>
878
910
  <ul>
879
911
  <li><p>$0 does not work from RubyGems wrapper executable.
880
912
  Thanks to Brian D. Burns for reporting this issue.</p></li>
881
913
  <li><p>Add information about sqlite3 errors &amp; workaround in README.</p></li>
882
914
  </ul>
883
- <h2 id="Version-9-1-0-2011-02-23">Version 9.1.0 (2011-02-23)</h2>
915
+ <h2 id="version-9-1-0-2011-02-23"><a name="version-9-1-0-2011-02-23" href="#version-9-1-0-2011-02-23" class="md2man-permalink" title="permalink"></a>Version 9.1.0 (2011-02-23)</h2>
884
916
  <ul>
885
917
  <li><p>Print the status of completed tests in ANSI color.</p></li>
886
918
  <li><p>Print the failure log of failing tests to STDERR.</p></li>
887
919
  <li><p><code>$?</code> is not defined when Errno::ECHILD is raised.</p></li>
888
920
  </ul>
889
- <h2 id="Version-9-0-1-2011-02-18">Version 9.0.1 (2011-02-18)</h2>
921
+ <h2 id="version-9-0-1-2011-02-18"><a name="version-9-0-1-2011-02-18" href="#version-9-0-1-2011-02-18" class="md2man-permalink" title="permalink"></a>Version 9.0.1 (2011-02-18)</h2>
890
922
  <ul>
891
923
  <li><p>Shield normal output from control-key combos printed into the terminal.</p></li>
892
924
  <li><p>Do not print worker PID in status messages because every test file has
@@ -895,12 +927,12 @@ exactly one worker anyway.</p></li>
895
927
  <li><p>Do not reabsorb overhead when the configuration file changes.</p></li>
896
928
  <li><p>Add <code>after_each_test</code> example for failure-only notifications.</p></li>
897
929
  </ul>
898
- <h2 id="Version-9-0-0-2011-02-15">Version 9.0.0 (2011-02-15)</h2>
930
+ <h2 id="version-9-0-0-2011-02-15"><a name="version-9-0-0-2011-02-15" href="#version-9-0-0-2011-02-15" class="md2man-permalink" title="permalink"></a>Version 9.0.0 (2011-02-15)</h2>
899
931
  <ul>
900
932
  <li><p>Remove SIGUSR1 for killing worker processes.</p></li>
901
933
  <li><p>Handle Ctrl-Z signal from the very beginning.</p></li>
902
934
  </ul>
903
- <h2 id="Version-8-0-0-2011-02-12">Version 8.0.0 (2011-02-12)</h2>
935
+ <h2 id="version-8-0-0-2011-02-12"><a name="version-8-0-0-2011-02-12" href="#version-8-0-0-2011-02-12" class="md2man-permalink" title="permalink"></a>Version 8.0.0 (2011-02-12)</h2>
904
936
  <ul>
905
937
  <li><p>Move configuration into <code>Test::Loop</code> object itself.</p></li>
906
938
  <li><p>Allow loading <code>bin/test-loop</code> into IRB for testing.</p></li>
@@ -911,12 +943,12 @@ exactly one worker anyway.</p></li>
911
943
  <li><p>Accept &gt; 80 character lines in some cases.</p></li>
912
944
  <li><p>Freeze more constant values against modification.</p></li>
913
945
  </ul>
914
- <h2 id="Version-7-0-1-2011-02-10">Version 7.0.1 (2011-02-10)</h2>
946
+ <h2 id="version-7-0-1-2011-02-10"><a name="version-7-0-1-2011-02-10" href="#version-7-0-1-2011-02-10" class="md2man-permalink" title="permalink"></a>Version 7.0.1 (2011-02-10)</h2>
915
947
  <ul>
916
948
  <li><p>Fix minitest deadlock issues with I/O redirection.</p></li>
917
949
  <li><p>Do not signal to restart loop when overhead changes.</p></li>
918
950
  </ul>
919
- <h2 id="Version-7-0-0-2011-02-10">Version 7.0.0 (2011-02-10)</h2>
951
+ <h2 id="version-7-0-0-2011-02-10"><a name="version-7-0-0-2011-02-10" href="#version-7-0-0-2011-02-10" class="md2man-permalink" title="permalink"></a>Version 7.0.0 (2011-02-10)</h2>
920
952
  <ul>
921
953
  <li><p>Switch from shell-script style to modular Ruby style in the source code.
922
954
  This yields more lines of code, but the result is much easier to read.</p>
@@ -939,7 +971,7 @@ This yields more lines of code, but the result is much easier to read.</p>
939
971
  <li><p>Send the SIGUSR1 signal to terminate workers and their subprocesses.</p></li>
940
972
  <li><p>Break long lines at 80 characters in the source code.</p></li>
941
973
  </ul>
942
- <h2 id="Version-6-0-0-2011-02-09">Version 6.0.0 (2011-02-09)</h2>
974
+ <h2 id="version-6-0-0-2011-02-09"><a name="version-6-0-0-2011-02-09" href="#version-6-0-0-2011-02-09" class="md2man-permalink" title="permalink"></a>Version 6.0.0 (2011-02-09)</h2>
943
975
  <ul>
944
976
  <li><p>Only consider <code>{test,spec}_helper.rb</code> as overhead, not all <code>*_helper.rb</code>.</p></li>
945
977
  <li><p>Give the user freedom to inspect and change the default configuration by
@@ -951,14 +983,14 @@ file.</p></li>
951
983
  <li><p>Add note about disabling class caching in Rails test environment.</p></li>
952
984
  <li><p>Add better explanation for the <code>test_file_matchers</code> example.</p></li>
953
985
  </ul>
954
- <h2 id="Version-5-0-3-2011-01-25">Version 5.0.3 (2011-01-25)</h2>
986
+ <h2 id="version-5-0-3-2011-01-25"><a name="version-5-0-3-2011-01-25" href="#version-5-0-3-2011-01-25" class="md2man-permalink" title="permalink"></a>Version 5.0.3 (2011-01-25)</h2>
955
987
  <ul>
956
988
  <li><p>Use &quot;diff/lcs&quot; library instead of &quot;diff&quot; for RSpec compatibility.</p><p>Thanks to millisami for reporting this bug:
957
989
  <a href="https://github.com/sunaku/test-loop/issues/3">https://github.com/sunaku/test-loop/issues/3</a></p></li>
958
990
  <li><p>Terminate worker processes when user presses Control-C.</p></li>
959
991
  <li><p>Reabsorb when bundler is run, not when Gemfile changes.</p></li>
960
992
  </ul>
961
- <h2 id="Version-5-0-2-2011-01-19">Version 5.0.2 (2011-01-19)</h2>
993
+ <h2 id="version-5-0-2-2011-01-19"><a name="version-5-0-2-2011-01-19" href="#version-5-0-2-2011-01-19" class="md2man-permalink" title="permalink"></a>Version 5.0.2 (2011-01-19)</h2>
962
994
  <ul>
963
995
  <li><p>Support string interpolations that yield empty strings in test names.</p></li>
964
996
  <li><p>Accept extra characters before test name in test definition:</p>
@@ -968,14 +1000,14 @@ file.</p></li>
968
1000
  </ul></li>
969
1001
  <li><p>Mention that diff gem is necessary for manual git clone installation.</p></li>
970
1002
  </ul>
971
- <h2 id="Version-5-0-1-2011-01-18">Version 5.0.1 (2011-01-18)</h2>
1003
+ <h2 id="version-5-0-1-2011-01-18"><a name="version-5-0-1-2011-01-18" href="#version-5-0-1-2011-01-18" class="md2man-permalink" title="permalink"></a>Version 5.0.1 (2011-01-18)</h2>
972
1004
  <ul>
973
1005
  <li><p>Sanitize string interpolation in parsed test names.</p></li>
974
1006
  <li><p>Remove useless use of #map; result is not reused.</p></li>
975
1007
  <li><p>Mention parallelism and revise the introduction.</p></li>
976
1008
  <li><p>DRY the mentioning of .test-loop file in README.</p></li>
977
1009
  </ul>
978
- <h2 id="Version-5-0-0-2011-01-17">Version 5.0.0 (2011-01-17)</h2>
1010
+ <h2 id="version-5-0-0-2011-01-17"><a name="version-5-0-0-2011-01-17" href="#version-5-0-0-2011-01-17" class="md2man-permalink" title="permalink"></a>Version 5.0.0 (2011-01-17)</h2>
979
1011
  <ul>
980
1012
  <li><p>The configuration file must now yield a Ruby
981
1013
  hash instead of polluting the global Object
@@ -983,7 +1015,7 @@ private environment with instance variables.</p></li>
983
1015
  <li><p>Shortened the <code>:source_file_glob_to_test_file_mapping</code>
984
1016
  configuration parameter name to <code>:test_file_matchers</code>.</p></li>
985
1017
  </ul>
986
- <h2 id="Version-4-0-1-2011-01-14">Version 4.0.1 (2011-01-14)</h2>
1018
+ <h2 id="version-4-0-1-2011-01-14"><a name="version-4-0-1-2011-01-14" href="#version-4-0-1-2011-01-14" class="md2man-permalink" title="permalink"></a>Version 4.0.1 (2011-01-14)</h2>
987
1019
  <ul>
988
1020
  <li><p>Print how much time it took to run all tests.</p></li>
989
1021
  <li><p>Do not print test file before loading because it
@@ -993,7 +1025,7 @@ is hard to follow parallel test execution anyway.</p></li>
993
1025
  <li><p>Use long options when passing test names in ARGV.</p></li>
994
1026
  <li><p>Only prepend lib/, test/, and spec/ to $LOAD_PATH.</p></li>
995
1027
  </ul>
996
- <h2 id="Version-4-0-0-2011-01-13">Version 4.0.0 (2011-01-13)</h2>
1028
+ <h2 id="version-4-0-0-2011-01-13"><a name="version-4-0-0-2011-01-13" href="#version-4-0-0-2011-01-13" class="md2man-permalink" title="permalink"></a>Version 4.0.0 (2011-01-13)</h2>
997
1029
  <ul>
998
1030
  <li><p>Only run changed tests inside changed test files.</p></li>
999
1031
  <li><p>Run tests in parallel: one worker per test file.</p></li>
@@ -1002,35 +1034,35 @@ is hard to follow parallel test execution anyway.</p></li>
1002
1034
  and change its function signature.</p></li>
1003
1035
  <li><p>Clean up implementation and improve documentation.</p></li>
1004
1036
  </ul>
1005
- <h2 id="Version-3-0-2-2011-01-11">Version 3.0.2 (2011-01-11)</h2>
1037
+ <h2 id="version-3-0-2-2011-01-11"><a name="version-3-0-2-2011-01-11" href="#version-3-0-2-2011-01-11" class="md2man-permalink" title="permalink"></a>Version 3.0.2 (2011-01-11)</h2>
1006
1038
  <ul>
1007
1039
  <li><p>Reabsorb overhead upon Gemfile changes (Rails 3).</p></li>
1008
1040
  <li><p>Try to recover from all kinds of exceptions.</p></li>
1009
1041
  </ul>
1010
- <h2 id="Version-3-0-1-2011-01-05">Version 3.0.1 (2011-01-05)</h2>
1042
+ <h2 id="version-3-0-1-2011-01-05"><a name="version-3-0-1-2011-01-05" href="#version-3-0-1-2011-01-05" class="md2man-permalink" title="permalink"></a>Version 3.0.1 (2011-01-05)</h2>
1011
1043
  <ul>
1012
1044
  <li><p>Be resilient to $0 and ARGV being changed by tests.</p></li>
1013
1045
  <li><p>Reduce pollution by making <code>notify()</code> into lambda.</p></li>
1014
1046
  <li><p>Beautify markdown formatting and revise the README.</p></li>
1015
1047
  </ul>
1016
- <h2 id="Version-3-0-0-2011-01-04">Version 3.0.0 (2011-01-04)</h2>
1048
+ <h2 id="version-3-0-0-2011-01-04"><a name="version-3-0-0-2011-01-04" href="#version-3-0-0-2011-01-04" class="md2man-permalink" title="permalink"></a>Version 3.0.0 (2011-01-04)</h2>
1017
1049
  <ul>
1018
1050
  <li><p>Replace Rake pathmap usage with lambda functions
1019
1051
  in the <code>@source_file_to_test_file_mapping</code> hash.</p></li>
1020
1052
  <li><p>Be resilient to syntax errors from loaded files.</p></li>
1021
1053
  </ul>
1022
- <h2 id="Version-2-0-2-2011-01-02">Version 2.0.2 (2011-01-02)</h2>
1054
+ <h2 id="version-2-0-2-2011-01-02"><a name="version-2-0-2-2011-01-02" href="#version-2-0-2-2011-01-02" class="md2man-permalink" title="permalink"></a>Version 2.0.2 (2011-01-02)</h2>
1023
1055
  <ul>
1024
1056
  <li><p>Do not print stack trace when Control-C pressed.</p></li>
1025
1057
  <li><p>Reduce the amount of notifications shown to user.</p></li>
1026
1058
  </ul>
1027
- <h2 id="Version-2-0-1-2011-01-01">Version 2.0.1 (2011-01-01)</h2>
1059
+ <h2 id="version-2-0-1-2011-01-01"><a name="version-2-0-1-2011-01-01" href="#version-2-0-1-2011-01-01" class="md2man-permalink" title="permalink"></a>Version 2.0.1 (2011-01-01)</h2>
1028
1060
  <ul>
1029
1061
  <li><p>Fix syntax error caused by a dangling comma. Thanks
1030
1062
  to darthdeus (Jakub Arnold) for reporting <a href="https://github.com/sunaku/test-loop/issues#issue/1">this bug</a>.</p></li>
1031
1063
  <li><p>Notify user before reabsorbing overhead.</p></li>
1032
1064
  </ul>
1033
- <h2 id="Version-2-0-0-2010-12-31">Version 2.0.0 (2010-12-31)</h2>
1065
+ <h2 id="version-2-0-0-2010-12-31"><a name="version-2-0-0-2010-12-31" href="#version-2-0-0-2010-12-31" class="md2man-permalink" title="permalink"></a>Version 2.0.0 (2010-12-31)</h2>
1034
1066
  <ul>
1035
1067
  <li><p>Add support for loading configuration file, which
1036
1068
  allows you to define additional test file globs
@@ -1040,39 +1072,39 @@ via the <code>@after_test_execution</code> hook in the configuration file.</p></
1040
1072
  <li><p>Before running tests, print out their file paths.</p></li>
1041
1073
  <li><p>Automatically retry when overhead absorption fails.</p></li>
1042
1074
  </ul>
1043
- <h2 id="Version-1-2-0-2010-11-23">Version 1.2.0 (2010-11-23)</h2>
1075
+ <h2 id="version-1-2-0-2010-11-23"><a name="version-1-2-0-2010-11-23" href="#version-1-2-0-2010-11-23" class="md2man-permalink" title="permalink"></a>Version 1.2.0 (2010-11-23)</h2>
1044
1076
  <ul>
1045
1077
  <li><p>Notify user when absorbing overhead initially.</p></li>
1046
- <li><p>DRY up the repetition of <a class="md2man-xref">Time.at(0)</a> calculation.</p></li>
1078
+ <li><p>DRY up the repetition of <a class="md2man-reference">Time.at(0)</a> calculation.</p></li>
1047
1079
  </ul>
1048
- <h2 id="Version-1-1-0-2010-11-22">Version 1.1.0 (2010-11-22)</h2>
1080
+ <h2 id="version-1-1-0-2010-11-22"><a name="version-1-1-0-2010-11-22" href="#version-1-1-0-2010-11-22" class="md2man-permalink" title="permalink"></a>Version 1.1.0 (2010-11-22)</h2>
1049
1081
  <ul>
1050
1082
  <li>All <code>*_{test,spec}_helper.rb</code> files inside <code>test/</code> and
1051
1083
  <code>spec/</code> are now considered to be absorable overhead.</li>
1052
1084
  </ul>
1053
- <h2 id="Version-1-0-2-2010-10-16">Version 1.0.2 (2010-10-16)</h2>
1085
+ <h2 id="version-1-0-2-2010-10-16"><a name="version-1-0-2-2010-10-16" href="#version-1-0-2-2010-10-16" class="md2man-permalink" title="permalink"></a>Version 1.0.2 (2010-10-16)</h2>
1054
1086
  <ul>
1055
1087
  <li>All *<em>helper.rb files inside test/ and spec/
1056
1088
  were absorbed as overhead instead of just
1057
1089
  the test</em>helper.rb and spec_helper.rb files.</li>
1058
1090
  </ul>
1059
- <h2 id="Version-1-0-1-2010-10-16">Version 1.0.1 (2010-10-16)</h2>
1091
+ <h2 id="version-1-0-1-2010-10-16"><a name="version-1-0-1-2010-10-16" href="#version-1-0-1-2010-10-16" class="md2man-permalink" title="permalink"></a>Version 1.0.1 (2010-10-16)</h2>
1060
1092
  <ul>
1061
1093
  <li>Ensure that $LOAD_PATH reflects <code>ruby -Ilib:test</code>.</li>
1062
1094
  </ul>
1063
- <h2 id="Version-1-0-0-2010-10-15">Version 1.0.0 (2010-10-15)</h2>
1095
+ <h2 id="version-1-0-0-2010-10-15"><a name="version-1-0-0-2010-10-15" href="#version-1-0-0-2010-10-15" class="md2man-permalink" title="permalink"></a>Version 1.0.0 (2010-10-15)</h2>
1064
1096
  <ul>
1065
1097
  <li><p>Remove ability to install as a Rails plugin.</p></li>
1066
1098
  <li><p>Move logic from <code>lib/</code> into <code>bin/</code> to keep it simple.</p></li>
1067
1099
  <li><p>Rely on $LOAD_PATH in <code>bin/</code> instead of relative paths.</p></li>
1068
1100
  <li><p>Display status messages for better user interactivity.</p></li>
1069
1101
  </ul>
1070
- <h2 id="Version-0-0-2-2010-10-11">Version 0.0.2 (2010-10-11)</h2>
1102
+ <h2 id="version-0-0-2-2010-10-11"><a name="version-0-0-2-2010-10-11" href="#version-0-0-2-2010-10-11" class="md2man-permalink" title="permalink"></a>Version 0.0.2 (2010-10-11)</h2>
1071
1103
  <ul>
1072
1104
  <li><p>Forgot to register <code>bin/test-loop</code> as gem executable.</p></li>
1073
1105
  <li><p>Revise Usage section into Invocation and Operation.</p></li>
1074
1106
  </ul>
1075
- <h2 id="Version-0-0-1-2010-10-10">Version 0.0.1 (2010-10-10)</h2>
1107
+ <h2 id="version-0-0-1-2010-10-10"><a name="version-0-0-1-2010-10-10" href="#version-0-0-1-2010-10-10" class="md2man-permalink" title="permalink"></a>Version 0.0.1 (2010-10-10)</h2>
1076
1108
  <ul>
1077
1109
  <li>First public release. Enjoy!</li>
1078
1110
  </ul>