=head1 Revision history for XML-Atom-SimpleFeed



=head2 0.86 (2009-06-23)

=over 4

=item * Person constructs are properly escaped and encoded

=back



=head2 0.85 (2009-06-23)

=over 4

=item * Used a less finicky implementation strategy for the CDATA
flattener so hopefully it will not be buggy any more

=back



=head2 0.84 (2009-05-26)

=over 4

=item * Added some basic XML writer tests, which uncovered a bug in the
CDATA flattener, which is now fixed

=back



=head2 0.83 (2009-05-25)

=over 4

=item * Thanks to JMASTROS for spotting another bug in the XML escaping
function and contributing a test case

=back



=head2 0.82 (2008-06-21)

=over 4

=item * I can't believe no one noticed in such a long time that the XML
escaping function was broken. I need unit testsE<hellip>

=item * Also, the date in the changelog entry for 0.81 was wrong.

=back



=head2 0.81 (2008-06-21)

=over 4

=item * Put private functions in XML::Atom::SimpleFeed::YeWhoEnters and
placed methods in XML::Atom::SimpleFeed explicitly. This gets rid of
approximately 734 prefix underscores.

=item * It turns out L<Carp::Clan> wasn't even necessary, L<Carp> works
that way by default. *blush*

=item * More big POD cleanups (converted lots of list items to
subheadings so they're linkable and listed in the TOC).

=item * Throw out the pointless POD and POD coverage tests.

=item * Automatically escape the content of the C<icon>, C<id>, C<logo>,
C<published>, and C<updated> elements. Oops. (CPAN RT #36961)

=back



=head2 0.8 (2006-06-03)

=over 4

=item * Multiple consecutive internal refactors; code structure is now
actually satisfactory

=item * Handles multiple authors and contributors

=item * Support for icon and logo elements

=item * Big POD cleanup

=item * Use L<Carp::Clan> to get rid of silly C<$Carp::CarpLevel> juggling

=item * B<BACKWARDS INCOMPATIBLE API CHANGE>: Elements such as C<link>
which may appear multiple times are no longer specified in an anonymous
array, but simply given repeatedly.

=item * B<BACKWARDS INCOMPATIBLE API CHANGE>: Atom 0.3 element and
attribute names are no longer supported. (No point keeping a lot of
deprecation code around in the face of a change like the above.)

=item * B<BACKWARDS INCOMPATIBLE API CHANGE>: Suppressing the default
C<generator> element requires calling the C<no_generator> method instead
of passing a C<generator> key to C<new> with an undefined value.

=item * B<BACKWARDS INCOMPATIBLE API CHANGE>: Well, since I'm at it, the
C<save_file> method is no longer supported. C<print> now takes a handle,
though.

=item * Cleaned up errors and warning messages and got rid of
DIAGNOSTICS section in POD

=back



=head2 0.8_004 (2006-05-10)

=over 4

=item * Brownbag upload: forgot to update F<Changes> in 0.8_003

=back



=head2 0.8_003 (2006-05-10)

=over 4

=item * Minor incremental progress; various bugfixes, some refactor.

=back



=head2 0.8_002 (2006-04-09)

=over 4

=item * Use builtin XML writer instead of SAX for output. This
eliminates huge amounts of redundancy.

=item * Big improvements in the distribution of responsibilities for
deprecation and validation checks.

=item * Array-based implementation rather than inside-out objects.

=item * Internal structure is now more logical and consistent.

=back



=head2 0.8_001 (2005-09-28)

=over 4

=item * Emit Atom 1.0. Documentation updated to reflect Atom 1.0. Usage
according to Atom 0.3 will transparently generate 1.0 elements but emit
deprectation warnings.

=item * Remove C<_generate_entry_id> and use HTTP URLs as IDs by
default. Using tag: URIs is useful for generating the ID once, up front,
so that it won't change even if the permalink does -- if the ID is
generated from the permalink, we might as well use the permalink
directly.

=item * Use L<XML::SAX::Writer> instead of L<XML::Simple> for output.

=back

Change of maintainers: H. Wade Minter passes the module on to Aristotle
Pagaltzis.



=head2 0.7 (2005-05-06)

=over 4

=item * Fix the module prereq in F<Makefile.PL> to actually do the
proper dependency tests. Oops.

=back



=head2 0.6 (2005-04-27)

=over 4

=item * Use L<XML::Simple> to generate the XML, instead of doing strings
by hand.

=item * Make the module more robust: it now can handle multiple titles,
links, etc. by passing in arrayrefs and hashrefs, while still allowing
for simple use with strings.

=back

Many thanks to Aristotle Pagaltzis for the help.



=head2 0.5 (2005-05-09)

=over 4

=item * Add an C<as_string> method to return the feed as a scalar.

=item * Escape any C<< <![CDATA[ >> or C<< ]]> >> strings that appear in the
content CDATA section.

=item * Allow the save_file method to take either an open filehandle or
a scalar containing a filename.

=back

These issues reported by Aristotle Pagaltzis.



=head2 0.4 (2005-02-22)

=over 4

=item * Rework the author code again to fixe more bugs that I probably
should have caught before releasing 0.3. Sigh.

=back



=head2 0.3 (2005-02-22)

=over 4

=item * Fixed a bug in the entry author section where the author name
was always showing up as "name". (CPAN RT #11620)

=item * Fixed a similar bug in the feed-level author section.

=item * Happy Birthday, Holly!

=back



=head2 0.2 (2005-02-19)

=over 4

=item * Adjust the XML encoding to produce valid feeds.

=back



=head2 0.1 (2005-02-18)

=over 4

=item * Initial release.

=back

=for vim vi:tw=72:ft=pod
