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
17 2007/07/27: version 2.9.0 = tag release-2-9-0
18 6118: Configure: Update defaults
19 - enable DirectConnect by default
20 - disable Gnutella & Gnutella2 by default
21 - MLDonkey does not support UDP host cache and contains
22 non-working GWebCache URLs
23 - Gnutella/G2 code has not been updated for several years,
24 its officially unmaintained for now
25 - remove non-existing GWebCache URLs
28 6087: Fix logging of verbosity "bw", remove obsolete options
29 6085: BT: Improve UTF8 support
30 - parse field "encoding"
31 - use field "name.utf8" instead of "name", if available
34 5996: BT: Recognize more client types (orbit)
35 6065: DirectConnect: Support dc++ hublist in web_infos
36 6063: BT: Better detect single-file torrents
39 6068: BT: Fix download start when torrents/downloads filesystem
40 allows more than 16M chars
43 6064: BT: Earlier first scan of torrents/incoming/*
44 6053: HTML: Send correct filename when previewing (chandlerding)
45 6061: Options: New type port_option, values are bound to be >= 0 and <= 65535
46 6060: Do not send mail notifications when smtp_server = ""
47 6059: Multiuser: Avoid double group entries in user_groups
48 6056: Log username, IP:port and old/new value when changing options
51 6049: BT: Support user_commit_dir when seeding,
52 reshare every share_scan_interval minutes
55 Move docs/multiuser.txt to distrib/multiuser.txt
56 6048: Make Ocaml 3.10.0 the default compiler
57 - MLDonkey can still be compiled with Ocaml 3.08.3/4 & 3.09.*
58 - if you need GTK1 oldgui you must use Ocaml < 3.10.0 to compile
61 6044: BT: Limit max_bt_uploaders to max_upload_slots (pango)
63 - new command "discover_ip" to force discovery
64 - new option "discover_ip" to enable automatic discovery on startup
65 and after SIGHUP, default true
66 - this patch is important for BT-only usage, without this patch the
67 WAN IP was discovered only by using EDK server replies
68 6034: Load $MLDONKEY/web_infos/* before activating network modules
69 - this fixes a security hole when networks started connecting
70 before IP blocklist was loaded
71 6025: Extend command "links" to optionally display all downloading files
72 - "links" displays all files, not only shared ones like before
73 - "links shared" lists only shared files
74 - "links downloading" lists only downloading files
77 6024: Multiuser: New parameters for command useradd:
78 user_mail + user_max_concurrent_downloads
81 6021: Remove leftovers from optional zlib support,
82 replace Autoconf.zlib__* with Zlib.* functions
83 6005: Swarmer: Implement new download mechanism
84 - its now possible to switch the order blocks are downloaded from random
85 (first and last block first, default) to linear
86 - new command: download_order <file number> <random|linear>
87 6017: Multiuser: New optional parameters group/commit_dir for command useradd
88 6020: Multiuser: Fix handling of user "admin", its user_commit_dir was not
89 used when MLDonkey was not restarted between download start and commit
90 6019: BT: Disable user_commit_dir for multifile torrents to fix seeding
91 6011: BT: Send no_peer_id to trackers to save some bandwidth (berni)
92 6010: Update syslog.ml to version 1.4
93 5995: EDK: Better handle permission denied errors for shared/downloading files
94 5992: BT/IP block: Fix country-based IP blocking
95 -------------------------------------------------------------------------------
96 2007/06/03: version 2.8.7 = tag release-2-8-7
97 5988: BT: Completely parse handshake packet of newer BT clients (thx to Berni)
98 - this patch should fix the serious performance problem with BT downloads
101 5987: GeoIP: Small cosmetical fix for loading GeoIP.dat (pango)
102 5986: Fix GC problem in bz2 code (pango)
105 5891: Disconnect clients we download from when a file is queued/paused
106 5905: Replace old DirectConnect module with new DC++ code (alffa)
107 - enable it with ./configure --enable-directconnect
108 - bzip2 support is manditory
109 - preliminary docs: http://mldonkey.sourceforge.net/DirectConnect
110 -------------------------------------------------------------------------------
111 2007/06/01: version 2.8.6 = tag release-2-8-6
112 5984: EDK: Small log updates
115 5982: Save archives used for ini files backup with rights 600 (pango)
116 5981: EDK/Swarming: Download first 9MB first for preview,
117 not 10MB to avoid downloading second chunk too early (pango)
118 5972: GeoIP: Load GeoIP.dat into RAM (pango)
121 5976: Search for autoconf261 in ./configure
124 5940: GeoIP: Reduce disc access to lower CPU usage
125 - store computed country values in client/server structures
126 - EDK: fix a bug where a firewalled client was displayed with IP 0.0.0.0
127 - new verbosity level "geo" to monitor access to GeoIP.dat
130 5961: Include compile patch for Ocaml 3.08.3
131 5956: Remove unused files src/networks/donkey/donkeyIndexer.ml*
134 Updated Mozilla protocol handler to version 2.1
135 - original source from http://www.informatik.uni-oldenburg.de/~dyna/mldonkey
138 5944: configure: Allow use of Ocaml 3.10.0, keep 3.09.3 as default
141 5897: FileTP: Support HTTP downloads of files > 1GB
142 5815: Unix32: Override system umask to force correct function
143 of option create_file_mode (pango)
144 5912: Extend patch 5817: "Code updates for Ocaml 3.10.0beta compatability"
146 5910: EDK: Revoke upload slot when client asks for blocks positioned after EOF
147 5908: Fix commit when incoming filesystem allows more than 16M chars
148 5906: Telnet/BT: Display clients country code without HTML in vd <num>
151 5903: commonPictures: Update favicon.ico (meto)
152 5902: Updated italian translation for mldonkey (surricani)
153 5901: Updated german translation for mldonkey
154 - taken from german wiki: http://www.mldonkey.org/wiki/index.php/Mlnet_strings
155 5900: Updated italian translation for mldonkey (surricani)
158 5898: Updated italian translation for mldonkey (surricani)
161 5892: Updated italian translation for mldonkey (surricani)
164 5888: Partial italian translation for mldonkey (surricani)
165 stored in ./distrib/i18n/mlnet_strings.it_IT.UTF-8
166 5718: Improve command "nu"
167 - close all upload slots
168 - do not give an upload slot to clients in pending slot
169 - restrict command "nu" to admin users
170 -------------------------------------------------------------------------------
171 2007/04/23: version 2.8.5 = tag release-2-8-5
172 5855: Increase Unix32.max_cache_size, fix max_opened_connections check
176 5878: HTML: Fix preview in vd <num> broken by patch #5866
179 5876: HTML: Send mime-type video/mpeg for file extension .vob
182 5857: EDK: Remove upload compression (patch #5665) due to ineffective caching
183 5875: Swarmer: Some cosmetic changes (pango)
184 5856: EDK: Set TCP backlog to max_upload_slots for donkey_port socket
185 5869: EDK/Swarmer: Try harder to read corrupt files.ini
186 - reset chunk table to missing after re-creating a missing temp file
187 - discard swarmers without files entry in files.ini instead of stopping
188 - check that partial hashes file_md4s match with file_md4 when reading files.ini
189 5870: Updated distrib/mldonkey_submit, it now uses command dllink instead of dd,
190 it also supports http and sig2dat links (atordo)
193 5866: HTML: fix third button row to also successful act within frames (schlumpf)
196 5867: EDK: Show country code/flags for indirect clients
197 5862: BT: Informative GUI console messages after sending a .torrent file to GUI
198 5859: HTML: Support sending files from $MLDONKEY_DIR/html_themes/
201 5861: HTML: Fix errors reported by w3.org validator in html_header_mods0
202 5860: HTML: fix broken refresh on Opera/Safari (schlumpf)
205 5854: Set share_scan_interval = 0 to disable scanning of shared directories
206 5853: New option defaults
207 - download_sample_size 100, 10 is too low, download rate is computed wrong
208 - ED2K-propagate_sources false, this activates outdated MLDonkey-style source
209 exchange, MLDonkey supports eMule-style source exchange which is not affected
211 - ED2K-update_server_list_server should be false, there are lots of fake servers
212 out there, trust only servers from trusted server lists. For more details read
213 http://mldonkey.sourceforge.net/ServerList#Fake_search_results
214 - ED2K-upload_full_chunks should be true to reflect the same default eMule uses
215 - ED2K-upload_compression_table_size should not be smaller than max_upload_slots
218 5821: New variables for file_completed_cmd:
219 file_group_cnt, file_group_user, file_group_dir
220 5849: EDK: Report correct short versions for Windows clients
223 5847: BT: Fix exceptions when handling BT clients as friends
224 5845: Do not reverse order in files.ini after restart (pango)
225 5844: HTML: Keep totals line when sorting statistics tables (schlumpf)
226 -------------------------------------------------------------------------------
227 2007/04/01: version 2.8.4 = tag release-2-8-4
228 5840: Some small stuff (logging, code improvements)
229 5839: IP block: Scan all files inside a .zip file when loading
230 a blocklist, use the first valid file
231 5831: BT: New option BT-tracker_retries
234 5819: MinGW: Fix charsetstubs.c compile with latest MinGW
237 5817: Code updates for Ocaml 3.10.0beta compatability
238 - to use Ocaml 3.10 add ./configure option --enable-ocamlver=3.10
239 - MLDonkey will accept the new Ocaml version without this option when
240 the final version of Ocaml 3.10 is released and proven to be working
241 - GTK1 oldgui does currently not compile with Ocaml 3.10 code
242 - lablgtk1 & lablgtk2 compile with Ocaml 3.10, but some MLDonkey code
243 still needs fixing, GTK1 newgui and GTK2 gui compile with Ocaml 3.10
244 - parts of the patch by pango
247 5813: Options: Use original file rights in tar.gz backup,
248 save backups with rights 600
251 5807: Implement new command "man" to display command help
254 5806: Update GNU config.guess and config.sub to version 2007/01
255 5775: http_client: Fix loading URLs with ()' (orbit)
256 5781: web_infos: Load local file if remote file can not be accessed
258 5802: Telnet: Support non-ascii input (Hung-Te Lin)
261 Updated Mozilla protocol handler to version 2.0
262 (re-committed after data loss due to Savannah crash on 2007/03/12)
265 5799: Flags: Added Aland Islands, Guernsey and Jersey,
266 fixed debug_pictures command
267 5797: Remove unused source code in src/applets/*
268 5775: removed, it breaks BT downloads
269 5775: HTML: Fix url parsing for URLs with ()' (orbit)
270 5774: BT: fix upload managment (orbit)
271 5786: HTML: small javascript search improve (orbit)
274 5787: HTML/Geoip: Show country flags
275 - new option html_flags to disable display of flags
276 - favicon.ico now built-in
277 - fix sorting bug in costats (thx to orbit)
280 5784: Gd: Implement binding for function gdImageFilledArc
281 5773: Geoip: Country-based up-/download statistics
282 - new ini file statistics.ini, to be used later for all statistics
283 - new command "costats", accepts parameters:
284 without parameter it displays all countries where data was transfered to
285 parameter "all" displays all seen countries, countries where MLDonkey never
286 saw a client are not part of the statistics data
287 regular expressions can be used for country names/codes and continents,
288 like "costats *aus*" (Austria and Australia), "costats *europe* *africa*"
289 - new command "countries" to print country database
290 - new command "reset_costats" to reset country statistics
291 - mem_stats support for modules CommonStats & Geoip
292 - updated country database based on GeoIP 1.4.2 C-library
295 5765: Change hard-coded maximum value for client_buffer_size
296 - default stays at 500.000
297 - for high-volume links raise this value to 1.000.000 or higher
298 5767: HTML: Improve bw_stats
299 5768: New default for option messages_filter (thx to atordo)
300 5766: Windows/Unicode: Fix broken get_info function for non-ascii filenames
301 5782: Improve CommonNetwork.network_display_stats function
304 5757: Some improvements for byte-code build
305 - "make utils" now builds byte-code if needed
306 - new build targets: mlnet.byte.static, release.mlnet.byte.static
307 - print configure infos when byte-code is to be compiled
308 - buildinfo prints the binary name if not "mlnet" or "mlnet.static"
309 - remove some unneeded variables from configure
310 5759: OV/KAD: improve stats, remove obsolete options, save bandwidth (bogeyman)
313 5754: mld_hash: Compute AICH hashes (thx to pango)
314 - parameter hash takes new option: aich to compute eMule AICH hashes
315 - new parameter partial_zone: Display hashing of zones (subparts of chunks)
316 - new parameter check_keep, keep files after checking functions (-check) for later testing
317 - parameter check, option filesize is now Int64 and in bytes
318 5752: Fix core hanging on ARM CPUs
319 5750: EDK: New option upload_compression_ext_exclude (thx to pango)
320 - space-separated list of file extensions which are not compressed when uploaded
323 5753: Multiuser: New variable $USER_MAIL for file_completed_cmd
324 5751: Improve startup log messages, remove unused code, optimize Date code
325 5749: BT: recognize more BT client types (orbit)
326 5748: KAD/OV: Limit searches for sources (bogeyman)
329 5738: Remove obsolete multicast files (orbit)
330 5743: BT: Show shared torrents in upload list after commit (xergius)
331 5744: EDK: Fix SecureUserIdent between machines with different endianness
332 -------------------------------------------------------------------------------
333 2007/02/11: version 2.8.3 = tag release-2-8-3
334 5734: Update camlzip to version 1.03 (thx to orbit for reporting)
335 5735: BT: Fix make_torrents to sort dictionary entries alphabetically
336 Bittornado did not read MLDonkey-made torrents (amadeo)
337 5737: MinGW: Work-around missing Unix.fstat
338 - fixes failed removal of torrent files from torrents/[incoming|downloads]
341 5719: Unix2: Fix copying files > 1GB (1073741823 bytes),
342 bug was introduced by patch 5589 after release of 2.8.2
345 5724: http_client: Retry GET request if HEAD request returns http error 400
346 5723: HTML: print tracker errors in html table at 'vd <num>' (Schlumpf)
347 5722: HTML: use Printf2.html_mods_cntr () for table row classes (Schlumpf)
348 5720: Swarmer: block choice algorithm 2 from patch 5141 is new default
349 - remove swarming_block_selection_algorithm = 1
350 because it finishes chunks too slowly
351 - remove swarming_block_selection_algorithm = 3 from TripleM
352 because it uses too much CPU power.
353 - remove option swarming_block_selection_algorithm, hard-coded default is now 2
354 - remove option block_switching, hard-coded default is now true
357 5717: Optimize function print_command_result
360 5715: Improve porttest (Schlumpf)
361 - use 'porttest' command to start the network porttest the first time,
362 after this to see the results
363 - new command 'force_porttest' to force an new porttest
364 - improve html porttest output and make it also available in telnet
365 5716: EDK: Do not send share list to servers with state Connecting
366 5713: HTML: show messages link in vd clickable (Schlumpf)
369 5712: Multiuser: New verbosity "com" to log commands by non-admin users
370 5711: Multiuser: Block commands preferred, bs, bp, port for non-admin users
371 5642: Swarmer: swarming_block_selection_algorithm = 3 (TripleM)
372 - this new algorithm select always the rarest choice, if average availability
373 is below 5, or one choice_availability is below average availability
374 - added a hashtable to store blockmaps of uploaders for a given swarmer
375 - long term memory usage has to be observed
376 5710: Swarmer: Fix chunk propagation (pango)
379 5693: "voo changed" prints changed options only, useful for support (Schlumpf)
380 5698: EDK: fix display of porttest result images (Schlumpf)
381 5699: Multiuser: Fix wrong file path (user_commit_dir) in notification mail
382 5695: Command "set": better error text if option does not exist
383 5694: Fix small typo in buildinfo
386 5673: New core start parameter: -useradd "user pass", needed for Debian package
387 5678: New options for command force_web_infos: kind/URL (thx to Schlumpf)
390 5691: EDK: Recognize compatibleclient 60: IMPmule (imp-project.net)
391 5689: EDK: Log downloading file name when client disconnects
392 5684: GUI: Fix build of mlprogress (Alt linux)
393 5677: Options: New concept of option types, fix non-admin Sancho http preview
396 5665: EDK: Support compressed upload, implement file read cache (TripleM)
398 - ED2K_upload_compression to enable compressed upload, default true
399 - ED2K_upload_compression_threshold, default 2000 bytes
400 Size difference in bytes between one zone (180 kBytes) and its compressed
401 counterpart, which has to occure, to send compressed parts instead of plain.
402 - ED2K_upload_compression_level, Zlib compression level, default 9
403 - ED2K_upload_compression_table_size, default 20
404 5669: HTML: Add HTML headers to prohibit browser-side caching (Schlumpf)
405 5671: Configure: Fix question whether to compile lablgtk, same as patch 5401
406 5675: Updated Mozilla protocol handler to version 1.10
409 5666: New option upload_complete_chunks (TripleM)
410 - default false, if true, each client is allowed to complete only one chunk,
411 independent, if it is empty or partial. this setting overrides
412 upload_full_chunks and dynamic_upload_lifetime, but is, as a failsafe,
413 limited by upload_lifetime (should be set reasonable high)
414 5664: EDK: Avoid uploading data more than due
415 to eMules rotating block requests (pango)
416 5596: EDK: New option upload_full_chunks (thx to TripleM)
417 - If the new option upload_full_chunks is set to true, each client is
418 allowed to receive one chunk, this setting overrides upload_lifetime.
419 Well, not exactly one chunk. eMule has this code in opcode.h:
420 #define SESSIONMAXTRANS (PARTSIZE+20*1024) //
421 "Try to send complete chunks" always sends this amount of data
422 MLdonkey now does the same, if upload_full_chunks is true and client A got
423 9728000+20*1024 bytes during the current session its upload slot will be
424 revoked unless pending slots are empty.
425 5619: EDK: Print network specific infos in command "vc <num>",
426 remove unneeded fields from client structures
427 5627: commonHasher: fix wrong arg types from several functions (Schlumpf)
428 5626: MinGW: fix missing declarations and wrong pointer
429 initialization in stubs_c.c (Schlumpf)
432 5599: EDK: Support for files >4GB (TripleM, pango)
433 - this patch does not include >4GB support for Kademlia
434 5660: Swarming: Enable wrongly disabled select block memoization (pango)
435 5659: GD: Fix wrong months display (skeeve)
438 5617: New option share_scan_interval
439 - how often (in minutes) should MLDonkey scan all shared directories
440 for new/removed files, default one minute
441 - on slow machines raise the interval to a higher value to reduce CPU load
442 - to force a re-scan of shared directories use command "reshare"
445 5613: Another longhelp cleanup (anhi)
446 5615: EDK: Parse more fields from server.met files
449 5612: EDK: OP_HELLO tag 0x75, print os_info in logfile
452 5602: HTML: Display share status in upstats
453 5609: New field type Field_KNOWN, EDK: recognize more HELLO/EmuleInfo tags
454 5610: CommonSources: Cleanups and reformatting the code (pango)
457 5608: Multiuser, chgrp: Prevent change of file_group to None
458 if the user is not file_owner
459 5607: Multiuser, chown: Change file_group to user_default_group
460 if the new user is not member of file_group
461 5606: Introduce display of session transfer values
462 - new columns for session up-/download
463 - send session values to GUIs
466 5605: HTML: Fix search list display when html_checkbox_search_file_list = true
469 5598: Remove use of deprecated sort module, remove unused sort2.ml* (pango)
470 5589: New option create_file_mode,
471 rename create_dir_mask to create_dir_mode (pango)
472 5595: EDK: Fully parse emule_miscoptions1/2
473 5594: EDK: If update_server_list_client true, add yet unknown server
475 -------------------------------------------------------------------------------
476 2006/11/29 version 2.8.2 = tag release-2-8-2
477 5597: GD: New option html_mods_vd_gfx_h_intervall
478 (compute values for hourly graph every x minutes) (skeeve)
481 5591: EDK: Fix small file search result parsing
484 5590: EDK: .gz & .bz2 support for command "servers"
485 5581: EDK: Improve server logins, send fewer data, minor improvements
486 - Copied eMule behaviour:
487 - send fewer data to server during login, support server capability "newtags",
488 same opcodes as in eMule are used
489 - UDP ping servers once per 4,5h - (random of 1s-1h)
490 - UDP server statistic request during every second UDP ping
491 (~9h, not once per hour like before)
492 - request serverlist from server only when ED2K_update_server_list_server true
493 - ping one server per 5s
494 - remove servers after 10 unsuccessful UDP pings
495 - save challenge values sent with UDP server statistic and description request
496 and dismiss answers containing wrong challenge
497 - New functions, restructurings:
498 - new server status "Server full"
499 - support new tag emule_miscoptions2 (empty atm.)
500 - remove server descriptions from servers.ini
501 - clean donkeyTypes.server definitions
502 5588: Cleanup commonNetwork (pango)
503 5582: EDK: Improve CryptoPP logging (Schlumpf)
504 5584: EDK: Remove removed servers from walker server lists
505 5585: EDK: New parameter "all" for command "x" to disconnect all conn. servers
506 5586: BT: Recognize Bitrocket clients
509 5579: Remove BasicSocket.[mini|maxi], replace them with Pervasives functions
510 - small fix for DonkeyOptions.max_allowed_connected_servers
511 5578: Remove unused files
512 - src/utils/net/tcpClientSocket.ml
513 - src/utils/net/tcpClientSocket.mli
514 - src/utils/net/tcpSocket.mli
515 5577: EDK: Send correct SUI tags
516 - sometimes MLDonkey sent SUI=true tag when CryptoPP was not linked
519 5568: EDK: Support CIDR and IP ranges in server_black_list (pango)
520 5574: allowed_ips: Fix list usage when 0.0.0.0/0 is part of the list (pango)
521 5570: Some log messages in gettext module (Schlumpf)
522 5569: HTML: Fix display bug in server list after js popups
523 introduced by patch #5549 (Schlumpf)
524 5564: HTML: Remove non-working option use_html_frames (Schlumpf)
525 5563: EDK: Fix broken log message when master server changes (Schlumpf)
528 5556: web_infos: new option rss_preprocessor used for fixing broken RSS feeds,
529 safer process spawning for command "!" (pango)
530 - broken feeds like http://thepiratebay.org/rss.php?cat=D601 can now be parsed
531 directly using (for example) xmllint, if a feed can not be read be MLDonkey
532 its piped through rss_preprocessor and read again
533 5560: EDK: Parse some more server.met fields, log unknown server tags
536 5424: web_infos/rss: shell:// type url
537 5549: EDK: Parse all data from server.met, new HTML javascript popup
538 5553: EDK/OV/KAD: small updates (bogeyman)
539 - EDK: log unknown client tags with verbosity mct
540 - OV/KAD: ignore OvernetPeerNotFound and log number of peers every
542 5551: web_infos: Fix mtime detection, old files were not updated
543 5550: debug_fileinfo: Print [a|c|m]time values
544 5530: GD: Improve graph output (skeeve, Schlumpf)
545 - html_mods_vd_gfx_h_grid_variable
546 "Stretch hourly until at program start", default true
547 - html_mods_vd_gfx_h_grid_time
548 "Max hours on time scale per grid (0 = no limit)", default 0
549 - html_mods_vd_gfx_subgrid
550 "Number of shown subgrids on graph (0 = no subgrids)", default 0
553 5548: New search parameters: "-and", "-or", "-not", removed "-without"
555 5546: Some sharing updates
556 - solved bug 10957, updating the prio of an already shared dir is now possible
557 - fix bug where missing shared dirs with strategy incoming_* where not recreated
558 - remove "network = []" from downloads.ini, currently not supported
559 - created workaround to fix bug on MinGW: no files were shared. Introduced by
560 patch 5475, but source of problem is Ocaml bug 4159
561 5547: HTML: Fix unicode display in vd & upstats javascript popups
564 5545: EDK: Do not show empty server message lines in GUI
565 5509: Common: Merge file_print functions,
566 BT: print BT-specific source infos in Telnet (thx to jave)
567 5544: Clean up code to avoid otags warnings (pango)
568 5543: Improve exception handling, fix some indentions (pango)
569 5542: CommonSources: Work-around division-by-zero bug in Ocaml
570 on Alpha platform (pango)
573 5526: Multiuser: Internal restructuring, new commands
574 - from ftp://ftp.berlios.de/pub/mldonkey/pango/userdb-cleanups_v2.patch (pango)
575 - create commonUserDb.mli to protect userdb data from other modules
577 - replace strings in commonFile with multiuser commonTypes.userdb/groupdb
578 - implement security checks when core starts
579 - user "admin" must exist
580 - group "mldonkey" must exist and must have admin status
581 - update HTML interface, command "users"
582 - create link to remove a group from a user
583 - create link to change group admin status
584 - new column group members
585 - Telnet: Show all data in command "users"
586 - do not allow removal of users or groups with downloads,
587 groups with members, user "admin" and group "mldonkey"
588 - filter files shown with command "downloaders"
589 - fixed bug where wrong group list was displayed in HTML, vd #file_num
590 - Display user and groups columns
591 new options html_mods_vd_user & html_mods_vd_group to en-/disable display in HTML, vd
592 - Javascript popups show User:Group infos
594 - implement new commands
595 - usergroupadd <user> <group> : add a group to a mldonkey user
596 - usergroupdel user> <group> : remove a group from a mldonkey user
597 - userdgroup <user> <group|None> : change user default group
598 - groupdel <group> : remove an unused mldonkey group
599 - groupadmin <group> <true|false> : change group admin status
600 - Restrict commands to admin users:
606 5527: mlguistarter: print correct syntax (fixes Debian bug #396754)
609 5481: Overnet: Small updates
610 - do not print opcode 18 (OvernetNoResult) as unknown message
611 - parse bcp type bcp://xxxxxxxxxxxxxxxxxxxxxxxxxxx:ip:tcpport:udpport
612 - print debug log message when a new source was added
613 5513: HTML: Let webinterface work in a HTML frame (ported from Knockers Mulus)
614 - third button row does not work yet, patches welcome
615 5521: BT: Fix non-working EDK upload when BT is enabled,
616 introduced by patch 5461
619 5508: OV/KAD eMule style search and some small fixes (bogeyman)
620 5486: UDP bandwidth monitor fix (bogeyman)
621 5505: EDK: Support aMule/Hydranode style OS_INFO tag
624 5488: Multiuser: New commands
625 - groups -> displays groups of the logged-in user
626 - dgroup -> displays default group of the logged-in user
627 - restrict command "unshare" to admin users
630 5475: Multiuser: Implement user_commit_dir
631 - directories with strategy incoming_files are shared recursively now
632 - support several directories with incoming_* strategies, use the
633 first one with enough space to commit the finished file
636 5499: Configure: find camlp4 in local, fix patch 5479 (dunk)
639 5477: BT: Add downloads to share list after core restart
642 5474: updated bw_toggle
643 - fix cosmetic bug, wrong values were displayed
644 as a result if option_hook changed values
645 5489: HTML: Improve serverlist display (Schlumpf)
646 5487: Update URLs, change mldonkey.net to mldonkey.org
647 5485: HTML: Print sharing strategies in command "shares"
648 5461: Release slot, fix missing filenames in upstats
649 - Each downloading file can be set to status "Release", this can
650 be done by clicking the "R" column in HTML, Transfers or by
651 using the new "release <file_num>" command to toggle the state.
652 - A new option max_release_slots exists, default 20% of the default
653 5 max_upload_slots. This means 1 upload slot is available per default
654 and granted for files with status "Release" when requested.
655 - Show filenames in pending upload slots list
656 5484: Fix DNS test, test other domains besides www.mldonkey.net
659 5474: New command bw_toggle (ported from Knockers Mulus client)
660 - two new options: max_hard_upload_rate_2 and max_hard_download_rate_2
661 - new command bw_toggle, quickly switch between two bandwidth options
662 5480: Update Mozilla protocol handler, cleanup docs in distrib/
663 5479: Configure: Force presence of camlp4
664 5478: Support gdlib-config --static-libs function (new on Debian Etch)
665 5476: Urladd: Change default period to 0 (load file only when core starts)
668 5473: Log: Redirect CryptoPP messages to MLDonkey logfile (Schlumpf)
669 5472: Urladd: New optional parameter period (in hours) (thx to Schlumpf)
670 5471: HTML: New colums for pending slots list: SUI, GeoIP, Filename
671 5470: Options: New type percent_option, values are bound to be >= 0 and <= 100
672 5469: HTML: Implement 404 error page for unknown URLs
675 5419: EDK: Re-implement titanesel.ws links - service is up again (thx to sk38)
678 5458: OV/KAD: tweak and bugfix the search (bogeyman)
681 5454: OV/KAD: Block blocked ips + small Overnet updates (bogeyman)
682 5451: HTML: clickable new messages indicator (jave)
685 5428: HTML: Fix style sheet errors (rwruck)
686 5446: EDK: Small update for EDK publish patch 5430
687 - new option max_published_files
688 maximum number of files published to servers per minute, eMule default 200
689 - bug fix for patch 5430, publish also to non-preferred servers
692 5430: EDK: Improve file publishing
693 - publish no more than 200 files/minute to avoid server-side blacklisting,
694 eMule uses the same limit,
695 least published files are published first (thx to pango)
696 - respect server hard_limit, never publish more files to servers
697 - HTML: in server list display number of files published by server, by clicking
698 on this number the list of files is displayed (new command server_shares num)
699 - HTML: diplay master server status, only master server are used for publishing
700 - HTML: in upstats display number of server the file was published to,
701 also display server name + IP in javascript popup
702 - bug fix: properly update DonkeyGlobals.master_server to be used in
703 DonkeyClient.read_first_message, this is used when replying to non-Overnet
704 clients so they know to which server MLdonkey is connected to,
705 - remove development option become_master_delay
706 5445: Self-test charset conversion, disable conversion if test fails
707 5444: BT: Correctly display client connected time,
708 also allow correct upload speed calculation (tradie)
709 5443: BT: do not allow connections with ourselves (tradie)
712 5442: BT: Verbose error messages when torrent is sent from GUI,
713 BT-multiuser: Protect command seeded_torrents
714 5441: BT: Re-enable all trackers when file is resumed
715 5440: HTML: Strip CR from multiline dllink input to fix FileTP filenames
718 5439: Increase required ocaml version to 3.09.3 (schlumpf),
719 remove old TYPE_FORMAT stuff needed for Ocaml < 3.06 (pango)
722 5297: In addition to previous patch 5297 force conversion of allowed_ips to
723 IP blocklist when $MLDONKEY_DIR points to an existing directory
724 and ini files are created for the first time
725 5429: Fix compile bug in Ocaml 3.08.3 (thx to eike for reporting)
728 5404: New command porttest, support for eMule- and Azureus-style porttest
729 (thx to pango for Azureus result parsing)
730 5421: HTML: Add "Users" to options frame (unease)
731 5429: New common lprintf_file_nl function
732 5432: Updates and fixes for the Win resource file (schlumpf)
735 5407: BT: Improve handling of tracker error messages
736 - print additional information in telnet, vd #num already present in HTML
737 - show tracker errors in Telnet and HTML popups over tracker info lines
738 - pause torrents with no valid trackers left
739 5336: EDK: Fix lowid support (krissn)
740 5427: EDK: Increase hash speed when threads are available (pango)
743 5426: CommonSources: Reduce CPU load when refilling queues
744 of many non-BT downloads (pango)
745 5425: FileTP: Support options file_started_cmd and pause_new_downloads
746 5423: Print warning for empty admin password only if allowed_ips was altered
747 5422: Command "sources": Display only downloading files
750 5405: BT: Use field "encoding" from .torrent to convert strings to UTF-8
751 5419: EDK: Remove titanesel.ws links
752 5418: Gnutella/G2/Fasttrack: Support client_bind_addr
753 5417: Edonkey comments: Telnet support, UTF-8 output in HTML
754 5416: Makefile.in: New variable $DEVFLAGSOPT for .cmx files (jave)
755 5415: New command option: rem disc - remove all disconnected servers
758 5414: Edonkey comments, update gui prot, some bt peer ids (zet)
759 - Reimplement edonkey file comments with ratings (ro)
760 (fixes exploitable DOS introduced in patch #5371)
761 - Add options "comments_filter", "max_comments_per_file", "max_comment_length"
762 - GUI protocol updated for comments, stats, libmagic, users/groups
763 - BT: Identify some more peer ids, as well as the reserved bits
764 - Fix some html code and other bugs
768 5411: Portinfo: Rename gift_port to gift_port GUI
771 5406: Multiuser: Small bug fixed in recover_temp (mu2.patch)
772 5406: Main multiuser patch, see docs/multiuser.txt for details
773 thx to jave, pango, zet and many other people who have helped
774 to make this work possible
775 - this patch is experimental, if it breaks, you can keep the pieces;-)
776 - multigroup_usercommit.patch and multigroup_su.patch are not included
777 - this patch is still not finished, the To-Do list in docs/multiuser.txt
778 is still long, also GUI protocol updates have to be implemented.
779 To manage users, groups and files, its best to use the HTML interface,
780 multiuser commands can also be used in Telnet interface.
781 -------------------------------------------------------------------------------
782 2006/09/17 version 2.8.1 = tag release-2-8-1
783 5401: Fix question whether to compile Ocaml with some bash versions (pango)
784 5400: Allow use of Ocaml 3.09.3, keep 3.09.2 as default
785 5399: EDK, Telnet: Fix and clarify message when starting a search (schlotter)
788 5397: EDK: Disable broken option emulate_sparsefiles
789 5395: Improve max_hard_up/download_rate computation code (pango)
790 5380: BT: Add file_num to certain log entries (jave)
791 5392: fix typos in help texts (schlotter)
792 5394: Fix max_hard_up/download_rate computation
793 - crashed on Windows when max_hard_upload_rate = 0
794 - when max_hard_upload_rate = 0 max_hard_download_rate was badly computed
795 -------------------------------------------------------------------------------
796 2006/09/14 version 2.8.0 = tag release-2-8-0
797 5390: Distinguish between charsets zh_cn and zh_tw
798 5389: Fix verify_chunks (pango)
799 5388: Small log update
802 5386: Telnet: Longhelp cleanup
803 5385: Command mem_stats: verbosity 0 is default now
804 5360: patch removed, it does not fix the bug
805 5383: BT: Detect new client types (thx to pango)
806 - fix Mainline detection for two-digit version numbers
807 - fix Tornado detection
808 - fix broken Bits on wheels detection
810 - detect Bitspirit v3
811 5384: BT: Fix serious bug causing bad performance introduced
812 by abstract bitmaps patch (pango)
815 5369: Portinfo: fix String.length problems in Telnet (5369_2.patch)
818 5294: HTML: Fix sources display for Gnutella/G2/Fasttrack/Filetp
819 broken by patch #5294 (thx to z)
820 5368: Remove unused code from md5_c.c & os_stubs.h
821 5371: EDK: Support for eMule comments (read-only)
822 - new option html_mods_vd_comments to enable column in HTML, vd
823 - comments are shown in javascript popups and vd #num
824 5369: New command portinfo, display used ports during start-up
827 5370: Correct option_versions defaults, remove commented EDK code
830 5367: EDK: Use random default for ED2K_port instead of fixed 4662
831 - existing ini files are never changed
832 - after donkey.ini is created the value is not changed automatically
833 5366: HTML: Remove obsolete EDK history links
834 5365: Accept FTP URLs on command line
835 5364: Update options descriptions, remove obsolete options, clean log
836 5363: Limit max_hard_download_rate when max_hard_upload_rate < 10
837 - upload >= 10 -> unlimited download
838 - upload < 10 > 3 -> download limited to upload * 4
839 - upload < 4 -> download limited to upload * 3
842 5361: Faster filenames_variability computation (pango)
843 5315: EDK: Change some internal server data to option values
844 5354: New option: max_filenames, maximum number of different filenames
845 5355: Move buffer_writes_delay timer from Donkey to Global module
846 5344: Small code optimization for stderr warnings (thx to pango)
849 5341: New command: filenames_variability
850 - compute differences between the filenames of a file to detect fakes
851 the higher the value, the more likely its a fake
852 5335: Fix small bugs in "!" command (execute shell commands)
853 5334: HTML: Display edk2 links in search results
854 5333: Clean logging (Swarmer, Fasttrack, Gnutella)
855 5332: New command option: rem blocked - remove all IP blocked servers
856 5330: Configure: Check MinGW version, at least 3.10 is needed (Schlumpf)
857 5329: some configure improvements and cleanups (Schlumpf)
860 5320: some html_mods tables & css improvements (Schlumpf)
861 5322: Use CXXFLAGS present at configure when compiling (smimram)
864 5319: Configure: New option --enable-minimum
865 - Compile MLDonkey with Donkey only, without gd, magic, bzip2, sui
866 5304: cleanup donkeyOptions.ml (whitespace, tabs, comments) (Schlumpf)
867 5303: cleanup btOptions.ml (whitespace, tabs, comments) (Schlumpf)
868 5302: cleanup commonOptions.ml (whitespace, tabs, comments) (Schlumpf)
869 5318: Fix wrong buildinfo configure args with autoconf 2.60
870 5317: Compile fix for GTK1 newgui in addition to patch 5310
873 5309: Increase reserved number of FDs from 20 to 40 for dynamic libs
874 5310: EDK: Request filelist from friends only when requested,
875 disable automatic download (pango)
876 5312: GTK2 GUI: Fix histograms (su_blanc)
877 5313: CryptoPP: Check for g++ capabilities
880 5308: CryptoPP: Fix infinite loop when re-creating private key fails
881 5307: CryptoPP: Deactivate compiler option -momit-leaf-frame-pointer
882 5300: Fix iconv compile bug on Eisfair
883 5299: Support magicdb in $MLDONKEY_DIR/magic/magic if present
884 this location is used in addition to the defaults of libmagic
885 5277: MinGW: use new gettimeofday() from mingw-runtime-3.10 (Schlumpf)
888 5298: Some internal changes moved from multiuser patch to CVS
889 5285: GUI: Self-test en-/decoding only down to protocol 24 to solve
890 crash when system date is wrong
891 5297: Force conversion of allowed_ips to IP blocklist when $MLDONKEY_DIR
892 and ini files are created for the first time
893 5296: Telnet: Fix filesize display for 1kb, 1mb, 1gb values
896 5295: Hard-coded minimum of 600s for min_reask_delay
899 5294: Clean logging, small "if .. then true else false" function rewrites
902 5288: EDK: Improve log when sharing is prevented due to inconsistent filesizes
903 5287: Swarmer: Remove obsolete option file_bitmap from files.ini
904 5286: Swarmer: (pango WIP10a)
905 Fix commit of merged downloads + internal optimizations
906 5283: EDK: Fix IP display in GUIs for some firewalled clients
909 5281: BT: Allow startbt to use URLs without extension ".tor" and ".torrent"
912 5275: Change functions called when SIGHUP is sent
913 - BT: stop_all_bt is called to improve disconnect recognition
914 - instead of closing all sockets now all clients+servers are disconnected,
915 GUIs will not be disconnected anymore
916 5276: web_infos, part II: Update server.met URL
917 - fix defaults and server list URL
920 5276: web_infos: Update server.met URL
921 - http://www.jd2k.com/server.met does not exist anymore,
922 now using http://www.gruk.org/server.met.gz again
925 5272: Fix OS-detection bug in Unicode conversion when committing files
926 - should solve file naming problems on non-UTF8 systems
929 5269: Fix maximum filename length recognition on Mac OS X
932 5268: Swarmer: Fix Division_by_zero when starting downloads
933 of files smaller than 200 bytes
936 5266: EDK: New default 600s for upload_timeout, 60s was too short
937 5265: EDK: New option keep_sources, false to disable use of file_sources.ini
938 5264: allowed_ips: Support CIDR address/mask format and IP ranges (pango)
939 * old syntax is converted to CIDR format:
940 - 192.168.000.255 -> 192.168.000.000/24
941 - 192.168.255.255 -> 192.168.000.000/16
942 - 192.255.255.255 -> 192.000.000.000/8
943 - 255.255.255.255 -> 000.000.000.000/0
944 * new possible syntax, to calculate: http://www.subnet-calculator.com/cidr.php
945 - CIDR, like 192.168.0.106/30 (192.168.0.104 - 192.168.0.107)
946 - IP ranges, like 192.168.1.123 - 192.168.1.133
949 5262: Small compile patch for Mac OS X 10.2.8 (Jaguar), small log fix
950 5260: Enable logging to syslog, update syslog.ml to version 1.3
951 * New option log_to_syslog, default false
952 Post log messages to syslog. This setting is independent of log_file
953 and its associated commands, therefore close_log does not stop log to syslog.
954 Its therefore possible to log to syslog and log_file at the same time.
955 5261: MinGW: Fix compile bug with mingw-runtime-3.10
956 5259: Use Charset functions to determine extention of
957 mlnet_strings file if $LANG is not set
960 5257: HTML: Let allowed_ips allow connections from IPs part
961 of IP blocklist for HTML interface only
962 5258: Add some files to src/utils/lib for later usage
964 ./src/utils/lib/levenshtein.ml
965 * from http://packages.qa.debian.org/s/syslog-ocaml.html
966 ./src/utils/lib/syslog.ml
967 ./src/utils/lib/syslog.mli
970 5256: GTK1 GUIs: Compile fix for patch 5253
971 5253: Commit: Remove spaces at end of filename on FAT partitions,
972 respect max_name_len value for all filesystems (pango)
973 5255: EDK: New client type VeryCD (compatibleclient 240)
974 5254: EDK: New default 60s for upload_timeout
975 5247: Update camlzip library to version 1.02 (Xavier Leroy)
976 - 64-bit incompatibility fixed
977 - Better support for large ZIP files (> 2 Gb)
978 5252: Update config.guess and config.sub to version 2006-07-02
979 5251: HTML: Re-implement motd_html by popular demand
980 * This patch brings motd_html back in addition to the current welcome message,
982 5250: EDK: Print High/LowID in cleartext for command "id", fix LowID display
983 5249: Remove obsolete files from src/utils/[cdk;lib] and tools/
984 5246: HTTP: Print 401 error when login was unsuccessful
987 5243: HTTP: Print 403 error for requests blocked by allowed_ips
990 5203: Swarmer: Anti-fragmentation (pango, antifrag_v7)
991 * Each file is divided into blocks saved in new option
992 * file_disk_allocation_bitmap in swarmer section of files.ini
993 * Blocksize is computed like this: file_size / 200, rounded up to full
994 megabytes, if bigger than 10MB: 10 MB are used as maximum blocksize.
995 Preallocated blocks are marked file_disk_allocation_bitmap option.
996 * Blocks already fully preallocated on disk are prefered for downloading.
997 That way one can get antifragmentation benefits without preallocating
998 too much space, specially for downloads with small chunks.
999 * If the block about to be filled with data for the first time its read/written
1000 back to disk to allocate the space.
1001 Set verbosity to "verb" to enable logging of preallocation.
1002 5242: GTK2 GUI: Remove unnecessary linefeed in console,
1003 remove some log and compiler warnings
1004 5239: GTK2 GUI: Fix result sorting,
1005 update search results instead of double display (su_blanc)
1008 5222: Improve log output when HDD is full
1009 5214: Gettext: Improve translations
1010 * added ./distrib/i18n/mlnet_strings.de_DE.utf8 for testing purposes
1011 startup messages should appear in German now, more strings have
1012 yet to be translated, help welcome for all languages.
1013 5238: Fix HDD space checks on CFS mounts
1014 5235: Lock config_files_space.tmp and delete unused file on startup
1015 5232: GUI: Fix decoding bug for Gnutella/G2/Fasttrack search results (zet)
1018 5213: Swarmer: Commit only primary downloads (pango)
1019 5212: Fix DNS lookup of localhost (pango)
1020 SIGTERM & SIGINT support for GTK2 GUI
1023 5207: Remove some obsolete options: html_mods_vd_queues, ED2K-initial_score,
1024 ED2K-max_dialog_history, ED2K-immediate_master
1025 5206: Remove Kiss DP500 support
1026 5200: BT: Do not start downloads if no usable trackers are found in file.torrent
1027 MLDonkey only supports http:// style trackers, not udp:// or dht://
1028 Deactivated http:// trackers are better marked in HTML,vd #num
1029 5202: Remove mlchat and outdated IM (instant messenger) code
1030 Remove outdated files from ./packages/windows
1031 5204: Cleanup longhelp (anhi)
1032 5205: Telnet: Fix another UTF8.length exception in search results
1035 5199: BT: Fix BT_client_uid changing between core start (orbit)
1036 -------------------------------------------------------------------------------
1038 Split Changelog, all stuff older than 2.8.0 is now in docs/ChangeLog.old:
1040 http://savannah.nongnu.org/cgi-bin/viewcvs/mldonkey/mldonkey/docs/ChangeLog.old?rev=HEAD&content-type=text/vnd.viewcvs-markup