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