1$Id$
2
3Revision history for XML::Atom
4
50.43  2021-04-28 13:39:09 PDT
6    * Use Digest::SHA instead of Digest::SHA1 #13
7    * Fix tests when no '.' is in @INC #14
8    * Enable expand_entities for XML::LibXML 2.0202 #20
9    * Bump dependency for XML::LibXML
10    * Bump dependency for XML::XPath and removed unnecessary override #23
11
120.42  2017-05-12 14:33:09 JST
13    * Doc fixes
14    * Remove encoding pragma to support latest version of perl
15      https://rt.cpan.org/Ticket/Display.html?id=115101
16
170.41  2011.09.26
18    * Added a dependency to DateTime::TimeZone (leto)
19
200.40  2011.09.18
21    * Fixed tests for Windows (wchristian)
22    * use all upper case UTF-8 (tsgit)
23
240.39  2011.06.20
25    * Disabled external entities and network to avoid possible security flaw (yannk)
26
270.38  2011.05.22
28    * Fixed a bug where content with newlines wasn't encoded in perl >= 5.12 (emasaka)
29      https://rt.cpan.org/Public/Bug/Display.html?id=61637
30
310.37  2009.12.29
32    * Fixed accessors for source elements (Vince Veselosky)
33
340.36  2009.12.21
35    * Fixed various dependency issues RT #23538, #34481, #52519, #41058 (Tomas Doran)
36
370.35  2009.05.01
38    * reworked Module::Install stuff to remove junks
39
400.34  2009.04.29
41    * Fixed $entry->source support (Martin Atkins)
42
430.33  2009.01.06
44    * Client: Send WSSE auth header only when username is set
45      (Thanks to David Bourget at http://rt.cpan.org/Public/Bug/Display.html?id=42201)
46
470.32  2008.11.23
48    * Added base and lang to Entry and Feed object. Fixed xml:base attributes.
49      (Simon Wistow)
50
510.31  2008.11.13
52    * Update Content-Type in XML::Atom::Client when the entity's version >= 1.0
53      (Thanks to David Steinbrunner RT 39801)
54
550.30  2008.11.12
56    * hopefully fix a bug where xml:base returns an empty string
57      e.g. http://www.nntp.perl.org/group/perl.cpan.testers/2008/11/msg2595696.html
58      (Thanks to tokuhirom http://d.hatena.ne.jp/tokuhirom/20081110/1226280757)
59
600.29  2008.10.25
61    * Skips Unicode tests since it doesn't pass with some libxml versions (and it's not actually a bug)
62
630.28  2007.11.06
64    * Fixed Namespace handling in extensions so that both URL and NS object work
65      (Thanks to Brian Cassidy)
66
670.27_01 2007.10.04
68    * Removes most of hacks to deal with LibXML insane unicode stuff which are fixed with 1.64
69
700.27 2007.09.15
71    * Fixed $feed->as_xml_utf8 to work with latest XML::LibXML
72
730.26 2007.09.15
74    * This be 0.26
75
760.25_02  2007.06.20
77    * Fixed tests that fail with newer libxml (Thanks to knagano)
78
790.25_01 2007.04.27
80
81    * Fixed XML::Atom::Base element accessor to work with attributes
82      (Patch from LTjake and Jshirley for OpenSearch extension)
83    * Make XML::Atom::Link easily subclassable
84      (Patch from Simon Wistow for Google Calendar support)
85
860.25  2006.11.30
87    * Fixed memory leaks in XML::Atom::Client
88      (Reported by Brian Cassidy)
89
900.24  2006.11.25
91    * Updated document to mention that ID creation is user's responsibility
92    * Added $feed->as_xml_utf8 which always returns UTF-8 bytes string, rather than UTF-8 flagged one.
93      This addresses annoying issues with UTF-8 vs. latin-1 (Thanks to Rui Vilela #21191)
94    * Better fix for the hateful default: prefix issue in libxml2; now we
95      remove the default\d* prefix on any nodes and set the proper namespace
96      URI.
97    * Fix to the test case since 0x242 is now printable character in bleadperl
98      (Thanks to Andreas Koenig and Steve Peters)
99    * Skip tests if 'euc-jp' is unknown encoding on your XML library
100      (via CPAN testers)
101
1020.23  2006.08.27
103    * Fixed the method to get xml:lang and xml:base due to the
104      XML::LibXML 1.60 change which invalidated it.
105
1060.22  2006.07.24
107    * Refactored internal element accessors by eating the new dog food
108      mk_elem_accessors and mk_object_list_accessor.
109    * Added support of Atom 1.0 <category> parse and generation
110    * Added $thing->links and $thing->categories as a moniker method
111      that returns an array reference in a scalar context
112    * Fixed a bug in $content->body() where it accidentally thinks the
113      content is not a valid Unicode string even if it is, if you call
114      eval {} in elsewhere in the code and $@ is left set.
115      (Thanks to Chris Dent for the patch)
116
1170.21  2006.07.13
118    * propagate $entry's version when we create content element off of entry
119      using $entry->content("foo") syntax.
120      (Thanks to Simon Wistow for spotting this bug)
121
1220.20  2006.07.12
123    * Lots of refactoring, which simplifies much of the code in the various
124      construct modules (Person, Link, etc), and which should also make it
125      much more straightforward to add extension classes in the future.
126    * Added global $XML::Atom::ForceUnicode flag to return everything as Unicode flagged
127      (Suggested by many people)
128    * Added global $XML::Atom::DefaultVersion flag to set default
129      version number for generated Atom feed. Defaults to 0.3 (for backward compatibility)
130    * Added support for atom:content @type in Atom 1.0 feeds
131      (Suggested by many people, especially Chris Dent and Andy Lester from Socialtext)
132
1330.19  2006.03.19
134    * Fix 0.18 bug where renaming stuff was totally broken.
135
1360.18  2006.03.16
137    * Support Atom 0.3 -> 1.0 renaming bits (issued -> published,
138      modified -> updated, tagline -> subtitle)
139    * $atom->content->body doesn't return Unicode flagged variable
140      anymore, even if it's text/ data. Now it just returns UTF-8 bytes.
141      (Thanks to Garth Webb)
142
1430.17  2006.02.22
144    * Fixed problem with XML::XPath
145
1460.16  2005.11.22
147    * Fixed a terrible bug when you set binary data to $entry->content
148
1490.15  2005.11.01
150    - Fixed bug found in mode => 'insert'
151      (Thanks to Dominic Mitchell)
152
1530.14  2005.10.21
154    - Fixed bug that it decodes binary data as UTF-8 octet
155      (Thanks to Mahlon E. Smith)
156    - Don't eat up STDIN in cgi-mode
157      (Thanks to Bayle Shanks)
158
1590.13_02
160    - Now supports insert mode, by passing hash reference in add_entry
161      $feed->add_entry($entry, { mode => 'insert' });
162      (Thanks to Dominic Mitchell)
163
1640.13_01  2005.09.13
165    - Now supports creating version 1.0 feed by passing new(Version => 1.0)
166    - Be more strict in utf-8 handling and base64ing
167      (Thanks to Dave Rolsky)
168
1690.13  2005.08.18
170    - Bumped up the version
171
1720.12_02
173    - $feed->version now returns 1.0 when xmlns patches with that for 1.0
174    - Fixed segmentation fault problem with <atom:content> longer than 2.5k
175      (Thanks to Chris Dent and Ryan King)
176    - No unicode decode hack on content withou mode="xml"
177
1780.12_01  2005.07.19
179    - Added Atom 1.0 feed support for parsing
180    - Hacked Unicode entity in $content->body
181    - Added $entry->contributor
182    - $entry->contributor and $entry->person returns list in list context
183    - Added $content->lang and $content->base (xml:lang and xml:base)
184    - Make sure $feed->as_xml doesn't set utf-8 flag
185
1860.12  2005.06.07
187    - Documentation fixes for XML::Atom::Server. Thanks to Tatsuhiko
188      Miyagawa for the patch.
189    - Removed XML::LibXSLT usage. Too much pain for too little gain.
190      To be clear: all it was doing was namespace normalization, so
191      removing it should make no difference.
192    - Fixed _utf8_off bug in XML::Atom::Client that causes fatal error
193      in POSTing multibyte content (Tatsuhiko Miyagawa, Masayoshi Sekimura)
194    - Added XML::Atom::Thing::add method to allow $entry->add()
195      (Tatsuhiko Miyagawa)
196
1970.11  2005.02.23
198    - Remove the default: namespace when converting to XML using as_xml
199      (the earlier fix only fixed it when getting the contents of an entry
200      using $entry->content).
201    - UTF-8 data is no longer base64-encoded in XML::Atom::Content. Thanks
202      to Tatsuhiko Miyagawa for the patch.
203    - Added XML::Atom::Entry::getlist($ns, $element) to retrieve the values
204      of an element that may appear multiple times in the entry (like
205      dc:subject). Thanks to Tatsuhiko Miyagawa for the patch.
206    - Added ability to set namespaced attributes in an XML::Atom::Link
207      object. Thanks to Tatsuhiko Miyagawa for the patch.
208    - XML::Atom::Entry::add_link($link) no longer clones $link if it's
209      a XML::Atom::Link object. Thanks to Tatsuhiko Miyagawa for the
210      patch.
211
2120.10  2004.12.31
213    - Eliminated unitialized value warning on <link /> attributes that
214      aren't set.
215    - Added XML::Atom::Feed->version to get and set the version of the feed.
216    - XML::Atom::Feed->language can now be used to set the language of
217      the feed.
218    - Added support for using XML::XPath in XML::Atom::Server. Thanks to
219      Autrijus Tang for the patch.
220
2210.09  2004.07.29
222    - Fixed "500 Malformed characters in syswrite" bug with utf-8. Thanks to
223      Tatsuhiko Miyagawa for the patch.
224    - Fixed bug in server where empty XML response would cause an error. Thanks
225      to Tatsuhiko Miyagawa for the patch.
226
2270.08  2004.06.01
228    - Added XML::Atom::Feed::language method, which returns the language
229      of the feed (from 'xml:lang').
230    - Added XML::Atom::Feed::author, which returns a XML::Atom::Person
231      object representing the <author> element.
232    - Remove the default: namespace prefix that XML::LibXML adds inside
233      <content mode="xml"> elements.
234    - Use LWP::Authen::Wsse module for WSSE authentication when in REST
235      mode, which handles redirects properly.
236
2370.07  2004.05.15
238    - Added (experimental) support for using XML::XPath as an alternative
239      to XML::LibXML. This is detected automatically upon loading XML::Atom;
240      XML::LibXML is still the default.
241    - WSSE authentication tokens now persist properly across server
242      redirects. Thanks to Autrijus Tang for the patch.
243    - Fixed bug where empty password (empty string or "0") would cause
244      an invalid login in Atom server core. Also, improved error message
245      on invalid password for security. Thanks to Tatsuhiki Miyagawa
246      for the patch.
247
2480.06  2004.04.14
249    - BACKWARDS INCOMPATIBILITY:
250      Fixed Nonce behavior in API. Nonce should be sent in base64-encoded
251      form in SOAP and REST requests, but decoded (raw) nonce should be used
252      when generating PasswordDigest.
253    - Feed->add_link and Entry->add_link now support the same hash
254      reference parameter style as used in 0.041 and below, in addition
255      to the XML::Atom::Link parameter.
256    - Fixed bug with Feed->link so that it no longer returns links that
257      are contained within <entry> elements within the <feed>.
258
2590.05  2004.01.05
260    - BACKWARDS INCOMPABILITY:
261      Removed XML::Atom::Entry::get_links and XML::Atom::Feed::get_links,
262      in favor of new link() method in both classes, which returns a list
263      of XML::Atom::Link objects. Also, add_link() now expects an
264      XML::Atom::Link object instead of a hash reference.
265    - BACKWARDS INCOMPABILITY:
266      Renamed XML::Atom::API to XML::Atom::Client.
267    - Added XML::Atom::Link, an encapsulation of the <link> tag in a feed
268      or an entry.
269    - Added XML::Atom::Server, an implementation of an Atom core server
270      (to be subclassed for implementation-specific methods).
271    - Fixed feed auto-discovery to work with all client tests at
272      http://diveintomark.org/tests/client/autodiscovery/
273    - Added (and documented) XML::Atom::Feed->find_feeds, to return all
274      of the Atom feed URIs on a page given a URI.
275    - Fixed issue with PasswordDigest in API (use sha(), not hex(sha())
276      for generating password digest).
277    - Stream parameter to XML::Atom::Entry::new and XML::Atom::Feed::new
278      is now optional; if passed only one parameter, it's assumed to be
279      the Stream parameter.
280    - Fixed bug in XML::Atom::Content::as_xml (it didn't work).
281
2820.041 2003.12.15
283    - Fixed issue with calling $entry->content on list of entries generated
284      from $feed->entries. (Thanks to esummers for the report.)
285
2860.04  2003.12.14
287    - BACKWARDS INCOMPABILITY:
288      <content> elements are now represented as XML::Atom::Content objects
289      instead of just get/set accessors. You can still set
290      XML::Atom::Entry::content with a scalar (it will be automatically
291      upgraded to an XML::Atom::Content object), but to get the value of
292      <content>, you need to call XML::Atom::Content::Body. For example:
293          $entry->content->body
294    - XML::Atom::Entry::content now removes the <div> wrapper from
295      XHTML <content> when called with no arguments.
296    - Changed XML::Atom::Author to XML::Atom::Person and re-implemented it.
297    - Changed "WSSE" to "UsernameToken" in X-WSSE header.
298
2990.03  2003.12.05
300    - Added XML::Atom::Author to represent author or contributor, with
301      accessors for name, email, URL, etc.
302    - Updated XML::Atom::API per the 08 API spec:
303          * Removed searchEntries and replaced it with getFeed
304          * Removed introspection and replaced it with URI parameters
305            to createEntry and getFeed (introspection will be added
306            back in once it is more locked down)
307    - Added support for easily adding <link> tags to feed or entry
308      (eg XML::Atom::Feed::add_link) and getting <link> tags from feed or
309      entry (eg XML::Atom::Feed::get_links).
310    - Fixed XML::Atom::Thing::get to return undef when an element is
311      not found in the object at all (it used to return the empty string).
312
3130.02  2003.09.28
314    - Completely revamped authentication mechanism to use X-WSSE header
315      (or corresponding SOAP headers).
316    - Removed 03-client.t test, because there aren't any publicly
317      available servers to test against. (Are there?)
318    - Added support for SOAP wrapper in API client.
319    - Added namespace support in XML::Atom::Namespace using get and set
320      methods in XML::Atom::Entry and XML::Atom::Feed.
321    - Added namespace normalization for produced XML (if XML::LibXSLT
322      is installed). This is really just a cosmetic thing.
323
3240.01  2003.09.07
325    - Initial distribution.
326