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 7493: BT: open DHT port by UPnP (tathar)
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
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
33 6012: Fix bug in Http_client.wget_string (ygrek)
36 7418: Ignore setsockopt_float exception while sending mail
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
49 7386: Makefile: Do not compile make_torrent when BT support is disabled
50 - fixes compile error during "make utils"
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)
59 7372: GTK2 GUI: Compile with lablgtk-2.14.2 by default
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
66 7365: HTML: improve code for sorting tables (ygrek)
67 7364: KAD: parse new nodes.dat formats (ygrek)
70 7358: Update mlnet_strings.ru_RU.UTF-8 (balamutick)
73 7318: EDK/Emule captcha: Use Base64 functions (ygrek)
74 7357: configure: fix quoting of arguments (ygrek)
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)
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
96 7308: DC: bugfix (generate valid partial list) (ygrek)
99 7144: Update clean targets
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)
109 7302: DC: Fix performance problem with many shared files (ygrek)
110 7299: configure: abort on unknown options
113 7296: Fix compilation problems introduced by patch 7144 (ygrek)
114 - remove linking to camlp4lib
115 - use alternative if camlp4of is not present
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
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
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
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
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
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)
154 7258: russian i18n mlnet_strings (Balamutick/ygrek)
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)
164 7248: DC: correctly parse dchub:// entries in xml hublist (ygrek)
165 7247: BT tracker: remember tracked files after restart (ygrek)
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)
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)
179 7206: MinGW: Fix diskinfo on large partitions
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
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)
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)
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
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)
227 7153: BT: correctly handle failed tracker requests (ygrek)
228 7155: DC: understand hublist.xml (ygrek)
231 7151: BT: html ui tweaks (ygrek)
234 7150: BT: track torrents created with compute_torrent (ygrek)
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)
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
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)
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
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
293 6689: Allow compilation with Ocaml 3.11.0
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
305 6593: CryptoPP performance fix for ARM (Marc Pignat)
306 6592: HTML: Fix invalid html respond when login is invalid
309 6571: Runinfo: Include DirectConnect in list of enabled nets
312 6558: Fix text relocation warnings on hardened distributions (Davide Pesavento)
313 6557: BT: Send correct downloaded value when download is stopped to tracker
315 -------------------------------------------------------------------------------
316 2008/05/02: version 2.9.5 = tag release-2-9-5
317 6503: Remove release status when download is finished
320 6465: BT: Send correct downloaded value when download starts to tracker
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
329 6470: BT: Use default of max_upload_slots as minimum for BT-max_bt_uploaders
330 instead of hard-coded value
333 6466: Fix option_hook loop when changing max_upload_slots < 3,
334 caused by patch #6451
337 6462: Multiuser: Restrict chown to admin users only
340 6458: Fix commit bug when filesystem reports negative values
341 for maximum filename length
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
352 6439: Configure: Make Ocaml 3.10.2 the default compiler
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
361 6404: New option release_new_downloads
362 - set to true to activate release slot feature for all newly started downloads
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
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)
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
384 6373: Swarmer: Ignore received data when file is queued
387 6367: FileTP: Fix bug when starting downloads > 4GB via dllink
390 6364: MinGW: Fix broken share priorities (thx to vbnuy6)
391 6365: HTML: Use option max_name_len in upstats for unhashed files
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
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
405 6351: Allow compilation with upcoming Ocaml 3.10.1
408 6342: HTML: fix broken vm output in Opera (schlumpf)
409 6346: Environment variables for file_started_cmd (see option help text)
412 6343: gcc-4.3 compile fix for CryptoPP (brian m. carlson)
415 6337: Fix inequality test for option html_mods_theme (pango)
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
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...
433 6231: Swarming: Propagate chunks of finished file before commit (pango)
434 to other downloading files
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
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
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
453 6187: BT: Fix wrong file order of multifile torrents due to patch #6174
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
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)
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.
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
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
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
508 6068: BT: Fix download start when torrents/downloads filesystem
509 allows more than 16M chars
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
520 6049: BT: Support user_commit_dir when seeding,
521 reshare every share_scan_interval minutes
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
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
546 6024: Multiuser: New parameters for command useradd:
547 user_mail + user_max_concurrent_downloads
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