I'm working on Test::Builder 0.48 and here's some relatively major changes
I'm putting in.  Some advance warning and a chance for folks to convince me
otherwise.


* Test::Harness will no longer be optional.

Currently, the tests do not require a Test::Harness upgrade.  They simply
skip over anything that requries T::H 2.0.  This has caused a lot of
problems lately with botched and shadowed T::H installs and people
installing Test::More without realizing T::H wasn't really upgraded and
tests which have 'no_plan' not working.

The real reason I made the T::H upgrade optional was it made it easier to
test against older perls.  I could just run the test suite against, for
example, a clean 5.5.3 without having to dirty the installation by
installing T::H 2.0.  I've figured a way around this with MakeMaker hackery.

A future version of Test::Harness will include a post-install check to make
sure it actually got installed properly and isn't being shadowed, so it will
help the problem from that end.


* threads will no longer be loaded by default.

Currently, Test::Builder loads threads.pm if available.  It was done this
way because otherwise one would have to remember to load threads before
Test::More (or other T::B based module) in order for it to work properly.

Unfortunately, this makes it impossible to test unthreaded code with
Test::More when perl is built with threads as I recently found out while
trying to test threads::shared in its disabled state.  As I'm going for
maximum flexibility, and loading threads.pm by default makes a whole class
of tests impossible, threads.pm will no longer be loaded by default.

5.8.0's threads are giving me serious headaches.  When 5.8.1 comes out I
might drop support for 5.8.0's threads just so I can remove a large volume
of work-around code.


-- 

Michael G. Schwern   <[EMAIL PROTECTED]>    http://www.pobox.com/~schwern/
Perl Quality Assurance      <[EMAIL PROTECTED]>         Kwalitee Is Job One
List context isn't dangerous.  Misquoting Gibson is dangerous.
        -- Ziggy

Reply via email to