The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 0.814

  • 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

Provides

in sample/syntax/AppLib/CGI.pm
in sample/syntax/AppLib/Error.pm
in sample/syntax/AppLib/Page.pm
in sample/syntax/AppLib/PageFactory.pm
in sample/syntax/AppLib/Parser.pm
in lib/PPI/Batch.pm
in lib/PPI/Common.pm
in lib/PPI/Document.pm
in lib/PPI/Element.pm
in lib/PPI/Format/HTML.pm
in lib/PPI/Lexer.pm
in lib/PPI/Lexer/Dump.pm
in lib/PPI/Element.pm
in lib/PPI/Statement.pm
in lib/PPI/Statement.pm
in lib/PPI/Statement.pm
in lib/PPI/Statement.pm
in lib/PPI/Statement.pm
in lib/PPI/Statement.pm
in lib/PPI/Statement.pm
in lib/PPI/Statement.pm
in lib/PPI/Statement.pm
in lib/PPI/Statement.pm
in lib/PPI/Structure.pm
in lib/PPI/Structure.pm
in lib/PPI/Structure.pm
in lib/PPI/Structure.pm
in lib/PPI/Structure.pm
in lib/PPI/Structure.pm
in lib/PPI/Structure.pm
in lib/PPI/Token.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Quote.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Quote/Full.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Quote/Simple.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/Unknown.pm
in lib/PPI/Token/Classes.pm
in lib/PPI/Token/_Pod.pm
in lib/PPI/Tokenizer.pm
in lib/PPI/Tokenizer/Quote/Full.pm
in lib/PPI/Tokenizer/Quote/Simple.pm