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