Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 441 lines (355 sloc) 17.166 kb
1464cae8 »
2010-11-05 Another one of those megacommits I promised I'd never make again.
1 Version 0.XXXXX | In the not too distant future | d4ea4e9
438379ad »
2010-06-24 Adding old changelog to repo
2
3 API Changes/Compatibility Information:
5801a810 »
2010-06-28 Adding warning about the instability-- hrm, no, the sketchy nature of…
4 * Rewrite!
438379ad »
2010-06-24 Adding old changelog to repo
5
6 Resolved Issues/Bug Fixes:
5801a810 »
2010-06-28 Adding warning about the instability-- hrm, no, the sketchy nature of…
7 * Rewrite!
438379ad »
2010-06-24 Adding old changelog to repo
8
9 Protocol/Behavioral Changes:
5801a810 »
2010-06-28 Adding warning about the instability-- hrm, no, the sketchy nature of…
10 * Rewrite!
438379ad »
2010-06-24 Adding old changelog to repo
11
12 Documentation/Sample Code/Test Suite:
658bc572 »
2010-06-29 Adding README
13 * Guess.
438379ad »
2010-06-24 Adding old changelog to repo
14
15 Notes:
16 * Meanwhile...
5801a810 »
2010-06-28 Adding warning about the instability-- hrm, no, the sketchy nature of…
17 - This distribution is going through a rewrite. You know, ...fyi.
3ff00777 »
2010-09-17 Updating reason for dist and dist version for PAUSE
18 - This particular dist is being uploaded to test the Peer code and
19 metadata generator.
20 - See http://github.com/sanko/net-bittorrent/
438379ad »
2010-06-24 Adding old changelog to repo
21
5801a810 »
2010-06-28 Adding warning about the instability-- hrm, no, the sketchy nature of…
22 ---
502a6e89 »
2010-07-06 Correcting previous stable release date in changelog
23 Version 0.052 | 2010-04-02 18:31:29Z (Fri, 02 Apr 2010) | 07f0c35
438379ad »
2010-06-24 Adding old changelog to repo
24
25 Documentation/Sample Code/Test Suite:
26 * miniswarm tests are given less time before giving up
27 * 'bad' test (checking if port was opened twice... which seems to be okay
28 on some systems) has been removed
29 * Removing t/900_data/950_torrents/951_single.torrent which was used to
30 test large file support (caused "Out of memory!" errors on smokers
31 with limited resources)
32
33 Notes:
34 * This will probably be the last 'stable' version before Net::BitTorrent
35 is rewritten. Stuff in TODO.pod will be expanded and used as a roadmap
36
5801a810 »
2010-06-28 Adding warning about the instability-- hrm, no, the sketchy nature of…
37 ---
438379ad »
2010-06-24 Adding old changelog to repo
38 Version 0.051 | 2009-09-12 04:52:06Z (Sat, 12 Sep 2009) | 694da26
39
40 API Changes/Compatibility Information:
41 * N/A
42
43 Resolved Issues/Bug Fixes:
44 * DHT nodes found in metadata are now handled according to spec
45 - Bug reported by Wouter Godefroy via email
46
47 Protocol/Behavioral Changes:
48 * N/A
49
50 Documentation/Sample Code/Test Suite:
51 * New script /scripts/net-bittorrent.pl is installed with distribution. It
52 is a very short version of /tatoeba/005-console.pl
53
54 Notes:
55 * Meanwhile...
56 - New IRC-based support: irc://irc.p2p-network.com/net-bittorrent
57 - Bug tracker is now at http://github.com/sanko/net-bittorrent/issues
58
59 ---
60 Version 0.050 | 2009-02-13 20:55:16Z (Fri, 13 Feb 2009) | d8d71ee
61
62 API Changes/Compatibility Information:
63 * N::B::Peer objects have their sockets closed and removed *before*
64 calling any peer_disconnect callbacks.
65 * Reasons handed to peer_disconnect callbacks are now language agnostic.
66 Please see Notes section in Net::BitTorrent::Peer for more information.
67
68 Resolved Issues/Bug Fixes:
69 * Fixed major bug related to outgoing HAVE packets.
70
71 Protocol/Behavioral Changes:
72 * Message Stream Encryption (enabled by default) with plaintext fallback
73 * Shorter waiting period before filling requests (15s -> 3s)
74 * Default for number of allowed connections per host has changed (2 -> 1)
75
76 Documentation/Sample Code/Test Suite:
77 * Genereal documentation cleanup
78 * Fix t/[...]/Protocol.t failures due to the limits of 32-bit math
79 * (Start of a) Rewrite of t/[...]Peer.t to be more complete and emulate
80 real-world sessions.
81 * New demonstration script: /tatoeba/005-console.pl
82 - Formerly known as /scripts/bittorrent.pl
83
84 Notes:
85 * With the addition of Protocol Encryption and the bugfix, I strongly
86 suggest an upgrade for all users despite the API tweeks.
87 * Meanwhile...
88 - Development moved to github: http://github.com/sanko/net-bittorrent
89
90 ---
91 Version 0.049 | 2009-01-05 17:38:02 -0500 (Mon, 05 Jan 2009)
92
93 API Changes/Compatibility Information:
94 * Net::BitTorrent::Torrent->peers() is now public
95 * Lists of potential peers are kept by their source (N::B::DHT,
96 N::B::T::Tracker::HTTP, N::B::T::Tracker::UDP) rather than in
97 Net::BitTorrent::Torrent.
98 * Resume system (yeah, the thing I added two versions ago) was deprecated
99 and has been replaced. I thought about it and changing the original
100 .torrent's metadata is a bad idea so I switched from Rakshasa- to
101 Rasterbar-like.
102
103 Resolved Issues/Bug Fixes:
104 * None
105
106 Protocol/Behavioral Changes:
107 * N::B::T::Tracker::HTTP retry is now 30s on socket error (formerly 5m).
108 * N::B::Peer objects are disconnected if they don't complete handshake
109 within 30s.
110
111 Documentation/Sample Code/Test Suite:
112 * New debugging demonstration in /tatoeba/002-debug.pl
113 * New threaded demonstration in /tatoeba/003-threads.pl
114 * New resume demonstration in /tatoeba/004-resume.pl
115 * Various tests temporarily tie STDERR to check as_string() output
116
117 Notes:
118 * There are several incompatible changes and I've been coding with the
119 flu this week. Upgrade at your own risk.
120 * THIS PROJECT IS ACTIVELY SEEKING DEVELOPERS. Ahem, I hate to shout but
121 N::B could really use your help. Yes, you, the person reading this. If
122 you're interested, see the "Joining the Project" section in
123 Net::BitTorrent::Notes.
124 * Various N::B::Torrent status and internal schedule fixes were made none
125 of which really effect behavior.
126 * Meanwhile...
127 - 2008 ends as it began: uneventfully.
128 - RIAA drops MediaSentry.
129
130 ---
131 Version 0.046 | 2008-12-30 18:25:17 -0500 (Tue, 30 Dec 2008)
132
133 API Changes/Compatibility Information:
134 - Net::BitTorrent::Torrent::HTTP->url() is now public
135 - Net::BitTorrent::Torrent::UDP->url() is now public
136
137 Resolved Issues/Bug fixes:
138 - In 0.045, if no arguments were passed, Net::BitTorrent->new() failed to
139 set set defaults, generate a peerid, or create a DHT object.
140
141 Protocol/Behavioral Changes:
142 - None
143
144 Documentation/Sample Code/Test Suite:
145 - The first two in a series of demonstration scripts are in the /tatoeba/ directory
146 - Minor tweaking and clean up in Net::BitTorrent::Notes
147
148 Notes:
149 - This is a major bug fix release with which introduces no incompatibilities.
150 Upgrade is highly recommended.
151
152 ---
153 Version 0.045 | 2008-12-26 17:17:16 -0500 (Fri, 26 Dec 2008)
154
155 API Changes/Compatibility Information:
156 - [Beta] Torrent resume system (see Net::BitTorrent::Notes).
157 - Net::BitTorrent::Torrent->hashcheck() clears the bitfield when it begins.
158
159 Resolved Issues/Bug Fixes:
160 - Close related sockets on N::B::DESTROY (left behind FIN_WAIT1 on Win32).
161
162 Protocol/Behavioral Changes:
163 - DHT actually works. For real this time.
164
165 Documentation/Sample Code/Test Suite:
166 - scripts/bittorrent.pl supports resume (overwrites .torrent file).
167
168 Notes:
169 - No non-compatible API changes so upgrade is suggested.
170 - The announce and discussion lists have been combined into a single list found at http://groups.google.com/group/net-bittorrent.
171 - All code is now covered by the Artistic 2 License (actually since v0.040
172 but I failed to mention it in the changelog).
173 - Meanwhile,...
174 + the RIAA stops suing people and will, instead, cancel your 'net service (http://tinyurl.com/4h9omj) and bed your crush.
175 + Australia plans to filter BitTorrent. (http://tinyurl.com/95uvg5) ...eventually (http://tinyurl.com/a4juwy).
176
177 ---
178 Version 0.042 | 2008-12-04 23:54:43 -0500 (Thu, 04 Dec 2008)
179
180 API Changes/Compatibility Information:
181 - as_string() is now a public method in all classes
182
183 Issues Resolved:
184 - Fixed crash bug (call to legacy method) on failure to write data to disk
185
186 Protocol/Behavioral Changes:
187 - None
188
189 Documentation/Sample Code/Test Suite:
190 - as_string() is documented all around
191 - Affected tests updated to reflect as_string() change
192 - Synopsis in README now matches that of N::B proper
193 - More silly POD changes for scripts/bittorrent.pl ((sigh))
194
195 Notes:
196 - PAUSE vs. The World (Writable Files)
197
198 ---
199 Version 0.040 | 2008-12-01 23:25:26 -0500 (Mon, 01 Dec 2008)
200
201 API changes:
202 - See the Notes section
203 - Torrents can now be paused, stopped, and started (alpha code)
204 - Torrent objects can now be created without a parent client for
205 informational use (See perldoc Net::BitTorrent::Torrent)
206
207 Compatibility Information:
208 - See the Notes section
209 - Net::BitTorrent::Session::* is now Net::BitTorrent::Torrent::* thanks to
210 one very squeaky wheel.
211 - PeerID spec has changed (stability marker is now 'U'nstable/'S'table
212 instead of the less obvious and misleading 'S'VN/'C'PAN)
213 - Torrents aren't automatically checked when loaded.
214
215 Internal changes:
216 - See the Notes section
217 - UDP trackers are now supported
218 - DHT actually works
219 - Fast Ext. is back
220 - PeerID, DHT node ID, ExtProtocol name, and dist version are all generated
221 in Net::BitTorrent::Version
222
223 Issues resolved:
224 - No longer floods the system with CLOSE_WAIT sockets which eventually block
225 the allocation of new sockets
226
227 Notes:
228 - Since the previous stable release, Net::BitTorrent has been rewritten from
229 scratch, so yeah, 90% of everything internal has changed, the API was
230 redesigned as well. I've been pushing dev builds for more than three
231 months so... yeah.
232
233 ---
234 Version 0.027_001 | Fall 2008
235
236 Internal changes:
237 - Net::BitTorrent is going through a rewrite. Idle hands...
238
239 Notes:
240 - Don't use this. I'm serious. I'm only uploading it to get some CPAN
241 testers data.
242
243 ---
244 Version 0.025 | 2008-07-01 23:07:52 -0400 (Tue, 01 Jul 2008)
245
246 Internal changes:
247 - Fix crash bug by re-enabling N::B::S::Peer::_parse_packet_allowed_fast and
248 N::B::S::Peer::_parse_packet_reject in the packet dispatch table
249 - Fixed crash bug in Data::Dumper usage in N::B::S::Peer and N::B::DHT
250 - Fixed non-critical bug in N::B::S::Peer when a connected peer goes
251 ((poof)) in the middle of something.
252
253 Notes:
254 - Please see the Compatibility Information section from the previous version
255 - Gah, what a waste of a great version number (0.025)... That's what I get
256 for not eating my own dog food before shipping it.
257 - I knew I was forgetting something.
258
259 ---
260 Version 0.024 | 2008-07-01 19:52:15 -0400 (Tue, 01 Jul 2008)
261
262 API changes:
263 - Entire API has changed. See the Compatibility Information below.
264 - New DHT-related callback: peer_outgoing_port
265
266 Internal changes:
267 - DHT is included with this release. It's really raw code so don't expect
268 too much.
269
270 Compatibility Information:
271 - I've changed the API to pretty much everything in the distribution with a
272 depreciation cycle. Bold, yes? So, with so much having changed, putting
273 a full list of what's changed will be a horrific waste of space. These
274 are the highlights:
275 Old Mutator/Accessor New Getter New Setter
276 --------------------------------------------------------------------------
277 N::B
278 maximum_buffer_size get_max_buffer_per_conn set_max_buffer_per_conn
279 kbps_down get_max_dl_rate set_max_dl_rate
280 kbps_up get_max_ul_rate set_max_ul_rate
281 maximum_peers_per_client get_conns_per_client set_conns_per_client
282 maximum_peers_per_session get_conns_per_session set_conns_per_session
283 maximum_peers_half_open get_max_halfopen set_max_halfopen
284 debug_level get_debug_level set_debug_level
285 maximum_requests_per_peer get_ul_slots_per_session set_ul_slots_per_session
286 maximum_requests_size get_ul_slot_size get_ul_slot_size
287 peer_id get_peer_id --NA--
288 sockport get_sockport --NA--
289 sockaddr get_sockaddr --NA--
290 sessions get_sessions --NA--
291 N::B::S::Piece
292 check get_cached_integrity
293 verify get_verified_integrity
294 - The arguments Net::BitTorrent's constructor expects have been changed to
295 stay in step with the new get/set methods:
296 Old New
297 ------------------------------------------------------------------------
298 maximum_peers_per_client conns_per_client
299 maximum_peers_per_session conns_per_session
300 kbps_down max_dl_rate
301 kbps_up max_ul_rate
302 maximum_peers_half_open max_halfopen
303 maximum_buffer_size max_buffer_per_conn
304 maximum_requests_size ul_slot_size
305 maximum_requests_per_peer ul_slots_per_session
306 - Removed accessors:
307 - N::B->timeout( [NEWVAL] )
308 This was the select timeout used in N::B::do_one_loop(). It has
309 been removed completely in favor of a new optional parameter passed
310 to N::B::do_one_loop( [TIMEOUT] ) itself.
311 Notes:
312 - I'm sure I'm forgetting something... several somethings, in fact...
313 - This is an UNSTABLE stable release. There may be calls to old methods
314 hiding out in a dark corner...
315 data on the extended test suite, the rewritten API, and the alpha DHT
316 code. DO NOT INSTALL! Stick with the 0.022 release! As soon as I have a
317 few reports, I will mark this distribution for deletion from PAUSE.
318
319 Version 0.022 | 2008-05-24 10:31:26 -0400 (Sat, 24 May 2008)
320
321 API changes:
322 - Callback system is complete.
323 + N::B::S::Tracker was the holdup...
324
325 Issues resolved:
326 - None
327
328 Internal changes:
329 - None
330
331 Notes:
332 - Upgrade is not required in general but recommended for heavy callback users.
333 - More POD tweaks.
334 - Very few changes to scripts/web-gui.pl. These are untested changes, btw.
335
336 ---
337 Version 0.020 | 2008-05-22 19:09:05 -0400 (Thu, 22 May 2008)
338
339 API changes:
340 - Experimental N::B::use_unicode() has been removed as wide char filenames
341 are now handled transparently on Win32.
342 - New accessor: N::B::Session::name() - see N::B::Session docs
343 - New methods for alternative event processing:
344 + N::B::process_connections() - implement your own select() statement
345 + N::B::process_timers() - easily keep internal timers up to date
346 - Experimental kbps_up and kbps_down methods and N::B::new() parameters have
347 been renamed properly: kBps_up, kBps_down. Bits. Bytes. It happens.
348
349 Issues resolved:
350 - #1: Line 231 Piece.pm - Check existence of $self->session->files->[$f]->size
351 + New .torrent metadata integrity checks during add_session() and piece
352 read/write.
353 + Log warning and undef returned when N::B::add_session() is handed a
354 .torrent that does not contain files. (eh, it's a start)
355
356 Internal changes:
357 - Plenty of layout and ideology changes. None of which immediately affect
358 usability or behavior.
359 - Extended charset filenames are now handled properly on Win32.
360 + Depends on properly encoded utf8 metadata (and the J-Pop fans rejoice)
361 - (The piece containing) Outgoing blocks are verified for integrity before
362 being sent to remote peers. Just in case.
363
364 Notes:
365 - Upgrade is recommended in general.
366 - Upgrade is strongly recommended for Win32 systems.
367 - New sample code: scripts/web-gui.pl
368 + µTorrent WebUI-like demo of alternative event processing.
369 - To keep N::B from growing too messy and to make co-development attractive,
370 I'm imposing some coding standards, defining what should be internal,
371 and deciding how N::B should behave. Between that and the nice weather,
372 the addition of new features (DHT, UDP trackers, etc.) will be pushed
373 back a bit. The next few releases will probably be bugfix, API, and
374 base protocol-behavioral changes.
375 - Documentation rework in progress.
376 - What's the cutoff for apologizing for things you said in high school?
377
378 ---
379 Version 0.018 | 2008-04-24 21:14:52 -0400 (Thu, 24 Apr 2008)
380
381 API changes:
382 - Old style set_callback_* syntax is depreciated.
383 - New methods: kbps_up, kbps_down
384 - New optional parameters for N::B::new(): kbps_up, kbps_down
385
386 Internal changes:
387 - Fixed crash bug in N::B::S::Peer during endgame
388
389 Notes:
390 - Upgrade is strongly recommended.
391 - New feature: Transfer limits to control how much bandwidth N::B is
392 allowed to use.
393 - No longer causes taint warnings.
394 - perl 5.8.1 required. This is based solely on available CPAN
395 Reporter PASS/FAIL tests and may not be a true representative
396 value.
397
398 ---
399 Version 0.015 | 2008-04-11 20:00:26 -0400 (Fri, 11 Apr 2008)
400
401 Notes:
402 - Dup of 0.013 to fix bad M::B dist. Something fishy going on with
403 the gzip'd file. Some systems (like PAUSE) properly extract
404 directories and some (like the cpan shell) extract it all into the
405 base directory causing build failures.
406
407 ---
408 Version 0.013 | 2008-04-11 13:30:36 -0400 (Fri, 11 Apr 2008)
409
410 API changes:
411 - log callbacks now include a message level. See
412 N::B::Util/"LOG LEVELS".
413 - removed peer_outgoing_packet callback in favor of more specific,
414 per-packet-type callbacks.
415
416 Internal changes:
417 - Fixed a bug causing files to be re-opened every time they are read.
418 - Tons of N::B::S::Peer refactoring. (and much more to do)
419 - Early Fast Peers and Ext. Protocol testing. (disabled by default)
420
421 Notes:
422 - Upgrade is recommended.
423 - This is a documentation update. 100% coverage.
424
425 ---
426 Version 0.008 | 2008-04-01 19:46:20 -0400 (Tue, 01 Apr 2008)
427
428 API changes:
429 - It actually exists
430
431 Internal changes:
432 - See above
433
434 _ -.-. .... .- -. --. . ... _________________________________________
435 For more information, see the commit log:
1464cae8 »
2010-11-05 Another one of those megacommits I promised I'd never make again.
436 http://github.com/sanko/net-bittorrent/commits/
438379ad »
2010-06-24 Adding old changelog to repo
437
438 $Ver$ from git $Rev$
439 $Date$
440 $Url$
Something went wrong with that request. Please try again.