1<?xml version="1.0" encoding="UTF-8"?>
2<package packagerversion="1.10.4" version="2.0" xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd">
3 <name>Net_NNTP</name>
4 <channel>pear.php.net</channel>
5 <summary>NNTP implementation</summary>
6 <description>PEAR&apos;s package for communication with NNTP/Usenet servers.
7Net_NNTP handles the connection and protocol level commands (RFC977), including many commonly implemented non-standard commands (RFC2980).
8Net_NNTP includes an unserfriendly API for intermediate user, who don&apos;t want to work directly at the command level. However, Net_NNTP does require some knowlege about the NNTP protocol (RFC 977), and general knowledge about email (RFC(2)822) and MIME (2045-2048), since any handling of both content and headers is left up to the user!
9The protocol implementation does not parse the actual article data, but at the command level it splits returned data at protocol specified boundaries where appropriate.</description>
10 <lead>
11  <name>Heino H. Gehlsen</name>
12  <user>heino</user>
13  <email>heino@gehlsen.dk</email>
14  <active>yes</active>
15 </lead>
16 <contributor>
17  <name>Jan-Pascal van Best</name>
18  <user>janpascal</user>
19  <email>janpascal@vanbest.org</email>
20  <active>no</active>
21 </contributor>
22 <date>2017-08-30</date>
23 <time>15:54:09</time>
24 <version>
25  <release>1.5.2</release>
26  <api>0.9.0</api>
27 </version>
28 <stability>
29  <release>stable</release>
30  <api>alpha</api>
31 </stability>
32 <license uri="http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231">W3C</license>
33 <notes>
34- Fix bug #20941, PR #2 @ GitHub: &quot;Clear openssl error messages before and after fgets calls&quot; (thanks @zrtq)
35- Fix bug #21236: &quot;Line starting with dot is not dot stuffed&quot; (thanks @mesa57 / Jan Franken)
36- Change to absolute file locations in require-once()
37 </notes>
38 <contents>
39  <dir name="/">
40   <file baseinstalldir="Net" md5sum="3b2e6ffbf41b1f5df61d1015f4a1d190" name="NNTP/Protocol/Client.php" role="php">
41    <tasks:replace from="@package_version@" to="version" type="package-info" />
42    <tasks:replace from="@package_state@" to="state" type="package-info" />
43    <tasks:replace from="@api_version@" to="api-version" type="package-info" />
44    <tasks:replace from="@api_state@" to="api-state" type="package-info" />
45   </file>
46   <file baseinstalldir="Net" md5sum="0917754d74352bacff7ed8307e900765" name="NNTP/Protocol/Responsecode.php" role="php">
47    <tasks:replace from="@package_version@" to="version" type="package-info" />
48    <tasks:replace from="@package_state@" to="state" type="package-info" />
49    <tasks:replace from="@api_version@" to="api-version" type="package-info" />
50    <tasks:replace from="@api_state@" to="api-state" type="package-info" />
51   </file>
52   <file baseinstalldir="Net" md5sum="4fa83c8b878cba067d8b4e26360d22e1" name="NNTP/Client.php" role="php">
53    <tasks:replace from="@package_version@" to="version" type="package-info" />
54    <tasks:replace from="@package_state@" to="state" type="package-info" />
55    <tasks:replace from="@api_version@" to="api-version" type="package-info" />
56    <tasks:replace from="@api_state@" to="api-state" type="package-info" />
57   </file>
58   <file md5sum="6d05a0f2fa060bf8653351cbef13c118" name="docs/examples/demo/article.php" role="doc" />
59   <file md5sum="1dbf8d47f30dbe076836444d9c4f92e8" name="docs/examples/demo/group.php" role="doc" />
60   <file md5sum="1183696fe0707ce4fee11a00244f0467" name="docs/examples/demo/groups.php" role="doc" />
61   <file md5sum="eb330b845408c056f992f327629816ac" name="docs/examples/demo/index.php" role="doc" />
62   <file md5sum="0dae6804ff4887fa5559fd769543587f" name="docs/examples/demo/common.inc.php" role="doc" />
63   <file md5sum="eade351b24f61a499223a7e9be318913" name="docs/examples/demo/footer.inc.php" role="doc" />
64   <file md5sum="f993033648124768114794e144edfb83" name="docs/examples/demo/header.inc.php" role="doc" />
65   <file md5sum="ba6e671e019a0ba41fd15f2e6e3a76f9" name="docs/examples/demo/style.css" role="doc" />
66   <file md5sum="1f17cd1ce928df6e0295b166356e7acc" name="docs/examples/demo/config.inc.php" role="doc">
67    <tasks:replace from="@package_version@" to="version" type="package-info" />
68    <tasks:replace from="@package_state@" to="state" type="package-info" />
69    <tasks:replace from="@api_version@" to="api-version" type="package-info" />
70    <tasks:replace from="@api_state@" to="api-state" type="package-info" />
71   </file>
72   <file md5sum="00f9949fdda41842d3def46cd282e8a4" name="docs/examples/phpdoc/authenticate.php" role="doc" />
73   <file md5sum="514dbb837e49a1b00c7667b2999caea6" name="docs/examples/phpdoc/connect.php" role="doc" />
74   <file md5sum="d1b7b12440312d5fb80c8ee992a2923a" name="docs/examples/phpdoc/constructor.php" role="doc" />
75   <file md5sum="ab57d33fac2dc2f408ef7aa13e427d71" name="docs/examples/phpdoc/getDescriptions.php" role="doc" />
76   <file md5sum="1ad49a64a0d4b27ecab0a9de12a56f3e" name="docs/examples/phpdoc/getGroups.php" role="doc" />
77   <file md5sum="72d63a91b1903380494c3f225fa5eceb" name="docs/examples/phpdoc/getOverview.php" role="doc" />
78   <file md5sum="0d25cd803cb32d7acc492434d113d8d4" name="docs/examples/phpdoc/selectArticle.php" role="doc" />
79   <file md5sum="302359374187473142b9cb5acc6a09be" name="docs/examples/phpdoc/selectGroup.php" role="doc" />
80   <file md5sum="3a1037acdfd011919c0fa648619dd7cc" name="docs/examples/phpdoc/selectNextArticle.php" role="doc" />
81   <file md5sum="fb8f5bc65b8aa94a4b408fc2c61482be" name="docs/examples/phpdoc/selectPreviousArticle.php" role="doc" />
82   <file md5sum="9ae7252541aa8ac6db516d1c88a17e50" name="LICENSE.md" role="doc" />
83  </dir>
84 </contents>
85 <dependencies>
86  <required>
87   <php>
88    <min>5.0.0</min>
89   </php>
90   <pearinstaller>
91    <min>1.4.5</min>
92   </pearinstaller>
93   <package>
94    <name>PEAR</name>
95    <channel>pear.php.net</channel>
96    <min>1.4.0</min>
97   </package>
98  </required>
99  <optional>
100   <package>
101    <name>Log</name>
102    <channel>pear.php.net</channel>
103    <min>1.8.7</min>
104   </package>
105  </optional>
106 </dependencies>
107 <phprelease />
108 <changelog>
109  <release>
110   <date>2017-08-19</date>
111   <time>12:00:00</time>
112   <version>
113    <release>1.5.2RC1</release>
114    <api>0.9.0</api>
115   </version>
116   <stability>
117    <release>beta</release>
118    <api>alpha</api>
119   </stability>
120   <notes>
121- Fix bug #20941, PR #2 @ GitHub: &quot;Clear openssl error messages before and after fgets calls&quot; (thanks @zrtq)
122- Fix bug #21236: &quot;Line starting with dot is not dot stuffed&quot; (thanks @mesa57 / Jan Franken)
123- Change to absolute file locations in require-once()
124   </notes>
125  </release>
126  <release>
127   <date>2017-08-14</date>
128   <time>12:00:00</time>
129   <version>
130    <release>1.5.1</release>
131    <api>0.9.0</api>
132   </version>
133   <stability>
134    <release>stable</release>
135    <api>alpha</api>
136   </stability>
137   <notes>
138- Fix a few serious typos
139+ Better handling of timeouts
140+ Add pause between each line to avoid CPU overload
141- Fix calls to nonexistent error()
142- Minor fixes in demo
143   </notes>
144  </release>
145  <release>
146   <date>2015-05-22</date>
147   <time>12:00:00</time>
148   <version>
149    <release>1.5.1RC1</release>
150    <api>0.9.0</api>
151   </version>
152   <stability>
153    <release>beta</release>
154    <api>alpha</api>
155   </stability>
156   <notes>
157- Fix a few serious typos
158+ Better handling of timeouts
159+ Add pause between each line to avoid CPU overload
160- Fix calls to nonexistent error()
161- Minor fixes in demo
162   </notes>
163  </release>
164  <release>
165   <date>2011-10-05</date>
166   <time>12:00:00</time>
167   <version>
168    <release>1.5.0</release>
169    <api>0.9.0</api>
170   </version>
171   <stability>
172    <release>stable</release>
173    <api>alpha</api>
174   </stability>
175   <notes>
176+ Fix limited buffer for large replies from server (bug# 18875)
177+ Fix NNTP injection vulnerability (reported by Brendan Coles, itsecuritysolutions.org)
178+ Fix XXS vulnerability in demo (reported by Brendan Coles, itsecuritysolutions.org)
179+ Added support for STARTTLS encryption
180+ Use PHP&apos;s streams instead of Net_NNTP (to allow easy TLS encryption and future on demand data compressed)
181+ Improved logging with notices for most commands
182+ Added warning about feof() defect in PHP 5.2.11 (bug #49706)
183+ Fix usage of deprecated split() (bug #17417 and #17783)
184+ Fix for large groups on 32 bit systems: Article numbers are no longer cast into integers, but passed on directly from the server as strings (bug #17689). This _could_ possibly have implications and should considered a possible backward compatibility breakage, but is thought to be acceptable, since PHP is expected to cast into integers/floats as needed...
185   </notes>
186  </release>
187  <release>
188   <date>2011-10-05</date>
189   <time>12:00:00</time>
190   <version>
191    <release>1.5.0RC2</release>
192    <api>0.9.0</api>
193   </version>
194   <stability>
195    <release>beta</release>
196    <api>alpha</api>
197   </stability>
198   <notes>
199+ Fix limited buffer for large replies from server (bug# 18875)
200+ Fix NNTP injection vulnerability (reported by Brendan Coles, itsecuritysolutions.org)
201+ Fix XXS vulnerability in demo (reported by Brendan Coles, itsecuritysolutions.org)
202+ Added support for STARTTLS encryption
203+ Use PHP&apos;s streams instead of Net_NNTP (to allow easy TLS encryption and future on demand data compressed)
204+ Improved logging with notices for most commands
205+ Added warning about feof() defect in PHP 5.2.11 (bug #49706)
206+ Fix usage of deprecated split() (bug #17417 and #17783)
207+ Fix for large groups on 32 bit systems: Article numbers are no longer cast into integers, but passed on directly from the server as strings (bug #17689). This _could_ possibly have implications and should considered a possible backward compatibility breakage, but is thought to be acceptable, since PHP is expected to cast into integers/floats as needed...
208   </notes>
209  </release>
210  <release>
211   <date>2011-08-15</date>
212   <time>12:00:00</time>
213   <version>
214    <release>1.5.0RC1</release>
215    <api>0.9.0</api>
216   </version>
217   <stability>
218    <release>beta</release>
219    <api>alpha</api>
220   </stability>
221   <notes>
222+ Fix NNTP injection vulnerability (reported by Brendan Coles, itsecuritysolutions.org)
223  + Fix XXS vulnerability in demo (reported by Brendan Coles, itsecuritysolutions.org)
224  + Fix usage of deprecated split() (bug #17417 and #17783)
225  + Fix for large groups on 32 bit systems: Article numbers are no longer cast into integers, but passed on directly from the server as strings (bug #17689). This _could_ possibly have implications and should considered a possible backward compatibility breakage, but is thought to be acceptable, since PHP is expected to cast into integers/floats as needed...
226   </notes>
227  </release>
228  <release>
229   <date>2009-10-04</date>
230   <time>12:00:00</time>
231   <version>
232    <release>1.5.0a1</release>
233    <api>0.8.1</api>
234   </version>
235   <stability>
236    <release>alpha</release>
237    <api>alpha</api>
238   </stability>
239   <license>W3C</license>
240   <notes>
241+ Added support for STARTTLS encryption
242+ Use PHP&apos;s streams instead of Net_NNTP (to allow easy TLS encryption and future on demand data compressed)
243+ Improved logging with notices for most commands
244+ Added warning about feof() defect in PHP 5.2.11 (bug #49706)
245   </notes>
246  </release>
247  <release>
248   <date>2008-06-17</date>
249   <time>12:00:00</time>
250   <version>
251    <release>1.4.0</release>
252    <api>0.8.1</api>
253   </version>
254   <stability>
255    <release>stable</release>
256    <api>alpha</api>
257   </stability>
258   <license>W3C</license>
259   <notes>
260Finally released as stable - after two years as release candidate...
261   </notes>
262  </release>
263  <release>
264   <version>
265    <release>1.4.0RC1</release>
266    <api>0.8.1</api>
267   </version>
268   <stability>
269    <release>beta</release>
270    <api>alpha</api>
271   </stability>
272   <date>2006-06-17</date>
273   <license>W3C</license>
274   <notes>
275Changes in Net_NNTP_Client:
276  - fix bug #6833: mail() does not work
277  - fix bug #6845: notices in getOverview()
278  + Loading deprecated classes Net_NNTP_Message and Net_NNTP_Header now triggers warnings !
279   </notes>
280  </release>
281  <release>
282   <version>
283    <release>1.3.3</release>
284    <api>0.8.1</api>
285   </version>
286   <stability>
287    <release>beta</release>
288    <api>alpha</api>
289   </stability>
290   <date>2006-02-06</date>
291   <license>W3C</license>
292   <notes>
293+ Changes in Net_NNTP_Protocol_Client:
294  - fix bug #6618: notices in cmdListNewsgroups()
295   </notes>
296  </release>
297  <release>
298   <version>
299    <release>1.3.2</release>
300    <api>0.8.1</api>
301   </version>
302   <stability>
303    <release>alpha</release>
304    <api>alpha</api>
305   </stability>
306   <date>2005-12-23</date>
307   <license>W3C</license>
308   <notes>
309+ Changes in Net_NNTP_Client:
310  - getNewArticles() and getNewGroups() now validates that any strtotime() convertions was successfull.
311
312+ Changes in Net_NNTP_Protocol_Client:
313  - fix bug #6334: cmdNewNews() and cmdNewGroups() no longer localize the timestamp depending on timezones.
314   </notes>
315  </release>
316  <release>
317   <version>
318    <release>1.3.1</release>
319    <api>0.8.1</api>
320   </version>
321   <stability>
322    <release>alpha</release>
323    <api>alpha</api>
324   </stability>
325   <date>2005-12-23</date>
326   <license>W3C</license>
327   <notes>
328+ Changes in Net_NNTP_Client:
329  - added: mail() as a replacement for experimental post() using identical parameters as PHP&apos;s mail() function, (temporarily) preserving backward compatibility with experimental method in v1.0.
330  - modified and rewritten: post(), reduced to having only one parameter, (temporarily) preserving backward compatibility with experimental method in v1.0.
331
332+ Changes in Net_NNTP_Protocol_Client:
333  - added: _sendArticle()
334  - modified and rewritten: cmdPost() split into cmdPost() and cmdPost2() + now sends data via _sendArticle()
335  - modified and rewritten: cmdIhave() split into cmdIhave() and cmdIhave2() + now sends data via _sendArticle()
336   </notes>
337  </release>
338  <release>
339   <version>
340    <release>1.3.1</release>
341    <api>0.8.0</api>
342   </version>
343   <stability>
344    <release>alpha</release>
345    <api>alpha</api>
346   </stability>
347   <date>2005-12-14</date>
348   <license>W3C</license>
349   <notes>
350+ WARNING!
351  - Serious backward compatibility break with v1.2.x (alpha) releases!!! The experimental classes Net_NNTP_Header and Net_NNTP_Message has been droped, since such features does not belong in this package! For now loading either class results in a notice/warning, but later on both classes will be removed! Previously unimplementet NNTP commands now allow access to article headers...
352  - Some backward compatibility break with v1.1.x (beta) releases!!!
353
354+ Changes in Net_NNTP_Client:
355  - fixed: connect(), now returns false when posting is prohibited (like cmdModeReader()).
356  - fixed: getGroupArticles(), now updates internal group summary cache.
357  - added: getHeaderField().
358  - added: getGroupArticles().
359  - modified: connect(), added $encryption parameter to support ssl/tls connections, and $timeout parameter.
360  - modified: selectGroup(), added (experimental) parameter to allow fetching of article numbers at once.
361  - modified: getOverview(), added two (experimental) parameters (rewritten to preserve backward compatible with v1.0).
362  - modified and rewritten: getGroups(), addition of optional $wildmat parameter.
363  - modified and rewritten: getDescriptions(), addition of optional $wildmat parameter.
364  - modified and rewritten: getOverview(), $first and $last parameters changed into $range.
365  - renamed: quit() into disconnect(), (temporarily) preserving backward compatible with v1.0.
366  - renamed: getArticleRaw() into getArticle(), (temporarily) preserving backward compatible with v1.1.
367  - renamed: getHeaderRaw() into getHeader(), (temporarily) preserving backward compatible with v1.1.
368  - renamed: getBodyRaw() into getBody(), (temporarily) preserving backward compatible with v1.1.
369  - renamed and rewritten: getReferencesOverview() into getReferences().
370  - removed: connectAuthenticated() (as in MAINT_1_0 and MAINT_1_2).
371  - removed: isConnected() removed due to use of private members in Net_Socket!
372  - misc: all internal PEAR::throwError() changed to $this-&gt;throwError().
373  - misc: major phpdoc rewrite.
374  - misc: removal of code related to not yet implemented alternative authentication methods.
375
376+ Changes in Net_NNTP_Protocol_Client:
377  - added: cmdXHdr().
378  - added: cmdCapabilities().
379  - added: cmdHelp().
380  - added: cmdListActive().
381  - added: cmdXPat().
382  - modified connect(), added $encryption parameter to support ssl/tls connections.
383  - modified: cmdNext(), now returns array by default.
384  - modified and rewritten: cmdXOver(), first parameter now optional.
385  - renamed: isConnected() into _isConnected(), due to use of private members in Net_Socket.
386  - misc: support for logging via the Log package (debugging rewritten to use logger).
387  - misc: use of status response code constants in Net_NNTP_Protocol_Responsecode.
388  - misc: extends PEAR (as in v1.0.x).
389  - misc: all internal PEAR::throwError() changed to $this-&gt;throwError().
390
391+ Examples replaced by fully functional newsgroup reader demo.
392
393+ License upgraded to newer edition of &apos;W3C SOFTWARE NOTICE AND LICENSE&apos;
394   </notes>
395  </release>
396  <release>
397   <version>
398    <release>1.2.5</release>
399    <api>0.7.4</api>
400   </version>
401   <stability>
402    <release>alpha</release>
403    <api>alpha</api>
404   </stability>
405   <date>2005-11-27</date>
406   <license>W3C</license>
407   <notes>
408+ getHeaderField() added
409+ getReferencesOverview() rewritten
410+ cmdOver() added
411+ cmdHelp() added
412+ cmdXHdr() added
413+ cmdCapabilities() added
414+ cmdXOver() rewritten
415+ cmdListOverviewFmt rewritten
416+ cmdNext() modified
417+ cmdPrevious() modified
418+ cmdStat() modified
419+ connectAuthenticated() removed
420+ examples rewritten
421   </notes>
422  </release>
423  <release>
424   <version>
425    <release>1.2.4</release>
426    <api>0.7.3</api>
427   </version>
428   <stability>
429    <release>alpha</release>
430    <api>alpha</api>
431   </stability>
432   <date>2005-10-20</date>
433   <license>W3C</license>
434   <notes>
435+ Fix: connect() now returns false when posting is prohibited, like cmdModeReader() does
436+ New: Response code constants
437+ Misc. internal rewrites in protocol implementation:
438  - Expected response codes in cmdArticle(), cmdHead() and cmdBody() reduced to correspond actual implementations.
439  - First parameter in cmdXOver(), cmdXROver() and cmdListgroup() is now optional.
440  - New third optional parameter in getNewNews() and cmdNewnews().
441  - cmdNext(), cmdLast() and cmdStat() now returns array by default.
442   </notes>
443  </release>
444  <release>
445   <version>
446    <release>1.2.3</release>
447    <api>0.7.2</api>
448   </version>
449   <stability>
450    <release>alpha</release>
451    <api>alpha</api>
452   </stability>
453   <date>2005-05-13</date>
454   <license>W3C</license>
455   <notes>
456+ New method in Net_NNTP_Client: getBody().
457+ Added parameters to Net_NNTP_Client::getArticle/getHeader() to allow use of external return classes.
458+ Added status response code constants in Net_NNTP_Protocol_Clients.
459   </notes>
460  </release>
461  <release>
462   <version>
463    <release>1.2.2</release>
464    <api>0.7.1</api>
465   </version>
466   <stability>
467    <release>alpha</release>
468    <api>alpha</api>
469   </stability>
470   <date>2005-03-13</date>
471   <license>W3C</license>
472   <notes>
473+ Bug #3967 fixed: typo in Net_NNTP_Header::decodeString().
474   </notes>
475  </release>
476  <release>
477   <version>
478    <release>1.2.1</release>
479    <api>0.7.1</api>
480   </version>
481   <stability>
482    <release>alpha</release>
483    <api>alpha</api>
484   </stability>
485   <date>2005-03-28</date>
486   <license>W3C</license>
487   <notes>
488+ New methods in Net_NNTP_Client: selectArticle(), selectNextArticle() and selectPreviousArticle().
489+ New methods in Net_NNTP_Protocol_Client: cmdStat(), cmdNext() and cmdLast().
490   </notes>
491  </release>
492  <release>
493   <version>
494    <release>1.2.0</release>
495    <api>0.7.0</api>
496   </version>
497   <stability>
498    <release>alpha</release>
499    <api>alpha</api>
500   </stability>
501   <date>2005-01-14</date>
502   <license>W3C</license>
503   <notes>
504+ Corresponds to v0.11.3 (exact feature match).
505   </notes>
506  </release>
507  <release>
508   <version>
509    <release>1.1.2</release>
510    <api>0.6.2</api>
511   </version>
512   <stability>
513    <release>beta</release>
514    <api>beta</api>
515   </stability>
516   <date>2005-05-13</date>
517   <license>W3C</license>
518   <notes>
519+ Three new Net_NNTP_Client methods: getArticle(), getHeader() and getBody() - stripped down versions from the v1.2 releases (no default return classes).
520   </notes>
521  </release>
522  <release>
523   <version>
524    <release>1.1.1</release>
525    <api>0.6.1</api>
526   </version>
527   <stability>
528    <release>beta</release>
529    <api>beta</api>
530   </stability>
531   <date>2005-03-28</date>
532   <license>W3C</license>
533   <notes>
534+ Net_NNTP_Client::connectAuthenticated() removed - it should only exist in the MAINT_1_2 branch for now (was not removed by mistake in the v1.1.0 release).
535   </notes>
536  </release>
537  <release>
538   <version>
539    <release>1.1.0</release>
540    <api>0.6.0</api>
541   </version>
542   <stability>
543    <release>beta</release>
544    <api>beta</api>
545   </stability>
546   <date>2005-01-14</date>
547   <license>W3C</license>
548   <notes>
549+ This release is NOT fully backward compatible with v0.11.3, since experimental features (Net_NNTP_Message and Net_NNTP_Header and related methods Net_NNTP_Client::getArticle() and Net_NNTP_Client::getHeader()) have been removed (users of those features should consider v1.2.x in stead).
550   </notes>
551  </release>
552  <release>
553   <version>
554    <release>1.0.1</release>
555    <api>0.5.0</api>
556   </version>
557   <stability>
558    <release>stable</release>
559    <api>beta</api>
560   </stability>
561   <date>2005-03-28</date>
562   <license uri="http://www.example.com">W3C</license>
563   <notes>
564+ Fixes lack of $fp property in historical Net_NNTP class (only relevant for backward compatibility with v0.2.5).
565+ Fixes typo in examples.
566   </notes>
567  </release>
568  <release>
569   <version>
570    <release>1.0.0</release>
571    <api>0.5.0</api>
572   </version>
573   <stability>
574    <release>stable</release>
575    <api>beta</api>
576   </stability>
577   <date>2005-01-18</date>
578   <license>W3C</license>
579   <notes>
580+ This release is NOT backward compatible with v0.11.3, since all non-stable features (classes, methods etc.) have been removed!!!
581+ Users of releases between 0.3.x and 0.11.x should consider v1.1.x or v1.2.x in stead. (This release is meant only as a final replacement for v0.2.5 - and of cause as a way to finally get rid of the former protocol implementation).
582+ Backward compatible with v0.2.5 (this is ONLY guarantied in v1.0.x releases, and may be removed in the future).
583   </notes>
584  </release>
585  <release>
586   <version>
587    <release>1.0.0RC1</release>
588    <api>0.5.0</api>
589   </version>
590   <stability>
591    <release>beta</release>
592    <api>beta</api>
593   </stability>
594   <date>2005-01-14</date>
595   <license>W3C</license>
596   <notes>
597+ This release is NOT backward compatible with v0.11.3, since all non-stable features (classes, methods etc.) have been removed!!!
598+ Users of releases between 0.3.x and 0.11.x should consider v1.1.x or v1.2.x in stead. (This release is meant only as a final replacement for v0.2.5 - and of cause as a way to finally get rid of the former protocol implementation).
599+ Backward compatible with v0.2.5 (this is ONLY guarantied in v1.0.x releases, and may be removed in the future).
600   </notes>
601  </release>
602  <release>
603   <version>
604    <release>0.11.3</release>
605    <api>0.4.3</api>
606   </version>
607   <stability>
608    <release>beta</release>
609    <api>beta</api>
610   </stability>
611   <date>2004-09-06</date>
612   <license>W3C</license>
613   <notes>
614+ Going beta (features not documented in the manual should still be considered experiemental).
615+ Added the &apos;distributions&apos; parameter to getNewGroups() and cmdNewGroups().
616   </notes>
617  </release>
618  <release>
619   <version>
620    <release>0.11.2</release>
621    <api>0.4.2</api>
622   </version>
623   <stability>
624    <release>alpha</release>
625    <api>alpha</api>
626   </stability>
627   <date>2004-08-22</date>
628   <license>W3C</license>
629   <notes>
630+ Update PhpDoc blocks.
631+ Changed xmdXOver(),cmdXROver(),getOverview() and getReferencesOverview() into using only parameter: $range.
632+ Fixes whitespace in Net_NNTP_Client, Net_NNTP_Protocol_Client and Net_NNTP.
633   </notes>
634  </release>
635  <release>
636   <version>
637    <release>0.11.1</release>
638    <api>0.4.1</api>
639   </version>
640   <stability>
641    <release>devel</release>
642    <api>alpha</api>
643   </stability>
644   <date>2004-07-30</date>
645   <license>W3C</license>
646   <notes>
647+ Fixes bug in (deprecated) Net_NNTP::command().
648+ Rename a few constants due to renamed classes (BC preserved).
649+ Update class phpdoc blocks.
650   </notes>
651  </release>
652  <release>
653   <version>
654    <release>0.11.0</release>
655    <api>0.4.0</api>
656   </version>
657   <stability>
658    <release>devel</release>
659    <api>alpha</api>
660   </stability>
661   <date>2004-07-19</date>
662   <license>W3C</license>
663   <notes>
664+ New directory structure (classes/files renamed/moved) to allow future server class (dummy files preserves backward compatibility).
665   </notes>
666  </release>
667  <release>
668   <version>
669    <release>0.10.3</release>
670    <api>0.3.1</api>
671   </version>
672   <stability>
673    <release>alpha</release>
674    <api>alpha</api>
675   </stability>
676   <date>2004-07-14</date>
677   <license>W3C</license>
678   <notes>
679+ Fixes undefined property warning.
680   </notes>
681  </release>
682  <release>
683   <version>
684    <release>0.10.2</release>
685    <api>0.3.1</api>
686   </version>
687   <stability>
688    <release>alpha</release>
689    <api>alpha</api>
690   </stability>
691   <date>2004-07-06</date>
692   <license>W3C</license>
693   <notes>
694+ Fixes bug #1803 (trailing space character sent in cmdListNewsgrups()).
695+ Fixes bug #825 (no more lazy assignement of new values to $this).
696+ Examples moved into docs to comply with the standard PEAR directory structure.
697   </notes>
698  </release>
699  <release>
700   <version>
701    <release>0.10.1</release>
702    <api>0.3.1</api>
703   </version>
704   <stability>
705    <release>alpha</release>
706    <api>alpha</api>
707   </stability>
708   <date>2003-10-24</date>
709   <license>W3C</license>
710   <notes>
711+ Fixes bug #7 (lines longer than 1000 chars no longer stop download).
712   </notes>
713  </release>
714  <release>
715   <version>
716    <release>0.10.0</release>
717    <api>0.3.0</api>
718   </version>
719   <stability>
720    <release>alpha</release>
721    <api>alpha</api>
722   </stability>
723   <date>2003-10-12</date>
724   <license>W3C</license>
725   <notes>
726+ Merges v0.3.3 and v0.9.4 into one package (The &apos;Net_NNTP&apos; class from v0.9.x is now called &apos;Net_NNTP_Realtime&apos;).
727   </notes>
728  </release>
729  <release>
730   <version>
731    <release>0.9.3</release>
732    <api>0.2.2</api>
733   </version>
734   <stability>
735    <release>alpha</release>
736    <api>alpha</api>
737   </stability>
738   <date>2003-09-13</date>
739   <license>W3C</license>
740   <notes>
741+ Fixes Incorrect handling of the XROVER extension corrected in cmdXROver() and removed in getOverview().
742+ Constant names pearified.
743+ Deprecated/historical methods that didn&apos;t follow PEAR&apos;s coding standard have been removed.
744   </notes>
745  </release>
746  <release>
747   <version>
748    <release>0.9.2</release>
749    <api>0.2.1</api>
750   </version>
751   <stability>
752    <release>alpha</release>
753    <api>alpha</api>
754   </stability>
755   <date>2003-08-16</date>
756   <license>W3C</license>
757   <notes>
758+ Fixes syntax typo...
759   </notes>
760  </release>
761  <release>
762   <version>
763    <release>0.9.1</release>
764    <api>0.2.1</api>
765   </version>
766   <stability>
767    <release>alpha</release>
768    <api>alpha</api>
769   </stability>
770   <date>2002-08-15</date>
771   <license>W3C</license>
772   <notes>
773+ Bug fixing and improvements in Net_NNTP_Header and Net_NNTP_Message.
774   </notes>
775  </release>
776  <release>
777   <version>
778    <release>0.9.0</release>
779    <api>0.2.0</api>
780   </version>
781   <stability>
782    <release>alpha</release>
783    <api>alpha</api>
784   </stability>
785   <date>2002-08-09</date>
786   <license>W3C</license>
787   <notes>
788+ Major rewrite, yet still generaly backward compatible - now uses Net_Socket, lets the user choose if the article data are to be returned as strings or arrays or objects, authentication has been separated from the execution of commands, returns pear_error objects of failure, and handles the server&apos;s responses individually.
789   </notes>
790  </release>
791  <release>
792   <version>
793    <release>0.3.3</release>
794    <api>0.1.1</api>
795   </version>
796   <stability>
797    <release>beta</release>
798    <api>beta</api>
799   </stability>
800   <date>2003-10-12</date>
801   <license>W3C</license>
802   <notes>
803+ Fixes bug #85.
804+ PhpDoc updateds.
805   </notes>
806  </release>
807  <release>
808   <version>
809    <release>0.3.2</release>
810    <api>0.1.1</api>
811   </version>
812   <stability>
813    <release>beta</release>
814    <api>beta</api>
815   </stability>
816   <date>2003-09-20</date>
817   <license>W3C</license>
818   <notes>
819+ Incorrect handling of the XROVER extension corrected in cmdXROver() and removed in getOverview().
820   </notes>
821  </release>
822  <release>
823   <version>
824    <release>0.3.1</release>
825    <api>0.1.1</api>
826   </version>
827   <stability>
828    <release>beta</release>
829    <api>beta</api>
830   </stability>
831   <date>2003-08-31</date>
832   <license>W3C</license>
833   <notes>
834+ Uses the new protocol implementation from 0.9.*, but preserves backward compatibility with 0.2, since the experimental header and message classes are not used.
835+ Deprecated/historical methods that didn&apos;t follow PEAR&apos;s coding standard have been removed.
836   </notes>
837  </release>
838  <release>
839   <version>
840    <release>0.2.5</release>
841    <api>0.0.3</api>
842   </version>
843   <stability>
844    <release>stable</release>
845    <api>alpha</api>
846   </stability>
847   <date>2004-07-19</date>
848   <license>PHP 2.0</license>
849   <notes>
850+ post() rewritten to allow posting using authentication (bug #817).
851+ Examples moved into docs to comply with the standard PEAR directory structure.
852   </notes>
853  </release>
854  <release>
855   <version>
856    <release>0.2.4</release>
857    <api>0.0.3</api>
858   </version>
859   <stability>
860    <release>stable</release>
861    <api>alpha</api>
862   </stability>
863   <date>2004-03-10</date>
864   <license>PHP 2.0</license>
865   <notes>
866(Not released)
867   </notes>
868  </release>
869  <release>
870   <version>
871    <release>0.2.3</release>
872    <api>0.0.3</api>
873   </version>
874   <stability>
875    <release>stable</release>
876    <api>alpha</api>
877   </stability>
878   <date>2003-09-20</date>
879   <license>PHP 2.0</license>
880   <notes>
881+ Incorrect handling of the XROVER extension in getOverview() removed.
882   </notes>
883  </release>
884  <release>
885   <version>
886    <release>0.2.2</release>
887    <api>0.0.3</api>
888   </version>
889   <stability>
890    <release>stable</release>
891    <api>alpha</api>
892   </stability>
893   <date>2003-08-31</date>
894   <license>PHP 2.0</license>
895   <notes>
896+ Constant names pearified.
897   </notes>
898  </release>
899  <release>
900   <version>
901    <release>0.2.1</release>
902    <api>0.0.2</api>
903   </version>
904   <stability>
905    <release>stable</release>
906    <api>alpha</api>
907   </stability>
908   <date>2003-08-09</date>
909   <license>PHP 2.0</license>
910   <notes>
911+ Fix binary safety.
912   </notes>
913  </release>
914  <release>
915   <version>
916    <release>0.2</release>
917    <api>0.0.2</api>
918   </version>
919   <stability>
920    <release>stable</release>
921    <api>alpha</api>
922   </stability>
923   <date>2003-07-20</date>
924   <license>PHP 2.0</license>
925   <notes>
926+ Pearified API.
927   </notes>
928  </release>
929  <release>
930   <version>
931    <release>0.1</release>
932    <api>0.0.1</api>
933   </version>
934   <stability>
935    <release>stable</release>
936    <api>alpha</api>
937   </stability>
938   <date>2002-05-22</date>
939   <license>PHP 2.0</license>
940   <notes>
941+ This is the initial independent release of the NNTP package.
942   </notes>
943  </release>
944 </changelog>
945</package>
946