0.24	9 November 2019

0.23    24 May 2012
        Added license information.  Verified it works with 5.16.0, threaded
        and unthreaded.

0.22    13 April 2012
        Fixed spelling error as suggested by Gregor Herrmann. RT #76532

0.21    31 March 2012
        Fixed some pod issues.  Brought code in line with current esthetics.
        Changed internal storage from packed L3 to packed w3 format, for
        hopefully smaller memory footprint.

0.20    20 September 2010
        Fixed problem that started to manifest itself with a slightly different
        handling of localized $@, starting in perl 5.13.x.

0.19    24 April 2007
        Fixed problem in test-suite that was long overseen because it would
        work ok if load.pm was already installed (which it was on my dev
        system).  Not sure whether this was internally introduced, or some
        new feature of Test::More.

0.18    18 October 2005
        Added fix for missing Kwalitee point for not using 'strict'

0.17    9 July 2005
        Finished AutoLoader emulation mode and adapted testing accordingly.
        Fixed some test problems if ifdef.pm is not installed.  Changes tests
        so that the first failure will die with a dump so that specific
        problems can be worked on more precisely.

        Verified load.pm works on Perl 5.8.7.

        30 September 2004
        Added initial support AutoLoader emulation mode.

        Verified load.pm will work on Perl 5.8.5.

0.16    15 March 2004
        Changed tracing calls so that they get optimized away if tracing is
        not active.

        Fixed bug that would cause "ifdef.pm" to split on every character if
        "now" loading was selected.

        Fixed bug with subs that really do not exist.  Added some more test
        with regards to the interface with "ifdef.pm".

0.15        14 March 2004
        Added support for "ifdef.pm".  If ifdef.pm is loaded, then all eval's
        will be done using the source filter provided by ifdef, possibly
        activating code depending on environment variables being set.  Added
        tests to check functionality when ifdef.pm is loaded.

        Fixed some possible minor problems with localizing $_: it appears a
        simple "local $_" is not enough, instead a "local $_ = \my $foo" seems
        to be the canonical solution to this problem as of now according to

        28 January 2004
        Made sure the test-suite cleans up on multi-versioned systems.

0.14    28 December 2003
        Added automatic required modules update using Devel::Required.

0.13    12 November 2003
        Perl 5.8.2 does not handle empty subroutines (sub foo {}) very well.
        In some cases, it segfaults.  This happened in the test-suite.
        Test-suite has been adapted (that really is the only change, apart
        from the version number).

0.12    29 September 2003
        Added support for register additional "use" modules for specific
        packages (e.g. when subroutines need to be handled by a source
        filter).  Tests to be added later, if ever here.

        26 September 2003
        Realised testing for running under taint was pretty trivial: the
        entire test-suite now runs twice: once with and once without tainting.

0.11    26 September 2003
        Turns out load.pm didn't work when taint was active.  And it silently
        failed to boot.  This should now be fixed.  Added a todo to make tests
        that will functioning under taint: activating taint in the tests
        caused too many failures to allow checking in the allotted time..

0.10    18 September 2003
        Frank Tolstrup pointed out some test misses because of CRLF versus LF
        issues on Windows.  These should now also be fixed.  Mention Frank
        in the new ACKNOWLEDGEMENTS section of load.

        Added thread indicator to trace if threads are used.  This should
        facilitate debugging of the Thread::xxx modules.  Added tests for
        it as well.  For the trace to properly detect threads, the threads
        module must have been loaded prior to loading load.pm.

        17 September 2003
        Hmmm... I may be taking the "release soon, release often" too
        literally.  Anyway, Frank Tolstrup's output of the failing test-suite
        under Windows, pointed to a possible seek() problem under Windows.
        Added a binmode() in case the source-file is opened again for on-demand
        loading of a subroutine.  And the tests with $Foo::{} also failed
        under Windows: they shouldn't anymore.

        Installed experimental trace possibility that is activated by setting
        the environment variable "LOAD_TRACE" to a true value.  This is still
        experimental so therefore only documented here.

0.09    17 September 2003
        Frank Tolstrup pointed out that many of the tests wouldn't run under
        Windows because of quoting issues.  Adapted the test so that would
        not be an issue anymore.  Hope this is the last one of today ;-)

0.08    17 September 2003
        Indeed, it is one of those days.  Added some more tests to make sure
        that subroutines are indeed loaded on demand.

0.07    17 September 2003
        Argh.  I guess it is one of those days.  Using strict in load.pm
        bleeds into the eval's and causes compile errors.  And of course
        the test-suite didn't catch it.  Removed stricture but added a
        comment in the source about it.  Adapted the test-suite so it _will_
        catch it this time (but won't of course, because it's fixed).

0.06    17 September 2003
        Finally figured how to make something like a test-suite.  Now checks
        whether ondemand subs can be called and whether or not they exist
        and can be can()ned.

        Argh.  A typo caused the "now" functionality to completely broken.
        This is now fixed.  Problem was introduced in version 0.02.

        Added optional support for strict and warnings in the source.

        11 August 2003
        Fixed stupid typo in Makefile.PL that caused description of module
        not to be included ever.

        Verified load.pm will work on Perl 5.8.1.

0.05    29 December 2002
        Increased version to be able to upload a more recent version of load.pm
        to CPAN to prevent interference with Jos 'Kane' Boumans' version of

0.04    21 October 2002
        Fixed small problem when running with warnings and attempting to access
        non-existing subroutine.  Spotted by Lars Fenneberg.

0.03    1 October 2002
        Changed using of lexical file handles to globs, to ensure compatibility
        with earlier versions of Perl.

        Fixed problem with running with warnings (caused by UNIVERSAL::can
        redefine).  Removed use strict and other stuff to make this module
        yet leaner and meaner.

0.02    30 September 2002
        Now hijacks UNIVERSAL::can so that ->can does the right thing for
        subroutines that have not been loaded yet.  As a side effect, this
        loads the subroutine specified.  Added documentation to reflect that.

        Localised $_, $! and $@ at several places just to make sure they
        don't clobber anything on the outside.

        Added support for line numbers and file name (swiped from AutoSplit
        generated code), so that eval errors will give you more information.

        Added check for DESTROY: apparently you get an infinite loop if you're
        gotoing the DESTROY if it doesn't exist.  Now AUTOLOAD just returns
        for DESTROY if it doesn't exist.

        Fixed typo in _scan() which would trigger a loop if a second __END__
        was encountered in the source of a module.

0.01    29 September 2002
        First version of load.pm, renamed from jit.pm after discussions on and
        off p5p.