Commit | Line | Data |
b965d173 |
1 | Revision history for Test-Harness |
2 | |
bdaf8c65 |
3 | 3.16 2009-02-19 |
4 | - Fix path splicing on platforms where the path separator |
5 | is not ':'. |
6 | - Fixes/skips for failing Win32 tests. |
7 | - Don't break with older CPAN::Reporter versions. |
27fc0087 |
8 | |
bdaf8c65 |
9 | 3.15 2009-02-17 |
10 | - Refactor getter/setter generation into TAP::Object. |
11 | - The App::Prove::State::Result::Test now stores the parser object. |
12 | - After discussion with Andy, agreed to clean up the test output |
13 | somewhat. t/foo.....ok becomes t/foo.t ... ok |
14 | - Make Bail out! die instead of exiting. Dies with the same |
15 | message as 2.64 for (belated) backwards compatibility. |
16 | - Alex Vaniver's patch to refactor TAP::Formatter::Console into |
17 | a new class, TAP::Formatter::File and a common base class: |
18 | TAP::Formatter::Base. |
19 | - Fix a bug where PERL5LIB might be put in the wrong spot in @INC. |
20 | #40257 |
21 | - Steve Purkis implemented a plugin mechanism for App::Prove. |
22 | |
23 | 3.14 2008-09-13 |
27fc0087 |
24 | - Created a proper (ha!) API for prove state results and tests. |
25 | - Added --count and --nocount options to prove to control X/Y display |
26 | while running tests. |
27 | - Added 'fresh' state option to run test scripts that have been |
28 | touched since the test run. |
29 | - fixed bug where PERL5OPT was not properly split |
30 | - fixed regex in _filtered_inc. Fixes #39248. Thanks Slaven. |
31 | |
f7c69158 |
32 | 3.13 2008-07-27 |
33 | - fixed various closure related leaks |
34 | - made prove honour HARNESS_TIMER |
35 | - Applied patches supplied by Alex Vandiver |
36 | - add 'rules' switch to prove: allows parallel execution rules |
37 | to be specified on the command line. |
38 | - allow '**' (any path) wildcard in parallel rules |
39 | - fix bug report address |
40 | - make tprove_gtk example work again. |
41 | |
42 | 3.12 2008-06-22 |
43 | - applied Steve Purkis' huge refactoring patch which adds |
44 | configurable factories for most of the major internal classes. |
45 | - applied David Wheeler's patch to allow exec to be a code |
46 | reference. |
47 | - made tests more robust in the presence of -MFoo in PERL5OPT. |
48 | |
49 | 3.11 2008-06-09 |
50 | - applied Jim Keenan's patch that makes App::Prove::run return a |
51 | rather than exit (#33609) |
52 | - prove -r now recurses cwd rather than 't' by default (#33007) |
53 | - restored --ext switch to prove (#33848) |
54 | - added ignore_exit option to TAP::Parser and corresponding |
55 | interfaces to TAP::Harness and Test::Harness. Requested for |
56 | Parrot. |
57 | - Implemented rule based parallel scheduler. |
58 | - Moved filename -> display name mapping out of formatter. This |
59 | prevents the formatter's strip-extensions logic from stripping |
60 | extensions from supplied descriptions. |
61 | - Only strip extensions from test names if all tests have the |
62 | same extension. Previously we stripped extensions if all names |
63 | had /any/ extension making it impossible to distinguish tests |
64 | whose name differed only in the extension. |
65 | - Removed privacy test that made it impossible to subclass |
66 | TAP::Parser. |
67 | - Delayed initialisation of grammar making it easier to replace |
68 | the TAP::Parser stream after instantiation. |
69 | - Make it possible to supply import parameters to a replacement |
70 | harness with prove. |
71 | - Make it possible to replace either _grammar /or/ _stream |
72 | before reading from a TAP::Parser. |
73 | |
74 | 3.10 2008-02-26 |
75 | - fix undefined value warnings with bleadperl. |
76 | - added pragma support. |
77 | - fault unknown TAP tokens under strict pragma. |
78 | |
79 | 3.09 2008-02-10 |
80 | - support for HARNESS_PERL_SWITCHES containing things like |
81 | '-e "system(shift)"'. |
82 | - set HARNESS_IS_VERBOSE during verbose testing. |
83 | - documentation fixes. |
84 | |
85 | 3.08 2008-02-08 |
86 | - added support for 'out' option to |
87 | Test::Harness::execute_tests. See #32476. Thanks RENEEB. |
88 | - Fixed YAMLish handling of non-alphanumeric hash keys. |
89 | - Added --dry option to prove for 2.64 compatibility. |
90 | |
91 | 3.07 2008-01-13 |
53bc175b |
92 | - prove now supports HARNESS_PERL_SWITCHES. |
93 | - restored TEST_VERBOSE to prove. |
94 | |
95 | 3.06 2008-01-01 |
69f36734 |
96 | - Skip t/unicode.t if PERL_UNICODE set. Fixes #31731. |
97 | Thanks Lukas. |
98 | - App::Prove::State no longer complains about tests that |
99 | are deleted. |
100 | - --state=new and --state=old now consider the modification time |
101 | of test scripts. |
53bc175b |
102 | - Made test suite core-compatible. |
69f36734 |
103 | |
b965d173 |
104 | 3.05 2007-12-09 |
105 | - Skip unicode.t if Encode unavailable |
106 | - Support for .proverc files. |
107 | - Clarified prove documentation. |
108 | |
109 | 3.04 2007-12-02 |
110 | - Fixed output leakage with really_quiet set. |
111 | - Progress reports for tests without plans now show |
112 | "143/?" instead of "143/0". |
113 | - Made TAP::Harness::runtests support aliases for test names. |
114 | - Made it possible to pass command line args to test programs |
115 | from prove, TAP::Harness, TAP::Parser. |
116 | - Added --state switch to prove. |
117 | |
118 | 3.03 2007-11-17 |
119 | - Fixed some little bugs-waiting-to-happen inside |
120 | TAP::Parser::Grammar. |
121 | - Added parser_args callback to TAP::Harness. |
122 | - Made @INC propagation even more compatible with 2.64 so that |
123 | parrot still works *and* #30796 is fixed. |
124 | |
125 | 3.02 2007-11-15 |
126 | - Process I/O now unbuffered, uses sysread, plays better with |
127 | select. Fixes #30740. |
128 | - Made Test::Harness @INC propagation more compatible with 2.64. |
129 | Was breaking Parrot's test suite. |
130 | - Added HARNESS_OPTIONS (#30676) |
131 | |
132 | 3.01 2007-11-12 |
133 | - Fix for RHEL incpush.patch related failure. |
134 | - Output real time of test completion with --timer |
135 | - prove -b adds blib/auto to @INC |
136 | - made SKIP plan parsing even more liberal for pre-v13 TAP |
137 | |
138 | 3.00 2007-11-06 |
139 | - Non-dev release. No changes since 2.99_09. |
140 | |
141 | 2.99_09 2007-11-05 |
142 | - Implemented TODO-in-PLAN syntax for TAP version 12 and earlier. |
143 | |
144 | 2.99_08 2007-11-04 |
145 | - Tiny changes. New version pushed to get some smoke coverage. |
146 | |
147 | 2.99_07 2007-11-01 |
148 | - Fix for #21938: Unable to handle circular links |
149 | - Fix for #24926: prove -b and -l should use absolute paths |
150 | - Fixed prove switches. Big oops. How the hell did we miss that? |
151 | - Consolidated quiet, really_quiet, verbose into verbosity. |
152 | - Various VMS related fixes to tests |
153 | |
154 | 2.99_06 2007-10-30 |
155 | - Added skip_all method to TAP::Parser. |
156 | - Display reason for skipped tests. |
157 | - make test now self tests. |
158 | |
159 | 2.99_05 2007-10-30 |
160 | - Fix for occasional rogue -1 exit code on Windows. |
161 | - Fix for @INC handling under CPANPLUS. |
162 | - Added real time to prove --timer output |
163 | - Improved prove error message in case where 't' not found and |
164 | no tests named. |
165 | |
166 | 2.99_04 2007-10-11 |
167 | - Fixed bug where 'All tests successful' would not be printed if bonus |
168 | tests are seen. |
169 | - Fixed bug where 'Result: FAIL' would be printed at the end of a test |
170 | run if there were unexpectedly succeeding tests. |
171 | - Added -M, -P switches to allow arbitrary modules to be loaded |
172 | by prove. We haven't yet defined what they'll do once they |
173 | load but it's a start... |
174 | - Added testing under simulated non-forking platforms. |
175 | |
176 | 2.99_03 2007-10-06 |
177 | - Refactored all display specific code out of TAP::Harness. |
178 | - Relaxed strict parsing of skip plan for pre v13 TAP. |
179 | - Elapsed hi-res time is now displayed in integer milliseconds |
180 | instead of fractional seconds. |
181 | - prove stops running if any command-line switches are invalid. |
182 | - prove -v would try to print an undef. |
183 | - Added support for multiplexed and forked parallel tests. Use |
184 | prove -j 9 to run tests in parallel and prove -j 9 --fork to |
185 | fork. These features are experimental and currently |
186 | unavailable on Windows. |
187 | - Rationalized the management of the environment that we give to |
188 | test scripts (PERL5LIB, PERL5OPT, switches). |
189 | - Fixed handling of STDIN (we no longer close it) for test |
190 | scripts. |
191 | - Performance enhancements. Parser is now 30% - 40% faster. |
192 | |
193 | 2.99_02 2007-09-07 |
194 | - Ensure prove (and App::Prove) sort any recursively |
195 | discovered tests |
196 | - It is now possible to register multiple callback handlers for |
197 | a particular event. |
198 | - Added before_runtests, after_runtests callbacks to |
199 | TAP::Harness. |
200 | - Moved logic of prove program into App::Prove. |
201 | - Added simple machine readable summary. |
202 | - Performance improvement: The processing pipeline within |
203 | TAP::Parser is now a closure which speeds up access to the |
204 | various attribtes it needs. |
205 | - Performance improvement: Test count spinner now updates |
206 | exponentially less frequently as the count increases which |
207 | saves a lot of I/O on big tests. |
208 | - More improvements in test coverage from Leif. |
209 | - Fixes to TAP spooling - now captures YAML blocks correctly. |
210 | - Fix YAMLish handling of empty arrays, hashes. |
211 | - Renamed TAP::Harness::Compatible to Test::Harness, |
212 | runtests to prove. |
213 | - Fixes to @INC handling. We didn't always pass the correct path |
214 | to subprocesses. |
215 | - We now observe any switches in HARNESS_PERL_SWITCHES. |
216 | - Changes to output formatting for greater compatibility with |
217 | Test::Harness 2.64. |
218 | - Added unicode test coverage and fixed a couple of |
219 | unicode issues. |
220 | - Additions to documentation. |
221 | - Added support for non-forking Perls. If forking isn't |
222 | available we fall back to open and disable stream merging. |
223 | - Added support for simulating non-forking Perls to improve our |
224 | test coverage. |
225 | |
226 | ======================================================================== |
227 | Version numbers below this point relate to TAP::Parser - which was the |
228 | name of this version of Test::Harness during its development. |
229 | ======================================================================== |
230 | |
231 | 0.54 |
232 | - Optimized I/O for common case of 'runtests -l' |
233 | - Croak if supplied an empty (0 lines) Perl script. |
234 | - Made T::P::Result::YAML return literal input YAML correctly. |
235 | - Merged speed-ups from speedy branch. |
236 | |
237 | 0.53 18 August 2007 |
238 | - Fixed a few docs nits. |
239 | - Added -V (--version) switch to runtests. Suggested by markjugg on |
240 | Perlmonks. |
241 | - Fixed failing t/030-grammer.t under 5.9.5. Exact cause still |
242 | unknown; something to do with localisation of $1 et all I think. |
243 | - Fixed use of three arg open in t/compat/test-harness-compat; was |
244 | failing on 5.6.2. |
245 | - Fixed runtests --exec option. T::H wasn't passing the exec option |
246 | to T::P. |
247 | - Merged Leif Eriksen's coverage enhancing changes to |
248 | t/080-aggregator.t, t/030-grammar.t |
249 | - Made various changes so that we test cleanly on 5.0.5. |
250 | - Many more coverage enhancements by Leif. |
251 | - Applied Michael Peters' patch to add an EOF callback to |
252 | TAP::Parser. |
253 | - Added --reverse option to runtests to run tests in reverse order. |
254 | - Made runtests exit with non-zero status if the test run had |
255 | problems. |
256 | - Stopped TAP::Parser::Iterator::Process from trampling on STDIN. |
257 | |
258 | 0.52 14 July 2007 |
259 | - Incorporate Schwern's investigations into TAP versions. |
260 | Unversioned TAP is now TAP v12. The lowest explicit version number |
261 | that can be specified is 13. |
262 | - Renumbered tests to eliminate gaps. |
263 | - Killed execrc. The '--exec' switch to runtests handles all of this for |
264 | us. |
265 | - Refactored T::P::Iterator into |
266 | T::P::Iterator::(Array|Process|Stream) so that we have a |
267 | process specific iterator with which to experiment with |
268 | STDOUT/STDERR merging. |
269 | - Removed vestigial exit status handling from T::P::I::Stream. |
270 | - Removed unused pid interface from T::P::I::Process. |
271 | - Fixed infinite recursion in T::P::I::Stream and added regression |
272 | coverage for same. |
273 | - Added tests for T::P::I::Process. |
274 | - TAP::Harness now displays the first five TAP syntax errors and |
275 | explains how to pass the -p flag to runtests to see them all. |
276 | - Added merge option to TAP::Parser::Iterator::Process, |
277 | TAP::Parser::Source, TAP::Parser and TAP::Harness. |
278 | - Added --merge option to runtests to enable STDOUT/STDERR merging. |
279 | This behaviour used to be the default. |
280 | - Made T::P::I::Process use open3 for both merged and non-merged |
281 | streams so that it works on Windows. |
282 | - Implemented Eric Wilhelm's IO::Select based multiple stream |
283 | handler so that STDERR is piped to us even if stream merging is |
284 | turned off. This tends to reduce the temporal skew between the |
285 | two streams so that error messages appear closer to their |
286 | correct location. |
287 | - Altered the T::P::Grammar interface so that it gets a stream |
288 | rather than the next line from the stream in preparation for |
289 | making it handle YAML diagnostics. |
290 | - Implemented YAML syntax. Currently YAML may only follow a |
291 | test result. The first line of YAML is '---' and the last |
292 | line is '...'. |
293 | - Made grammar version-aware. Different grammars may now be selected |
294 | depending on the TAP version being parsed. |
295 | - Added formatter delegate mechanism for test results. |
296 | - Added prototype stream based YAML(ish) parser. |
297 | - Added more tests for T::P::YAMLish |
298 | - Altered T::P::Grammar to use T::P::YAMLish |
299 | - Removed T::P::YAML |
300 | - Added raw source capture to T::P::YAMLish |
301 | - Added support for double quoted hash keys |
302 | - Added TAP::Parser::YAMLish::Writer and renamed T::P::YAMLish as |
303 | T::P::YAMLish::Reader. |
304 | - Added extra TAP::Parser::YAMLish::Writer output options |
305 | - Inline YAML documents must now be indented by at least one space |
306 | - Fixed broken dependencies in bin/prove |
307 | - Make library paths absolute before running tests in case tests |
308 | chdir before loading modules. |
309 | - Added libs and switches handling to T::H::Compatible. This and the |
310 | previous change fix [24926] |
311 | - Added PERLLIB to libraries stripped in _default_inc [12030] |
312 | - Our version of prove now handles directories containing circular |
313 | links correctly [21938] |
314 | - Set TAP_VERSION env var in Parser [11595] |
315 | - Added setup, teardown hooks to T::P::I::Process to facilitate the |
316 | setup and cleanup of the test script's environment |
317 | - Any additional libs added to the command line are also added to |
318 | PERL5LIB for the duration of a test run so that any Perl children |
319 | of the test script inherit the same library paths. |
320 | - Fixed handling of single quoted hash keys in T::P::Y::Reader |
321 | - Made runtests return the TAP::Parser::Aggregator |
322 | - Fixed t/120-harness.t has failures if TAP::Harness::Color cannot |
323 | load optional modules [27125] - thanks DROLSKY |
324 | - Fixed parsing of \# in test description |
325 | 0.51 12 March 2007 |
326 | - 'execrc' file now allows 'regex' matches for tests. |
327 | - rename 'TAPx' --> 'TAP' |
328 | - Reimplemented the parse logic of TAP::Parser as a state machine. |
329 | - Removed various ad-hoc state variables from TAP::Parser and moved |
330 | their logic into the state machine. |
331 | - Removed now-unused is_first / is_last methods from Iterator and |
332 | simplified remaining logic to suit. |
333 | - Removed now-redundant t/140-varsource.t. |
334 | - Implemented TAP version syntax. |
335 | - Tidied TAP::Harness::Compatible documentation |
336 | - Removed redundant modules below TAP::Harness::Compatible |
337 | - Removed unused compatibility tests |
338 | |
339 | 0.50_07 5 March 2007 |
340 | - Fixed bug where we erroneously checked the test number instead of number |
341 | of tests run to determine if we've run more tests than we planned. |
342 | - Add a --directives switch to 'runtests' which only shows test results |
343 | with directives (such as 'TODO' or 'SKIP'). |
344 | - Removed some dead code from TAPx::Parser. |
345 | - Added color support for Windows using Win32::Console. |
346 | - Made Color::failure_output reset colors before printing |
347 | the trailing newline. |
348 | - Corrected some issues with the 'runtests' docs and removed some |
349 | performance notes which no longer seem accurate. |
350 | - Fixed bug whereby if tests without file extensions were included then |
351 | the spacing of the result leaders would be off. |
352 | - execrc file is now a YAML file. |
353 | - Removed white background on the test failures. It was too garish for |
354 | me. Just more proof that we need better ways of overriding color |
355 | support. |
356 | - Started work on TAPx::Harness::Compatible. Right now it's mainly just |
357 | a direct lift of Test::Harness to make sure the tests work. |
358 | - Commented out use Data::Dumper::Simple in T::Harness.pm - it's not |
359 | a core module. |
360 | - Added next_raw to TAPx::Parser::Iterator which skips any fixes for |
361 | quirky TAP that are implemented by next. Used to support |
362 | TAPx::Harness::Compatible::Iterator |
363 | - Applied our version number to all T::H::Compatible modules |
364 | - Removed T::H::C::Assert. It's documented as being private to |
365 | Test::Harness and we're not going to need it. |
366 | - Refactored runtests to call aggregate_tests to expose the |
367 | interface we need for the compatibility layer. |
368 | - Make it possible to pass an end time to summary so that it needn't |
369 | be called immediately after the tests complete. |
370 | - Moved callback handling into TAPx::Base and altered TAPx::Parser |
371 | to use it. |
372 | - Made TAPx::Harness into a subclass of TAPx::Base and implemented |
373 | made_parser callback. |
374 | - Moved the dispatch of callbacks out of run and into next so that |
375 | they're called when TAPx::Harness iterates through the results. |
376 | - Implemented PERL_TEST_HARNESS_DUMP_TAP which names a directory |
377 | into which the raw TAP of any tests run via TAPx::Harness will |
378 | be written. |
379 | - Rewrote the TAPx::Grammar->tokenize method to return a |
380 | TAPx::Parser::Result object. Code is much cleaner now. |
381 | - Moved the official grammar from TAPx::Parser to TAPx::Parser::Grammar, |
382 | provided a link and updated the grammar. |
383 | - Fixed bug where a properly escaped '# TODO' line in a test description |
384 | would still be reported as a TODO test. |
385 | - Added patches/ExtUtils-MakeMaker-6.31.patch - a patch against EUMM |
386 | that makes test_harness use TAPx::Harness instead of Test::Harness |
387 | if PERL_EUMM_USE_TAPX is true and TAPx::Harness is installed. In |
388 | other words cause 'make test' for EUMM based models to use |
389 | TAPx::Harness. |
390 | - Added support for timer option to TAPx::Harness which causes the |
391 | elapsed time for each test to be displayed. |
392 | - Setup tapx-dev@hexten.net mailing list. |
393 | - Fixed accumulating @$exec bug in TAPx::Harness. |
394 | - Made runtests pass '--exec' option as an array. |
395 | - (#24679) TAPx::Harness now reports failure for tests that die |
396 | after completing all subtests. |
397 | - Added in_todo attribute on TAPx::Parser which is true while the |
398 | most recently seen test was a TODO. |
399 | - (#24728) TAPx::Harness now supresses diagnostics from failed |
400 | TODOs. Not sure if the semantics of this are correct yet. |
401 | |
402 | 0.50_06 18 January 2007 |
403 | - Fixed doc typo in examples/README [rt.cpan.org #24409] |
404 | - Colored test output is now the default for 'runtests' unless |
405 | you're running under windows or -t STDOUT is false. |
406 | [rt.cpan.org #24310] |
407 | - Removed the .t extension from t/source_tests/*.t since those are |
408 | 'test tests' which caused false negatives when running recursive |
409 | tests. [Adrian Howard] |
410 | - Somewhere along the way, the exit status started working again. |
411 | Go figure. |
412 | - Factored color output so that disabling it under Windows is |
413 | cleaner. |
414 | - Added explicit switch to :crlf layer after open3 under Windows. |
415 | open3 defaults to raw mode resulting in spurious \r characters input |
416 | parsed input. |
417 | - Made Iterator do an explicit wait for subprocess termination. |
418 | Needed to get process status correctly on Windows. |
419 | - Fixed bug which didn't allow t/010-regression.t to be run directly |
420 | via Perl unless you specified Perl's full path. |
421 | - Removed SIG{CHLD} handler (which we shouldn't need I think because |
422 | we explicitly waitpid) and made binmode ':crlf' conditional on |
423 | IS_WIN32. On Mac OS these two things combined to expose a problem |
424 | which meant that output from test scripts was sometimes lost. |
425 | - Made t/110-source.t use File::Spec->catfile to build path to |
426 | test script. |
427 | - Made Iterator::FH init is_first, is_last to 0 rather than undef |
428 | for consistency with array iterator. |
429 | - Added t/120-varsource.t to test is_first and is_last semantics |
430 | over files with small numbers of lines. |
431 | - Added check for valid callback keys. |
432 | - Added t/130-results.t for Result classes. |
433 | |
434 | 0.50_05 15 January 2007 |
435 | - Removed debugging code accidentally left in bin/runtests. |
436 | - Removed 'local $/ = ...' from the iterator. Hopefully that will fix the |
437 | line ending bug, but I don't know about the wstat problem. |
438 | |
439 | 0.50_04 14 January 2007 |
440 | - BACKWARDS IMCOMPATIBLE: Renamed all '::Results' classes to '::Result' |
441 | because they represent a single result. |
442 | - Fixed bug where piping would break verbose output. |
443 | - IPC::Open3::open3 now takes a @command list rather than a $command |
444 | string. This should make it work under Windows. |
445 | - Added 'stdout_sterr' sample test back to regression tests. IPC::Open3 |
446 | appears to make it work. |
447 | - Bug fix: don't print 'All tests successful' if no tests are run. |
448 | - Refactored 'runtests' to make it a bit easier to follow. |
449 | - Bug fix: Junk and comments now allowed before a leading plan. |
450 | - HARNESS_ACTIVE and HARNESS_VERSION environment variables now set. |
451 | - Renamed 'problems' in TAPx::Parser and TAPx::Aggregator to |
452 | 'has_problems'. |
453 | |
454 | 0.50_03 08 January 2007 |
455 | |
456 | - Fixed bug where '-q' or '-Q' with colored tests weren't suppressing all |
457 | information. |
458 | - Fixed an annoying MANIFEST nit. |
459 | - Made '-h' for runtests now report help. Using a new harness requires |
460 | the full --harness switch. |
461 | - Added 'problems' method to TAPx::Parser and TAPx::Parser::Aggregator. |
462 | - Deprecatd 'todo_failed' in favor of 'todo_passed' |
463 | - Add -I switch to runtests. |
464 | - Fixed runtests doc nit (smylers) |
465 | - Removed TAPx::Parser::Builder. |
466 | - A few more POD nits taken care of. |
467 | - Completely removed all traces of C<--merge> as IPC::Open3 seems to be |
468 | working. |
469 | - Moved the tprove* examples to examples/bin in hopes of them no longer |
470 | showing up in CPAN's docs. |
471 | - Made the 'unexpectedly succeeded' message clearer (Adam Kennedy) |
472 | |
473 | 0.50_02 06 January 2007 |
474 | - Added some files I left out of the manifest (reported by Florian |
475 | Ragwitz). |
476 | - Added strict to Makefile.PL and changed @PROGRAM to @program (reported |
477 | Florian Ragwitz). |
478 | |
479 | 0.50_01 06 January 2007 |
480 | - Added a new example which shows to how test Perl, Ruby, and URLs all at |
481 | the same time using 'execrc' files. |
482 | - Fixed the diagnostic format mangling bug. |
483 | - We no longer override Test::Builder to merge streams. Instead, we go |
484 | ahead and use IPC::Open3. It remains to be seen whether or not this is |
485 | a good idea. |
486 | - Fixed vms nit: for failing tests, vms often has the 'not' on a line by |
e4fc8a1e |
487 | itself. |
b965d173 |
488 | - Fixed bugs where unplanned tests were not reporting as a failure (test |
489 | number greater than tests planned). |
490 | - TAPx::Parser constructor can now take an 'exec' option to tell it what |
491 | to execute to create the stream (huge performance boost). |
492 | - Added TAPx::Parser::Source. This allows us to run tests in just about |
493 | any programming language. |
494 | - Renamed the filename() method to source() in TAPx::Parser::Source::Perl. |
495 | - We now cache the @INC values found for TAPx::Parser::Source::Perl. |
496 | - Added two test harnesses, TAPx::Harness and TAPx::Harness::Color. |
497 | - Removed references to manual stream construction from TAPx::Parser |
498 | documentation. Users should not (usually) need to worry about streams. |
499 | - Added bin/runtests utility. This is very similar to 'prove'. |
500 | - Renumbered tests to make it easier to add new ones. |
501 | - Corrected some minor documentation nits. |
502 | - Makefile.PL is no longer auto-generated (it's built by hand). |
503 | - Fixed regression test bug where driving tests through the harness I'm |
504 | testing caused things to break. |
505 | - BUG: exit() values are now broken. I don't know how to capture them |
506 | with IPC::Open3. However, since no one appears to be using them, this |
507 | might not be an issue. |
508 | |
509 | 0.41 12 December 2006 |
510 | - Fixed (?) 10-regression.t test which failed on Windows. Removed the |
511 | segfault test as it has no meaning on Windows. Reported by PSINNOTT |
512 | <link@redbrick.dcu.ie> and fix recommended by Schwern based on his |
513 | Test::Harness experience. |
514 | http://rt.cpan.org/Ticket/Display.html?id=21624 |
515 | |
516 | 0.40 05 December 2006 |
517 | - Removed TAPx::Parser::Streamed and folded its functionality into |
518 | TAPx::Parser. |
519 | - Fixed bug where sometimes is_good_plan() would return a false positive |
520 | (exposed by refactoring). |
521 | - A number of tiny performance enhancements. |
522 | |
523 | 0.33 22 September 2006 |
524 | - OK, I'm getting ticked off by some of the comments on Perl-QA so I |
525 | rushed this out the door and broke it :( I'm backing out one test and |
526 | slowing down a bit. |
527 | |
528 | 0.32 22 September 2006 |
529 | - Applied patch from Schwern which fixed the Builder package name (TAPx:: |
530 | instead of TAPX:: -- stupid case-insensitive package names!). |
531 | [rt.cpan.org #21605] |
532 | |
533 | 0.31 21 September 2006 |
534 | - Fixed bug where Carp::croak without parens could cause Perl to fail to |
535 | compile on some platforms. [Andreas J. Koenig] |
536 | - Eliminated the non-portable redirect of STDERR to STDOUT (2>&1) and |
537 | fixed the synchronization issue. This involves overridding |
538 | Test::Builder::failure_output() in a very sneaky way. I may have to |
539 | back this out. |
540 | - Renamed boolean methods to begin with 'is_'. The methods they replace |
541 | are documented, deprecated, and will not be removed prior to version |
542 | 1.00. |
543 | |
544 | 0.30 17 September 2006 |
545 | - Fixed bug where no output would still claim to have a good plan. |
546 | - Fixed bug where no output would cause parser to die. |
547 | - Fixed bug where failing to specify a plan would be two parse errors |
548 | instead of one. |
549 | - Fixed bug where a correct plan count in an incorrect place would still |
550 | report as a 'good_plan'. |
551 | - Fixed bug where comments could accidently be misparsed as directives. |
552 | - Eliminated testing of internal structure of result objects. The other |
553 | tests cover this. |
554 | - Allow hash marks in descriptions. This was causing a problem because |
555 | many test suites (Regexp::Common and Perl core) allowed them to exist. |
556 | - Added support for SKIP directives in plans. |
557 | - Did some work simplifying &TAPx::Parser::_initialize. It's not great, |
558 | but it's better than it was. |
559 | - TODO tests now always pass, regardless of actual_passed status. |
560 | - Removed 'use warnings' and now use -w |
561 | - 'switches' may now be passed to the TAPx::Parser constructor. |
562 | - Added 'exit' status. |
563 | - Added 'wait' status. |
564 | - Eliminated 'use base'. This is part of the plan to make TAPx::Parser |
565 | compatible with older versions of Perl. |
566 | - Added 'source' key to the TAPx::Parser constructor. Making new parsers |
567 | is now much easier. |
568 | - Renamed iterator first() and last() methods to is_first() and is_last(). |
569 | Credit: Aristotle. |
570 | - Planned tests != tests run is now a parse error. It was really stupid |
571 | of me not to do that in the first place. |
572 | - Added massive regression test suite in t/100-regression.t |
573 | - Updated the grammar to show that comments are allowed. |
574 | - Comments are now permitted after an ending plan. |
575 | |
576 | 0.22 13 September 2006 |
577 | - Removed buggy support for multi-line chunks from streams. If your |
578 | streams or iterators return anything but single lines, this is a bug. |
579 | - Fixed bug whereby blank lines in TAP would confuse the parser. Reported |
580 | by Torsten Schoenfeld. |
581 | - Added first() and last() methods to the iterator. |
582 | - TAPx::Parser::Source::Perl now has a 'switches' method which allows |
583 | switches to be passed to the perl executable running the test file. |
584 | This allows tprove to accept a '-l' argument to force lib/ to be |
585 | included in Perl's @INC. |
586 | |
587 | 0.21 8 September 2006 |
588 | - Included experimental GTK interface written by Torsten Schoenfeld. |
589 | - Fixed bad docs in examples/tprove_color |
590 | - Applied patch from Shlomi Fish fixing bug where runs from one stream |
591 | could leak into another when bailing out. [rt.cpan.org #21379] |
592 | - Fixed some typos in the POD. |
593 | - Corrected the grammar to allow for a plan of "1..0" (infinite stream). |
594 | - Started to add proper acknowledgements. |
595 | |
596 | 0.20 2 September 2006 |
597 | - Fixed bug reported by GEOFFR. When no tap output was found, an |
598 | "Unitialized value" warning occurred. [rt.cpan.org #21205] |
599 | - Updated tprove to now report a test failure when no tap output found. |
600 | - Removed examples/tprove_color2 as tprove_color now works. |
601 | - Vastly improved callback system and updated the docs for how to use |
356733da |
602 | them. |
b965d173 |
603 | - Changed TAPx::Parser::Source::Perl to use Symbol::gensym() instead of a |
604 | hard-to-guess filehandle name. |
605 | |
606 | 0.12 30 July 2006 |
607 | - Added a test colorization script |
608 | - Callback support added. |
609 | - Added TAPx::Parser::Source::Perl. |
610 | - Added TAPx::Parser::Aggregator. |
611 | - Added version numbers to all classes. |
612 | - Added 'todo_failed' test result and parser. |
613 | - 00-load.t now loads all classes instead of having individual tests load |
614 | their supporting classes. |
615 | - Changed $parser->results to $parser->next |
616 | |
617 | 0.11 25 July, 2006 |
618 | - Renamed is_skip and is_todo to has_skip and has_todo. Much less |
619 | confusing since a result responding true to those also responded true to |
620 | is_test. |
621 | - Added simplistic bin/tprove to run tests. Much harder than I thought |
622 | and much code stolen from Test::Harness. |
623 | - Modified stolen iterator to fix a bug with stream handling when extra |
624 | newlines were encountered. |
625 | - Added TAPx::Parser::Iterator (stolen from Test::Harness::Iterator) |
626 | - Normalized internal structure of result objects. |
627 | - All tokens now have a 'type' key. This greatly simplifies internals. |
628 | - Copied much result POD info into the main docs. |
629 | - Corrected the bug report URLs. |
630 | - Minor updates to the grammar listed in the POD. |
631 | |
632 | 0.10 23 July, 2006 |
633 | - Oh my Larry, we gots docs! |
634 | - _parse and _tap are now private methods. |
635 | - Stream support has been added. |
636 | - Moved the grammar into its own class. |
637 | - Pulled remaining parser functionality out of lexer. |
638 | - Added type() method to Results(). |
639 | - Parse errors no longer croak(). Instead, they are available through the |
640 | parse_errors() method. |
641 | - Added good_plan() method. |
642 | - tests_planned != tests_run is no longer a parse error. |
643 | - Renamed test_count() to tests_run(). |
644 | - Renamed num_tests() to tests_planned(). |
645 | |
646 | 0.03 17 July, 2006 |
647 | - 'Bail out!' is now handled. |
648 | - The parser is now data driven, thus skipping a huge if/else chain |
649 | - We now track all TODOs, SKIPs, passes and fails by test number. |
650 | - Removed all non-core modules. |
651 | - Store original line for each TAP line. Available through |
652 | $result->raw(). |
653 | - Renamed test is_ok() to passed() and added actual_passed(). The former |
654 | method takes into account TODO tests and the latter returns the actual |
655 | pass/fail status. |
656 | - Fixed a bug where SKIP tests would not be identified correctly. |
657 | |
658 | 0.02 8 July, 2006 |
659 | - Moved some lexer responsibility to the parser. This will allow us to |
660 | eventually parse streams. |
661 | - Properly track passed/failed tests, even accounting for TODO. |
662 | - Added support for comments and unknown lines. |
663 | - Allow explicit and inferred test numbers to be mixed. |
664 | - Allow escaped hashes in the test description. |
665 | - Renamed to TAPx::Parser. Will probably rename it again. |
666 | |
667 | 0.01 Date/time |
668 | - First version, unreleased on an unsuspecting world. |
669 | - No, you'll never know when ... |