4 All numbers mentioned here can be found as patches on
5 http://savannah.nongnu.org/patch/?group=mldonkey
7 2009/10/23: spiralvoice
9 Split Changelog, all stuff newer than 2.8.7 is now in distrib/ChangeLog
10 -------------------------------------------------------------------------------
11 2007/06/03: version 2.8.7 = tag release-2-8-7
12 5988: BT: Completely parse handshake packet of newer BT clients (thx to Berni)
13 - this patch should fix the serious performance problem with BT downloads
16 5987: GeoIP: Small cosmetical fix for loading GeoIP.dat (pango)
17 5986: Fix GC problem in bz2 code (pango)
20 5891: Disconnect clients we download from when a file is queued/paused
21 5905: Replace old DirectConnect module with new DC++ code (alffa)
22 - enable it with ./configure --enable-directconnect
23 - bzip2 support is manditory
24 - preliminary docs: http://mldonkey.sourceforge.net/DirectConnect
25 -------------------------------------------------------------------------------
26 2007/06/01: version 2.8.6 = tag release-2-8-6
27 5984: EDK: Small log updates
30 5982: Save archives used for ini files backup with rights 600 (pango)
31 5981: EDK/Swarming: Download first 9MB first for preview,
32 not 10MB to avoid downloading second chunk too early (pango)
33 5972: GeoIP: Load GeoIP.dat into RAM (pango)
36 5976: Search for autoconf261 in ./configure
39 5940: GeoIP: Reduce disc access to lower CPU usage
40 - store computed country values in client/server structures
41 - EDK: fix a bug where a firewalled client was displayed with IP 0.0.0.0
42 - new verbosity level "geo" to monitor access to GeoIP.dat
45 5961: Include compile patch for Ocaml 3.08.3
46 5956: Remove unused files src/networks/donkey/donkeyIndexer.ml*
49 Updated Mozilla protocol handler to version 2.1
50 - original source from http://www.informatik.uni-oldenburg.de/~dyna/mldonkey
53 5944: configure: Allow use of Ocaml 3.10.0, keep 3.09.3 as default
56 5897: FileTP: Support HTTP downloads of files > 1GB
57 5815: Unix32: Override system umask to force correct function
58 of option create_file_mode (pango)
59 5912: Extend patch 5817: "Code updates for Ocaml 3.10.0beta compatibility"
61 5910: EDK: Revoke upload slot when client asks for blocks positioned after EOF
62 5908: Fix commit when incoming filesystem allows more than 16M chars
63 5906: Telnet/BT: Display clients country code without HTML in vd <num>
66 5903: commonPictures: Update favicon.ico (meto)
67 5902: Updated italian translation for mldonkey (surricani)
68 5901: Updated german translation for mldonkey
69 - taken from german wiki: http://www.mldonkey.org/wiki/index.php/Mlnet_strings
70 5900: Updated italian translation for mldonkey (surricani)
73 5898: Updated italian translation for mldonkey (surricani)
76 5892: Updated italian translation for mldonkey (surricani)
79 5888: Partial italian translation for mldonkey (surricani)
80 stored in ./distrib/i18n/mlnet_strings.it_IT.UTF-8
81 5718: Improve command "nu"
82 - close all upload slots
83 - do not give an upload slot to clients in pending slot
84 - restrict command "nu" to admin users
85 -------------------------------------------------------------------------------
86 2007/04/23: version 2.8.5 = tag release-2-8-5
87 5855: Increase Unix32.max_cache_size, fix max_opened_connections check
91 5878: HTML: Fix preview in vd <num> broken by patch #5866
94 5876: HTML: Send mime-type video/mpeg for file extension .vob
97 5857: EDK: Remove upload compression (patch #5665) due to ineffective caching
98 5875: Swarmer: Some cosmetic changes (pango)
99 5856: EDK: Set TCP backlog to max_upload_slots for donkey_port socket
100 5869: EDK/Swarmer: Try harder to read corrupt files.ini
101 - reset chunk table to missing after re-creating a missing temp file
102 - discard swarmers without files entry in files.ini instead of stopping
103 - check that partial hashes file_md4s match with file_md4 when reading files.ini
104 5870: Updated distrib/mldonkey_submit, it now uses command dllink instead of dd,
105 it also supports http and sig2dat links (atordo)
108 5866: HTML: fix third button row to also successful act within frames (schlumpf)
111 5867: EDK: Show country code/flags for indirect clients
112 5862: BT: Informative GUI console messages after sending a .torrent file to GUI
113 5859: HTML: Support sending files from $MLDONKEY_DIR/html_themes/
116 5861: HTML: Fix errors reported by w3.org validator in html_header_mods0
117 5860: HTML: fix broken refresh on Opera/Safari (schlumpf)
120 5854: Set share_scan_interval = 0 to disable scanning of shared directories
121 5853: New option defaults
122 - download_sample_size 100, 10 is too low, download rate is computed wrong
123 - ED2K-propagate_sources false, this activates outdated MLDonkey-style source
124 exchange, MLDonkey supports eMule-style source exchange which is not affected
126 - ED2K-update_server_list_server should be false, there are lots of fake servers
127 out there, trust only servers from trusted server lists. For more details read
128 http://mldonkey.sourceforge.net/ServerList#Fake_search_results
129 - ED2K-upload_full_chunks should be true to reflect the same default eMule uses
130 - ED2K-upload_compression_table_size should not be smaller than max_upload_slots
133 5821: New variables for file_completed_cmd:
134 file_group_cnt, file_group_user, file_group_dir
135 5849: EDK: Report correct short versions for Windows clients
138 5847: BT: Fix exceptions when handling BT clients as friends
139 5845: Do not reverse order in files.ini after restart (pango)
140 5844: HTML: Keep totals line when sorting statistics tables (schlumpf)
141 -------------------------------------------------------------------------------
142 2007/04/01: version 2.8.4 = tag release-2-8-4
143 5840: Some small stuff (logging, code improvements)
144 5839: IP block: Scan all files inside a .zip file when loading
145 a blocklist, use the first valid file
146 5831: BT: New option BT-tracker_retries
149 5819: MinGW: Fix charsetstubs.c compile with latest MinGW
152 5817: Code updates for Ocaml 3.10.0beta compatibility
153 - to use Ocaml 3.10 add ./configure option --enable-ocamlver=3.10
154 - MLDonkey will accept the new Ocaml version without this option when
155 the final version of Ocaml 3.10 is released and proven to be working
156 - GTK1 oldgui does currently not compile with Ocaml 3.10 code
157 - lablgtk1 & lablgtk2 compile with Ocaml 3.10, but some MLDonkey code
158 still needs fixing, GTK1 newgui and GTK2 gui compile with Ocaml 3.10
159 - parts of the patch by pango
162 5813: Options: Use original file rights in tar.gz backup,
163 save backups with rights 600
166 5807: Implement new command "man" to display command help
169 5806: Update GNU config.guess and config.sub to version 2007/01
170 5775: http_client: Fix loading URLs with ()' (orbit)
171 5781: web_infos: Load local file if remote file can not be accessed
173 5802: Telnet: Support non-ascii input (Hung-Te Lin)
176 Updated Mozilla protocol handler to version 2.0
177 (re-committed after data loss due to Savannah crash on 2007/03/12)
180 5799: Flags: Added Aland Islands, Guernsey and Jersey,
181 fixed debug_pictures command
182 5797: Remove unused source code in src/applets/*
183 5775: removed, it breaks BT downloads
184 5775: HTML: Fix url parsing for URLs with ()' (orbit)
185 5774: BT: fix upload managment (orbit)
186 5786: HTML: small javascript search improve (orbit)
189 5787: HTML/Geoip: Show country flags
190 - new option html_flags to disable display of flags
191 - favicon.ico now built-in
192 - fix sorting bug in costats (thx to orbit)
195 5784: Gd: Implement binding for function gdImageFilledArc
196 5773: Geoip: Country-based up-/download statistics
197 - new ini file statistics.ini, to be used later for all statistics
198 - new command "costats", accepts parameters:
199 without parameter it displays all countries where data was transfered to
200 parameter "all" displays all seen countries, countries where MLDonkey never
201 saw a client are not part of the statistics data
202 regular expressions can be used for country names/codes and continents,
203 like "costats *aus*" (Austria and Australia), "costats *europe* *africa*"
204 - new command "countries" to print country database
205 - new command "reset_costats" to reset country statistics
206 - mem_stats support for modules CommonStats & Geoip
207 - updated country database based on GeoIP 1.4.2 C-library
210 5765: Change hard-coded maximum value for client_buffer_size
211 - default stays at 500.000
212 - for high-volume links raise this value to 1.000.000 or higher
213 5767: HTML: Improve bw_stats
214 5768: New default for option messages_filter (thx to atordo)
215 5766: Windows/Unicode: Fix broken get_info function for non-ascii filenames
216 5782: Improve CommonNetwork.network_display_stats function
219 5757: Some improvements for byte-code build
220 - "make utils" now builds byte-code if needed
221 - new build targets: mlnet.byte.static, release.mlnet.byte.static
222 - print configure infos when byte-code is to be compiled
223 - buildinfo prints the binary name if not "mlnet" or "mlnet.static"
224 - remove some unneeded variables from configure
225 5759: OV/KAD: improve stats, remove obsolete options, save bandwidth (bogeyman)
228 5754: mld_hash: Compute AICH hashes (thx to pango)
229 - parameter hash takes new option: aich to compute eMule AICH hashes
230 - new parameter partial_zone: Display hashing of zones (subparts of chunks)
231 - new parameter check_keep, keep files after checking functions (-check) for later testing
232 - parameter check, option filesize is now Int64 and in bytes
233 5752: Fix core hanging on ARM CPUs
234 5750: EDK: New option upload_compression_ext_exclude (thx to pango)
235 - space-separated list of file extensions which are not compressed when uploaded
238 5753: Multiuser: New variable $USER_MAIL for file_completed_cmd
239 5751: Improve startup log messages, remove unused code, optimize Date code
240 5749: BT: recognize more BT client types (orbit)
241 5748: KAD/OV: Limit searches for sources (bogeyman)
244 5738: Remove obsolete multicast files (orbit)
245 5743: BT: Show shared torrents in upload list after commit (xergius)
246 5744: EDK: Fix SecureUserIdent between machines with different endianness
247 -------------------------------------------------------------------------------
248 2007/02/11: version 2.8.3 = tag release-2-8-3
249 5734: Update camlzip to version 1.03 (thx to orbit for reporting)
250 5735: BT: Fix make_torrents to sort dictionary entries alphabetically
251 Bittornado did not read MLDonkey-made torrents (amadeo)
252 5737: MinGW: Work-around missing Unix.fstat
253 - fixes failed removal of torrent files from torrents/[incoming|downloads]
256 5719: Unix2: Fix copying files > 1GB (1073741823 bytes),
257 bug was introduced by patch 5589 after release of 2.8.2
260 5724: http_client: Retry GET request if HEAD request returns http error 400
261 5723: HTML: print tracker errors in html table at 'vd <num>' (Schlumpf)
262 5722: HTML: use Printf2.html_mods_cntr () for table row classes (Schlumpf)
263 5720: Swarmer: block choice algorithm 2 from patch 5141 is new default
264 - remove swarming_block_selection_algorithm = 1
265 because it finishes chunks too slowly
266 - remove swarming_block_selection_algorithm = 3 from TripleM
267 because it uses too much CPU power.
268 - remove option swarming_block_selection_algorithm, hard-coded default is now 2
269 - remove option block_switching, hard-coded default is now true
272 5717: Optimize function print_command_result
275 5715: Improve porttest (Schlumpf)
276 - use 'porttest' command to start the network porttest the first time,
277 after this to see the results
278 - new command 'force_porttest' to force an new porttest
279 - improve html porttest output and make it also available in telnet
280 5716: EDK: Do not send share list to servers with state Connecting
281 5713: HTML: show messages link in vd clickable (Schlumpf)
284 5712: Multiuser: New verbosity "com" to log commands by non-admin users
285 5711: Multiuser: Block commands preferred, bs, bp, port for non-admin users
286 5642: Swarmer: swarming_block_selection_algorithm = 3 (TripleM)
287 - this new algorithm select always the rarest choice, if average availability
288 is below 5, or one choice_availability is below average availability
289 - added a hashtable to store blockmaps of uploaders for a given swarmer
290 - long term memory usage has to be observed
291 5710: Swarmer: Fix chunk propagation (pango)
294 5693: "voo changed" prints changed options only, useful for support (Schlumpf)
295 5698: EDK: fix display of porttest result images (Schlumpf)
296 5699: Multiuser: Fix wrong file path (user_commit_dir) in notification mail
297 5695: Command "set": better error text if option does not exist
298 5694: Fix small typo in buildinfo
301 5673: New core start parameter: -useradd "user pass", needed for Debian package
302 5678: New options for command force_web_infos: kind/URL (thx to Schlumpf)
305 5691: EDK: Recognize compatibleclient 60: IMPmule (imp-project.net)
306 5689: EDK: Log downloading file name when client disconnects
307 5684: GUI: Fix build of mlprogress (Alt linux)
308 5677: Options: New concept of option types, fix non-admin Sancho http preview
311 5665: EDK: Support compressed upload, implement file read cache (TripleM)
313 - ED2K_upload_compression to enable compressed upload, default true
314 - ED2K_upload_compression_threshold, default 2000 bytes
315 Size difference in bytes between one zone (180 kBytes) and its compressed
316 counterpart, which has to occure, to send compressed parts instead of plain.
317 - ED2K_upload_compression_level, Zlib compression level, default 9
318 - ED2K_upload_compression_table_size, default 20
319 5669: HTML: Add HTML headers to prohibit browser-side caching (Schlumpf)
320 5671: Configure: Fix question whether to compile lablgtk, same as patch 5401
321 5675: Updated Mozilla protocol handler to version 1.10
324 5666: New option upload_complete_chunks (TripleM)
325 - default false, if true, each client is allowed to complete only one chunk,
326 independent, if it is empty or partial. this setting overrides
327 upload_full_chunks and dynamic_upload_lifetime, but is, as a failsafe,
328 limited by upload_lifetime (should be set reasonable high)
329 5664: EDK: Avoid uploading data more than due
330 to eMules rotating block requests (pango)
331 5596: EDK: New option upload_full_chunks (thx to TripleM)
332 - If the new option upload_full_chunks is set to true, each client is
333 allowed to receive one chunk, this setting overrides upload_lifetime.
334 Well, not exactly one chunk. eMule has this code in opcode.h:
335 #define SESSIONMAXTRANS (PARTSIZE+20*1024) //
336 "Try to send complete chunks" always sends this amount of data
337 MLdonkey now does the same, if upload_full_chunks is true and client A got
338 9728000+20*1024 bytes during the current session its upload slot will be
339 revoked unless pending slots are empty.
340 5619: EDK: Print network specific infos in command "vc <num>",
341 remove unneeded fields from client structures
342 5627: commonHasher: fix wrong arg types from several functions (Schlumpf)
343 5626: MinGW: fix missing declarations and wrong pointer
344 initialization in stubs_c.c (Schlumpf)
347 5599: EDK: Support for files >4GB (TripleM, pango)
348 - this patch does not include >4GB support for Kademlia
349 5660: Swarming: Enable wrongly disabled select block memoization (pango)
350 5659: GD: Fix wrong months display (skeeve)
353 5617: New option share_scan_interval
354 - how often (in minutes) should MLDonkey scan all shared directories
355 for new/removed files, default one minute
356 - on slow machines raise the interval to a higher value to reduce CPU load
357 - to force a re-scan of shared directories use command "reshare"
360 5613: Another longhelp cleanup (anhi)
361 5615: EDK: Parse more fields from server.met files
364 5612: EDK: OP_HELLO tag 0x75, print os_info in logfile
367 5602: HTML: Display share status in upstats
368 5609: New field type Field_KNOWN, EDK: recognize more HELLO/EmuleInfo tags
369 5610: CommonSources: Cleanups and reformatting the code (pango)
372 5608: Multiuser, chgrp: Prevent change of file_group to None
373 if the user is not file_owner
374 5607: Multiuser, chown: Change file_group to user_default_group
375 if the new user is not member of file_group
376 5606: Introduce display of session transfer values
377 - new columns for session up-/download
378 - send session values to GUIs
381 5605: HTML: Fix search list display when html_checkbox_search_file_list = true
384 5598: Remove use of deprecated sort module, remove unused sort2.ml* (pango)
385 5589: New option create_file_mode,
386 rename create_dir_mask to create_dir_mode (pango)
387 5595: EDK: Fully parse emule_miscoptions1/2
388 5594: EDK: If update_server_list_client true, add yet unknown server
390 -------------------------------------------------------------------------------
391 2006/11/29 version 2.8.2 = tag release-2-8-2
392 5597: GD: New option html_mods_vd_gfx_h_intervall
393 (compute values for hourly graph every x minutes) (skeeve)
396 5591: EDK: Fix small file search result parsing
399 5590: EDK: .gz & .bz2 support for command "servers"
400 5581: EDK: Improve server logins, send fewer data, minor improvements
401 - Copied eMule behaviour:
402 - send fewer data to server during login, support server capability "newtags",
403 same opcodes as in eMule are used
404 - UDP ping servers once per 4,5h - (random of 1s-1h)
405 - UDP server statistic request during every second UDP ping
406 (~9h, not once per hour like before)
407 - request serverlist from server only when ED2K_update_server_list_server true
408 - ping one server per 5s
409 - remove servers after 10 unsuccessful UDP pings
410 - save challenge values sent with UDP server statistic and description request
411 and dismiss answers containing wrong challenge
412 - New functions, restructurings:
413 - new server status "Server full"
414 - support new tag emule_miscoptions2 (empty atm.)
415 - remove server descriptions from servers.ini
416 - clean donkeyTypes.server definitions
417 5588: Cleanup commonNetwork (pango)
418 5582: EDK: Improve CryptoPP logging (Schlumpf)
419 5584: EDK: Remove removed servers from walker server lists
420 5585: EDK: New parameter "all" for command "x" to disconnect all conn. servers
421 5586: BT: Recognize Bitrocket clients
424 5579: Remove BasicSocket.[mini|maxi], replace them with Pervasives functions
425 - small fix for DonkeyOptions.max_allowed_connected_servers
426 5578: Remove unused files
427 - src/utils/net/tcpClientSocket.ml
428 - src/utils/net/tcpClientSocket.mli
429 - src/utils/net/tcpSocket.mli
430 5577: EDK: Send correct SUI tags
431 - sometimes MLDonkey sent SUI=true tag when CryptoPP was not linked
434 5568: EDK: Support CIDR and IP ranges in server_black_list (pango)
435 5574: allowed_ips: Fix list usage when 0.0.0.0/0 is part of the list (pango)
436 5570: Some log messages in gettext module (Schlumpf)
437 5569: HTML: Fix display bug in server list after js popups
438 introduced by patch #5549 (Schlumpf)
439 5564: HTML: Remove non-working option use_html_frames (Schlumpf)
440 5563: EDK: Fix broken log message when master server changes (Schlumpf)
443 5556: web_infos: new option rss_preprocessor used for fixing broken RSS feeds,
444 safer process spawning for command "!" (pango)
445 - broken feeds like http://thepiratebay.org/rss.php?cat=D601 can now be parsed
446 directly using (for example) xmllint, if a feed can not be read be MLDonkey
447 its piped through rss_preprocessor and read again
448 5560: EDK: Parse some more server.met fields, log unknown server tags
451 5424: web_infos/rss: shell:// type url
452 5549: EDK: Parse all data from server.met, new HTML javascript popup
453 5553: EDK/OV/KAD: small updates (bogeyman)
454 - EDK: log unknown client tags with verbosity mct
455 - OV/KAD: ignore OvernetPeerNotFound and log number of peers every
457 5551: web_infos: Fix mtime detection, old files were not updated
458 5550: debug_fileinfo: Print [a|c|m]time values
459 5530: GD: Improve graph output (skeeve, Schlumpf)
460 - html_mods_vd_gfx_h_grid_variable
461 "Stretch hourly until at program start", default true
462 - html_mods_vd_gfx_h_grid_time
463 "Max hours on time scale per grid (0 = no limit)", default 0
464 - html_mods_vd_gfx_subgrid
465 "Number of shown subgrids on graph (0 = no subgrids)", default 0
468 5548: New search parameters: "-and", "-or", "-not", removed "-without"
470 5546: Some sharing updates
471 - solved bug 10957, updating the prio of an already shared dir is now possible
472 - fix bug where missing shared dirs with strategy incoming_* where not recreated
473 - remove "network = []" from downloads.ini, currently not supported
474 - created workaround to fix bug on MinGW: no files were shared. Introduced by
475 patch 5475, but source of problem is Ocaml bug 4159
476 5547: HTML: Fix unicode display in vd & upstats javascript popups
479 5545: EDK: Do not show empty server message lines in GUI
480 5509: Common: Merge file_print functions,
481 BT: print BT-specific source infos in Telnet (thx to jave)
482 5544: Clean up code to avoid otags warnings (pango)
483 5543: Improve exception handling, fix some indentions (pango)
484 5542: CommonSources: Work-around division-by-zero bug in Ocaml
485 on Alpha platform (pango)
488 5526: Multiuser: Internal restructuring, new commands
489 - from ftp://ftp.berlios.de/pub/mldonkey/pango/userdb-cleanups_v2.patch (pango)
490 - create commonUserDb.mli to protect userdb data from other modules
492 - replace strings in commonFile with multiuser commonTypes.userdb/groupdb
493 - implement security checks when core starts
494 - user "admin" must exist
495 - group "mldonkey" must exist and must have admin status
496 - update HTML interface, command "users"
497 - create link to remove a group from a user
498 - create link to change group admin status
499 - new column group members
500 - Telnet: Show all data in command "users"
501 - do not allow removal of users or groups with downloads,
502 groups with members, user "admin" and group "mldonkey"
503 - filter files shown with command "downloaders"
504 - fixed bug where wrong group list was displayed in HTML, vd #file_num
505 - Display user and groups columns
506 new options html_mods_vd_user & html_mods_vd_group to en-/disable display in HTML, vd
507 - Javascript popups show User:Group infos
509 - implement new commands
510 - usergroupadd <user> <group> : add a group to a mldonkey user
511 - usergroupdel user> <group> : remove a group from a mldonkey user
512 - userdgroup <user> <group|None> : change user default group
513 - groupdel <group> : remove an unused mldonkey group
514 - groupadmin <group> <true|false> : change group admin status
515 - Restrict commands to admin users:
521 5527: mlguistarter: print correct syntax (fixes Debian bug #396754)
524 5481: Overnet: Small updates
525 - do not print opcode 18 (OvernetNoResult) as unknown message
526 - parse bcp type bcp://xxxxxxxxxxxxxxxxxxxxxxxxxxx:ip:tcpport:udpport
527 - print debug log message when a new source was added
528 5513: HTML: Let webinterface work in a HTML frame (ported from Knockers Mulus)
529 - third button row does not work yet, patches welcome
530 5521: BT: Fix non-working EDK upload when BT is enabled,
531 introduced by patch 5461
534 5508: OV/KAD eMule style search and some small fixes (bogeyman)
535 5486: UDP bandwidth monitor fix (bogeyman)
536 5505: EDK: Support aMule/Hydranode style OS_INFO tag
539 5488: Multiuser: New commands
540 - groups -> displays groups of the logged-in user
541 - dgroup -> displays default group of the logged-in user
542 - restrict command "unshare" to admin users
545 5475: Multiuser: Implement user_commit_dir
546 - directories with strategy incoming_files are shared recursively now
547 - support several directories with incoming_* strategies, use the
548 first one with enough space to commit the finished file
551 5499: Configure: find camlp4 in local, fix patch 5479 (dunk)
554 5477: BT: Add downloads to share list after core restart
557 5474: updated bw_toggle
558 - fix cosmetic bug, wrong values were displayed
559 as a result if option_hook changed values
560 5489: HTML: Improve serverlist display (Schlumpf)
561 5487: Update URLs, change mldonkey.net to mldonkey.org
562 5485: HTML: Print sharing strategies in command "shares"
563 5461: Release slot, fix missing filenames in upstats
564 - Each downloading file can be set to status "Release", this can
565 be done by clicking the "R" column in HTML, Transfers or by
566 using the new "release <file_num>" command to toggle the state.
567 - A new option max_release_slots exists, default 20% of the default
568 5 max_upload_slots. This means 1 upload slot is available per default
569 and granted for files with status "Release" when requested.
570 - Show filenames in pending upload slots list
571 5484: Fix DNS test, test other domains besides www.mldonkey.net
574 5474: New command bw_toggle (ported from Knockers Mulus client)
575 - two new options: max_hard_upload_rate_2 and max_hard_download_rate_2
576 - new command bw_toggle, quickly switch between two bandwidth options
577 5480: Update Mozilla protocol handler, cleanup docs in distrib/
578 5479: Configure: Force presence of camlp4
579 5478: Support gdlib-config --static-libs function (new on Debian Etch)
580 5476: Urladd: Change default period to 0 (load file only when core starts)
583 5473: Log: Redirect CryptoPP messages to MLDonkey logfile (Schlumpf)
584 5472: Urladd: New optional parameter period (in hours) (thx to Schlumpf)
585 5471: HTML: New colums for pending slots list: SUI, GeoIP, Filename
586 5470: Options: New type percent_option, values are bound to be >= 0 and <= 100
587 5469: HTML: Implement 404 error page for unknown URLs
590 5419: EDK: Re-implement titanesel.ws links - service is up again (thx to sk38)
593 5458: OV/KAD: tweak and bugfix the search (bogeyman)
596 5454: OV/KAD: Block blocked ips + small Overnet updates (bogeyman)
597 5451: HTML: clickable new messages indicator (jave)
600 5428: HTML: Fix style sheet errors (rwruck)
601 5446: EDK: Small update for EDK publish patch 5430
602 - new option max_published_files
603 maximum number of files published to servers per minute, eMule default 200
604 - bug fix for patch 5430, publish also to non-preferred servers
607 5430: EDK: Improve file publishing
608 - publish no more than 200 files/minute to avoid server-side blacklisting,
609 eMule uses the same limit,
610 least published files are published first (thx to pango)
611 - respect server hard_limit, never publish more files to servers
612 - HTML: in server list display number of files published by server, by clicking
613 on this number the list of files is displayed (new command server_shares num)
614 - HTML: diplay master server status, only master server are used for publishing
615 - HTML: in upstats display number of server the file was published to,
616 also display server name + IP in javascript popup
617 - bug fix: properly update DonkeyGlobals.master_server to be used in
618 DonkeyClient.read_first_message, this is used when replying to non-Overnet
619 clients so they know to which server MLdonkey is connected to,
620 - remove development option become_master_delay
621 5445: Self-test charset conversion, disable conversion if test fails
622 5444: BT: Correctly display client connected time,
623 also allow correct upload speed calculation (tradie)
624 5443: BT: do not allow connections with ourselves (tradie)
627 5442: BT: Verbose error messages when torrent is sent from GUI,
628 BT-multiuser: Protect command seeded_torrents
629 5441: BT: Re-enable all trackers when file is resumed
630 5440: HTML: Strip CR from multiline dllink input to fix FileTP filenames
633 5439: Increase required ocaml version to 3.09.3 (schlumpf),
634 remove old TYPE_FORMAT stuff needed for Ocaml < 3.06 (pango)
637 5297: In addition to previous patch 5297 force conversion of allowed_ips to
638 IP blocklist when $MLDONKEY_DIR points to an existing directory
639 and ini files are created for the first time
640 5429: Fix compile bug in Ocaml 3.08.3 (thx to eike for reporting)
643 5404: New command porttest, support for eMule- and Azureus-style porttest
644 (thx to pango for Azureus result parsing)
645 5421: HTML: Add "Users" to options frame (unease)
646 5429: New common lprintf_file_nl function
647 5432: Updates and fixes for the Win resource file (schlumpf)
650 5407: BT: Improve handling of tracker error messages
651 - print additional information in telnet, vd #num already present in HTML
652 - show tracker errors in Telnet and HTML popups over tracker info lines
653 - pause torrents with no valid trackers left
654 5336: EDK: Fix lowid support (krissn)
655 5427: EDK: Increase hash speed when threads are available (pango)
658 5426: CommonSources: Reduce CPU load when refilling queues
659 of many non-BT downloads (pango)
660 5425: FileTP: Support options file_started_cmd and pause_new_downloads
661 5423: Print warning for empty admin password only if allowed_ips was altered
662 5422: Command "sources": Display only downloading files
665 5405: BT: Use field "encoding" from .torrent to convert strings to UTF-8
666 5419: EDK: Remove titanesel.ws links
667 5418: Gnutella/G2/Fasttrack: Support client_bind_addr
668 5417: Edonkey comments: Telnet support, UTF-8 output in HTML
669 5416: Makefile.in: New variable $DEVFLAGSOPT for .cmx files (jave)
670 5415: New command option: rem disc - remove all disconnected servers
673 5414: Edonkey comments, update gui prot, some bt peer ids (zet)
674 - Reimplement edonkey file comments with ratings (ro)
675 (fixes exploitable DOS introduced in patch #5371)
676 - Add options "comments_filter", "max_comments_per_file", "max_comment_length"
677 - GUI protocol updated for comments, stats, libmagic, users/groups
678 - BT: Identify some more peer ids, as well as the reserved bits
679 - Fix some html code and other bugs
683 5411: Portinfo: Rename gift_port to gift_port GUI
686 5406: Multiuser: Small bug fixed in recover_temp (mu2.patch)
687 5406: Main multiuser patch, see docs/multiuser.txt for details
688 thx to jave, pango, zet and many other people who have helped
689 to make this work possible
690 - this patch is experimental, if it breaks, you can keep the pieces;-)
691 - multigroup_usercommit.patch and multigroup_su.patch are not included
692 - this patch is still not finished, the To-Do list in docs/multiuser.txt
693 is still long, also GUI protocol updates have to be implemented.
694 To manage users, groups and files, its best to use the HTML interface,
695 multiuser commands can also be used in Telnet interface.
696 -------------------------------------------------------------------------------
697 2006/09/17 version 2.8.1 = tag release-2-8-1
698 5401: Fix question whether to compile Ocaml with some bash versions (pango)
699 5400: Allow use of Ocaml 3.09.3, keep 3.09.2 as default
700 5399: EDK, Telnet: Fix and clarify message when starting a search (schlotter)
703 5397: EDK: Disable broken option emulate_sparsefiles
704 5395: Improve max_hard_up/download_rate computation code (pango)
705 5380: BT: Add file_num to certain log entries (jave)
706 5392: fix typos in help texts (schlotter)
707 5394: Fix max_hard_up/download_rate computation
708 - crashed on Windows when max_hard_upload_rate = 0
709 - when max_hard_upload_rate = 0 max_hard_download_rate was badly computed
710 -------------------------------------------------------------------------------
711 2006/09/14 version 2.8.0 = tag release-2-8-0
712 5390: Distinguish between charsets zh_cn and zh_tw
713 5389: Fix verify_chunks (pango)
714 5388: Small log update
717 5386: Telnet: Longhelp cleanup
718 5385: Command mem_stats: verbosity 0 is default now
719 5360: patch removed, it does not fix the bug
720 5383: BT: Detect new client types (thx to pango)
721 - fix Mainline detection for two-digit version numbers
722 - fix Tornado detection
723 - fix broken Bits on wheels detection
725 - detect Bitspirit v3
726 5384: BT: Fix serious bug causing bad performance introduced
727 by abstract bitmaps patch (pango)
730 5369: Portinfo: fix String.length problems in Telnet (5369_2.patch)
733 5294: HTML: Fix sources display for Gnutella/G2/Fasttrack/Filetp
734 broken by patch #5294 (thx to z)
735 5368: Remove unused code from md5_c.c & os_stubs.h
736 5371: EDK: Support for eMule comments (read-only)
737 - new option html_mods_vd_comments to enable column in HTML, vd
738 - comments are shown in javascript popups and vd #num
739 5369: New command portinfo, display used ports during start-up
742 5370: Correct option_versions defaults, remove commented EDK code
745 5367: EDK: Use random default for ED2K_port instead of fixed 4662
746 - existing ini files are never changed
747 - after donkey.ini is created the value is not changed automatically
748 5366: HTML: Remove obsolete EDK history links
749 5365: Accept FTP URLs on command line
750 5364: Update options descriptions, remove obsolete options, clean log
751 5363: Limit max_hard_download_rate when max_hard_upload_rate < 10
752 - upload >= 10 -> unlimited download
753 - upload < 10 > 3 -> download limited to upload * 4
754 - upload < 4 -> download limited to upload * 3
757 5361: Faster filenames_variability computation (pango)
758 5315: EDK: Change some internal server data to option values
759 5354: New option: max_filenames, maximum number of different filenames
760 5355: Move buffer_writes_delay timer from Donkey to Global module
761 5344: Small code optimization for stderr warnings (thx to pango)
764 5341: New command: filenames_variability
765 - compute differences between the filenames of a file to detect fakes
766 the higher the value, the more likely its a fake
767 5335: Fix small bugs in "!" command (execute shell commands)
768 5334: HTML: Display edk2 links in search results
769 5333: Clean logging (Swarmer, Fasttrack, Gnutella)
770 5332: New command option: rem blocked - remove all IP blocked servers
771 5330: Configure: Check MinGW version, at least 3.10 is needed (Schlumpf)
772 5329: some configure improvements and cleanups (Schlumpf)
775 5320: some html_mods tables & css improvements (Schlumpf)
776 5322: Use CXXFLAGS present at configure when compiling (smimram)
779 5319: Configure: New option --enable-minimum
780 - Compile MLDonkey with Donkey only, without gd, magic, bzip2, sui
781 5304: cleanup donkeyOptions.ml (whitespace, tabs, comments) (Schlumpf)
782 5303: cleanup btOptions.ml (whitespace, tabs, comments) (Schlumpf)
783 5302: cleanup commonOptions.ml (whitespace, tabs, comments) (Schlumpf)
784 5318: Fix wrong buildinfo configure args with autoconf 2.60
785 5317: Compile fix for GTK1 newgui in addition to patch 5310
788 5309: Increase reserved number of FDs from 20 to 40 for dynamic libs
789 5310: EDK: Request filelist from friends only when requested,
790 disable automatic download (pango)
791 5312: GTK2 GUI: Fix histograms (su_blanc)
792 5313: CryptoPP: Check for g++ capabilities
795 5308: CryptoPP: Fix infinite loop when re-creating private key fails
796 5307: CryptoPP: Deactivate compiler option -momit-leaf-frame-pointer
797 5300: Fix iconv compile bug on Eisfair
798 5299: Support magicdb in $MLDONKEY_DIR/magic/magic if present
799 this location is used in addition to the defaults of libmagic
800 5277: MinGW: use new gettimeofday() from mingw-runtime-3.10 (Schlumpf)
803 5298: Some internal changes moved from multiuser patch to CVS
804 5285: GUI: Self-test en-/decoding only down to protocol 24 to solve
805 crash when system date is wrong
806 5297: Force conversion of allowed_ips to IP blocklist when $MLDONKEY_DIR
807 and ini files are created for the first time
808 5296: Telnet: Fix filesize display for 1kb, 1mb, 1gb values
811 5295: Hard-coded minimum of 600s for min_reask_delay
814 5294: Clean logging, small "if .. then true else false" function rewrites
817 5288: EDK: Improve log when sharing is prevented due to inconsistent filesizes
818 5287: Swarmer: Remove obsolete option file_bitmap from files.ini
819 5286: Swarmer: (pango WIP10a)
820 Fix commit of merged downloads + internal optimizations
821 5283: EDK: Fix IP display in GUIs for some firewalled clients
824 5281: BT: Allow startbt to use URLs without extension ".tor" and ".torrent"
827 5275: Change functions called when SIGHUP is sent
828 - BT: stop_all_bt is called to improve disconnect recognition
829 - instead of closing all sockets now all clients+servers are disconnected,
830 GUIs will not be disconnected anymore
831 5276: web_infos, part II: Update server.met URL
832 - fix defaults and server list URL
835 5276: web_infos: Update server.met URL
836 - http://www.jd2k.com/server.met does not exist anymore,
837 now using http://www.gruk.org/server.met.gz again
840 5272: Fix OS-detection bug in Unicode conversion when committing files
841 - should solve file naming problems on non-UTF8 systems
844 5269: Fix maximum filename length recognition on Mac OS X
847 5268: Swarmer: Fix Division_by_zero when starting downloads
848 of files smaller than 200 bytes
851 5266: EDK: New default 600s for upload_timeout, 60s was too short
852 5265: EDK: New option keep_sources, false to disable use of file_sources.ini
853 5264: allowed_ips: Support CIDR address/mask format and IP ranges (pango)
854 * old syntax is converted to CIDR format:
855 - 192.168.000.255 -> 192.168.000.000/24
856 - 192.168.255.255 -> 192.168.000.000/16
857 - 192.255.255.255 -> 192.000.000.000/8
858 - 255.255.255.255 -> 000.000.000.000/0
859 * new possible syntax, to calculate: http://www.subnet-calculator.com/cidr.php
860 - CIDR, like 192.168.0.106/30 (192.168.0.104 - 192.168.0.107)
861 - IP ranges, like 192.168.1.123 - 192.168.1.133
864 5262: Small compile patch for Mac OS X 10.2.8 (Jaguar), small log fix
865 5260: Enable logging to syslog, update syslog.ml to version 1.3
866 * New option log_to_syslog, default false
867 Post log messages to syslog. This setting is independent of log_file
868 and its associated commands, therefore close_log does not stop log to syslog.
869 Its therefore possible to log to syslog and log_file at the same time.
870 5261: MinGW: Fix compile bug with mingw-runtime-3.10
871 5259: Use Charset functions to determine extention of
872 mlnet_strings file if $LANG is not set
875 5257: HTML: Let allowed_ips allow connections from IPs part
876 of IP blocklist for HTML interface only
877 5258: Add some files to src/utils/lib for later usage
879 ./src/utils/lib/levenshtein.ml
880 * from http://packages.qa.debian.org/s/syslog-ocaml.html
881 ./src/utils/lib/syslog.ml
882 ./src/utils/lib/syslog.mli
885 5256: GTK1 GUIs: Compile fix for patch 5253
886 5253: Commit: Remove spaces at end of filename on FAT partitions,
887 respect max_name_len value for all filesystems (pango)
888 5255: EDK: New client type VeryCD (compatibleclient 240)
889 5254: EDK: New default 60s for upload_timeout
890 5247: Update camlzip library to version 1.02 (Xavier Leroy)
891 - 64-bit incompatibility fixed
892 - Better support for large ZIP files (> 2 Gb)
893 5252: Update config.guess and config.sub to version 2006-07-02
894 5251: HTML: Re-implement motd_html by popular demand
895 * This patch brings motd_html back in addition to the current welcome message,
897 5250: EDK: Print High/LowID in cleartext for command "id", fix LowID display
898 5249: Remove obsolete files from src/utils/[cdk;lib] and tools/
899 5246: HTTP: Print 401 error when login was unsuccessful
902 5243: HTTP: Print 403 error for requests blocked by allowed_ips
905 5203: Swarmer: Anti-fragmentation (pango, antifrag_v7)
906 * Each file is divided into blocks saved in new option
907 * file_disk_allocation_bitmap in swarmer section of files.ini
908 * Blocksize is computed like this: file_size / 200, rounded up to full
909 megabytes, if bigger than 10MB: 10 MB are used as maximum blocksize.
910 Preallocated blocks are marked file_disk_allocation_bitmap option.
911 * Blocks already fully preallocated on disk are preferred for downloading.
912 That way one can get antifragmentation benefits without preallocating
913 too much space, specially for downloads with small chunks.
914 * If the block about to be filled with data for the first time its read/written
915 back to disk to allocate the space.
916 Set verbosity to "verb" to enable logging of preallocation.
917 5242: GTK2 GUI: Remove unnecessary linefeed in console,
918 remove some log and compiler warnings
919 5239: GTK2 GUI: Fix result sorting,
920 update search results instead of double display (su_blanc)
923 5222: Improve log output when HDD is full
924 5214: Gettext: Improve translations
925 * added ./distrib/i18n/mlnet_strings.de_DE.utf8 for testing purposes
926 startup messages should appear in German now, more strings have
927 yet to be translated, help welcome for all languages.
928 5238: Fix HDD space checks on CFS mounts
929 5235: Lock config_files_space.tmp and delete unused file on startup
930 5232: GUI: Fix decoding bug for Gnutella/G2/Fasttrack search results (zet)
933 5213: Swarmer: Commit only primary downloads (pango)
934 5212: Fix DNS lookup of localhost (pango)
935 SIGTERM & SIGINT support for GTK2 GUI
938 5207: Remove some obsolete options: html_mods_vd_queues, ED2K-initial_score,
939 ED2K-max_dialog_history, ED2K-immediate_master
940 5206: Remove Kiss DP500 support
941 5200: BT: Do not start downloads if no usable trackers are found in file.torrent
942 MLDonkey only supports http:// style trackers, not udp:// or dht://
943 Deactivated http:// trackers are better marked in HTML,vd #num
944 5202: Remove mlchat and outdated IM (instant messenger) code
945 Remove outdated files from ./packages/windows
946 5204: Cleanup longhelp (anhi)
947 5205: Telnet: Fix another UTF8.length exception in search results
950 5199: BT: Fix BT_client_uid changing between core start (orbit)
951 -------------------------------------------------------------------------------
952 2006/06/19: version 2.7.7 = tag release-2-7-7
953 5196: IP: Store IPs with two int values instead of four to save RAM (pango)
954 5195: BT: Log tracker error messages in UTF-8
955 5194: HTML: Print warning on opening page when enable_servers is set to false
958 5191: HTML: remove sysinfo on opening page & option motd_html
959 5192: Fix deactivation of verbosity "gui"
960 5163: Configure: CVS SCM support for Mac OS X 10.3 (gstat)
963 5158: HTML: Use table for printing buildinfo and runinfo data (schlumpf, pango)
966 5187: New option: BT_import_new_torrents_interval,
967 ignore Thumbs.db & desktop.ini in directory lists
968 5186: GUI: Send only non-empty real_startup_message string
971 5156: HTML, improve Options output (schlumpf)
972 * new command html_mods_use_js_helptext (true|false)
973 to change display of helptext between javascript popup`s and html table
974 * fix some padding and border bugs
975 * add "toggle js_helptext" button to 'vo' and 'voo' to directly toggle the style
978 5061: New option small_files_slot_limit to push release of small files (pango)
979 all files below the configured file size (default 10kb) are uploaded
980 through one reserved slot
981 5144: Increase default max_upload_rate to 10 (schlumpf)
982 5177: HTML, Options: update display after changing options (schlumpf)
983 5176: Swarming: Change error message text and verbosity for BAD WRITE
984 BAD WRITE is not really an error, MLDonkey just receives unwanted data
985 5175: GTK1 oldgui: Last compile fix for abstract verification bitmaps (pango)
986 5174: Abstract verification bitmaps:
987 compile fixes for GTK1 GUIs, move generic code to CDK (pango)
988 5173: Swarmer: Small fix for merged downloads (WIP7b') (pango)
991 5172: EDK: Log error which causes pausing a download
992 5171: New command group "Driver/Users",
993 print help text for "Bad number of arguments" error message
994 5170: Fix default max_indirect_connections, minimum is 30
995 5169: HTML, Options: add description to option section buttons,
996 remove 'save' button (schlumpf)
997 5168: Global module to abstract verification bitmaps (pango)
998 5167: Swarmer: Fix saving ini data for merged downloads (pango)
999 5166: Swarmer: New module to abstract verification bitmaps (pango)
1002 5164: CommonSwarming: Pangos WIP5e'
1003 * When cutting a range, the reciprocal link of the range after the right part
1004 still references the left part
1005 * When cutting a block in two parts can before empty, but then can also before
1006 complete (if they have no ranges left)
1007 * Added bad_writes_is_back patch
1008 * When find_range can only find ranges already being downloaded, it now first
1009 does a quick check to see if there's no other, probably more interesting,
1010 blocks remaining. If so, it forces a block change (report no more ranges left)
1011 * While it's a good feature in itself, it's probably a workaround for a bug in
1012 select_block (?); It seems that blocks oversaturated with sources happen way
1013 too often (4 or 5 sources on a single range shouldn't happen).
1014 * Compute the size of unselected ranges in each blocks, so that sources don't
1015 "rush" on blocks just left by a source.
1016 * Some BAD WRITEs seems to happen because we forget ranges we requested
1017 (when switching blocks ?)
1018 * Replaced call to clear_uploader_ranges by a call to clear_uploader_intervals
1019 in BitTorrent support Choke message handler.
1020 5063: EDK: remove duplicate entries in shared_files_new.ini (pango)
1021 5160: Remove stale avifile.ml, clean commonMultimedia logging
1022 5159: Compute magic values only when needed
1023 5157: add some line breaks to option help text for shorter lines (schlumpf)
1026 5153: New command: force_web_infos to manually download web_infos URLs
1027 5152: Do not connect friends from disabled networks
1028 5151: Options: New stringvalue functions needed for multiuser support
1029 5150: Log: Fix log when server list is empty in check_blocked_servers
1032 5149: Log: Some additions for commonSwarming
1033 5148: Mail: Fix for multiline SMTP responses (zet)
1034 5143: HTML/Telnet: Country codes for servers
1035 5147: G1/G2: Display proper filename (and therefore support rename) (zet)
1036 5145: EDK: Fix md4 hashing when filesize is an exact multiple
1037 of edk chunk size, MLDonkey is now eMule-compatible (zet)
1040 5141: Swarmer: New option swarming_block_selection_algorithm (pango)
1041 * Allow to choose swarmer block selection algorithm at runtime.
1042 - Algorithm 1 is the current default algorithm
1043 - Algorithm 2, from WIP3o patch, should try harder to complete partially
1044 downloaded chunks, specially with Bittorrent. It was previously
1045 reverted because of unknown performance problem (slower download ?)
1046 5140: Update .cvsignore files (pango)
1047 5138: Catch ip banned exception (zet)
1048 5137: HTML: Fix display of file magic values with '
1049 5136: FileTP: fixes and enhancements (zet)
1050 * Add "FTP-chunk_size" option (0 = no chunks = download full file at once)
1051 -- A chunk_size would be required if downloading from > 1 source
1052 * Add FTP downloads to bandwidth controller (for stats & speed limiter)
1053 * Support FTP sites that do not buffer input (MS FTP)
1054 * Add support for user/pass (http://user:pass@site or ftp://user:pass@site).
1055 This also adds user/pass support to http_client.
1056 * Error codes from HTTP (ie: 404) and some from FTP are supported (530 sometimes
1057 signals a retry, sometimes a login failure so a regex was used (lftp)).
1058 Downloads are paused when a hard error is received (and noted in the log).
1061 5131: New option gui_log_size: number of lines for GUI console messages
1062 5129: HTML: Display client_bind_addr in options menu
1063 5124: Log: Login messages can be disabled with verbosity "no-login"
1064 5130: CommonSwarming: Pangos WIP4a'
1065 thanks for testing goes to SchAmane, CruX, jave (forgot someone?)
1066 That's a huge patch over CommonSwarming module (whose job is to select what data
1067 to ask from connected sources, and the merging of received data),
1068 I hope I'm not forgetting anything important :
1069 * first, it's a mantainance patch; Lots of code have been reworked for
1070 readability and compactness (iterators...), functions grouped together,
1071 sometimes renamed to more descriptive names. Lots of comments have been added,
1072 including the description of invariants I've found, and a nice ASCII art
1073 schema of the swarming datastructures ;)
1074 * naming has been made more consistant, to differenciate chunks (from each
1075 network view) from blocks (internal to swarming), and intervals (list of
1076 int64 * int64 beggining/end offset pairs)
1077 * Support for bitmaps encoded as strings (AvailableCharBitmap) removed, since
1078 it's no longer used anywhere; use the more compact AvailableBitv instead
1079 * Removed range_current_begin from ranges, it's enough for a range to have a
1080 beginning and a end ;)
1081 * Rewrote compute_block_num to have precise preconditions, and algorithm proof
1082 * Added some assertions to better enforce invariants
1083 (on verification bitmaps, for example)
1084 * Allocation of ranges is now delayed until the very last moment, instead of
1085 when a chunk starts being downloaded. Main benefit (beside small memory gain)
1086 is that requests for different ranges sizes can be fulfilled at any time.
1087 * Modified received function so that no BAD WRITE message can happen anymore:
1088 condition when data that does not start from the beginning of a range is
1089 correctly detected and data discarded
1090 (since ranges cannot handle that case anyway)
1091 * Rewrote a much simpler version of present_intervals
1092 * Rewrote block selection algorithm for readability and flexibility; select_block
1093 simply "folds" over all available blocks, using compare_choices function to
1094 keep the best available one(s). May need some more CPU (no fast exit)
1095 * Fixed donkey uploaders calls when disconnected
1096 * Reenable the copy of identical chunks between files. Opportunities for copies
1097 are checked every 5 minutes.
1098 * Made file writing a bit smarter in Unix32 module so that writing zeroed chunks
1099 (as can happen a lot with chunks copying) on an otherwise sparse temp file
1100 does not allocate disk space. A bit hackish.
1103 5121: EDK: Remove obsolete option emule_compression
1104 5122: improve block_list output and runinfo ip blocking (schlumpf)
1105 5123: Fix Invalid_argument("UTF8.length") bug in HTML, down-/uploaders
1106 -------------------------------------------------------------------------------
1107 2006/05/21: version 2.7.6 = tag release-2-7-6
1108 5119: HTML, Options: Include Wiki link in options names
1109 5117: Telnet: replace "avail" by "last seen"/fix non-ASCII-filename column width
1112 5118: Log: Correct prefix for donkeyClient.ml
1113 5116: HTML: Fix javascript popup in search results for Opera (dextarr)
1114 5112: Fix lprintf_nl (search/replace ()'s) (zet)
1115 5113: Fix config/wget.c (zet)
1116 5111: Configure: Fix $SOURCE_DIR broken since patch #5095
1117 5109: New option: pause_new_downloads
1118 - Set to true all new downloads will be paused automatically.
1119 - This option is automatically set to false on core start.
1120 EDK: Disable ED2K_connect_only_preferred_server if not preferred server is
1121 found, this check is done once per minute
1124 5107: Configure: Check for MAGIC_ERROR in magic.h
1125 5106: BT: only send stop once on exit and then wait for success (Amorphous)
1126 5105: BT: Avoid starting torrent which has the same name
1127 as a currently downloading torrent
1130 5097: HTML: Improved DL multiline input button (jave)
1131 5103: Fix compile bug in magiclib_stub.c on Solaris & NetBSD
1134 5101: G2: Gnutella2 fixes/log updates (zet)
1135 - Gnutella2 (G2) is working again
1136 - Re-enables search result networks
1137 - Log logged-in users
1138 5098: EDK: Update option description for initial_score
1141 5090: Http_client: Fix 302 redirect when Location starts with "."
1142 and filename changes
1143 5095: Configure: improve libpng detection, optical improvements
1146 5094: Wget: New internal variable req_save <bool>
1147 5093: CommonSwarming: Verbose error message if file size does not match
1148 5092: HTML, rss: Add startbt link
1149 5091: HTML: update EDK history links
1152 5089: IPBlock: Print seperate lists in block_list command for IPs
1153 blocked by local and web IP blocklists (pango)
1156 4976: Filetype recognition with libmagic
1157 - new debug command: debug_dir, prints magic values for all files
1158 - display file magic values in vd & upstats HTML popup & vd #num
1159 NetBSD/Solaris users have to disable this function "--disable-magic"
1160 until this bug is fixed:
1161 http://savannah.nongnu.org/patch/?func=detailitem&item_id=4976#comment9
1162 5088: Gnutella/FT/http_client fixes (zet)
1163 - Gnutella (G1) is working again
1166 5087: HTML, upstats: new tooltip with complete filename,
1167 respect max_name_len for filename
1170 5083: HTML: Update EDK file history links (unease)
1173 5082: FileTP/Fasttrack/Soulseek: Fix splitting chunks off-by-one (pango)
1174 5081: Change default ip_blocking_descriptions to false for faster startup
1175 5080: Only print servers of enabled networks (pango)
1176 5079: Ignore ._* in directory lists (pango)
1177 5078: Telnet: Remove HTML code from sysinfo command
1178 5077: FT: Fix fasttrack connection problem and adds a bootstrap nodes file url
1179 Removes old/broken imesh bootstrap node (zet)
1182 5076: Gd: Do not disable html_mods_vd_gfx if core is compiled without GD support
1183 5075: DNS round robin, keep all IP addresses associated with DNS names,
1184 and return next one upon each request. (pango)
1187 5069: EDK: Fix broken unicode URIs parsing broken since 2.7.4 (pango)
1188 5074: Change default Ocaml version to 3.09.2
1189 5073: Update default IP blocklist URL, replaced
1190 http://www.bluetack.co.uk/config/antip2p.txt with
1191 http://www.bluetack.co.uk/config/level1.gz
1192 5068: New global option user_agent, current option BT-user_agent overrides
1193 the global value in BT module (pango)
1194 5064: BT: only try to connect to http trackers (pango)
1195 5040: Overnet: Open TCP port only when network is active
1198 5036: BT: Correctly parse .torrent files with an empty directory (again)
1199 5039: Fix dp500 compile
1200 -------------------------------------------------------------------------------
1201 2006/04/13: version 2.7.5 = tag release-2-7-5
1204 5035: Make Soulseek, Opennapster, DirectConnect compilable again
1205 This does not mean the network modules work again,
1206 they only compile again. More work is needed.
1207 5032: CommonSwarming/WIP2: Some function rewrites and comments (pango)
1210 5031: Merge CommonSwarming and CommonSwarming2 code (pango)
1213 5029: EDK: Remove set_brothers command and brotherhood option
1214 5030: Update config.guess and config.sub to version 2006-02-27
1215 4778: CommonSwarming: In addition to the first and last chunk also load
1216 the second last chunk if available before the rest to improve preview
1217 5028: New environment variable for file_completed_cmd:
1218 $DLFILES (number of downloading files)
1219 5027: EDK: Deactivate DonkeySUI if /dev/urandom is missing
1222 5021: Fix compile bug in tryopen patch when bzip2 is disabled
1223 5020: Allow compile with Ocaml 3.09.2 CVS code,
1224 3.09.1 will stay default for MLDonkey-compiled Ocaml
1225 5016: Options save: Really fix bug addressed in patch #5015
1228 5015: Fix option file saving bug introduced in tryopen patch
1231 5011: EDK: Update server info received by UDP when
1232 update_server_list_server false (pango)
1233 5009: Ignore files .DS_Store and ._filename.ext in dir listings on all platforms
1234 5006: Small logfile change
1235 5004: Automatically closes opened descriptors using "tryopen pattern" (pango)
1236 5005: CommonBlocking: Do not block IPs when GeoIP database is not loaded
1239 5003: BT: Improve client recognition (zet)
1240 5002: Overnet: Fix Out of Memory Exception (zet)
1243 4997: Swarming: correctly create a new range when one is splitted (pango)
1246 4931: CommonBlocking: Block/allow IPs by country codes (requires GeoIP) (pango)
1248 - ip_blocking_countries, insert country codes here
1249 - ip_blocking_countries_block true|false
1250 false: use ip_blocking_countries as block list,
1251 all other countries are allowed
1252 true: use ip_blocking_countries as allow list,
1253 all other countries are blocked
1254 4995: HTML: Fix friends filelist display
1255 4996: HTML: Add/remove for web_infos (vwi), update old contact.dat URL
1256 - web_infos, rename command add_url to urladd, new command urlremove
1257 - prints option help texts for web_infos and calendar command
1258 - file_kinds are now printed as list with descriptions for easier setup
1261 4917: HDD space check
1263 hdd_send_warning_interval
1264 Send a warning mail each <interval> hours for each directory,
1265 0 to deactivate mail warnings.
1268 Mininum free space in MB on temp_directory, minimum 50
1269 hdd_temp_stop_core, default false
1270 If true core shuts down when free space on temp dir is below
1271 hdd_temp_minfree, otherwise all downloads are queued and a
1272 warning email is sent.
1275 Mininum free space in MB on core or log directory, minimum 20
1276 hdd_coredir_stop_core, default true
1277 If true core shuts down when free space on core dir is below
1278 hdd_coredir_minfree, otherwise all ini file saving is stopped
1279 until core shutdown and a warning email is sent.
1280 Logging is sent to RAM when log dir is full.
1282 The hard-coded minimum values can not be circumvented, MLDonkey will always
1283 perform these HDD space checks once a minute.
1286 4985: Log file clean-up for verbosity = "md4"
1289 4981: Dllink: Fix wrong referer in HEAD request
1290 4980: Multiuser: internal admin_user variable
1291 4979: Fix hashing large number of files
1294 4972: FileTP: Allow ftp:// downloads via dllink command
1295 4971: BT: Allow read-only access for shared files
1296 4967: CommonUserDb: Keep old user database updated for easy downgrades
1299 4962: BT: New command "startbt" to force the start of a torrent download (jave)
1302 4963: Re-apply $DEVFLAGS to Makefile.in (pango)
1303 4961: EDK: New default URL for server list download
1304 4960: Ignore .DS_Store on MacOSX, BT: ignore dirs in torrents/incoming (pango)
1307 4954: New function Unix32.owner to read user and group entry of a file
1308 - to debug use command debug_fileinfo <file>
1309 - renamed debug command "disk" to "debug_disk"
1310 - renamed debug command "rlimit" to "debug_rlimit"
1311 4950: Close unneeded file descriptors
1314 4946: System-wide cookies and referers option
1315 - MLDonkey will not move data from bittorrent.ini to downloads.ini
1316 - This data will be used in web_infos, dllink and BT module.
1317 4951: GUI: Update server country codes after loading GeoIP data
1318 4949: Gzip/Bzip2: Close opened FD after opening an invalid archive file
1319 4945: BT: Automatically start new torrents downloads
1320 - new directory $MLDONKEY_DIR/torrents/incoming, all files present
1321 in this dir are started automatically, its scanned every 10 seconds.
1324 4939: Support for compressed ipfilter.dat files (.gz, .bz2 or .zip) (pango)
1325 4930: giFT GUI: Authentication support (pango)
1326 - login with giFTcurs now has to be done like this: giFTcurs -p user:password
1329 4938: Improve MLDonkey system user database
1330 due to older problems with HTML interface:
1331 - renamed command add_user to useradd
1332 - renamed command remove_user to userdel
1333 - user name is printed in browser title when bwstats is active
1334 -------------------------------------------------------------------------------
1335 2006/02/26: version 2.7.4 = tag release-2-7-4
1338 4928: BT: Fix invalid encoding in announce URL (darkfader)
1339 - removed old, broken version and added new version
1342 4934: FileTP: Small improvements
1343 - fix download restart bug when core is restarted, sources where not loaded
1344 - save referer values to files.ini
1345 - display amount of transfered data in downloaders list
1346 - display source IP and Countrycode in HTML downloaders list
1347 - display filesize in GUI
1348 - display number of sources in GUI
1349 4933: BT: Display number of sources in GUI
1352 4928: BT: Fix invalid encoding in announce URL (darkfader)
1353 4929: Do not print password_empty warning if enable_user_config true
1354 4926: Runinfo: Warn about not-working DNS resolution,
1355 /dev/urandom detection was not disabled if --disable-donkeysui is used
1358 4922: OpenBSD: Small change for patch 4920
1359 4921: MinGW: show current DL & UL stats in console title (Schlumpf)
1360 4909: Print warning messages when run on non-supported operating systems
1361 currently for example Windows 95/98/ME (Schlumpf)
1362 4920: Cleanup included header files in C code (Schlumpf)
1365 4910: EDK: Use updated protocol information when parsing
1366 consecutive messages (sam_dennis)
1367 4915: Log: Small cleanups
1368 4918: some syntax and comment cleanups in stubs_c.c (Schlumpf)
1371 4906: MinGW: improve uname output (Schlumpf)
1372 4908: Configure: Fix for Beos, allow use of Dragonfly BSD
1375 4883: Mac OS X: Fix for broken Apple cpp-3.3
1376 4902: EDK: Stub respond to directory browsing requests (sam_dennis)
1377 4905: Update for patch 4823: add another -fno-fomit-frame-pointer
1378 in config/Makefile.in to avoid breaking CryptoPP (mikeX)
1379 4903: EDK: Remove obsolete donkeyNeighbours (thx to sam_dennis)
1380 4907: EDK: Fixed copy/paste error in emule miscoptions1 reading (sam_dennis)
1383 4904: Configure: Raise required autoconf version to 2.55 due to AC_MSG_FAILURE
1386 4892: Fix make when CXXFLAGS is defined (mikex)
1387 4894: EDK: Support "new ed2k meta tags" to allow browsing
1388 shared directories of newer eMule clients (sam_dennis)
1389 4891: Configure: Override system-installed Ocaml and force local compile
1390 Use ./configure --enable-force-ocaml to force MLDonkey to compile Ocaml,
1391 regardless if the system has Ocaml already installed or not.
1392 --enable-ocamlver=CVS uses a CVS checkout of Ocaml HEAD.
1393 4885: EDK: Show correct IP of indirect clients in uploader list
1396 4879: EDK: Support for sources in ed2k:// links
1398 ed2k://|file|a.txt|1|AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|/|sources,1.0.0.0:4662|/
1399 4849: EDK: Fix hashing of newly shared files
1400 - avoid hashing shared files twice
1401 - avoid problems while hashing big files
1402 - remove obsolete compute_md4_delay option
1403 4878: Addition to patch 4875 (conditional bzip2 support using cpp)
1406 4877: BT: Recognize Ktorrent clients (CruX, zet)
1407 4876: EDK: Remove obsolete option random_order_download
1408 4875: conditional bzip2 support using cpp (pango)
1409 4870: runinfo: add connected_user and check empty PW (schlumpf)
1410 4872: Fix gd detection on NetBSD, use data from gdlib-config
1411 MinGW compile-guide was updated, gdlib-config has to be changed
1412 4871: Optimize some Printf.sprintf "%s" code
1413 4869: Remove obsolete redirector code
1414 http://mldonkey.sourceforge.net/Redirector
1415 4856: reverse patch: configure: disable iconv by default on MinGW
1416 it is not necessary anymore
1419 4867: Use setrlimit to raise allowed ulimit open files
1422 4863: GUI/Multiuser: Prevent kill by users other than admin
1423 4862: EDK: Fix broken import of eMule temp Files (import_temp) (schlumpf)
1424 4860: Multiuser: print warning if admin password is empty
1425 - user admin is re-created if deleted, it has to be present in any case because
1426 some commands are only available for admin, like users, remove_user and kill
1427 - create structure for startup messages, displayed on GUI, HTML, Telnet
1428 4859: Multiuser: Only user "admin" is allowed to change options
1429 if the new option enable_user_config (default true) is set to false
1430 4858: HTML: Update some links to mldonkey.sf.net
1431 4857: SIGUSR1 & SIGUSR2 do not exist on Windows
1432 4856: configure: disable iconv by default on MinGW
1433 4853: Fix HTML errors on rss command output (unease)
1436 4851: Support system signals SIGUSR1 & SIGUSR2
1437 SIGUSR1 saves options
1438 SIGUSR2 performs garbage collection
1439 4850: Fixed bitprint hashing for files > 4GB (thx to zet)
1440 mld_hash: implement SIGINT and SIGTERM signals
1443 4844: Fix Solaris compile broken since DonkeySUI patch
1444 4830: Update Wiki links
1445 New Wiki URL: http://mldonkey.sourceforge.net
1446 New Forum URL: http://mldonkey.sourceforge.net/forums
1447 4843: HTML: Improve output of rss command
1448 4842: Some logfile stuff
1449 4841: Create new dir web_infos for web_infos files,
1450 BT: do not save .torrent or announce.*
1451 all files downloaded by web_infos go to $MLDONKEY_DIR/web_infos
1452 to avoid downloading files twice move files from $MLDONKEY_DIR
1454 4826: improve error message due to corrupt config files (schlumpf)
1455 4821: improve display of sysinfo (schlumpf)
1458 4816: Update Ocaml-RSS and Xml-light to current versions
1459 4827: longhelp cleanup (anhi)
1460 4823: EDK: CryptoPP optional, disable with --disable-donkeysui
1461 Makefile: link CryptoPP stuff only in binaries which need it
1462 Buildinfo: show compiler versions
1463 Configure: display compiler versions (schlumpf)
1464 Configure: if iconv checking fails continue with disabled iconv
1465 Configure: do not use bzip2 if bzip.h is not found (FLI4L buildroot)
1468 4820: Move CommonGraphics to DriverGraphics, check libgd version
1469 Configure: Check if libgd > 2.0.14 is installed
1470 NetBSD: added paths for libgd package
1471 NetBSD: adjusted stat command to properly read SCM date
1472 move build-, run-, and diskinfo command to driver module
1473 (thanks to SchAmane)
1474 -------------------------------------------------------------------------------
1475 2006/01/19: version 2.7.3 = tag release-2-7-3
1476 4791: web_infos: New type geoip.dat, save files to local disk,
1477 re-download only if file on server is newer
1478 - now all files except type "rss" in web_infos are saved to local disk
1479 if not present or server version is newer
1480 - MLDonkey uses HTML header last-modified to check if a file has been updated
1481 - downloaded file timestamp is changed to last-modified time
1482 - show number of IP blocking ranges in runinfo
1483 - new web_infos kind: geoip.dat
1484 - automatically add geoip.dat to web_infos
1485 - support for *.gz|bz2|zip compressed GeoIP.dat files
1486 4811: EDK: Print warning when starting a file too big for filesystem,
1488 4810: Update search results with highest avail/completesources tags (zet)
1491 4803: BT: force uniqueness of added trackers by "trackers" command (pango)
1492 4801: EDK: add more server info fields (html and guiprot) (zet)
1493 4798: Fix thread recognition on *BSD
1496 4797: EDK: Always put server connect requests in connection queue,
1497 whether max_opened_connections is reached or not
1498 Connection will be established later when a socket is available
1501 4796: Windows: Log proper warning when MaxUserPort is reached (thx to Enig)
1502 4795: Mailer: Fix Subject encoding (bogeyman)
1503 4716: BT: new command "tracker" to add trackers (bogeyman)
1506 4792: GeoIP: Add license (distrib/GeoIP_LICENSE.txt, runinfo)
1507 This product includes GeoLite data created by MaxMind,
1508 available from http://maxmind.com/
1509 4776: EDK: Avoid LowID if max_indirect_connections is reached (thx to zet)
1510 4787: EDK: Show server version (ported from Mulus - thx to Knocker),
1511 disconnect blocked server after loading IP blocklist
1514 4790: Some logging stuff
1515 4781: Disconnect connected server before removing
1516 4782: Configure: Replace AC_CHECK_FILE with "test -d" to allow cross-compile
1519 4770: Change file opening mechanism, open rw only when needed (pango)
1520 new verbosity option "file" to control Unix32 file handling
1521 4777: Display IP:port for LowID clients, GUI protocol update (zet)
1524 4769: HTML: Fix some Geoip display bugs
1527 4768: Dynamic loop delay (pango)
1528 4765: Add GeoIP.dat support (zet)
1529 GeoIP is a GPL database that maps IPs to countries.
1530 http://www.maxmind.com/download/geoip/database/
1531 This patch adds support for a "geoip_dat" option.
1532 It is a simple ocaml translation of just the geoip country lookup code.
1533 If active, the file is left open and consulted on demand.
1534 It didn't seem to slow anything down on my slow system.
1535 Sends the country # to the gui, use latest Sancho version to use it.
1536 Web: displays country codes in a column (name in tooltip).
1537 Maybe someone wants to add flag images (please make them optional).
1538 -------------------------------------------------------------------------------
1539 2006/01/05: version 2.7.2 = tag release-2-7-2
1540 4764: Patch for MLDonkey-compiled Ocaml-3.09.1 to fix GTK1 oldgui compile
1541 4763: Compile patch for GTK1 oldgui with Ocaml 3.09.1
1542 Ocaml 3.09.1 has a bug which prevents compiling GTK1 oldgui.
1543 A patch can be found here: http://caml.inria.fr/mantis/view.php?id=3948
1546 4761: Insert glibc version in archives build by release targets
1547 4760: Allow use of Ocaml 3.09.1
1548 MLDonkey can now be compiled with Ocaml 3.08.3/4, 3.09.0/1
1549 Default for MLDonkey-compiled Ocaml is now 3.09.1
1550 4759: Configure: Improve gcc check
1551 4757: Compile patches for MorphOS (Christian Rosentreter)
1552 4748: HTML: Allow rename of files with '#', '&' and '%',
1553 remove invalid chars from filenames depending on OS (thx to pango)
1554 4756: HTML: Print build- and runinfo on main page,
1555 fix reload bug when changing html_mods/html_themes (Knocker)
1558 4751: Ease use of messages_filter option (pango)
1559 4753: Allow upper case MD4 for ed2k-links in mldonkey_submit (fcrozat)
1560 4754: New parameter --auth for mldonkey_command (plf team)
1563 4749: GUI: send shared sub_files to gui (zet)
1566 4712: Change terminal color for command line from blue to cyan (romildo)
1567 4742: Log: remove verbosity "tor" & "file", improve verbosity "verb"
1568 4743: EDK: Print "File is already shared" when trying to start downloading
1569 an already shared file
1570 4744: Split client_timeout into ED2K-client_timeout and BT-client_timeout,
1571 increase BT-client_timeout to 90 (tradie)
1572 4745: Update config.guess and config.sub to version 2005-12-23
1575 4725: Check if ulimit is sufficient for MLDonkey,
1576 auto-adjust max_opened_connections
1577 * moved ED2K-max_indirect_connections to downloads.ini
1578 * max_indirect_connections is now a %-value of max_opened_connections
1579 * minimum ulimit for open files is now 150 (most systems have 1024),
1580 MLDonkey will refuse to start if ulimit is lower
1581 * minimum max_opened_connections is now 75
1582 * reduced max_concurrent_downloads from 60 to 50
1583 * minimum ulimit -n 150 is used like this:
1584 - 75 max_opened_connections
1585 - 50 downloading files
1587 - 20 fd as reserve for ini files
1588 4704: Fix some C compile warnings (schlumpf)
1589 4739: Fix some cross-compiling obstacles, remove Ocaml 3.08.2 compatibility
1590 * Cross-compiling is only possible with a correct Ocaml toolchain
1591 * MLDonkey can not build this Ocaml toolchain
1592 * This patch only fixes some autoconf checks
1593 4735: MinGW: pause before core exit because of existing Pid file
1594 4736: New commands: sysinfo, runinfo and diskinfo
1595 * removed temp_directory and core_directory from shares command output
1596 * new commands sysinfo, runinfo and diskinfo
1597 * buildinfo now prints only buildinfo
1598 * runinfo prints run-time information
1599 * new command diskinfo prints filesystem data about temp_directory,
1600 core_directory and all shared dirs
1601 * sysinfo prints buildinfo, runinfo and diskinfo alltogether
1602 4712: Change terminal color for downloading files from blue to cyan (romildo)
1605 4732: Log: More infos for verbosity = " verb"
1608 4728: fix date format (zet)
1609 4730: BT: parse path.utf-8 (zet)
1612 4726: New option space_overhead to adjust garbage collection (bogeyman)
1613 4724: Windows: 10 seconds pause when core start fails
1614 to make error messages readable
1617 4723: New build target: make ocamldoc (pango)
1618 4721: Log: Improve output for verbosity "verb", remove verbosity "hid"
1621 4719: Fix linking of dp500 (pango)
1622 4715: OV: Improve searching, longer ov timeout, some more bugfixes (bogeyman)
1623 4718: Fix bug which prevented proper write to files introduced in patch #4694
1624 4717: EDK: Removed unused variable file_md4s_to_register (bogeyman)
1627 4703: BT: Deactivate dead trackers,
1628 re-enable them if no active trackers are found (pango)
1629 4708: HTML upstats: Enable preview for shared files
1630 4652: dllink: reject EDK files > 4GB, print access errors for .torrent files
1633 Removed orphaned files:
1634 src/networks/donkey/donkeyFiles.mli
1635 src/networks/donkey/donkeyInteractive.mli
1636 src/networks/donkey/donkeyMain.mli
1637 4710: Re-add some protocol information as comments removed by patch 4694
1638 4709: Fix zip file extract broken due to patch 4694 (Ocaml 3.09)
1639 4707: Fix recover_temp broken by patch 4674 (force_download)
1642 4706: EDK: Remove donkeyChunks, use commonSwarming for op_file_check
1643 4702: Correct timezone in e-mail, nicer uptime, timezone and uptime in runinfo
1644 4694: Fix lots of compile warnings in Ocaml 3.09
1645 4705: Update config.guess and config.sub to version 2005-11-11
1646 Mozilla MLdonkey Protocol Handler updated to version 1.7
1649 Removed orphaned files:
1650 src/networks/fasttrack/fasttrack.ml
1651 src/networks/gnutella/gnutella1.ml
1652 src/networks/gnutella/gnutella.ml
1653 src/networks/gnutella/gnutellaScheduler.ml
1654 src/networks/gnutella/gnutellaZlib.ml
1655 src/networks/gnutella2/g2Scheduler.mlt
1656 src/networks/gnutella2/gnutella2.ml
1657 4700: Log: New verbosity option "gui" to debug GUI protocol
1658 4696: Fix some C compiler warnings
1661 4687: Compile fix for Ocaml 3.09.0 (gildor), MLDonkey can now be compiled
1662 with Ocaml 3.08.[2,3,4] and Ocaml 3.09.x (4687_min2.patch)
1663 4693: Compile patch in sha1.c for FreeBSD (lioux)
1664 4689: Catch exception in file_completed_cmd to let commit complete
1665 4691: file_completed_cmd: $DURATION in seconds (debonair)
1666 -------------------------------------------------------------------------------
1667 2005/12/06: version 2.7.1 = tag release-2-7-1
1668 4679: FileTP: Fix HTTP downloading for URLs with space chars, log cleaning
1669 4674: EDK: Re-enable checking old_files before starting a download
1670 and force_download command
1671 4676: BT: decode_version fix and html sort fix (bogeyman)
1674 4673: IPBlock: display original length and optimized length in block_list,
1678 4672: FileTP: Fix major bug in HTTP downloading, introduced in 2.6.0
1681 4671: Compile fix in CryptoPP.h for gcc-2.96 (trdw)
1682 4670: Increase max_buffer_size limit for high-volume connections
1685 4649: Updates for file_completed_cmd (pango, spiralvoice)
1687 * added information to notification email if auto_commit is disabled,
1688 email is sent by file_completed, not file_commit
1689 * moved execution of !!file_completed_cmd from file_completed
1690 to file_commit, kept option name for easier upgrading
1691 this was done because the filename of a downloading file can be
1692 different than the filename of the committed file if a file
1693 with the same name as the to be committed file is already in
1694 incoming. older method did not take this into account at all..
1695 * added environment variables for file_completed_cmd, see description:
1697 A command that is called when a file is committed, does not work on MinGW.
1698 Arguments are (kept for compatibility):
1699 $1 - temp file name, without path
1701 $3 - filename of the committed file
1702 Also these environment variables can be used (preferred way):
1703 $TEMPNAME - temp file name, including path
1704 $FILEID - same as $1
1705 $FILESIZE - same as $2
1706 $FILENAME - same as $3
1707 $FILEHASH - internal hash
1708 $DURATION - download duration
1709 $INCOMING - directory used for commit
1710 $NETWORK - network used for downloading
1711 $ED2K_HASH - ed2k hash if MD4 is known
1713 4667: Update Ocaml download URL
1714 4666: Always create incoming directories before commit
1715 4663: CryptoPP: Latest fixes ported from aMule CVS
1718 4657: Fix for C files for AMD64, mipsel platforms
1719 improve endianness checking in tiger.c, md5_c.c and CryptoPP.h,
1720 print endianness in buildinfo, removed sha1_old code
1721 4661: Log: newline before exception message when MLDonkey can not use a port
1722 BT: exit if client_port = tracker_port
1725 4654: Fix guiprot when addr not resolvable (zet)
1726 4655: Set conn_user on gui (zet)
1727 4656: BT: update last seen complete field and fix bitfield reading (zet)
1730 4653: GTK2 GUI: add isohunt statistics (su_blanc)
1733 4364: Let mlnet build under the cygwin unix emulation layer (Amorphous)
1734 4648: GTK2 GUI: improve display of razorback stats (su_blanc)
1735 added the display of filedonkey.com data
1736 4646: BT: little change to recognise Clients (bogeyman)
1737 4645: Fix donkey total uptime stats order (bogeyman)
1740 4406: Unicode: Fix filenames in shared_files_new.ini and file rename
1741 in HTML interface (mld_unicode_patch6.patch) (CML)
1742 4440: New option shutdown_timeout, 3 sec, was hardcoded before (Amorphous)
1743 4644: Update GNU config.guess and config.sub to current versions
1744 4643: HTML: Fix gdstats output when html_use_gzip true
1745 4640: Calendar: view calendar command: vcal
1746 4641: Fix exception in load_web_infos
1747 4642: HTML: Improve preview via webbrowser (pango)
1751 4563: replace all Printf.printf occurences by Printf2.lprintf (su_blanc)
1752 4479: Callback mechanism for low ID users does not work (miriup)
1753 Reactivating submission of server IP and port during client
1754 handshake in edonkey
1755 "However, sometimes, especially when I have no files to download I do
1756 not receive callbacks at all. It is suggested to apply this patch in
1757 a testing mldonkey for a week on a non-low id connection before including
1758 it in a stable release, ... I can't test high-ID at all."
1759 4574: Friends upload slot (pango)
1760 -------------------------------------------------------------------------------
1761 2005/11/19: version 2.7.0 = tag release-2-7-0
1762 4631: Validate ED2K-client_private_key
1765 4630: GTK2 GUI - some bug fixes (su_blanc)
1766 * display Razorback graphical stats for currently selected file
1769 4625: GTK2 GUI - bug fix (su_blanc)
1770 * bug #14865 : availability display "dotty"
1771 added alpha channel to availability pixbuf.
1772 * bug #14963 : autosize slightly broken
1773 the tick mark for 'autosize all columns' appears only if all columns are set
1774 to 'autosize' mode. 'autosize all columns' triggers an 'autosize' mode for
1775 all columns if at least one has not this mode set. Otherwise all the columns
1776 are set to 'fixed' mode.
1777 * bug : razorback stats
1778 display stats on user request.
1781 4583: Change stats.razorback2.com usage to on-demand (su_blanc)
1782 to avoid overloading the server (disable_razorback_stats.diff)
1783 4619: Remove duplicate Gc.compact () from EDK mem_stats (pango)
1786 4617: GUI: send bt subfiles over gui prot (zet)
1787 4587: Buildinfo: Split build-time and run-time information (schlumpf)
1788 4350: Code cleanup : web interface chunks display (pango)
1789 (web_chunks_using_tables_v2.patch)
1790 4616: Change allow_browse_share, so only friends can see file lists (pango)
1791 4615: Add -g to CFLAGS when --enable-profile (pango)
1792 4605: replace string/bool bit arrays with bit vectors (zet)
1793 4607: remove html output from telnet 'vc all' (zet)
1794 4613: Optimizing Set.cardinal to reduce CPU usage (pango)
1795 4614: Gtk2 mlgui improvements (su_blanc)
1796 * fix bug : close all current searches when one quits mlgui
1797 otherwise the core continues to search
1800 * make a search request
1802 * in HTML interface, check "View searches" tab.
1803 * lower CPU usage by delaying heavy computations (use Glib.Idle)
1804 * rework the search tab, just make it more simple,
1805 limit results to max hits, added min availability criterium
1806 * added Autosize columns. Should fix bug #14868
1807 * change pixmap for availability bars in pixbuf. should fix bug #14865
1810 4558: further Overnet patches, query_next_peers3.patch (bogeyman)
1813 4586: cleanup brand stats code (bt/edonkey) (zet)
1814 updated to coalesce bt software parsing and add some more ids
1817 4589: CryptoPP doesn't like -fomit-frame-pointer, so remove it (przemoc)
1818 4597: OV/KAD: fix a search reset bug (bogeyman)
1819 4585: Change ED2K_max_sources_per_file from 20000 to 5000
1820 4579: Slackware package (tgz) - basic mlnet support (ratmmmam)
1823 4583: GTK2 mlgui improvement (su_blanc)
1824 Lablgtk-2.6.0 is needed for GTK2 mlgui, it fixes a mem leak with GdkPixbuf.
1826 * razorback stats: click on a file in the downloads tab to display the stats
1827 (at startup wait for few seconds, the time to download the png files...).
1828 * proxy options for mlgui
1829 * a graph tab: global downloads, global uploads and a view per file
1830 (downloads and uploads).
1832 * fix Tray icon as per task #4694
1834 * configuration files locations: mlgui and mlim do not need CommonOptions.
1835 Should not change anything for the users as we check the $HOME variable.
1837 4558: Overnet: several patches (includes and fixes patch #4551) (bogeyman)
1838 * better detection of dead peers
1839 * so we can ping less often
1840 * and can be sure these peers are alive
1841 * use ip:port from received pakets instead from the peer info
1842 * use a weak Hashtbl for known_peers and remove search_known_peers
1843 * we are removing all dead peers, in buckets and prebuckets,
1844 (do not wonder, if you get less peers left ;o)
1845 * do not send useless "Connect" pakets, Fillbucket really works
1846 * every 30m file searchs were created twice.
1847 There are really less peers than without this patch, maybe i'll have to tweak
1848 how we fill buckets. But for now this works and produce less traffic.
1850 4581: Fix upload rate for high volume connections (> 1.5Mbit/sec) (pango)
1851 4584: HEAP: use GC.quick_stats for mem_stats level=0 (bogeyman)
1854 4580: Update .cvsignore files (pango)
1855 4564: HTML: fix vd p/d/queued output (zet)
1856 4576: BT: remove sources when file is cancelled,
1857 mem_stats: Garbage collector info (zet)
1858 -------------------------------------------------------------------------------
1859 2005/10/28: version 2.6.7 = tag release-2-6-7
1860 4562: removed patch, breaks GUI connect after SIGTERM
1863 4551: remove patch, breaks Overnet
1864 4562: BasicSocket.ml fix, fix select when fd_tasks is empty
1865 close all fd on exit (su_blanc)
1866 4561: Options.ml4 proper old directory (su_blanc)
1867 4560: mingw : proper detection of gToolbox.mli (su_blanc)
1868 4559: mingw compilation of Crypto.cpp (su_blanc)
1869 4553: HP-UX: If /dev/urandom is not present print info where to get it
1870 4554: HP-UX: Compile fix for statvfs (disk usage statistics) (Inkus)
1871 4555: EDK: Send emule_version on server login to prevent
1872 "Your client is too old" message (Knocker)
1873 4556: Fix linking mlnet to X and GTK libs when using --enable-gui (su_blanc)
1874 -------------------------------------------------------------------------------
1875 2005/10/25: version 2.6.6 = tag release-2-6-6
1876 4551: OV/KAD: use kind like eMule does +misc bugfixes (bogeyman)
1877 "do not wonder, if you get less peers left ;o)", also reduces traffic
1878 4550: Create bitprint for large files (zet)
1879 4549: html_mods: relevant_queues option (zet)
1880 This patch creates a relevant_queues option which specifies a list of
1881 queue #'s that should be displayed in the vd # sources table.
1882 See sources command for the list of queues.
1883 By default all queues except the DoNotTry queue(7) are displayed.
1884 4548: IPBlock: really don't load descriptions on core restart,
1885 if set to false (bogeyman)
1888 4547: Fix dupe sending of motd/nets in gui_initialize (zet)
1891 4545: make TAGS, creates files for source code navigation in Emacs (pango)
1892 4544: Change internal code for statfs function (pango)
1893 4543: Lower CPU usage, optimize CommonSources.count_file_ready_sources (pango)
1894 4542: Remove Donkey-Fakes support, service is down
1895 4541: New option BT_max_tracker_redirect
1896 connect to bittorent trackers with http redirect (jhon)
1899 4535: OV/KAD: Yet another improved logging (bogeyman)
1900 4533: Yet another compile patch for mld_hash,
1901 remove svg_converter with make clean
1902 4534: Compile fix for make_torrent
1905 4531: Compile fix for GTK1 oldgui
1906 4530: Compile fix for mldonkeytop (pango)
1907 4525: Always use svg_converter.byte (gildor)
1908 4524: Fix building mld_hash (gildor)
1909 4523: Fix building of svg_converter.byte (gildor)
1912 4520: Check for /dev/urandom, /dev/null and $TEMP
1913 4521: CryptoPP: Compile patch for gcc-2.96 (sworn)
1916 4519: Int64ops cleanup (pango)
1917 -------------------------------------------------------------------------------
1918 2005/10/11: version 2.6.5 = tag release-2-6-5
1919 4508: Configure: Print some important build targets
1920 4507: EDK: Print server banners into logfile (pango)
1921 4500: BT: Fix multifile download with zero-byte files (thanks to jave)
1922 4506: replace obsolete longarry and fifo2 code (bogeyman)
1925 4504: Clean http_server.ml logging
1926 4502: Remove obsolete Weak2 sourcecode (bogeyman)
1927 4503: OV: fill buckets only with peers we send to and heard of (bogeyman)
1928 4499: Check for stalled pid file and remove it if MLDonkey is not running
1929 (does not work on MinGW due to missing Unix.kill) (pango, spiralvoice)
1930 4501: HTML: Fix chunk wrapping on IE (zet)
1933 4477: prevented some compiler warnings (Schlumpf)
1934 4496: Nicer summary of configure command
1937 4337: improved upload scheduler (pango)
1938 4494: fix infinite loop when create_dir_mask on fat32 (zet)
1939 4495: BT: include Wiki link to report unknown clients (bogeyman)
1940 4493: BT: Correctly parse .torrent files with an empty directory (zet)
1941 4487: BT/HTML: Display files inside a multifile torrent (bogeyman, jave)
1942 4458: EDK: add enable_sui toggle option (enabled by default) (zet)
1943 4491: Compilation fix for NetBSD>=2.99 (Thomas Klausner)
1944 4490: memstats for a weakhash and a new OV command dump_bucket (bogeyman)
1945 4473: New command: whoami
1946 4457: BeOS: Compile patch for CryptoPP (Michael Lotz)
1947 4460: Added search for .torrents via IsoHunt (WingMaster)
1948 4456: Fix shrink effect in vd for Opera (Luar Roji)
1950 4452: Clean configure.in, check for c++ compiler
1951 * zlib is not optional anymore
1952 * remove old code (Cryptokit, Broosnet etc.)
1953 * distinguish between Cygwin and MinGW
1954 * print start warning message only for Cygwin
1955 * remove whitespaces
1957 4450: Remove swarmer data when cancelling download (kempston, zet)
1960 4454: commonSources: add sources from resumed files
1961 (outside_queue sources) back to the queues (zet)
1962 4453: Telnet: Print reject message for connecting client
1963 if it is not allowed to connect,
1964 prepend "dllink" for all commands starting with "http://"
1965 4455: Improve make distclean
1966 4449: New parameter for pid file: -pid <dir>, small improvements for pid files
1967 4451: Correct the help of allowed_ips (gildor)
1970 4439: Fix for "make mlnet.byte" (zet)
1971 4438: Fix secure-ident related compile bugs in Opennap & Soulseek
1972 4437: BT: show up/down stats for Brand unknown (bogeyman)
1973 4436: EDK: Solve memleak in donkeyChunks (file_md4s_to_register) (bogeyman)
1974 4434: Added button to eMugle in Search (wingmaster)
1975 4432: Add more info to mem_stats (zet)
1978 4431: Newgui: Compile fix
1979 4419: EDK: Support secure user identification (crypto5, by zet)
1982 4424: OV: discard peers with ip 1.0.0.0 and random port
1983 4425: EDK: Support server extended getsources2 opcode (zet)
1984 4429: Better error message if MLDonkey lacks network support
1985 for a file in files.ini
1986 4427: BT: 10 retries / follow 10 redirections in
1987 dllink http://server/file.torrent
1988 4423: OV/KAD: Save only active peers to config files/ save max 200 peers
1992 4420: Remove obsoleted commonSwarming1 code
1993 4418: Re-activate sources_per_chunk option (pango)
1994 4417: BT: Improve BT upload speed (pango)
1995 4374: fix "max_hard_download_rate has to be doubled" (pango)
1996 This patch changes internal code, no option has to be changed
1999 4406: Improved Unicode filename support (CML)
2000 4412: OV: Handle OvernetPeerNotFound correctly (bogeyman)
2001 4411: OV/KAD: Some peers are not added to known_peers (bogeyman)
2002 4410: Shorter filesystem name for XFS
2003 4409: Compile fix if Bzip2 is not available
2004 4408: OpenBSD: configure.in fix to find libbz2 and others in /usr/local
2007 4397: Buildinfo: Run-time check for Windows OS version / Unix uname (zet)
2008 4403: html_mods: mem_stats in a single readable table (zet)
2009 4402: BT: BT-user_agent option (zet)
2012 4268: Web/Gui: free core's buffer allocated by vd # and gui (bogeyman)
2013 4393: Lower ip blocking memory usage (pango)
2014 new option ip_blocking_descriptions true|false
2015 4401: BT: Send 'stopped' event to all trackers when exiting (zet)
2016 -------------------------------------------------------------------------------
2017 2005/09/04: version 2.6.4 = tag release-2-6-4
2018 4392: Print "Core started" on stdout even if logging is enabled
2019 Fixes problems when MLDonkey is spawned by a GUI
2022 4247: memstats: BT/FT/GNUT/G2: initial memstats, ALL: show nr of old_files,
2023 BT: nr of torrent files
2024 4390: Mail: Print incoming path if !!url_in_mail is used
2025 4389: BT: Fix core exit if dirs of a shared multifile torrent are not writable
2026 4368: new option: create_file_sparse true|false, this works only for
2027 files on NTFS drives in MinGW compiled MLDonkey (thanks to zet)
2030 4385: EDK: Preserve untested servers (pango)
2031 4351: optimize ip blocking lists (pango)
2032 4376: EDK: Re-enable result_done (already downloaded) in search results (zet)
2033 4126: Improved log_file handling
2035 * there is now a default log_file: mlnet.log, old downloads.ini is *not* updated
2036 * its default log_file_size is 2MB, this is checked only on core start,
2037 if log_file is bigger it will be resetted
2038 * logging will always be appended to log_file
2039 * new command "clear_log" to reset log_file while the core is working
2040 * new command "open_log" to reopen log after close_log
2041 * removed command "log_file", same can be achieved through "set log_file <file>"
2043 4384: HTML: Add "Import Serverlist" in servers,clean third button row (schlumpf)
2044 4365: Disable console "X" close button on MinGW, second version (CML)
2045 4382: Solve libgd configure in mandrake 10.0
2046 4381: better differentiation of eDonkey and BT Stats Table (schlumpf)
2047 4380: some info for SCM Version (CVS co Date/ SVN revision) (schlumpf)
2048 4379: Fix compile error when libgd is not present
2049 4378: Longhelp: Better description for add_user
2050 4377: Better description for shared_directories in downloads.ini
2051 4356: EDK: Improved server.met handling / fix contact.dat loading
2053 * Changed user agent from "MLdonkey" to "MLDonkey", solves problem
2054 when downloading files from www.gruk.org and www.srv1000.com
2055 * MLDonkey new recognizes links like ed2k://|serverlist|http://server/file.ext|/
2056 * "servers" command now takes URLs
2057 * if period in web_infos is zero the file is only loaded during core start
2058 (as requested by the owner of www.gruk.org)
2059 * in all places where a filename or URL for a server.met can be used this
2060 file can also be compressed with gz/bz2/zip
2061 * automatically replace old default server.met in web_infos
2063 "http://ocbmaurice.dyndns.org/pl/slist.pl/server.met?download/server-best.met");
2064 with fake servers free list from gruk.org:
2065 ("server.met", 0, "http://www.gruk.org/server.met.gz");
2066 * fixed bug which prevented loading Overnet contact.dat file in web_infos
2069 4368: Use sparse files on MinGW/NTFS (zet)
2070 4370: BT/Win32: fix multifile hashing (Amorphous)
2073 4366: HTML: more maintainable html_mods styles (pango)
2074 4367: Improve logging
2075 4361: New command: uptime
2077 Lots of improvements for MinGW, this platform now supports
2078 files > 2GB, threads and libgd generated statistics.
2079 Here you will find compilation instructions:
2080 http://mldonkey.sourceforge.net/Windows
2082 4342: Large_file support for mld_hash and MinGW MLDonkey core (zet)
2083 4358: Add thread support for MinGW (zet)
2084 4362: configure.in support for libgd on MinGW/FreeBSD
2085 4349: increase filedescriptor limit for mingw (zet)
2086 4365: Disable console "X" close button on MinGW (zet)
2089 4360: Configure: Test for nl_langinfo(CODESET)
2090 4359: Upload: Give upload slot truely randomly (pango)
2091 4347: Improve exit codes, codes were inspired by sysexits.h
2092 4345: Code clean: Optimize redundant time_to_string functions
2093 4357: Rename ed2k_hash to mld_hash
2094 4344: Improve ./configure checks (bzlib.h, iconv on Windows)
2095 -------------------------------------------------------------------------------
2096 2005/08/21: version 2.6.3 = tag release-2-6-3
2097 4254: Patch reverted, did not work
2098 "html_mods: Table data is incorrectly centered"
2099 4336: Improve some log file messages
2100 4321: BT: fixed "make_torrent produce corrupted files on Windows" (beedauchon)
2101 4335: Buildinfo: Fix bug if Bzip2 version string is empty (beedauchon)
2102 4329: HTTPClient: Implement retries for failed requests
2103 4319: Fix compile if libbz2 is not available,
2104 new configure option: --disable-bzip2
2105 4334: BT/FileTP: Some progress on cancel bug (kempston)
2106 4333: send ip blocked addr state to gui, compute_torrent from gui (zet)
2107 4332: Let configure fail if GNU make is not installed
2110 4323: HTML: Search results: new colums for Bitrate, Codec and length
2111 4324: Log: Improve output for verbosity "hid"
2112 4322: EDK: compatibleclient 40 -> Shareaza
2113 4320: Fix compile on FreeBSD < 5.3
2116 4317: Updated ./configure for compiling lablgtk2 with --enable-batch
2117 4316: Updated ./distrib/Install.txt for Ocaml 3.08.4 and new GUI options
2118 4292: html_mods: Match styles default frameHeight with the common default
2119 4314: Allow compiling with Ocaml 3.08.4
2120 Compiling with 3.08.3 still works
2121 4312: BT: Allow seeding (beedauchon)
2122 4311: BT: create_torrent: default_tracker and default_comment (beedauchon)
2123 4309: GUI: send ed2k/bt network u/d totals (zet)
2124 4308: Gnutella/G2: Fix commit if no TigerTree is available
2125 4305: buildinfo: Print some system internals
2126 4304: EDK: Fix disconnect state with verbosity = "hid"
2127 4297: Create ini file backups on shutdown
2128 Note: file_sources.ini is never saved, it makes no sense to keep this file.
2132 * backup_options_format, default "tar.gz", "zip" can also be used
2134 * backup_options_delay, default 0
2135 How often (in hours) should a backup of the ini files be written into old_config.
2136 A value of zero means that a backup is written only when the core shuts down.
2138 * backup_options_generations, default 10
2139 Define the total number of options archives in old_config.
2141 Command save got two new parameters:
2142 * "save all" saves options, sources and creates a ini file backup
2143 * "save backup" speaks for itself;-)
2144 -------------------------------------------------------------------------------
2145 2005/08/11: version 2.6.2 = tag release-2-6-2
2146 4296: BT: Fix options parsing
2147 -------------------------------------------------------------------------------
2148 2005/08/09: version 2.6.1 = tag release-2-6-1
2149 4291: EDK: Better logging for unknown compatibleclient values
2150 4290: BT: Some small fixes for messages interested and cancel (beedauchon)
2151 4289: LOG: Improve verbosity "hid"
2152 4287: Better clear Fifo buffers (bogeyman)
2153 4268: Web/Gui: free core's buffer allocated by vd # and gui (bogeyman)
2156 4285: IPBlock: Server support
2157 * display in vm/vma if a server has a blocked IP
2158 * prevent connections to a IP blocked server,
2159 in EDK case this resulted in a LowID connection
2161 4284: Remove whitespaces / Some logging changes
2164 4279: MinGW: HDD statistics support
2165 4281: Remove white spaces / Some logging stuff
2166 4251: HTML: few fixes / new option html_frame_border true|false
2167 4278: Windows: Fix bug creating work dirs in empty dir
2170 4276: IPBlock: Never block local IPs even if they are in blocklist
2171 4274: Use relative path if downloads.ini is present
2174 4272: HTML: Cursor focus in input field
2175 4271: GTK2: Fix compile bug in src/gtk2/chat/chat_art.ml
2176 4155: Let MLDonkey create its data in $HOME/.mldonkey
2179 * if the core is started in a directory where downloads.ini exists
2180 this directory will be used, this is the same behaviour as before
2181 * on Windows the current directory will always be used,
2182 this is consistent with eMule
2183 * on other systems $HOME/.mldonkey will be created and used,
2184 this is consistent with eDonkey, aMule and Unix standards
2185 * if variable MLDONKEY_DIR is used that directory has priority,
2186 to simulate the behaviour without this patch use:
2187 export MLDONKEY_DIR="." && ./mlnet
2190 4270: Overnet: Convert local IPs sent by OV clients to real IPs
2191 4269: IPBlock: Several fixes, better zip file support
2192 4264: Fasttrack: Force commit of all complete files
2194 4258: BT: Statistics, recognize more clients, min_interval,
2195 torrents/old and more...
2196 This patch was done by Beedauchon, it incorporates weeks of work from him.
2197 * move .torrent to torrents/old if the file is not shared anymore
2198 * new command rm_old_torrents: delete all files in torrents/old
2199 * eDonkey like statistics for BT clients (csbt command)
2200 * compute_torrent and make_torrent can put a comment into the .torrent file
2201 * MLdonkey computes a BT-compatible client_uid starting with "-ML"
2202 * parse more fields from .torrent files and display them in HTML interface
2203 * Tracker: replace "/tracker" by "/announce"
2204 * Tracker: add "/scrape"
2205 * Multitracker support for downloading
2208 4263: Fasttrack: Force bootstrapping nodes
2211 4261: HTML: Add DL button - opens dialog for entering links (omgwtf2)
2212 4260: IPblock: Enable IP blocking for Overnet and HTTP server
2213 (=BT Tracker) (beedauchon)
2214 4257: Kick uploaders which send no data for more than 1 minute
2215 4256: Print message if glibc version mismatch
2216 updates for buildinfo (version of libbz2, libz, libpng)
2219 4255: HTML: updates for cs command
2220 4254: html_mods: Table data is incorrectly centered
2221 4253: HTML: New style Construction (omgwtf2)
2222 4251: few html fixes (reverted) (beedauchon)
2225 4250: Remove whitespaces from commonUploads.ml
2226 4249: HTML: Links to fake check services in search results (bogeyman)
2229 4194: FileTP : Add support for "referer", error messages cleanup (beedauchon)
2230 4245: BT: Remove whitespace (beedauchon)
2231 4244: Change web_infos period to hours (this is a bugfix,
2232 no need to change ini files)
2233 new option: enable_mlnet_redirector
2236 4243: FileTP: Clean lots of whitespaces
2237 4031: HTML: relative refs in HTML output (beedauchon)
2238 4191: Access to disk data (free space, max file name length)
2239 This is first step implmenting this, checkout the
2240 disk command for debugging.
2241 4242: IPBlock: Support guarding_full.zip
2242 4241: Fix html_mods_vd_gfx_remove
2243 4240: EDK: New option keep_downloaded_in_old_files
2246 4184: support guarding.p2p in zip/gz/bz2 format
2247 bz2 segfaults on OpenBSD, therefore disabled
2248 see notes in the patch on how to compile with MinGW
2251 4205: Improve logging with timestamps 2 (incomplete)
2252 4204: Improve logging with timestamps (incomplete)
2255 4195: GUI: Change configure options
2257 Now "./configure" compiles no GUI, "--disable-gui" is default.
2258 To use a GUI use "--enable-gui", this enables GTK2 GUI.
2260 --enable-gui=newgui2 (use GTK2 GUI)
2261 --enable-gui=newgui1 (use GTK1 newgui)
2262 --enable-gui=oldgui (use GTK1 oldgui)
2263 Options like "--disable-newgui" or "--enable-gtk2" were removed.
2266 4193: CommonGraphics : some whitespace cleanups
2267 4190: Gdstats: Fix tag.png/jpg link output
2268 4188: Overnet: Dont put our own ID in the buckets (bogeyman)
2269 -------------------------------------------------------------------------------
2270 2005/07/19: version 2.6.0 = tag release-2-6-0
2271 4175: New option html_mods_use_js_tooltips, default true
2273 4187: Update version to 2.6.0
2274 4186: SCM date for Windows / FreeBSD configure enhancement
2277 4183: HTML: Overnet/Kademlia stats improvements (beedauchon)
2278 4118: Solve memory leak in Overnet/Kademlia
2279 4182: Get CVS date in configure for OpenBSD
2280 4175: HTML: Add Multiline File Information in download table
2284 4181: EDK: Control identified versions
2285 4180: EDK: Files copied to incoming dir for sharing do not
2286 appear in upstats after hashing
2287 4179: Get CVS date in configure for FreeBSD & Mac OS X
2288 4178: Dont build GUI on "make release.mlnet.static"
2289 4177: Clear logging, first steps toward time stamps
2290 4175: HTML: Add Multiline File Information in search results
2291 4174: EDK: Re-enable source exchange with eMule clients
2292 4163: EDK: Avoid saving sources every save_options_delay
2295 4173: Clear whitespace from code
2296 4168: HTML: Graphical chunk display in vd <num> (beedauchon)
2297 4167: Gdstats: Fix corrupted pics output/improved output (beedauchon)
2300 Remove obsolete ./src/gtk/gui2 directory
2301 4165: Clean log file
2302 4164: Gnutella/G2: Update Webcache URLs
2303 4160: resize properly the names in the gtk2 gui (su_blanc)
2304 4158: EDK: Parse and display version numbers, also in GTK2 GUI (su_blanc)
2305 4114: EDK: new command "reset_stats" (Knocker)
2308 4159: Removed whitespaces (beedauchon)
2309 4156: tray icon in x11 for GTK2 GUI (su_blanc)
2310 4157: fix mlnet.pid checking at start up for GUI
2313 4153: More infos for mem_stats
2314 4146: Use lprintf_nl instead of "lprint_newline ()" or "\n" (beedauchon)
2317 4118: Improve Overnet/Kademlia logging and mem_stats output
2319 -------------------------------------------------------------------------------
2320 2005/07/05: version 2.5.30.17 = tag release-2-5-30-17
2321 4142: Remove unneeded code
2322 4141: Cleaned logging
2323 4140: New option: create_dir_mask
2324 New directories in incoming_directories are created
2326 4139: EDK: don't ask clients for non-downloading files
2329 patch posted in bug 13619:
2330 Always returns ASCII(C) locale when it use libcharset
2333 4135: Change emule_version
2334 4134: Clean core startup messages and log output
2335 4130: Print warning message for Windows users
2336 4128: Notification mail: show hash and download time
2337 4127: Add TOS support
2338 4123: First steps toward integrated user-management:
2339 new commands "remove_user" and "users",
2340 only "admin" is allowed to kill the core
2341 HTML interface to setup users (Options, Users)
2344 4125: Some configure.in fixes if libpng is misssing in libgd
2347 4122: EDK: "server <met>" command now responds with a clearer answer (Knocker)
2348 4121: EDK: Dont remove preferred server if server_users < min_users_on_server
2350 4120: EDK: send emule_version to servers (Knocker)
2351 4083: new build target: release.mlnet.distri
2352 it contains both the dynamic and the static linked core
2355 4115: sort output of "links" in alphabetically order (Knocker)
2358 4109: EDK: Improve update_server_list
2359 4104: Check accessibility of used directories on core startup
2360 4101: Telnet: Show BT hash in vd <num>
2361 4099: Automatically insert version number in Windows ressource file
2362 4093: Add Buildinfo button to HTML, Help+
2363 4092: Add Razorback-Stats and Bitzi links to upstats
2364 4091: EDK: Some progress on the cancel bug
2365 4090: Overnet: Add stats to mem_stats and code cleanup
2366 4089: gdstats: Update second graph correctly
2367 4085: change download priority to keep started download rolling
2368 4071: Code cleanup: Replace lprintf_newline with "\n"
2369 -------------------------------------------------------------------------------
2370 2005/06/06: version 2.5.30.16 = tag release-2-5-30-16
2371 4070: Exit core on startup if a port is already used
2372 4079: mlnet server id fix
2375 4067: BT: Fix multifile commit
2376 (updated to create dirs with rights 777)
2377 4063: HTML: Some improvements (beedauchon)
2380 3984: Make filename_conversions option implementation safe
2381 4042: Avoid sharing temp dir
2382 4046: Hotfix: Circumvent max_hard_download_rate/2 bug
2383 4051: mailer:encode subject and include a time zone
2384 4055: Allow canceling of ed2k downloads if G2 is enabled
2385 4056: Close all files if core receives SIGHUP
2386 4057: Hotfix: Close files if an upload slots gets free
2387 4058: Remove donkey_devel code, it is outdated
2388 4060: Extend core startup message
2389 4061: Block system signals during core startup
2392 4040: EDK: Do not truncate shared files
2393 4043: Avoid locking shared files
2394 4044: G2: Enable dllink support for servers and friends
2395 4045: Remove command "-daemon", use 'mlnet > /dev/null 2>&1 &' instead
2396 4050: Sync with Amorphous rev325
2399 4033: Fix "make clean" on MinGW/Cygwin (updated 2005/05/28)
2400 4034: HTML: sources command has HTML output now (from beedauchon)
2402 Replaced docs/http-1.1.txt and docs/uri.txt with links
2403 to the original files.
2405 Remove big, dcgui, giFT, hwd, lopster and small from ./icons
2406 GTK old- and newgui and GTK2 GUI compile without those dirs.
2408 Only these sets are used:
2409 ./config/Makefile.in: ICONS_CHOICE=icons/rsvg
2410 ./config/Makefile.in: ICONS_CHOICE=icons/tux
2411 ./config/Makefile.in: ICONS_CHOICE=icons/kde
2414 3985: Create pid file
2415 3991: Respect $MLDONKEY_DIR
2416 3993: Enable signal handling on MinGW
2417 3996: EDK: Support auxports
2418 4017: Fix use_tags compile
2419 4018: New EDK clients: Emule Plus + Hydranode
2420 4023: Enhance buildinfo
2421 4025: Enable sha1new on Solaris and Windows
2422 4026: Remove all servers with "rem all" works now
2423 4027: Fix jpg viewing with gdstats
2424 4028: Remove gd generated files (cosmetic code update 2005/05/19)
2425 4029: EDK: Print warning if enable_servers false
2428 3979: Show CVS date in CURRENT_RELEASE
2429 3971: Send sources availability
2430 3977: html_mods: fix server listing when a net is disabled
2431 3978: properly sort availability in the GTK2 GUI
2432 * Patch from beedauchon adds html support to donkeys
2433 new_print_mod_stats if emule mods statistics are disabled.
2434 * Patch from beedauchon adds html support to the command gstats.
2435 * Patch from beedauchon adds html support to the command ov/kad_stats.
2436 * Patch from beedauchon adds some fixes to the html output
2437 of the networks command.
2438 -------------------------------------------------------------------------------
2439 2005/05/02: version 2.5.30.15 = tag release-2-5-30-15
2440 This version shares the same code as Amorphous revision 304.
2442 3963: Remove Audiogalaxy code
2443 3964: Remove obsolete Cymes entries
2444 3970: Print web_infos (from beedauchon)
2445 3972: bug fixes for the GTK2 GUI
2446 3973: Support for Overnet contact.dat (from beedauchon)
2447 3974: HTML: RSS support (from beedauchon)
2448 3975: EDK: Fix for sending shares to server
2449 3976: Remove obsolete Ares code
2450 -------------------------------------------------------------------------------
2452 3956: Set utf-8 character encoding in notification mails
2453 3952: Print glibc version in buildinfo
2454 3969: Sync with Amorphous rev293
2456 * A little cleanup for debug output.
2458 * Patch from beedauchon fixes transparency issues with
2460 ---------------------------------------------------------------------
2461 2005/04/26: spiralvoice (version 2.5.30.14 = tag release-2-5-30-14)
2463 3908: Split patch 3900: Vorbis file support
2464 3949: Some improvements for graphical stats
2465 3950: bug fixes for the gtk2 GUI
2466 3951: servers enhancement
2467 ---------------------------------------------------------------------
2468 2005/04/25: spiralvoice (version 2.5.30.13 = tag release-2-5-30-13)
2469 This version shares the same code as Amorphous revision 286.
2471 3947: More build fixes for sha1new on FreeBSD
2472 ---------------------------------------------------------------------
2473 2005/04/24: spiralvoice (version 2.5.30.12 = tag release-2-5-30-12)
2475 3943: Fix building without gd
2476 3944: Sync with Amorphous 284
2477 * lots of whitespace cleanups
2478 * Some cleanups in configure.in .
2479 * Corrected that --enable-gd is the default
2480 ---------------------------------------------------------------------
2481 2005/04/24: spiralvoice (version 2.5.30.11 = tag release-2-5-30-11)
2483 3942: Fix for Gnutella/G2/Fasttrack dllink handling
2484 ---------------------------------------------------------------------
2485 2005/04/24: spiralvoice (version 2.5.30.10 = tag release-2-5-30-10)
2487 3938: Print cwd on core start to help users finding their ini files
2488 3939: gd generated bandwith-usage graphic in the web-ui
2489 3941: Sync with Amorphous rev280/281
2490 * Little fix for the buildsystem for commonGraphics.
2491 * Fix the sha1new configure-test for FreeBSD.
2492 * I hope, that i fixed problems with linking libiconv for FreeBSD.
2493 * Change the iconv check a bit. Users with unusual locations
2494 should use --with-libiconv-prefix with configure. Still
2495 seems not to work right on FreeBSD.
2496 * Fix sha1new for FreeBSD for sure now.
2498 ---------------------------------------------------------------------
2499 2005/04/23: spiralvoice (version 2.5.30.9 = tag release-2-5-30-9)
2501 3919: Move users/passwords from downloads.ini to users.ini which has rights 600
2502 3930: Build fixes for FreeBSD & OpenBSD (some more patches)
2503 3935: Core did not create incoming on first start
2504 3937: Whitespace cleanup of configure --help
2505 ---------------------------------------------------------------------
2506 2005/04/23: spiralvoice (version 2.5.30.8 = tag release-2-5-30-8)
2508 Mozilla MLdonkey Protocol Handler updated to version 1.5
2509 3924: More bt peer ids + clean up networks cmd in html (table sorts properly)
2510 3926: mac osx gtk2 gui building
2511 3930: Build fixes for FreeBSD & OpenBSD
2512 3931: Prevent DDOSing fm2.imesh.com
2513 3932: Print warning if core cant do DNS lookups
2514 ---------------------------------------------------------------------
2515 2005/04/20: spiralvoice (version 2.5.30.7 = 2.6pre19, tag release-2-5-30-7)
2517 3915: Show only searchable networks in HTML, search
2518 3916: Change Opennap servers_list_url to a working one
2519 3918: HTML: Print network capabilities table
2520 3921: Change Fasttrack temp file names
2521 3922: Re-enable use of ft:// links to add Fasttrack servers
2522 ---------------------------------------------------------------------
2523 2005/04/13: spiralvoice (version 2.5.30.6 = 2.6pre18, tag release-2-5-30-6)
2525 * Add an headder-file to charsetstubs.c so it compiles on
2526 certain platforms. This fixes savannah bug #12683.
2528 To compile on FreeBSD and OpenBSD link these files:
2530 /usr/local/include/libcharset.h
2531 /usr/local/include/localcharset.h
2532 /usr/local/include/iconv.h
2534 to /usr/include and /usr/local/lib/libcharset* to /usr/lib.
2535 ---------------------------------------------------------------------
2537 2005/04/13: spiralvoice (version 2.5.30.5 = 2.6pre17, tag release-2-5-30-5)
2539 3894: New build targets: release.utils.shared & release.utils.static
2540 3895: Amorphous patches from SVN revision 259
2541 * If using iconv in an libiconv, check for libcharset.h and
2542 use it, if it is not present use localcharset.h . This
2543 should fix compiling on some systems.
2544 * Lower AC_PREREQ to 2.53 (debian wood needs that).
2545 * Some whitespace fixing for configure --help .
2546 * Use -mno-cygwin for cc when --enable-mingw is used. But it
2547 seems like it does not prevent the freezing we know from
2548 cygwin compiled cores.
2549 * Use the present fd for getsize64 in unix32. This should
2550 fix multi-files for bt in win32, as win32 only allows one
2551 fd per file because of the default locking behaviour.
2552 * Ignore exceptions from utimes, as in win32 the default
2553 locking behaviour prevents them.
2555 3896: BT support for file_started_cmd
2556 3901: Change HTML headers from iso-8859-1 to UTF-8
2557 3902: Amorphous patches from SVN revision 264
2558 * Add -mno-cygwin to -ccopt for ocaml. Seems not to fix
2559 --enable-mingw either.
2560 * Clean up canonize_basename, now that we have charset
2561 conversion. Now we should be able to have most chars in
2562 filenames if the locale is set right.
2563 * When shorten-ing names, just use Charset.to_utf8 instead
2564 of String.excaped . Now non-ASCII chars should show up
2565 nicely in web-ui and telnet-ui. The conversion should be
2566 done when these strings enter the core, but that would be
2568 * Remove an Charset.to_locale that shouldn't be there.
2570 3903: Remove some log messages
2571 3904: Format "vd <num>" output in telnet to have md4 hashes back
2572 3905: Prevent crash on start when wrong system date is set
2573 3906: Fix GTK1 GUI compile (was broken since patch 3867)
2574 3907: Fix UTF-8 stuff
2575 3909: Some cosmetical stuff from Amorphous rev 266
2576 ---------------------------------------------------------------------
2578 2005/04/07: spiralvoice (version 2.5.30-4 = 2.6pre16, tag release-2-5-30-4)
2581 3887: Syncing Savannah CVS with Amorphous SVN
2582 * Applied savannah patch #3867 with small modifications, so
2583 it builds on systems that don't have libiconv but have
2584 iconv() in libc (i hope it still works on systems with
2585 libiconv :) ) and so that the gui protocol version 30
2587 - new gui protocol version 31 (see guiProto.ml) fixes
2588 savannah bug #11988 : GUI-Protocol doesn't send hashes
2589 for files not from the donkey-network
2590 - fix for savannah bug #12390 : GTK2 GUI configuration
2592 - bt shares now show up under shares
2593 - gtk2-gui: fix some bugs in text display (while using
2595 - gtk2-gui: fix upload/download rate of clients
2596 - gtk2-gui: md4 is replaced by uids everywhere (downloads,
2598 * Patch from beedauchon on irc fixes that gnutella and
2599 gnutella2 options had the same prefix.
2600 * Corrected debug-output in http_client.ml form last commit.
2601 * Little debug-log cleanup.
2602 * Fixed savannah bug #12348 gnutella (and related networks)
2603 accumulated more and more ultrapeers (servers) during
2604 runtime and did not forget them, so memory usage growed
2606 ---------------------------------------------------------------------
2608 2005/04/04: spiralvoice (version 2.5.30-3 = 2.6pre15, tag release-2-5-30-3)
2610 3883: Fix compile errors in GTK1 GUIs due to patch #3867
2611 ---------------------------------------------------------------------
2613 2005/04/04: spiralvoice (version 2.5.30-2 = 2.6pre14, tag release-2-5-30-2)
2615 3864: html-interface: slightly easier renaming
2616 3867: bug fixes for the new GTK2 GUI
2618 3873: Syncing Amorphous 2-5-30ac with 2-5-30-1
2619 * Now really fixed the infinite loop in the sourcemanagement.
2620 * The check for the version of ocaml in the configure file
2621 should be fixed now. Now 3.08.3* and 3.08.2* (for mac only
2622 3.08.2+4 to +8) are recognized. If needed 3.08.3 should be
2623 downloaded correctly.
2624 * Some debug-output cleaning.
2625 * Updated warning message for old mldonkey clients, they
2626 should at least upgrade to 16v.
2627 * Removed option master_server_min_users as it was not used
2630 3874: Extend vd command with parameters
2631 * add telnet commands
2635 shows only chosen downloads
2636 tip: use aliases vdd -> vd downloading
2640 3876: Support subrelease in configure.in
2641 3877: Identify more bt peer ids (client software)
2642 3882: Decode http-header-name location case-insensitive
2643 ---------------------------------------------------------------------
2645 2005/03/20: spiralvoice (version 2.5.30-1 = 2.6pre13, tag release-2-5-30-1)
2647 This release shares the same code as Amorphous SVN release 2-5-30ab
2648 except the fact is needs Ocaml 3.08.3
2650 3792 : EDK/HTML: More readable uptime in cs
2651 3795 : Updated files for bugs building GTK2 GUI, GTK1 newgui and GTK1 oldgui
2652 * To build GTK1 newgui: ./configure
2653 To build GTK1 oldgui: ./configure --disable-newgui
2654 To build GTK2 GUI: ./configure --enable-gtk2
2655 lablgtk-1.2.7 and lablgtk2-2.4.0 can both be installed at the same time.
2657 3816 : New URLs in FakeCheck. Corrected Bitzi URL
2658 3573 : Allows for aliased commands in driverCommands
2659 3822 : Fix for completed files appear multiple times in upstats
2662 3828 : Opennap compiles again
2663 * this does not mean the module actually works;-)
2665 3830 : Review build process
2666 * Ocaml 3.08.3 is now required to build MLDonkey
2667 * Removed config/Makefile.config.i?86.in files. If you want
2668 to build for an arch that is not the build-machine then
2669 use for example ./configure --host=i586-pc-linux-gnu .
2670 * Added the opt-binaries from utils to make clean.
2671 * Added configure option --enable-debug .
2672 * Removed the configure options for directconnect and
2673 audiogalaxy, any developer wo wants to work on them can
2674 add them again and nobody else should use them.
2676 3791 : Syncing 2.5.30 and Amorphous 2.5.30aa
2678 * Adapted a change to the command "sources" from savannah
2679 patch #3621 that had a new command "tsources". "sources"
2680 now prints it's information in a much more compact table.
2681 * Savannah patch #3304 has UTF 8 encoding for strings from
2683 * Changed so redirectors (gwebcaches) for gnutella/g2 are
2684 only contacted once a day. This is no good solution, but
2685 it should prevent us from harming the network.
2686 * Prevent active_udp_queue in g2 from growing over length
2687 100 and eating all memory (this is a workaround and
2688 should be fixed for real someday).
2689 * Now ./configure checks for autoconf259 and autoconf-2.59
2690 and uses these instead of autoconf. AC_PREREQ in
2691 configure.in is now set to 2.59 instead of 2.5 .
2692 * The default port for the gift gui is now 0, to disable it,
2693 because it did not ask for authentication.
2694 ---------------------------------------------------------------------
2696 2005/03/02: spiralvoice (version 2.5.30 = 2.6pre12, tag release-2-5-30)
2698 This version solves the serious file corruption bug in version 2-5-29
2699 ---------------------------------------------------------------------
2700 These patches were applied to 2-5-29 by b8_bavard without mentioning
2703 3357: BT: use config option for hardcoded TCP-read-timeout
2704 3326: html_mods: Show sources info in vd # output again
2705 (bt_vd_soft.diff + html_print_sources.diff)
2706 -------------------------------------------------------------------
2707 This patch was applied to 2-5-28-1 by spiralvoice without mentioning
2710 3672: Let mldonkey upload (complete files) work with Low ID clients
2711 -------------------------------------------------------------------
2713 These patches are part of release 2.5.30:
2715 3676: BT/fileTP HTTP header check (header_checks-fix.diff)
2716 3551: new gtk2 gui (3551_1_29.patch.gz, rsvg_icons_set.patch.gz)
2717 3308: Optionally skip (queued/paused) files in html vd display
2718 3461: [EDK] Fix some bugs (3461_29.patch, tweak_commonSources.2-5-28-fixed.patch)
2719 3476: Fix bug in friends file list
2720 3481: Let configure fail if Ocaml and wget are not available
2721 3484: Add vd link for nocheckboxes html interface (3484_2.patch)
2722 3490: Some leftovers from patch_pack 2-5-28h
2723 (lowid_29.patch, cleanups_small-fixes.patch, 3490_2.patch)
2724 3491: Some stuff for config/Makefile.config.i?86.in
2725 3494: BT: tracker interval fixed again (this patch replaces
2726 patch 3447 from 2-5-28-1, 3494_29.patch)
2727 3522: BT guarding.p2p support
2728 3575: Detect if config/ directory is absent during configure
2729 3603: Error in mldonkey-design.tex
2730 3604: Fix for bug #11394 - HTTP redirection
2731 3608: EDK: Higher default for walker_server_lifetime
2732 3609: New extensions for video search (extensions28.patch)
2733 3610: Kademlia nodes are collected even if Kademlia is disabled
2734 3615: Small typo, clean logfile
2735 (log.patch, log.patch (for Overnet messages, new in 2-5-28p,
2736 typo.patch, 3615_4_29, replaces edkudp_messages.patch,
2737 3615_5_29, replaces compatableclient.patch)
2738 3616: fix for too much source-queries to servers for 2.5.28i
2740 3620: Donkey guarding.p2p support (3620_29.patch)
2741 3621: new command "tsources" prints table of sources
2742 3622: we should only ask for sources if we need_new_sources (3622_29.patch)
2743 3627: Adding EDK servers with edk://server did not work
2744 3631: Solve configure problem on Mac - fixes bug 11365
2745 3634: This patch addes RazorBack's file history link to interface
2746 3637: Fix for MacOS Orphaned File Descriptor Bug
2747 3648: HTML: Display sharing strategies in Options, Shares
2748 3652: TELNET: Display search result summary
2749 3653: Handle HTML error 304 in http_client.ml (3653_29.patch)
2750 3655: Bugfix for multiple sourceexchanges with the same peer
2752 3656: Parse eMules ipfilter.dat for use in IP blocking function
2753 3672: Let mldonkey upload (complete files) work with Low ID clients
2754 3675: EDK: keep_cancelled_in_old_files works again
2755 3677: Fix for bug #11686 - fileTP cancel
2756 3680: get more infos on servers per UDP
2757 3685: fileTP FTP quick fix
2758 3688: Avoid Exception Pervasives.Exit in QueryFileReq
2759 3707: Use Ocaml 3.08.2 instead of 3.08.0 when no Ocaml is installed yet
2760 3715: Some care for options
2761 3719: New command: buildinfo (3719.patch, buildinfo2.patch, 3719_3.patch)
2762 3721: HTML: Remove filewatcher.org from Search function
2763 3725: EDK: 15 new eMule mods
2764 3726: EDK: Better recognition for Shareaza clients
2765 3728: EDK: vd <num> source score display bugfix
2766 3734: Configurable socket option so_keepalive (3734_29.patch)
2767 3737: FT/GT: Canceling download works again (3737_29.patch)
2768 3744: bugfix #11362 and some description cleanup
2769 3754: Bitzi lookup works again in Search results interface (3754_29.patch)
2770 3157: Send core update message to "new mldonkey" (3157_29.patch)
2771 3681: remove guarding block of indirect sources
2772 3717: improvement of patch 3672 (additonally bugfix for wrong Hi/Lo-ID in serverlist)
2773 3773: Solve compile bug in tools (dp500.patch, make_torrent.patch)
2774 3673: do not send the entire list of shadred file to servers every 5 minutes
2776 3291: Fix for bug 9996 - Missing Date Header in Emails
2777 (fixed problems with 3291_29.patch)
2778 3736: Bugfix for Chunks-Randomizing and LowID recognition on inbound connections
2779 3722: Enhancements to the sourceexchange and some minor ED2K bugfixes (3722_29.patch)
2780 3735: Sourcemanagement revisited (3735_29.patch)
2781 3776: Fix for file corruption in CVS 2-5-29
2782 3777: Lots of backported stuff from Amorphous branch 205
2783 (backport.patch, log.patch)
2785 -------------------------------------------------------------------
2787 UPDATE (2005/02/20): branch 2-5-28 was updated, to check out use "-r release-2-5-28-1"
2789 A SERIOUS bug is in 2.5.29, don't use it, version 2.5.30 will appear soon !
2790 (if you do a checkout/update , use tag 'release-2-5.28' instead)
2792 2004/10/26: Fabrice (version 2.5.29 = 2.6pre11, tag release-2-5-29)
2793 - Bittorrent: files should be shared even after commit.
2794 - Removed some options:
2795 * "incoming_directory", replaced by "shared_directories", with
2796 strategy "incoming_files" (for downloaded files) and
2797 "incoming_directories" (for downloaded directories on Bittorrent).
2798 * For networks, "network_options_prefix" and "commit_in_subdir".
2801 - Measure latencies between clients and send them to redirectors:
2802 * On TCP connections
2804 * Edonkey Server Ping/Pong
2805 * Overnet/Kademlia clients Connect/ConnectReply
2806 * Fasttrack Supernode Ping/Pong
2809 - Many changes and patches applied, labeled as UNSTABLE until further
2811 - Applied Savannah patches: #3321 (print_sources), #3338 (BT-quit),
2812 #3341 (BT-numwant), #3352 (GUI-GetVersion), #3356 (BT-showfile),
2813 #3363 (gzip-0len), #3407 (BT-referer), #3408 (complete),
2814 #3409 (download-sort), #3411 (setoptions), #3412 (BT-delay),
2815 #3413 (BT-messages), #3414 (BT-latepeerid), #3415 (ED2K-ip),
2816 #3420 (BT-chooser), #3421 (BT-events), #3422 (BT-reshare),
2817 #3423 (BT-manualstop), #3425 (BT-latepeerid2), #3427 (logchats),
2818 #3428 (BT-delay2), #3429 (BT-handler), #3430 (BT-verify),
2819 #3435 (BT-assert1), #3436 (BT-parsehead), #3438 (ED2K-proto),
2820 #3439 (swarm2), #3442 (kad-options), #3443 (log)
2821 - Default is now Swarming2.
2824 - Gnutella/Gnutella2: deflate_connections works
2828 * Description of shared files is saved on disk during execution.
2829 * Computed UIDs, Md4s and tiger-trees are stored in shared_files.ini
2832 * Experimental ultrapeer mode for local experimentations (will not
2833 work on the Fasttrack network).
2837 * Start download without the torrent, when enough information is known.
2841 * Clean protocol specification
2845 - Gnutella/Gnutella2:
2846 * Implemented basic ultrapeer (without Bloom filters)
2847 * Implemented HTTP upload
2848 * Implemented TigerTree verification
2852 * chunk*.tmp are always removed
2853 - Applied patches: #3305 (config gtk), #3306 (mlgui align), #3307 (clean),
2854 #3313 (ft), #3317 (bt softs), #3319 (floats),
2856 2004/08/18: Fabrice (version 2.5.28 = 2.6pre10, tag release-2-5-28)
2857 - Tested CommonSwarming2 with Edonkey and BT (should also work with
2861 - Applied patches: #3279 (cygwin), #3288 (aclocal), #3291 (maildate),
2862 #3292 (no gtk-config), #3554 (sharedbytes), #3561 (htmlpref),
2867 * CommonSwarming: one bug causing BAD WRITE, and one bug causing bad
2868 selection of the block to download first.
2870 * New "merge f1 f2" command to declare that data from file f2 should be
2871 saved in file f1. Not that all the data already downloaded to f2 is
2876 * DriverCommands: add_user shouldn't raise exception anymore (bug #9990)
2880 * DonkeyOptions: compute_md4_delay forced above 0.1 (bug #8812)
2881 * CommonNetwork: use Url.decode on urls
2882 * Http_client: correct Host header (bug #8705)
2883 - Applied patch #2974 (wget)
2884 - CommonSwarming2: new implementation for multi-network swarming (not
2885 working yet). Not used anyway unless -enable-swarming2 is specified.
2887 2004/08/10: Fabrice (version 2.5.27 = 2.6pre9, tag release-2-5-27)
2888 - Applied patch #3276 (gui proto 29)
2890 * CommonInteractive: Filename conversion of forbidden Windows characters
2891 before saving files (bug #9213)
2892 * MlUnix: stdout and stderr are not closed, just redirected to /dev/null
2894 * DonkeyFiles: limit upload to client to max_msg_size (bug #9818).
2895 * CommonSources: fixed bug preventing saved sources from being used
2896 (and thus previously known emule clients from being used).
2897 * CommonSwarming: save and reload chunks ages
2898 * FasttrackComplexOptions: sources are correctly loaded
2899 - Fasttack now uses module CommonHosts
2901 2004/08/09: Fabrice (version 2.5.26 = 2.6pre8, tag release-2-5-26)
2903 * GuiDecoding: bug causing deconnection for protocol 28
2904 * New Fasttrack files from giFT-Fasttrack
2905 * New option filename_conversions in downloads.ini to translate chars
2906 in names before saving files.
2907 * DonkeyClient: fixed QueueRankReq handling
2909 2004/08/09: Fabrice (version 2.5.25 = 2.6pre7, tag release-2-5-25)
2910 - Bug fixes (to be tested):
2911 * CommonSwarming: removed downloaded counter, use the file's one.
2912 Verified files should now be seen correclty after verify_chunks or
2914 * CommonInteractive: modified canonize_basename to replace chars
2915 outside 32-127 by ?. Should solve saving of CJK files on disk.
2916 * Unix32: open in read-only if EROFS is raised
2917 * DonkeyComplexOptions: force use of update_server_list variable, and
2918 check IP reachability (bug #7200). Should also fix bug #8971.
2919 * DonkeyClient: Don't ask for slot if no interesting chunk. Use
2920 good_client_rank option to put clients in "good_sources" queue.
2922 * DonkeyClient: removed "connection_ok" in query_locations to
2923 allow servers to become master (bug #7741).
2924 * DonkeyServer: new command "preferred" to choose preferred servers,
2925 that will become masters immediatly and with priority if connected
2926 (which should happen automatically during the walking process).
2928 * GnutellaServers: added gnutella2_needed variable to decide when to
2929 keep a connection in Gnutella/Gnutella2 (bug #9697).
2930 * GnutellaRedirector: set delay between reconnections to redirector
2931 to 1 hour. (bug #9686)
2932 * CommonHosts: added option to limit the number of known hosts
2933 in Gnutella "max_known_hosts" (default 1000) (bug #8416)
2934 * configure.in: changed REQUIRED_OCAML to 3.08 (bug #9939)
2935 * DonkeyOvernet: searches are removed after 5 minutes.
2936 - Applied patch #3274 (ocaml3.08)
2939 - Applied patches: #3269 (int64), #3266 (mc), #3267 (ocaml3.08)
2941 2004/08/05: Fabrice (version 2.5.24 = 2.6pre6, tag release-2-5-24)
2943 * CommonSwarming: remove "double the downloaded size" of downloads.
2944 * DonkeyComplexOptions: prevents saving options before loading them,
2945 which used to destroy the file_sources.ini and shared_files_new.ini
2947 * CommonSources: check_time discarded the real time.
2948 * DonkeyOvernet: enabling Overnet at runtime wouldn't start it.
2949 * DonkeyShare: downloaded files should be shared immediatly.
2950 - Applied patches: #3264 (emule mods)
2951 - Overnet/Kademlia: added prebuckets. Number of peers limited to 20 per
2952 bucket and 100 per prebucket. Boot peers addresses from redirector.
2954 2004/08/04: Fabrice (version 2.5.23 = 2.6pre5, tag release-2-5-23)
2955 - ocaml-3.08 is required to compile now.
2956 - Overnet and Emule-Kademlia share the same (partial) implementation:
2957 * Use global options "enable_overnet", "enable_kademlia" and
2958 "enable_servers" to choose which modes you want to use.
2959 * See the options for Kademlia and Overnet in donkey.ini.
2960 * Use kad_ and ov_ prefixes to call commands for these networks
2961 ("kad_buckets" gives the current connection status, "kad_boots"
2962 gives the number of known peers to bootstrap, "kad_stats" gives
2963 the current status of searches, "kad_store" for what is published
2965 * Currently working:
2966 * Search for keywords (normal searches)
2967 * Search for files (localisation of sources)
2968 * Replies to external searches
2971 - Applied Savannah patches: #3249 (no udp), #3250 (mem_stats),
2972 #3251 (verify_chunks)
2975 - Applied patches: #3053 (configure), #3064 (bt share), #3146 (ed2k servers),
2976 #3160 (emule mods), #3183 (config saved), #3235 (zlib), #3242 (Makefile),
2977 #3245 (bt nuploaders), #3246 (bt cookies)
2978 - Added src/networks/donkey/donkeyProtoKademlia.ml. Rewritting DonkeyOvernet
2979 to fix the implementation of Overnet, and to make it usable for Kademlia.
2982 - CommonSwarming: re-implemented chunk duplication.
2984 2004/07/29: Fabrice (version 2.5.22 = 2.6pre4, tag release-2-5-22)
2985 - Fixed a bug in number of sources computation.
2988 - New subtree src/gtk2 to compile the GUI with gtk2. You need lablgtk2
2989 installed, and use "./configure --enable-gtk2" to enable. Some things
2990 are broken, such as availability display (but when is that pixmap
2992 - New message InterestedInSources in the GUI protocol, to save more
2993 bandwidth by sending sources information only when asked.
2996 - Applied Savannah patches: #3165 (ipset), #3166 (mozilla height),
2997 #3178 (BT compatct). #3184 (hightime)
3001 - Applied Savannah patch: #3162
3005 * New message InterestedInSources
3006 * Fields file_all_sources and file_active_sources correct for eDonkey
3007 plugin. Should save some bw, mem and cpu in the GUI, when only this
3008 info needs to be displayed.
3011 - Major changes in search results management:
3012 * New option 'save_results' (default is 0)
3013 0 : results are not saved between sessions
3014 1 : results first appearance are saved between sessions
3015 2 : full results are saved
3016 * Local search is now always available. A structure to search old
3017 results (in the same session, and in former sessions if
3018 save_results = 2) is built for 5 minutes, so the memory should
3019 be reclaimed 6 minutes after the last local search.
3020 * All results for all networks are stored on disk, not in memory.
3021 * The 's' command output displays a 'N' for new results, i.e. results
3022 that never appeared before that search.
3023 * New option 'special_queries' in 'searches.ini' defining
3024 abbreviations for search arguments (eg "-movies" means
3025 "avi -minsize 650000000 -maxsize 735000000") that can be
3026 used with 's' and 'ls': "s -movies dvdrip fr"
3027 - Command 'mem_stats' now takes an argument (0 for normal, 1 for more
3029 - Applied patches: #3120 (html), #3124 (ed2khash)
3032 - Fixed bug adding unwanted friends
3035 - Added RSS loading via option web_infos, with command "rss" to print them.
3036 - Applied patches from Savannah: #3005 (networks), #3007 (printf2),
3037 #3008, #3016 (solaris), #3017 (log),#3023 (telnet), #3024 (log),
3038 #3028 (donkey-ip), #3029 (firewalled), #3030 (log),
3039 #3031 (ft users), #3033 (chmod), #3039 (Makefiles),
3040 #3046 (telnet), #3065 (misc), #3067 (bsd), #3096 (wincomp),
3041 #3100 (force dl), #3070 (upload)
3043 2004/05/05: Fabrice (version 2.5.21 = 2.6pre3, tag release-2-5-21)
3044 - DonkeyClient: re-implemented indirect connections that were lost since
3046 - For some reason, download seems to be limited to max_hard_download_rate/2.
3047 Try to increase this option until a fix is found.
3050 - Applied patches: disconnect (Spiralvoice)
3051 - Applied Savannah patches: #3003, #2988
3052 - Fixed bug preventing connections with Overnet clients.
3053 - New command 'activity'
3055 2004/05/03: Fabrice (version 2.5.19 = 2.6pre1, tag release-2-5-19)
3056 - Applied patches from Savannah: #3002 (cs_total), #3001 (newgui_csources),
3057 #2993 (guiprio), #2988 (cs_html), #2983 (typo18),
3058 #2978 (shorten results), #2975 (title opfile), #2966 (telnet stats),
3059 #2965 (min users), #2964 (htmlmod), #2963 (lugdu_share),
3060 #2942 (emule mod), #2941 (options)
3061 * #2952 is postponed until I understand if it is already included in the
3062 Emule better compatibility work done.
3063 * #2974 is postponed for verification of compatibility with other platforms
3066 - Fixed bug causing lost of partially downloaded chunks.
3067 - Fixed bug in recover_bytes, and added new Edonkey command
3068 'recover_bytes <file_num>' to recover files at a byte
3069 level (i.e. partially downloaded chunks)
3072 - Improved Emule compatibility:
3073 * Send 'emule_miscoptions1' on Connect, store emule features
3074 * Receive EmuleCompressedPart messages (if Zlib)
3075 * Receive SourceExchanges messages version 2
3076 * Receive QueryFile messages containing QueryChunksReplyReq
3077 * Send QueryFile messages containing QueryChunksReplyReq
3078 * Send EmuleRequestSourcesReq even for small files
3079 * Send QueryChunksReplyReq only if chunks not known
3080 * Send JoinSlotReq with md4
3083 - DonkeyPandora: print packets and check encoding/decoding of
3084 Edonkey packets using traces captured by tcpdump and treated
3087 2004/04/25: Fabrice (version 2.5.19, tag release-2-5-19)
3088 - Hardcoded size packet_frame_size to 1 in tcpBufferSocket.ml, so
3089 bw-management should be the same as in 2.5.16
3092 - Memory leak bug found in the bandwidth management. Udp packets are not
3093 sent because all the upload bandwidth is used. Partially fixed by
3094 limiting the size of the queue of packets.
3097 - Applied patches from Habi
3099 2004/04/16: Fabrice (version 2.5.18, tag release-2-5-18)
3100 - Fixed bug solved by patch #2937
3101 - DonkeyInteractive: new command 'set_brothers' to associate a list of
3102 files as probably colocated.
3103 - CommonSources: everything should work now.
3106 - CommonSources: the implementation seems correct and enough efficient,
3107 still missing the limitation on the number of sources.
3108 - CommonSwarming: better handling of the 'last_seen' field
3111 - Applied Savannah patches: #2928 (already downloaded),
3112 #2861 (useless options), #2852 (typo), #2915 (avoid getpeername),
3113 #2911 (bt log), #2907 (html prio), #2896 (autoconf),
3114 #2872 (voo html), #2871 (clean servers), #2866 (autorel),
3117 - DonkeyNeighbours: try to use semantic links to find new sources for
3118 files among known sources. Send hit-ratio to redirector to gather
3122 - CommonGlobals: only execute 'do_at_exit' in the main process, not
3123 in the forked ones (should solve bug #7738).
3126 - CommonSwarming: print an error message instead of pausing a file. Still
3127 to find the origin of the error message.
3128 - Bandwidth management has changed a bit, but without great success...
3131 - Safer options-saving at exit: close all the sockets to prevent "not
3132 enough file descriptors" error and remove a file called
3133 "config_files_space.tmp" to free 'config_files_security_space' megabytes
3135 - Applied patches from Savannah: #2844(share), #2846(bt)
3138 - Applied patches from Savannah: #2832 (telnet_max_name_len),
3139 #2833 (filetp), #2620, #2834 (mingw), #2836 (guardian_p2p url),
3140 #2837 (html), #2840 (overnet), #2841 (localtime)
3143 - Applied patches from Savannah: #2792 (doc), #2805 (comestic)
3144 - PClink for DP500: better handling of long filenames to prevent
3145 freezing the player.
3148 - Applied some patches for Solaris
3150 2004/03/17: Fabrice (version 2.5.17, tag release-2-5-17)
3151 - TcpBufferedSocket: new option 'copy_read_buffer', every byte downloaded
3152 from the network is copied twice, so more CPU used, but maybe better
3153 network performances.
3154 - Donkey plugin: code clean-up to use CommonSwarming. Some features are
3155 now disabled, such as "reliability" until they are implemented in
3156 CommonSwarming (and so, shared by other plugins).
3159 - New function 'CommonFile.recover_bytes' to recover files using non-zero
3160 bytes interval written in the file. New associated option
3161 'max_recover_gap' to indicate how many consecutive zeroes in
3162 the file between non-zero bytes should still be considered as part of
3163 a downloaded segment.
3166 - IP: fixed option 'allow_local_network'
3168 * New GUI protocol 26 with new format for CoreProtocol adding
3169 the max known opcodes for to_gui and from_gui messages.
3170 * The GUI can now receives unknown messages without breaking the
3174 - Applied patches: #2760, #2766, #2767, #2768, #2773
3177 - Applied patch backchanges.patch (HighTime) for BT plugin
3179 2004/03/07: Fabrice (version 2.5.16, tag release-2-5-16)
3181 #2750 (blocking_updated2), #2753 (bug 2586)
3182 #2751 (get_range) #2754 (depend_mingw)
3183 #2752 (sourcesanitize)
3185 2004/03/07: Fabrice (version 2.5.15, tag release-2-5-15)
3186 - Applied patches #2755 (joinqueuemd4), #2866 (bttt), #2867 (buf_str)
3189 2004/03/06: Fabrice (version 2.5.14, tag release-2-5-14)
3190 - Http_server: replies are filled in the handler and sent by the server
3191 (not by the handler anymore). HEAD/GET requests should be treated
3193 - New URL "http://http_ip:http_port/preview_download?q=file_num" where
3194 "file_num" is the download number (in telnet for eg). Can be used to
3195 preview files with mplayer.
3198 - New tool "ocamlpp" used for preprocessing files with .mlt extensions.
3200 #2640, #2677 (cosmetic patches),
3201 #2686 (remove array bound error in guiDecoding),
3202 #2691 (close splash screen),
3203 #2694 (status bar in downloads),
3204 #2710 (default sharing strategy),
3206 #2724 (frame height),
3210 * New message: NetworkMessage (network, message) for network-specific
3211 GUI messages: opcode 63[2 bytes], len[4 bytes], message[len]
3212 * get_string and buf_string can store strings greater than 65536 bytes
3213 (when len = 0xffff, there is another 4-bytes integer giving the full
3215 - Fixed bug in commonHasher_c.c for files > 2 GB
3217 2004/02/17: Fabrice (version 2.5.13, tag release-2-5-13)
3218 - Applied patches #2638, #2639
3219 - New tool "subconv" to easily modify .sub and .srt subtitles files.
3221 * Files are immediatly added, without checking first their size nor
3223 - Streaming of files for Kiss DP500 Divx player, including
3224 files from temp/ and incoming/. See the dp500_ options.
3226 2004/02/16: Fabrice (version 2.5.12, tag release-2-5-12)
3227 - Applied patches #2616, #2617, #2618, #2625, #2626, #2627, #2631,
3230 * Now, "cancel" does not cancel files, files are just put in a list,
3231 and you need to type "confirm yes" to definitively cancel them.
3233 2004/02/10: Fabrice (version 2.5.11, tag release-2-5-11)
3234 - New GUI protocol 24, all times in relative-time.
3235 - Re-applied patch #2603
3236 - ./config/configure.in: select former or new implementation of sha1
3237 depending on the presence of byteswap.h and endian.h.
3238 - Applied patches #2611, #2612, #2613, #2614
3240 2004/02/09: Fabrice (version 2.5.10, tag release-2-5-10)
3241 * Applied patches sha1, #2597, #2603, #2604
3243 Gui -> Core: GetUploaders, GetPending,
3244 GetSearches, (GetSearch search_id),
3245 (ConnectClient cid), (DisconnectClient cid)
3246 Core -> Gui: (Uploaders num_list), (Pending num_list),
3247 (Search search_request)
3248 GetSearches and GetSearch allow a GUI to query for former searches and
3249 to receive the results corresponding to a particular former search.
3250 * New console command "disconnect <client_id>"
3252 * New option 'remote_shells' to define, for each hostname, which
3253 remote shell to use and with which arguments (e.g. if you want
3254 to use rsh or ssh with username@hostname or a particular port).
3255 still no password allowed...
3256 * New version of 'get_range' that accepts a 'rangex' argument to
3257 send the data without base64 encoding (works for me, but I don't
3258 know for other shells). Set the 'get_range' option to set the
3259 path of the remote get_range command, and 'range_arg' to use
3260 either 'range' or 'rangex'.
3262 2004/02/07: Fabrice (version 2.5.9, tag release-2-5-9)
3263 * Applied patches #2428, #2595, #2596
3264 * TcpBufferedSocket: 'exec_command' only creates one TcpBufferedSocket.t
3265 both for reading and writing.
3267 * Basic "remote shell" protocol (using ssh):
3268 use 'http <ssh://hostname/relative-filename>' to download the file
3269 hostname:~/relative-filename. ssh must be able to connect to the
3270 host without password exchange. The remote host must have the
3271 'get_range' utility in the PATH of ssh (use "make utils" to
3272 have 'get_range' compiled with in mldonkey). The transfer rate is
3273 not very good (30 KB/s, either because of too small
3274 tcpBufferedSocket buffers, or because of the base64 encoding).
3276 2004/02/06: Fabrice (version 2.5.8, tag release-2-5-8)
3278 * Basic FTP protocol:
3279 use 'http <ftp://url>' and 'mirror <ftp://url>'
3280 * Option 'mirrors': list of list of interchangeable url prefixes.
3282 2004/02/06: Fabrice (version 2.5.7, tag release-2-5-7)
3283 * New network 'FileTP' for simple file transfer protocols:
3284 * Basic HTTP protocol:
3285 use 'http <http://url>' to start a download.
3286 use 'mirror <file_num> <http://url>' to add a mirror.
3287 * TcpBufferedSocket: initial size of buffer now depends on the last
3288 read input. might cause problems in memory until a better cache of
3289 buffers is implemented
3291 2004/02/06: Fabrice (version 2.5.6, tag release-2-5-6)
3292 * CommonInteractive:
3293 * file_cancel: removes the file itself
3295 * new function 'destroy' to completely destroy a FD, so that it cannot
3296 be used afterwards (but it does not remove the file). Used
3297 in CommonInteractive.file_commit and CommonInteractive.file_cancel.
3298 * DonkeyInteractive: clients might get stucked if they tried to
3299 upload a file that has just been committed, since the name is not
3300 updated anymore in Unix32.rename. We need to remove the former 'file'
3301 structure and then add a new one for the shared file, thus disconnecting
3302 all the former uploaders (knowing them, they will reconnect asap :)).
3304 * Applied patches #2586, #2587, #2588
3306 2004/02/05: Fabrice (version 2.5.5, tag release-2-5-5)
3307 * Change in the version numbers, keep only 3 digits :)
3309 2004/02/04: Fabrice (version 2.5.4+8, tag release-2-5-4-8)
3311 * New version of uploaders choice.
3312 * Applied patches #2571, #2579, #2580 (is patch #2578 reversed ?)
3314 2004/02/04: Fabrice (version 2.5.4+7)
3316 * Fixed upload for seeded files, and probably some other bugs.
3318 * ?? display commands per category
3320 2004/02/03: Fabrice (version 2.5.4+6)
3321 * Applied patches #2556, #2558, #2559, #2561, #2568, #2569, #2571,
3323 * TcpBufferedSocket: event CONNECTED is sent the first time a socket
3324 is available for writting.
3326 * Gui_cdget: Updated some regexps to correctly query IMDB.
3328 * BTTracker: the tracker should work.
3329 * New internal command "torrents" to list URLs of files in
3332 2004/02/02: Fabrice (version 2.5.4+5)
3333 * New Internationnalisation format: short strings are stored for translation
3334 in ~/.mldonkey/mlnet_strings.$LANG. The new scheme allows easy
3335 translation of options descriptions and all other strings used
3336 after CommonOption. Can also be used to translate the interfaces.
3337 Unfortunately, this new scheme makes most of the former translations
3338 obsolete, but most of them have been approximately changed to the
3339 new format (see distrib/i18n/mlnet_strings.*, copy yours in
3340 ~/.mldonkey/ to check)
3342 2004/02/01/ Fabrice (version 2.5.4+4)
3343 * Applied patches #2532 (new-gui), #2535 (INSTALL.txt), #2549 (vers mesg),
3344 #2550 (minsize shared)
3346 2004/01/28: Fabrice (version 2.5.4+3)
3348 Strategies of sharing can be defined in "searches.ini" (recursive or not,
3349 min file size, extensions).
3350 * Predefined strategies:
3351 [all_files]: recursively all files > 10 KB
3352 [mp3s]: recursively .mp3 < 10 MB
3353 [avis]: recursively .avi > 500 MB
3354 [only_directory]: not recursive, all files > 10 KB
3355 * Strategy for incoming/ is now [only_directory].
3356 * Format of "shared_directories" option changed accordingly: new default
3357 directory shared/ with strategy [all_files].
3358 * CommonComplexOptions:
3359 file_state, file_age and file_size are saved for all networks in options.
3361 functions to save and load chunks and present_chunks from options.
3364 * TcpBufferedSocket:
3365 * Weak form of connection_manager, that should progressively be used to
3366 better distribute connections among networks.
3367 * Zlib Compression of connection is now done transparently.
3368 * Int32ops: removed Int32 operations. int32 should be removed as many times
3369 as possible to avoid limitations at 4GB. Bittorrent protocol does not
3370 support files > 4 GB (check new version ?)
3373 * CommonSwarming: completely rewritten. No partition anymore. Better
3374 block choice strategy. More efficient strutures.
3376 * new directories in "torrents/":
3377 * downloads/: .torrent of files being currently downloaded
3378 * tracked/: .torrent of files being currently tracked (maybe seeded)
3379 * seeded/: .torrent of files being currently seeded
3380 * mldonkey command 'compute_torrent' computes a .torrent file for a
3381 filename and put it in torrents/tracked/. The file is immediatly
3383 * mldonkey tracker can be accessed:
3384 http://ip:6881/tracker?info_hash=.... -> for the tracker
3385 http://ip:6881/filename.torrent -> to download 'filename.torrent'
3388 * ed2k_hash: new option -check <size> to compute different hashes on
3389 a generated file of size <size> KB, to test DiskFile, SparseFile and
3390 MultiFile implementations.
3392 * Open ALL files in RW mode by default, and fall back in RO mode in
3394 * New format SparseFile completely implemented.
3395 * Unix32.rename makes the Unix32.t invalid. Might cause some bugs
3396 when sharing just committed files (TO CHECK).
3398 * New EXPERIMENTAL option 'emulate_sparsefiles' in downloads.ini,
3399 to emulate sparse files on non-sparse filesystems (e.g. FAT).
3400 Currently only works for Edonkey files, and <preview> and
3401 <recover_file> won't work for them.
3404 * Fixed problem with files.ini when downloading BitTorrent files
3407 * Applied Savannah patches #2480, #2481 (emule), #2482 (old GUI)
3410 * Applied Savannah patches:
3411 #2475, #2474 (bin modes), #2479 (BT), #2473 (negative time),
3412 #2437 (force-download typo), #2423 ("links" command), #2421 (connecttime),
3413 #2417 (message 21), #2415 (LSD not banned), #2414 (old GUI),
3414 #2413 (emule tags), #2411 (emule stats), #2473 (telnet)
3415 * Applied Pango's patch: common_recover_temp
3419 * .torrent filename is specified by -torrent
3420 * New option "-split <filename>" that will split <filename> in smaller
3421 files according to a .torrent file.
3422 * Applied pause.patch
3425 * Applied upload_slots patch again
3428 * mldonkey CVS moved to berlios until savannah is back again.
3429 see https://developer.berlios.de/cvs/?group_id=610
3430 for server-details, web-CVS etc.
3433 * Applied patches from spiralvoice page: prevent_interface_close, xmule,
3434 emule_tags, upload_cnum, suxx_wap, mld_cb10, remove_challenge,
3435 upload_slots, html_gnutella2, amule
3438 * Modified "forget" command
3439 * Bittorrent: crash when commiting directories fixed
3442 * Opennap: removed redondant client_port option
3443 * Gnutella2: removed options with same values as for Gnutella
3446 * New option 'allow_local_network' to allow connections on the local
3447 network for debugging purpose.
3449 * If 'tracker_port' is not nul, a WEB server is started inside mldonkey
3450 that is used as a tracker, with url:
3451 http://YOUR-IP:<tracker_port>/tracker
3452 * New option 'shared_torrent_files', a list of pairs:
3454 ("/test_bt.torrent", "../../one_torrent_file.torrent");
3456 where the first string in the pair is the relative url on the
3457 tracker web-server http://YOUR-IP:<tracker_port>/test_bt.torrent
3458 and the second is the filename .torrent on the disk to be served.
3459 * New option 'tracked_files': a list of the filenames of the .torrent
3460 files that should be tracked.
3461 * New option 'shared_files': a list of pairs (path to .torrent file,
3462 path to corresponding shared file).
3465 * New option file_started_cmd (by default "mlprogress") used when a
3466 new download is started to display a progress popup. Set to "" to
3468 * Improved progress popup.
3471 * Added 'mlprogress <num>' program that popup a window to display the
3472 download of file <num> (thx to b8_zoggy). Not tested yet.
3475 * Applied Spiralvoice patches ban.clients, win.patch, patch_pack2c
3476 * Added option 'allow_any_command' to use ! instead of !! for
3477 arbitrary commands (false by default for security reasons)
3480 * Merged devel/ and stable/ branches for Gnutella2
3483 * Added module CommonBitzi (merge with devel version)
3486 * Updated ed2k_hash to compute Sig2dat and Bitprints. For Mac users, you can
3487 check whether bitprints with tiger-trees are correctly computed:
3488 ./ed2k_hash.byte -hash bp COPYING
3490 urn:bitprint:QI3PHA4WVH75CAL72NCNTXZE3SNHU6K3.5URJJG7REVGICNBK5UQBPFGIEO234ZJ3MX2T54I
3491 Partial 0 : 5URJJG7REVGICNBK5UQBPFGIEO234ZJ3MX2T54I
3494 * Applied patch #2399 (anti-thieves v2)
3495 * Splitted Gnutella and Gnutella2 plugins
3498 * gui_messages.ini.dutch added
3499 * Suppressed UDP frames sent by a firewalled client, causing it to be
3503 * Applied patch #2390
3504 * Added Autoconf.windows boolean
3505 * New tool 'make_torrent' generated by 'make make_torrent', that can be
3506 used to generate, print, verify and modify .torrent files.
3509 * Applied patch #2382 (mingw), #2380 (anti-thieves),
3510 #2384 (gui), #2386 (gui)
3511 * Removed client addr as string in GUI protocol 20
3514 * Unix32: create_ro = create_rw
3515 * New module BTTracker, to implement a tracker for BitTorrent.
3516 Command "compute_torrent <filename>" in console to generate
3517 the torrent file associated with filename. Not working yet.
3520 * Removed patch #1261
3521 * Applied patch #2243 (bind sockets), #2377 (mlnet.static),
3523 * Fixed compilation problem in oldgui
3524 * ED2K: send compressed ShareReq message to zlib-enabled servers.
3527 * Unix32: fixed a bug preventing the creation of a correct directory in BT
3530 * Unix32: some bug fixes which may have caused bad Sha1 computation in BT at
3534 * Applied GUI patches #2372 (renamefile), #2373 (newgui),
3535 #2374 (configwin), #2375 (im), #2376 (configure)
3536 * Applied HTML patches #2151, #2264
3540 * Removed patch #2341 (for fun :) )
3541 * Applied patch #2139 (html mod), #2371 (telnet)
3542 * Compressed connections to servers work, multiple replies to a search
3543 in one UDP packet works too.
3546 * Unix32: and yet another bug fixed in MultiFile: no more
3547 Invalid_argument("Unix.write") error
3550 * Applied patches #2341 (BT), #2354 (BT with MultiFile),
3551 #2339 (improved telnet), #2311 (Overnet [EXPERIMENTAL])
3552 BUT: is there a bug on Savannah, or is it my browser that incorrectly
3553 download patches with ", >, etc... inside ?
3554 * Fixed ed2k_hash compile error
3555 * Hardcoded emule protocol version set to 0x30, connect to Razorblack
3556 * Unix32: another bug fixed causing "really_write 0 BYTES" errors.
3559 * Bug with Unix32.read fixed (no flush).
3560 * New file type MultiFile in Unix32, created with create_multifile, to
3564 * New UDP protocol implemented:
3565 * Understand servers flags in UDP pongs
3566 * Query for and understand multiple replies in one packet
3567 * Query sources for multiple files, and understand multiple files sources
3569 * server_last_message updated correctly.
3572 * Suppressed option client_server_md4 (to correcly connect to all servers)
3573 * Copy Emule behavior for client-client connection
3574 * Send ET_COMPATIBLE flag in EmuleClientInfo with number 10
3575 * Send EmuleClientInfo as soon as Emule client is identified
3576 * Set verbose = "unk" to save unknown packets in /tmp/ directory
3579 * Applied patches: #2097, #2099, #2110 (mingw),
3580 #2111, #2193 (telnet), #2248, #2255 (XSS bug),
3581 #2268 (server zlib), #2269 (opennap napigator)
3584 * Applied patches on BT: #2135, #2158, #2247, #2254, #2256
3585 * Applied patch #2299 (files > 2 GB), #2263 (don't ban uploaders),
3586 #2202 (gnutella2 DDOS)
3587 * Gnutella/gnutella2 plugin compiled again
3590 * Modified to compile with ocaml-3.07
3591 * Started merging -devel and -stable versions
3592 * Gnutella and Gnutella2 plugins disabled
3593 * Should fix GUI protocol problems with G2GUI
3598 + By default, the new gui is built. To build the former one, run
3599 ./configure -disable-newgui
3600 + When switching from one gui to another one, the .mldonkey_gui* files
3601 may be incorrect, so you are advised to save them or delete them
3603 - #2067 ("nu" for bittorrent),
3604 #2070 (new option "all_sources_on_telnet"),
3605 #2094 (sort files by priority for each downloader)
3606 * Some modifications for soulseek:
3607 * Retry connect only after 300 seconds.
3608 * Don't retry connect after INVALIDPASS unless login or password is
3611 2003/10/12: Simon (release-2-5-4)
3612 * Applied patches #2033 (hide-dirs), #2038 (ocaml-3.07),
3613 #2039 (mlsubmit.reg), #2041 (hide-psswd)
3616 * Removed patch #1765
3619 * Applied patches #1608 (anti-thieves), #1669 (anti-spam),
3620 #1692 (min-users-per-server), #1695 (html-mods),
3621 #1710 (regexp in voo), #1711 (sorted voo),
3622 #1714 (gui priority bug fix), #1715 (fasttrack),
3623 #1732 (mldonkey_submit), #1733 (viewfiles 6 hours),
3624 #1734 (browse-friends), #1743 (bittorrent compliance),
3625 #1748 (emule-bugfix), #1753 (max-conn-servers),
3626 #1765 (limit-reqs DANGER), #1801 (http-proxy),
3627 #1843 (message-file), #1862 (download-amount),
3628 #2024 (filenames), #2025 (friends-slots),
3629 suxx-lugdunum-fix-v2
3631 DELAYED: #1911 (hidden-chunks)
3634 2003/06/07: Simon (release-2-5-3)
3635 * Applied patches #1582, #1594, #1598
3638 - CVS Modifications: Branches:
3639 * new branch release-2-5-devel for development version
3640 * default branch is STABLE now
3641 * branch release-2-5-1-patches is obsolete and should not be used anymore
3642 The last tag in this branch release-2-5-3 is still the most STABLE
3645 2003/06/05: Simon (release-2-5-3)(branch: release-2-5-1-patches)
3646 - Fixed ENORMOUS bug in donkey that could cause corruption on other clients
3647 All the md4s will be recomputed for all shared files at next startup.
3649 2003/05/28: Simon (release-2-5-2)
3651 * Completely unstable. For development only. This version may corrupt
3652 * all your downloads, destroy your config files, and so on...
3655 * CommonHosts: use the same system to manage hosts in Gnutella and
3656 Fasttrack (later in eDonkey and Overnet ?)
3657 * CommonUploads: save all UIDs (Sha1...) in shared_files.ini
3659 * A file can be downloaded together from FT, Gnutella and BitTorrent
3660 Downloads are displayed as on the "MultiNet" network.
3661 * The 'add_uid' command can be used to extend the knowledge on a file
3662 so that it can be downloaded from other networks.
3664 * Discard results without UIDs
3665 - New plugin 'donkey_devel' not working yet, enabled with option
3666 -enable-open_donkey, replace the other one, and should be able
3667 in the future to share downloads with other networks.
3669 2003/06/02: Simon (release-2-5-1)
3670 - BitTorrent: bug fix when reconnecting to tracker (remove empty event field)
3671 - DriverMain: remove use of "cp" command
3672 - Applied patches #1530, #1531, #1543, #1548 and #1563
3675 - Applied patches #1530, #1531
3678 - Fixed 'install' target of Makefile
3680 2003/05/26: Fabrice (release-2-5)
3683 2003/05/26: Simon (release-2-5-rc3)
3685 * Reduce client_name to 32 characters
3686 * Stop computing useless SHA1 hashes (inherited from Gnutella copy/paste)
3688 2003/05/26: Simon (release-2-5-rc2)
3690 * Plugins sorted in config panel
3691 - Fixed bug adding one file several times in 'old_files'
3693 2003/05/25: Simon (release-2-5-rc1)
3694 - Applied patch #1523, #1527
3696 * Limitation on the number of simultaneous sources for a file
3697 - Fixed major file corruption bug when using 'buffer_writes' in bittorrent,
3698 fasttrack and gnutella.
3700 2003/05/24: Simon (release-2-4-6)
3702 * Fixed a compilation problem
3704 * Fixed the problem with servers appearing as New Hosts
3705 - Plugins initialized in the correct order (no downloads restarted at 0%)
3707 2003/05/23: Simon (release-2-4-5)
3709 * Ask for a range only after the connection has succeeded
3710 * Support for Complex queries
3713 * Force flush with "buffer_writes" option before Sha1 computation
3714 - Applied patches #1512, #1513
3717 - Applied patch #1510
3718 - "set enable_... true/false" should now immediatly trigger the network
3719 (before that, a restart was necessary)
3721 2003/05/20: Simon (release-2-4-4)
3722 - Bug fix: the bug causing too many open file descriptors and pausing
3723 recovered files maybe fixed.
3725 * Fixed problem with \r in GWebCache
3727 * sig2dat:// links added
3728 * Automatically replace spaces in client name by _
3729 - Searches can be limited to particular network (bug fix in GUI)
3731 2003/05/19: Simon (release-2-4-3)
3732 - Applied patch #1503
3733 - Fasttrack: working good now :)
3734 * Use HTTP/1.0 (really necessary ? probably not)
3735 * Recover sources for files
3736 * Reconnect to good sources immediatly
3739 * Added number of leaves per ultrapeer
3741 2003/05/18: Simon (release-2-4-2)
3742 - Applied patches #1476, #1477, #1479 and #1481
3744 * Can look for new sources
3745 - Added mldonkey/tools/pandora/ to help understand protocols
3747 2003/05/14: Simon (release-2-4-1)
3748 - FastTrack: first try, far from complete, only for x86 !!!
3749 * Copy of gnutella/ plugin architecture to fasttrack/
3750 * Cipher C stubs available from Ocaml
3751 * Connection to main server: OK
3752 * Connections to ultrapeers: OK
3753 * Simple Searches sent: OK
3754 * Results received: OK
3755 * Downloads: OK, no recover yet
3756 - Config: copy old downloads.ini to downloads_expert.ini and
3757 donkey.ini if the latter ones are absent
3759 2003/05/10: Simon (release-2.4-0)
3761 * Fixed a bug making mldonkey use 100% of CPU when misbehaving clients
3762 send thousands of Have messages
3763 * New option 'delete_original' to get rid of the old file when splitting
3766 * Enabled by default when Gnutella is enabled
3767 * XML tags correctly added to results
3769 * Added 'New Server' button
3771 * Added the ability to choose the network for each search
3773 * Fixed bug with options that couldn't be changed anymore in WEB interface
3774 - Update ed2k_mozilla/mldonkey_protocol_handler.xpi to version 1.2
3776 2003/05/09: Simon (release-2-4-rc12)
3777 - ed2k_hash: computation false for multichunks files, fixed.
3780 * Reply to Q2 for URN requests
3781 * Limit downloads to 5 slots (max_available_slots option in gnutella.ini)
3782 * Support HTTP/1.1 upload, and /uri-res/N2R?urn:sha1: queries
3783 - Options: options have been splitted in different files:
3784 'downloads.ini' : most simple options
3785 'downloads_expert.ini' : options for experts
3786 'donkey.ini' : simple options for edonkey
3787 'donkey_expert.ini' : edonkey options for experts
3789 2003/05/08: Simon (release-2-4-rc11)
3790 - RPM: new Makefile rule 'rpm' to build rpms for mldonkey
3792 * Use both keyword and uid searches to recover files
3793 * Make a recover search at download startup (next one every hour)
3794 * Compiled only if Zlib is available
3795 * Gnutella2 support working (no upload yet... for sunday). To try,
3796 set enable_gnutella first to true, then set enable_gnutella2 to true
3797 in the gnutella plugin (and maybe enable_gnutella1 to false...)
3798 * Remove hosts older than 3 hours
3800 * Keeps pending messages to clients
3801 - ftruncate64 implementation rewritten
3803 * options panels are not options anymore
3804 * Protocol version 15:
3805 * ForgetSearch is replaced by CloseSearch which takes 2 args and
3808 2003/05/07: Simon (release-2-4-rc10)
3809 - Applied patches #1459, #1460 and #1462
3811 * New option 'servers', with mail.slsk.org:2240 by default
3813 * Only send modified options
3815 2003/05/05: Simon (release-2-4-rc9)
3817 * Added ed2k_hash to the distribution (use 'make ed2k_hash' to compile)
3819 * List parsing should be tail recursive now
3820 - Gnutella1/Gnutella2:
3821 * Better management of hosts
3822 * More aggressive with QKR queries
3823 - DNS: correctly handle names starting with numbers (bittorrent URLs for
3828 * Fixed defragmentation
3829 * Fixed QH2_H_DN message
3831 2003/05/01: Simon (v release-2-4-rc9)
3833 * Added GGEP extensions to PONG messages
3834 * Added Bye-Packet support
3836 2003/04/30: Simon (v release-2-4-rc8)
3837 - Applied patch #1432
3839 * COBS implemented and incoming GGEP
3840 * Some Vendor-Messages
3841 * More headers understood
3843 * Better control of max_opened_connections
3844 * More Aggressive lifetime for connections (10 minutes without downloads)
3847 - Applied patches #1427, #1428
3850 - Applied patch #1424
3851 - Changes in 64bits system calls
3853 * Bug fixes: HTTP return code is correctly tested
3855 2003/04/23: Simon (v release-2-4-rc6)
3856 - Applied patch #1402
3857 - Prevent exceptions from raising from calls to lprintf
3858 - Fixed bug in Unix32 causing error with file descriptors
3859 (and maybe file corruption)
3861 * Commit directories in multiple files
3863 2003/04/22: Simon (v release-2-4-rc5)
3865 * Old host discovery system doesnot work anymore. Implemented
3867 * Option prefix set to GNUT
3868 - Updated to use ocaml-3.06+27 which should support all Mac OS X versions
3869 - Applied pango's patches:
3870 88_login_missing_in_gui, 89_better_xs_messages, 90_limit_indirects
3871 - Applied patch #1397 (upload priority)
3873 * Fixed problem with never finishing downloads
3875 * Fixed problem with availability display
3877 * Don't use 'Accept:' header for gnutella1 hosts, since most of them
3878 refuse the connection
3881 - Complete reorganization of source tree
3882 - GUI: exit uses CTRL-q instead of CTRL-e
3884 2003/04/19: Simon (v release-2-4-rc4)
3885 - Applied patch #1393, #1395
3886 - Gnutella2 (not yet working):
3887 * Encoder/Decoder tested successfully on real shareaza recorded stream
3891 - Applied patches #1389, #1391
3894 - Changes in Makefile:
3895 * Compile only mlnet and mlnet+gui
3896 * mldonkey_gui is renamed in mlgui
3897 * mldonkey_gui2 is renamed in mlgui2, and not compiled by default
3898 * Added target 'install' (use --prefix configure option).
3899 * Create mldonkey, mlslsk,... as links to mlnet
3900 * Create mldonkey_gui as a link to mlgui
3901 - Fixed generated mlsubmit.reg
3903 * last_high_id is only changed if option use_server_id is set
3906 - Changed version number to 2.4-rc4
3908 * More aggressive reask delay of 2 minutes
3909 * Improve detection of end of download
3910 - Removed Sha1 and Tiger assertions in md4.ml, but set a flag when
3913 2003/04/15: Simon (v 2.04rc3)
3914 - CommonUploads: changed a bad comparison in download_engine
3915 - Applied patch #1385, #1387
3917 * Fixed a bug that prevented the download from starting in some cases
3918 * Any client from which some bytes were downloaded obtains immediatly
3920 * Can send several requests at once when enough bw is available
3922 2003/04/14: Simon (v 2.04rc2)
3923 - Donkey: more accurate when asking for slots
3926 - Applied patches #1377, #1379 and #1382
3929 * More checks to detect download termination
3930 - Limewire plugin renamed to Gnutella
3932 2003/04/08: Simon (v 2.04rc1-15)
3933 - Applied patch #1372 (= #1373 I hope)
3934 - Tiger: try to prevent Bus Error bugs on Solaris by aligning the buffer
3936 * Verify file before commiting
3937 * Properly cancel files
3938 - Unix32: flush buffers before closing files
3939 - Donkey: connections have now a lifetime of 20 minutes at the
3940 beginning, increased when receiving important messages (upload, download).
3941 Connections above max_opened_connections have only 1 minute 30 to life.
3942 Might improve the limit on the number of connections.
3944 2003/04/07: Simon (v 2.04rc1-14)
3945 - Fixed bug with client_uid option in mlnet.
3946 - Applied patch #1370
3948 * fixed problems in URLs when contacting tracker '+' -> '%20'
3949 * Update Downloaded chunks in interface
3950 * Resent chunks queries on Unchoke (correct ?)
3951 - Gnutella: Send urn:sha1: when available in QueryReplies
3954 - Applied pango's patch 87_preview_from_all_interfaces
3955 - Remove Queries page from GUI menu
3956 - Applied patch #1366
3958 2003/04/06: Simon (v 2.04rc1-13)
3959 - BitTorrent: almost complete implementation, still to test
3960 Current Restrictions:
3961 * No support for multiple files in one file (open files.ini,
3962 you will find the positions of the sub-files there)
3963 * No support for releasing files
3964 But upload WORKS correctly
3965 - Lot of code has moved, need some more testing before stable 2.04
3970 - Some C warnings removed
3971 - Moved donkey/ upload code to common/commonUploads.ml to be used by other
3973 - Fixed Tiger Tree function on BigEndian platforms
3976 - Fixed bugs #3079 and #3080 :)
3977 - New common/commonSwarming.ml module to handle swarming for all networks
3980 * Swarming possible, not completely tested
3981 * More headers understood:
3982 X-Gnutella-Alternate-Location, X-Gnutella-Content-URN,
3985 2003/04/01: Simon (v 2.04rc1-12)
3986 - Fixed per user Column Sorting in HTTP interface
3987 - Fixed bug #3003 :)
3988 - Fixed Filepath.path_to_string so that "" becomes [], and not [""] that
3989 makes mldonkey shares its own directory.
3990 - Implementation of Tiger trees correct for files < 1 MB
3991 - Lots of changes in Unix32
3992 - Applied patch #1340
3993 - Limewire Plugin: probably lots of bugs, many changes
3994 * Gnutella2 support started:
3996 * Protocol Encoding/Decoding not tested
3998 * Support for Magnets and HUGE
3999 * Different results if different UIDs, requests for files by UID
4000 - Applied pango's patches: 85_ip_from_highids, 86_priority_patch
4003 - CommonHasher: implemented asynchronous hashing of files using sha1.
4004 - Applied patch #1324
4006 2003/03/24: Simon (v 2.04rc1-11)
4007 - Fixed compilation problem of md4_c.c and md5_c.c
4009 2003/03/23: Simon (v 2.04rc1-10)
4010 - Gnutella/Limewire:
4011 * Upload tested successfully with gtk-gnutella
4012 * Push message understood (danger: unlimited number of connections)
4013 * Added computation of sha1 digests in Md4 module, digests of shared
4014 files are not yet computed.
4016 * Bandwidth should be displayed correctly in WEB interface: the
4017 control_ bandwidth should be displayed instead of tcp_ which includes
4019 * Filename: assert failure removed
4020 - Applied patch #1320
4022 2003/03/22: Simon (v 2.04rc1-9)
4024 * log_file with -daemon option
4025 * pending slots should only contain connected clients
4028 71_upload_slots_dynamic_allocation
4029 81_implicit_dllink_ovlink_commands
4030 83_hide_upload_slots_round_robin
4031 * Savannah: #1315, #1319
4033 2003/03/21: Simon (v 2.04rc1-8)
4034 - Fixed config/Makefile.in to compile static binaries
4035 - Bug fix: don't close stdout when a log_file is provided
4037 2003/03/20: Simon (v 2.04rc1-7)
4038 - Build libraries before building executables
4039 - Applied patch #1300, #1302, #1303, #1307
4040 - Use file_add_downloaded in all plugins: display correct download rate
4042 2003/03/19: Simon (v 2.04rc1-6)
4043 - Applied patch #1297, #1298
4044 - New command 'rename'
4045 - New option 'minimal_packet_size'
4046 - TcpBufferSocket: use 'minimal_packet_size' instead of 'ip_packet_size'
4047 - Modifications in Unix32 to abstract operations on big files. Next step:
4048 filesystems that don't support sparse-files (Windows)
4049 - 'auto_commit' is not done immediatly, but tested every minute
4050 - Bug fix: Paused files were caused by Printf.printf and print_newline
4051 with stdout closed (or terminal killed). Replaced by lprintf and
4056 * Unix.write limited to 16 kB.
4058 2003/03/19: Simon (v 2.04rc1-5)
4060 * Support for non-blocking sockets
4061 * New file .depend.mingw for dependencies under MinGW
4062 * If an error appears compiling mlnet, try "make mldonkey"
4063 - Applied patch #1294
4065 2003/03/18: Simon (v 2.04rc1-4)
4066 - Applied patches #1271, #1272
4067 - New experimental options 'buffer_writes', 'buffer_writes_delay' and
4068 'buffer_writes_threshold' to buffer writes to decrease HD usage.
4069 - Applied pango's patches:
4070 * pango, don't forget that you should modify config/Makefile.in and
4072 51_new_chunks_scheduling
4073 62_wait_for_id_before_publishing
4075 80_file_received_file_downloaded
4078 - New command 'calendar_add' to add a command to the calendar
4079 - Remove dependency to Zlib in LimeWire/eDonkey
4082 - Applied patch #1266
4083 - Fixed Challenge, so that it does not depend on Ocaml version
4085 2003/03/13: Simon (v 2.04rc1-3)
4086 - Applied patch #1263, #1264
4087 - Fixed bug with allowed_commands option
4089 2003/03/12: Simon (v 2.04rc1-2)
4090 - Applied patch #1259, #1261,
4091 + pango: 01_more_blocreq_checks, 08_better_default_parameters,
4092 60_no_emule_quota, 78_lugdunum_pings_fix, 79_auto_commit
4094 2003/03/11: Simon (v 2.04rc1-1)
4095 - New changes for Emule compatibility.
4096 - Added option 'log_file' in downloads.ini
4098 2003/03/10: Simon (release-2-04rc1)
4099 - Changes in replies to Emule AvailableSlot
4100 - Applied patches #1250, #1251
4101 - Terminal mode: recognize Window size when possible (rfc 1073)
4102 - Upload queue has been cleaned. Doesn't work as a fifo anymore.
4104 2003/03/10: Release 2.03,
4106 We are forced to release a new stable version a bit earlier than expected,
4107 due to problems with old clients accessing savannah at startup.
4108 Compared to the 2.02 release, this new release provides:
4109 * Better Emule compatibility
4110 * New improved sources management (fewer sources, but better sources)
4111 * Improved interfaces:
4112 * new WEB interface (use html_mods option to use the old one)
4113 * some colors in terminal (use term_ansi option to disable)
4114 * new external searches in the GUI
4117 - Fixed 0 upload bug :)
4120 - Debug: new commands 'debug_client <nums>' to see messages exchanged with
4121 those clients, and 'clear_debug' to clear the debug table.
4122 - New option '-daemon' and new command 'daemon' to run mldonkey in
4124 - New commands 'log_file <file>' and 'close_log' to log output to a file.
4125 - New command '! <cmd>' to execute a system command from the interface.
4126 The <cmd> command must have been defined in the option
4127 'allowed_commands' as the symbolic name for another command.
4128 You cannot pass arguments, only those associated with the command
4129 in 'allowed_commands' are used (default example: df)
4130 - New multi-user system:
4131 * Options 'password', 'http_login' and 'http_password' have been
4132 replaced by one option 'users', that should not be edited manually
4133 (to reset, remove it completely), since the passwords are encrypted
4135 * The default user is 'admin'. He should not be removed. He is the
4136 only one who has the right to add new users. Default password is
4138 * 'auth <user> <password>' is used to change the user in a
4140 * 'add_user <user> <password>' is used to add a user, or change the
4141 password associated with it. Only 'admin' is allowed to use this
4143 * Searches are now displayed per user. All other views are shared
4146 * Bug in GUI proto 7..13, where force param of Download_query was
4147 sent with bad opcode.
4148 - Links to the WEB server of savannah have been banned: in web_infos and
4149 network_update_url. The redirector is temporarily used to provide this
4152 * ANSI escape sequences: option "term_ansi", command "ansi true/false",
4153 to activate/disactivate colors on terminal
4154 * Command "term <width> <height>" for prompt on last line, until I
4155 remember how to detect terminal size automatically.
4156 - New option 'max_concurrent_downloads', and new state Queued for files
4157 being downloaded. Only the 'max_concurrent_downloads' files with
4158 highest priority are really being downloaded, other files with
4159 lower priority are waiting.
4160 - Limewire/Gnutella:
4161 * Correctly send the QRT table to ultrapeers
4162 * Almost able to reply to searches
4164 * Upload tab: new button "Add Shared Directory"
4165 - Applied patches #1247, #1228, #1235, #1242, #1248, #1232
4166 - Bug fixes in eDonkey:
4167 * 'peer_ip' is only called if reliable_sources is activated
4168 * A client cannot appear twice in the pending slots queue
4170 2003/03/05: Simon (v 2.02-29 next release: monday)
4171 - IMPORTANT Bug fixes (thx pango):
4172 * Corrupted blocks are removed
4173 * Re-order arguments when computing md4 with threads
4174 -> all your shared files hashes will be recomputed :(
4176 2003/03/05: Simon (v 2.02-28)
4178 * 'vr' should not raise Exception in String.sub, fix in
4179 result_format_of_name
4180 - Direct-Connect: use async DNS by threads when available
4181 - Applied patches #1226, #1227 from Savannah
4182 - Options: some memory improvements (clear unused initial options,
4183 avoid building intermediate data structures)
4185 2003/03/04: Simon (v 2.02-27)
4187 * 'log' command correctly set the size of the log (otherwise, an
4188 exception is raised... and no GUI can connect for eg)
4190 2003/03/04: Simon (v 2.02-26)
4191 - Applied patches #1219, #1220, #1221, #1222
4192 - Redirection of output to a log:
4193 * Only startup messages are sent to stdout
4194 * New argument -stdout for all messages to be sent to stdout
4195 * New commands: 'log' to see the last non-printed messages,
4196 'stdout <true|false>' to enable/disable messages to stdout again.
4198 2003/03/03: Simon (v 2.02-25)
4199 - Source Management:
4200 * Query files every min_reask_delay even when already connected
4201 * Removed the 2 queues for really bad files
4202 - Emule compatibility: on disconnect, file queries are stored if
4203 a JoinSlot message was sent, and reused if an unrequested AvailableSlot
4204 message is received (to be tested).
4205 - Duplication of similar chunks between files (the next step should be
4206 to only download one of these chunks) tested every 5 minutes
4207 - Applied patches #1203, #1204, #1210 and #1215
4208 - Applied patch 77_trusted_sources, activated by option 'trusted_sources'
4209 - New option 'max_indirect_connections' to limit the number of incoming
4211 - New command 'options' to print options by section
4213 2003/03/02: Simon (v 2.02-24)
4214 - New commands 'share <dir>' and 'unshare <dir>' to manipulate
4216 - Applied pango's patch 71_upload_slots_dynamic_allocation, controlled
4217 by option 'dynamic_slots' (false by default)
4218 - Applied patch #1199
4220 * Computation of guptime
4221 * Dropping all sources of files when too many sources
4222 * Mailer that don't accept the <..> addresses (new option
4223 'add_mail_brackets')
4224 - Added detection of similar chunks between files, not used yet
4225 - Applied patch #1200, with option 'filename_in_subject'
4226 - Source Management:
4227 * Changed default for min_reask_delay to 600 seconds
4228 * Two new queues, one for good clients (every 10 minutes), one for
4229 bad clients (every 6 hours)
4231 2003/03/01: Simon (v 2.02-23)
4233 * stats should be correctly saved
4234 * sources above max_sources_per_file should be correctly removed
4235 * IMPORTANT: JoinSlot message should be sent correctly again at
4237 - Gui: added a "Scan Ports" command to autodetect core port. Be careful, it
4238 can trigger intrusion detection softwares ! It is partially asynchronous,
4239 so that the replies may appear several seconds after the function returned.
4241 2003/02/28: Simon (v 2.02-22)
4242 - eDonkey: respect max_sources_per_file
4243 - Applied patch #1198, stats saved as options in 'stats.ini'
4244 - Added link to French forum on main WEB page
4246 2003/02/26: Simon (v 2.02-21)
4248 * Save hashes of committed files in shared_files.ini to remove
4249 rehashing committed files on startup
4250 * Remove / after the md4 in ed2k links
4251 * Full-Chunks SUPPORTED
4252 - Applied patch #1185
4253 - Applied pango's patches:
4254 63_revert_optimize_chunks_display
4255 65_fix_file_unbound_argument,
4257 67_can_download_from_uploaders,
4258 70_fix_duplicates_in_pending_slots_fifo
4259 74_emule_protocol_version
4260 Comments on patches not applied:
4261 * 73: should not use Weak.t but remove the client when disconnected.
4262 * 58: not sure what it does exactly
4263 * 60: emule quotas remain until full-chunk is fixed
4264 * 69: no full-chunk until we and edonkey can support it
4265 * other ones (51, 68, 71, 72): touch the internals of the sensible
4266 upload/download engine. need more time to check
4267 - Fix: correctly cache IPs in Ip.async_ip
4269 2003/02/25: Simon (v 2.02-20)
4270 - Applied patch #1174, #1177, #1178
4271 - With threads, asynchronous DNS resolution of urls
4272 - GUI: ed2k links directly saved to selection, but doesnot work yet
4274 * Try to work around the incoming Emule connections sending
4275 an immediate AvailableSlot
4276 * Inverted 2 shared/commit lines in CommonComplexOptions.file_commit to
4277 prevent rehashing of downloaded files
4278 - ./configure: Improved pthread support
4280 2003/02/25: Simon (v 2.02-19)
4281 - Fixed Makefile for pthread library
4283 2003/02/24: Simon (v 2.02-18)
4285 * Fixes: good sources dropped
4287 * Implementation of Query Routing 0.1
4288 - Applied patches #1169, #1173
4289 - ./configure: use option -enable-pthread-lib=pthread, or whatever, to enable
4292 2003/02/22: Simon (v 2.02-17)
4293 - GUI: new application mldonkey_installer'. Guess its goal. Need
4294 -enable-devel in ./configure . Not working yet.
4295 - Applied patch #1165, #1164, #1161
4299 * Removed slot reserved for mldonkey2
4300 * Added some UDP messages for Emule (not yet used)
4301 - Applied patch toggle_browse_share by Martin
4302 - Applied patch #1151, #1152 and #1156
4304 59_fix_gui2_compile_warning
4305 61_remove_zone_present_field,
4306 62_telnet_use_interface_buffer
4307 63_optimize_html_mods_chunks
4308 64_html_mods_upstats_links
4309 - Fix: 'uploaders' command only prints connected clients.
4310 - ./configure: new option -enable-pthread, if you want to compute some
4311 md4s in another thread.
4313 2003/02/20: Simon (v 2.02-16) tag unstable-2-02-16
4314 - Applied patch #1137: new html_mods
4315 - Added some options in 'vo':
4316 client_name,allowed_ips,client_ip, force_client_ip
4318 * If no native code compiler is available, compile in bytecode (HPPA)
4319 * New option -disable-gui
4321 * Overnet: Fixed message 27, removed message 33
4322 * eDonkey: added message 92
4323 * Try to print the IP:port for unknown packets
4324 - Net: mtu changed to 1500
4326 2003/02/19: Simon (v 2.02-15)
4327 - Applied patch #1136: better mail output
4328 - Applied patch adding "rem" command
4329 - Applied patch #1128: Adding chunk_width edit option
4330 - Applied patch #890: FakeCheck link
4332 * Try to recover direct address from connecting client
4333 * Try to ask good connecting clients to reconnect (either by tcp or udp)
4335 2003/02/19: Simon (v 2.02-14)
4336 - Bug fix: vd <num> (patch #1135)
4338 2003/02/18: Simon (v 2.02-13)
4339 - Upgraded to lattest html_mods
4341 * You can now pass the full path to a file filled with urls (ed2k://) in
4344 2003/02/18: Simon (v 2.02-12)
4345 - fixed bug exiting on set_request_result not found.
4347 2003/02/18: Simon (release unstable-2-02-11)
4348 - DonkeyServers: fixed a bug with socket Lifetimes
4349 - Fixed bugs in gpattern and vm commands
4351 2003/02/17: Simon (release unstable-2-02-10)
4352 - DonkeySources3: new source management (use 'sources' command for info)
4353 * Increased default max_clients_per_second to 30
4354 * Removed ban on rank > 500
4355 - Applied last html_mods patch. Does not work well on my Mozilla version.
4356 So, disabled by default (activate with html_mods = true). WEB Messages
4357 have been changed, so that foreign translations are not ok anymore.
4358 - DonkeyServers: query more files before deconnection from clients.
4362 * Added small icons (used by default)
4364 * better chroot support
4365 * set shell variable MLDONKEY_CHROOT=/dir if you want mldonkey to
4366 chroot itself in /dir. mldonkey must be started as root (or setuid)
4367 and should drop its priviledges using run_as_user/run_as_useruid.
4368 * added option 'run_as_useruid'. The directory where mldonkey
4369 will save its files must be writtable by this user, and
4370 the incoming directory too (recall: options can be set on the
4371 command line: #root> /usr/local/bin/mldonkey -run_as_useruid 502).
4375 * New query tabs: "ShareReactor Search" and "Jigle Search"
4376 * More options in "FreeDB Search" tab
4377 - Ip: DNS queries are now always cached.
4380 - Applied patch #1079 (fragmentation)
4382 * Keyword store completely rewritten
4383 * Remove keywords older than 1 hour
4387 * New query tab "IMDB Search"
4390 - Applied html_mods patch 2 from Mike Jones
4392 * New query tab "FreeDB Search"
4395 - Ported to Ocaml CVS version: 3.06+21 is required on Mac OS X. Downloads
4396 are done from Savannah for 3.06 and 3.06+21
4398 * New message CleanTables sent every 30 minutes to the GUI to clean
4400 - DonkeyProto: closer to Overnet 0.44, still some information missing
4401 A client browse trace is available in DonkeyProtoClient.ml
4404 - WEB interface: applied patch html_mods
4405 - Applied patch 1053 (separated blocks in GUI)
4407 * moved column popup on right button
4410 - GUI: display rank when possible
4412 2003/01/30: Simon (tag unstable-2-02-9, and good week-end)
4413 - Net: attempt to take into account TCP/IP packets size in bandwidth control.
4414 Seems to work better
4416 * Change file priority in GUI
4417 * New option 'downloads_up' to permute downloads/downloaded
4418 * Click on column titles to sort/add/remove them
4420 * Ask files from server in decreasing priorities order
4421 * Should be able to import Emule .part.met files
4422 - Mailer: patch from <moumar@netcourrier.com> applied
4425 - Changed The License of okey, configwin, mp3tag and mlchat to GPL
4426 - one tab per list in the column configuration tab (gui/settings)
4431 * New state "Queued out" for sources
4432 * New state "Aborted <reason>" for files
4433 * Some items copied from the "downloaded" contextual menu to the
4434 "Downloading" contextual menu
4436 * Sources Management a la 2-02-5 updated (next time, choose your
4437 source management depending on an option ?)
4439 * New option "enable_overnet" (true by default), accessible from
4442 2003/01/26: Simon (tag unstable-2-02-8)
4443 - Added bundle binaries (core + gui with communication via FIFO) to
4444 ease use of alternative networks (mldc+gui, mlslsk+gui, etc).
4446 * FIX: connections to Overnet
4447 * Updated 'cs' command
4448 * FIX: seens in stats replaced by successful connections
4450 * 'mem_stats' prints a bit more info (not yet enough)
4454 * FIX: Active searches don't work, go back to passive
4456 2003/01/25: Simon (tag unstable-2-02-7)
4458 * Better management of users in servers/rooms
4459 * Servers headers displayed in GUI console
4460 * Active Searches enabled if not "firewalled"
4461 (don't forget to set the 'firewalled' option if needed, or
4462 to set 'force_client_ip' since IP detection does not work
4465 * Queries moved to server tab
4466 * FIX: rooms work correctly
4468 - limited to 500 lines
4469 - FIX: Font "fixed" is not required anymore
4470 - Combo/history of commands
4472 * New option 'log_clients_on_console' to log client disconnections
4475 * Propagate max 20 direct sources, not older than 10 minutes, verified.
4479 * Compressed packets are accepted (not yet requested)
4480 * Second Sources packet format accepted
4482 * Respect the timeout between searches
4483 * Take file state into account
4485 * don't touch client_ip if not changed
4486 * correctly remove "Bad clients"
4488 * remove sources not connected since
4489 max_source_age * 12 h (half-days instead of days).
4490 * correctly save source_age
4491 * take priority and popularity into account for score
4495 * Opennap plugin should compile again
4496 * Last chunk always downloaded first
4497 - Patch applied: new_client_stats (cs command)
4499 * Improved 'sources' command stats
4500 * Scores of sources are saved
4501 * File state is taken into account for the score
4502 * Sources with rank > 300 are not kept in good clients
4503 - Direct-Connect: no leeching anymore !
4504 * mldc replies correctly to passive searches (ie on the same hub)
4506 2003/01/22: Simon (tag unstable-2-02-6)
4507 * Mainly a bug-fix release for 2-02-5. Lots of features still missing
4508 (sources' scores are not saved, lastreqs,cancelled files sources not
4509 immediatly removed,...)
4511 - Fix: problem with downloads never starting
4512 - Fix: problem with partial chunks not saved
4513 - Added www.mldonkey.org in the HTTP interface
4514 - Better information on request results for each client
4515 - New option 'verbosity' to choose which warnings to display.
4518 - Replaced date using floats by ints (lots of new bugs...)
4519 Please, signal any incompatibility with guis (mldonkeywatch...)
4522 - Started implementing new source management system
4525 - Global change to use int64 instead of int32 everywhere. I hope I didnot
4526 forget places, otherwise big bugs.
4529 - Added doc/overnet.txt
4533 * Old sources are stored in two queues to always start by the best ones
4534 * FIX: Connected sources are also saved
4535 * FIX: Connected sources are also printed
4538 - DonkeyInteractive: FIX: "out-of-bound" error
4539 - DriverControlers: shorter help
4540 - DonkeyProtoClient:
4541 * FIX: for cDonkey, send both QueryChunksReq and QueryFileReq
4542 - DonkeyOneFile: fixed non-shared partial downloads at startup
4543 - Options: values can be aliases to reduce space usage (
4544 used in file_sources.ini)
4546 * FIX: sources are sorted to avoid recently-connected sources in
4548 * clients ranking > 1000 put in concurrent_sources, not good sources
4550 * connection lifetime of connection set to 1 minute, and prolounged
4551 if either peer uploads or downloads
4552 * FIX: challenge is also send for incomning connection
4553 * ban clients with queue ranking > 1000 and send them a message
4554 * send a bad QueueRanking to banned clients asking to enter
4556 - CommonOption: save_options_delay default set to 15 minutes
4557 - config/Makefile.in: IRC compiled by default
4559 2003/01/13: Simon (tag unstable-2-02-5)
4560 - DonkeyClients: add md4s of connected clients to a hashtbl to prevent
4561 accepting two connections from the same client.
4563 * new sources are queued LIFO.
4564 * old sources are immediatly stored in old_sources.
4565 * fixed adding several times the same file to one source
4566 - DonkeyOptions: md4 now identifies mldonkey as emule.
4567 - Gui_downloads: expose events redraw the color bar
4568 - DonkeyServers: black-list servers on port 4662
4571 - DonkeyGlobals: remove 1 from size to compute nchunks in new_file
4572 - DonkeyTypes: removed field file_all_chunks, recomputed
4573 - DonkeyComplexOptions: save mtime and chunk states. mldonkey should not
4574 compute the md4 at each startup anymore.
4577 - Source Management: ask for new sources only if we have fewer than
4578 600 * max_clients_per_second new/good sources.
4579 - IRC: completely working ?
4580 * Connect to server and login
4581 * General channels (right-menu on IRC account) such as '#mldonkey' :)
4582 * In channels: receive messages, receive users, send messages, close chat
4583 * Private channels with users (double-click on user)
4585 2003/01/10: Simon (tag unstable-2-02-4)
4586 - Gui: display chunks availability when selecting a source
4587 - DonkeyComplexOptions: saved some space in file_sources.ini
4589 * JoinQueue are not forgotten when the queue is full.
4590 - DonkeyGlobals: Use Weak Hashtbl for udp_clients. Should save memory.
4591 - New command 'sources' to print the state of the different source queues.
4592 - DonkeySources2: Always use the same client_num for the same source
4593 (to avoid flooding the GUI with new clients)
4594 - Pango's patches: 39_readable_server_banners, 40_boot_time_is_redundant,
4595 43_waiting_queries_late_filtering, 46_overnet_fix_errormsg,
4596 50_tight_file_commit, 52_self_create_mldonkey_gui_ini ,
4597 53_dont_propagate_overnet_sources, 55_overnet_send_appropriate_infos
4598 57_optional_servers_walking
4600 2003/01/10: Simon (tag unstable-2-02-3)
4601 - DonkeySources2: fixes from 2003/01/08 had been reverted by CVS.
4602 Sources were dropped under heavy usage
4604 2003/01/09: Simon (tag unstable-2-02-2)
4605 - DonkeyClient/DonkeyProtoClient: complete implementation of Emule
4606 client-to-client source propagation.
4607 - DonkeyClient: limitation of file groups to 1000 files
4608 (should save memory)
4609 - DonkeyGlobals: removed the mldonkey letters in md4
4610 - Makefile: 'mlim' is compiled only if mldonkey_gui is compiled
4611 - DonkeyOptions: removed options are back in downloads.ini
4613 2003/01/08: Simon (tag unstable-2-02-1)
4614 - Fixed some bugs in new sources management. Seems to works pretty well.
4615 - For fun: new mldonkey authentification, just to see how long it will take
4616 to emule devels to break it :)
4620 * called automatically by make when needed
4621 * -enable-im has been removed
4622 * -enable-devel has been added for development things
4624 * Friends, accounts and rooms are packed inside a notebook
4625 * IRC connects and join channels, but the channel widget is not done
4626 * The IM widget is available from mldonkey_gui IM menu
4627 * 'mlim' is mldonkey IM-specific program
4629 * New source management seems to work, not complete yet
4630 * Upload: fill client buffers depending on the upload rate
4633 - Makefile: simplification and regeneration from config/Makefile.in
4636 - Gui: fixed the display of the number of shared files
4640 * New option 'keep_best_server' (default true) to automatically change
4641 the server mldonkey remains connected when it finds a better server
4642 * walker: does not reconnect if already connected to more than
4643 the maximal number of servers (option 'max_walker_servers' (default 1)).
4646 - Opennap: send shared files to server after connection.
4650 * new options file 'edonkey.ini' for options specific to eDonkey/Overnet
4651 * eDonkey specific options moved from 'downloads.ini' to 'edonkey.ini'
4652 - Direct-Connect: upload works correctly. Need more tests. Maybe add
4653 different mailing-lists for (mldonkey-dc@, mldonkey-nap@,...)
4656 - New argument -find_port, to search other ports when the ones specified are
4657 already used. The options are modified accordingly.
4658 - Option 'allowed_ips': changed are immediatly taken into account for
4660 - Major Bug: fixed bug of 100% CPU usage when timeout < 0.0001 and poll used.
4661 - Direct-Connect: upload of shared list works
4662 - Makefile: different executables for each network.
4663 'mldonkey' -> eDonkey2000 + Overnet
4664 'mldc' -> Direct-Connect
4665 'mlgnut' -> Gnutella
4666 'mlslsk' -> SoulSeek
4667 'mlnap' -> Open Napster
4668 and 'mlnet' for all networks
4671 - Test for existence of the GUI before asking or trying to start it
4673 2002/12/23: Simon (tag release-2-02)
4675 - DonkeyClient: fixed a bug preventing download from indirect clients.
4677 2002/12/21: Simon (tag release-2-01-4)
4678 - DonkeyOvernet: updated TCP protocol to overnet 0.42
4680 * DonkeyOneFile: removed a bug disconnecting from time to time an uploader.
4682 * verify that clients have received a slot before uploading
4683 * remove client from upload queue when reconnecting
4686 - Applied patch #812 (KDE Icon set). The old icons can still be used by
4687 changing the Makefile line : ICONS_CHOICE=big
4688 - Applied patch #852 (wildcards in black-list)
4689 - Applied patch #855: correctly sort servers before remove_old_servers
4690 - Removed some options for Overnet: publish and search for sources
4692 - DonkeyOptions: new options:
4693 ban_queue_jumper (true): if you want to ban clients reasking files too fast
4694 ban_period (6): how long are they banned
4695 send_warning_messages (false): send a message when a client is banned
4696 max_emule_slots (33): percent of upload slots that emule clients can use
4697 (cannot be set under 25%)
4701 - DonkeyClient: quota limitations:
4702 * Emule clients can not get more than 1/3 of the upload slots
4703 * at least one mldonkey client can always enter the queue
4704 - DonkeyClient: banning mechanism for clients that connect too often
4705 (don't prevent downloading from them)
4707 * Remove duplicates at end of list
4710 - Multi-column sort should work again.
4711 - Reverted again the query for all files to a query for one file.
4713 2002/12/18: Simon (tag release-2-01-3)
4714 - Removed the Credit System. The world is already unfair enough, no need
4715 to bring a monetary system here. Moreover, it prevents correct downloads
4716 from other mldonkey clients !
4717 - Overnet: Applied Norbert Lataille's patch 3.0
4719 2002/12/18: Simon (tag release-2-01-2)
4720 - MinGW port: should compile and seems to run. Not yet tested enough.
4722 * Better way to choose the master servers: if a new
4723 server has 5 times more users or at least 1000 more users than a master
4724 server, it replaces the master server.
4725 * Don't remove old servers if we are connected to them !
4728 - Prevent downloading the entire file list at every connection to a friend
4729 - Added Ip.reachable to remove local network addresses
4730 - Started port to native Windows via MinGW
4733 - Applied Martin's patch on WEB Realm
4734 - Added option 'run_as_user' that can be used to change (setuid) the
4735 priviledges of mldonkey after ports binding.
4736 - Started implementing upload in Direct-Connect
4737 - New command 'friends' to print a list of all friends
4740 - Applied Norbert Lataille's patch 2.5 on Overnet publish
4741 - Applied Andre Hinrichs's patch for better help
4742 - Applied Pango's patches (20021213b):
4743 05_save_client_last_filereqs: applied
4744 07_keep_user_filenames: applied
4745 20_vd_sharp_urls: applied
4746 21_queue_new_sources
4747 24_unbroke_random_order: applied
4748 25_bolder_remove_old_sources
4749 29_mrvn_eta: applied
4750 32_xou_web_interface: applied
4751 34_suxxx_display_chunks_in_telnet: applied
4752 35_fix_console: applied
4755 - Rewritten remove_old_servers, scheduled every 15 min
4756 * CommonComplexOptions.servers is an intmap, not a list anymore
4757 * Delays are printed
4758 * Black-listed servers are removed immediatly
4759 * Last Connection is extracted immediatly
4761 2002/12/09: Simon (tag release-2-01)
4762 - Fabrice should compile and release binaries for 2.01
4763 - Fixed problem with stats
4764 - Overnet: added an option for publish (false by default since still in dev)
4765 - IM: Only Yahoo works
4766 - A message is sent to old clients only randomly.
4769 - Applied Overnet publish patch from Norbert LATAILLE
4770 - The Overnet patch is too aggressive (about 5 kB/s). It really needs to
4774 - Fixed bug in "nu" command (thanks Rudolf Polzer)
4775 - "reshare" now add new files to upload.
4778 - Applying Pango's patch:
4779 01_display_server_banners: banners already appear in GUI console
4780 02_force_high_id: applied
4781 03_overnet_boot_dns_resolution: already done
4782 05_network_signature_change: applied
4783 06_wrong_lowid_display: already done
4784 07_keep_user_filenames: applied
4785 08_better_default_parameters: partially applied
4786 09_md4_speedup.patch: already done
4787 10_port_blacklist: applied
4788 11_max_connected_servers_offbyone: already done
4789 12_files_md4_corruption: already done
4790 13_revert_iptos: applied, but why in and out ?
4791 14_get_chunks_in_random_order: applied, but with an option to disable it
4792 15_fix_ovweb_default_site: applied, but an option would be better
4793 16_sources_per_chunk: applied
4794 18_remove_cancelled_downloads: applied
4795 20_vd_sharp_urls: applied
4796 24_check_for_x: applied
4797 22_connect_on_server_urls: applied
4798 26_old_file_on_cancel: applied, but option, disabled by default
4799 23_uploaders_command: applied
4800 27_selective_hide_files: applied
4802 NOT APPLIED, need some discussion:
4803 17_hide_chunks_being_uploaded:
4804 21_fifo_new_sources:
4805 25_bolder_remove_old_sources:
4808 - Gpattern: fixed bugs introduced by mldonkey :)
4809 - Gui_servers, Gui_friends: server users list and file sources list are only
4810 update 1/10 second after selection to avoid flickering.
4813 - Moved some code in the GUI driver to avoid sending many messages when
4814 GUI use the POLL extension.
4817 - Applets: new directory applets/, containing 3 sub-directories:
4818 * api: a common C api used by applets to chat with mldonkey on its GUI port
4819 * kde: a KDE panel applet
4820 * gnome: a GNOME panel applet
4821 A lot to be done. I know a bit GTK, not QT ...
4822 The Client_stats message is not yet completely filled with useful data
4827 * Accounts Window, and Toplevel menu to access it
4828 * Contacts Window works
4832 - Gui_rooms: each opened room has its own users/messages widgets, to avoid
4833 reprinting all messages when changing of room. Maxence, could you
4834 look at that and explain me how to destroy a widget when room is
4836 - CommonInteractive: raise Not_found when the option doesnot exists
4837 (no more "option NAME value changed" for non-existing options :)
4838 - Instant Messaging: Started implementing the interface for instant
4842 - CommonClient: check MD4 replies from client (inspired from patch #662)
4843 - DriverMain: track options_version, to be able to update the options
4844 when a new version of mldonkey is used.
4847 - CommonOptions: added the redirector-generated server list to web_infos,
4848 and an option to change the redirector. Now, we should probably
4849 disable auto_update_server by default, since the relocator gives
4850 a nice server list. Or we should give more weight to new servers
4851 when trying to connect.
4854 - DonkeyServer: added sending of UDP pings. Check that pings have been
4855 replied before sending extended search/locate requests.
4856 - DonkeyClient: changed mldonkey-specific protocol to recognize old
4857 clients, and send a warning.
4860 - Fixed bug #1701 ?: read at least 1000 bytes before writing stream
4861 in a file from Limewire. Gnutella clients problem, or is_http_ok is
4863 - Fixed bug #1708 ?: rewritten get_page and wget in net/http_client.ml
4865 - Support #101511: in the Upload panel of the GUI, the contextual menu
4866 offers to print ed2k links in the Console panel.
4867 - GuiTypes: new event Server_message_event to send server messages to
4869 - GuiEncoding/GuiDeconding: now, protocol versions will only change when
4870 the encoding of some old messages changes, not when new messages
4871 are added, so that new messages can be handled even if an old
4872 format is used for other messages (old GUIs can benefit from new
4874 - DonkeyOvernet: change the URL in 'ovweb'
4875 - DonkeyProtoCom: sending much more information to the redirector, so that:
4876 - we can generate our own server list
4877 - we can generate an overnet peer list
4878 - we can gather some statistics on node bandwidth usage to decide
4879 when to create supernodes.
4880 - Observer: now generates a 'servers.met' file every 5 minutes, which is
4881 sent to savannah, if I find the command :), but the dest is:
4882 "http://savannah.nongnu.org/download/mldonkey/network/servers.met"
4883 if you want to add to your web_infos.
4884 Servers inside are guaranteed alive in the last 5 hours (well,
4885 unless the redirector is down which is often true :( )
4888 - common/commonOptions.ml: new option "network_update_url" to
4889 download files "motd.html" and "motd.conf" used to update some
4890 parameters in all clients. "motd.conf" is displayed in the
4891 HTML and telnet interfaces, and at startup. Why not in the GUI :) ?
4892 These URLs are downloaded every day, and can change the configuration
4893 of the client remotely. This will be used later to test different
4894 parameters to activate/desactivate ultrapeers behaviors.
4895 - donkey/donkeyServer.ml: new implementation of remove_old_servers. The
4896 new implementation sorts the servers, and remove all those that
4897 exceed their age, but guaranty to let at least "min_left_servers" in
4899 - donkey/donkeySupernode.ml: started implementation of supernodes.
4900 Supernodes are mldonkey clients, that act as pseudo-servers:
4901 - they accept queries from mldonkey clients
4902 - they index files from all clients
4903 - donkey/donkeyOvernet.ml: fixed bug preventing removal of old
4905 - config/configure.in: REQUIRED_LABLGTK=1.2.4 (please, dont force
4906 people to upgrade if it is not REQUIRED). Use the configure
4907 script to detect the version and to generate stubs for simple
4908 modifications (lib/gAutoconf.ml.new.in). Only upgrade for
4909 major reasons (ocaml release eg).
4912 - config/configure.in: detection of lablgtk version to be able to compile
4913 without lablgtk-20021031 (must find mouse position, zoggy ??).
4914 GToolbox.popup_menu is generated by ./configure from
4915 lib/gAutoconf.ml.new.in
4916 - gpattern/gpattern.ml: using arrays instead of lists. filters directly
4917 integrated. Forces many changes in gui/gui*.ml, but should be much
4919 - gui/gui_downloads.ml: Call to remove_client removed until a new message
4920 is added for that in the protocol
4921 - net/udpSocket.ml: implementation of SOCKS 5 support for UDP. Must
4922 check that bytes are correctly ordered.
4925 - Fabrice has to move, and his new employer does not allow him to
4926 program in other open-source projects (for Intellectual Property
4927 problems). So he will keep administrating the project (web site,
4928 forums, releases), while I'm integrated in the developper team
4929 as main developper... As a start, I have some bugs to fix, and
4930 I would like to create a parallel network over edonkey2000 using
4931 mldonkey supernodes.
4934 - changes to use lablgtk-20021031 (@#!:@* Why the fuck did you do that ?
4935 you are the only developper to use it, nobody can compile now :(
4937 2002/11/04: mldonkey
4938 - Applied patch #634 (increase buffer size for md4 comp.)
4939 patch #631 (max_connected_servers off by one)
4940 patch #630 (low id display)
4941 patch #632 (use DNS in "boot")
4944 - New implementation of 'remove_old_clients'
4946 2002/10/22: mldonkey
4947 - Patch #576 applied.
4949 * Message files changed: ~/.mldonkey_gui_messages.ini for GUI and
4950 ~/.mldonkey_messages.ini for core
4951 * Some messages customizable in core
4952 * web_common_header, html_header and download_html_header moved
4953 to ~/.mldonkey_messages.ini
4954 * ~/.mldonkey_messages.ini can be overwritten MLDONKEY_MESSAGES
4956 2002/10/21: mldonkey
4957 - lib/options.ml: always close open files. "Too Many Open File" bug again.
4959 2002/10/20: mldonkey
4960 - New default options for 'web_common_header' and 'html_header' by Xou.
4961 - Patches #572, #573 and #574 applied.
4963 2002/10/16: mldonkey
4965 - fix: uploaded files do not appear twice in panel
4966 - fix: empty results are not accepted anymore (Overnet ?)
4967 - fix: "ovweb" accepts URLs since default site is down
4969 2002/10/15: mldonkey
4970 - fix: files should not appear twice anymore in upload panel (files whose
4971 md4s have been computed replace [are not added anymore to] their
4972 corresponding temporary shared file).
4973 - fix: added must_write in udpSocket.ml when bandwidth controler is used
4974 (UDP packets were not sent anymore...)
4975 - fix: upload not more than the bandwidth each second
4977 2002/10/14: mldonkey
4978 - add: internationalisation
4979 * envirronment variable MLDONKEY_GUI_MESSAGES
4980 - fix: rewritten upload in edonkey. Old mode can be restaured with option
4981 'new_upload_system' set to false
4983 2002/10/13: mldonkey
4984 - add: internationalisation
4985 * new module lib/gettext.ml for format options
4986 * new GUI config file gui_messages.ini
4987 * new directory i18n to store gui_messages.ini.?? files for
4988 contributed languages
4990 2002/10/12: mldonkey
4991 - fix: support for several GUIs at the same time
4992 * Changes in how objects updates are monitored
4993 * Lots of changes in DriverInterface
4995 2002/10/11: mldonkey
4996 - add: 'close_all_sockets' command to close all connection sockets.
4997 Added to the SIGHUP signal handler.
4998 - fix: SIGHUP doesn't call network_enable/disable anymore. Bug about
4999 automatic disabling of edonkey plugin ?
5000 - fix: new udp bandwidth management
5001 - add: starting reimplementing multi-gui
5003 2002/10/09: mldonkey
5004 - add: catch SIGTERM and save the config before exiting
5005 - add: publication on Overnet has been implemented, but not tested yet.
5006 - fix: "ovstats" displays more information on current searches
5008 2002/10/08: mldonkey
5009 - fix: bug in indexer2.ml that prevented complex searches in local history
5011 - patch #556 and debian/ from #553 from Goswin von Brederlow. Some problems
5012 with the end of the patch #553.
5013 * Availability seen in % of missing chunks, and height in color bar.
5014 * New "last-seen" and "Age" columns in GUI
5015 * No segfault on division by zero when size=0
5016 * No queries for paused files.
5017 * New debian/ directory
5019 - add: gui open a message box when password is not valid.
5021 2002/10/07: mldonkey
5022 - fix: "forget_search" should work correctly now
5023 - fix: use Unix.LargeFile.stat instead of Unix.stat to avoid
5024 exception when sharing files greater than 1.7 Go
5025 - add: filters. Need to enable 'filter_search' option, and to
5026 change 'filter_search_delay' (results are gathered during this delay,
5027 and all filtered together and displayed, so results are displayed
5028 with this period, and no results are displayed before the delay).
5030 2002/10/06: mldonkey
5031 - fix: split add_interesting_client in two different functions:
5032 force_fast_connect_client (connect immediatly, regardless of
5033 min_reask_delay) and connect_as_soon_as_possible.
5034 - fix bug #1291: vma does now display all servers
5035 - add: new command "version"
5036 - fix: "nu" can take negative arguments to decrease the no-upload period
5037 - fix: stop adding MD4 to proposed names
5039 2002/10/05: mldonkey
5040 - fix: clients_lists are now stored in a 5 buckets array, one per minute.
5041 Strange behavior: the list is almost always full, and the number of fds
5042 increases dangerously. set client_timeout to 30 or smaller to
5043 improve that ? Must check that this timeout is changed when the client
5044 becomes interesting (queued for upload or download). Also set
5045 max_clients_per_second to more than 5...
5046 - fix: preferred files are not queried twice anymore, nor client repeatedly
5047 queried after connection, to avoid Emule Black-list stupid mechanism.
5048 - fix: unknown commands should print an error now
5049 - add: new command "priority" that can be used to change the priority of
5050 a file. Such files will get priority times more bandwidth than
5053 * new command "use_poll" to switch between poll and select.
5054 * Fixed bug in poll making huge CPU usage
5055 - add: new messages for publishing files on Overnet.
5057 2002/10/04: mldonkey
5058 - fix: file_best_name should be used more often
5059 - fix: recover_temp should use the best available name
5060 - fix: the number of overnet peers saved in servers.ini is now limited
5061 by overnet_max_known_peers
5063 2002/10/03: mldonkey
5064 - add: new files for IP multicast, not used, probably never
5065 - add: overnet URLs in "ovlink", statistics "ovstats"
5066 - add: overnet new options to reduce memory usage "overnet_max_search_hits"
5067 and "overnet_max_waiting_peers"
5069 2002/10/02: mldonkey
5070 - add: priority of files
5071 * read power added to TcpBufferedSocket.t for priviledged connections
5072 * DonkeyTypes.file_priority for priviledged files
5073 * DonkeyTypes.client_power for priviledged clients
5075 2002/10/01: mldonkey
5076 - add: more debug output for 'dump_heap'
5077 - donkeyClients.ml: SourceReq clients are not immediatly added to
5080 2002/09/29: mldonkey
5081 - fix: bug #1252: servers were added several times in Opennap/DC to each user.
5082 - fix: ed2k link should appear again in 'download' mail
5084 2002/09/28: mldonkey
5085 - fix: sources are correctly removed from the GUI locations panel
5086 - fix: Makefile should correctly compile targets 'static' and 'byte'
5088 MORECFLAGS="-I patches/ocaml-3.06/ -DHEAP_DUMP" make cdk/heap_c.o
5089 to compile with "dump_head" command.
5091 2002/09/28: mldonkey
5092 - fix: incoming connections timeout are now correctly set, and
5093 connections should be correctly initialized.
5095 * With select, you cannot use more than 1024 file descriptors
5096 (otherwise, it segfaults)
5097 * Added poll support, that allows to use more than 1024 fds and
5099 - fix: better control of the number of used fds
5100 - add: message in GUI starter about the 'ask_for_gui' option
5101 - fix: faster sharing of downloaded files (probably present chunks are
5103 - fix: Ip.valid check for class D addresses
5104 - add: new option 'verbose_overnet'
5105 - fix: a file name is changed only if it was the MD4 before.
5106 - fix: don't query blocks for Paused files
5108 2002/09/27: mldonkey
5109 - fix: upload improvements
5110 * names are correctly chosen, and sent to the server
5111 * all BUFFER_OVERFLOW due to long file lists have been removed
5112 * after restart, non committed files are still shared.
5113 * bug fixed when shared file list is too long (shortened message)
5114 * the size of the ShareReq message directly depends on the space
5115 available in the server buffer.
5116 * md4s for downloaded files are never recomputed after commit
5117 - fix: force download:
5118 * new contectual menu item "Force Download" in GUI result panel
5119 * "force_download" should now work well
5120 - add: core errors are displayed in the GUI console (maybe the last line
5121 of the console should be displayed in the status bar ?)
5122 - GUI protocol 7 for "force" argument to Download_query
5125 - add : web directory to manage source files of generated mldonkey pages
5126 - change : chat protocol version (-> 1.1) to be able to communicate with
5127 mlchat from Cameleon
5129 2002/09/25: mldonkey
5130 - add: new module common/commonDownloads.ml to share the functions used
5131 in all network where downloads are in one piece.
5132 - fix: mail, chat and file_completed_cmd are used for all finished downloads
5133 not only eDonkey (CommonInteractive.file_complete)
5134 - fix: file_commit now moves the file to incoming/. All networks must now
5135 use the "commit" function, not only edonkey.
5136 - fix: try to save the md4 of each file before sharing it.
5138 2002/09/24: mldonkey
5139 - fix: renewed my passport (6 hours)
5140 - fix: prevent "BAD BAD BAD" lines from removing good sources. Very Important
5141 Bug for your downloads.
5143 2002/09/23: mldonkey
5144 - fix: mldonkey_gui prints a better error message when the hostname couldn't
5146 - fix: the configure script allows ocaml versions with +n extensions.
5147 - add: new program mldonkey_guistarter to start the GUI immediatly at
5149 * New options 'ask_for_gui', 'start_gui', 'mldonkey_bin' and 'mldonkey_gui'
5150 * New option panel 'Startup'
5151 - fix: get_int64 works correctly (no more negative upload counters)
5153 2002/09/22: mldonkey
5154 - fix: udp packets added to bandwidth computation
5156 - add: new option panel for plugins
5157 - add: each plugin defines its own option for the GUI panel
5158 - fix: when gui_poll, don't send options values
5160 * No need for servers anymore :), searches and downloads are OK
5161 (but no filter on search results)
5162 - add: lots of debug messages for bandwidth control.
5163 * I should probably remove from remaining_bytes the size of the
5164 TCP packet header, each time the write/read is OK.
5165 * I should optionnally include the GUIs in the control !
5167 2002/09/21: mldonkey
5168 - fix: removal of out-of-bounds accesses, not supported by Ocaml on
5170 * added check in ./configure for MacOsX 6.0 to enable CheckBounds
5171 * added -inline 10 for checkbounds to be removed for other archs (5
5173 * added Autoconf.check_string calls in littleEndian.ml and bigEndian.ml
5174 - add: Overnet works for simple queries and sources
5175 * two options disabled by default: overnet_search_keyword and
5176 overnet_search_sources
5178 2002/09/20: mldonkey
5179 - add: OverNet should now be able to add sources to eDonkey downloads
5180 (it is triggered using the "overnet" command). You need peers to
5181 access OverNet: see the end of the distrib/servers.ini file.
5182 - fix: started debugging mldonkey on Mac OS X 10.2
5183 - fix : SIGBUS in telnet "q" command.
5184 - need to check all possible array/string out-of-bounds accesses.
5186 2002/09/19: mldonkey
5187 - add: OverNet support started in donkey/donkeyProtoOvernet.ml and
5188 donkey/donkeyOvernet.ml. Can connect to OverNet peers and learn
5190 - add: new donkey command "import_temp <dir>" to import old files
5191 currently downloaded by edonkey in mldonkey.
5192 - fix: Bug #1052 (buffer overflow warnings when MLdonkey is reading
5195 2002/09/18: mldonkey
5196 - fix: Bug #420 (Wrong permission on imported files)
5197 - fix: Bugs #421 and #591 (vd: meta refresh use external ip)
5198 - fix: Bug #842 (mldonkey overwrites the modified download.ini)
5199 - fix: Bug #878 (Hidden files are shared)
5200 - fix: Bug #1053 (no warning when overwriting files)
5201 Note: / and \ in names are also replaced by _
5202 Duplicated files get a .2 , .3, etc
5204 2002/09/16: mldonkey
5205 - fix: Bug #432 (same packet is send with the same data)
5207 2002/09/15: mldonkey
5209 * Display the current upload/download rate in bytes.
5211 2002/09/14: mldonkey
5212 - add: New options in downloads.ini:
5213 * [gui_options_panel] to configure the options that are configurable in
5214 the GUI without modifying the GUI. Fix for Bug #844
5215 * [debug_net] to display more information about low-level network layer
5217 * New protocol 5 for message [Add_section_option]
5218 * Boolean and filename options have special entries
5219 * More client options in the GUI option panel
5221 * Correctly display file sources
5222 * No more Unix.write errors due to early disconnections
5223 * More ultra-peers agent types allowed
5225 2002/09/11: mldonkey
5226 - add: CyMeS server directory
5228 2002/09/08: mldonkey
5229 - fix: prevent connecting several times to the same server
5230 - fix: remove_old_servers should work again
5231 - fix: 'vo' command only display one-line options
5233 2002/09/07: mldonkey
5234 - Fix: Removed mldonkey_ suffix from names.
5235 - Add: option 'files_queries_per_minute' and 'files_queries_initial_delay'
5236 in downloads.ini to meet lugdunum master and Smurk UK requests.
5237 - Fix: edonkey private messages should work again.
5239 2002/09/05: mldonkey
5240 - fix: upload tab should work
5243 - add : upstats in the uploads tab
5245 2002/09/04: mldonkey
5246 - fix: shared files are not shared between all networks anymore (each
5247 network has its own shared file type).
5248 - add: edonkey protocol files are not hidden anymore
5249 - add: upload per shared file.
5250 - add: new upload messages in GUI protocol 4
5252 2002/09/03: mldonkey
5254 * Browse friend and simple downloads should work.
5257 - add : download a whole directory from a friend
5258 - fix : the 'goto <page>' actions, because of the new rooms and uploads tabs
5259 - add : an option to specify if we display sizes with G,M, and k suffixes
5260 - code : moved the servers, downloads and uploads status label to
5261 Gui_servers.pane_servers, Gui_downloads.pane_downloads and
5262 Gui_uploads.box_upstats so they can be updated more accurately,
5263 and not each time a message comes.
5266 - add :Now display the tree of files instead of just the list of files
5267 for the selected friend (with a new option files_auto_expand_depth)
5268 - add : new added chat room automatically selected
5270 2002/08/29: mldonkey
5271 - CVS commit on Savannah:
5272 * Ocaml 3.06 is now used to compile.
5273 * donkey/donkey.lam is not distributed anymore with mldonkey.
5274 It should be downloaded as:
5275 http://pauillac.inria.fr/~lefessan/src/edonkey/donkey.lam.SOME_MD5
5276 and copied in the donkey/ directory.
5278 where SOME_MD5 is the contents of the file donkey/donkey.lam.md5
5280 This can be automated by the configure script.
5281 - GUI protocol version 4:
5282 * new message Room_remove_user
5283 - Updates to be sent to the GUI are now stored in common/commonEvent.ml
5284 - Only one GUI can be connected to mldonkey at any given time.
5286 * Join/Leave room works with dialog and user updates.
5288 2002/08/23: mldonkey
5289 - update: ocaml 3.06 should now be used to compile mldonkey without secret/.
5290 - add: GUI protocol version 3 should work for poll.
5291 - Private messages are now received in a special (hidden) chat room,
5292 which is used to send messages to the GUI.
5293 - fix: Gui_columns has been rewritten with functors
5294 - fix: commonChatRoom.ml renamed in commonRoom.ml
5295 - add: room panel now displays both active and inactive rooms.
5296 - add: better SoulSeek support:
5297 * Searches work (no download yet :(
5298 * Join/Leave room works (no dialog yet)
5301 - add : an uploads tab (modules Gui_uploads and Gui_uploads_base)
5302 only the tab for this evening, gotta go sleeeeeeep
5304 2002/08/22: mldonkey
5305 - gui_proto.ml has been cut in guiTypes.ml (types), guiProto.ml (protocols)
5306 and guiEncoding.ml and guiDecoding.ml.
5307 - Better soulseek support
5310 - fix : memorize the size of the vpane in the friends tab,
5311 for the chat notebook.
5312 BTW, mldonkey compiled like a breeze will ocaml 3.06
5313 without patch :-) I let mldonkey change the configure
5314 script, don't want to disturb ;-)
5317 - fix : a bug closing two chat boxes instead of one
5318 - add : in chat rooms, try to get the user name and give him
5319 its own color to display his name in the messages
5320 - add : file sizes in downloads and result boxes now displayed
5321 with G(iga), M(ega) or k(ilo) suffixes
5322 - fix : scrollbar added to the chat room boxes, and the text
5323 with the messages is not editable any more.
5324 Chat rooms on direct connect work, except that kicked
5325 people are not removed from the list.
5328 - add: chat integrated in the gui; pb with the Gtk Main loop:
5329 the chat window receive no event; will investigate,
5330 or add the chat boxes in a notebook of the friends tab ?
5331 Ok, done. I had to find my way through the not really clear
5332 code of the Gui_proto module. And surprise, the code
5333 indent is really, really bad, making it still more difficult
5335 Yet to do : change and memorize the size of the chat notebook,
5336 but now i gotta go while it is not raining.
5338 2002/08/16: mldonkey
5339 - add: New command "dd <size> <md4>" originally used by mldonkey_submit.
5340 mldonkey now generates a mlsubmit.reg file that can be used under Windows
5341 to submit ed2k urls to mldonkey (thanks to equinox), and the
5342 mldonkey_submit file.
5343 - fix: Client files are now stored in a tree in the GUIs.
5344 - fix: Config/config.guess and .sub updated.
5346 2002/08/15: mldonkey
5347 - fix: "set" and "vo" should work on simple options of all networks.
5348 - add: New option "calendar" to execute commands at different hours of day.
5350 2002/08/14: mldonkey
5351 - add: The ./configure script is now able to download, compile and install
5352 locally (not as root) ocaml and lablgtk to be able to compile mldonkey.
5353 - fix: The ocaml-3.05.patch file contains the fix for the memory bug.
5355 2002/08/12: mldonkey
5356 - Olivier and Manu now work on another branch for servers rings
5358 2002/08/10: mldonkey
5359 - Move bigEndian.ml to littleEndian.ml to be correct :)
5360 - Started implementing the OpenFT plugin, using LimeWire plugin code.
5362 2002/08/09: mldonkey
5363 - Client_ip is now always recomputed to avoid keeping an old IP address after
5364 the IP changed (unless force_client_ip is true)
5365 - The md4 is only used to save a file if no other name is available
5366 - Files of new friends are correctly displayed (the client structure in the
5367 friend list was not the canonized one).
5368 - When sighup is sent, all networks are reset (disable/enable). Can be used
5369 after a reset of the DSL connection.
5370 - Removed friends are not kept as Contact any more.
5372 2002/08/08: mldonkey
5373 - Fixed bug in mldonkey_gui2 preventing removal of downloaded files.
5374 - Number of downloaded files is now displayed in mldonkey_gui. I still
5375 don't understand why so many features of the first GUI have been
5376 removed from the new GUI. Moreover, the object-oriented style makes
5377 it hard to understand and uggly to program. PLEASE, never put objects
5381 - fix : extended search button now does not appear any more in the friends tab
5382 - add : the user must confirm before cancelling a download
5383 - fix : window and global variables cleared when disconnected
5384 - fix : Detect disconnection to client in the GUI
5386 2002/08/07: mldonkey
5387 - Upload statistics are correctly displayed by GUIs
5388 - Upload is now computed in bytes
5389 - Server_state and Client_state messages are used again.
5390 - Fixed bug in TcpBufferedSocket preventing UDP packets from being sent when
5391 bandwidth control is disabled (prevent Extended Searches).
5392 - Fixed bug in Options causing Stack Overflow in convert_list
5393 - Implemented simple form of subscription in server
5394 - Predicate should now work completely in server
5395 - Number of replies to a query limited to 1000
5396 - Fixed bug in mldonkey_gui2 forcing GUI protocol 0
5398 2002/08/06: mldonkey
5399 - Rewritten server code to recognize mldonkey clients
5400 - New GUI protocol 2
5401 - Local search works again
5402 - New subscribe button
5404 2002/08/05: mldonkey
5405 - The eDonkey server now shares the list of servers with the eDonkey client
5406 - An error in the ocaml-3.05 patch has been fixed.
5408 2002/08/02: mldonkey
5409 - Fixed a bug in eDonkey saving sources for files in files.ini
5410 - Fixed a bug in the parsing of server.met files downloaded from the WEB
5411 (there was a "made by ..." at the end !!)
5412 - load_url now supports HTTP 302 redirections
5413 - Fixed a bug to connect to friends at startup
5415 2002/08/01: mldonkey
5416 - Fixed a bug in the GUI protocol version 0
5417 - More fields in commonFile.file_impl. Download rate is computed the same
5418 way for all networks.
5419 - LimeWire download bug fixed (3 mp3s loaded for test)
5421 2002/08/01: mldonkey
5422 - Fixed bug with multiple files displayed in the GUI
5423 - New GUI protocol 1 containing Client_stats
5425 2002/07/31: mldonkey
5426 - Old gui2 compiles normally and works.
5427 - SendMessage (-1, PrivateMessage (num, string)) is used to send a private
5428 message outside any room.
5430 2002/07/30: mldonkey
5431 ********* Ocaml 3.05 should now be used to compile mldonkey ********
5432 - The patch to the ocamlopt compiler is not required anymore.
5434 2002/07/29: mldonkey
5435 - Re-included old gui as gui2/ and mldonkey_gui2. Not yet working.
5436 Let the user choose until mldonkey_gui is working properly.
5438 2002/07/27: mldonkey
5440 o Only connected servers are normally displayed.
5441 o New button to display all servers.
5444 - GUI: Extended search button only available in the result box of the
5446 - GUI : fixed font for the console
5448 2002/07/24: mldonkey
5449 - Added GUI counter for better protocol compression.
5450 - Removed user_remove function
5452 2002/07/23: mldonkey
5453 - Bug fix in Ocaml weak hash tables
5454 - First file downloaded on DC (yeah !!)
5456 2002/07/21: mldonkey
5457 - Fixed a bug in the GUI protocol
5458 - Improve timers behaviors
5460 2002/07/16: mldonkey
5461 - Upload should be OK in Direct-Connect
5462 - CDDB: research is possible in index. building the index takes at least
5463 600 Mo of RAM ... maybe some work to compress it.
5465 2002/07/15: mldonkey
5466 - New structure network_info
5467 - Direct-Connect: allow other clients to browse our client
5468 - CDDB: use_tags is able to index a freedb database. take about 300 Mo for
5469 the full indexed database. need to build a server now.
5470 - Donkey: fixed a buf in the protocol that removed shared files from shared
5473 2002/07/14: mldonkey
5474 - New env variable MLDONKEY_DIR
5476 2002/07/13: mldonkey
5477 - More options in alternative networks.
5478 - ./configure script accepts a --disable-multinet option.
5479 - New option -check_impl to display unimplemented methods.
5480 - New behavior for computing the downloaded size in donkey.
5482 2002/07/11: mldonkey
5483 - Upload on edonkey is priviledged, thanks to the upload_power option.
5484 Done by giving more upload to some connections in TcpBufferedSocket.
5486 2002/07/10: mldonkey
5487 - Protocol between GUI and Core completely rewritten. No more Ocaml specific.
5488 Other GUIs are encouraged to move to this new protocol.
5489 - network-specific URLs are supported:
5491 ed2k://|server|ip|port|
5492 ed2k://|friend|ip|port|
5493 dc://|server|ip:port|
5494 dc://|friend|ip:port|
5495 - Client browsing in Opennap.
5497 2002/07/04: mldonkey
5498 - Better types for result, client, user and file in LimeWire
5500 2002/07/03: mldonkey
5501 - Better Opennap support
5502 - Should no more be 'too many pending searches'.
5503 - Better types for result, client, user and file.
5505 2002/07/02: mldonkey
5506 - Per network options better supported (use "set" command with a prefix).
5507 - One step towards soulseek implementation.
5508 - Started implementing 'disable' methods.
5509 - Using Weak hash tables for all common modules.
5511 *** 2002/07/01: in holidays :) no network access for two weeks ...
5513 2002/06/30: mldonkey
5514 - HE3 compress/decompress code completely working for DirectConnect
5515 - Can download file list in DirectConnect (not display it)
5516 - Client IP correctly detected.
5518 2002/06/29: mldonkey
5519 - Added columns configuration for users in GUI.
5520 - Added message BrowseUser from GUI to Core and user_ops.op_user_browse_files.
5521 - Communication between clients in Direct Connect started.
5522 - User information from Direct Connect displayed in GUI (admin/link/bytes)
5524 2002/06/28: mldonkey
5525 - Fixed several problems in WEB/telnet interface
5526 - Added enable(disable) networks menu in GUI (disable not implemented):
5527 networks can be started from GUI. New message EnableNetwork from GUI.
5528 - Added display networks menu in GUI: servers and results from a network
5531 2002/06/27: mldonkey
5532 - Started using Weak Hashtbl in common/ structures to avoid memory leaks.
5533 - The GUI displays correctly eDonkey, Open-Napster, LimeWire and DirectConnect.
5534 - Lots of debbugging messages have been removed.
5537 Complete change of the architecture. mldonkey should now support multiple
5538 peer-to-peer networks. Currently, download is possible from:
5540 * Audiogalaxy support: works great (oups, not useful anymore :(
5541 1) Must set 'enable_audiogalaxy' to true in downloads.ini
5542 2) Start mldonkey. It should create 'audiogal.ini'. If you don't have any
5543 audiogalaxy account, create an account: go on http://localhost:4081/
5544 (if you are running mldonkey on localhost), and create it.
5545 3) Stop mldonkey. Edit audiogal.ini. Set the 'login' and 'password'
5546 options from your account.
5547 4) Restart mldonkey. Go on http://localhost:4081/ to choose files to
5550 * LimeWire bridge. works great.
5551 1) Must set 'enable_limewire' to true in downloads.ini
5552 2) It should automatically connect to several ultra peers.
5553 - Recover downloads works
5555 * Open Napster support. Seems to work.
5556 1) Must set 'enable_opennap' to true in downloads.ini
5558 * Direct Connect support. Not working yet.
5559 1) Must set 'enable_directconnect' to true in downloads.ini
5560 2) You can connect to some hubs and search for files. Download
5561 is not yet working, nor sharing, so that you will probably be
5565 If you want to test some of these networks, edit the downloads.ini to
5566 enable them. There are a lot of debugging messages (pipe to /dev/null,
5567 don't kill the terminal). Most telnet commmands should work, but it is
5568 not sure. In the GUI, use the File->Settings->GUI->Columns panel and,
5569 for each type of structure, add the Network column to see in which
5570 network a server or a file is located.
5572 * Improved server implementation (enable_server option). Not working yet.
5573 * Started implementing freedb bridge. Not working yet.
5574 * replace Sys.rename with Unix2.rename (to allow cross-device moves)
5575 * brand new GUI : choice of columns, icons, external chat utility, support
5576 for custom searches. See file ~/.mldonkey_gui.ini for changing icons
5577 and keyboard shortcuts. Searches skeletons are defined in the
5578 searches.ini file in the directory where you launched the mldonkey core.
5582 * Compaction forced every 'compaction_delay' hours (default is 2).
5583 * File age computed for files smaller than one chunk. Better downloads for
5585 * Servers sending extended search results are remembered, and immediatly
5586 asked if their files are downloaded.
5587 * Predicates in Indexer should work in most cases.
5588 * Fixed #100833: new options 'http_bind_addr', 'gui_bind_addr',
5589 'telnet_bind_addr' and 'telnet_bind_addr'.
5590 * Started implementing 'use_tags', a program to rename mp3s from tags (and
5591 maybe from freedb, someone interested ?)
5592 * New option 'propagate_sources' to allow mldonkey to propagate sources
5593 to other peers. When enabled, send far fewer messages than in 1.15.
5594 * Fixed #100870: WEB interface can be configured through 'html_header',
5595 'web_common_header' and 'vd_reload_delay'
5596 * GUI buffer size increased. Can be set by 'interface_buffer' in
5598 * Fixed bug making mldonkey use 100% CPU for long periods.
5599 * Fixed option name for 'update_server_list'
5600 * New options 'max_sources_per_file' to limit the number of sources for
5601 a given file. One source is removed each time a new source is added
5603 * New command 'id' to display ID numbers for connected servers.
5604 * 'client_buffer_size' set to 500000 by default.
5605 * Fixed bug in ocaml patch that made open_mldonkey never finish downloads.
5608 * Started implementing mldonkey_s (eDonkey compatible server)
5610 - Should fit in 640x480 screens.
5611 - Server can be specified by ip:port in Add Server entry.
5612 - Removed some non-tailrecursive functions.
5613 * Core acts now with all (direct) clients as a server to diffuse sources
5614 for files. Indirect mldonkey clients can also receive information.
5616 - New option 'customized_searches' that can be used to add new
5617 queries in the WEB interface (see new option file searches.ini
5619 - Improved searches (work also in the GTK GUI):
5620 * In the keyword/artist/title/album fields, a '-' in front of
5621 a word means 'without'. Words separated by
5622 spaces must appear in the reply.
5623 * In the format field: you can specify several formats, separated by
5624 spaces. A '-' in front of a format means you don't want that format.
5625 - New options 'web_header' and 'web_header_frame' to customize the header
5626 displayed by the Web interface.
5627 - Generate correct HTML with HEAD and TITLE :)
5628 - Downloads can be sorted by name/percent/downloaded/size/rate.
5629 - Paused downloads are correctly displayed.
5630 - Use tables instead of spaces (for non-fixed fonts).
5631 - Added option 'use_html_frames'. When frames are enabled, clicking
5632 on a result to download will only modify the second frame.
5633 - Checklist of downloads and results can be activated/desactivated with
5634 the option 'html_checkbox_file_list'.
5635 - The number of days since the file was last seen complete is now displayed
5637 - New option 'file_completed_cmd' for a command which is called when
5638 a file download is completed with as arguments:
5639 <filename on disk> <md4> <size> <names on the edonkey networks>*
5640 - Started moving local indexation from mldonkey to an auxiliary program,
5641 controled by options 'local_index_find_cmd' and 'local_index_add_cmd'.
5642 See the 'Using auxiliary programs for local indexation' section in
5643 the help (in progress, doesn't work).
5644 - New command line option -client_ip that can be used to force the
5645 IP used by mldonkey (if you have a firewall). Be careful with
5647 - Delay between md4 computation can be set by 'compute_md4_delay' option.
5648 Chunks downloaded improve to reduce long md4 computations.
5649 * Most problems with ed2k:// links should be fixed (/ at the end, and
5650 spaces in the middle). MLdonkeySubmit is distributed for Konqueror users.
5651 * Improved implementation of indexation. Documents description are
5652 stored on disk. Different choices of indexation.
5653 * Server black list: 'bs <ip1> <ip2> ...' in console to add IPs to the
5654 server blacklist. Servers on this black list are eventually removed,
5655 and will never be added again.
5656 * New option 'master_server_min_users' that prevent mldonkey from remaining
5657 connected to a server with too few users.
5658 * New option 'dont_update_server_list' to disable automatic update of
5661 - New command 'remove_old_servers'
5662 * New (less-aggressive) management of sources:
5663 - New option 'max_source_age' (in days) to remove old sources.
5664 - New option 'max_clients_per_second' to prevent bursts of connections.
5665 * Faster computation of md4s for i486/i586/i686 Linux systems.
5667 - #100662: only valid server IPs are accepted.
5668 - Use IP returned by getsockname instead of the one from gethostbyname.
5669 - #100761: new option 'update_server_list' to choose whether you want
5670 mldonkey to automatically add new servers to your server list.
5671 - Fixed bug preventing sharing of in-download files after restart.
5672 - Fixed bug making history.met always increase.
5675 * Bandwidth is now controled by the 'max_hard_download_rate' and
5676 'max_hard_upload_rate' options. Old rate options are obsolete.
5677 * All simple options can now be set by arguments on the command line (use
5678 -help to show arguments).
5680 - Removed non-tailrecursive function in options.ml causing segfault when
5682 - Connected clients without names in GUI should not appear anymore.
5683 - Remove 2 minutes timeout for queued clients.
5686 * Annotations on files in file 'comments.met'. Commands 'comments <filename>'
5687 to load a file, and 'comment <md4> <comment>' to add a new comment.
5688 Such comments could be downloaded from web sites (sharereactor.com).
5689 * New option 'web_infos' and new command 'add_url' on console: allow
5690 to download a file from the WEB automatically everyday (or less
5691 frequently). Currently, only server.met and comments.met files are
5694 - New config file in $HOME/.mldonkey_gui.ini with GUI options
5695 - colors added in lists (see .mldonkey_gui.ini)
5697 - File locations are updated.
5698 - Improved protocol to decrease bandwidth
5699 - Comments are displayed in searches, and can be added in contextual menu.
5700 - Shortcuts can be configured by options.
5701 * Mailer accept non-canonnical addresses.
5702 * Option 'verbose': '#' for download, 'U' for upload, and other messages.
5703 * When possible, find extra names for files in history.
5705 - New command 'close_fds' to close all open files, to free space on disk
5707 - New command 'pause' and 'resume' to pause and resume downloads (use
5708 arg 'all' to apply to all files).
5709 * Some control on how many connections can be opened per minute.
5710 * Better scheduling of compaction (new option 'compaction_overhead')
5711 in both core and GUI that caused delay when exiting.
5713 - Remove block change causing many 'exceeding block boundaries'
5714 - history.dat changed to history.met, using more secure marshaling.
5715 - OVERFLOW with GUI should not appear anymore.
5716 - Compaction makes GUI memory usage better.
5720 - Remove error 'bad file descriptor' when saving files.
5721 - Remove possible infinite loop in upload function.
5724 * Option 'shared_directories' to specify other directories where files to
5726 * Setting 'telnet_port', 'http_port' or 'gui_port' to 0 disables the
5727 corresponding access.
5729 - Sort results by size in vr.
5730 - When 'd' fails with Already_done, you can use 'force_download' to force
5731 an already downloaded file to be restarted.
5732 - New command 'dllink' taking an ed2k URL to download as argument.
5733 - Command 'set' can be used to set the allowed_ips option:
5734 set allowed_ips '127.0.0.1 128.91.255.255'
5735 255 is for networks.
5736 - shorten names in 'vd' output (see 'max_name_len' option).
5738 - New Cancel links in 'vd' output.
5739 - New 'Complex Search' link in interface.
5740 - 'View Options' output can be edited to modify options.
5742 - The GUI tries to connect to the core every second until it succeeds.
5743 - Corrected MD4 columns
5744 - In search panel, 'Max hits' combo set the maximal number of replies
5747 - Don't add twice the incoming dir to shared file names.
5748 - Cross-partition moves fail, but filename is renamed in temp dir.
5749 - Limited open fds for files to 50 (doesn't limit shared files
5750 and downloaded files).
5751 - Execute entry on WEB interface always displayed.
5752 - Removed a timeout closing all client connection after 2 minutes.
5753 - Shared files are opened in read-only mode.
5756 * Default timeout for server connection set to 5 for faster connection.
5757 * Options are now divided into four configuration files: downloads.ini,
5758 servers.ini, friends.ini and files.ini.
5759 * Console: better display of downloads.
5760 * Verification of IP addresses for admin ('allowed_ips' option).
5761 * WEB interface: added pragma no-cache.
5762 * Keep checking servers in the background.
5763 * GUI: Auto-resize is now delayed. Default selection
5764 mode is EXTENDED. Contextual menu items to switch between
5765 auto-resize/manual resize and EXTENDED/MULTIPLE selection.
5766 * Send a mail when download is finished. You must complete the
5767 'smtp_server', 'smtp_port' and 'mail' options.
5768 * Bug fixes: partial page in WEB interface fixed (often with vr).
5769 Removed two minutes timeout on good client connections.
5770 NoSpaceLeft causes pause in download.
5773 * Bug fixes: fixed bad md4 computation of the first chunk, preventing
5774 completion of downloads.
5775 * New command 'recover_temp' to recover all lost files from the temp
5777 * See http://www.freesoftware.fsf.org/mldonkey/ for porting mldonkey on new OSes.
5780 * Remove use of the 'mmap' system call.
5781 * Better management of delays between connection attempts.
5782 * Local searches use minsize/maxsize information.
5783 * More information on availability on WEB/console interface.
5784 * Small improvement in MD4 computation. Shared files MD4s are saved in
5785 a 'shared_files.ini' file to avoid computating them again.
5786 * Filters on replies: set the 'filters' option to a string containing
5787 sub-words you want to remove, separated by spaces.
5788 * Maximal download rate can be specified in 'max_download_rate' option.
5789 (need probably to be rewritten more carefully).
5790 * Bug fixes: files greater than 9mb in incoming/ can now be shared,
5791 ftruncate replaced by lseek (for vfat FS), multiple connections to
5792 the same client fixed.
5795 * Exchange of sets of sources between mldonkey clients.
5796 * Started implementing chat between friends.
5797 * GUI allows adding friends by specifying IP and port. New
5798 'Connect friend' menu. Better properties of files.
5799 * New menu item 'preview' in GUI, associated with option 'previewer'.
5800 * New menu 'Select All' in lists.
5801 * Bug fixes: in mp3 tags edition, in connected servers count, in
5802 displaying friends files, in passive connections.
5805 * History of seen files. New commands: 'ls' for local search on the history,
5806 of search on servers, 'clh' for clear local history. New options:
5807 'use_file_history' to allow history on files, 'save_file_history' to
5808 save the history on disk. For now, search only by words (not size).
5809 * Authentification by the 'auth' command on the telnet client.
5810 * Bug fixes: servers disconnected viewed as connected.
5813 * UDP protocol implemented: extended searches to all servers.
5814 * Improved HTTP interface (port 4080).
5815 * Limitation on minimal upload dropped to 1 kB/s.
5816 * Fixed bug preventing queries on multiple words.
5819 * Improved WEB interface (download files by clicking).
5823 * Upload can be disabled temporarily, if your client has been running long
5827 * max_upload_rate is not modified automically anymore.
5828 * command-line client available from the GUI.
5831 * New command 'set' in command-line client to change options values
5832 * Command-line client accessible from the GUI or any
5833 WEB browser (at http://localhost:4080/)
5836 * Upload/download works
5838 * Complex queries works
5839 * Command-line interface works
5840 * Graphical interface works
5841 * Import old config works