patch #7493
[mldonkey.git] / distrib / ChangeLog
blobadbe19f189bf69209ea5e5e3270c8a8efeced6d1
1 The release mechanism was changed in a way that minor updates
2 will not get a release tag in CVS, also the version number reported
3 by MLDonkey will stay the same.
5 Patches done after the last release are experimental,
6 please test carefully and report your results.
8 All numbers mentioned here can be found as patches on
9 http://savannah.nongnu.org/patch/?group=mldonkey
11 To compile MLDonkey on MinGW follow this guide:
12 http://mldonkey.sourceforge.net/Windows#MinGW_Installation
14 ChangeLog
15 =========
17 2011/03/10
18 7493: BT: open DHT port by UPnP (tathar)
20 2011/01/31
21 7448: BT: support for partial download (jave, pango & ygrek)
22 - partial files are not committed, location in temp dir is shown so that users
23   can easily locate downloaded subfiles
25 2011/01/23
26 7442: BT: DHT support (ygrek)
27 - new options BT-dht_port, BT-use_trackers, BT-dht_bootstrap_nodes
28 - new verbosity level "dht"
29 -------------------------------------------------------------------------------
30 2011/01/22: version 3.0.7 = tag release-3-0-7
32 2011/01/06
33 6012: Fix bug in Http_client.wget_string (ygrek)
35 2010/12/22
36 7418: Ignore setsockopt_float exception while sending mail
38 2010/12/19
39 7303: UPNP: added BT_tracker-port
40 7418: SMTP auth implementation (ygrek)
41 - new options smtp_login and smtp_password
42 - added socket timeout for mail server communication, fix bug #22713
43 7412: tar.gzip: fix harmless error message (ygrek)
44 7388: DC: fix sharing on Windows (ygrek)
45 -------------------------------------------------------------------------------
46 2010/11/15: version 3.0.6 = tag release-3-0-6
48 2010/11/13
49 7386: Makefile: Do not compile make_torrent when BT support is disabled
50 - fixes compile error during "make utils"
52 2010/11/07
53 7355: HTML: Fix URL enconding of commands (ygrek)
54 7375: FileTP: fix submitting ftp download links (ygrek)
55 7374: BT: calculate compatible hash for wrong torrents (ygrek)
56 6012: http_client: Support gzip accept-encoding + content-encoding (ygrek)
58 2010/11/03
59 7372: GTK2 GUI: Compile with lablgtk-2.14.2 by default
61 2010/11/01
62 7303: UPNP support (zzpptt)
63 - to compile using pre-installed libs: configure --enable-upnp-natpmp
64 - to compile UPNP libs during MLDonkey compile use --enable-force-upnp-natpmp
65 - ToDo: MinGW support
66 7365: HTML: improve code for sorting tables (ygrek)
67 7364: KAD: parse new nodes.dat formats (ygrek)
69 2010/10/28
70 7358: Update mlnet_strings.ru_RU.UTF-8 (balamutick)
72 2010/10/24
73 7318: EDK/Emule captcha: Use Base64 functions (ygrek)
74 7357: configure: fix quoting of arguments (ygrek)
76 2010/10/23
77 7318: EDK: Emule captcha support and slight cleanup (dennisne)
78 - added support for Emule's anti-spam chat CAPTCHAs
79 - added clear_message_log command to clear (long) message logs 
80 - HTML: reversed order of chat messages
81 7319: EDK: Fix CryptoPP on mips64 abi n32 (viric)
82 7356: options: ensure that tmp file is removed (ygrek)
83 7354: DC: cleanup temporary files (ygrek)
84 7353: DC: silence "ADC not supported" message (ygrek)
85 7352: net: do not log ordinary network errors (ygrek)
86 7351: DC: fix download of large files (integer overflow) (ygrek)
87 7350: cleanup accesstest temp files (ygrek)
89 2010/10/19
90 7349: Fix release.* make targets on GNU/kFreeBSD
91 7348: Update GNU config.guess and config.sub to version 2010/09
92 -------------------------------------------------------------------------------
93 2010/09/26: version 3.0.5 = tag release-3-0-5
95 2010/09/22
96 7308: DC: bugfix (generate valid partial list) (ygrek)
98 2010/09/16
99 7144: Update clean targets
101 2010/09/08
102 7305: Xml-light: fix attributes parsing (ygrek)
103 7310: EDK: improve comment port option (ygrek)
104 7308: DC: handle ADCGET list (ygrek)
105 7307: New make target "tests" for unit tests (ygrek)
106 7306: DC: show client brand, session transfer and duration (ygrek)
108 2010/09/07
109 7302: DC: Fix performance problem with many shared files (ygrek)
110 7299: configure: abort on unknown options
112 2010/09/01
113 7296: Fix compilation problems introduced by patch 7144 (ygrek)
114 - remove linking to camlp4lib
115 - use alternative if camlp4of is not present
117 2010/08/29
118 7144: BT: Support for UDP trackers (ygrek)
119 7288: HTML: Prepare localization (balamutick)
120 7287: Fix GTK1 oldgui compile with Ocaml 3.1* (ygrek)
121 7289: Raise minimum required Ocaml version to 3.10.1
123 2010/08/16
124 7267: Fix compilation error in GTK2 GUI
125 7282: Fix configure warning
126 -------------------------------------------------------------------------------
127 2010/08/15: version 3.0.4 = tag release-3-0-4
128 7280: BT: fix make_torrent creates sometimes torrents without name argument
129       (ygrek)
130 7278: configure: more useful --enable-debug (ygrek)
131 - enable also for ocamlopt
132 - enable when profiling 
133 7274: DC: Increase message buffer size to fix communication with bots
134       (somedamnthing)
136 2010/08/08
137 7267: http proxy authentication support (ygrek)
138 - new options http_proxy_login and http_proxy_password control authentication
139   for TCP CONNECT and plain HTTP requests through http proxy
141 2010/08/07
142 7273: Fix compile errors on Debian/kFreeBSD
143 7272: Configure: Use Ocaml 3.12.0 as default compiler
144 7269: Fix typos (glondu)
145 -------------------------------------------------------------------------------
146 2010/08/01: version 3.0.3 = tag release-3-0-3
148 2010/07/28
149 7262: BT: improve porttest (ygrek)
150 7254: BT/bandwidth controllers: accept incoming connections while downloading
151 - should improve upload when downlink is saturated (ygrek)
153 2010/07/24
154 7258: russian i18n mlnet_strings (Balamutick/ygrek)
156 2010/07/18
157 7253: Fix downloading Ocaml 3.12 archive, use lablgtk-2.12.0 for Ocaml < 3.10
158 7252: GTK2 GUI: Fix compile bug with lablgtk2-20100620 and Ocaml 3.12
159 7251: BT: OCaml 3.08.3 compatibility fix (ygrek)
160 7250: DC: discover self IP (ygrek)
161 7249: DC: fix parsing MyINFO with non-latin nicks (ygrek)
163 2010/07/17
164 7248: DC: correctly parse dchub:// entries in xml hublist (ygrek)
165 7247: BT tracker: remember tracked files after restart (ygrek)
167 2010/07/16
168 7245: HTML: Fix unstable option sections links position (ygrek)
169 7210: upload scheduler: correctly handle clock jumps (ygrek)
170 7219: fsync rename options files (ygrek)
172 2010/07/15
173 7208: New aliases (ygrek)
174 - "unpause", "continue" for command "resume"
175 - "man" for command "help"
176 7233: BT: Announce shared files when share_scan_interval = 0 (ygrek)
178 2010/05/26
179 7206: MinGW: Fix diskinfo on large partitions
181 2010/05/24
182 7201: DC: Whitespace fixes (ygrek)
183 7202: BT: Improve internal tracker (ygrek)
184 - continue tracking files even if there are no requests
185 - better logging and error reporting
186 - remove peer from peers list when it sends 'stopped' event
187 7203: Fix linking with binutils-gold
189 2010/05/23
190 7183: DC: magnet links and html ui usability tweaks (ygrek)
191 7180: DC: better encoding handling (ygrek)
192 - new option default_encoding for communications with hubs, default CP1252
193 7181: HTML: Fix sorting of friends' file list (ygrek)
194 7200: Allow compilation with upcoming Ocaml 3.12
195 -------------------------------------------------------------------------------
196 2010/04/25: version 3.0.2 = tag release-3-0-2
197 7175: DC: PtokaX compatibility (ygrek)
198 7169: Equal scales for graphical up/down stats (ygrek)
199 7167: Improve add_mail_brackets option description,
200       change default according to RFC (ygrek)
202 2010/04/11
203 7164: BT: more user-friendly tracker (ygrek)
204 - `compute_torrent` shows full path and url to generated torrent file
205 - `torrents` output htmlized
206 - corrected server header
207 - improved comments for tracker options
208 - search torrents in old directory too
209 7163: Fix not sending UDP packets when max_hard_upload_rate = 0 (ygrek)
211 2010/04/10
212 7162: filter longhelp output (ygrek)
213 - longhelp (or ??) with parameters will output only those commands that
214   contain all of the specified parameters as substring
216 2010/04/08
217 7161: bw_toggle: Add options "high" and "low"
218 - bw_toggle without options works as before
219 - if "high" is added, the *_2 option set is used if max_opened_connections_2
220   is higher than max_opened_connections, otherwise the option values are kept
221 - if "low" is added, the *_2 option set is used if max_opened_connections_2
222   is lower than max_opened_connections, otherwise the option values are kept
223 6959: DC: Fix invalid XML (ygrek)
224 - enhanced patch (use Xml.escape and properly escape attributes in Xml.to_string)
226 2010/04/04
227 7153: BT: correctly handle failed tracker requests (ygrek)
228 7155: DC: understand hublist.xml (ygrek)
230 2010/04/02
231 7151: BT: html ui tweaks (ygrek)
233 2010/04/01
234 7150: BT: track torrents created with compute_torrent (ygrek)
236 2010/03/27
237 7142: BT: max_uploaders_per_torrent option not restored from .ini files (xboct)
238 7140: MinGW: Fix linking with Ocaml 3.11.2
239 7139: BT: Some improvements and fixes (ygrek)
240 - Don't request sources from tracker (set numwant=0) if we don't need them e.g.
241   'stopped' event or when sharing
242 - Prevent client from repeatedly sending 'started' events for shared files
243 - Check that peer addresses, returned from tracker in compact format, are valid
244   and not blocked (same check as for non-compact format)
245 - Show torrent info_hash in html ui
246 7138: BT: Recognize more client brands (ygrek)
247 7137: Fix error in calculating average upload speed for client (ygrek)
248 7136: GTK2 GUI: start downloads from search results items
249       by double-click (soulcatcher)
251 2010/03/20
252 7128: BT: Fix ratio reporting (ygrek)
253 7127: Configure: Use Ocaml 3.11.2 as default compiler
254 7076: Support preallocating files on Unix systems (drwho)
255       Recent Linux kernels support fast preallocation when the filesystem is
256       XFS, EXT4 or BTRFS, this patch adds preallocation support when
257       posix_fallocate() is available
258 6968: GTK2 GUI: Fix switching server preferred status (dcoppa)
259 -------------------------------------------------------------------------------
260 2009/10/23: version 3.0.1 = tag release-3-0-1
261 6961: BT: Fix torrent parsing when announce-list is empty
263 2009/10/22
264 6959: DC: Fix invalid XML (lucasn)
265 6804: EDK: Log incoming chat messages with ip:port info (Dennis Nezic)
266 6772: New option max_result_name_len, shortens strings in
267       HTML/Telnet search results
268 6958: EDK: Fix server connects on Solaris due to missing SO_KEEPALIVE
269 6957: Configure: Make Ocaml 3.11.1 the default compiler
270 6956; BT: Fix download of torrent files with no 'announce' field (Hose Bag)
272 2009/02/28
273 6759: HTML: Properly sort column hits in Options, IP blocking
274 -------------------------------------------------------------------------------
275 2009/02/24: version 3.0.0 = tag release-3-0-0
276 6754: Fix local file access bug in internal http server
277 - this is an urgent security related bug-fix and effects
278   all MLDonkey versions >= 2.8.4
279 6752: Optimized implementation of the ip_set module (cbah)
280 6736: Add/fix some copyright texts
281 -------------------------------------------------------------------------------
282 2009/01/20: version 2.9.7 = tag release-2-9-7
283 6727: Web_infos: Replace old GeoIP URL with new one
284 - old code added the new URL, even if GeoIP was not present in web_infos
286 2009/01/04
287 6714: BT: Fix bug when computing limits for max_bt_uploaders
288 6713: GeoIP: New web_infos URL for country list (thx to Choby)
289 - old URLs are updated to:
290   http://www.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
292 2008/12/13
293 6689: Allow compilation with Ocaml 3.11.0
295 2008/09/01
296 6629: Mail: Move hostname from subject to body (eydaimon)
297 Updated Mozilla protocol handler to version 2.5
298 - original source from http://www.informatik.uni-oldenburg.de/~dyna/mldonkey
299 6628: IP discover: Use http://whatismyip.org, old URL is not working anymore
300 -------------------------------------------------------------------------------
301 2008/08/04: version 2.9.6 = tag release-2-9-6
302 6599: Allow values lower than max_upload_slots for BT-max_bt_uploaders
304 2008/07/29
305 6593: CryptoPP performance fix for ARM (Marc Pignat)
306 6592: HTML: Fix invalid html respond when login is invalid
308 2008/07/17
309 6571: Runinfo: Include DirectConnect in list of enabled nets
311 2008/07/02
312 6558: Fix text relocation warnings on hardened distributions (Davide Pesavento)
313 6557: BT: Send correct downloaded value when download is stopped to tracker
314       (Fox Mulder)
315 -------------------------------------------------------------------------------
316 2008/05/02: version 2.9.5 = tag release-2-9-5
317 6503: Remove release status when download is finished
319 2008/03/31
320 6465: BT: Send correct downloaded value when download starts to tracker
321       (colchaodemola)
322 6477: Use $MLDONKEY_DIR/mlnet_tmp instead of /tmp
323 - This patch fixes problems with hash checking of multifile BT
324   downloads when /tmp is too small.
325 - To override $MLDONKEY_DIR/mlnet_tmp use variable $MLDONKEY_TEMP.
326   This patch has nothing to do with option temp_directory.
327 6472: Multiuser: Count only files in download queue for user/group statistics
328 6471: Clean logfile
329 6470: BT: Use default of max_upload_slots as minimum for BT-max_bt_uploaders
330       instead of hard-coded value
332 2008/03/18
333 6466: Fix option_hook loop when changing max_upload_slots < 3,
334       caused by patch #6451
336 2008/03/14
337 6462: Multiuser: Restrict chown to admin users only
339 2008/03/11
340 6458: Fix commit bug when filesystem reports negative values
341       for maximum filename length
343 2008/03/07
344 6451: BT: Implement minimum of 3 (like max_upload_slots)
345       for option max_bt_uploaders
346 -------------------------------------------------------------------------------
347 2008/03/02: version 2.9.4 = tag release-2-9-4
348 6440: GTK2 GUI: Compile with lablgtk-2.10.1 by default
349 - lablgtk-2.10.0 does not compile with Ocaml 3.10.2
351 2008/02/29
352 6439: Configure: Make Ocaml 3.10.2 the default compiler
354 2008/02/06
355 6407: New options run_as_group/run_as_groupgid
356 - works the same way as options run_as_user/run_as_useruid
357 - display system user:group running MLDonkey core in runinfo
358 6406: Mail: Fix bug in rfc2047 encoding
360 2008/02/05
361 6404: New option release_new_downloads
362 - set to true to activate release slot feature for all newly started downloads
364 2008/02/04
365 6080: HTTP interface: new command/button "logout" (Schlumpf)
366 6077: bw_toggle: support new option "max_opened_connections_2" (Schlumpf)
367 6401: Swarmer: Correctly update file_downloaded during recover_temp (pango)
368 6400: EDK: Correctly update filename after recover_temp
369 6396: Log: Print user:group when starting a download
370 6395: Makefile: Do not strip shared linked binaries on Mac OS X, clean Makefile
372 2008/01/24
373 6381: Multiuser: Block commands "shares" and "share" for non-admin users
374 -------------------------------------------------------------------------------
375 2008/01/16: version 2.9.3 = tag release-2-9-3
376 6379: bwstats: Show downloaded bytes (pango)
378 2008/01/16
379 6377: Configure: Make Ocaml 3.10.1 the default compiler
380 - Ocaml 3.10.1 fixes crashes in MLDonkeys eDonkey module when compiled with
381   Ocaml 3.10.0 on 64bit systems
383 2008/01/15
384 6373: Swarmer: Ignore received data when file is queued
386 2008/01/08
387 6367: FileTP: Fix bug when starting downloads > 4GB via dllink
389 2008/01/07
390 6364: MinGW: Fix broken share priorities (thx to vbnuy6)
391 6365: HTML: Use option max_name_len in upstats for unhashed files
393 2008/01/04
394 6362: Small Geoip updates
395 - new countries + flags: Saint Barthelemy, Saint Martin
396 - updates flags: Georgia, Democratic Republic of the Congo, Western Sahara, Lesotho
398 2008/01/02
399 6361: GUI: Send console messages to admin users after unsharing a file
400 6349: DirectConnect: Correctly report total shared filesize to server (LuCasn)
401 6360: BT: New command print_torrent <file_num>,
402       new link in HTML, upstats to display .torrent details
404 2007/12/19
405 6351: Allow compilation with upcoming Ocaml 3.10.1
407 2007/12/17
408 6342: HTML: fix broken vm output in Opera (schlumpf)
409 6346: Environment variables for file_started_cmd (see option help text)
411 2007/12/13
412 6343: gcc-4.3 compile fix for CryptoPP (brian m. carlson)
414 2007/12/09
415 6337: Fix inequality test for option html_mods_theme (pango)
417 2007/11/03
418 6255: Fix compile warnings for GTK2 GUI and DC++ (pango)
419 -------------------------------------------------------------------------------
420 2007/10/20: version 2.9.2 = tag release-2-9-2
421 6242: Allow deactivation of [telnet|gui|gift]_port by setting it to 0
423 2007/10/17
424 6240: GTK1 oldgui: Hide password in server settings
425 6239: Update GNU config.guess and config.sub to version 2007/07
426 Updated Mozilla protocol handler to version 2.2
427 - original source from http://www.informatik.uni-oldenburg.de/~dyna/mldonkey
428 6238: Fix statvfs code on alpha platform (Alexander Kotelnikov)
429 6237: EDK: Load server.met files from archives even if unpack fails
430 - http://www.gruk.org/server.met.gz is not a gz archive at the moment...
432 2007/10/10
433 6231: Swarming: Propagate chunks of finished file before commit (pango)
434       to other downloading files
436 2007/10/04
437 6223: GTK2 GUI: Compile with lablgtk-2.10.0 by default
438 - this patch changes the lablgtk2 version used by ./configure
439 - self-compiled lablgtk-2.10.0 must be patched with patches/lablgtk-2.10.0.patch
441 2007/09/30
442 6221: Configure: Remove unneeded checks
443 6220: GTK2 GUI: Fix compile bug due to changed API in lablgtk-2.10.0
444 - GTK2 GUI still compiles with older versions of lablgtk2
446 2007/09/13
447 6197: Options backup: Better log messages, remove useless exception
448 -------------------------------------------------------------------------------
449 2007/09/09: version 2.9.1 = tag release-2-9-1
450 6192: EDK: Use discovered client_ip when lowid
452 2007/09/05
453 6187: BT: Fix wrong file order of multifile torrents due to patch #6174
455 2007/09/01
456 6179: BT: Send correct downloaded amount to tracker when download completed
457 6174: BT: Encode non-UTF8 filenames using "encoding" or "codepage" data
458       from .torrent if present
460 2007/08/31
461 6175: Yet another patch for share_scan_interval
462 - new default 30 minutes for newly created ini files
463 - still use 0 to disable
464 - hard-coded global minimum of 5 minutes, this updates old default 1 to 5
465 - automated options update, if update is needed (options_version <= 19) and
466   share_scan_interval = 5 (because of new hard-coded minimum, which is
467   processed earlier) its changed to new default of 30
468 6145: EDK: Update options description of max_connected_servers (Schlumpf)
469 6172: EDK: properly advertise and honour noviewshared tag (TripleM)
471 2007/08/23
472 6160: BT: Another fix for share_scan_interval
473 - Old hard-coded default was 300s, now with share_scan_interval its
474   possible to use a minimum of 60s which produces high CPU load.
475   This patch implements a minimum of 300s for the BT share_files timer.
477 2007/08/04
478 6128: New default for option messages_filter (unease)
479 6132: HTML: Fix group display in vd <num> for admin users
480       view of other users files
481 6130: Change API for network_parse_url, support user group
482 6127: HTML: Display file_chunk_sizes/file_piece_size in vd <num>
483 6135: BT: Fix high CPU load when share_scan_interval = 0
484       due to buggy patch #6049 (thx to darkman)
485 -------------------------------------------------------------------------------
486 2007/07/27: version 2.9.0 = tag release-2-9-0
487 6118: Configure: Update defaults
488 - enable DirectConnect by default 
489 - disable Gnutella & Gnutella2 by default
490   - MLDonkey does not support UDP host cache and contains
491     non-working GWebCache URLs
492   - Gnutella/G2 code has not been updated for several years,
493     its officially unmaintained for now
494   - remove non-existing GWebCache URLs
496 2007/07/25
497 6087: Fix logging of verbosity "bw", remove obsolete options
498 6085: BT: Improve UTF8 support
499 - parse field "encoding"
500 - use field "name.utf8" instead of "name", if available
502 2007/07/10
503 5996: BT: Recognize more client types (orbit)
504 6065: DirectConnect: Support dc++ hublist in web_infos
505 6063: BT: Better detect single-file torrents
507 2007/07/03
508 6068: BT: Fix download start when torrents/downloads filesystem
509       allows more than 16M chars
511 2007/07/01
512 6064: BT: Earlier first scan of torrents/incoming/*
513 6053: HTML: Send correct filename when previewing (chandlerding)
514 6061: Options: New type port_option, values are bound to be >= 0 and <= 65535
515 6060: Do not send mail notifications when smtp_server = ""
516 6059: Multiuser: Avoid double group entries in user_groups
517 6056: Log username, IP:port and old/new value when changing options
519 2007/06/30
520 6049: BT: Support user_commit_dir when seeding,
521       reshare every share_scan_interval minutes
523 2007/06/26
524 Move docs/multiuser.txt to distrib/multiuser.txt
525 6048: Make Ocaml 3.10.0 the default compiler
526 - MLDonkey can still be compiled with Ocaml 3.08.3/4 & 3.09.*
527 - if you need GTK1 oldgui you must use Ocaml < 3.10.0 to compile
529 2007/06/24
530 6044: BT: Limit max_bt_uploaders to max_upload_slots (pango)
531 6043: Discover WAN IP
532 - new command "discover_ip" to force discovery
533 - new option "discover_ip" to enable automatic discovery on startup
534   and after SIGHUP, default true
535 - this patch is important for BT-only usage, without this patch the
536   WAN IP was discovered only by using EDK server replies
537 6034: Load $MLDONKEY/web_infos/* before activating network modules
538 - this fixes a security hole when networks started connecting
539   before IP blocklist was loaded
540 6025: Extend command "links" to optionally display all downloading files
541 - "links" displays all files, not only shared ones like before
542 - "links shared" lists only shared files
543 - "links downloading" lists only downloading files
545 2007/06/18
546 6024: Multiuser: New parameters for command useradd:
547       user_mail + user_max_concurrent_downloads
549 2007/06/17
550 6021: Remove leftovers from optional zlib support,
551       replace Autoconf.zlib__* with Zlib.* functions
552 6005: Swarmer: Implement new download mechanism
553 - its now possible to switch the order blocks are downloaded from random
554   (first and last block first, default) to linear
555 - new command: download_order <file number> <random|linear>
556 6017: Multiuser: New optional parameters group/commit_dir for command useradd
557 6020: Multiuser: Fix handling of user "admin", its user_commit_dir was not
558       used when MLDonkey was not restarted between download start and commit
559 6019: BT: Disable user_commit_dir for multifile torrents to fix seeding
560 6011: BT: Send no_peer_id to trackers to save some bandwidth (berni)
561 6010: Update syslog.ml to version 1.4
562 5995: EDK: Better handle permission denied errors for shared/downloading files
563 5992: BT/IP block: Fix country-based IP blocking
564 -------------------------------------------------------------------------------
565 Split Changelog, all stuff older than 2.9.0 is now in docs/ChangeLog.old:
567 http://savannah.nongnu.org/cgi-bin/viewcvs/mldonkey/mldonkey/docs/ChangeLog.old?rev=HEAD&content-type=text/vnd.viewcvs-markup