Revision history for Perl extension PPI
0.821 Mon Jul 19 2004
- Cleaned up test data files directories
- Added PPI::Statement::Variable::type
- Added PPI::Statement::Variable::variables
- Added some more classes to the API testing
- Started 07_tokens.t for testing particular token classes
- Added PPI::Token::Symbol::canonical ( and tests )
- PPI::Token::Magic now ISA PPI::Token::Symbol
- PPI::Element::clone now fixes _PARENT links for Nodes
0.820 Mon Jul 19 2004
- Added Round-Trip-Safe testing for all PPI files
- Added PPI::Node::find_any object method
- Added PPI::Node::contains object method
- Continuing the never ending addition of tests
- Structure open and close brace tokens now see the Structure as their parent
- Removed the sample application, to streamline the core install
- Removed dependencies for the sample application
- Removed custom META.yml, as now no longer needed
0.819 Mon Jul 5 2004
- Many parts of PPI are VASTLY changed in this revision
- Breaks API compatibility heavily
- Adds dependency on List::MoreUtils
- Added PPI::Lexer support for CHECK blocks
- Added PPI::Document::load method
- Added PPI::Document::save method
- Added PPI::Document::index_locations method
- Added PPI::Document::flush_locations method
- Added PPI::Element::top method
- Added PPI::Element::document method
- Renamed PPI::Element::extract -> PPI::Element::remove
- Added test script for element-y stuff
- Optimisation across the board using List::Any
- Added PPI::Node::first_child method
- Added PPI::Node::last_child method
- Added PPI::Element::clone method
- Removed Filehandle support from PPI::Tokenizer, to allow the
ability to rollback source lines into the buffer if needed.
- Added POD documentation for PPI::Element
- Added POD documentation for PPI::Node
- Added POD documentation for PPI::Document
0.818 Mon Jul 5 2004
- Changed lib/PPI/Manual.pm to lib/PPI/Manual.pod
- Added documentation for PPI::Lexer
- Fixed the misparsing of s{//}{\}
- More clues added for deciding "slash or regex"
- Removed PPI::Batch from the default distribution
- Replaced File::Flat with File::Slurp to reduce dependencies
0.817 Thu Jul 1 2004
- Fixed the misparsing of $#{ }
- Changed PPI::ParentElement to PPI::Node and moved it to it's own file
- Changed PPI::Common to PPI::Base
- Fixed PPI::Node::find
- Added PPI::Node::prune
- Started to add a little more class structure documentation
- Tried to make the DESTROY sequence of events work better
0.816 Tue Jun 29 2004
- Solved the "last token in file parses wrong" bug
0.815 Sun Jun 27 2004
- Fixed a bug with the detection of @- and @+
- Added support for @*
- Added missing classmap entry for ^ to ::Token::WhiteSpace
- Added support for arcane "foo"x10 idiosyncracy
0.814 Sat Jun 26 2004
- Added the PPI tester, a desktop-based interactive debugger, which
should greatly accelerate finding and fixing both ::Tokenizer
and ::Lexer bugs. This will probably end up as a seperate
distribution though, as it has a dependency on wxPerl.
- Fixed the misparsing of Foo::Bar::Baz
- Fixed the misparsing of *100
- Fixed the misparsing of Class::->method properly, or rather Foo::
- Tokenizer correctly identifies labels
- Changed PPI::Statement::Flow to PPI::Statement::Compound
- Removed the extra null whitespace token appearing after a bareword
at the end of a file.
- -X operator are recognised correctly, although not at end of file
- Lexer detects subroutine and if () statement ends correctly
0.813 Sat Jun 26 2004
- PPI::Lexer is not structurally complete
0.812 Tue Jun 22 2004
- No changes to PPI itself.
- With the addition of Test::ClassAPI 'complete' support,
upgraded 02_api.t to use it. Fixed a few small house-keeping bugs.
0.811 Mon Jun 21 2004
- Added support for subroutine attributes
- Fixed some problems with anonymous subroutines and prototypes
- $#$foo parses as (Cast,Symbol) now, not (Magic,Symbol)
0.810 Mon Jun 14 2004
- Recognise the _ magic filehandle
0.809 Sat Apr 17 2004
- No changes to PPI itself.
Set the correct number of tests to match changes to Test::ClassAPI
0.808 Sat Apr 17 2004
- No changes to PPI itself.
Upgraded 02_api.t to match changes to Test::ClassAPI
0.807 Sat Apr 3 2004
- Added a manual META.yml file to stop the bundled private AppLib
library from being indexed by CPAN
0.806 Mon Mar 22 2004
- The $} magic variable is now supported
- Fixed a "tight sub property" bug ( sub foo:lvalue )
0.805 Sun Sep 28 2003
- The maximum line length regressed, reseting it to 5000.
- In PPI::Format::HTML, not any parsing error causing a
premature end of tokenizer by adding it in a comment at
the end of the file.
0.804 Sat Sep 06 2003
- Statement and Structure resolution preliminarily work.
Some basic types of statements and structures are identified.
- PPI::Format::Apache has been seperated into a different module
0.803 Sat Sep 06 2003
- Added very long line protection support.
Maximum line length is now 5000.
- Added bug fixes to the Lexer so that block tree building works
mostly OK again, without adding broken duplicate tokens.
- Added the PPI::Lexer::Dump module, to do Lexer object dumps.
0.802 Sat Aug 23 2003
- PPI::Format::HTML sends the correct content headers
0.801 Fri Aug 22 2003
- Moved to a new numbering scheme to get more room before 1.0
- Always fully load when called under mod_perl
- Add mod_perl hook to PPI::Format::HTML
0.8 Fixes to the quote parsing engine
0.7 Fixed some minor bugs
0.6 Fixed POD, fixed version number, included $'a as a symbol
0.5 Missing
0.4 Mon Dec 23 10:24:21
- Some more minor parsing fixes in Tokenizer
- Completely changed the API from doThis to do_this style
- Changed API to indicate private methods properly
0.3 Tue Dec 17 10:29:27
- Restructured a little bit
- Fixed some mis-parsing cases
0.2 Unknown
- Added test script
0.1 Thu Dec 06 16:50:23 2002
- original version