doc/history.erb in dfect-1.0.0 vs doc/history.erb in dfect-1.1.0

- old
+ new

@@ -1,69 +1,129 @@ %#-- -%# Copyright 2009 Suraj N. Kurapati -%# See the LICENSE file for details. +%# Copyright protects this work. +%# See LICENSE file for details. %#++ + %|chapter "History" - % sean_ohalpin_musing = "[Sean O'Halpin's musing](http://www.ruby-forum.com/topic/183354#801895)" + %|history - For the longest time, I took <%= competitors.link_for 'Test::Unit' %> and <%= competitors.link_for 'RSpec' %> for granted. They were the epitomy of modern Ruby practice; the insurmountable status quo; immortalized in books, conferences, and blogs alike. - Why would *anyone* think of using anything remotely different, let alone be foolish enough to write an alternative testing library when these are clearly *good enough*? - Recent experiments in assertion testing libraries smashed my world view: - * <%= competitors.link_for 'assert{ 2.0 }' %> - * <%= competitors.link_for 'Testy' %> - * <%= competitors.link_for 'Verify' %> + %|section "Version 1.1.0 (2009-10-27)" - The status quo was certainly *not* "good enough", as I had so blindly believed all these years. In fact, they were *verbose* behemoths that chose to encode endless permutations of conjecture into methods. + This release adds a new method for emitting status messages and does some internal housekeeping. - Empowered by this revelation and inspired by <%= sean_ohalpin_musing %> on alternative names for assertion methods, I rose to challenge the status quo. + %|paragraph "Thank you" + + * Iñaki Baz Castillo used Dfect and suggested new features. + + + %|paragraph "New features" + + * Add `Dfect::S()` method for <%= xref "Reporting", "adding status messages" %> to the execution report. This feature was [requested by](http://github.com/sunaku/dfect/issues/closed#issue/1) Iñaki Baz Castillo. + + + %|paragraph "Housekeeping" + + * Remove unused require of 'delegate' standard library in 'dfect/spec' RSpec emulation layer. + + * Mention <%= xref "Emulation" %> layers for popular testing libraries. + + * Mention that assertions take an optional message parameter. + + * Replace sample unit test with Dfect test suite. + + * Upgrade user manual to ERBook 9.0.0. + + + %|section "Version 1.0.1 (2009-10-07)" + + This release fixes a bug in the Test::Unit emulation library and revises the user manual. + + + %|paragraph "Bug fixes" + + * The parameters for the `assert_equal()` method in the <tt>dfect/unit</tt> library were in the wrong order. + + + %|paragraph "Housekeeping" + + * Revise user manual to better fit jQuery UI tabs. + + * Justify the use of `eval()` in emulation libraries. + + * Use simpler Copyright reminder at the top of every file. + + * Make SLOC count in user manual reflect the *core* library only. + + * Mark code spans with `{:lang=ruby}` instead of HTML `<code/>` tags. + + * Open source is for fun, so [be nice](http://loiclemeur.com/english/2009/03/never-criticize-your-competitors.html): speak of "related works" instead of "competitors". + + %|section "Version 1.0.0 (2009-05-03)" + This release improves default choices, adds emulation layers to mimic other testing libraries, and fixes some bugs. + %|paragraph "Incompatible changes" + * The `:debug` option is now enabled by default and is no longer linked to the value of `$DEBUG`. * `Dfect.run()` now appends to previous results by default. This behavior can be disabled by passing `false` to the method. + %|paragraph "New features" + * Add emulation layers to mimic other testing libraries: * <tt>dfect/unit</tt> --- Test::Unit * <tt>dfect/mini</tt> --- Minitest * <tt>dfect/spec</tt> --- RSpec + %|paragraph "Bug fixes" + * Do not blindly replace `Class#to_yaml`; it might be fixed someday. + %|paragraph "Housekeeping" + * Add <%= xref "Motivation" %> section in user manual to promote interactive debugging. * Add brief <%= xref "History" %> of this project's inception. * Remove redundant assertions for F!() and T!() methods in test suite. * Add copyright notice at the top of every file. + %|section "Version 0.1.0 (2009-04-28)" + This release adds new variations to assertion methods, fixes several bugs, and improves test coverage. + %|paragraph "Thank you" + * François Beausoleil contributed patches for both code *and* tests! :-) + %|paragraph "New features" + * Added <%= xref "Negation", "negation (m!)" %> and <%= xref "Sampling", "sampling (m?)" %> variations to <%= xref "Assertions", "assertion methods" %>. These new methods implement assertion functionality missing so far (previously we could not assert that a given exception was NOT thrown) and thereby allow us to fully test Dfect using itself. * Added documentation on <%= xref "Insulation", "how to insulate tests" %> from the global Ruby namespace. + %|paragraph "Bug fixes" + * The `E()` method did not consider the case where a block does not raise anything as a failure. ---*François Beausoleil* * When creating a report about an assertion failure, an exception would be thrown if any local variables pointed to an empty array. * The `Dfect::<()` method broke the inheritance-checking behavior of the < class method. @@ -72,10 +132,30 @@ * Added workaround for YAML error when serializing a class object: TypeError: can't dump anonymous class Class + %|paragraph "Housekeeping" + * Filled the big holes in test coverage. Everything except the runtime debugging logic is now covered by the unit tests. + %|section "Version 0.0.0 (2009-04-13)" - This is the first public release of <%= $project %>. It was inspired by <%= sean_ohalpin_musing %> on alternative names for assertion methods. + + % sean_ohalpin_musing = "[Sean O'Halpin's musing](http://www.ruby-forum.com/topic/183354#801895)" + + For the longest time, I took <%= related_works.link_for 'Test::Unit' %> and <%= related_works.link_for 'RSpec' %> for granted. They were the epitomy of modern Ruby practice; the insurmountable status quo; immortalized in books, conferences, and blogs alike. + + Why would *anyone* think of using anything remotely different, let alone be foolish enough to write an alternative testing library when these are clearly *good enough*? + + Recent experiments in assertion testing libraries smashed my world view: + * <%= related_works.link_for 'assert{ 2.0 }' %> + * <%= related_works.link_for 'Testy' %> + * <%= related_works.link_for 'Verify' %> + + The status quo was certainly *not* "good enough", as I had so blindly believed all these years. In fact, they were *verbose* behemoths that chose to encode endless permutations of conjecture into methods. + + Empowered by this revelation and inspired by <%= sean_ohalpin_musing %> on alternative names for assertion methods, I rose to challenge the status quo. + + And so I present to you the first public release of <%= $project %>. +