Re: [patch] First batch of whitespace patches (Test::Harness)
[p5sagit/p5-mst-13.2.git] / lib / Test / Simple / Changes
1 0.70  Thu Mar 15 15:53:05 PDT 2007
2     Bug Fixes
3     * The change to is_fh() in 0.68 broke the case where a reference to
4       a tied filehandle is used for perl 5.6 and back.  This made the tests
5       puke their guts out.
6
7 0.69  Wed Mar 14 06:43:35 PDT 2007
8     Test fixes
9     - Minor filename compatibility fix to t/fail-more.t [rt.cpan.org 25428]
10
11 0.68  Tue Mar 13 17:27:26 PDT 2007
12     Bug fixes
13     * If your code has a $SIG{__DIE__} handler in some cases functions like
14       use_ok(), require_ok(), can_ok() and isa_ok() could trigger that
15       handler. [rt.cpan.org 23509]
16     - Minor improvement to TB's filehandle detection in the case of overridden
17       isa(). [rt.cpan.org 20890]
18     - Will now install as a core module in 5.6.2 which ships with Test::More.
19       [rt.cpan.org 25163]
20
21     New Features
22     - Test::Builder->is_fh() provides a way to determine if a thing
23       can be used as a filehandle.
24
25     Documentation improvements
26     - Improved the docs for $Test::Builder::Level showing the encouraged
27       use (increment, don't set)
28     - Documented the return value of Test::Builder's test methods
29     - Split out TB's method documentation to differenciate between test
30       methods (ok, is_eq...), methods useful in testing (skip, BAILOUT...)
31       and methods useful for building your own tests (maybe_regex...).
32
33     Test fixes
34     - We required too old a version of Test::Pod::Coverage.  Need 1.08 and not
35       1.00. [rt.cpan.org 25351]
36
37 0.67  Mon Jan 22 13:27:40 PST 2007
38     Test fixes
39     - t/pod_coverage.t would fail if Test::Pod::Coverage between 1.07 and
40       1.00 were installed as it depended on all_modules being exported.
41       [rt.cpan.org 24483]
42
43 0.66  Sun Dec  3 15:25:45 PST 2006
44     - Restore 5.4.5 compatibility (unobe@cpan.org) [rt.cpan.org 20513]
45
46 0.65  Fri Nov 10 10:26:51 CST 2006
47
48 0.64_03  Sun Nov  5 13:09:55 EST 2006
49     - Tests will no longer warn when run against an alpha version of
50       Test::Harness [rt.cpan.org #20501]
51     - Now testing our POD and POD coverage.
52     - Added a LICENSE field.
53     - Removed warning from the docs about mixing numbered and unnumbered
54       tests.  There's nothing wrong with that. [rt.cpan.org 21358]
55     - Change doc examples to talk about $got and $expected rather than
56       $this and $that to correspond better to the diagnostic output
57       [rt.cpan.org 2655]
58
59 0.64_02  Sat Sep  9 12:16:56 EDT 2006
60     - Last release broke Perls earlier than 5.8.
61
62 0.64_01  Mon Sep  4 04:40:42 EDT 2006
63     - Small improvement to the docs to avoid user confusion over
64       "use Test::More tests => $num_tests" (Thanks Eric Wilhelm)
65     - Minor fix for a test failure in is_deeply_fail for some Windows
66       users.  Not a real bug.  [rt.cpan.org 21310]
67     - _print_diag() accidentally leaked into the public documentation.
68       It is a private method.
69     * Added Test::Builder->carp() and croak()
70     * Made most of the error messages report in the caller's context.
71       [rt.cpan.org #20639]
72     * Made the failure diagnostic message file and line reporting portion
73       match Perl's for easier integration with Perl aware editors.
74       (so its "at $file line $line_num." now)
75       [rt.cpan.org #20639]
76     * 5.8.0 threads are no longer supported.  There's too many bugs.
77
78 0.64  Sun Jul 16 02:47:29 PDT 2006
79     * 0.63's change to test_fail() broke backwards compatibility.  They
80       have been removed for the time being.  test_pass() went with it.
81       This is [rt.cpan.org 11317] and [rt.cpan.org 11319].
82     - skip() will now warn if you get the args backwards.
83
84 0.63  Sun Jul  9 02:36:36 PDT 2006
85     * Fixed can_ok() to gracefully handle no class name.
86       Submitted by "Pete Krawczyk" <perl@bsod.net>
87       Implemented by "Richard Foley" <richard.foley@rfi.net>
88       [rt.cpan.org 15654]
89     * Added test_pass() to Test::Builder::Tester rather than having to
90       call test_out("ok 1 - foo"). <chromatic@wgz.org> [rt.cpan.org 11317]
91     * test_fail() now accepts a test diagnostic rather than having to
92       call test_out() separately. <chromatic@wgz.org> [rt.cpan.org 11319]
93     - Changed Test::Builder::Tester docs to show best practice using
94       test_fail() and test_pass().
95     - isnt_num() doc example wrongly showed is_num(). <chromatic@wgz.org>
96     - Fixed a minor typo in the BAIL_OUT() docs. <Jeff Deifik>
97     - Removed the LICENSE field from the Makefile.PL as the release of
98       MakeMaker with that feature has been delayed.
99
100 0.62  Sat Oct  8 01:25:03 PDT 2005
101     * Absorbed Test::Builder::Tester.  The last release broke it because its
102       screen scraping Test::More and the failure output changed.  By
103       distributing them together we ensure TBT won't break again.
104     * Test::Builder->BAILOUT() was missing.
105     - is_deeply() can now handle function and code refs in a very limited
106       way.  It simply looks to see if they have the same referent.
107       [rt.cpan.org 14746]
108
109 0.61  Fri Sep 23 23:26:05 PDT 2005
110     - create.t was trying to read from a file before it had been closed
111       (and thus the changes may not have yet been written).
112     * is_deeply() would call stringification methods on non-object strings
113       which happened to be the name of a string overloaded class.
114       [rt.cpan.org 14675]
115
116 0.60_02  Tue Aug  9 00:27:41 PDT 2005
117     * Added Test::Builder::Module.
118     - Changed Test::More and Test::Simple to use Test::Builder::Module
119     - Minor Win32 testing nit in fail-more.t
120     * Added no_diag() method to Test::Builder and changed Test::More's
121       no_diag internals to use that. [rt.cpan.org 8655]
122     * Deprecated no_diag() as an option to "use Test::More".  Call the
123       Test::Builder method instead.
124
125 0.60_01  Sun Jul  3 18:11:58 PDT 2005
126     - Moved the docs around a little to better group all the testing
127       functions together. [rt.cpan.org 8388]
128     * Added a BAIL_OUT() function to Test::More [rt.cpan.org 8381]
129     - Changed Test::Builder->BAILOUT to BAIL_OUT to match other method's
130       naming conventions.  BAILOUT remains but is deprecated.
131     * Changed the standard failure diagnostics to include the test name.
132       [rt.cpan.org 12490]
133     - is_deeply() was broken for overloaded objects in the top level in
134       0.59_01.  [rt.cpan.org 13506]
135     - String overloaded objects without an 'eq' or '==' method are now
136       handled in cmp_ok() and is().
137     - cmp_ok() will now treat overloaded objects as numbers if the comparison
138       operator is numeric. [rt.cpan.org 13156]
139     - cmp_ok(), like() and unlike will now throw uninit warnings if their
140       arguments are undefined. [rt.cpan.org 13155]
141     - cmp_ok() will now throw warnings as if the comparison were run 
142       normally, for example cmp_ok(2, '==', 'foo') will warn about 'foo' 
143       not being numeric.  Previously all warnings in the comparison were
144       supressed. [rt.cpan.org 13155]
145     - Tests will now report *both* the number of tests failed and if the
146       wrong number of tests were run.  Previously if tests failed and the
147       wrong number were run it would only report the latter. 
148       [rt.cpan.org 13494]
149     - Missing or extra tests are not considered failures for the purposes
150       of calculating the exit code.  Should there be no failures but the
151       wrong number of tests the exit code will be 254.
152     - Avoiding an unbalanced sort in eq_set() [bugs.perl.org 36354]
153     - Documenting that eq_set() doesn't deal well with refs.
154     - Clarified how is_deeply() compares a bit.
155     * Once again working on 5.4.5.
156
157 0.60  Tue May  3 14:20:34 PDT 2005
158
159 0.59_01  Tue Apr 26 21:51:12 PDT 2005
160     * Test::Builder now has a create() method which allows you to create
161       a brand spanking new Test::Builder object.
162     * require_ok() was not working for single letter module names.
163     * is_deeply() and eq_* now work with circular scalar references
164       (Thanks Fergal)
165     * Use of eq_* now officially discouraged.
166     - Removed eq_* from the SYNOPSIS.
167     - is_deeply(undef, $not_undef); now works. [rt.cpan.org 9441]
168     - is_deeply() was mistakenly interpeting the same reference used twice
169       in a data structure as being circular causing failures.
170       [rt.cpan.org 11623]
171     - Loading Test::Builder but not using it would interfere with the
172       exit code if the code exited. [rt.cpan.org 12310]
173     - is_deeply() diagnostics now disambiguate between stringified references
174       and references. [rt.cpan.org 8865]
175     - Files opened by the output methods are now autoflushed.
176     - todo() now honors $Level when looking for $TODO.
177
178 0.54  Wed Dec 15 04:18:43 EST 2004
179     * $how_many is optional for skip() and todo_skip().  Thanks to 
180       Devel::Cover for pointing this out.
181     - Removed a user defined function called err() in the tests to placate
182       users of older versions of the dor patch before err() was weakend.
183       [rt.cpan.org 8734]
184
185 0.53_01  Sat Dec 11 19:02:18 EST 2004
186     - current_test() can now be set backward.
187     - *output() methods now handle tied handles and *FOO{IO} properly.
188     - maybe_regex() now handles undef gracefully.
189     - maybe_regex() now handles 'm,foo,' style regexes.
190     - sort_bug.t wasn't checking for threads properly.  Would fail on
191       5.6 that had ithreads compiled in. [rt.cpan.org 8765]
192
193 0.53  Mon Nov 29 04:43:24 EST 2004
194     - Apparently its possible to have Module::Signature installed without
195       it being functional.  Fixed the signature test to account for this.
196       (not a real bug)
197
198 0.52  Sun Nov 28 21:41:03 EST 2004
199     - plan() now better checks that the given plan is valid. 
200       [rt.cpan.org 2597]
201
202 0.51_02  Sat Nov 27 01:25:25 EST 2004
203     * is_deeply() and all the eq_* functions now handle circular data
204       structures.  [rt.cpan.org 7289]
205     * require_ok() now handles filepaths in addition to modules.
206     - Clarifying Test::More's position on overloaded objects 
207     - Fixed a bug introduced in 0.51_01 causing is_deeply() to pierce
208       overloaded objects.
209     - Mentioning rt.cpan.org for reporting bugs.
210
211 0.51_01  Fri Nov 26 02:59:30 EST 2004
212     - plan() was accidentally exporting functions [rt.cpan.org 8385]
213     * diag @msgs would insert # between arguments. [rt.cpan.org 8392]
214     * eq_set() could cause problems under threads due to a weird sort bug
215       [rt.cpan.org 6782]
216     * undef no longer equals '' in is_deeply() [rt.cpan.org 6837]
217     * is_deeply() would sometimes compare references as strings.
218       [rt.cpan.org 7031]
219     - eq_array() and eq_hash() could hold onto references if they failed
220       keeping them in memory and preventing DESTROY.  [rt.cpan.org 7032]
221     * is_deeply() could confuse [] with a non-existing value
222       [rt.cpan.org 7030]
223     - is_deeply() diagnostics a little off when scalar refs were inside
224       an array or hash ref [rt.cpan.org 7033]
225     - Thanks to Fergal Daly for ferretting out all these long standing 
226       is_deeply and eq_* bugs.
227
228 0.51  Tue Nov 23 04:51:12 EST 2004
229     - Fixed bug in fail_one.t on Windows (not a real bug).
230     - TODO reasons as overloaded objects now won't blow up under threads.
231       [Autrijus Tang]
232     - skip() in 0.50 tickled yet another bug in threads::shared.  Hacked
233       around it.
234
235 0.50  Sat Nov 20 00:28:44 EST 2004
236     - Fixed bug in fail-more test on Windows (not a real bug).
237       [rt.cpan.org 8022]
238     - Change from CVS to SVK.  Hopefully this is the last time I move
239       version control systems.
240     - Again removing File::Spec dependency (came back in 0.48_02)
241     - Change from Aegis back to CVS
242
243 0.49  Thu Oct 14 21:58:50 EDT 2004
244     - t/harness_active.t would fail for frivolous reasons with older
245       MakeMakers (test bug) [thanks Bill Moseley for noticing]
246
247 0.48_02  Mon Jul 19 02:07:23 EDT 2004
248     * Overloaded objects as names now won't blow up under threads
249       [rt.cpan.org 4218 and 4232]
250     * Overloaded objects which stringify to undef used as test names
251       now won't cause internal uninit warnings. [rt.cpan.org 4232]
252     * Failure diagnostics now come out on their own line when run in 
253       Test::Harness.
254     - eq_set() sometimes wasn't giving the right results if nested refs 
255       were involved [rt.cpan.org 3747]
256     - isnt() giving wrong diagnostics and warning if given any undefs.
257     * Give unlike() the right prototype [rt.cpan.org 4944]
258     - Change from CVS to Aegis
259     - is_deeply() will now do some basic argument checks to guard against
260       accidentally passing in a whole array instead of its reference.
261     - Mentioning Test::Differences, Test::Deep and Bundle::Test.
262     - Removed dependency on File::Spec.
263     - Fixing the grammar of diagnostic outputs when only a single test
264       is run or failed (ie. "Looks like you failed 1 tests").
265       [Darren Chamberlain]
266
267 0.48_01  Mon Nov 11 02:36:43 EST 2002
268     - Mention Test::Class in Test::More's SEE ALSO
269     * use_ok() now DWIM for version checks
270     - More problems with ithreads fixed.
271     * Test::Harness upgrade no longer optional.  It was causing too
272       many problems when the T::H upgrade didn't work.
273     * Drew Taylor added a 'no_diag' option to Test::More to switch
274       off all diag() statements.
275     * Test::Builder/More no longer automatically loads threads.pm
276       when threads are enabled.  The user must now do this manually.
277     * Alex Francis added reset() reset the state of Test::Builder in 
278       persistent environments.
279     - David Hand noted that Test::Builder/More exit code behavior was
280       not documented.  Only Test::Simple.
281
282 0.47  Mon Aug 26 03:54:22 PDT 2002 
283     * Tatsuhiko Miyagawa noticed Test::Builder was accidentally storing 
284       objects passed into test functions causing problems with tests 
285       relying on object destruction.
286     - Added example of calculating the number of tests to Test::Tutorial
287     - Peter Scott made the ending logic not fire on child processes when
288       forking.
289     * Test::Builder is once again ithread safe.
290
291 0.46  Sat Jul 20 19:57:40 EDT 2002
292     - Noted eq_set() isn't really a set comparision.
293     - Test fix, exit codes are broken on MacPerl (bleadperl@16868)
294     - Make Test::Simple install itself into the core for >= 5.8
295     - Small fixes to Test::Tutorial and skip examples
296     * Added TB->has_plan() from Adrian Howard
297     - Clarified the meaning of 'actual_ok' from TB->details
298     * Added TB->details() from chromatic
299     - Neil Watkiss fixed a pre-5.8 test glitch with threads.t
300     * If the test died before a plan, it would exit with 0 [ID 20020716.013]
301
302 0.45  Wed Jun 19 18:41:12 EDT 2002
303     - Andy Lester made the SKIP & TODO docs a bit clearer.
304     - Explicitly disallowing double plans. (RT #553)
305     - Kicking up the minimum version of Test::Harness to one that's
306       fairly bug free.
307     - Made clear a common problem with use_ok and BEGIN blocks.
308     - Arthur Bergman made Test::Builder thread-safe.
309
310 0.44  Thu Apr 25 00:27:27 EDT 2002
311     - names containing newlines no longer produce confusing output
312       (from chromatic)
313     - chromatic provided a fix so can_ok() honors can() overrides.
314     - Nick Ing-Simmons suggested todo_skip() be a bit clearer about
315       the skipping part.
316     - Making plan() vomit if it gets something it doesn't understand.
317     - Tatsuhiko Miyagawa fixed use_ok() with pragmata on older perls.
318     - quieting diag(undef)
319
320 0.43  Thu Apr 11 22:55:23 EDT 2002
321     - Adrian Howard added TB->maybe_regex()
322     - Adding Mark Fowler's suggestion to make diag() return
323       false.
324     - TB->current_test() still not working when no tests were run via
325       TB itself.  Fixed by Dave Rolsky.
326
327 0.42  Wed Mar  6 15:00:24 EST 2002
328     - Setting Test::Builder->current_test() now works (see what happens
329       when you forget to test things?)
330     - The change in is()'s undef/'' handling in 0.34 was an API change, 
331       but I forgot to declare it as such.
332     - The apostrophilic jihad attacks!  Philip Newtons patch for
333       grammar mistakes in the doc's.
334
335 0.41  Mon Dec 17 22:45:20 EST 2001
336     * chromatic added diag()
337     - Internal eval()'s sometimes interfering with $@ and $!.  Fixed.
338
339 0.40  Fri Dec 14 15:41:39 EST 2001
340     * isa_ok() now accepts unblessed references gracefully
341     - Nick Clark found a bug with like() and a regex with % in it.
342     - exit.t was hanging on 5.005_03 VMS perl.  Test now skipped.
343     - can_ok() would pass if no methods were given.  Now fails.
344     - isnt() diagnostic output format changed
345     * Added some docs about embedding and extending Test::More
346     * Added Test::More->builder
347     * Added cmp_ok()
348     * Added todo_skip()
349     * Added unlike()
350     - Piers pointed out that sometimes people override isa().
351       isa_ok() now accounts for that.
352
353 0.36  Thu Nov 29 14:07:39 EST 2001
354     - Matthias Urlichs found that intermixed prints to STDOUT and test 
355       output came out in the wrong order when piped.
356
357 0.35  Tue Nov 27 19:57:03 EST 2001
358     - Little glitch in the test suite.  No actual bug.
359
360 0.34  Tue Nov 27 15:43:56 EST 2001
361     * **API CHANGE** Empty string no longer matches undef in is() 
362       and isnt().
363     * Added isnt_eq and isnt_num to Test::Builder.
364
365 0.33  Mon Oct 22 21:05:47 EDT 2001
366     * It's now officially safe to redirect STDOUT and STDERR without
367       affecting test output.
368     - License and POD cleanup by Autrijus Tang
369     - Synched up Test::Tutorial with the wiki version
370     - Minor VMS test nit.
371
372 0.32  Tue Oct 16 16:52:02 EDT 2001
373     * Finally added a seperate plan() function
374     * Adding a name field to isa_ok()
375       (Requested by Dave Rolsky)
376     - Test::More was using Carp.pm, causing the occasional false positive.
377       (Reported by Tatsuhiko Miyagawa)
378
379 0.31  Mon Oct  8 19:24:53 EDT 2001
380     * Added an import option to Test::More
381     * Added no_ending and no_header options to Test::Builder
382       (Thanks to Dave Rolsky for giving this a swift kick in the ass)
383     * Added is_deeply().  Display of scalar refs not quite 100%
384       (Thanks to Stas Bekman for Apache::TestUtil idea thievery)
385     - Fixed a minor warning with skip()
386       (Thanks to Wolfgang Weisselberg for finding this one)
387
388 0.30  Thu Sep 27 22:10:04 EDT 2001
389     * Added Test::Builder
390       (Thanks muchly to chromatic for getting this off the ground!)
391     * Diagnostics are back to using STDERR *unless* it's from a todo
392       test.  Those go to STDOUT.
393     - Fixed it so nothing is printed if a test is run with a -c flag.
394       Handy when a test is being deparsed with B::Deparse.
395
396 0.20  *UNRELEASED*
397
398 0.19  Tue Sep 18 17:48:32 EDT 2001
399     * Test::Simple and Test::More no longer print their diagnostics
400       to STDERR.  It instead goes to STDOUT.
401     * TODO tests which fail now print full failure diagnostics.
402     - Minor bug in ok()'s test name diagnostics made it think a blank
403       name was a number.
404     - ok() less draconian about test names
405     - Added temporary special case for Parrot::Test
406     - Now requiring File::Spec for our tests.
407
408 0.18  Wed Sep  5 20:35:24 EDT 2001
409     * ***API CHANGE*** can_ok() only counts as one test
410     - can_ok() has better diagnostics
411     - Minor POD fixes from mjd
412     - adjusting the internal layout to make it easier to put it into
413       the core
414
415 0.17  Wed Aug 29 20:16:28 EDT 2001
416     * Added can_ok() and isa_ok() to Test::More
417
418 0.16  Tue Aug 28 19:52:11 EDT 2001
419     * vmsperl foiled my sensisble exit codes.  Reverting to a much more
420       coarse scheme.
421
422 0.15  Tue Aug 28 06:18:35 EDT 2001  *UNRELEASED*
423     * Now using sensible exit codes on VMS.
424
425 0.14  Wed Aug 22 17:26:28 EDT 2001
426     * Added a first cut at Test::Tutorial
427
428 0.13  Tue Aug 14 15:30:10 EDT 2001
429     * Added a reason to the skip_all interface
430     - Fixed a bug to allow 'use Test::More;' to work.
431       (Thanks to Tatsuhiko Miyagawa again)
432     - Now always testing backwards compatibility.
433
434 0.12  Tue Aug 14 11:02:39 EDT 2001
435     * Fixed some compatibility bugs with older Perls
436       (Thanks to Tatsuhiko Miyagawa)
437
438 0.11  Sat Aug 11 23:05:19 EDT 2001
439     * Will no longer warn about testing undef values
440     - Escaping # in test names
441     - Ensuring that ok() returns true or false and not undef
442     - Minor doc typo in the example
443
444 0.10  Tue Jul 31 15:01:11 EDT 2001
445     * Test::More is now distributed in this tarball.
446     * skip and todo tests work!
447     * Extended use_ok() so it can import
448     - A little internal rejiggering
449     - Added a TODO file
450
451 0.09  Wed Jun 27 02:55:54 EDT 2001
452     - VMS fixes
453
454 0.08  Fri Jun 15 14:39:50 EDT 2001
455     - Guarding against $/ and -l
456     - Reformatted the way failed tests are reported to make them stand out
457       a bit better.
458
459 0.07  Tue Jun 12 15:55:54 BST 2001
460     - 'use Test::Simple' by itself no longer causes death
461     - Yet more fixes for death in eval
462     - Limiting max failures reported via exit code to 254.
463
464 0.06  Wed May  9 23:38:17 BST 2001
465     - Whoops, left a private method in the public docs.
466
467 0.05  Wed May  9 20:40:35 BST 2001
468     - Forgot to include the exit tests.
469     - Trouble with exiting properly under 5.005_03 and 5.6.1 fixed
470     - Turned off buffering
471     * 5.004 new minimum version
472     - Now explicitly tested with 5.6.1, 5.6.0, 5.005_03 and 5.004
473
474 0.04  Mon Apr  2 11:05:01 BST 2001
475     - Fixed "require Test::Simple" so it doesn't bitch and exit 255
476     - Now installable with the CPAN shell.
477
478 0.03  Fri Mar 30 08:08:33 BST 2001
479     - ok() now prints on what line and file it failed.
480     - eval 'die' was considered abnormal.  Fixed.
481
482 0.02  Fri Mar 30 05:12:14 BST 2001      *UNRELEASED*
483     - exit codes tested
484     * exit code on abnormal exit changed to 255 (thanks to Tim Bunce for
485       pointing out that Unix can't do negative exit codes)
486     - abnormal exits now better caught.
487     - No longer using Test.pm to test this, but still minimum of 5.005
488       due to needing $^S.
489
490 0.01  Wed Mar 28 06:44:44 BST 2001
491     - First working version released to CPAN
492