The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Revision history for Devel-Examine::Subs

1.34    20150917
        - reworked Makefile.PL, allows tests on MSWin32 to pass

1.33    20150916
        - re-added Devel::Trace::Subs integration in a way that the module
          won't break install if DTS isn't installed

1.32    20150915
        - moved repo from bitbucket to https://github.com/stevieb9/devel-examine-subs
        - removed Devel::Trace::Subs integration... breaks CPAN install because of
          the circular dependency

1.31    20150915
        - Devel::Trace::Subs has been introduced. See DEBUGGING in
          'perldoc Devel::Examine::Subs'
        - code injection now has much more reliable indenting

1.30    20150914
        - inject_after() no longer adds a new empty line after code is
          inserted
        - fixed bug where Module::Name wasn't being required properly
        - added 'inject_after_sub_def' param to inject() preproc


1.29    20150913
        - added inject(), with 'inject_use' parameter
        - added remove(), which operates at the file level
        - fixed a couple of undef warnings in inject_after()

1.28    
        - Data::Compare to compare for caching
        - cache is now working again
        - added cache (default off) persistent param
        - added cache_dump transient param
        - all public methods (less run()) now take a hash as params
          (as opposed to hash ref).
        - pre_filters are now accepted in an aref if there are more than one:
          ['string', $cref, 'string'] etc.

1.27    20150813
        - 'regex' param now enabled by default
        - new 'objects_as_hash' param

1.24    20150812
        - fixes bug 54: implement _clean_config()
        - fixes bug 56: allow 'file' param to be a module name
        - params are separated into persistent and transient
        - all params are now validated
        - transient params get reset after each run()
        - added valid_params()
        - major pod rework

1.23    20150811
        - removed all traces of cache
        - dependency fixes
        - cleaned up POD
        - fixed typos and PPI var names
        - added POD for Engine and Prefilter
        - ./Build dist

1.20_01 20150723
        - engine framework in place
        - uses pre_proc, pre_filter and engine callbacks
        - callbacks can be sent in by user code
        - search uses optional regex
        - directory or file can be sent in
        - refined objects, they now have 'lines'
        - began making things more generic
        - can search/replace and inject code
        - can cache results in directory searching
        - countless bug fixes        

1.17    20150715
        - implemented PPI sub checking, much safer
        - removed the old _subs() that was not PPI-based
        - most everything is OO based now
        - all core parameters are set into $self through _config()
        - basic consolodation of error checking in _config()
        - extensive refactoring to make tests pass
        - separate out the ::Sub.pm module into its own file
        - bug 12 fix: new() now sets $self->{file} for use by other methods
        - bug 14 fix: add file validation: done in _config()
        - bug 13 fix: new() now accepts 'file' param
        - new test for 'search'
        - many other test additions/updates
        - test for ::Sub
        - test for _config() 

        To consider:
        - need to sort out esc/unescape for 'search'

1.11    20150714
        - fixed bug where only one line was being added for has_lines

1.10    20150714
        - added bool 'lines' param to has()
        -- returns hash of arrays of hashes
        - updated POD
        - new tests for has() (lines)

1.09    20150714
        - added module()
        -- return all subs found in a running module
        - cleaned up POD/Readme

1.07    20150630
        - added sublist()
        - similar to line_numbers(), but returns a list of
          objects that have start(), stop(), name() and count()
          methods

0.14    20150624
        - added line_numbers()
        - retrieves line numbers for the start and end of each
          function

0.07    20120330
        - fixes bug 11
        - add new() method and allow object method calls

0.06    20120330
        - changed name of project from Devel::ExamineSubs
          to Devel::Examine::Subs

0.05    20120330
        - changed API to all public calls to use href params

0.02    20120330
        - added tests
        - dies() if number of params is not correct (consider
          changing this internally)
        - created repository on bitbucket

0.01    20120330 
        First version, released on an unsuspecting world.