0.06 2009-11-27 - Added a new handler, Markdent::Handler::HTMLFilter, which removes all HTML events (except for entities) from the event stream. - Added a new role, Markdent::Role::FilterHandler, to make it easier to write filtering handlers. 0.05 2009-11-27 - Theory-style tables no longer need to have header rows. They can just consist of a body. - Theory-style header rows can use equals signs (=) in the marker: | Header 1 | Header 2 | +==========+==========+ | Body 1 | Body 2 | 0.04 2009-11-26 - Added Markdent::Manual, a start at more comprehensive high-level docs on how to use Markdent. - Fixed some parsing bugs where some match methods did not return true, which could cause failures if the handler's handle_event method didn't return true. Now all match methods explicitly return true when they match (as they should). - Added a new handler, Multiplexer, which lets you multiplex the event stream to more than one handler at a time. 0.03 2009-11-26 - Added Markdent::Handler::CaptureEvents and Markdent::CapturedEvents. In my benchmarks, thawing a Markdent::CaptureEvents object and replaying its events to generate HTML for a bunch of documents was about 6x faster than parsing from scratch. - Started implementing some Markdown extensions proposed by David Wheeler as the "Theory" dialect. This includes a nice syntax for tables. For now this only includes the table extension. - Made it easy to specify a dialect for a parser by writing my $parser = Markdent::Parser->new( dialect => 'Theory' ); - HTML comments are now parsed as comments, not text or HTML tags. There are two events for this, HTMLCommentBlock and HTMLComment. The block version is for standalone comments, the other is for comments embedded in text. - Made tag balancing a bit more generic with the Markdent::Role::BalancedEvent role, which makes it easier to compare start & end events to see if they're balanced. - Refactored some parser internals to improve subclassability. 0.02 2009-11-24 - Fixed some cases of nested strong and em in the Standard dialect's parser. It was broken for cases like this: *This **is a test***. This should turn into HTML like This is a test but instead turned into This is a test*. - Added some missing test dependencies. - There is now a separate class for each type of event, all of which do the Markdent::Role::Event role. 0.01 2009-11-21 - First version, released on an unsuspecting world. Still rather alpha, and internals are subject to lots of change.