HISTORY.markdown in tork-17.0.0 vs HISTORY.markdown in tork-17.0.1

- old
+ new

@@ -1,10 +1,30 @@ ------------------------------------------------------------------------------ +Version 17.0.1 (2012-01-29) +------------------------------------------------------------------------------ + +Corrections: + + * tork-herald(1) *sometimes* reported changed test files twice. + + * tork/driver: only whole test file runs should qualify as pass. + + * tork/config/cucumber: only set ARGV for `*.feature` test files. + + * Tork::Client::Transceiver needs to stop both TX & RX loops. + +Housekeeping: + + * tork/driver: store test file lists in Set, not Array. + + * HISTORY: use single-word change-set descriptions. + +------------------------------------------------------------------------------ Version 17.0.0 (2012-01-27) ------------------------------------------------------------------------------ -Breaking changes: +Divergences: * tork-herald(1) now emits batches of single-line JSON arrays instead of printing one (raw) path per line. This makes IPC uniform across Tork. * tork-master(1) now emits log_file and worker_number in status messages. @@ -14,15 +34,17 @@ * The old order was: worker_number, log_file, test_file, line_numbers. * The new order is: test_file, line_numbers, log_file, worker_number. -New features: +Improvements: * GH-24: add `tork/config/dotlog` configuration helper to "hide" log files. + (Nicolas Fouché) * GH-25: add `tork/config/logdir` configuration helper to isolate log files. + (Jose Pablo Barrantes) * tork(1) now strips all whitespace from your input, in case you pressed spacebar or tab a few times, by accident, before entering your command. Housekeeping: @@ -46,19 +68,19 @@ ------------------------------------------------------------------------------ Version 16.0.0 (2012-01-25) ------------------------------------------------------------------------------ -Breaking changes: +Divergences: * Drop the `Tork::Config.test_name_extractor` configuration option. * Pass line numbers instead of test names to before/after fork hooks. * Pass $~ (MatchData) to `Tork::Config::test_file_globbers` functions. -New features: +Improvements: * tork/config/cucumber: only run changed scenarios in changed features. Housekeeping: @@ -66,15 +88,15 @@ ------------------------------------------------------------------------------ Version 15.1.0 (2012-01-25) ------------------------------------------------------------------------------ -New features: +Improvements: * GH-19: add `tork cucumber` for running cucumber features. -Bug fixes: +Corrections: * tork/config/rails: support Rails 2 and don't assume AR is used. (Benjamin Quorning) * tork/config: settings from configuration helpers specified in @@ -88,11 +110,11 @@ ------------------------------------------------------------------------------ Version 15.0.1 (2012-01-24) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * GH-21: Ruby 1.9 class_eval() is smarter than 1.8. * GH-20: forgot `require 'thread'` for Mutex class. (Jesse Cooke) @@ -114,11 +136,11 @@ ------------------------------------------------------------------------------ Version 15.0.0 (2012-01-23) ------------------------------------------------------------------------------ -Breaking changes: +Divergences: * This project has been renamed from TestR to Tork (test with fork) in order to better compete with rival projects, namely Spork! >:-) Credit goes to Brian D. Burns for thinking of this most succinct & awesome project name! He also created the snazzy ASCII-art logo featured in the project README. @@ -127,11 +149,11 @@ ------------------------------------------------------------------------------ Version 14.3.0 (2012-01-20) ------------------------------------------------------------------------------ -External changes: +Improvements: * testr(1): notify user while dispatching their commands. This is especially useful when the "rerun_passed_test_files" command has been dispatched but there are no passed test files, so nothing happens and from the user's perspective: TestR sucks because it's unresponsive. @@ -144,11 +166,11 @@ Thanks to Spencer Steffen for [contributing this solution]( https://github.com/sunaku/tork/issues/14#issuecomment-3539470). * testr-driver(1): document the "over" status message in manual page. -Internal changes: +Housekeeping: * testr-driver(1): keep same herald; only replace master. * testr(1): shorten code for loop break on quit command. @@ -162,51 +184,53 @@ ------------------------------------------------------------------------------ Version 14.2.0 (2012-01-16) ------------------------------------------------------------------------------ -New features: +Improvements: * Add ability to run `testr rails` without needing a `.testr.rb` file. * testr(1) no longer shows command menu at startup. Press ENTER to see it. * testr(1) now notifies you before absorbing overhead at startup. -Bug fixes: +Corrections: * testr(1) now accepts death silently when Control-C is pressed. ------------------------------------------------------------------------------ Version 14.1.3 (2012-01-13) ------------------------------------------------------------------------------ -Internal changes: +Corrections: * Add support Guard v0.9.0 and newer in `testr-herald`. (Jose Pablo Barrantes) +Housekeeping: + * Tighten version constraints for gem dependencies to avoid future breakages. ------------------------------------------------------------------------------ Version 14.1.2 (2012-01-09) ------------------------------------------------------------------------------ -External changes: +Improvements: * Don't consider partial test file pass as full pass. -Internal changes: +Housekeeping: * Upgrade to binman 3 for better bundler support. ------------------------------------------------------------------------------ Version 14.1.1 (2011-12-07) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Do not fail when given test file no longer exists. * Make xUnit `--name` option regexp case-insensitive. @@ -233,11 +257,11 @@ ------------------------------------------------------------------------------ Version 14.1.0 (2011-11-03) ------------------------------------------------------------------------------ -New features: +Improvements: * Make servers responsive to quit request (SIGTERM) from upstream. This change lets the user quit testr-master(1) while it is loading test execution overhead (which can be a lengthy, blocking operation). @@ -250,11 +274,11 @@ The single-line JSON message protocol used by these scripts is now documented in their manual pages, so you should have everything you need to create *your own custom user interface to TestR* if you wish! :-) -Bug fixes: +Corrections: * SIGCHLD does not awaken main thread in Ruby 1.9.3p0. Housekeeping: @@ -266,20 +290,20 @@ ------------------------------------------------------------------------------ Version 14.0.3 (2011-10-11) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Forgot to migrate the `testr/config/rails` configuration helper to use the new TestR configuration parameter names. ------------------------------------------------------------------------------ Version 14.0.2 (2011-10-11) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Fix updating passed/failed test files bookkeeping. Once a test file failed, it was (incorrectly) always considered failed, even if it passed later on. @@ -291,11 +315,11 @@ ------------------------------------------------------------------------------ Version 14.0.1 (2011-10-10) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Use blue/red for pass/fail instead of green/red to accommodate the color blind. * Incorrect test name regexp was passed down to Test::Unit. This broke @@ -307,11 +331,11 @@ ------------------------------------------------------------------------------ Version 14.0.0 (2011-10-09) ------------------------------------------------------------------------------ -Incompatible changes: +Divergences: * Renamed this project and its resources from test-loop to TestR. * Renamed the `reabsorb_file_globs` configuration parameter to `reabsorb_file_greps`. It now contains regular expressions. @@ -331,11 +355,11 @@ * Removed the `delay_per_iteration` and `after_each_test` configuration parameters. * Removed the `test/loop/notify` and `test-loop/coco` libraries. -New features: +Improvements: * The file system is no longer polled to detect modified files. Instead, it is monitored for file modification events in a portable and efficient manner using the [Guard](https://github.com/guard/guard) library. @@ -367,16 +391,16 @@ ------------------------------------------------------------------------------ Version 13.0.0 (2011-08-24) ------------------------------------------------------------------------------ -Incompatible changes: +Divergences: * Pass worker sequence number as the last argument to lambda functions in `Test::Loop.before_each_test` and `Test::Loop.after_each_test` arrays. -New features: +Improvements: * In the `test/loop/rails` configuration preset: * Automatically test a controller when its model or factory is modified. @@ -402,11 +426,11 @@ ------------------------------------------------------------------------------ Version 12.3.1 (2011-07-19) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Binary data could not be stored in environment variable values. Housekeeping: @@ -414,11 +438,11 @@ ------------------------------------------------------------------------------ Version 12.3.0 (2011-07-19) ------------------------------------------------------------------------------ -New features: +Improvements: * Add `Test::Loop::max_concurrent_tests` configuration parameter to limit the number of test files run concurrently (default 4). Otherwise, with large test suites, we could end up swamping the machine running the tests by forking hundreds of test files at once. (Jacob Helwig) @@ -447,20 +471,20 @@ ------------------------------------------------------------------------------ Version 12.1.0 (2011-04-29) ------------------------------------------------------------------------------ -New features: +Improvements: * Add `Test::Loop.delay_per_iteration` parameter to control the number of seconds (or fractions thereof) to sleep in between test-loop iterations. ------------------------------------------------------------------------------ Version 12.0.4 (2011-04-29) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Reabsorb overhead when user's configuration file changes. (Brian D. Burns and Daniel Pittman) * `Thread.new { system() }` really is backgrounded so `fork { system() }` is @@ -469,11 +493,11 @@ ------------------------------------------------------------------------------ Version 12.0.3 (2011-04-25) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Fix SIGCHLD handling and test completion reporting (Daniel Pittman). We need to reap all ready children in SIGCHLD, not just the first, and should not be reporting completion in the signal handler. @@ -527,11 +551,11 @@ ------------------------------------------------------------------------------ Version 12.0.2 (2011-04-21) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Consider DB schema dump file as overhead in Rails. * Do not consider test factories as overhead in Rails. @@ -553,11 +577,11 @@ ------------------------------------------------------------------------------ Version 12.0.1 (2011-04-20) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Restore support for Ruby 1.8.7. * Allow user's test execution overhead to fork. @@ -575,21 +599,21 @@ ------------------------------------------------------------------------------ Version 12.0.0 (2011-04-19) ------------------------------------------------------------------------------ -Incompatible changes: +Divergences: * You must now explicitly `require 'test/loop/rails'` for Rails support because we can only *automatically* apply our Railtie (to disable class caching) after the overhead has been loaded, and by then it's too late: your models are already loaded & cached by the Rails environment. * Your tests can no longer read from the user's terminal (master's STDIN); instead they will read from an empty stream (the reading end of IO.popen). -Bug fixes: +Corrections: * Replace threads with SIGCHLD for reporting test results. This fixes deadlock errors that sometimes occurred when the user's chosen test library tried to print something to STDOUT/STDERR (even though those @@ -628,30 +652,30 @@ ------------------------------------------------------------------------------ Version 11.0.1 (2011-04-14) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Only attempt to define Railtie if the current Rails version supports it. ------------------------------------------------------------------------------ Version 11.0.0 (2011-04-14) ------------------------------------------------------------------------------ -Incompatible changes: +Divergences: * The `test/loop/rails` preset has been internalized and is now applied automatically if your test execution overhead includes Ruby on Rails. -New features: +Improvements: * If you are using Rails 3, test-loop will automatically set `config.cache_classes = false` for your test environment. (Brian D. Burns) -Bug fixes: +Corrections: * Avoid deadlock errors when printing output from Test::Unit and MiniTest. (Brian D. Burns) `write': deadlock detected (fatal) @@ -663,11 +687,11 @@ ------------------------------------------------------------------------------ Version 10.0.1 (2011-04-08) ------------------------------------------------------------------------------ -Bug fixes: +Corrections: * Workers must ignore SIGTSTP, otherwise master waits forever before exiting. * Unregister trap in workers upon first reception instead of racing to @@ -679,20 +703,20 @@ ------------------------------------------------------------------------------ Version 10.0.0 (2011-04-06) ------------------------------------------------------------------------------ -Incompatible changes: +Divergences: * The `Test::Loop.before_each_test` and `Test::Loop.after_each_test` parameters are arrays now. ------------------------------------------------------------------------------ Version 9.4.0 (2011-04-06) ------------------------------------------------------------------------------ -New features: +Improvements: * Allow lambda functions in `Test::Loop.test_file_matchers` to return `nil` so that you can exclude certain tests from being executed. (Brian D. Burns) @@ -700,11 +724,11 @@ searchability. The monitoring command in the README is now simplified to the following: watch 'ps xf | grep test-loop | sed 1,3d' -Bug fixes: +Corrections: * Skip `at_exit()` when exiting master process. This prevents an empty test from being run when exiting the loop after having processed a test/spec helper that loads the Test::Unit library. (Brian D. Burns) @@ -720,11 +744,11 @@ ------------------------------------------------------------------------------ Version 9.3.0 (2011-04-01) ------------------------------------------------------------------------------ -New features: +Improvements: * Resume currently running tests--as well as those currently needing to be run--after reabsorbing test execution overhead. (Brian D. Burns) * Stop currently running tests (and wait for them to finish) before @@ -737,11 +761,11 @@ * Notify user when overhead changes instead of when restarting the loop. * Use ANSI clear line command to erase control-key combinations outputted by shells such as BASH and ZSH in test-loop's output. (Brian D. Burns) -Bug fixes: +Corrections: * `@last_ran_at` was being set during every iteration of the loop. This is problematic when Ruby's `Time.now` is more precise than your filesystem's modification timestamp. For example, in the ext3 filesystem under Linux, file modification timestamps have a precision of 1 second. (Brian D. @@ -793,11 +817,11 @@ * Shield normal output from control-key combos printed into the terminal. * Do not print worker PID in status messages because every test file has exactly one worker anyway. - * Reabsorb on any `*.{rb,yml}` changes beneath the config/ directory. + * Reabsorb on any `*.{rb,yml}` changes beneath the `config/` directory. * Do not reabsorb overhead when the configuration file changes. * Add `after_each_test` example for failure-only notifications. @@ -982,11 +1006,11 @@ ------------------------------------------------------------------------------ Version 3.0.0 (2011-01-04) ------------------------------------------------------------------------------ - * Replace Rake #pathmap usage with lambda functions + * Replace Rake pathmap usage with lambda functions in the `@source_file_to_test_file_mapping` hash. * Be resilient to syntax errors from loaded files. ------------------------------------------------------------------------------ @@ -1026,18 +1050,18 @@ Version 1.2.0 (2010-11-23) ------------------------------------------------------------------------------ * Notify user when absorbing overhead initially. - * DRY up the repetiton of Time.at(0) calculation. + * DRY up the repetition of Time.at(0) calculation. ------------------------------------------------------------------------------ Version 1.1.0 (2010-11-22) ------------------------------------------------------------------------------ - * All *_{test,spec}_helper.rb files inside test/ and - spec/ are now considered to be absorable overhead. + * All `*_{test,spec}_helper.rb` files inside `test/` and + `spec/` are now considered to be absorable overhead. ------------------------------------------------------------------------------ Version 1.0.2 (2010-10-16) ------------------------------------------------------------------------------ @@ -1055,20 +1079,20 @@ Version 1.0.0 (2010-10-15) ------------------------------------------------------------------------------ * Remove ability to install as a Rails plugin. - * Move logic from lib/ into bin/ to keep it simple. + * Move logic from `lib/` into `bin/` to keep it simple. - * Rely on $LOAD_PATH in bin/ instead of relative paths. + * Rely on $LOAD_PATH in `bin/` instead of relative paths. * Display status messages for better user interactivity. ------------------------------------------------------------------------------ Version 0.0.2 (2010-10-11) ------------------------------------------------------------------------------ - * Forgot to register bin/test-loop as gem executable. + * Forgot to register `bin/test-loop` as gem executable. * Revise Usage section into Invocation and Operation. ------------------------------------------------------------------------------ Version 0.0.1 (2010-10-10)